Issue #12037 has been reported by Chris Arcand.

----------------------------------------
Bug #12037: did_you_mean reporting impossible suggestion
https://bugs.ruby-lang.org/issues/12037

* Author: Chris Arcand
* Status: Open
* Priority: Normal
* Assignee: 
* ruby -v: 2.3.0
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN, 2.3: UNKNOWN
----------------------------------------
The did_you_mean feature in Ruby 2.3.0 reports an impossible suggestion when you define whatever is being called in the current scope after it is being called:

~~~
irb(main):001:0> def foo
irb(main):002:1> bar
irb(main):003:1> bar = "baz"
irb(main):004:1> end
=> :foo
irb(main):005:0> foo
NameError: undefined local variable or method `bar' for main:Object
Did you mean?  bar
        from (irb):2:in `foo'
        from (irb):5
        from /Users/carcand/.rbenv/versions/2.3.0/bin/irb:11:in `<main>'
~~~

I imagine this could be *very* confusing for newcomers to Ruby; I've not looked in to how the gem works but if a way to suppress the suggestion in this particular context might be appropriate.



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>