summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Newton <kddnewton@gmail.com>2024-03-15 09:42:44 -0400
committerKevin Newton <kddnewton@gmail.com>2024-03-15 09:42:44 -0400
commit043c90e16194e21006e185084199332059574da5 (patch)
tree64aa6ca506d31a83e1c0582ec0a859e3527bcb66
parentf2e96d4bd90595b0818f02559a53905174496e34 (diff)
Fix compiling shareable constant nodes
-rw-r--r--prism_compile.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/prism_compile.c b/prism_compile.c
index 87d5ed450b..56b11b40b0 100644
--- a/prism_compile.c
+++ b/prism_compile.c
@@ -7879,6 +7879,11 @@ pm_compile_node(rb_iseq_t *iseq, const pm_node_t *node, LINK_ANCHOR *const ret,
PUSH_INSN(ret, location, putself);
}
return;
+ case PM_SHAREABLE_CONSTANT_NODE:
+ // A value that is being written to a constant that is being marked as
+ // shared depending on the current lexical context.
+ PM_COMPILE(((const pm_shareable_constant_node_t *) node)->write);
+ return;
case PM_SINGLETON_CLASS_NODE: {
// class << self; end
// ^^^^^^^^^^^^^^^^^^