]> Cypherpunks.ru repositories - gostls13.git/commitdiff
test: match gccgo error messages
authorIan Lance Taylor <iant@golang.org>
Fri, 13 Dec 2013 01:18:12 +0000 (17:18 -0800)
committerIan Lance Taylor <iant@golang.org>
Fri, 13 Dec 2013 01:18:12 +0000 (17:18 -0800)
const1.go:33: error: integer constant overflow
<similar errors omitted>
const1.go:64: error: division by zero
const1.go:67: error: floating point constant overflow
const1.go:68: error: floating point constant overflow
const1.go:69: error: floating point constant overflow
const1.go:70: error: division by zero
const1.go:71: error: expected integer type
const1.go:77: error: argument 1 has incompatible type (cannot use type int8 as type int)
const1.go:78: error: argument 1 has incompatible type (cannot use type int8 as type int)
const1.go:79: error: argument 1 has incompatible type (cannot use type uint8 as type int)
const1.go:81: error: argument 1 has incompatible type (cannot use type float32 as type int)
const1.go:82: error: argument 1 has incompatible type (cannot use type float64 as type int)
const1.go:83: error: floating point constant truncated to integer
const1.go:85: error: argument 1 has incompatible type (cannot use type float64 as type int)
const1.go:86: error: argument 1 has incompatible type (cannot use type string as type int)
const1.go:87: error: argument 1 has incompatible type (cannot use type bool as type int)
const1.go:90: error: const initializer cannot be nil
const1.go:91: error: expression is not constant
const1.go:92: error: expression is not constant
const1.go:93: error: invalid constant type
const1.go:94: error: invalid constant type
fixedbugs/bug462.go:17: error: unknown field 'os.File' in 'T'
fixedbugs/issue3705.go:9: error: cannot declare init - must be func
fixedbugs/issue4251.go:12: error: inverted slice range
fixedbugs/issue4251.go:16: error: inverted slice range
fixedbugs/issue4251.go:20: error: inverted slice range
fixedbugs/issue4405.go:11: error: invalid character 0x7 in identifier
fixedbugs/issue4405.go:12: error: invalid character 0x8 in identifier
fixedbugs/issue4405.go:13: error: invalid character 0xb in identifier
fixedbugs/issue4405.go:14: error: invalid character 0xc in identifier
fixedbugs/issue4429.go:15: error: expected pointer
fixedbugs/issue4517d.go:9: error: cannot import package as init
fixedbugs/issue4545.go:17: error: invalid context-determined non-integer type for left operand of shift
fixedbugs/issue4545.go:16: error: incompatible types in binary expression
fixedbugs/issue4610.go:15: error: expected ';' or '}' or newline
fixedbugs/issue4610.go:16: error: expected declaration
fixedbugs/issue4654.go:15: error: value computed is not used
<similar errors omitted>
fixedbugs/issue4776.go:9: error: program must start with package clause
fixedbugs/issue4776.go:9: error: expected ';' or newline after package clause
fixedbugs/issue4813.go:31: error: index must be integer
<similar errors omitted>
fixedbugs/issue4847.go:22: error: initialization expression for 'matchAny' depends upon itself
fixedbugs/issue5089.go:13: error: redefinition of 'bufio.Buffered': receiver name changed
fixedbugs/issue5089.go:11: note: previous definition of 'bufio.Buffered' was here
fixedbugs/issue5172.go:17: error: reference to undefined field or method 'bar'
fixedbugs/issue5172.go:18: error: reference to undefined field or method 'bar'
fixedbugs/issue5172.go:12: error: use of undefined type 'bar'
fixedbugs/issue5358.go:16: error: argument 2 has incompatible type
fixedbugs/issue5581.go:29: error: use of undefined type 'Blah'
funcdup.go:10: error: redefinition of 'i'
funcdup.go:10: note: previous definition of 'i' was here
<similar errors omitted>
funcdup2.go:10: error: redefinition of 'i'
funcdup2.go:10: note: previous definition of 'i' was here
<similar errors omitted>
slice3err.go:20: error: middle index required in 3-index slice
<similar errors omitted>
slice3err.go:20: error: final index required in 3-index slice
<similar errors omitted>
slice3err.go:21: error: final index required in 3-index slice
slice3err.go:46: error: invalid 3-index slice of string
<similar errors omitted>
slice3err.go:57: error: inverted slice range
<similar errors omitted>
slice3err.go:62: error: invalid slice index: capacity less than length
slice3err.go:64: error: invalid slice index: capacity less than start
slice3err.go:65: error: invalid slice index: capacity less than start
slice3err.go:66: error: invalid slice index: capacity less than start
slice3err.go:68: error: invalid slice index: capacity less than length
slice3err.go:70: error: invalid slice index: capacity less than start
slice3err.go:80: error: invalid slice index: capacity less than length
slice3err.go:82: error: invalid slice index: capacity less than start
slice3err.go:83: error: invalid slice index: capacity less than start
slice3err.go:84: error: invalid slice index: capacity less than start
slice3err.go:86: error: invalid slice index: capacity less than length
slice3err.go:88: error: invalid slice index: capacity less than start
slice3err.go:99: error: array index out of bounds
<similar errors omitted>
slice3err.go:106: error: invalid slice index: capacity less than length
slice3err.go:107: error: invalid slice index: capacity less than start
slice3err.go:118: error: invalid slice index: capacity less than length
slice3err.go:119: error: invalid slice index: capacity less than start
syntax/semi1.go:10: error: missing '{' after if clause
syntax/semi1.go:10: error: reference to undefined name 'x'
syntax/semi1.go:10: error: reference to undefined name 'y'
syntax/semi1.go:12: error: reference to undefined name 'z'
syntax/semi2.go:10: error: missing '{' after switch clause
syntax/semi2.go:10: error: reference to undefined name 'x'
syntax/semi3.go:10: error: missing '{' after for clause
syntax/semi3.go:10: error: reference to undefined name 'x'
syntax/semi3.go:10: error: reference to undefined name 'y'
syntax/semi3.go:10: error: reference to undefined name 'z'
syntax/semi3.go:12: error: reference to undefined name 'z'
syntax/semi4.go:11: error: missing '{' after for clause
syntax/semi4.go:10: error: reference to undefined name 'x'
syntax/semi4.go:12: error: reference to undefined name 'z'
typecheck.go:12: error: reference to undefined name 'b'
typecheck.go:17: error: reference to undefined name 'c'
typecheck.go:11: error: use of undefined type 'b'
typecheck.go:16: error: not enough arguments
typecheck.go:17: error: not enough arguments

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/41520044

