Bug #3331

Suppress Warning: class <<self

Added by Eregon (Benoit Daloze) over 10 years ago. Updated over 9 years ago.

Target version:
ruby -v:
ruby 1.9.3dev (2010-05-14 trunk 27796) [x86_64-darwin10.3.0]


Running a simple program under trunk with warnings, I got one that could be solved very easily:
`<<' after local variable is interpreted as binary operator
even though it seems like here document

It is indeed not interpreted as one of these,
but it can be disturbing for the parser and the reader.

"class << self" should only be written as I just did,
neither "class <<self", nor "class<<self"
(the latter being mainly used for Module#singleton_class with class<<self;self;end)

Here is the stats:
$ grep -r 'class < 2
$ grep -r 'class< 5
$ grep -r 'class << self' . | wc -l #=> 180

So here is the patch, I just changed the 7 cases here above.
I also indented lib/irb/cmd/fork.rb because the change was minimal.

Is ruby-core interested in avoiding warnings?
I think it can really help to use the warning flag, but if the output is already filled with ruby's internals, it's very hard to find what you want.

The patch attached is the output of git format-patch, tell me if it needs to be another format.


PS: Do you have any idea how to solve that one and what is the real meaning of it?:
warning: character class has duplicated range: /[\s\t\r\n\f]+/


0001-Suppress-Warning-class-self.patch (3.73 KB) 0001-Suppress-Warning-class-self.patch Eregon (Benoit Daloze), 05/22/2010 10:22 PM

Updated by nobu (Nobuyoshi Nakada) over 10 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100

This issue was solved with changeset r27966.
Benoit, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


Also available in: Atom PDF