go-test.exp (errchk): Handle more cases of getting correct Tcl backslash quoting in regular...

* 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.

From-SVN: r179134
This commit is contained in:
Ian Lance Taylor 2011-09-23 23:44:14 +00:00 committed by Ian Lance Taylor
parent b07000d942
commit 6ed22bc817
5 changed files with 19 additions and 14 deletions

View File

@ -1,3 +1,8 @@
2011-09-23 Ian Lance Taylor <iant@google.com>
* 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 <jason@redhat.com>
Core 234

View File

@ -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] {

View File

@ -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"
}
}

View File

@ -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"

View File

@ -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"
}