[#122258] [Ruby Misc#21367] Remove link to ruby-doc.org from www.ruby-lang.org/en/documentation/ — "p8 (Petrik de Heus) via ruby-core" <ruby-core@...>
Issue #21367 has been reported by p8 (Petrik de Heus).
11 messages
2025/05/23
[ruby-core:122215] [Ruby Bug#21356] Error when accessing local variable named "default" with Binding#local_variable_get
From:
richardboehme via ruby-core <ruby-core@...>
Date:
2025-05-21 08:31:34 UTC
List:
ruby-core #122215
Issue #21356 has been reported by richardboehme (Richard B=F6hme). ---------------------------------------- Bug #21356: Error when accessing local variable named "default" with Bindin= g#local_variable_get https://bugs.ruby-lang.org/issues/21356 * Author: richardboehme (Richard B=F6hme) * Status: Open * ruby -v: ruby 3.5.0dev (2025-05-21T06:12:18Z master f6cbf499bc) +PRISM [x= 86_64-linux] * Backport: 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN ---------------------------------------- On Ruby master when using `Binding#local_variable_get` with the name `:defa= ult` it raises the following error: ``` 'Binding#local_variable_get': numbered parameter 'default' is not a local v= ariable (NameError) ``` I saw that this error was introduced in #21049 but it seems like the check = for whether the passed variable name is a numbered parameter does not work = for the `:default` symbol.=20 I think this might be an off-by-one error in the `rb_numparam_id_p` functio= n in proc.c, where instead of adding 9 (the maximum number of numbered para= meters) to tNUMPARAM_1 we currently add 10 which then includes the id of de= fault as well? Compiling with this change (see attached diff) fixed the iss= ue but I'm not sure if it might break other things. ---Files-------------------------------- patch.diff (384 Bytes) --=20 https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- [email protected] To unsubscribe send an email to [email protected] ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.rub= y-lang.org/