From f5ca3ff4dbcf5c140a77d1de5ff3fe3eed2d558d Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Thu, 26 Nov 2020 20:14:34 +0900 Subject: Store all kinds of syntax errors [Bug #17345] --- ext/ripper/lib/ripper/lexer.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'ext') diff --git a/ext/ripper/lib/ripper/lexer.rb b/ext/ripper/lib/ripper/lexer.rb index 287bd4fdb6..9ada47927b 100644 --- a/ext/ripper/lib/ripper/lexer.rb +++ b/ext/ripper/lib/ripper/lexer.rb @@ -191,7 +191,9 @@ class Ripper def on_error(mesg) @errors.push Elem.new([lineno(), column()], __callee__, token(), state(), mesg) end - alias on_parse_error on_error + PARSER_EVENTS.grep(/_error\z/) do |e| + alias_method "on_#{e}", :on_error + end alias compile_error on_error (SCANNER_EVENTS.map {|event|:"on_#{event}"} - private_instance_methods(false)).each do |event| -- cgit v1.2.3