summaryrefslogtreecommitdiff
path: root/bootstraptest
diff options
context:
space:
mode:
Diffstat (limited to 'bootstraptest')
-rw-r--r--bootstraptest/test_yjit.rb32
1 files changed, 32 insertions, 0 deletions
diff --git a/bootstraptest/test_yjit.rb b/bootstraptest/test_yjit.rb
index 1a683c1c41..a164b7a413 100644
--- a/bootstraptest/test_yjit.rb
+++ b/bootstraptest/test_yjit.rb
@@ -7,6 +7,19 @@ assert_equal 'string', %q{
foo
}
+# Check that exceptions work when setting global variables
+assert_equal 'rescued', %q{
+ def set_var
+ $var = 100
+ rescue
+ :rescued
+ end
+
+ set_var
+ trace_var(:$var) { raise }
+ set_var
+}
+
# Check that global variables work
assert_equal 'string', %q{
$foo = "string"
@@ -18,6 +31,25 @@ assert_equal 'string', %q{
foo
}
+# Check that exceptions work when getting global variable
+assert_equal 'rescued', %q{
+ module Warning
+ def warn(message)
+ raise
+ end
+ end
+
+ def get_var
+ $=
+ rescue
+ :rescued
+ end
+
+ $VERBOSE = true
+ get_var
+ get_var
+}
+
# Check that global tracepoints work
assert_equal 'true', %q{
def foo