summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--prism_compile.c1
-rw-r--r--test/ruby/test_compile_prism.rb1
2 files changed, 2 insertions, 0 deletions
diff --git a/prism_compile.c b/prism_compile.c
index 2f0161fb47..95544ccda1 100644
--- a/prism_compile.c
+++ b/prism_compile.c
@@ -1437,6 +1437,7 @@ pm_scope_node_init(const pm_node_t *node, pm_scope_node_t *scope, pm_scope_node_
case PM_INTERPOLATED_REGULAR_EXPRESSION_NODE: {
RUBY_ASSERT(node->flags & PM_REGULAR_EXPRESSION_FLAGS_ONCE);
scope->body = (pm_node_t *)node;
+ scope->local_depth_offset += 1;
break;
}
case PM_LAMBDA_NODE: {
diff --git a/test/ruby/test_compile_prism.rb b/test/ruby/test_compile_prism.rb
index e95baf5d5c..0409fc3e46 100644
--- a/test/ruby/test_compile_prism.rb
+++ b/test/ruby/test_compile_prism.rb
@@ -601,6 +601,7 @@ module Prism
assert_prism_eval('/pit/ne')
assert_prism_eval('2.times.map { /#{1}/o }')
+ assert_prism_eval('2.times.map { foo = 1; /#{foo}/o }')
end
def test_StringNode