From c11bf99a007b16ec9aaa4e25bee7570e122395f5 Mon Sep 17 00:00:00 2001 From: ian Date: Fri, 23 Sep 2011 23:44:14 +0000 Subject: [PATCH] * go.test/go-test.exp (errchk): Handle more cases of getting correct Tcl backslash quoting in regular expressions in test file. Also fix some tests to match gccgo error messages. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179134 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/go.test/go-test.exp | 12 ++++++------ gcc/testsuite/go.test/test/fixedbugs/bug340.go | 6 +++--- gcc/testsuite/go.test/test/fixedbugs/bug350.go | 8 ++++---- gcc/testsuite/go.test/test/fixedbugs/bug351.go | 2 +- 5 files changed, 19 insertions(+), 14 deletions(-) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 208add9d6db..4f0cebca6e8 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2011-09-23 Ian Lance Taylor + + * go.test/go-test.exp (errchk): Handle more cases of getting + correct Tcl backslash quoting in regular expressions in test file. + 2011-09-23 Jason Merrill Core 234 diff --git a/gcc/testsuite/go.test/go-test.exp b/gcc/testsuite/go.test/go-test.exp index 0e8f2a6e28f..10cd151ab93 100644 --- a/gcc/testsuite/go.test/go-test.exp +++ b/gcc/testsuite/go.test/go-test.exp @@ -61,13 +61,17 @@ proc errchk { test opts } { # experimentation, not analysis. regsub -all "\\.\\*" $out_line "\\\\\[ -~\\\\\]*" out_line } + if [string match "*dg-error*\\\[?\\\]*" $out_line] { + set index [string first "dg-error" $out_line] + regsub -all "\\\[\(.\)\\\]" $out_line "\\\\\[\\1\\\\\]" out_line + } if [string match "*dg-error*\{*" $out_line] { set index [string first "dg-error" $out_line] - regsub -start $index -all "\{" $out_line "\\\\\[\\\{\\\\\]" out_line + regsub -start $index -all "\(\[^\\\\]\)\{" $out_line "\\1\\\\\[\\\{\\\\\]" out_line } if [string match "*dg-error*\}*\}" $out_line] { set index [string first "dg-error" $out_line] - regsub -start $index -all "\}\(.\)" $out_line "\\\\\[\\\}\\\\\]\\1" out_line + regsub -start $index -all "\(\[^\\\\]\)\}\(.\)" $out_line "\\1\\\\\[\\\}\\\\\]\\2" out_line } if [string match "*dg-error*\(*" $out_line] { set index [string first "dg-error" $out_line] @@ -77,10 +81,6 @@ proc errchk { test opts } { set index [string first "dg-error" $out_line] regsub -start $index -all "\\\\\\\)\(.\)" $out_line "\\\\\[\\\)\\\\\]\\1" out_line } - if [string match "*dg-error*\[.\]*" $out_line] { - set index [string first "dg-error" $out_line] - regsub -all "\\\[\\.\\\]" $out_line "\\\\\[.\\\\\]" out_line - } # Special case for bug332, in which the error message wants to # match the file name, which is not what dg-error expects. if [string match "*dg-error*bug332*" $out_line] { diff --git a/gcc/testsuite/go.test/test/fixedbugs/bug340.go b/gcc/testsuite/go.test/test/fixedbugs/bug340.go index 461cc6cd411..af72513e328 100644 --- a/gcc/testsuite/go.test/test/fixedbugs/bug340.go +++ b/gcc/testsuite/go.test/test/fixedbugs/bug340.go @@ -10,8 +10,8 @@ package main func main() { var x interface{} - switch t := x.(type) { // ERROR "0 is not a type" - case 0: - t.x = 1 // ERROR "type interface \{ \}" + switch t := x.(type) { // GC_ERROR "0 is not a type" + case 0: // GCCGO_ERROR "expected type" + t.x = 1 // ERROR "type interface \{ \}|reference to undefined field or method" } } diff --git a/gcc/testsuite/go.test/test/fixedbugs/bug350.go b/gcc/testsuite/go.test/test/fixedbugs/bug350.go index aac2949017a..f8df3f58b96 100644 --- a/gcc/testsuite/go.test/test/fixedbugs/bug350.go +++ b/gcc/testsuite/go.test/test/fixedbugs/bug350.go @@ -8,8 +8,8 @@ package main type T int -func (T) m() {} -func (T) m() {} // ERROR "T[.]m redeclared" +func (T) m() {} // GCCGO_ERROR "previous" +func (T) m() {} // ERROR "T[.]m redeclared|redefinition" -func (*T) p() {} -func (*T) p() {} // ERROR "[(][*]T[)][.]p redeclared" +func (*T) p() {} // GCCGO_ERROR "previous" +func (*T) p() {} // ERROR "[(][*]T[)][.]p redeclared|redefinition" diff --git a/gcc/testsuite/go.test/test/fixedbugs/bug351.go b/gcc/testsuite/go.test/test/fixedbugs/bug351.go index 2f631bbbbc5..9625c6a501c 100644 --- a/gcc/testsuite/go.test/test/fixedbugs/bug351.go +++ b/gcc/testsuite/go.test/test/fixedbugs/bug351.go @@ -9,5 +9,5 @@ package main var x int func main() { - (x) := 0 // ERROR "non-name [(]x[)]" + (x) := 0 // ERROR "non-name [(]x[)]|non-name on left side" } -- 2.11.0