From: "kddnewton (Kevin Newton) via ruby-core" Date: 2024-09-13T20:59:02+00:00 Subject: [ruby-core:119188] [Ruby master Bug#20736] prism emits wrong warnings in syntax-error code Issue #20736 has been updated by kddnewton (Kevin Newton). Right now Prism is lexing `9a` as an integer and then an identifier. So it's effectively parsing it as `1; 2; 9; a`. That's why it's warning that `9` is a useless literal. I could change this in the parser to parse it instead as a missing `.` to make it a method call? Or whatever else you think makes more sense. For `make test-all` yes, I would suggest turning off warnings, as if it's just meant for a syntax check you don't care about warnings in those cases. ---------------------------------------- Bug #20736: prism emits wrong warnings in syntax-error code https://bugs.ruby-lang.org/issues/20736#change-109772 * Author: mame (Yusuke Endoh) * Status: Feedback * Assignee: kddnewton (Kevin Newton) * Backport: 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN ---------------------------------------- ``` $ ./local/bin/ruby -w --parser=parse.y -e 'begin eval("0a"); rescue SyntaxError; end' $ ./local/bin/ruby -w --parser=prism -e 'begin eval("0a"); rescue SyntaxError; end' (eval at -e:1):1: warning: possibly useless use of a literal in void context ``` ``` $ ./local/bin/ruby -w --parser=parse.y -e 'begin eval("+a.0"); rescue SyntaxError; end' $ ./local/bin/ruby -w --parser=prism -e 'begin eval("+a.0"); rescue SyntaxError; end' (eval at -e:1):1: warning: possibly useless use of +@ in void context ``` -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/