From: petrik@... Date: 2021-03-25T18:39:36+00:00 Subject: [ruby-core:103025] [Ruby master Feature#17743] Show argument types in backtrace Issue #17743 has been updated by p8 (Petrik de Heus). ufuk (Ufuk Kayserilioglu) wrote in #note-4: > p8 (Petrik de Heus) wrote in #note-3: > > ``` > > from hi.rb:2:in `say_hi' called with NilClass, Numeric, String > > ``` > > What about keyword arguments that could have been supplied in any order? What about the block argument, if it was `nil` or not? Hmm, hadn't thought about those and I can see this being problematic... > This is a huge drawback for a nice-to-have feature, though. Hmm, yes I think I agree. This would probably be better handled by Static Typing and not allowing nils. ---------------------------------------- Feature #17743: Show argument types in backtrace https://bugs.ruby-lang.org/issues/17743#change-91090 * Author: p8 (Petrik de Heus) * Status: Open * Priority: Normal ---------------------------------------- Given the following Ruby program: ``` ruby def say_hi(person) puts message(person) end def message(person) "hi: #{person.name}" end say_hi(nil) ``` It would be helpful if the backtrace contained the types of the argumets: ``` hi.rb:6:in `message': undefined method `name' for nil:NilClass (NoMethodError) from hi.rb:2:in `say_hi' called with NilClass from hi.rb:9:in `
' called with NilClass ``` Inspired by the following Twitter thread: https://twitter.com/lzsthw/status/1374350046909628423 -- https://bugs.ruby-lang.org/ Unsubscribe: