HEX
Server: Apache
System: Linux s198.coreserver.jp 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC 2025 x86_64
User: nagasaki (10062)
PHP: 7.1.33
Disabled: NONE
Upload Files
File: //usr/local/rvm/src/ruby-3.0.2/test/racc/assets/yyerr.y
#
# yyerror/yyerrok/yyaccept test
#

class A
rule

target: a b c

a:
    {
      yyerror
      raise ArgumentError, "yyerror failed"
    }
 | error

b:
    {
      yyerrok
    }

c:
    {
      yyaccept
      raise ArgumentError, "yyaccept failed"
    }

end

---- inner

  def parse
    do_parse
  end

  def next_token
    [false, '$end']
  end

  def on_error( *args )
    $stderr.puts "on_error called: args=#{args.inspect}"
  end

---- footer

A.new.parse