25 files changed:
test/const1.go
test/fixedbugs/bug462.go
test/fixedbugs/issue3705.go
test/fixedbugs/issue4251.go
test/fixedbugs/issue4405.go
test/fixedbugs/issue4429.go
test/fixedbugs/issue4517d.go
test/fixedbugs/issue4545.go
test/fixedbugs/issue4610.go
test/fixedbugs/issue4654.go
test/fixedbugs/issue4776.go
test/fixedbugs/issue4813.go
test/fixedbugs/issue4847.go
test/fixedbugs/issue5089.go
test/fixedbugs/issue5172.go
test/fixedbugs/issue5358.go
test/fixedbugs/issue5581.go
test/funcdup.go
test/funcdup2.go
test/slice3err.go
test/syntax/semi1.go
test/syntax/semi2.go
test/syntax/semi3.go
test/syntax/semi4.go
test/typecheck.go

index a170ce9e763dc30c4efcb16d646bc1afe53a87d0..58bddee7e072d3e6b4bb147c14e831b56a889af1 100644 (file)
@@ -88,7 +88,7 @@ func main() {
 }
 
 const ptr = nil // ERROR "const.*nil"
-const _ = string([]byte(nil)) // ERROR "is not a constant"
-const _ = uintptr(unsafe.Pointer((*int)(nil))) // ERROR "is not a constant"
-const _ = unsafe.Pointer((*int)(nil)) // ERROR "cannot be nil"
-const _ = (*int)(nil) // ERROR "cannot be nil"
+const _ = string([]byte(nil)) // ERROR "is not a? ?constant"
+const _ = uintptr(unsafe.Pointer((*int)(nil))) // ERROR "is not a? ?constant"
+const _ = unsafe.Pointer((*int)(nil)) // ERROR "cannot be nil|invalid constant type"
+const _ = (*int)(nil) // ERROR "cannot be nil|invalid constant type"
index 6434255c8da5781a3fff7ab75aeaf3e7bf89da4b..1a23ad064dc43aedad3d10b6d25a2f016d243a58 100644 (file)
@@ -14,6 +14,6 @@ type T struct {
 
 func main() {
        _ = T {
-               os.File: 1, // ERROR "unknown T field"
+               os.File: 1, // ERROR "unknown T? ?field"
        }
 }
index c19bcea1cc0b36f092b42affb8e7d380e04e0420..64ef38b10d5793377378ace9e886bf509917c517 100644 (file)
@@ -6,4 +6,4 @@
 
 package p
 
-func init() // ERROR "missing function body"
+func init() // ERROR "missing function body|cannot declare init"
index 4adec2babb8e3b96a51fae4c72d579457dfa8410..3668d4c89a8748a96d0086c7636f74dab255beb7 100644 (file)
@@ -9,13 +9,13 @@
 package p
 
 func F1(s []byte) []byte {
-       return s[2:1]           // ERROR "invalid slice index"
+       return s[2:1]           // ERROR "invalid slice index|inverted slice range"
 }
 
 func F2(a [10]byte) []byte {
-       return a[2:1]           // ERROR "invalid slice index"
+       return a[2:1]           // ERROR "invalid slice index|inverted slice range"
 }
 
 func F3(s string) string {
-       return s[2:1]           // ERROR "invalid slice index"
+       return s[2:1]           // ERROR "invalid slice index|inverted slice range"
 }
index c0d80855987737764688588e5258c0a931084c5f..b8458d77647b7bb9c9d6736e252a03a720ef3148 100644 (file)
@@ -8,8 +8,8 @@ package p
 
 const (
        _ = iota
-       _\a // ERROR "illegal character"
-       _\b  // ERROR "illegal character"
-       _\v  // ERROR "illegal character"
-       _\f  // ERROR "illegal character"
+       _\a // ERROR "illegal character|invalid character"
+       _\b  // ERROR "illegal character|invalid character"
+       _\v  // ERROR "illegal character|invalid character"
+       _\f  // ERROR "illegal character|invalid character"
 )
index 8a93b020453cde74e3b7675458abb3c7e3d0758b..6822760ef8cc87594017ab557fb95270901100be 100644 (file)
@@ -12,5 +12,5 @@ type a struct {
 
 func main() {
   av := a{};
-  *a(av); // ERROR "invalid indirect"
+  _ = *a(av); // ERROR "invalid indirect|expected pointer"
 }
index f601db66ff0920e30e1f12f4cd030f2b0dcbf336..3d727d433edcfce427710f4cbab3fce2fa7db707 100644 (file)
@@ -6,4 +6,4 @@
 
 package p
 
-import init "fmt" // ERROR "cannot import package as init - init must be a func"
+import init "fmt" // ERROR "cannot import package as init"
index 501caadb0f816d1a4957cb0758571c1059d46ff7..c37ccef7cbf7840f079bfd72228dd9de9016d130 100644 (file)
@@ -13,7 +13,7 @@ import "fmt"
 
 func main() {
        var s uint
-       fmt.Println(1.0 + 1<<s) // ERROR "invalid operation|non-integer type"
+       fmt.Println(1.0 + 1<<s) // ERROR "invalid operation|non-integer type|incompatible type"
        x := 1.0 + 1<<s         // ERROR "invalid operation|non-integer type"
        _ = x
 }
index bc6bfe790640c97ec73efd44f22b31cf5e6cb327..d56c6d3e8cd899ffd8ad167f2b50815c7ef09545 100644 (file)
@@ -12,6 +12,6 @@ type bar struct {
 
 func main() {
        var foo bar
-       _ = &foo{} // ERROR "is not a type"
-}
+       _ = &foo{} // ERROR "is not a type|expected .;."
+} // GCCGO_ERROR "expected declaration"
 
index 170594e4b860a5f78706ba8ac5b870ce7f59c0f2..d3f582b20c6bee704d8bf0c16fb94776464a5853 100644 (file)
@@ -12,32 +12,32 @@ package p
 import "unsafe"
 
 func f() {
-       defer int(0) // ERROR "defer requires function call, not conversion"
-       go string([]byte("abc")) // ERROR "go requires function call, not conversion"
+       defer int(0) // ERROR "defer requires function call, not conversion|is not used"
+       go string([]byte("abc")) // ERROR "go requires function call, not conversion|is not used"
        
        var c complex128
        var f float64
        var t struct {X int}
 
        var x []int
-       defer append(x, 1) // ERROR "defer discards result of append"
-       defer cap(x) // ERROR "defer discards result of cap"
-       defer complex(1, 2) // ERROR "defer discards result of complex"
-       defer complex(f, 1) // ERROR "defer discards result of complex"
-       defer imag(1i) // ERROR "defer discards result of imag"
-       defer imag(c) // ERROR "defer discards result of imag"
-       defer len(x) // ERROR "defer discards result of len"
-       defer make([]int, 1) // ERROR "defer discards result of make"
-       defer make(chan bool) // ERROR "defer discards result of make"
-       defer make(map[string]int) // ERROR "defer discards result of make"
-       defer new(int) // ERROR "defer discards result of new"
-       defer real(1i) // ERROR "defer discards result of real"
-       defer real(c) // ERROR "defer discards result of real"
-       defer append(x, 1) // ERROR "defer discards result of append"
-       defer append(x, 1) // ERROR "defer discards result of append"
-       defer unsafe.Alignof(t.X) // ERROR "defer discards result of unsafe.Alignof"
-       defer unsafe.Offsetof(t.X) // ERROR "defer discards result of unsafe.Offsetof"
-       defer unsafe.Sizeof(t) // ERROR "defer discards result of unsafe.Sizeof"
+       defer append(x, 1) // ERROR "defer discards result of append|is not used"
+       defer cap(x) // ERROR "defer discards result of cap|is not used"
+       defer complex(1, 2) // ERROR "defer discards result of complex|is not used"
+       defer complex(f, 1) // ERROR "defer discards result of complex|is not used"
+       defer imag(1i) // ERROR "defer discards result of imag|is not used"
+       defer imag(c) // ERROR "defer discards result of imag|is not used"
+       defer len(x) // ERROR "defer discards result of len|is not used"
+       defer make([]int, 1) // ERROR "defer discards result of make|is not used"
+       defer make(chan bool) // ERROR "defer discards result of make|is not used"
+       defer make(map[string]int) // ERROR "defer discards result of make|is not used"
+       defer new(int) // ERROR "defer discards result of new|is not used"
+       defer real(1i) // ERROR "defer discards result of real|is not used"
+       defer real(c) // ERROR "defer discards result of real|is not used"
+       defer append(x, 1) // ERROR "defer discards result of append|is not used"
+       defer append(x, 1) // ERROR "defer discards result of append|is not used"
+       defer unsafe.Alignof(t.X) // ERROR "defer discards result of unsafe.Alignof|is not used"
+       defer unsafe.Offsetof(t.X) // ERROR "defer discards result of unsafe.Offsetof|is not used"
+       defer unsafe.Sizeof(t) // ERROR "defer discards result of unsafe.Sizeof|is not used"
        
        defer copy(x, x) // ok
        m := make(map[int]int)
@@ -47,8 +47,8 @@ func f() {
        defer println(1) // ok
        defer recover() // ok
 
-       int(0) // ERROR "int\(0\) evaluated but not used"
-       string([]byte("abc")) // ERROR "string\(.*\) evaluated but not used"
+       int(0) // ERROR "int\(0\) evaluated but not used|is not used"
+       string([]byte("abc")) // ERROR "string\(.*\) evaluated but not used|is not used"
 
        append(x, 1) // ERROR "not used"
        cap(x) // ERROR "not used"
index c38dc09b12e8a129c98f08037080326eb3f74111..13781af1f361b0428e2dddcd174b79ca6af6445e 100644 (file)
@@ -6,5 +6,5 @@
 
 // Issue 4776: missing package declaration error should be fatal.
 
-type MyInt int32 // ERROR "package statement must be first"
+type MyInt int32 // ERROR "package statement must be first|package clause"
 
index 20dc58795a58d4b5d469174366d891f572bc14f1..f560b2fac98f3814a1ed28f09e85a5536316723d 100644 (file)
@@ -28,25 +28,25 @@ var (
 var (
        a1 = A[i]
        a2 = A[f]
-       a3 = A[f2] // ERROR "truncated"
+       a3 = A[f2] // ERROR "truncated|must be integer"
        a4 = A[c]
-       a5 = A[c2] // ERROR "truncated"
+       a5 = A[c2] // ERROR "truncated|must be integer"
        a6 = A[vf] // ERROR "non-integer|must be integer"
        a7 = A[vc] // ERROR "non-integer|must be integer"
 
        s1 = S[i]
        s2 = S[f]
-       s3 = S[f2] // ERROR "truncated"
+       s3 = S[f2] // ERROR "truncated|must be integer"
        s4 = S[c]
-       s5 = S[c2] // ERROR "truncated"
+       s5 = S[c2] // ERROR "truncated|must be integer"
        s6 = S[vf] // ERROR "non-integer|must be integer"
        s7 = S[vc] // ERROR "non-integer|must be integer"
 
        t1 = T[i]
        t2 = T[f]
-       t3 = T[f2] // ERROR "truncated"
+       t3 = T[f2] // ERROR "truncated|must be integer"
        t4 = T[c]
-       t5 = T[c2] // ERROR "truncated"
+       t5 = T[c2] // ERROR "truncated|must be integer"
        t6 = T[vf] // ERROR "non-integer|must be integer"
        t7 = T[vc] // ERROR "non-integer|must be integer"
 )
index a99e8012942ec3cf08b6a26024d1c9512c37c356..91a6568f27194ac02626081ccb50217b57378b19 100644 (file)
@@ -19,6 +19,6 @@ func matchList(s *S) E { return matcher(matchAnyFn)(s) }
 
 var foo = matcher(matchList)
 
-var matchAny = matcher(matchList) // ERROR "initialization loop"
+var matchAny = matcher(matchList) // ERROR "initialization loop|depends upon itself"
 
 func matchAnyFn(s *S) (err E) { return matchAny(s) }
index 14d6bde9899450d41d830debfaeb5b9aaf705a3c..81b9f0521f96ee01f32537c3348887f325e6f94b 100644 (file)
@@ -8,8 +8,8 @@
 
 package p
 
-import "bufio"
+import "bufio" // GCCGO_ERROR "previous"
 
-func (b *bufio.Reader) Buffered() int { // ERROR "non-local"
+func (b *bufio.Reader) Buffered() int { // ERROR "non-local|redefinition"
        return -1
 }
index 2dd542a5db81f2cafcd0b9b204662da1b6a93762..a6acbd3db78923bdc239caa0f03152a5db4e5888 100644 (file)
@@ -14,6 +14,6 @@ type foo struct {
 
 func main() {
        var f foo
-       go f.bar()
-       defer f.bar()
+       go f.bar()      // GCCGO_ERROR "undefined"
+       defer f.bar()   // GCCGO_ERROR "undefined"
 }
index 75aa9533d2cbde204fbe06739ef1a2a0a5397bbe..c2b1da9e0e136d5afb2693eb5612fd46e37ec4de 100644 (file)
@@ -13,5 +13,5 @@ func f(x int, y ...int) {}
 func g() (int, []int)
 
 func main() {
-       f(g()) // ERROR "as type int in"
+       f(g()) // ERROR "as type int in|incompatible type"
 }
index 8c2d597294b2a064632df95780f9c60d265a9bc9..36a4ad671d2c1225416e8d72e99e26e736162ad4 100644 (file)
@@ -26,7 +26,7 @@ type Foo struct {
 
 type Bar struct {
        A *Foo
-       B chan Blah // ERROR "undefinedBlah"
+       B chan Blah // ERROR "undefined.*Blah"
 }
 
 func main() {
index 706dd63ca130cf1e106161432c7e5b0252d282bc..d15d685792f86aa23eb4f4fdc19a46aa7e032ab1 100644 (file)
@@ -7,21 +7,21 @@
 package p
 
 type T interface {
-       F1(i int) (i int) // ERROR "duplicate argument i"
-       F2(i, i int) // ERROR "duplicate argument i"
-       F3() (i, i int) // ERROR "duplicate argument i"
+       F1(i int) (i int) // ERROR "duplicate argument i|redefinition|previous"
+       F2(i, i int) // ERROR "duplicate argument i|redefinition|previous"
+       F3() (i, i int) // ERROR "duplicate argument i|redefinition|previous"
 }
 
-type T1 func(i, i int) // ERROR "duplicate argument i"
-type T2 func(i int) (i int) // ERROR "duplicate argument i"
-type T3 func() (i, i int) // ERROR "duplicate argument i"
+type T1 func(i, i int) // ERROR "duplicate argument i|redefinition|previous"
+type T2 func(i int) (i int) // ERROR "duplicate argument i|redefinition|previous"
+type T3 func() (i, i int) // ERROR "duplicate argument i|redefinition|previous"
 
 type R struct{}
 
-func (i *R) F1(i int)         {} // ERROR "duplicate argument i"
-func (i *R) F2() (i int)      {return 0} // ERROR "duplicate argument i"
-func (i *R) F3(j int) (j int) {return 0} // ERROR "duplicate argument j"
+func (i *R) F1(i int)         {} // ERROR "duplicate argument i|redefinition|previous"
+func (i *R) F2() (i int)      {return 0} // ERROR "duplicate argument i|redefinition|previous"
+func (i *R) F3(j int) (j int) {return 0} // ERROR "duplicate argument j|redefinition|previous"
 
-func F1(i, i int)      {} // ERROR "duplicate argument i"
-func F2(i int) (i int) {return 0} // ERROR "duplicate argument i"
-func F3() (i, i int)   {return 0, 0} // ERROR "duplicate argument i"
+func F1(i, i int)      {} // ERROR "duplicate argument i|redefinition|previous"
+func F2(i int) (i int) {return 0} // ERROR "duplicate argument i|redefinition|previous"
+func F3() (i, i int)   {return 0, 0} // ERROR "duplicate argument i|redefinition|previous"
index aeb5f7eb6165c1d15c1bc660c3032863bdb021f9..1db1a396b2e8d3d484b527476a5c03a4ee1f42c0 100644 (file)
@@ -7,11 +7,11 @@
 package p
 
 var T interface {
-       F1(i int) (i int) // ERROR "duplicate argument i"
-       F2(i, i int) // ERROR "duplicate argument i"
-       F3() (i, i int) // ERROR "duplicate argument i"
+       F1(i int) (i int) // ERROR "duplicate argument i|redefinition|previous"
+       F2(i, i int) // ERROR "duplicate argument i|redefinition|previous"
+       F3() (i, i int) // ERROR "duplicate argument i|redefinition|previous"
 }
 
-var T1 func(i, i int) // ERROR "duplicate argument i"
-var T2 func(i int) (i int) // ERROR "duplicate argument i"
-var T3 func() (i, i int) // ERROR "duplicate argument i"
+var T1 func(i, i int) // ERROR "duplicate argument i|redefinition|previous"
+var T2 func(i int) (i int) // ERROR "duplicate argument i|redefinition|previous"
+var T3 func() (i, i int) // ERROR "duplicate argument i|redefinition|previous"
index 906b00703520afdbdc768896b49d376e93810489..83fb39be4c14f3a7fd517ef840c46d560482da6e 100644 (file)
@@ -54,58 +54,58 @@ func f() {
 
        // check invalid indices
        _ = array[1:2]
-       _ = array[2:1] // ERROR "invalid slice index"
+       _ = array[2:1] // ERROR "invalid slice index|inverted slice"
        _ = array[2:2]
        _ = array[i:1]
        _ = array[1:j]
        _ = array[1:2:3]
-       _ = array[1:3:2] // ERROR "invalid slice index"
-       _ = array[2:1:3] // ERROR "invalid slice index"
-       _ = array[2:3:1] // ERROR "invalid slice index"
-       _ = array[3:1:2] // ERROR "invalid slice index"
-       _ = array[3:2:1] // ERROR "invalid slice index"
+       _ = array[1:3:2] // ERROR "invalid slice index|inverted slice"
+       _ = array[2:1:3] // ERROR "invalid slice index|inverted slice"
+       _ = array[2:3:1] // ERROR "invalid slice index|inverted slice"
+       _ = array[3:1:2] // ERROR "invalid slice index|inverted slice"
+       _ = array[3:2:1] // ERROR "invalid slice index|inverted slice"
        _ = array[i:1:2]
-       _ = array[i:2:1] // ERROR "invalid slice index"
+       _ = array[i:2:1] // ERROR "invalid slice index|inverted slice"
        _ = array[1:j:2]
        _ = array[2:j:1] // ERROR "invalid slice index"
        _ = array[1:2:k]
-       _ = array[2:1:k] // ERROR "invalid slice index"
+       _ = array[2:1:k] // ERROR "invalid slice index|inverted slice"
        
        _ = slice[1:2]
-       _ = slice[2:1] // ERROR "invalid slice index"
+       _ = slice[2:1] // ERROR "invalid slice index|inverted slice"
        _ = slice[2:2]
        _ = slice[i:1]
        _ = slice[1:j]
        _ = slice[1:2:3]
-       _ = slice[1:3:2] // ERROR "invalid slice index"
-       _ = slice[2:1:3] // ERROR "invalid slice index"
-       _ = slice[2:3:1] // ERROR "invalid slice index"
-       _ = slice[3:1:2] // ERROR "invalid slice index"
-       _ = slice[3:2:1] // ERROR "invalid slice index"
+       _ = slice[1:3:2] // ERROR "invalid slice index|inverted slice"
+       _ = slice[2:1:3] // ERROR "invalid slice index|inverted slice"
+       _ = slice[2:3:1] // ERROR "invalid slice index|inverted slice"
+       _ = slice[3:1:2] // ERROR "invalid slice index|inverted slice"
+       _ = slice[3:2:1] // ERROR "invalid slice index|inverted slice"
        _ = slice[i:1:2]
-       _ = slice[i:2:1] // ERROR "invalid slice index"
+       _ = slice[i:2:1] // ERROR "invalid slice index|inverted slice"
        _ = slice[1:j:2]
        _ = slice[2:j:1] // ERROR "invalid slice index"
        _ = slice[1:2:k]
-       _ = slice[2:1:k] // ERROR "invalid slice index"
+       _ = slice[2:1:k] // ERROR "invalid slice index|inverted slice"
        
        _ = str[1:2]
-       _ = str[2:1] // ERROR "invalid slice index"
+       _ = str[2:1] // ERROR "invalid slice index|inverted slice"
        _ = str[2:2]
        _ = str[i:1]
        _ = str[1:j]
 
        // check out of bounds indices on array
-       _ = array[11:11] // ERROR "out of bounds for 10-element array"
-       _ = array[11:12] // ERROR "out of bounds for 10-element array"
-       _ = array[11:] // ERROR "out of bounds for 10-element array"
-       _ = array[:11] // ERROR "out of bounds for 10-element array"
-       _ = array[1:11] // ERROR "out of bounds for 10-element array"
-       _ = array[1:11:12] // ERROR "out of bounds for 10-element array"
-       _ = array[1:2:11] // ERROR "out of bounds for 10-element array"
-       _ = array[1:11:3] // ERROR "out of bounds for 10-element array"
-       _ = array[11:2:3] // ERROR "out of bounds for 10-element array"
-       _ = array[11:12:13] // ERROR "out of bounds for 10-element array"
+       _ = array[11:11] // ERROR "out of bounds"
+       _ = array[11:12] // ERROR "out of bounds"
+       _ = array[11:] // ERROR "out of bounds"
+       _ = array[:11] // ERROR "out of bounds"
+       _ = array[1:11] // ERROR "out of bounds"
+       _ = array[1:11:12] // ERROR "out of bounds"
+       _ = array[1:2:11] // ERROR "out of bounds"
+       _ = array[1:11:3] // ERROR "out of bounds|invalid slice index"
+       _ = array[11:2:3] // ERROR "out of bounds|inverted slice|invalid slice index"
+       _ = array[11:12:13] // ERROR "out of bounds"
 
        // slice bounds not checked
        _ = slice[11:11]
@@ -116,6 +116,6 @@ func f() {
        _ = slice[1:11:12]
        _ = slice[1:2:11]
        _ = slice[1:11:3] // ERROR "invalid slice index"
-       _ = slice[11:2:3] // ERROR "invalid slice index"
+       _ = slice[11:2:3] // ERROR "invalid slice index|inverted slice"
        _ = slice[11:12:13]
 }
index cc30f26546a96f1002b96d618540a5626fb2d395..6e0428121ff60a9324d01f2dfbc2bfba380bdde4 100644 (file)
@@ -7,7 +7,7 @@
 package main
 
 func main() {
-       if x; y         // ERROR "missing { after if clause|undefined"
+       if x; y         // ERROR "missing .*{.* after if clause|undefined"
        {
                z       // GCCGO_ERROR "undefined"
 
index 61b8bf6d4ff737b85e0e513150cd3d7a15d1f9f3..23d7bd0ee88dacb21697a01e4d25befd2d0df5f5 100644 (file)
@@ -7,7 +7,7 @@
 package main
 
 func main() {
-       switch x; y     // ERROR "missing { after switch clause|undefined"
+       switch x; y     // ERROR "missing .*{.* after switch clause|undefined"
        {
                z
 
index bb87520c52e3609caff8787a8e7d9cada935fb0f..ca070d8a577b70dac28289b1f1722fecdf139d51 100644 (file)
@@ -7,7 +7,7 @@
 package main
 
 func main() {
-       for x; y; z     // ERROR "missing { after for clause|undefined"
+       for x; y; z     // ERROR "missing .*{.* after for clause|undefined"
        {
                z       // GCCGO_ERROR "undefined"
 
index 00fa3f575f4c3e29f85d03bdd67956b52b01c343..99c2d22561b74f08977a9b00d304cb384c80f748 100644 (file)
@@ -8,7 +8,7 @@ package main
 
 func main() {
        for x           // GCCGO_ERROR "undefined"
-       {               // ERROR "missing { after for clause"
+       {               // ERROR "missing .*{.* after for clause"
                z       // GCCGO_ERROR "undefined"
 
 
index 239ceacc69757a583ecc789e56f24992b8e85c2c..a2ad91ff4c371eb176553dbc8938a46b3a4bfb4b 100644 (file)
@@ -13,6 +13,6 @@ func mine(int b) int {        // ERROR "undefined.*b"
 }
 
 func main() {
-       mine()
-       c = mine()      // ERROR "undefined.*c" "cannot assign to c"
+       mine()          // GCCGO_ERROR "not enough arguments"
+       c = mine()      // ERROR "undefined.*c|not enough arguments" "cannot assign to c"
 }