lib/lrama/grammar/code/initial_action_code.rb in lrama-0.6.2 vs lib/lrama/grammar/code/initial_action_code.rb in lrama-0.6.3

- old
+ new

@@ -4,21 +4,27 @@ class InitialActionCode < Code private # * ($$) yylval # * (@$) yylloc + # * ($:$) error # * ($1) error # * (@1) error + # * ($:1) error def reference_to_c(ref) case when ref.type == :dollar && ref.name == "$" # $$ "yylval" when ref.type == :at && ref.name == "$" # @$ "yylloc" + when ref.type == :index && ref.name == "$" # $:$ + raise "$:#{ref.value} can not be used in initial_action." when ref.type == :dollar # $n raise "$#{ref.value} can not be used in initial_action." when ref.type == :at # @n raise "@#{ref.value} can not be used in initial_action." + when ref.type == :index # $:n + raise "$:#{ref.value} can not be used in initial_action." else raise "Unexpected. #{self}, #{ref}" end end end