Project

General

Profile

Bug #15188

Incorrect warning "assigned but unused variable" when using ripper with $VERBOSE = true

Added by cout (Paul Brannan) 11 months ago. Updated 11 months ago.

Status:
Open
Priority:
Normal
Assignee:
-
Target version:
-
ruby -v:
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
[ruby-core:89236]

Description

The following code:

require 'ripper'

class Parser < Ripper
  def warn(fmt, *args)
    puts "#{filename}:#{lineno} - #{fmt % args}"
  end
end

if __FILE__ == $0 then
  $VERBOSE = true

  s = 'foo = 42; p foo'
  parser = Parser.new(s)
  parser.parse
end

produces this warning:

(ripper):1 - assigned but unused variable - foo

but clearly foo is not unused.

History

#1

Updated by nagachika (Tomoyuki Chikanaga) 11 months ago

  • Backport changed from 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN to 2.3: DONTNEED, 2.4: DONTNEED, 2.5: REQUIRED

Also available in: Atom PDF