summaryrefslogtreecommitdiff
path: root/test/recover.go
diff options
context:
space:
mode:
authorAlan Donovan <adonovan@google.com>2013-02-21 12:48:38 -0500
committerAlan Donovan <adonovan@google.com>2013-02-21 12:48:38 -0500
commit37563c63db1c49edacad86f5425dac22460a3801 (patch)
tree4d5f1e465b65537ec34a567318d1fa3d892c198f /test/recover.go
parentf9ec488696969c8b3cc1fbf4e15306d6b358346c (diff)
downloadgo-37563c63db1c49edacad86f5425dac22460a3801.tar.gz
exp/ssa/interp: (#6 of 5): test interpretation of SSA form of $GOROOT/test/*.go.
The interpreter's os.Exit now triggers a special panic rather than kill the test process. (It's semantically dubious, since it will run deferred routines.) Interpret now returns its exit code rather than calling os.Exit. Also: - disabled parts of a few $GOROOT/tests via os.Getenv("GOSSAINTERP"). - remove unnecessary 'slots' param to external functions; they are never closures. Most of the tests are disabled until go/types supports shifts. They can be reenabled if you patch this workaround: https://codereview.appspot.com/7312068 R=iant, bradfitz CC=golang-dev, gri https://codereview.appspot.com/7313062
Diffstat (limited to 'test/recover.go')
-rw-r--r--test/recover.go12
1 files changed, 9 insertions, 3 deletions
diff --git a/test/recover.go b/test/recover.go
index eea655ec5..7c27d7c4d 100644
--- a/test/recover.go
+++ b/test/recover.go
@@ -8,15 +8,21 @@
package main
-import "runtime"
+import (
+ "os"
+ "runtime"
+)
func main() {
test1()
test1WithClosures()
test2()
test3()
- test4()
- test5()
+ // exp/ssa/interp still has some bugs in recover().
+ if os.Getenv("GOSSAINTERP") == "" {
+ test4()
+ test5()
+ }
test6()
test6WithClosures()
test7()