[ruby-core:113022] [Ruby master Bug#19548] Ambiguous and confusing syntax for alias/undef arguments
From:
"hurricup (Alexandr Evstigneev) via ruby-core" <ruby-core@...>
Date:
2023-03-27 05:54:53 UTC
List:
ruby-core #113022
Issue #19548 has been reported by hurricup (Alexandr Evstigneev).
----------------------------------------
Bug #19548: Ambiguous and confusing syntax for alias/undef arguments
https://bugs.ruby-lang.org/issues/19548
* Author: hurricup (Alexandr Evstigneev)
* Status: Open
* Priority: Normal
* Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN
----------------------------------------
This was introduced in https://bugs.ruby-lang.org/issues/8851 and looks really confusing at least because of bare `/`.
Here are 3 semantically similar methods, but feels like first two should not be valid:
```
def method1
undef :*,<<,/,[]
alias :* /
end
def method2
undef :*,
<<,
/,
[]
alias :*
/
end
def method3
undef :*
undef :<<
undef :/
undef :[]
alias :* :/
end
puts RubyVM::InstructionSequence.of(method :method1).disasm
puts RubyVM::InstructionSequence.of(method :method2).disasm
puts RubyVM::InstructionSequence.of(method :method3).disasm
```
--
https://bugs.ruby-lang.org/
______________________________________________
ruby-core mailing list -- ruby-core@ml.ruby-lang.org
To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org
ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/