summaryrefslogtreecommitdiff
path: root/usr/austin/eval/stmt.go
diff options
context:
space:
mode:
authorAustin Clements <aclements@csail.mit.edu>2009-08-28 10:39:57 -0700
committerAustin Clements <aclements@csail.mit.edu>2009-08-28 10:39:57 -0700
commitdb2c4b8dcf4b0a04a60d2acb2c1f7b6151541f76 (patch)
tree621b26e8f65ad78dcd1edf3bb8c5473a24029f47 /usr/austin/eval/stmt.go
parentd820612026ad44252988b00bc5fcfa3e350dbc2a (diff)
downloadgolang-db2c4b8dcf4b0a04a60d2acb2c1f7b6151541f76.tar.gz
Implement runtime errors, divide-by-zero checking, nil pointer
checking, bounds checking, and map key checking. R=rsc APPROVED=rsc DELTA=202 (108 added, 72 deleted, 22 changed) OCL=33981 CL=34031
Diffstat (limited to 'usr/austin/eval/stmt.go')
-rw-r--r--usr/austin/eval/stmt.go4
1 files changed, 2 insertions, 2 deletions
diff --git a/usr/austin/eval/stmt.go b/usr/austin/eval/stmt.go
index 4c90da0aa..b6e471dee 100644
--- a/usr/austin/eval/stmt.go
+++ b/usr/austin/eval/stmt.go
@@ -1281,8 +1281,8 @@ type Stmt struct {
f func (f *Frame);
}
-func (s *Stmt) Exec(f *Frame) {
- s.f(f);
+func (s *Stmt) Exec(f *Frame) os.Error {
+ return Try(func() {s.f(f)});
}
func CompileStmts(scope *Scope, stmts []ast.Stmt) (*Stmt, os.Error) {