File tree Expand file tree Collapse file tree 1 file changed +8
-2
lines changed Expand file tree Collapse file tree 1 file changed +8
-2
lines changed Original file line number Diff line number Diff line change @@ -2283,7 +2283,6 @@ class QAST::CompilerJS does DWIMYNameMangling does SerializeOnce {
2283
2283
$ slurpy := $ _ ;
2284
2284
}
2285
2285
} elsif $ _ . named {
2286
- $ * BLOCK . add_js_lexical(self . mangle_name($ _ . name ));
2287
2286
my $ quoted := quote_string($ _ . named);
2288
2287
my $ value := " _NAMED[$ quoted ]" ;
2289
2288
if $ _ . default {
@@ -2295,7 +2294,14 @@ class QAST::CompilerJS does DWIMYNameMangling does SerializeOnce {
2295
2294
}
2296
2295
# TODO required named arguments and defaultless optional ones
2297
2296
2298
- @ setup . push (" { self . mangle_name($ _ . name )} = $ value ;\n " );
2297
+ if self . is_dynamic_var($ _ ) {
2298
+ @ setup . push (" { $ * CTX } [{ quote_string($ _ . name )} ] = $ value ;\n " );
2299
+ }
2300
+ else {
2301
+ $ * BLOCK . add_js_lexical(self . mangle_name($ _ . name ));
2302
+ @ setup . push (" { self . mangle_name($ _ . name )} = $ value ;\n " );
2303
+ }
2304
+
2299
2305
} elsif self . is_dynamic_var($ _ ) {
2300
2306
my $ tmp := self . unique_var(' param' );
2301
2307
@ sig . push ($ tmp );
You can’t perform that action at this time.
0 commit comments