Source file test/fixedbugs/issue26043.go
1 // compile 2 3 // Copyright 2018 The Go Authors. All rights reserved. 4 // Use of this source code is governed by a BSD-style 5 // license that can be found in the LICENSE file. 6 7 // This program results in a loop inferred to increment 8 // j by 0, causing bounds check elimination to attempt 9 // something%0, which panics (in the bug). 10 11 package q 12 13 func f() { 14 var s1 string 15 var b bool 16 if b { 17 b = !b 18 s1 += "a" 19 } 20 21 var s2 string 22 var i, j int 23 if (s1 <= "") || (s2 >= "") { 24 j = len(s1[:6]) 25 } else { 26 i = len("b") 27 } 28 29 for j < 0 { 30 j += i 31 } 32 } 33