libjava.exp (test_libjava_from_javac): Removed hack for interfaces.

* lib/libjava.exp (test_libjava_from_javac): Removed hack for
	interfaces.  Fail if jv-scan reports a parse error.

From-SVN: r32392
This commit is contained in:
Tom Tromey 2000-03-07 22:44:22 +00:00 committed by Tom Tromey
parent 1729c26505
commit c7ce272aa5
2 changed files with 23 additions and 13 deletions

View file

@ -1,5 +1,8 @@
2000-03-07 Tom Tromey <tromey@cygnus.com> 2000-03-07 Tom Tromey <tromey@cygnus.com>
* lib/libjava.exp (test_libjava_from_javac): Removed hack for
interfaces. Fail if jv-scan reports a parse error.
Test for PR gcj/162: Test for PR gcj/162:
* libjava.lang/PR162.out: New file. * libjava.lang/PR162.out: New file.
* libjava.lang/PR162.java: New file. * libjava.lang/PR162.java: New file.

View file

@ -495,20 +495,27 @@ proc test_libjava_from_javac { options srcfile compile_args inpfile resultfile e
[target_compile $srcfile "" none \ [target_compile $srcfile "" none \
"compiler=$jvscan additional_flags=--list-class"]] "compiler=$jvscan additional_flags=--list-class"]]
verbose "class list is $class_out" verbose "class list is $class_out"
# FIXME: As of Wed Feb 24 1999, `jv-scan --list-class' prints
# nothing if the file contains an interface and not a class. I if {[string match "*parse error*" $main_name]
# believe this is a jv-scan bug. || [string match "*parse error*" $class_out]} {
if {$class_out == ""} then { # Do the remaining fails.
set class_files \ setup_xfail "*-*-*"
[list $objdir/[file rootname [file tail $srcfile]].class] fail "$errname compilation from bytecode"
} else { if {! [info exists opts(no-exec)]} {
# Turn "a b" into "a.class b.class". setup_xfail "*-*-*"
# Also, turn "foo.bar" into "foo/bar.class". fail "$errname execution from bytecode->native test"
set class_files {} setup_xfail "*-*-*"
foreach file [split [string trim $class_out]] { fail "$errname output from bytecode->native test"
set file [join [split $file .] /]
lappend class_files $objdir/$file.class
} }
return
}
# Turn "a b" into "a.class b.class".
# Also, turn "foo.bar" into "foo/bar.class".
set class_files {}
foreach file [split [string trim $class_out]] {
set file [join [split $file .] /]
lappend class_files $objdir/$file.class
} }
# Usually it is an error for a test program not to have a `main' # Usually it is an error for a test program not to have a `main'