
Issue #21105 has been updated by Eregon (Benoit Daloze). It is already shown: ```ruby class Example def self.run nil.foo.bar.baz end end Example.run ``` ``` example.rb:3:in `run': undefined method `foo' for nil (NoMethodError) nil.foo.bar.baz ^^^^ from example.rb:7:in `<main>' ``` Adding columns would add a lot of noise and would not be clearer than that. So I think we can close this as "already done, just in a different/clearer way" ---------------------------------------- Feature #21105: Improve Ruby Stack Trace to Include Exact Error Position (Column Number) https://bugs.ruby-lang.org/issues/21105#change-111735 * Author: ennder (Jérôme BATAILLE) * Status: Open ---------------------------------------- ## Subject Improve Ruby Stack Trace to Include Exact Error Position (Column Number) ## Description Currently, when an exception occurs in Ruby, the stack trace provides the file name and line number but does not indicate the exact position (column number) where the error occurred within the line. This lack of precision can make debugging more challenging, especially in cases where multiple method calls or expressions are present on the same line. ## Example ``` ruby class Example def self.run nil.some_method_call # Error occurs here end end Example.run ``` ## Expected Behavior The stack trace should include the column number where the error occurred, e.g.: ``` ruby trace.rb:4:10:in `run': undefined method `some_method_call' for nil:NilClass (NoMethodError) ``` ## Benefits More precise debugging. Easier identification of errors in complex one-liner expressions. Better tooling support for editors and debuggers. ## Additional Notes Would it be possible to add this enhancement in a future Ruby version? Thank you for considering this request! -- https://bugs.ruby-lang.org/