racc 1.5.2 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (122) hide show
  1. checksums.yaml +4 -4
  2. data/README.ja.rdoc +0 -1
  3. data/README.rdoc +6 -7
  4. data/{rdoc → doc}/en/NEWS.en.rdoc +0 -0
  5. data/{rdoc → doc}/en/grammar.en.rdoc +27 -31
  6. data/doc/en/grammar2.en.rdoc +219 -0
  7. data/{rdoc → doc}/ja/NEWS.ja.rdoc +0 -0
  8. data/{rdoc → doc}/ja/command.ja.html +0 -0
  9. data/{rdoc → doc}/ja/debug.ja.rdoc +0 -0
  10. data/{rdoc → doc}/ja/grammar.ja.rdoc +0 -0
  11. data/{rdoc → doc}/ja/index.ja.html +0 -0
  12. data/{rdoc → doc}/ja/parser.ja.rdoc +0 -0
  13. data/{rdoc → doc}/ja/usage.ja.html +0 -0
  14. data/ext/racc/cparse/cparse.c +1 -1
  15. data/ext/racc/cparse/extconf.rb +1 -0
  16. data/lib/racc/info.rb +1 -1
  17. data/lib/racc/parser-text.rb +1 -1
  18. data/lib/racc/parser.rb +1 -1
  19. data/lib/racc/parserfilegenerator.rb +0 -44
  20. data/lib/racc/statetransitiontable.rb +2 -8
  21. metadata +15 -121
  22. data/Rakefile +0 -79
  23. data/ext/racc/com/headius/racc/Cparse.java +0 -849
  24. data/lib/racc/pre-setup +0 -13
  25. data/sample/array.y +0 -67
  26. data/sample/array2.y +0 -59
  27. data/sample/calc-ja.y +0 -66
  28. data/sample/calc.y +0 -65
  29. data/sample/conflict.y +0 -15
  30. data/sample/hash.y +0 -60
  31. data/sample/lalr.y +0 -17
  32. data/sample/lists.y +0 -57
  33. data/sample/syntax.y +0 -46
  34. data/sample/yyerr.y +0 -46
  35. data/test/assets/cadenza.y +0 -170
  36. data/test/assets/cast.y +0 -926
  37. data/test/assets/chk.y +0 -126
  38. data/test/assets/conf.y +0 -16
  39. data/test/assets/csspool.y +0 -729
  40. data/test/assets/digraph.y +0 -29
  41. data/test/assets/echk.y +0 -118
  42. data/test/assets/edtf.y +0 -583
  43. data/test/assets/err.y +0 -60
  44. data/test/assets/error_recovery.y +0 -35
  45. data/test/assets/expect.y +0 -7
  46. data/test/assets/firstline.y +0 -4
  47. data/test/assets/huia.y +0 -318
  48. data/test/assets/ichk.y +0 -102
  49. data/test/assets/intp.y +0 -546
  50. data/test/assets/journey.y +0 -47
  51. data/test/assets/liquor.y +0 -313
  52. data/test/assets/machete.y +0 -423
  53. data/test/assets/macruby.y +0 -2197
  54. data/test/assets/mailp.y +0 -437
  55. data/test/assets/mediacloth.y +0 -599
  56. data/test/assets/mof.y +0 -649
  57. data/test/assets/namae.y +0 -302
  58. data/test/assets/nasl.y +0 -626
  59. data/test/assets/newsyn.y +0 -25
  60. data/test/assets/noend.y +0 -4
  61. data/test/assets/nokogiri-css.y +0 -255
  62. data/test/assets/nonass.y +0 -41
  63. data/test/assets/normal.y +0 -27
  64. data/test/assets/norule.y +0 -4
  65. data/test/assets/nullbug1.y +0 -25
  66. data/test/assets/nullbug2.y +0 -15
  67. data/test/assets/opal.y +0 -1807
  68. data/test/assets/opt.y +0 -123
  69. data/test/assets/percent.y +0 -35
  70. data/test/assets/php_serialization.y +0 -98
  71. data/test/assets/recv.y +0 -97
  72. data/test/assets/riml.y +0 -665
  73. data/test/assets/rrconf.y +0 -14
  74. data/test/assets/ruby18.y +0 -1943
  75. data/test/assets/ruby19.y +0 -2174
  76. data/test/assets/ruby20.y +0 -2350
  77. data/test/assets/ruby21.y +0 -2359
  78. data/test/assets/ruby22.y +0 -2381
  79. data/test/assets/scan.y +0 -72
  80. data/test/assets/syntax.y +0 -50
  81. data/test/assets/tp_plus.y +0 -622
  82. data/test/assets/twowaysql.y +0 -278
  83. data/test/assets/unterm.y +0 -5
  84. data/test/assets/useless.y +0 -12
  85. data/test/assets/yyerr.y +0 -46
  86. data/test/bench.y +0 -36
  87. data/test/helper.rb +0 -115
  88. data/test/infini.y +0 -8
  89. data/test/regress/cadenza +0 -796
  90. data/test/regress/cast +0 -3428
  91. data/test/regress/csspool +0 -2314
  92. data/test/regress/edtf +0 -1794
  93. data/test/regress/huia +0 -1392
  94. data/test/regress/journey +0 -222
  95. data/test/regress/liquor +0 -885
  96. data/test/regress/machete +0 -833
  97. data/test/regress/mediacloth +0 -1463
  98. data/test/regress/mof +0 -1368
  99. data/test/regress/namae +0 -634
  100. data/test/regress/nasl +0 -2058
  101. data/test/regress/nokogiri-css +0 -836
  102. data/test/regress/opal +0 -6431
  103. data/test/regress/php_serialization +0 -336
  104. data/test/regress/riml +0 -3283
  105. data/test/regress/ruby18 +0 -6344
  106. data/test/regress/ruby22 +0 -7460
  107. data/test/regress/tp_plus +0 -1933
  108. data/test/regress/twowaysql +0 -556
  109. data/test/scandata/brace +0 -7
  110. data/test/scandata/gvar +0 -1
  111. data/test/scandata/normal +0 -4
  112. data/test/scandata/percent +0 -18
  113. data/test/scandata/slash +0 -10
  114. data/test/src.intp +0 -34
  115. data/test/start.y +0 -20
  116. data/test/test_chk_y.rb +0 -52
  117. data/test/test_grammar_file_parser.rb +0 -15
  118. data/test/test_racc_command.rb +0 -339
  119. data/test/test_scan_y.rb +0 -52
  120. data/test/testscanner.rb +0 -51
  121. data/web/racc.en.rhtml +0 -42
  122. data/web/racc.ja.rhtml +0 -51
data/test/regress/cast DELETED
@@ -1,3428 +0,0 @@
1
- #
2
- # DO NOT MODIFY!!!!
3
- # This file is automatically generated by Racc 1.5.0
4
- # from Racc grammar file "".
5
- #
6
-
7
- require 'racc/parser.rb'
8
-
9
-
10
- require 'set'
11
-
12
- # Error classes
13
- module C
14
- class ParseError < StandardError; end
15
- end
16
-
17
- # Local variables:
18
- # mode: ruby
19
- # end:
20
- module C
21
- class Parser < Racc::Parser
22
-
23
- module_eval(<<'...end cast.y/module_eval...', 'cast.y', 564)
24
- # A.1.9 -- Preprocessing numbers -- skip
25
- # A.1.8 -- Header names -- skip
26
-
27
- # A.1.7 -- Puncuators -- we don't bother with {##,#,%:,%:%:} since
28
- # we don't do preprocessing
29
- @@punctuators = %r'\+\+|-[->]|&&|\|\||\.\.\.|(?:<<|>>|[<>=!*/%+\-&^|])=?|[\[\](){}.~?:;,]'
30
- @@digraphs = %r'<[:%]|[:%]>'
31
-
32
- # A.1.6 -- String Literals -- simple for us because we don't decode
33
- # the string (and indeed accept some illegal strings)
34
- @@string_literal = %r'L?"(?:[^\\]|\\.)*?"'m
35
-
36
- # A.1.5 -- Constants
37
- @@decimal_floating_constant = %r'(?:(?:\d*\.\d+|\d+\.)(?:e[-+]?\d+)?|\d+e[-+]?\d+)[fl]?'i
38
- @@hexadecimal_floating_constant = %r'0x(?:(?:[0-9a-f]*\.[0-9a-f]+|[0-9a-f]+\.)|[0-9a-f]+)p[-+]?\d+[fl]?'i
39
-
40
- @@integer_constant = %r'(?:[1-9][0-9]*|0x[0-9a-f]+|0[0-7]*)(?:ul?l?|ll?u?)?'i
41
- @@floating_constant = %r'#{@@decimal_floating_constant}|#{@@hexadecimal_floating_constant}'
42
- @@enumeration_constant = %r'[a-zA-Z_\\][a-zA-Z_\\0-9]*'
43
- @@character_constant = %r"L?'(?:[^\\]|\\.)+?'"
44
- # (note that as with string-literals, we accept some illegal
45
- # character-constants)
46
-
47
- # A.1.4 -- Universal character names -- skip
48
-
49
- # A.1.3 -- Identifiers -- skip, since an identifier is lexically
50
- # identical to an enumeration constant
51
-
52
- # A.1.2 Keywords
53
- keywords = %w'auto break case char const continue default do
54
- double else enum extern float for goto if inline int long register
55
- restrict return short signed sizeof static struct switch typedef union
56
- unsigned void volatile while _Bool _Complex _Imaginary'
57
- @@keywords = %r"#{keywords.join('|')}"
58
-
59
- def initialize
60
- @type_names = ::Set.new
61
-
62
- @warning_proc = lambda{}
63
- @pos = C::Node::Pos.new(nil, 1, 0)
64
- end
65
- def initialize_copy(x)
66
- @pos = x.pos.dup
67
- @type_names = x.type_names.dup
68
- end
69
- attr_accessor :pos, :type_names
70
-
71
- def parse(str)
72
- if str.respond_to? :read
73
- str = str.read
74
- end
75
- @str = str
76
- begin
77
- prepare_lexer(str)
78
- return do_parse
79
- rescue ParseError => e
80
- e.set_backtrace(caller)
81
- raise
82
- end
83
- end
84
-
85
- #
86
- # Error handler, as used by racc.
87
- #
88
- def on_error(error_token_id, error_value, value_stack)
89
- if error_value == '$'
90
- parse_error @pos, "unexpected EOF"
91
- else
92
- parse_error(error_value.pos,
93
- "parse error on #{token_to_str(error_token_id)} (#{error_value.val})")
94
- end
95
- end
96
-
97
- def self.feature(name)
98
- attr_writer "#{name}_enabled"
99
- class_eval <<-EOS
100
- def enable_#{name}
101
- @#{name}_enabled = true
102
- end
103
- def #{name}_enabled?
104
- @#{name}_enabled
105
- end
106
- EOS
107
- end
108
- private_class_method :feature
109
-
110
- #
111
- # Allow blocks in parentheses as expressions, as per the gcc
112
- # extension. [http://rubyurl.com/iB7]
113
- #
114
- feature :block_expressions
115
-
116
- private # ---------------------------------------------------------
117
-
118
- class Token
119
- attr_accessor :pos, :val
120
- def initialize(pos, val)
121
- @pos = pos
122
- @val = val
123
- end
124
- end
125
- def eat(str)
126
- lines = str.split(/\r\n|[\r\n]/, -1)
127
- if lines.length == 1
128
- @pos.col_num += lines[0].length
129
- else
130
- @pos.line_num += lines.length - 1
131
- @pos.col_num = lines[-1].length
132
- end
133
- end
134
-
135
- #
136
- # Make a Declaration from the given specs and declarators.
137
- #
138
- def make_declaration(pos, specs, declarators)
139
- specs.all?{|x| x.is_a?(Symbol) || x.is_a?(Type)} or raise specs.map{|x| x.class}.inspect
140
- decl = Declaration.new_at(pos, nil, declarators)
141
-
142
- # set storage class
143
- storage_classes = specs.find_all do |x|
144
- [:typedef, :extern, :static, :auto, :register].include? x
145
- end
146
- # 6.7.1p2: at most, one storage-class specifier may be given in
147
- # the declaration specifiers in a declaration
148
- storage_classes.length <= 1 or
149
- begin
150
- if declarators.length == 0
151
- for_name = ''
152
- else
153
- for_name = "for `#{declarators[0].name}'"
154
- end
155
- parse_error pos, "multiple or duplicate storage classes given #{for_name}'"
156
- end
157
- decl.storage = storage_classes[0]
158
-
159
- # set type (specifiers, qualifiers)
160
- decl.type = make_direct_type(pos, specs)
161
-
162
- # set function specifiers
163
- decl.inline = specs.include?(:inline)
164
-
165
- # look for new type names
166
- if decl.typedef?
167
- decl.declarators.each do |d|
168
- if d.name
169
- @type_names << d.name
170
- end
171
- end
172
- end
173
-
174
- return decl
175
- end
176
-
177
- def make_function_def(pos, specs, func_declarator, decl_list, defn)
178
- add_decl_type(func_declarator, make_direct_type(pos, specs))
179
-
180
- # get types from decl_list if necessary
181
- function = func_declarator.indirect_type
182
- function.is_a? Function or
183
- parse_error pos, "non function type for function `#{func_declarator.name}'"
184
- params = function.params
185
- if decl_list
186
- params.all?{|p| p.type.nil?} or
187
- parse_error pos, "both prototype and declaration list given for `#{func_declarator.name}'"
188
- decl_list.each do |declaration|
189
- declaration.declarators.each do |declarator|
190
- param = params.find{|p| p.name == declarator.name} or
191
- parse_error pos, "no parameter named #{declarator.name}"
192
- if declarator.indirect_type
193
- param.type = declarator.indirect_type
194
- param.type.direct_type = declaration.type.dup
195
- else
196
- param.type = declaration.type.dup
197
- end
198
- end
199
- end
200
- params.all?{|p| p.type} or
201
- begin
202
- s = params.find_all{|p| p.type.nil?}.map{|p| "`#{p.name}'"}.join(' and ')
203
- parse_error pos, "types missing for parameters #{s}"
204
- end
205
- end
206
-
207
- fd = FunctionDef.new_at(pos,
208
- function.detach,
209
- func_declarator.name,
210
- defn,
211
- :no_prototype => !decl_list.nil?)
212
-
213
- # set storage class
214
- # 6.9.1p4: only extern or static allowed
215
- specs.each do |s|
216
- [:typedef, :auto, :register].include?(s) and
217
- "`#{s}' illegal for function"
218
- end
219
- storage_classes = specs.find_all do |s|
220
- s == :extern || s == :static
221
- end
222
- # 6.7.1p2: at most, one storage-class specifier may be given in
223
- # the declaration specifiers in a declaration
224
- storage_classes.length <= 1 or
225
- "multiple or duplicate storage classes given for `#{func_declarator.name}'"
226
- fd.storage = storage_classes[0] if storage_classes[0]
227
-
228
- # set function specifiers
229
- # 6.7.4p5 'inline' can be repeated
230
- fd.inline = specs.include?(:inline)
231
-
232
- return fd
233
- end
234
-
235
- #
236
- # Make a direct type from the list of type specifiers and type
237
- # qualifiers.
238
- #
239
- def make_direct_type(pos, specs)
240
- specs_order = [:signed, :unsigned, :short, :long, :double, :void,
241
- :char, :int, :float, :_Bool, :_Complex, :_Imaginary]
242
-
243
- type_specs = specs.find_all do |x|
244
- specs_order.include?(x) || !x.is_a?(Symbol)
245
- end
246
- type_specs.sort! do |a, b|
247
- (specs_order.index(a)||100) <=> (specs_order.index(b)||100)
248
- end
249
-
250
- # set type specifiers
251
- # 6.7.2p2: the specifier list should be one of these
252
- type =
253
- case type_specs
254
- when [:void]
255
- Void.new
256
- when [:char]
257
- Char.new
258
- when [:signed, :char]
259
- Char.new :signed => true
260
- when [:unsigned, :char]
261
- Char.new :signed => false
262
- when [:short], [:signed, :short], [:short, :int],
263
- [:signed, :short, :int]
264
- Int.new :longness => -1
265
- when [:unsigned, :short], [:unsigned, :short, :int]
266
- Int.new :unsigned => true, :longness => -1
267
- when [:int], [:signed], [:signed, :int]
268
- Int.new
269
- when [:unsigned], [:unsigned, :int]
270
- Int.new :unsigned => true
271
- when [:long], [:signed, :long], [:long, :int],
272
- [:signed, :long, :int]
273
- Int.new :longness => 1
274
- when [:unsigned, :long], [:unsigned, :long, :int]
275
- Int.new :longness => 1, :unsigned => true
276
- when [:long, :long], [:signed, :long, :long],
277
- [:long, :long, :int], [:signed, :long, :long, :int]
278
- Int.new :longness => 2
279
- when [:unsigned, :long, :long], [:unsigned, :long, :long, :int]
280
- Int.new :longness => 2, :unsigned => true
281
- when [:float]
282
- Float.new
283
- when [:double]
284
- Float.new :longness => 1
285
- when [:long, :double]
286
- Float.new :longness => 2
287
- when [:_Bool]
288
- Bool.new
289
- when [:float, :_Complex]
290
- Complex.new
291
- when [:double, :_Complex]
292
- Complex.new :longness => 1
293
- when [:long, :double, :_Complex]
294
- Complex.new :longness => 2
295
- when [:float, :_Imaginary]
296
- Imaginary.new
297
- when [:double, :_Imaginary]
298
- Imaginary.new :longness => 1
299
- when [:long, :double, :_Imaginary]
300
- Imaginary.new :longness => 2
301
- else
302
- if type_specs.length == 1 &&
303
- [CustomType, Struct, Union, Enum].any?{|c| type_specs[0].is_a? c}
304
- type_specs[0]
305
- else
306
- if type_specs == []
307
- parse_error pos, "no type specifiers given"
308
- else
309
- parse_error pos, "invalid type specifier combination: #{type_specs.join(' ')}"
310
- end
311
- end
312
- end
313
- type.pos ||= pos
314
-
315
- # set type qualifiers
316
- # 6.7.3p4: type qualifiers can be repeated
317
- type.const = specs.any?{|x| x.equal? :const }
318
- type.restrict = specs.any?{|x| x.equal? :restrict}
319
- type.volatile = specs.any?{|x| x.equal? :volatile}
320
-
321
- return type
322
- end
323
-
324
- def make_parameter(pos, specs, indirect_type, name)
325
- type = indirect_type
326
- if type
327
- type.direct_type = make_direct_type(pos, specs)
328
- else
329
- type = make_direct_type(pos, specs)
330
- end
331
- [:typedef, :extern, :static, :auto, :inline].each do |sym|
332
- specs.include? sym and
333
- parse_error pos, "parameter `#{declarator.name}' declared `#{sym}'"
334
- end
335
- return Parameter.new_at(pos, type, name,
336
- :register => specs.include?(:register))
337
- end
338
-
339
- def add_type_quals(type, quals)
340
- type.const = quals.include?(:const )
341
- type.restrict = quals.include?(:restrict)
342
- type.volatile = quals.include?(:volatile)
343
- return type
344
- end
345
-
346
- #
347
- # Add te given type as the "most direct" type to the given
348
- # declarator. Return the declarator.
349
- #
350
- def add_decl_type(declarator, type)
351
- if declarator.indirect_type
352
- declarator.indirect_type.direct_type = type
353
- else
354
- declarator.indirect_type = type
355
- end
356
- return declarator
357
- end
358
-
359
- def param_list(params, var_args)
360
- if params.length == 1 &&
361
- params[0].type.is_a?(Void) &&
362
- params[0].name.nil?
363
- return NodeArray[]
364
- elsif params.empty?
365
- return nil
366
- else
367
- return params
368
- end
369
- end
370
-
371
- def parse_error(pos, str)
372
- raise ParseError, "#{pos}: #{str}"
373
- end
374
-
375
- ...end cast.y/module_eval...
376
- ##### State transition tables begin ###
377
-
378
- clist = [
379
- '99,100,65,103,108,109,120,312,61,110,111,112,113,114,115,116,117,77',
380
- '48,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,31,32,33,34,35',
381
- '36,37,72,281,128,49,38,196,391,123,124,126,127,129,130,131,132,183,277',
382
- '83,273,84,238,288,293,88,196,72,290,38,274,184,372,373,386,239,240,289',
383
- '294,71,241,242,50,147,148,149,150,99,100,65,193,108,109,120,50,281,110',
384
- '111,112,113,114,115,116,117,71,50,10,11,12,13,14,15,16,17,18,19,20,21',
385
- '22,23,24,25,26,31,32,33,34,35,36,37,56,366,128,89,38,50,169,123,124',
386
- '126,127,129,130,131,132,99,100,65,88,108,109,120,88,88,110,111,112,113',
387
- '114,115,116,117,346,349,238,59,68,48,365,195,50,147,148,149,150,38,347',
388
- '239,240,69,178,283,196,312,366,243,244,48,262,88,128,185,38,263,284',
389
- '123,124,126,127,129,130,131,132,99,100,65,49,108,109,120,38,50,110,111',
390
- '112,113,114,115,116,117,281,365,309,440,249,250,49,238,50,147,148,149',
391
- '150,313,379,196,227,439,178,413,239,240,88,196,50,48,50,196,128,187',
392
- '38,191,196,123,124,126,127,129,130,131,132,99,100,65,50,108,109,120',
393
- '416,428,110,111,112,113,114,115,116,117,255,256,192,196,196,197,49,198',
394
- '50,147,148,149,150,228,229,230,231,232,233,234,235,236,237,43,199,48',
395
- '241,242,128,202,38,241,242,123,124,126,127,129,130,131,132,99,100,65',
396
- '50,108,109,120,375,376,110,111,112,113,114,115,116,117,196,196,205,377',
397
- '387,427,49,433,50,147,148,149,150,196,388,196,437,196,206,445,209,447',
398
- '450,43,251,48,196,252,128,196,38,196,196,123,124,126,127,129,130,131',
399
- '132,99,100,65,50,108,109,120,454,253,110,111,112,113,114,115,116,117',
400
- '196,34,35,36,243,244,49,49,50,147,148,149,150,34,35,36,243,244,254,49',
401
- '245,246,247,248,67,48,243,244,128,268,38,243,244,123,124,126,127,129',
402
- '130,131,132,99,100,65,50,108,109,120,249,250,110,111,112,113,114,115',
403
- '116,117,245,246,247,248,271,272,49,275,50,147,148,149,150,245,246,247',
404
- '248,285,296,192,303,307,308,314,315,277,50,50,128,50,38,353,355,123',
405
- '124,126,127,129,130,131,132,99,100,65,50,108,109,120,357,50,110,111',
406
- '112,113,114,115,116,117,378,389,390,251,281,252,49,253,50,147,148,149',
407
- '150,254,395,396,397,398,399,405,406,384,384,423,424,425,426,442,128',
408
- ',38,,,123,124,126,127,129,130,131,132,99,100,65,50,108,109,120,,,110',
409
- '111,112,113,114,115,116,117,,,,,,,,,50,147,148,149,150,,,,,,,,,,,,,',
410
- ',,128,,38,,,123,124,126,127,129,130,131,132,99,100,65,,108,109,120,',
411
- ',110,111,112,113,114,115,116,117,,,,,,,,,50,147,148,149,150,,,,,,,,',
412
- ',,,,,,,128,,38,,,123,124,126,127,129,130,131,132,99,100,65,,108,109',
413
- '120,,,110,111,112,113,114,115,116,117,,,,,,,,,50,147,148,149,150,,,',
414
- ',,,,,,,,,,,,128,,38,,,123,124,126,127,129,130,131,132,99,100,65,,108',
415
- '109,120,,,110,111,112,113,114,115,116,117,,,,,,,,,50,147,148,149,150',
416
- ',,,,,,,,,,,,,,,128,,38,,,123,124,126,127,129,130,131,132,99,100,65,',
417
- '108,109,120,,,110,111,112,113,114,115,116,117,,,,,,,,,50,147,148,149',
418
- '150,,,,,,,,,,,,,,,,128,,38,,,123,124,126,127,129,130,131,132,99,100',
419
- '65,,108,109,120,,,110,111,112,113,114,115,116,117,,,,,,,,,50,147,148',
420
- '149,150,,,,,,,,,,,,,,,,128,,38,,,123,124,126,127,129,130,131,132,99',
421
- '100,65,,108,109,120,,,110,111,112,113,114,115,116,117,,,,,,,,,50,147',
422
- '148,149,150,,,,,,,,,,,,,,,,128,,38,,,123,124,126,127,129,130,131,132',
423
- '99,100,65,,108,109,120,,,110,111,112,113,114,115,116,117,,,,,,,,,50',
424
- '147,148,149,150,,,,,,,,,,,,,,,,128,,38,,,123,124,126,127,129,130,131',
425
- '132,99,100,65,,108,109,120,,,110,111,112,113,114,115,116,117,,,,,,,',
426
- ',50,147,148,149,150,,,,,,,,,,,,,,,,128,,38,,,123,124,126,127,129,130',
427
- '131,132,99,100,65,,108,109,120,,,110,111,112,113,114,115,116,117,,,',
428
- ',,,,,50,147,148,149,150,,,,,,,,,,,,,,,,128,,38,,,123,124,126,127,129',
429
- '130,131,132,99,100,65,,108,109,120,,,110,111,112,113,114,115,116,117',
430
- ',,,,,,,,50,147,148,149,150,,,,,,,,,,,,,,,,128,,38,,,123,124,126,127',
431
- '129,130,131,132,99,100,65,,108,109,120,,,110,111,112,113,114,115,116',
432
- '117,,,,,,,,,50,147,148,149,150,,,,,,,,,,,,,,,,128,,38,,,123,124,126',
433
- '127,129,130,131,132,99,100,65,,108,109,120,,,110,111,112,113,114,115',
434
- '116,117,,,,,,,,,50,147,148,149,150,,,,,,,,,,,,,,,,128,,38,,,123,124',
435
- '126,127,129,130,131,132,99,100,65,,108,109,120,,,110,111,112,113,114',
436
- '115,116,117,154,,,,120,,,,50,147,148,149,150,,,,,,,215,,,,,,,,,128,',
437
- '38,,,123,124,126,127,129,130,131,132,,,128,,,,,123,124,126,127,129,130',
438
- '131,132,214,,,,,216,217,218,219,,50,147,148,149,150,65,,,,120,,,,,,50',
439
- '147,148,149,150,154,,,,120,,,15,16,17,18,19,20,21,22,23,24,25,26,31',
440
- '32,33,34,35,36,,,,128,,38,,,123,124,126,127,129,130,131,132,262,,128',
441
- ',,263,,123,124,126,127,129,130,131,132,,,,,,,,,,,50,147,148,149,150',
442
- '65,,,,120,,,,,,50,147,148,149,150,,,,,,,,15,16,17,18,19,20,21,22,23',
443
- '24,25,26,31,32,33,34,35,36,,,,128,,38,,,123,124,126,127,129,130,131',
444
- '132,,,,,,,,,65,,,,120,,,,,,,,,,,,,50,147,148,149,150,15,16,17,18,19',
445
- '20,21,22,23,24,25,26,31,32,33,34,35,36,,,,128,,38,,,123,124,126,127',
446
- '129,130,131,132,154,,,,120,,,,,,,,,384,,,,120,,,,,,,,50,147,148,149',
447
- '150,,,,,,,,,,,,,,128,,,,,123,124,126,127,129,130,131,132,128,,,,,123',
448
- '124,126,127,129,130,131,132,154,392,,,120,,,,,,,,50,147,148,149,150',
449
- '154,,,,120,,,,50,147,148,149,150,,,,,,,,,,,,262,,128,,,263,,123,124',
450
- '126,127,129,130,131,132,,,262,,128,,,263,,123,124,126,127,129,130,131',
451
- '132,154,,,,120,,,,50,147,148,149,150,,,154,453,,,120,,,,,,50,147,148',
452
- '149,150,,,,,,,,,,,,,,128,,,,,123,124,126,127,129,130,131,132,262,,128',
453
- ',208,263,120,123,124,126,127,129,130,131,132,,,,,,,,,,,50,147,148,149',
454
- '150,,,,,,,,,,,50,147,148,149,150,128,,,,,123,124,126,127,129,130,131',
455
- '132,,,,,,,,,,,,,,,,305,,120,,,,,,,,50,147,148,149,150,10,11,12,13,14',
456
- '15,16,17,18,19,20,21,22,23,24,25,26,31,32,33,34,35,36,37,,,128,,38,',
457
- ',123,124,126,127,129,130,131,132,381,,120,,,,,,,,,,,383,,120,,,,,,,',
458
- ',,50,147,148,149,150,,,,,,,,,,,,128,,,,,123,124,126,127,129,130,131',
459
- '132,128,,412,,120,123,124,126,127,129,130,131,132,,,,,,,,,,,,,50,147',
460
- '148,149,150,,,,,,,,,50,147,148,149,150,128,,,,,123,124,126,127,129,130',
461
- '131,132,120,,,,,,,,,,,,,120,,160,,,,,,,,,,50,147,148,149,150,,,,34,35',
462
- '36,,,159,161,,,,,123,124,126,127,129,130,131,132,128,,,,220,123,124',
463
- '126,127,129,130,131,132,,,,,220,,,,,,,,50,147,148,149,150,,,,,,,,,50',
464
- '147,148,149,150,128,,,,,123,124,126,127,129,130,131,132,128,,,,120,123',
465
- '124,126,127,129,130,131,132,,,,,224,,,,,,,,50,147,148,149,150,,,,,,',
466
- ',,50,147,148,149,150,128,,,,,123,124,126,127,129,130,131,132,128,,,',
467
- ',123,124,126,127,129,130,131,132,,,120,,,,,,,,,,50,147,148,149,150,266',
468
- ',,,120,,,,50,147,148,149,150,,,,,,34,35,36,,,265,267,,,,120,123,124',
469
- '126,127,129,130,131,132,34,35,36,,,,128,,,,120,123,124,126,127,129,130',
470
- '131,132,,,,,,,50,147,148,149,150,128,,,,120,123,124,126,127,129,130',
471
- '131,132,,50,147,148,149,150,128,,,,120,123,124,126,127,129,130,131,132',
472
- ',,,,,,50,147,148,149,150,128,,,,120,123,124,126,127,129,130,131,132',
473
- ',50,147,148,149,150,128,,,,120,123,124,126,127,129,130,131,132,,,,,',
474
- ',50,147,148,149,150,128,,,,120,123,124,126,127,129,130,131,132,,50,147',
475
- '148,149,150,128,,,,,123,124,126,127,129,130,131,132,,,,,,,50,147,148',
476
- '149,150,128,,,,,123,124,126,127,129,130,131,132,,50,147,148,149,150',
477
- ',,,,,,120,318,,,,,,,,,,,,50,147,148,149,150,15,16,17,18,19,20,21,22',
478
- '23,24,25,26,31,32,33,34,35,36,,,,128,,38,,120,123,124,126,127,129,130',
479
- '131,132,,,,,120,,,,,,,,,,,,,,,,,,,,,50,147,148,149,150,128,,,,,123,124',
480
- '126,127,129,130,131,132,128,,,,120,123,124,126,127,129,130,131,132,',
481
- ',,,120,,,,,,,,50,147,148,149,150,,,,,,,,,50,147,148,149,150,128,,,,',
482
- '123,124,126,127,129,130,131,132,128,,,,120,123,124,126,127,129,130,131',
483
- '132,,,,,120,,,,,,,,50,147,148,149,150,,,,,,,,,50,147,148,149,150,128',
484
- ',,,,123,124,126,127,129,130,131,132,128,,,,120,123,124,126,127,129,130',
485
- '131,132,,,,,120,,,,,,,,50,147,148,149,150,,,,,,,,,50,147,148,149,150',
486
- '128,,,,,123,124,126,127,129,130,131,132,128,,,,120,123,124,126,127,129',
487
- '130,131,132,,,,,120,,,,,,,,50,147,148,149,150,,,,,,,,,50,147,148,149',
488
- '150,128,,,,,123,124,126,127,129,130,131,132,128,,,,120,123,124,126,127',
489
- '129,130,131,132,,,,,120,,,,,,,,50,147,148,149,150,,,,,,,,,50,147,148',
490
- '149,150,128,,,,,123,124,126,127,129,130,131,132,128,,,,120,123,124,126',
491
- '127,129,130,131,132,,,,,120,,,,,,,,50,147,148,149,150,,,,,,,,,50,147',
492
- '148,149,150,128,,,,,123,124,126,127,129,130,131,132,128,,,,120,123,124',
493
- '126,127,129,130,131,132,,,,,120,,,,,,,,50,147,148,149,150,,,,,,,,,50',
494
- '147,148,149,150,128,,,,,123,124,126,127,129,130,131,132,128,,,,120,123',
495
- '124,126,127,129,130,131,132,,,,,120,,,,,,,,50,147,148,149,150,,,,,,',
496
- ',,50,147,148,149,150,128,,,,,123,124,126,127,129,130,131,132,128,,,',
497
- '120,123,124,126,127,129,130,131,132,,,,,120,,,,,,,,50,147,148,149,150',
498
- ',,,,,,,,50,147,148,149,150,128,,,,,123,124,126,127,129,130,131,132,128',
499
- ',,,120,123,124,126,127,129,130,131,132,,,,,120,,,,,,,,50,147,148,149',
500
- '150,,,,,,,,,50,147,148,149,150,128,,,,,123,124,126,127,129,130,131,132',
501
- '128,,,,,123,124,126,127,129,130,131,132,120,,,,,,,,,,,,50,147,148,149',
502
- '150,120,,,,,,,,50,147,148,149,150,,,,34,35,36,,,,128,,,,,123,124,126',
503
- '127,129,130,131,132,,,,368,369,,,,120,123,124,126,127,129,130,131,132',
504
- ',,,,,120,,,50,147,148,149,150,,,,,,,,,,,,,50,147,148,149,150,128,,,',
505
- ',123,124,126,127,129,130,131,132,401,402,,,,120,123,124,126,127,129',
506
- '130,131,132,,,,,120,415,,,,,,50,147,148,149,150,,,,,,,,,,50,147,148',
507
- '149,150,128,,,,,123,124,126,127,129,130,131,132,128,,,,,123,124,126',
508
- '127,129,130,131,132,120,418,,,,,,,,,,,50,147,148,149,150,,,,,,,,,50',
509
- '147,148,149,150,,,,,,,,,,128,,,,,123,124,126,127,129,130,131,132,,,',
510
- ',,,,,,,,,120,,,,,,,,,,,,,50,147,148,149,150,15,16,17,18,19,20,21,22',
511
- '23,24,25,26,31,32,33,34,35,36,,,,128,,38,,120,123,124,126,127,129,130',
512
- '131,132,,,,,120,430,,,,,,,,,,,,,,,,,,,,50,147,148,149,150,128,,,,,123',
513
- '124,126,127,129,130,131,132,128,,,,,123,124,126,127,129,130,131,132',
514
- '120,432,,,,,,,,,,,50,147,148,149,150,120,436,,,,,,,50,147,148,149,150',
515
- ',,,,,,,,,128,,,,,123,124,126,127,129,130,131,132,,,,,128,,,,,123,124',
516
- '126,127,129,130,131,132,120,444,,,,,,,50,147,148,149,150,,,,,,,,,,,',
517
- ',50,147,148,149,150,,,,,,,,,,128,,,,,123,124,126,127,129,130,131,132',
518
- ',,,,,,,,,,,,,,,,,277,364,,,,,,,50,147,148,149,150,10,11,12,13,14,15',
519
- '16,17,18,19,20,21,22,23,24,25,26,31,32,33,34,35,36,37,281,164,49,,38',
520
- ',,,,,,,,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,31,32,33',
521
- '34,35,36,37,,,,50,38,,,,,,,,,,,,,,,39,,,,,,,,,,,,,,,,,,,,,50,10,11,12',
522
- '13,14,15,16,17,18,19,20,21,22,23,24,25,26,31,32,33,34,35,36,37,65,,',
523
- ',38,,,,,,,,,,,,67,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26',
524
- '31,32,33,34,35,36,37,65,,,,38,,,,,,,,,,,,,10,11,12,13,14,15,16,17,18',
525
- '19,20,21,22,23,24,25,26,31,32,33,34,35,36,37,173,,,,38,,,,,,,,,,,,,',
526
- ',,,15,16,17,18,19,20,21,22,23,24,25,26,31,32,33,34,35,36,282,,,,,38',
527
- ',,,,,,,,,,,,,,,15,16,17,18,19,20,21,22,23,24,25,26,31,32,33,34,35,36',
528
- '287,,,,,38,,,,,,,,,,,,,,,,15,16,17,18,19,20,21,22,23,24,25,26,31,32',
529
- '33,34,35,36,312,364,,,,38,,,,,,,,10,11,12,13,14,15,16,17,18,19,20,21',
530
- '22,23,24,25,26,31,32,33,34,35,36,37,281,404,49,,38,,,,,,,,,10,11,12',
531
- '13,14,15,16,17,18,19,20,21,22,23,24,25,26,31,32,33,34,35,36,37,,,,,38',
532
- '10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,31,32,33,34,35,36',
533
- '37,,,,,38,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,31,32,33',
534
- '34,35,36,37,,,,,38,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26',
535
- '31,32,33,34,35,36,37,,,,,38,10,11,12,13,14,15,16,17,18,19,20,21,22,23',
536
- '24,25,26,31,32,33,34,35,36,37,,,,,38,10,11,12,13,14,15,16,17,18,19,20',
537
- '21,22,23,24,25,26,31,32,33,34,35,36,37,,,,,38,10,11,12,13,14,15,16,17',
538
- '18,19,20,21,22,23,24,25,26,31,32,33,34,35,36,37,,,,359,38,15,16,17,18',
539
- '19,20,21,22,23,24,25,26,31,32,33,34,35,36,,,,,,38,15,16,17,18,19,20',
540
- '21,22,23,24,25,26,31,32,33,34,35,36,,,,,,38,15,16,17,18,19,20,21,22',
541
- '23,24,25,26,31,32,33,34,35,36,,,,,,38,15,16,17,18,19,20,21,22,23,24',
542
- '25,26,31,32,33,34,35,36,,,,,,38,15,16,17,18,19,20,21,22,23,24,25,26',
543
- '31,32,33,34,35,36,,,,,,38' ]
544
- racc_action_table = arr = ::Array.new(4321, nil)
545
- idx = 0
546
- clist.each do |str|
547
- str.split(',', -1).each do |i|
548
- arr[idx] = i.to_i unless i.empty?
549
- idx += 1
550
- end
551
- end
552
-
553
- clist = [
554
- '65,65,65,65,65,65,65,210,39,65,65,65,65,65,65,65,65,55,45,65,65,65,65',
555
- '65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,46,210,65',
556
- '210,65,316,345,65,65,65,65,65,65,65,65,85,276,57,163,58,135,182,186',
557
- '59,345,70,184,114,163,85,289,294,316,135,135,182,186,46,136,136,65,65',
558
- '65,65,65,102,102,102,102,102,102,102,45,276,102,102,102,102,102,102',
559
- '102,102,70,114,102,102,102,102,102,102,102,102,102,102,102,102,102,102',
560
- '102,102,102,102,102,102,102,102,102,102,30,280,102,60,102,276,73,102',
561
- '102,102,102,102,102,102,102,112,112,112,184,112,112,112,289,294,112',
562
- '112,112,112,112,112,112,112,257,260,330,33,42,48,280,107,102,102,102',
563
- '102,102,30,257,330,330,42,80,175,107,311,361,137,137,80,260,84,112,87',
564
- '112,260,175,112,112,112,112,112,112,112,112,187,187,187,48,187,187,187',
565
- '33,30,187,187,187,187,187,187,187,187,311,361,207,419,139,139,80,331',
566
- '112,112,112,112,112,211,304,207,133,419,284,380,331,331,89,211,48,284',
567
- '33,304,187,98,187,100,380,187,187,187,187,187,187,187,187,191,191,191',
568
- '80,191,191,191,382,411,191,191,191,191,191,191,191,191,144,144,101,382',
569
- '411,109,284,110,187,187,187,187,187,133,133,133,133,133,133,133,133',
570
- '133,133,5,111,5,332,332,191,113,191,333,333,191,191,191,191,191,191',
571
- '191,191,192,192,192,284,192,192,192,300,301,192,192,192,192,192,192',
572
- '192,192,300,301,115,302,317,410,5,414,191,191,191,191,191,302,317,410',
573
- '417,414,116,429,119,431,435,66,140,66,417,141,192,429,192,431,435,192',
574
- '192,192,192,192,192,192,192,296,296,296,5,296,296,296,443,142,296,296',
575
- '296,296,296,296,296,296,443,49,49,49,334,334,66,49,192,192,192,192,192',
576
- '74,74,74,335,335,143,74,138,138,138,138,151,69,336,336,296,158,296,337',
577
- '337,296,296,296,296,296,296,296,296,375,375,375,66,375,375,375,340,340',
578
- '375,375,375,375,375,375,375,375,338,338,338,338,161,162,69,165,296,296',
579
- '296,296,296,339,339,339,339,177,188,200,201,203,204,212,213,167,216',
580
- '217,375,263,375,264,267,375,375,375,375,375,375,375,375,376,376,376',
581
- '69,376,376,376,270,274,376,376,376,376,376,376,376,376,303,324,325,341',
582
- '167,342,167,343,375,375,375,375,375,344,351,354,356,362,363,367,369',
583
- '389,390,400,402,403,407,427,376,,376,,,376,376,376,376,376,376,376,376',
584
- '377,377,377,167,377,377,377,,,377,377,377,377,377,377,377,377,,,,,,',
585
- ',,376,376,376,376,376,,,,,,,,,,,,,,,,377,,377,,,377,377,377,377,377',
586
- '377,377,377,415,415,415,,415,415,415,,,415,415,415,415,415,415,415,415',
587
- ',,,,,,,,377,377,377,377,377,,,,,,,,,,,,,,,,415,,415,,,415,415,415,415',
588
- '415,415,415,415,418,418,418,,418,418,418,,,418,418,418,418,418,418,418',
589
- '418,,,,,,,,,415,415,415,415,415,,,,,,,,,,,,,,,,418,,418,,,418,418,418',
590
- '418,418,418,418,418,426,426,426,,426,426,426,,,426,426,426,426,426,426',
591
- '426,426,,,,,,,,,418,418,418,418,418,,,,,,,,,,,,,,,,426,,426,,,426,426',
592
- '426,426,426,426,426,426,430,430,430,,430,430,430,,,430,430,430,430,430',
593
- '430,430,430,,,,,,,,,426,426,426,426,426,,,,,,,,,,,,,,,,430,,430,,,430',
594
- '430,430,430,430,430,430,430,432,432,432,,432,432,432,,,432,432,432,432',
595
- '432,432,432,432,,,,,,,,,430,430,430,430,430,,,,,,,,,,,,,,,,432,,432',
596
- ',,432,432,432,432,432,432,432,432,433,433,433,,433,433,433,,,433,433',
597
- '433,433,433,433,433,433,,,,,,,,,432,432,432,432,432,,,,,,,,,,,,,,,,433',
598
- ',433,,,433,433,433,433,433,433,433,433,436,436,436,,436,436,436,,,436',
599
- '436,436,436,436,436,436,436,,,,,,,,,433,433,433,433,433,,,,,,,,,,,,',
600
- ',,,436,,436,,,436,436,436,436,436,436,436,436,437,437,437,,437,437,437',
601
- ',,437,437,437,437,437,437,437,437,,,,,,,,,436,436,436,436,436,,,,,,',
602
- ',,,,,,,,,437,,437,,,437,437,437,437,437,437,437,437,444,444,444,,444',
603
- '444,444,,,444,444,444,444,444,444,444,444,,,,,,,,,437,437,437,437,437',
604
- ',,,,,,,,,,,,,,,444,,444,,,444,444,444,444,444,444,444,444,445,445,445',
605
- ',445,445,445,,,445,445,445,445,445,445,445,445,,,,,,,,,444,444,444,444',
606
- '444,,,,,,,,,,,,,,,,445,,445,,,445,445,445,445,445,445,445,445,447,447',
607
- '447,,447,447,447,,,447,447,447,447,447,447,447,447,,,,,,,,,445,445,445',
608
- '445,445,,,,,,,,,,,,,,,,447,,447,,,447,447,447,447,447,447,447,447,450',
609
- '450,450,,450,450,450,,,450,450,450,450,450,450,450,450,,,,,,,,,447,447',
610
- '447,447,447,,,,,,,,,,,,,,,,450,,450,,,450,450,450,450,450,450,450,450',
611
- '454,454,454,,454,454,454,,,454,454,454,454,454,454,454,454,67,,,,67',
612
- ',,,450,450,450,450,450,,,,,,,122,,,,,,,,,454,,454,,,454,454,454,454',
613
- '454,454,454,454,,,67,,,,,67,67,67,67,67,67,67,67,122,,,,,122,122,122',
614
- '122,,454,454,454,454,454,120,,,,120,,,,,,67,67,67,67,67,154,,,,154,',
615
- ',120,120,120,120,120,120,120,120,120,120,120,120,120,120,120,120,120',
616
- '120,,,,120,,120,,,120,120,120,120,120,120,120,120,154,,154,,,154,,154',
617
- '154,154,154,154,154,154,154,,,,,,,,,,,120,120,120,120,120,220,,,,220',
618
- ',,,,,154,154,154,154,154,,,,,,,,220,220,220,220,220,220,220,220,220',
619
- '220,220,220,220,220,220,220,220,220,,,,220,,220,,,220,220,220,220,220',
620
- '220,220,220,,,,,,,,,224,,,,224,,,,,,,,,,,,,220,220,220,220,220,224,224',
621
- '224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,,,,224',
622
- ',224,,,224,224,224,224,224,224,224,224,258,,,,258,,,,,,,,,315,,,,315',
623
- ',,,,,,,224,224,224,224,224,,,,,,,,,,,,,,258,,,,,258,258,258,258,258',
624
- '258,258,258,315,,,,,315,315,315,315,315,315,315,315,347,347,,,347,,',
625
- ',,,,,258,258,258,258,258,384,,,,384,,,,315,315,315,315,315,,,,,,,,,',
626
- ',,347,,347,,,347,,347,347,347,347,347,347,347,347,,,384,,384,,,384,',
627
- '384,384,384,384,384,384,384,384,393,,,,393,,,,347,347,347,347,347,,',
628
- '439,439,,,439,,,,,,384,384,384,384,384,,,,,,,,,,,,,,393,,,,,393,393',
629
- '393,393,393,393,393,393,439,,439,,117,439,117,439,439,439,439,439,439',
630
- '439,439,,,,,,,,,,,393,393,393,393,393,,,,,,,,,,,439,439,439,439,439',
631
- '117,,,,,117,117,117,117,117,117,117,117,,,,,,,,,,,,,,,,202,,202,,,,',
632
- ',,,117,117,117,117,117,202,202,202,202,202,202,202,202,202,202,202,202',
633
- '202,202,202,202,202,202,202,202,202,202,202,202,,,202,,202,,,202,202',
634
- '202,202,202,202,202,202,305,,305,,,,,,,,,,,306,,306,,,,,,,,,,202,202',
635
- '202,202,202,,,,,,,,,,,,305,,,,,305,305,305,305,305,305,305,305,306,',
636
- '379,,379,306,306,306,306,306,306,306,306,,,,,,,,,,,,,305,305,305,305',
637
- '305,,,,,,,,,306,306,306,306,306,379,,,,,379,379,379,379,379,379,379',
638
- '379,71,,,,,,,,,,,,,99,,71,,,,,,,,,,379,379,379,379,379,,,,71,71,71,',
639
- ',71,71,,,,,71,71,71,71,71,71,71,71,99,,,,123,99,99,99,99,99,99,99,99',
640
- ',,,,124,,,,,,,,71,71,71,71,71,,,,,,,,,99,99,99,99,99,123,,,,,123,123',
641
- '123,123,123,123,123,123,124,,,,125,124,124,124,124,124,124,124,124,',
642
- ',,,126,,,,,,,,123,123,123,123,123,,,,,,,,,124,124,124,124,124,125,,',
643
- ',,125,125,125,125,125,125,125,125,126,,,,,126,126,126,126,126,126,126',
644
- '126,,,157,,,,,,,,,,125,125,125,125,125,157,,,,160,,,,126,126,126,126',
645
- '126,,,,,,157,157,157,,,157,157,,,,178,157,157,157,157,157,157,157,157',
646
- '160,160,160,,,,160,,,,185,160,160,160,160,160,160,160,160,,,,,,,157',
647
- '157,157,157,157,178,,,,196,178,178,178,178,178,178,178,178,,160,160',
648
- '160,160,160,185,,,,197,185,185,185,185,185,185,185,185,,,,,,,178,178',
649
- '178,178,178,196,,,,198,196,196,196,196,196,196,196,196,,185,185,185',
650
- '185,185,197,,,,199,197,197,197,197,197,197,197,197,,,,,,,196,196,196',
651
- '196,196,198,,,,214,198,198,198,198,198,198,198,198,,197,197,197,197',
652
- '197,199,,,,,199,199,199,199,199,199,199,199,,,,,,,198,198,198,198,198',
653
- '214,,,,,214,214,214,214,214,214,214,214,,199,199,199,199,199,,,,,,,215',
654
- '215,,,,,,,,,,,,214,214,214,214,214,215,215,215,215,215,215,215,215,215',
655
- '215,215,215,215,215,215,215,215,215,,,,215,,215,,226,215,215,215,215',
656
- '215,215,215,215,,,,,238,,,,,,,,,,,,,,,,,,,,,215,215,215,215,215,226',
657
- ',,,,226,226,226,226,226,226,226,226,238,,,,239,238,238,238,238,238,238',
658
- '238,238,,,,,240,,,,,,,,226,226,226,226,226,,,,,,,,,238,238,238,238,238',
659
- '239,,,,,239,239,239,239,239,239,239,239,240,,,,241,240,240,240,240,240',
660
- '240,240,240,,,,,242,,,,,,,,239,239,239,239,239,,,,,,,,,240,240,240,240',
661
- '240,241,,,,,241,241,241,241,241,241,241,241,242,,,,243,242,242,242,242',
662
- '242,242,242,242,,,,,244,,,,,,,,241,241,241,241,241,,,,,,,,,242,242,242',
663
- '242,242,243,,,,,243,243,243,243,243,243,243,243,244,,,,245,244,244,244',
664
- '244,244,244,244,244,,,,,246,,,,,,,,243,243,243,243,243,,,,,,,,,244,244',
665
- '244,244,244,245,,,,,245,245,245,245,245,245,245,245,246,,,,247,246,246',
666
- '246,246,246,246,246,246,,,,,248,,,,,,,,245,245,245,245,245,,,,,,,,,246',
667
- '246,246,246,246,247,,,,,247,247,247,247,247,247,247,247,248,,,,249,248',
668
- '248,248,248,248,248,248,248,,,,,250,,,,,,,,247,247,247,247,247,,,,,',
669
- ',,,248,248,248,248,248,249,,,,,249,249,249,249,249,249,249,249,250,',
670
- ',,251,250,250,250,250,250,250,250,250,,,,,252,,,,,,,,249,249,249,249',
671
- '249,,,,,,,,,250,250,250,250,250,251,,,,,251,251,251,251,251,251,251',
672
- '251,252,,,,253,252,252,252,252,252,252,252,252,,,,,254,,,,,,,,251,251',
673
- '251,251,251,,,,,,,,,252,252,252,252,252,253,,,,,253,253,253,253,253',
674
- '253,253,253,254,,,,255,254,254,254,254,254,254,254,254,,,,,256,,,,,',
675
- ',,253,253,253,253,253,,,,,,,,,254,254,254,254,254,255,,,,,255,255,255',
676
- '255,255,255,255,255,256,,,,262,256,256,256,256,256,256,256,256,,,,,266',
677
- ',,,,,,,255,255,255,255,255,,,,,,,,,256,256,256,256,256,262,,,,,262,262',
678
- '262,262,262,262,262,262,266,,,,,266,266,266,266,266,266,266,266,269',
679
- ',,,,,,,,,,,262,262,262,262,262,281,,,,,,,,266,266,266,266,266,,,,269',
680
- '269,269,,,,269,,,,,269,269,269,269,269,269,269,269,,,,281,281,,,,285',
681
- '281,281,281,281,281,281,281,281,,,,,,365,,,269,269,269,269,269,,,,,',
682
- ',,,,,,,281,281,281,281,281,285,,,,,285,285,285,285,285,285,285,285,365',
683
- '365,,,,378,365,365,365,365,365,365,365,365,,,,,381,381,,,,,,285,285',
684
- '285,285,285,,,,,,,,,,365,365,365,365,365,378,,,,,378,378,378,378,378',
685
- '378,378,378,381,,,,,381,381,381,381,381,381,381,381,383,383,,,,,,,,',
686
- ',,378,378,378,378,378,,,,,,,,,381,381,381,381,381,,,,,,,,,,383,,,,,383',
687
- '383,383,383,383,383,383,383,,,,,,,,,,,,,388,,,,,,,,,,,,,383,383,383',
688
- '383,383,388,388,388,388,388,388,388,388,388,388,388,388,388,388,388',
689
- '388,388,388,,,,388,,388,,391,388,388,388,388,388,388,388,388,,,,,412',
690
- '412,,,,,,,,,,,,,,,,,,,,388,388,388,388,388,391,,,,,391,391,391,391,391',
691
- '391,391,391,412,,,,,412,412,412,412,412,412,412,412,413,413,,,,,,,,',
692
- ',,391,391,391,391,391,416,416,,,,,,,412,412,412,412,412,,,,,,,,,,413',
693
- ',,,,413,413,413,413,413,413,413,413,,,,,416,,,,,416,416,416,416,416',
694
- '416,416,416,428,428,,,,,,,413,413,413,413,413,,,,,,,,,,,,,416,416,416',
695
- '416,416,,,,,,,,,,428,,,,,428,428,428,428,428,428,428,428,,,,,,,,,,,',
696
- ',,,,,,277,277,,,,,,,428,428,428,428,428,277,277,277,277,277,277,277',
697
- '277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277',
698
- '277,72,277,,277,,,,,,,,,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72',
699
- '72,72,72,72,72,72,72,72,72,,,,277,72,,,,,,,,,,,,,,,1,,,,,,,,,,,,,,,',
700
- ',,,,,72,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,41,,,,1,,,,',
701
- ',,,,,,,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41',
702
- '41,41,41,41,62,,,,41,,,,,,,,,,,,,62,62,62,62,62,62,62,62,62,62,62,62',
703
- '62,62,62,62,62,62,62,62,62,62,62,62,78,,,,62,,,,,,,,,,,,,,,,,78,78,78',
704
- '78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,172,,,,,78,,,,,,,,,,,,',
705
- ',,,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172',
706
- '172,181,,,,,172,,,,,,,,,,,,,,,,181,181,181,181,181,181,181,181,181,181',
707
- '181,181,181,181,181,181,181,181,312,312,,,,181,,,,,,,,312,312,312,312',
708
- '312,312,312,312,312,312,312,312,312,312,312,312,312,312,312,312,312',
709
- '312,312,312,312,366,312,,312,,,,,,,,,366,366,366,366,366,366,366,366',
710
- '366,366,366,366,366,366,366,366,366,366,366,366,366,366,366,366,,,,',
711
- '366,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,,,,0,6,6,6,6,6',
712
- '6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,,,,,6,7,7,7,7,7,7,7,7,7,7,7,7',
713
- '7,7,7,7,7,7,7,7,7,7,7,7,,,,,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8',
714
- '8,8,8,8,8,,,,,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,,,,',
715
- '9,275,275,275,275,275,275,275,275,275,275,275,275,275,275,275,275,275',
716
- '275,275,275,275,275,275,275,,,,275,275,56,56,56,56,56,56,56,56,56,56',
717
- '56,56,56,56,56,56,56,56,,,,,,56,77,77,77,77,77,77,77,77,77,77,77,77',
718
- '77,77,77,77,77,77,,,,,,77,81,81,81,81,81,81,81,81,81,81,81,81,81,81',
719
- '81,81,81,81,,,,,,81,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82',
720
- '82,82,,,,,,82,83,83,83,83,83,83,83,83,83,83,83,83,83,83,83,83,83,83',
721
- ',,,,,83' ]
722
- racc_action_check = arr = ::Array.new(4321, nil)
723
- idx = 0
724
- clist.each do |str|
725
- str.split(',', -1).each do |i|
726
- arr[idx] = i.to_i unless i.empty?
727
- idx += 1
728
- end
729
- end
730
-
731
- racc_action_pointer = [
732
- 4005, 3703, nil, nil, nil, 295, 4034, 4063, 4092, 4121,
733
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
734
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
735
- 126, nil, nil, 161, nil, nil, nil, nil, nil, 8,
736
- nil, 3744, 160, nil, nil, 9, 34, nil, 159, 354,
737
- nil, nil, nil, nil, nil, 12, 4174, 55, 57, -20,
738
- 129, nil, 3785, nil, nil, -3, 353, 1318, nil, 411,
739
- 59, 2026, 3638, 127, 366, nil, nil, 4198, 3825, nil,
740
- 179, 4222, 4246, 4270, 104, 52, nil, 171, nil, 157,
741
- nil, nil, nil, nil, nil, nil, nil, nil, 248, 2039,
742
- 250, 279, 85, nil, nil, nil, nil, 163, nil, 275,
743
- 277, 294, 143, 299, 20, 332, 348, 1795, nil, 267,
744
- 1389, nil, 1333, 2082, 2095, 2138, 2151, nil, nil, nil,
745
- nil, nil, nil, 216, nil, 15, 24, 123, 350, 156,
746
- 305, 293, 314, 340, 205, nil, nil, nil, nil, nil,
747
- nil, 398, nil, nil, 1404, nil, nil, 2205, 377, nil,
748
- 2224, 410, 448, 51, nil, 440, nil, 469, nil, nil,
749
- nil, nil, 3864, nil, nil, 175, nil, 468, 2248, nil,
750
- nil, 3903, 58, nil, 63, 2267, 59, 201, 469, nil,
751
- nil, 259, 317, nil, nil, nil, 2291, 2310, 2334, 2353,
752
- 470, 460, 1864, 467, 468, nil, nil, 216, nil, nil,
753
- -2, 224, 466, 467, 2377, 2441, 393, 394, nil, nil,
754
- 1475, nil, nil, nil, 1539, nil, 2484, nil, nil, nil,
755
- nil, nil, nil, nil, nil, nil, nil, nil, 2497, 2540,
756
- 2553, 2596, 2609, 2652, 2665, 2708, 2721, 2764, 2777, 2820,
757
- 2833, 2876, 2889, 2932, 2945, 2988, 3001, 157, 1595, nil,
758
- 143, nil, 3044, 396, 437, nil, 3057, 438, nil, 3109,
759
- 454, nil, nil, nil, 416, 4150, 50, 3601, nil, nil,
760
- 123, 3126, nil, nil, 237, 3169, nil, nil, nil, 67,
761
- nil, nil, nil, nil, 68, nil, 375, nil, nil, nil,
762
- 317, 318, 330, 502, 228, 1918, 1931, nil, nil, nil,
763
- nil, 175, 3939, nil, nil, 1608, 28, 331, nil, nil,
764
- nil, nil, nil, nil, 502, 503, nil, nil, nil, nil,
765
- 117, 180, 248, 253, 336, 348, 358, 363, 388, 401,
766
- 374, 458, 445, 446, 451, 47, nil, 1664, nil, nil,
767
- nil, 478, nil, nil, 479, nil, 480, nil, nil, nil,
768
- nil, 176, 518, 519, nil, 3183, 3976, 483, nil, 484,
769
- nil, nil, nil, nil, nil, 433, 491, 549, 3226, 1974,
770
- 233, 3239, 262, 3291, 1681, nil, nil, nil, 3355, 527,
771
- 528, 3398, nil, 1737, nil, nil, nil, nil, nil, nil,
772
- 487, nil, 488, 526, nil, nil, nil, 526, nil, nil,
773
- 332, 263, 3411, 3463, 334, 607, 3480, 343, 665, 218,
774
- nil, nil, nil, nil, nil, nil, 723, 531, 3532, 346,
775
- 781, 348, 839, 897, nil, 349, 955, 1013, nil, 1752,
776
- nil, nil, nil, 375, 1071, 1129, nil, 1187, nil, nil,
777
- 1245, nil, nil, nil, 1303, nil, nil, nil, nil, nil ]
778
-
779
- racc_action_default = [
780
- -265, -265, -1, -3, -4, -265, -53, -55, -57, -59,
781
- -64, -65, -66, -67, -68, -69, -70, -71, -72, -73,
782
- -74, -75, -76, -77, -78, -79, -80, -81, -82, -83,
783
- -265, -89, -90, -265, -115, -116, -117, -118, -166, -265,
784
- -2, -62, -265, -51, -60, -265, -120, -121, -265, -136,
785
- -258, -52, -54, -56, -58, -86, -265, -88, -107, -265,
786
- -110, 460, -265, -6, -7, -265, -265, -265, -50, -265,
787
- -119, -265, -265, -265, -135, -138, -139, -265, -265, -91,
788
- -265, -95, -97, -265, -265, -265, -111, -113, -262, -265,
789
- -5, -8, -9, -10, -11, -12, -13, -14, -179, -265,
790
- -265, -83, -265, -20, -21, -23, -24, -265, -26, -265,
791
- -265, -265, -265, -265, -265, -265, -265, -265, -180, -181,
792
- -265, -184, -198, -265, -265, -265, -265, -204, -205, -206,
793
- -207, -208, -209, -210, -212, -216, -219, -222, -227, -230,
794
- -232, -234, -236, -238, -240, -242, -255, -259, -260, -261,
795
- -264, -62, -63, -167, -265, -179, -61, -265, -265, -126,
796
- -265, -205, -265, -265, -134, -141, -143, -147, -148, -122,
797
- -137, -140, -265, -85, -92, -265, -98, -100, -265, -94,
798
- -96, -265, -265, -104, -265, -265, -265, -265, -265, -210,
799
- -257, -265, -265, -19, -22, -25, -265, -265, -265, -265,
800
- -265, -265, -265, -265, -265, -45, -46, -265, -48, -263,
801
- -151, -265, -265, -265, -265, -265, -265, -265, -190, -191,
802
- -265, -199, -200, -201, -265, -202, -265, -244, -245, -246,
803
- -247, -248, -249, -250, -251, -252, -253, -254, -265, -265,
804
- -265, -265, -265, -265, -265, -265, -265, -265, -265, -265,
805
- -265, -265, -265, -265, -265, -265, -265, -265, -265, -171,
806
- -265, -175, -265, -265, -265, -124, -265, -205, -125, -265,
807
- -265, -131, -132, -133, -265, -265, -152, -265, -145, -146,
808
- -154, -265, -84, -93, -265, -265, -102, -87, -103, -265,
809
- -106, -112, -114, -108, -265, -15, -265, -17, -18, -256,
810
- -265, -265, -265, -265, -265, -265, -265, -44, -49, -47,
811
- -150, -152, -265, -182, -183, -265, -265, -265, -187, -194,
812
- -196, -197, -188, -189, -265, -265, -243, -213, -214, -215,
813
- -217, -218, -220, -221, -223, -224, -225, -226, -228, -229,
814
- -231, -233, -235, -237, -239, -265, -168, -265, -170, -174,
815
- -176, -265, -178, -123, -265, -130, -265, -128, -149, -142,
816
- -144, -153, -265, -265, -165, -265, -265, -265, -159, -205,
817
- -99, -101, -105, -109, -16, -265, -265, -265, -265, -265,
818
- -265, -265, -265, -265, -265, -211, -185, -186, -265, -265,
819
- -203, -265, -169, -265, -173, -177, -129, -127, -155, -164,
820
- -265, -157, -205, -265, -163, -158, -161, -27, -29, -30,
821
- -265, -265, -265, -265, -265, -265, -265, -265, -265, -265,
822
- -195, -241, -172, -156, -160, -162, -265, -265, -265, -265,
823
- -265, -265, -265, -265, -39, -265, -265, -265, -43, -265,
824
- -192, -28, -31, -265, -265, -265, -35, -265, -37, -38,
825
- -265, -41, -42, -193, -265, -33, -34, -36, -40, -32 ]
826
-
827
- racc_goto_table = [
828
- 47, 152, 57, 162, 75, 60, 70, 319, 153, 5,
829
- 5, 257, 158, 176, 174, 51, 52, 53, 54, 76,
830
- 393, 291, 279, 361, 74, 55, 82, 1, 58, 170,
831
- 62, 104, 179, 180, 190, 223, 63, 101, 102, 41,
832
- 47, 76, 188, 47, 171, 64, 157, 82, 82, 78,
833
- 156, 82, 82, 82, 213, 85, 175, 90, 361, 163,
834
- 98, 47, 2, 40, 47, 310, 91, 168, 194, 105,
835
- 172, 210, 330, 331, 101, 47, 181, 332, 333, 360,
836
- 182, 167, 338, 339, 200, 186, 204, 350, 317, 340,
837
- 82, 334, 335, 336, 337, 153, 341, 98, 264, 342,
838
- 151, 270, 343, 151, 344, 226, 105, 98, 174, 203,
839
- nil, nil, 393, 190, 177, 212, nil, 174, nil, 81,
840
- 190, 286, 276, nil, nil, nil, 291, 171, 292, nil,
841
- 76, 291, nil, nil, nil, 269, nil, 299, nil, nil,
842
- 81, 81, 82, nil, 81, 81, 81, nil, 327, 328,
843
- 329, 82, nil, nil, 324, nil, 320, nil, 325, 200,
844
- nil, nil, 47, 200, 200, 311, 210, 326, nil, nil,
845
- 201, 210, nil, nil, nil, 210, nil, nil, nil, nil,
846
- 420, nil, 98, 81, nil, 82, 98, 98, nil, nil,
847
- 82, nil, 348, nil, 82, nil, nil, 190, nil, 153,
848
- nil, 278, nil, nil, nil, 351, 306, 354, nil, nil,
849
- 356, 322, 323, nil, nil, 212, nil, 370, nil, 212,
850
- 190, nil, 367, nil, nil, 385, nil, nil, 371, nil,
851
- nil, nil, 276, nil, nil, 81, nil, 70, nil, 171,
852
- nil, 419, nil, nil, 81, 295, nil, nil, nil, 297,
853
- 298, nil, nil, nil, nil, nil, nil, nil, 352, nil,
854
- nil, nil, nil, nil, nil, nil, nil, 311, 200, 358,
855
- nil, 47, 47, nil, nil, nil, nil, nil, 81, 47,
856
- nil, 394, nil, 81, 167, nil, 167, 81, 153, nil,
857
- nil, 98, nil, nil, nil, nil, nil, 403, nil, nil,
858
- nil, nil, nil, nil, 207, nil, 400, 211, nil, nil,
859
- nil, nil, nil, nil, nil, nil, nil, nil, 177, nil,
860
- nil, 167, nil, nil, nil, 153, 421, 422, nil, 320,
861
- nil, nil, nil, nil, 153, nil, nil, nil, nil, 210,
862
- nil, nil, nil, nil, nil, nil, nil, 200, 200, 200,
863
- nil, nil, nil, nil, 374, nil, nil, nil, 82, nil,
864
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
865
- 98, 98, 98, 394, nil, 167, nil, nil, nil, nil,
866
- 153, nil, nil, nil, 300, 301, 302, 200, nil, 304,
867
- 200, nil, nil, nil, nil, nil, nil, nil, 200, nil,
868
- nil, 316, 200, nil, 200, 200, nil, 211, 200, 200,
869
- 98, 211, nil, 98, nil, nil, 200, 200, nil, 200,
870
- nil, 98, 200, nil, nil, 98, 200, 98, 98, nil,
871
- nil, 98, 98, 407, 408, 409, nil, nil, 189, 98,
872
- 98, nil, 98, 345, nil, 98, nil, nil, nil, 98,
873
- nil, 81, nil, nil, nil, nil, nil, nil, nil, nil,
874
- nil, nil, 221, 222, 189, 225, nil, nil, nil, nil,
875
- nil, nil, nil, 434, nil, nil, 438, nil, nil, nil,
876
- nil, nil, nil, nil, 441, nil, nil, nil, 446, nil,
877
- 448, 449, 380, 382, 451, 452, nil, nil, nil, nil,
878
- nil, nil, 455, 456, nil, 457, nil, nil, 458, nil,
879
- nil, nil, 459, nil, nil, nil, nil, 189, nil, nil,
880
- nil, nil, nil, nil, 189, nil, nil, nil, nil, nil,
881
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
882
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
883
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
884
- nil, nil, nil, nil, nil, 410, 411, nil, 414, nil,
885
- 417, nil, nil, nil, nil, nil, nil, 189, 189, 189,
886
- 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
887
- 189, 189, 189, 189, 189, nil, nil, nil, nil, 429,
888
- 431, 189, nil, 435, nil, nil, nil, nil, nil, nil,
889
- nil, nil, nil, nil, nil, 443, nil, nil, nil, nil,
890
- nil, nil, nil, nil, 189, nil, nil, nil, nil, nil,
891
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
892
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
893
- nil, nil, nil, nil, 189, nil, nil, nil, nil, nil,
894
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
895
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
896
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
897
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
898
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
899
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
900
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
901
- 189 ]
902
-
903
- racc_goto_check = [
904
- 15, 27, 17, 43, 39, 17, 40, 59, 42, 5,
905
- 5, 50, 42, 35, 32, 5, 5, 5, 5, 24,
906
- 51, 37, 47, 49, 41, 15, 24, 1, 15, 39,
907
- 7, 19, 33, 33, 73, 62, 8, 17, 18, 6,
908
- 15, 24, 16, 15, 24, 4, 41, 24, 24, 31,
909
- 26, 24, 24, 24, 48, 36, 34, 8, 49, 44,
910
- 15, 15, 2, 2, 15, 47, 4, 15, 19, 4,
911
- 31, 33, 63, 63, 17, 15, 31, 64, 64, 46,
912
- 36, 5, 66, 66, 17, 36, 17, 53, 58, 67,
913
- 24, 65, 65, 65, 65, 42, 68, 15, 42, 69,
914
- 6, 42, 70, 6, 71, 74, 4, 15, 32, 15,
915
- nil, nil, 51, 73, 6, 8, nil, 32, nil, 23,
916
- 73, 16, 39, nil, nil, nil, 37, 24, 16, nil,
917
- 24, 37, nil, nil, nil, 41, nil, 42, nil, nil,
918
- 23, 23, 24, nil, 23, 23, 23, nil, 62, 62,
919
- 62, 24, nil, nil, 48, nil, 42, nil, 48, 17,
920
- nil, nil, 15, 17, 17, 39, 33, 42, nil, nil,
921
- 9, 33, nil, nil, nil, 33, nil, nil, nil, nil,
922
- 59, nil, 15, 23, nil, 24, 15, 15, nil, nil,
923
- 24, nil, 27, nil, 24, nil, nil, 73, nil, 42,
924
- nil, 6, nil, nil, nil, 16, 4, 42, nil, nil,
925
- 42, 15, 15, nil, nil, 8, nil, 35, nil, 8,
926
- 73, nil, 42, nil, nil, 62, nil, nil, 16, nil,
927
- nil, nil, 39, nil, nil, 23, nil, 40, nil, 24,
928
- nil, 50, nil, nil, 23, 9, nil, nil, nil, 9,
929
- 9, nil, nil, nil, nil, nil, nil, nil, 15, nil,
930
- nil, nil, nil, nil, nil, nil, nil, 39, 17, 15,
931
- nil, 15, 15, nil, nil, nil, nil, nil, 23, 15,
932
- nil, 27, nil, 23, 5, nil, 5, 23, 42, nil,
933
- nil, 15, nil, nil, nil, nil, nil, 43, nil, nil,
934
- nil, nil, nil, nil, 20, nil, 42, 20, nil, nil,
935
- nil, nil, nil, nil, nil, nil, nil, nil, 6, nil,
936
- nil, 5, nil, nil, nil, 42, 73, 27, nil, 42,
937
- nil, nil, nil, nil, 42, nil, nil, nil, nil, 33,
938
- nil, nil, nil, nil, nil, nil, nil, 17, 17, 17,
939
- nil, nil, nil, nil, 9, nil, nil, nil, 24, nil,
940
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
941
- 15, 15, 15, 27, nil, 5, nil, nil, nil, nil,
942
- 42, nil, nil, nil, 20, 20, 20, 17, nil, 20,
943
- 17, nil, nil, nil, nil, nil, nil, nil, 17, nil,
944
- nil, 20, 17, nil, 17, 17, nil, 20, 17, 17,
945
- 15, 20, nil, 15, nil, nil, 17, 17, nil, 17,
946
- nil, 15, 17, nil, nil, 15, 17, 15, 15, nil,
947
- nil, 15, 15, 9, 9, 9, nil, nil, 60, 15,
948
- 15, nil, 15, 20, nil, 15, nil, nil, nil, 15,
949
- nil, 23, nil, nil, nil, nil, nil, nil, nil, nil,
950
- nil, nil, 60, 60, 60, 60, nil, nil, nil, nil,
951
- nil, nil, nil, 9, nil, nil, 9, nil, nil, nil,
952
- nil, nil, nil, nil, 9, nil, nil, nil, 9, nil,
953
- 9, 9, 20, 20, 9, 9, nil, nil, nil, nil,
954
- nil, nil, 9, 9, nil, 9, nil, nil, 9, nil,
955
- nil, nil, 9, nil, nil, nil, nil, 60, nil, nil,
956
- nil, nil, nil, nil, 60, nil, nil, nil, nil, nil,
957
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
958
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
959
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
960
- nil, nil, nil, nil, nil, 20, 20, nil, 20, nil,
961
- 20, nil, nil, nil, nil, nil, nil, 60, 60, 60,
962
- 60, 60, 60, 60, 60, 60, 60, 60, 60, 60,
963
- 60, 60, 60, 60, 60, nil, nil, nil, nil, 20,
964
- 20, 60, nil, 20, nil, nil, nil, nil, nil, nil,
965
- nil, nil, nil, nil, nil, 20, nil, nil, nil, nil,
966
- nil, nil, nil, nil, 60, nil, nil, nil, nil, nil,
967
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
968
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
969
- nil, nil, nil, nil, 60, nil, nil, nil, nil, nil,
970
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
971
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
972
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
973
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
974
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
975
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
976
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
977
- 60 ]
978
-
979
- racc_goto_pointer = [
980
- nil, 27, 62, nil, 4, 9, 34, -11, -5, 58,
981
- nil, nil, nil, nil, nil, -5, -57, -28, -27, -34,
982
- 187, nil, nil, 63, -30, nil, -19, -66, nil, nil,
983
- nil, -7, -64, -49, -24, -67, -4, -163, nil, -45,
984
- -39, -25, -59, -69, -13, nil, -196, -145, -66, -253,
985
- -143, -327, nil, -173, nil, nil, nil, nil, -127, -208,
986
- 339, nil, -90, -169, -166, -154, -167, -162, -156, -154,
987
- -152, -151, nil, -65, -28 ]
988
-
989
- racc_goto_default = [
990
- nil, nil, nil, 3, 4, 66, 73, nil, 93, 106,
991
- 92, 94, 95, 96, 97, 155, nil, 29, nil, nil,
992
- 107, 42, 6, 7, 8, 9, 44, 259, 27, 28,
993
- 30, nil, 79, 80, nil, nil, nil, 86, 87, 45,
994
- 46, nil, 146, 363, nil, 165, 166, 362, 321, 280,
995
- nil, 258, 260, 261, 121, 118, 119, 122, nil, nil,
996
- 133, 125, 134, 135, 136, 137, 138, 139, 140, 141,
997
- 142, 143, 144, 145, nil ]
998
-
999
- racc_reduce_table = [
1000
- 0, 0, :racc_error,
1001
- 1, 92, :_reduce_1,
1002
- 2, 92, :_reduce_2,
1003
- 1, 93, :_reduce_3,
1004
- 1, 93, :_reduce_4,
1005
- 4, 94, :_reduce_5,
1006
- 3, 94, :_reduce_6,
1007
- 1, 98, :_reduce_7,
1008
- 2, 98, :_reduce_8,
1009
- 1, 100, :_reduce_9,
1010
- 1, 100, :_reduce_10,
1011
- 1, 100, :_reduce_11,
1012
- 1, 100, :_reduce_12,
1013
- 1, 100, :_reduce_13,
1014
- 1, 100, :_reduce_14,
1015
- 3, 101, :_reduce_15,
1016
- 4, 101, :_reduce_16,
1017
- 3, 101, :_reduce_17,
1018
- 3, 101, :_reduce_18,
1019
- 3, 99, :_reduce_19,
1020
- 2, 99, :_reduce_20,
1021
- 1, 109, :_reduce_21,
1022
- 2, 109, :_reduce_22,
1023
- 1, 110, :_reduce_23,
1024
- 1, 110, :_reduce_24,
1025
- 2, 102, :_reduce_25,
1026
- 1, 102, :_reduce_26,
1027
- 5, 103, :_reduce_27,
1028
- 7, 103, :_reduce_28,
1029
- 5, 103, :_reduce_29,
1030
- 5, 104, :_reduce_30,
1031
- 7, 104, :_reduce_31,
1032
- 9, 104, :_reduce_32,
1033
- 8, 104, :_reduce_33,
1034
- 8, 104, :_reduce_34,
1035
- 7, 104, :_reduce_35,
1036
- 8, 104, :_reduce_36,
1037
- 7, 104, :_reduce_37,
1038
- 7, 104, :_reduce_38,
1039
- 6, 104, :_reduce_39,
1040
- 8, 104, :_reduce_40,
1041
- 7, 104, :_reduce_41,
1042
- 7, 104, :_reduce_42,
1043
- 6, 104, :_reduce_43,
1044
- 3, 105, :_reduce_44,
1045
- 2, 105, :_reduce_45,
1046
- 2, 105, :_reduce_46,
1047
- 3, 105, :_reduce_47,
1048
- 2, 105, :_reduce_48,
1049
- 3, 105, :_reduce_49,
1050
- 3, 95, :_reduce_50,
1051
- 2, 95, :_reduce_51,
1052
- 2, 96, :_reduce_52,
1053
- 1, 96, :_reduce_53,
1054
- 2, 96, :_reduce_54,
1055
- 1, 96, :_reduce_55,
1056
- 2, 96, :_reduce_56,
1057
- 1, 96, :_reduce_57,
1058
- 2, 96, :_reduce_58,
1059
- 1, 96, :_reduce_59,
1060
- 1, 112, :_reduce_60,
1061
- 3, 112, :_reduce_61,
1062
- 1, 117, :_reduce_62,
1063
- 3, 117, :_reduce_63,
1064
- 1, 113, :_reduce_64,
1065
- 1, 113, :_reduce_65,
1066
- 1, 113, :_reduce_66,
1067
- 1, 113, :_reduce_67,
1068
- 1, 113, :_reduce_68,
1069
- 1, 114, :_reduce_69,
1070
- 1, 114, :_reduce_70,
1071
- 1, 114, :_reduce_71,
1072
- 1, 114, :_reduce_72,
1073
- 1, 114, :_reduce_73,
1074
- 1, 114, :_reduce_74,
1075
- 1, 114, :_reduce_75,
1076
- 1, 114, :_reduce_76,
1077
- 1, 114, :_reduce_77,
1078
- 1, 114, :_reduce_78,
1079
- 1, 114, :_reduce_79,
1080
- 1, 114, :_reduce_80,
1081
- 1, 114, :_reduce_81,
1082
- 1, 114, :_reduce_82,
1083
- 1, 114, :_reduce_83,
1084
- 5, 119, :_reduce_84,
1085
- 4, 119, :_reduce_85,
1086
- 2, 119, :_reduce_86,
1087
- 5, 119, :_reduce_87,
1088
- 2, 119, :_reduce_88,
1089
- 1, 121, :_reduce_89,
1090
- 1, 121, :_reduce_90,
1091
- 1, 122, :_reduce_91,
1092
- 2, 122, :_reduce_92,
1093
- 3, 123, :_reduce_93,
1094
- 2, 124, :_reduce_94,
1095
- 1, 124, :_reduce_95,
1096
- 2, 124, :_reduce_96,
1097
- 1, 124, :_reduce_97,
1098
- 1, 125, :_reduce_98,
1099
- 3, 125, :_reduce_99,
1100
- 1, 126, :_reduce_100,
1101
- 3, 126, :_reduce_101,
1102
- 2, 126, :_reduce_102,
1103
- 5, 120, :_reduce_103,
1104
- 4, 120, :_reduce_104,
1105
- 6, 120, :_reduce_105,
1106
- 5, 120, :_reduce_106,
1107
- 2, 120, :_reduce_107,
1108
- 5, 120, :_reduce_108,
1109
- 6, 120, :_reduce_109,
1110
- 2, 120, :_reduce_110,
1111
- 1, 127, :_reduce_111,
1112
- 3, 127, :_reduce_112,
1113
- 1, 128, :_reduce_113,
1114
- 3, 128, :_reduce_114,
1115
- 1, 115, :_reduce_115,
1116
- 1, 115, :_reduce_116,
1117
- 1, 115, :_reduce_117,
1118
- 1, 116, :_reduce_118,
1119
- 2, 97, :_reduce_119,
1120
- 1, 97, :_reduce_120,
1121
- 1, 131, :_reduce_121,
1122
- 3, 131, :_reduce_122,
1123
- 5, 131, :_reduce_123,
1124
- 4, 131, :_reduce_124,
1125
- 4, 131, :_reduce_125,
1126
- 3, 131, :_reduce_126,
1127
- 6, 131, :_reduce_127,
1128
- 5, 131, :_reduce_128,
1129
- 6, 131, :_reduce_129,
1130
- 5, 131, :_reduce_130,
1131
- 4, 131, :_reduce_131,
1132
- 4, 131, :_reduce_132,
1133
- 4, 131, :_reduce_133,
1134
- 3, 131, :_reduce_134,
1135
- 2, 130, :_reduce_135,
1136
- 1, 130, :_reduce_136,
1137
- 3, 130, :_reduce_137,
1138
- 2, 130, :_reduce_138,
1139
- 1, 132, :_reduce_139,
1140
- 2, 132, :_reduce_140,
1141
- 1, 134, :_reduce_141,
1142
- 3, 134, :_reduce_142,
1143
- 1, 136, :_reduce_143,
1144
- 3, 136, :_reduce_144,
1145
- 2, 137, :_reduce_145,
1146
- 2, 137, :_reduce_146,
1147
- 1, 137, :_reduce_147,
1148
- 1, 135, :_reduce_148,
1149
- 3, 135, :_reduce_149,
1150
- 2, 139, :_reduce_150,
1151
- 1, 139, :_reduce_151,
1152
- 1, 138, :_reduce_152,
1153
- 2, 138, :_reduce_153,
1154
- 1, 138, :_reduce_154,
1155
- 3, 140, :_reduce_155,
1156
- 4, 140, :_reduce_156,
1157
- 3, 140, :_reduce_157,
1158
- 3, 140, :_reduce_158,
1159
- 2, 140, :_reduce_159,
1160
- 4, 140, :_reduce_160,
1161
- 3, 140, :_reduce_161,
1162
- 4, 140, :_reduce_162,
1163
- 3, 140, :_reduce_163,
1164
- 3, 140, :_reduce_164,
1165
- 2, 140, :_reduce_165,
1166
- 1, 108, :_reduce_166,
1167
- 1, 118, :_reduce_167,
1168
- 3, 118, :_reduce_168,
1169
- 4, 118, :_reduce_169,
1170
- 2, 141, :_reduce_170,
1171
- 1, 141, :_reduce_171,
1172
- 4, 141, :_reduce_172,
1173
- 3, 141, :_reduce_173,
1174
- 2, 142, :_reduce_174,
1175
- 1, 143, :_reduce_175,
1176
- 2, 143, :_reduce_176,
1177
- 3, 144, :_reduce_177,
1178
- 2, 144, :_reduce_178,
1179
- 1, 145, :_reduce_179,
1180
- 1, 145, :_reduce_180,
1181
- 1, 145, :_reduce_181,
1182
- 3, 145, :_reduce_182,
1183
- 3, 145, :_reduce_183,
1184
- 1, 148, :_reduce_184,
1185
- 4, 148, :_reduce_185,
1186
- 4, 148, :_reduce_186,
1187
- 3, 148, :_reduce_187,
1188
- 3, 148, :_reduce_188,
1189
- 3, 148, :_reduce_189,
1190
- 2, 148, :_reduce_190,
1191
- 2, 148, :_reduce_191,
1192
- 6, 148, :_reduce_192,
1193
- 7, 148, :_reduce_193,
1194
- 1, 149, :_reduce_194,
1195
- 3, 149, :_reduce_195,
1196
- 1, 150, :_reduce_196,
1197
- 1, 150, :_reduce_197,
1198
- 1, 151, :_reduce_198,
1199
- 2, 151, :_reduce_199,
1200
- 2, 151, :_reduce_200,
1201
- 2, 151, :_reduce_201,
1202
- 2, 151, :_reduce_202,
1203
- 4, 151, :_reduce_203,
1204
- 1, 152, :_reduce_204,
1205
- 1, 152, :_reduce_205,
1206
- 1, 152, :_reduce_206,
1207
- 1, 152, :_reduce_207,
1208
- 1, 152, :_reduce_208,
1209
- 1, 152, :_reduce_209,
1210
- 1, 153, :_reduce_210,
1211
- 4, 153, :_reduce_211,
1212
- 1, 154, :_reduce_212,
1213
- 3, 154, :_reduce_213,
1214
- 3, 154, :_reduce_214,
1215
- 3, 154, :_reduce_215,
1216
- 1, 155, :_reduce_216,
1217
- 3, 155, :_reduce_217,
1218
- 3, 155, :_reduce_218,
1219
- 1, 156, :_reduce_219,
1220
- 3, 156, :_reduce_220,
1221
- 3, 156, :_reduce_221,
1222
- 1, 157, :_reduce_222,
1223
- 3, 157, :_reduce_223,
1224
- 3, 157, :_reduce_224,
1225
- 3, 157, :_reduce_225,
1226
- 3, 157, :_reduce_226,
1227
- 1, 158, :_reduce_227,
1228
- 3, 158, :_reduce_228,
1229
- 3, 158, :_reduce_229,
1230
- 1, 159, :_reduce_230,
1231
- 3, 159, :_reduce_231,
1232
- 1, 160, :_reduce_232,
1233
- 3, 160, :_reduce_233,
1234
- 1, 161, :_reduce_234,
1235
- 3, 161, :_reduce_235,
1236
- 1, 162, :_reduce_236,
1237
- 3, 162, :_reduce_237,
1238
- 1, 163, :_reduce_238,
1239
- 3, 163, :_reduce_239,
1240
- 1, 164, :_reduce_240,
1241
- 5, 164, :_reduce_241,
1242
- 1, 133, :_reduce_242,
1243
- 3, 133, :_reduce_243,
1244
- 1, 165, :_reduce_244,
1245
- 1, 165, :_reduce_245,
1246
- 1, 165, :_reduce_246,
1247
- 1, 165, :_reduce_247,
1248
- 1, 165, :_reduce_248,
1249
- 1, 165, :_reduce_249,
1250
- 1, 165, :_reduce_250,
1251
- 1, 165, :_reduce_251,
1252
- 1, 165, :_reduce_252,
1253
- 1, 165, :_reduce_253,
1254
- 1, 165, :_reduce_254,
1255
- 1, 111, :_reduce_255,
1256
- 3, 111, :_reduce_256,
1257
- 1, 107, :_reduce_257,
1258
- 1, 106, :_reduce_258,
1259
- 1, 146, :_reduce_259,
1260
- 1, 146, :_reduce_260,
1261
- 1, 146, :_reduce_261,
1262
- 1, 129, :_reduce_262,
1263
- 2, 147, :_reduce_263,
1264
- 1, 147, :_reduce_264 ]
1265
-
1266
- racc_reduce_n = 265
1267
-
1268
- racc_shift_n = 460
1269
-
1270
- racc_token_table = {
1271
- false => 0,
1272
- :error => 1,
1273
- :COLON => 2,
1274
- :CASE => 3,
1275
- :DEFAULT => 4,
1276
- :LBRACE => 5,
1277
- :RBRACE => 6,
1278
- :SEMICOLON => 7,
1279
- :IF => 8,
1280
- :LPAREN => 9,
1281
- :RPAREN => 10,
1282
- :ELSE => 11,
1283
- :SWITCH => 12,
1284
- :WHILE => 13,
1285
- :DO => 14,
1286
- :FOR => 15,
1287
- :GOTO => 16,
1288
- :CONTINUE => 17,
1289
- :BREAK => 18,
1290
- :RETURN => 19,
1291
- :COMMA => 20,
1292
- :EQ => 21,
1293
- :TYPEDEF => 22,
1294
- :EXTERN => 23,
1295
- :STATIC => 24,
1296
- :AUTO => 25,
1297
- :REGISTER => 26,
1298
- :VOID => 27,
1299
- :CHAR => 28,
1300
- :SHORT => 29,
1301
- :INT => 30,
1302
- :LONG => 31,
1303
- :FLOAT => 32,
1304
- :DOUBLE => 33,
1305
- :SIGNED => 34,
1306
- :UNSIGNED => 35,
1307
- :BOOL => 36,
1308
- :COMPLEX => 37,
1309
- :IMAGINARY => 38,
1310
- :STRUCT => 39,
1311
- :UNION => 40,
1312
- :ENUM => 41,
1313
- :CONST => 42,
1314
- :RESTRICT => 43,
1315
- :VOLATILE => 44,
1316
- :INLINE => 45,
1317
- :LBRACKET => 46,
1318
- :RBRACKET => 47,
1319
- :MUL => 48,
1320
- :ELLIPSIS => 49,
1321
- :TYPENAME => 50,
1322
- :DOT => 51,
1323
- :ARROW => 52,
1324
- :INC => 53,
1325
- :DEC => 54,
1326
- :SIZEOF => 55,
1327
- :AND => 56,
1328
- :ADD => 57,
1329
- :SUB => 58,
1330
- :NOT => 59,
1331
- :BANG => 60,
1332
- :DIV => 61,
1333
- :MOD => 62,
1334
- :LSHIFT => 63,
1335
- :RSHIFT => 64,
1336
- :LT => 65,
1337
- :GT => 66,
1338
- :LEQ => 67,
1339
- :GEQ => 68,
1340
- :EQEQ => 69,
1341
- :NEQ => 70,
1342
- :XOR => 71,
1343
- :OR => 72,
1344
- :ANDAND => 73,
1345
- :OROR => 74,
1346
- :QUESTION => 75,
1347
- :MULEQ => 76,
1348
- :DIVEQ => 77,
1349
- :MODEQ => 78,
1350
- :ADDEQ => 79,
1351
- :SUBEQ => 80,
1352
- :LSHIFTEQ => 81,
1353
- :RSHIFTEQ => 82,
1354
- :ANDEQ => 83,
1355
- :XOREQ => 84,
1356
- :OREQ => 85,
1357
- :ID => 86,
1358
- :ICON => 87,
1359
- :FCON => 88,
1360
- :CCON => 89,
1361
- :SCON => 90 }
1362
-
1363
- racc_nt_base = 91
1364
-
1365
- racc_use_result_var = true
1366
-
1367
- Racc_arg = [
1368
- racc_action_table,
1369
- racc_action_check,
1370
- racc_action_default,
1371
- racc_action_pointer,
1372
- racc_goto_table,
1373
- racc_goto_check,
1374
- racc_goto_default,
1375
- racc_goto_pointer,
1376
- racc_nt_base,
1377
- racc_reduce_table,
1378
- racc_token_table,
1379
- racc_shift_n,
1380
- racc_reduce_n,
1381
- racc_use_result_var ]
1382
-
1383
- Racc_token_to_s_table = [
1384
- "$end",
1385
- "error",
1386
- "COLON",
1387
- "CASE",
1388
- "DEFAULT",
1389
- "LBRACE",
1390
- "RBRACE",
1391
- "SEMICOLON",
1392
- "IF",
1393
- "LPAREN",
1394
- "RPAREN",
1395
- "ELSE",
1396
- "SWITCH",
1397
- "WHILE",
1398
- "DO",
1399
- "FOR",
1400
- "GOTO",
1401
- "CONTINUE",
1402
- "BREAK",
1403
- "RETURN",
1404
- "COMMA",
1405
- "EQ",
1406
- "TYPEDEF",
1407
- "EXTERN",
1408
- "STATIC",
1409
- "AUTO",
1410
- "REGISTER",
1411
- "VOID",
1412
- "CHAR",
1413
- "SHORT",
1414
- "INT",
1415
- "LONG",
1416
- "FLOAT",
1417
- "DOUBLE",
1418
- "SIGNED",
1419
- "UNSIGNED",
1420
- "BOOL",
1421
- "COMPLEX",
1422
- "IMAGINARY",
1423
- "STRUCT",
1424
- "UNION",
1425
- "ENUM",
1426
- "CONST",
1427
- "RESTRICT",
1428
- "VOLATILE",
1429
- "INLINE",
1430
- "LBRACKET",
1431
- "RBRACKET",
1432
- "MUL",
1433
- "ELLIPSIS",
1434
- "TYPENAME",
1435
- "DOT",
1436
- "ARROW",
1437
- "INC",
1438
- "DEC",
1439
- "SIZEOF",
1440
- "AND",
1441
- "ADD",
1442
- "SUB",
1443
- "NOT",
1444
- "BANG",
1445
- "DIV",
1446
- "MOD",
1447
- "LSHIFT",
1448
- "RSHIFT",
1449
- "LT",
1450
- "GT",
1451
- "LEQ",
1452
- "GEQ",
1453
- "EQEQ",
1454
- "NEQ",
1455
- "XOR",
1456
- "OR",
1457
- "ANDAND",
1458
- "OROR",
1459
- "QUESTION",
1460
- "MULEQ",
1461
- "DIVEQ",
1462
- "MODEQ",
1463
- "ADDEQ",
1464
- "SUBEQ",
1465
- "LSHIFTEQ",
1466
- "RSHIFTEQ",
1467
- "ANDEQ",
1468
- "XOREQ",
1469
- "OREQ",
1470
- "ID",
1471
- "ICON",
1472
- "FCON",
1473
- "CCON",
1474
- "SCON",
1475
- "$start",
1476
- "translation_unit",
1477
- "external_declaration",
1478
- "function_definition",
1479
- "declaration",
1480
- "declaration_specifiers",
1481
- "declarator",
1482
- "declaration_list",
1483
- "compound_statement",
1484
- "statement",
1485
- "labeled_statement",
1486
- "expression_statement",
1487
- "selection_statement",
1488
- "iteration_statement",
1489
- "jump_statement",
1490
- "identifier",
1491
- "constant_expression",
1492
- "typedef_name",
1493
- "block_item_list",
1494
- "block_item",
1495
- "expression",
1496
- "init_declarator_list",
1497
- "storage_class_specifier",
1498
- "type_specifier",
1499
- "type_qualifier",
1500
- "function_specifier",
1501
- "init_declarator",
1502
- "initializer",
1503
- "struct_or_union_specifier",
1504
- "enum_specifier",
1505
- "struct_or_union",
1506
- "struct_declaration_list",
1507
- "struct_declaration",
1508
- "specifier_qualifier_list",
1509
- "struct_declarator_list",
1510
- "struct_declarator",
1511
- "enumerator_list",
1512
- "enumerator",
1513
- "enumeration_constant",
1514
- "pointer",
1515
- "direct_declarator",
1516
- "type_qualifier_list",
1517
- "assignment_expression",
1518
- "parameter_type_list",
1519
- "identifier_list",
1520
- "parameter_list",
1521
- "parameter_declaration",
1522
- "abstract_declarator",
1523
- "type_name",
1524
- "direct_abstract_declarator",
1525
- "initializer_list",
1526
- "designation",
1527
- "designator_list",
1528
- "designator",
1529
- "primary_expression",
1530
- "constant",
1531
- "string_literal",
1532
- "postfix_expression",
1533
- "argument_expression_list",
1534
- "argument_expression",
1535
- "unary_expression",
1536
- "unary_operator",
1537
- "cast_expression",
1538
- "multiplicative_expression",
1539
- "additive_expression",
1540
- "shift_expression",
1541
- "relational_expression",
1542
- "equality_expression",
1543
- "and_expression",
1544
- "exclusive_or_expression",
1545
- "inclusive_or_expression",
1546
- "logical_and_expression",
1547
- "logical_or_expression",
1548
- "conditional_expression",
1549
- "assignment_operator" ]
1550
-
1551
- Racc_debug_parser = false
1552
-
1553
- ##### State transition tables end #####
1554
-
1555
- # reduce 0 omitted
1556
-
1557
- module_eval(<<'.,.,', 'cast.y', 32)
1558
- def _reduce_1(val, _values, result)
1559
- result = TranslationUnit.new_at(val[0].pos, NodeChain[val[0]])
1560
- result
1561
- end
1562
- .,.,
1563
-
1564
- module_eval(<<'.,.,', 'cast.y', 33)
1565
- def _reduce_2(val, _values, result)
1566
- result = val[0]; result.entities << val[1]
1567
- result
1568
- end
1569
- .,.,
1570
-
1571
- module_eval(<<'.,.,', 'cast.y', 37)
1572
- def _reduce_3(val, _values, result)
1573
- result = val[0]
1574
- result
1575
- end
1576
- .,.,
1577
-
1578
- module_eval(<<'.,.,', 'cast.y', 38)
1579
- def _reduce_4(val, _values, result)
1580
- result = val[0]
1581
- result
1582
- end
1583
- .,.,
1584
-
1585
- module_eval(<<'.,.,', 'cast.y', 42)
1586
- def _reduce_5(val, _values, result)
1587
- result = make_function_def(val[0][0], val[0][1], val[1], val[2], val[3])
1588
- result
1589
- end
1590
- .,.,
1591
-
1592
- module_eval(<<'.,.,', 'cast.y', 43)
1593
- def _reduce_6(val, _values, result)
1594
- result = make_function_def(val[0][0], val[0][1], val[1], nil , val[2])
1595
- result
1596
- end
1597
- .,.,
1598
-
1599
- module_eval(<<'.,.,', 'cast.y', 47)
1600
- def _reduce_7(val, _values, result)
1601
- result = [val[0]]
1602
- result
1603
- end
1604
- .,.,
1605
-
1606
- module_eval(<<'.,.,', 'cast.y', 48)
1607
- def _reduce_8(val, _values, result)
1608
- result = val[0] << val[1]
1609
- result
1610
- end
1611
- .,.,
1612
-
1613
- module_eval(<<'.,.,', 'cast.y', 54)
1614
- def _reduce_9(val, _values, result)
1615
- result = val[0]
1616
- result
1617
- end
1618
- .,.,
1619
-
1620
- module_eval(<<'.,.,', 'cast.y', 55)
1621
- def _reduce_10(val, _values, result)
1622
- result = val[0]
1623
- result
1624
- end
1625
- .,.,
1626
-
1627
- module_eval(<<'.,.,', 'cast.y', 56)
1628
- def _reduce_11(val, _values, result)
1629
- result = val[0]
1630
- result
1631
- end
1632
- .,.,
1633
-
1634
- module_eval(<<'.,.,', 'cast.y', 57)
1635
- def _reduce_12(val, _values, result)
1636
- result = val[0]
1637
- result
1638
- end
1639
- .,.,
1640
-
1641
- module_eval(<<'.,.,', 'cast.y', 58)
1642
- def _reduce_13(val, _values, result)
1643
- result = val[0]
1644
- result
1645
- end
1646
- .,.,
1647
-
1648
- module_eval(<<'.,.,', 'cast.y', 59)
1649
- def _reduce_14(val, _values, result)
1650
- result = val[0]
1651
- result
1652
- end
1653
- .,.,
1654
-
1655
- module_eval(<<'.,.,', 'cast.y', 63)
1656
- def _reduce_15(val, _values, result)
1657
- val[2].labels.unshift(PlainLabel.new_at(val[0].pos, val[0].val)); result = val[2]
1658
- result
1659
- end
1660
- .,.,
1661
-
1662
- module_eval(<<'.,.,', 'cast.y', 64)
1663
- def _reduce_16(val, _values, result)
1664
- val[3].labels.unshift(Case .new_at(val[0].pos, val[1] )); result = val[3]
1665
- result
1666
- end
1667
- .,.,
1668
-
1669
- module_eval(<<'.,.,', 'cast.y', 65)
1670
- def _reduce_17(val, _values, result)
1671
- val[2].labels.unshift(Default .new_at(val[0].pos )); result = val[2]
1672
- result
1673
- end
1674
- .,.,
1675
-
1676
- module_eval(<<'.,.,', 'cast.y', 67)
1677
- def _reduce_18(val, _values, result)
1678
- val[2].labels.unshift(PlainLabel.new_at(val[0].pos, val[0].name)); result = val[2]
1679
- result
1680
- end
1681
- .,.,
1682
-
1683
- module_eval(<<'.,.,', 'cast.y', 71)
1684
- def _reduce_19(val, _values, result)
1685
- result = Block.new_at(val[0].pos, val[1])
1686
- result
1687
- end
1688
- .,.,
1689
-
1690
- module_eval(<<'.,.,', 'cast.y', 72)
1691
- def _reduce_20(val, _values, result)
1692
- result = Block.new_at(val[0].pos )
1693
- result
1694
- end
1695
- .,.,
1696
-
1697
- module_eval(<<'.,.,', 'cast.y', 76)
1698
- def _reduce_21(val, _values, result)
1699
- result = NodeChain[val[0]]
1700
- result
1701
- end
1702
- .,.,
1703
-
1704
- module_eval(<<'.,.,', 'cast.y', 77)
1705
- def _reduce_22(val, _values, result)
1706
- result = val[0] << val[1]
1707
- result
1708
- end
1709
- .,.,
1710
-
1711
- module_eval(<<'.,.,', 'cast.y', 81)
1712
- def _reduce_23(val, _values, result)
1713
- result = val[0]
1714
- result
1715
- end
1716
- .,.,
1717
-
1718
- module_eval(<<'.,.,', 'cast.y', 82)
1719
- def _reduce_24(val, _values, result)
1720
- result = val[0]
1721
- result
1722
- end
1723
- .,.,
1724
-
1725
- module_eval(<<'.,.,', 'cast.y', 86)
1726
- def _reduce_25(val, _values, result)
1727
- result = ExpressionStatement.new_at(val[0].pos, val[0])
1728
- result
1729
- end
1730
- .,.,
1731
-
1732
- module_eval(<<'.,.,', 'cast.y', 87)
1733
- def _reduce_26(val, _values, result)
1734
- result = ExpressionStatement.new_at(val[0].pos )
1735
- result
1736
- end
1737
- .,.,
1738
-
1739
- module_eval(<<'.,.,', 'cast.y', 91)
1740
- def _reduce_27(val, _values, result)
1741
- result = If .new_at(val[0].pos, val[2], val[4] )
1742
- result
1743
- end
1744
- .,.,
1745
-
1746
- module_eval(<<'.,.,', 'cast.y', 92)
1747
- def _reduce_28(val, _values, result)
1748
- result = If .new_at(val[0].pos, val[2], val[4], val[6])
1749
- result
1750
- end
1751
- .,.,
1752
-
1753
- module_eval(<<'.,.,', 'cast.y', 93)
1754
- def _reduce_29(val, _values, result)
1755
- result = Switch.new_at(val[0].pos, val[2], val[4] )
1756
- result
1757
- end
1758
- .,.,
1759
-
1760
- module_eval(<<'.,.,', 'cast.y', 97)
1761
- def _reduce_30(val, _values, result)
1762
- result = While.new_at(val[0].pos, val[2], val[4] )
1763
- result
1764
- end
1765
- .,.,
1766
-
1767
- module_eval(<<'.,.,', 'cast.y', 98)
1768
- def _reduce_31(val, _values, result)
1769
- result = While.new_at(val[0].pos, val[4], val[1], :do => true )
1770
- result
1771
- end
1772
- .,.,
1773
-
1774
- module_eval(<<'.,.,', 'cast.y', 99)
1775
- def _reduce_32(val, _values, result)
1776
- result = For.new_at(val[0].pos, val[2], val[4], val[6], val[8])
1777
- result
1778
- end
1779
- .,.,
1780
-
1781
- module_eval(<<'.,.,', 'cast.y', 100)
1782
- def _reduce_33(val, _values, result)
1783
- result = For.new_at(val[0].pos, val[2], val[4], nil , val[7])
1784
- result
1785
- end
1786
- .,.,
1787
-
1788
- module_eval(<<'.,.,', 'cast.y', 101)
1789
- def _reduce_34(val, _values, result)
1790
- result = For.new_at(val[0].pos, val[2], nil , val[5], val[7])
1791
- result
1792
- end
1793
- .,.,
1794
-
1795
- module_eval(<<'.,.,', 'cast.y', 102)
1796
- def _reduce_35(val, _values, result)
1797
- result = For.new_at(val[0].pos, val[2], nil , nil , val[6])
1798
- result
1799
- end
1800
- .,.,
1801
-
1802
- module_eval(<<'.,.,', 'cast.y', 103)
1803
- def _reduce_36(val, _values, result)
1804
- result = For.new_at(val[0].pos, nil , val[3], val[5], val[7])
1805
- result
1806
- end
1807
- .,.,
1808
-
1809
- module_eval(<<'.,.,', 'cast.y', 104)
1810
- def _reduce_37(val, _values, result)
1811
- result = For.new_at(val[0].pos, nil , val[3], nil , val[6])
1812
- result
1813
- end
1814
- .,.,
1815
-
1816
- module_eval(<<'.,.,', 'cast.y', 105)
1817
- def _reduce_38(val, _values, result)
1818
- result = For.new_at(val[0].pos, nil , nil , val[4], val[6])
1819
- result
1820
- end
1821
- .,.,
1822
-
1823
- module_eval(<<'.,.,', 'cast.y', 106)
1824
- def _reduce_39(val, _values, result)
1825
- result = For.new_at(val[0].pos, nil , nil , nil , val[5])
1826
- result
1827
- end
1828
- .,.,
1829
-
1830
- module_eval(<<'.,.,', 'cast.y', 107)
1831
- def _reduce_40(val, _values, result)
1832
- result = For.new_at(val[0].pos, val[2], val[3], val[5], val[7])
1833
- result
1834
- end
1835
- .,.,
1836
-
1837
- module_eval(<<'.,.,', 'cast.y', 108)
1838
- def _reduce_41(val, _values, result)
1839
- result = For.new_at(val[0].pos, val[2], val[3], nil , val[6])
1840
- result
1841
- end
1842
- .,.,
1843
-
1844
- module_eval(<<'.,.,', 'cast.y', 109)
1845
- def _reduce_42(val, _values, result)
1846
- result = For.new_at(val[0].pos, val[2], nil , val[4], val[6])
1847
- result
1848
- end
1849
- .,.,
1850
-
1851
- module_eval(<<'.,.,', 'cast.y', 110)
1852
- def _reduce_43(val, _values, result)
1853
- result = For.new_at(val[0].pos, val[2], nil , nil , val[5])
1854
- result
1855
- end
1856
- .,.,
1857
-
1858
- module_eval(<<'.,.,', 'cast.y', 114)
1859
- def _reduce_44(val, _values, result)
1860
- result = Goto .new_at(val[0].pos, val[1].val)
1861
- result
1862
- end
1863
- .,.,
1864
-
1865
- module_eval(<<'.,.,', 'cast.y', 115)
1866
- def _reduce_45(val, _values, result)
1867
- result = Continue.new_at(val[0].pos )
1868
- result
1869
- end
1870
- .,.,
1871
-
1872
- module_eval(<<'.,.,', 'cast.y', 116)
1873
- def _reduce_46(val, _values, result)
1874
- result = Break .new_at(val[0].pos )
1875
- result
1876
- end
1877
- .,.,
1878
-
1879
- module_eval(<<'.,.,', 'cast.y', 117)
1880
- def _reduce_47(val, _values, result)
1881
- result = Return .new_at(val[0].pos, val[1] )
1882
- result
1883
- end
1884
- .,.,
1885
-
1886
- module_eval(<<'.,.,', 'cast.y', 118)
1887
- def _reduce_48(val, _values, result)
1888
- result = Return .new_at(val[0].pos )
1889
- result
1890
- end
1891
- .,.,
1892
-
1893
- module_eval(<<'.,.,', 'cast.y', 120)
1894
- def _reduce_49(val, _values, result)
1895
- result = Goto .new_at(val[0].pos, val[1].name)
1896
- result
1897
- end
1898
- .,.,
1899
-
1900
- module_eval(<<'.,.,', 'cast.y', 126)
1901
- def _reduce_50(val, _values, result)
1902
- result = make_declaration(val[0][0], val[0][1], val[1])
1903
- result
1904
- end
1905
- .,.,
1906
-
1907
- module_eval(<<'.,.,', 'cast.y', 127)
1908
- def _reduce_51(val, _values, result)
1909
- result = make_declaration(val[0][0], val[0][1], NodeArray[])
1910
- result
1911
- end
1912
- .,.,
1913
-
1914
- module_eval(<<'.,.,', 'cast.y', 131)
1915
- def _reduce_52(val, _values, result)
1916
- val[1][1] << val[0][1]; result = val[1]
1917
- result
1918
- end
1919
- .,.,
1920
-
1921
- module_eval(<<'.,.,', 'cast.y', 132)
1922
- def _reduce_53(val, _values, result)
1923
- result = [val[0][0], [val[0][1]]]
1924
- result
1925
- end
1926
- .,.,
1927
-
1928
- module_eval(<<'.,.,', 'cast.y', 133)
1929
- def _reduce_54(val, _values, result)
1930
- val[1][1] << val[0][1]; result = val[1]
1931
- result
1932
- end
1933
- .,.,
1934
-
1935
- module_eval(<<'.,.,', 'cast.y', 134)
1936
- def _reduce_55(val, _values, result)
1937
- result = [val[0][0], [val[0][1]]]
1938
- result
1939
- end
1940
- .,.,
1941
-
1942
- module_eval(<<'.,.,', 'cast.y', 135)
1943
- def _reduce_56(val, _values, result)
1944
- val[1][1] << val[0][1]; result = val[1]
1945
- result
1946
- end
1947
- .,.,
1948
-
1949
- module_eval(<<'.,.,', 'cast.y', 136)
1950
- def _reduce_57(val, _values, result)
1951
- result = [val[0][0], [val[0][1]]]
1952
- result
1953
- end
1954
- .,.,
1955
-
1956
- module_eval(<<'.,.,', 'cast.y', 137)
1957
- def _reduce_58(val, _values, result)
1958
- val[1][1] << val[0][1]; result = val[1]
1959
- result
1960
- end
1961
- .,.,
1962
-
1963
- module_eval(<<'.,.,', 'cast.y', 138)
1964
- def _reduce_59(val, _values, result)
1965
- result = [val[0][0], [val[0][1]]]
1966
- result
1967
- end
1968
- .,.,
1969
-
1970
- module_eval(<<'.,.,', 'cast.y', 142)
1971
- def _reduce_60(val, _values, result)
1972
- result = NodeArray[val[0]]
1973
- result
1974
- end
1975
- .,.,
1976
-
1977
- module_eval(<<'.,.,', 'cast.y', 143)
1978
- def _reduce_61(val, _values, result)
1979
- result = val[0] << val[2]
1980
- result
1981
- end
1982
- .,.,
1983
-
1984
- module_eval(<<'.,.,', 'cast.y', 147)
1985
- def _reduce_62(val, _values, result)
1986
- result = val[0]
1987
- result
1988
- end
1989
- .,.,
1990
-
1991
- module_eval(<<'.,.,', 'cast.y', 148)
1992
- def _reduce_63(val, _values, result)
1993
- val[0].init = val[2]; result = val[0]
1994
- result
1995
- end
1996
- .,.,
1997
-
1998
- module_eval(<<'.,.,', 'cast.y', 152)
1999
- def _reduce_64(val, _values, result)
2000
- result = [val[0].pos, :typedef ]
2001
- result
2002
- end
2003
- .,.,
2004
-
2005
- module_eval(<<'.,.,', 'cast.y', 153)
2006
- def _reduce_65(val, _values, result)
2007
- result = [val[0].pos, :extern ]
2008
- result
2009
- end
2010
- .,.,
2011
-
2012
- module_eval(<<'.,.,', 'cast.y', 154)
2013
- def _reduce_66(val, _values, result)
2014
- result = [val[0].pos, :static ]
2015
- result
2016
- end
2017
- .,.,
2018
-
2019
- module_eval(<<'.,.,', 'cast.y', 155)
2020
- def _reduce_67(val, _values, result)
2021
- result = [val[0].pos, :auto ]
2022
- result
2023
- end
2024
- .,.,
2025
-
2026
- module_eval(<<'.,.,', 'cast.y', 156)
2027
- def _reduce_68(val, _values, result)
2028
- result = [val[0].pos, :register]
2029
- result
2030
- end
2031
- .,.,
2032
-
2033
- module_eval(<<'.,.,', 'cast.y', 160)
2034
- def _reduce_69(val, _values, result)
2035
- result = [val[0].pos, :void ]
2036
- result
2037
- end
2038
- .,.,
2039
-
2040
- module_eval(<<'.,.,', 'cast.y', 161)
2041
- def _reduce_70(val, _values, result)
2042
- result = [val[0].pos, :char ]
2043
- result
2044
- end
2045
- .,.,
2046
-
2047
- module_eval(<<'.,.,', 'cast.y', 162)
2048
- def _reduce_71(val, _values, result)
2049
- result = [val[0].pos, :short ]
2050
- result
2051
- end
2052
- .,.,
2053
-
2054
- module_eval(<<'.,.,', 'cast.y', 163)
2055
- def _reduce_72(val, _values, result)
2056
- result = [val[0].pos, :int ]
2057
- result
2058
- end
2059
- .,.,
2060
-
2061
- module_eval(<<'.,.,', 'cast.y', 164)
2062
- def _reduce_73(val, _values, result)
2063
- result = [val[0].pos, :long ]
2064
- result
2065
- end
2066
- .,.,
2067
-
2068
- module_eval(<<'.,.,', 'cast.y', 165)
2069
- def _reduce_74(val, _values, result)
2070
- result = [val[0].pos, :float ]
2071
- result
2072
- end
2073
- .,.,
2074
-
2075
- module_eval(<<'.,.,', 'cast.y', 166)
2076
- def _reduce_75(val, _values, result)
2077
- result = [val[0].pos, :double ]
2078
- result
2079
- end
2080
- .,.,
2081
-
2082
- module_eval(<<'.,.,', 'cast.y', 167)
2083
- def _reduce_76(val, _values, result)
2084
- result = [val[0].pos, :signed ]
2085
- result
2086
- end
2087
- .,.,
2088
-
2089
- module_eval(<<'.,.,', 'cast.y', 168)
2090
- def _reduce_77(val, _values, result)
2091
- result = [val[0].pos, :unsigned ]
2092
- result
2093
- end
2094
- .,.,
2095
-
2096
- module_eval(<<'.,.,', 'cast.y', 169)
2097
- def _reduce_78(val, _values, result)
2098
- result = [val[0].pos, :_Bool ]
2099
- result
2100
- end
2101
- .,.,
2102
-
2103
- module_eval(<<'.,.,', 'cast.y', 170)
2104
- def _reduce_79(val, _values, result)
2105
- result = [val[0].pos, :_Complex ]
2106
- result
2107
- end
2108
- .,.,
2109
-
2110
- module_eval(<<'.,.,', 'cast.y', 171)
2111
- def _reduce_80(val, _values, result)
2112
- result = [val[0].pos, :_Imaginary]
2113
- result
2114
- end
2115
- .,.,
2116
-
2117
- module_eval(<<'.,.,', 'cast.y', 172)
2118
- def _reduce_81(val, _values, result)
2119
- result = [val[0].pos, val[0] ]
2120
- result
2121
- end
2122
- .,.,
2123
-
2124
- module_eval(<<'.,.,', 'cast.y', 173)
2125
- def _reduce_82(val, _values, result)
2126
- result = [val[0].pos, val[0] ]
2127
- result
2128
- end
2129
- .,.,
2130
-
2131
- module_eval(<<'.,.,', 'cast.y', 174)
2132
- def _reduce_83(val, _values, result)
2133
- result = [val[0].pos, val[0] ]
2134
- result
2135
- end
2136
- .,.,
2137
-
2138
- module_eval(<<'.,.,', 'cast.y', 178)
2139
- def _reduce_84(val, _values, result)
2140
- result = val[0][1].new_at(val[0][0], val[1].val, val[3])
2141
- result
2142
- end
2143
- .,.,
2144
-
2145
- module_eval(<<'.,.,', 'cast.y', 179)
2146
- def _reduce_85(val, _values, result)
2147
- result = val[0][1].new_at(val[0][0], nil , val[2])
2148
- result
2149
- end
2150
- .,.,
2151
-
2152
- module_eval(<<'.,.,', 'cast.y', 180)
2153
- def _reduce_86(val, _values, result)
2154
- result = val[0][1].new_at(val[0][0], val[1].val, nil )
2155
- result
2156
- end
2157
- .,.,
2158
-
2159
- module_eval(<<'.,.,', 'cast.y', 182)
2160
- def _reduce_87(val, _values, result)
2161
- result = val[0][1].new_at(val[0][0], val[1].name, val[3])
2162
- result
2163
- end
2164
- .,.,
2165
-
2166
- module_eval(<<'.,.,', 'cast.y', 183)
2167
- def _reduce_88(val, _values, result)
2168
- result = val[0][1].new_at(val[0][0], val[1].name, nil )
2169
- result
2170
- end
2171
- .,.,
2172
-
2173
- module_eval(<<'.,.,', 'cast.y', 187)
2174
- def _reduce_89(val, _values, result)
2175
- result = [val[0].pos, Struct]
2176
- result
2177
- end
2178
- .,.,
2179
-
2180
- module_eval(<<'.,.,', 'cast.y', 188)
2181
- def _reduce_90(val, _values, result)
2182
- result = [val[0].pos, Union ]
2183
- result
2184
- end
2185
- .,.,
2186
-
2187
- module_eval(<<'.,.,', 'cast.y', 192)
2188
- def _reduce_91(val, _values, result)
2189
- result = NodeArray[val[0]]
2190
- result
2191
- end
2192
- .,.,
2193
-
2194
- module_eval(<<'.,.,', 'cast.y', 193)
2195
- def _reduce_92(val, _values, result)
2196
- val[0] << val[1]; result = val[0]
2197
- result
2198
- end
2199
- .,.,
2200
-
2201
- module_eval(<<'.,.,', 'cast.y', 197)
2202
- def _reduce_93(val, _values, result)
2203
- result = make_declaration(val[0][0], val[0][1], val[1])
2204
- result
2205
- end
2206
- .,.,
2207
-
2208
- module_eval(<<'.,.,', 'cast.y', 201)
2209
- def _reduce_94(val, _values, result)
2210
- val[1][1] << val[0][1]; result = val[1]
2211
- result
2212
- end
2213
- .,.,
2214
-
2215
- module_eval(<<'.,.,', 'cast.y', 202)
2216
- def _reduce_95(val, _values, result)
2217
- result = [val[0][0], [val[0][1]]]
2218
- result
2219
- end
2220
- .,.,
2221
-
2222
- module_eval(<<'.,.,', 'cast.y', 203)
2223
- def _reduce_96(val, _values, result)
2224
- val[1][1] << val[0][1]; result = val[1]
2225
- result
2226
- end
2227
- .,.,
2228
-
2229
- module_eval(<<'.,.,', 'cast.y', 204)
2230
- def _reduce_97(val, _values, result)
2231
- result = [val[0][0], [val[0][1]]]
2232
- result
2233
- end
2234
- .,.,
2235
-
2236
- module_eval(<<'.,.,', 'cast.y', 208)
2237
- def _reduce_98(val, _values, result)
2238
- result = NodeArray[val[0]]
2239
- result
2240
- end
2241
- .,.,
2242
-
2243
- module_eval(<<'.,.,', 'cast.y', 209)
2244
- def _reduce_99(val, _values, result)
2245
- result = val[0] << val[2]
2246
- result
2247
- end
2248
- .,.,
2249
-
2250
- module_eval(<<'.,.,', 'cast.y', 213)
2251
- def _reduce_100(val, _values, result)
2252
- result = val[0]
2253
- result
2254
- end
2255
- .,.,
2256
-
2257
- module_eval(<<'.,.,', 'cast.y', 214)
2258
- def _reduce_101(val, _values, result)
2259
- result = val[0]; val[0].num_bits = val[2]
2260
- result
2261
- end
2262
- .,.,
2263
-
2264
- module_eval(<<'.,.,', 'cast.y', 215)
2265
- def _reduce_102(val, _values, result)
2266
- result = Declarator.new_at(val[0].pos, :num_bits => val[1])
2267
- result
2268
- end
2269
- .,.,
2270
-
2271
- module_eval(<<'.,.,', 'cast.y', 219)
2272
- def _reduce_103(val, _values, result)
2273
- result = Enum.new_at(val[0].pos, val[1].val, val[3])
2274
- result
2275
- end
2276
- .,.,
2277
-
2278
- module_eval(<<'.,.,', 'cast.y', 220)
2279
- def _reduce_104(val, _values, result)
2280
- result = Enum.new_at(val[0].pos, nil , val[2])
2281
- result
2282
- end
2283
- .,.,
2284
-
2285
- module_eval(<<'.,.,', 'cast.y', 221)
2286
- def _reduce_105(val, _values, result)
2287
- result = Enum.new_at(val[0].pos, val[1].val, val[3])
2288
- result
2289
- end
2290
- .,.,
2291
-
2292
- module_eval(<<'.,.,', 'cast.y', 222)
2293
- def _reduce_106(val, _values, result)
2294
- result = Enum.new_at(val[0].pos, nil , val[2])
2295
- result
2296
- end
2297
- .,.,
2298
-
2299
- module_eval(<<'.,.,', 'cast.y', 223)
2300
- def _reduce_107(val, _values, result)
2301
- result = Enum.new_at(val[0].pos, val[1].val, nil )
2302
- result
2303
- end
2304
- .,.,
2305
-
2306
- module_eval(<<'.,.,', 'cast.y', 225)
2307
- def _reduce_108(val, _values, result)
2308
- result = Enum.new_at(val[0].pos, val[1].name, val[3])
2309
- result
2310
- end
2311
- .,.,
2312
-
2313
- module_eval(<<'.,.,', 'cast.y', 226)
2314
- def _reduce_109(val, _values, result)
2315
- result = Enum.new_at(val[0].pos, val[1].name, val[3])
2316
- result
2317
- end
2318
- .,.,
2319
-
2320
- module_eval(<<'.,.,', 'cast.y', 227)
2321
- def _reduce_110(val, _values, result)
2322
- result = Enum.new_at(val[0].pos, val[1].name, nil )
2323
- result
2324
- end
2325
- .,.,
2326
-
2327
- module_eval(<<'.,.,', 'cast.y', 231)
2328
- def _reduce_111(val, _values, result)
2329
- result = NodeArray[val[0]]
2330
- result
2331
- end
2332
- .,.,
2333
-
2334
- module_eval(<<'.,.,', 'cast.y', 232)
2335
- def _reduce_112(val, _values, result)
2336
- result = val[0] << val[2]
2337
- result
2338
- end
2339
- .,.,
2340
-
2341
- module_eval(<<'.,.,', 'cast.y', 236)
2342
- def _reduce_113(val, _values, result)
2343
- result = Enumerator.new_at(val[0].pos, val[0].val, nil )
2344
- result
2345
- end
2346
- .,.,
2347
-
2348
- module_eval(<<'.,.,', 'cast.y', 237)
2349
- def _reduce_114(val, _values, result)
2350
- result = Enumerator.new_at(val[0].pos, val[0].val, val[2])
2351
- result
2352
- end
2353
- .,.,
2354
-
2355
- module_eval(<<'.,.,', 'cast.y', 241)
2356
- def _reduce_115(val, _values, result)
2357
- result = [val[0].pos, :const ]
2358
- result
2359
- end
2360
- .,.,
2361
-
2362
- module_eval(<<'.,.,', 'cast.y', 242)
2363
- def _reduce_116(val, _values, result)
2364
- result = [val[0].pos, :restrict]
2365
- result
2366
- end
2367
- .,.,
2368
-
2369
- module_eval(<<'.,.,', 'cast.y', 243)
2370
- def _reduce_117(val, _values, result)
2371
- result = [val[0].pos, :volatile]
2372
- result
2373
- end
2374
- .,.,
2375
-
2376
- module_eval(<<'.,.,', 'cast.y', 247)
2377
- def _reduce_118(val, _values, result)
2378
- result = [val[0].pos, :inline]
2379
- result
2380
- end
2381
- .,.,
2382
-
2383
- module_eval(<<'.,.,', 'cast.y', 251)
2384
- def _reduce_119(val, _values, result)
2385
- result = add_decl_type(val[1], val[0])
2386
- result
2387
- end
2388
- .,.,
2389
-
2390
- module_eval(<<'.,.,', 'cast.y', 252)
2391
- def _reduce_120(val, _values, result)
2392
- result = val[0]
2393
- result
2394
- end
2395
- .,.,
2396
-
2397
- module_eval(<<'.,.,', 'cast.y', 256)
2398
- def _reduce_121(val, _values, result)
2399
- result = Declarator.new_at(val[0].pos, nil, val[0].val)
2400
- result
2401
- end
2402
- .,.,
2403
-
2404
- module_eval(<<'.,.,', 'cast.y', 257)
2405
- def _reduce_122(val, _values, result)
2406
- result = val[1]
2407
- result
2408
- end
2409
- .,.,
2410
-
2411
- module_eval(<<'.,.,', 'cast.y', 258)
2412
- def _reduce_123(val, _values, result)
2413
- result = add_decl_type(val[0], Array.new_at(val[0].pos ))
2414
- result
2415
- end
2416
- .,.,
2417
-
2418
- module_eval(<<'.,.,', 'cast.y', 259)
2419
- def _reduce_124(val, _values, result)
2420
- result = add_decl_type(val[0], Array.new_at(val[0].pos ))
2421
- result
2422
- end
2423
- .,.,
2424
-
2425
- module_eval(<<'.,.,', 'cast.y', 260)
2426
- def _reduce_125(val, _values, result)
2427
- result = add_decl_type(val[0], Array.new_at(val[0].pos, nil, val[2]))
2428
- result
2429
- end
2430
- .,.,
2431
-
2432
- module_eval(<<'.,.,', 'cast.y', 261)
2433
- def _reduce_126(val, _values, result)
2434
- result = add_decl_type(val[0], Array.new_at(val[0].pos ))
2435
- result
2436
- end
2437
- .,.,
2438
-
2439
- module_eval(<<'.,.,', 'cast.y', 262)
2440
- def _reduce_127(val, _values, result)
2441
- result = add_decl_type(val[0], Array.new_at(val[0].pos ))
2442
- result
2443
- end
2444
- .,.,
2445
-
2446
- module_eval(<<'.,.,', 'cast.y', 263)
2447
- def _reduce_128(val, _values, result)
2448
- result = add_decl_type(val[0], Array.new_at(val[0].pos ))
2449
- result
2450
- end
2451
- .,.,
2452
-
2453
- module_eval(<<'.,.,', 'cast.y', 264)
2454
- def _reduce_129(val, _values, result)
2455
- result = add_decl_type(val[0], Array.new_at(val[0].pos ))
2456
- result
2457
- end
2458
- .,.,
2459
-
2460
- module_eval(<<'.,.,', 'cast.y', 265)
2461
- def _reduce_130(val, _values, result)
2462
- result = add_decl_type(val[0], Array.new_at(val[0].pos ))
2463
- result
2464
- end
2465
- .,.,
2466
-
2467
- module_eval(<<'.,.,', 'cast.y', 266)
2468
- def _reduce_131(val, _values, result)
2469
- result = add_decl_type(val[0], Array.new_at(val[0].pos ))
2470
- result
2471
- end
2472
- .,.,
2473
-
2474
- module_eval(<<'.,.,', 'cast.y', 267)
2475
- def _reduce_132(val, _values, result)
2476
- result = add_decl_type(val[0], Function.new_at(val[0].pos, nil, param_list(*val[2]), :var_args => val[2][1]))
2477
- result
2478
- end
2479
- .,.,
2480
-
2481
- module_eval(<<'.,.,', 'cast.y', 268)
2482
- def _reduce_133(val, _values, result)
2483
- result = add_decl_type(val[0], Function.new_at(val[0].pos, nil, val[2]))
2484
- result
2485
- end
2486
- .,.,
2487
-
2488
- module_eval(<<'.,.,', 'cast.y', 269)
2489
- def _reduce_134(val, _values, result)
2490
- result = add_decl_type(val[0], Function.new_at(val[0].pos ))
2491
- result
2492
- end
2493
- .,.,
2494
-
2495
- module_eval(<<'.,.,', 'cast.y', 273)
2496
- def _reduce_135(val, _values, result)
2497
- result = add_type_quals(Pointer.new_at(val[0].pos), val[1][1])
2498
- result
2499
- end
2500
- .,.,
2501
-
2502
- module_eval(<<'.,.,', 'cast.y', 274)
2503
- def _reduce_136(val, _values, result)
2504
- result = Pointer.new_at(val[0].pos)
2505
- result
2506
- end
2507
- .,.,
2508
-
2509
- module_eval(<<'.,.,', 'cast.y', 275)
2510
- def _reduce_137(val, _values, result)
2511
- p = add_type_quals(Pointer.new_at(val[0].pos), val[1][1]); val[2].direct_type = p; result = val[2]
2512
- result
2513
- end
2514
- .,.,
2515
-
2516
- module_eval(<<'.,.,', 'cast.y', 276)
2517
- def _reduce_138(val, _values, result)
2518
- p = Pointer.new_at(val[0].pos) ; val[1].direct_type = p; result = val[1]
2519
- result
2520
- end
2521
- .,.,
2522
-
2523
- module_eval(<<'.,.,', 'cast.y', 280)
2524
- def _reduce_139(val, _values, result)
2525
- result = [val[0][0], [val[0][1]]]
2526
- result
2527
- end
2528
- .,.,
2529
-
2530
- module_eval(<<'.,.,', 'cast.y', 281)
2531
- def _reduce_140(val, _values, result)
2532
- val[0][1] << val[1][1]; result = val[0]
2533
- result
2534
- end
2535
- .,.,
2536
-
2537
- module_eval(<<'.,.,', 'cast.y', 285)
2538
- def _reduce_141(val, _values, result)
2539
- result = [val[0], false]
2540
- result
2541
- end
2542
- .,.,
2543
-
2544
- module_eval(<<'.,.,', 'cast.y', 286)
2545
- def _reduce_142(val, _values, result)
2546
- result = [val[0], true ]
2547
- result
2548
- end
2549
- .,.,
2550
-
2551
- module_eval(<<'.,.,', 'cast.y', 290)
2552
- def _reduce_143(val, _values, result)
2553
- result = NodeArray[val[0]]
2554
- result
2555
- end
2556
- .,.,
2557
-
2558
- module_eval(<<'.,.,', 'cast.y', 291)
2559
- def _reduce_144(val, _values, result)
2560
- result = val[0] << val[2]
2561
- result
2562
- end
2563
- .,.,
2564
-
2565
- module_eval(<<'.,.,', 'cast.y', 295)
2566
- def _reduce_145(val, _values, result)
2567
- ind_type = val[1].indirect_type and ind_type.detach
2568
- result = make_parameter(val[0][0], val[0][1], ind_type, val[1].name)
2569
- result
2570
- end
2571
- .,.,
2572
-
2573
- module_eval(<<'.,.,', 'cast.y', 297)
2574
- def _reduce_146(val, _values, result)
2575
- result = make_parameter(val[0][0], val[0][1], val[1] , nil )
2576
- result
2577
- end
2578
- .,.,
2579
-
2580
- module_eval(<<'.,.,', 'cast.y', 298)
2581
- def _reduce_147(val, _values, result)
2582
- result = make_parameter(val[0][0], val[0][1], nil , nil )
2583
- result
2584
- end
2585
- .,.,
2586
-
2587
- module_eval(<<'.,.,', 'cast.y', 302)
2588
- def _reduce_148(val, _values, result)
2589
- result = NodeArray[Parameter.new_at(val[0].pos, nil, val[0].val)]
2590
- result
2591
- end
2592
- .,.,
2593
-
2594
- module_eval(<<'.,.,', 'cast.y', 303)
2595
- def _reduce_149(val, _values, result)
2596
- result = val[0] << Parameter.new_at(val[2].pos, nil, val[2].val)
2597
- result
2598
- end
2599
- .,.,
2600
-
2601
- module_eval(<<'.,.,', 'cast.y', 307)
2602
- def _reduce_150(val, _values, result)
2603
- val[1].direct_type = make_direct_type(val[0][0], val[0][1]); result = val[1]
2604
- result
2605
- end
2606
- .,.,
2607
-
2608
- module_eval(<<'.,.,', 'cast.y', 308)
2609
- def _reduce_151(val, _values, result)
2610
- result = make_direct_type(val[0][0], val[0][1])
2611
- result
2612
- end
2613
- .,.,
2614
-
2615
- module_eval(<<'.,.,', 'cast.y', 312)
2616
- def _reduce_152(val, _values, result)
2617
- result = val[0]
2618
- result
2619
- end
2620
- .,.,
2621
-
2622
- module_eval(<<'.,.,', 'cast.y', 313)
2623
- def _reduce_153(val, _values, result)
2624
- val[1].direct_type = val[0]; result = val[1]
2625
- result
2626
- end
2627
- .,.,
2628
-
2629
- module_eval(<<'.,.,', 'cast.y', 314)
2630
- def _reduce_154(val, _values, result)
2631
- result = val[0]
2632
- result
2633
- end
2634
- .,.,
2635
-
2636
- module_eval(<<'.,.,', 'cast.y', 318)
2637
- def _reduce_155(val, _values, result)
2638
- result = val[1]
2639
- result
2640
- end
2641
- .,.,
2642
-
2643
- module_eval(<<'.,.,', 'cast.y', 319)
2644
- def _reduce_156(val, _values, result)
2645
- val[0].direct_type = Array.new_at(val[0].pos, nil, val[2]); result = val[0]
2646
- result
2647
- end
2648
- .,.,
2649
-
2650
- module_eval(<<'.,.,', 'cast.y', 320)
2651
- def _reduce_157(val, _values, result)
2652
- val[0].direct_type = Array.new_at(val[0].pos, nil, nil ); result = val[0]
2653
- result
2654
- end
2655
- .,.,
2656
-
2657
- module_eval(<<'.,.,', 'cast.y', 321)
2658
- def _reduce_158(val, _values, result)
2659
- result = Array.new_at(val[0].pos, nil, val[1])
2660
- result
2661
- end
2662
- .,.,
2663
-
2664
- module_eval(<<'.,.,', 'cast.y', 322)
2665
- def _reduce_159(val, _values, result)
2666
- result = Array.new_at(val[0].pos )
2667
- result
2668
- end
2669
- .,.,
2670
-
2671
- module_eval(<<'.,.,', 'cast.y', 323)
2672
- def _reduce_160(val, _values, result)
2673
- val[0].direct_type = Array.new_at(val[0].pos); result = val[0]
2674
- result
2675
- end
2676
- .,.,
2677
-
2678
- module_eval(<<'.,.,', 'cast.y', 324)
2679
- def _reduce_161(val, _values, result)
2680
- result = Array.new_at(val[0].pos)
2681
- result
2682
- end
2683
- .,.,
2684
-
2685
- module_eval(<<'.,.,', 'cast.y', 325)
2686
- def _reduce_162(val, _values, result)
2687
- val[0].direct_type = Function.new_at(val[0].pos, nil, param_list(*val[2]), val[2][1]); result = val[0]
2688
- result
2689
- end
2690
- .,.,
2691
-
2692
- module_eval(<<'.,.,', 'cast.y', 326)
2693
- def _reduce_163(val, _values, result)
2694
- val[0].direct_type = Function.new_at(val[0].pos ); result = val[0]
2695
- result
2696
- end
2697
- .,.,
2698
-
2699
- module_eval(<<'.,.,', 'cast.y', 327)
2700
- def _reduce_164(val, _values, result)
2701
- result = Function.new_at(val[0].pos, nil, param_list(*val[1]), val[1][1])
2702
- result
2703
- end
2704
- .,.,
2705
-
2706
- module_eval(<<'.,.,', 'cast.y', 328)
2707
- def _reduce_165(val, _values, result)
2708
- result = Function.new_at(val[0].pos )
2709
- result
2710
- end
2711
- .,.,
2712
-
2713
- module_eval(<<'.,.,', 'cast.y', 334)
2714
- def _reduce_166(val, _values, result)
2715
- result = CustomType.new_at(val[0].pos, val[0].val)
2716
- result
2717
- end
2718
- .,.,
2719
-
2720
- module_eval(<<'.,.,', 'cast.y', 338)
2721
- def _reduce_167(val, _values, result)
2722
- result = val[0]
2723
- result
2724
- end
2725
- .,.,
2726
-
2727
- module_eval(<<'.,.,', 'cast.y', 339)
2728
- def _reduce_168(val, _values, result)
2729
- result = CompoundLiteral.new_at(val[0].pos, nil, val[1])
2730
- result
2731
- end
2732
- .,.,
2733
-
2734
- module_eval(<<'.,.,', 'cast.y', 340)
2735
- def _reduce_169(val, _values, result)
2736
- result = CompoundLiteral.new_at(val[0].pos, nil, val[1])
2737
- result
2738
- end
2739
- .,.,
2740
-
2741
- module_eval(<<'.,.,', 'cast.y', 344)
2742
- def _reduce_170(val, _values, result)
2743
- result = NodeArray[MemberInit.new_at(val[0][0] , val[0][1], val[1])]
2744
- result
2745
- end
2746
- .,.,
2747
-
2748
- module_eval(<<'.,.,', 'cast.y', 345)
2749
- def _reduce_171(val, _values, result)
2750
- result = NodeArray[MemberInit.new_at(val[0].pos, nil , val[0])]
2751
- result
2752
- end
2753
- .,.,
2754
-
2755
- module_eval(<<'.,.,', 'cast.y', 346)
2756
- def _reduce_172(val, _values, result)
2757
- result = val[0] << MemberInit.new_at(val[2][0] , val[2][1], val[3])
2758
- result
2759
- end
2760
- .,.,
2761
-
2762
- module_eval(<<'.,.,', 'cast.y', 347)
2763
- def _reduce_173(val, _values, result)
2764
- result = val[0] << MemberInit.new_at(val[2].pos, nil , val[2])
2765
- result
2766
- end
2767
- .,.,
2768
-
2769
- module_eval(<<'.,.,', 'cast.y', 351)
2770
- def _reduce_174(val, _values, result)
2771
- result = val[0]
2772
- result
2773
- end
2774
- .,.,
2775
-
2776
- module_eval(<<'.,.,', 'cast.y', 355)
2777
- def _reduce_175(val, _values, result)
2778
- result = val[0]; val[0][1] = NodeArray[val[0][1]]
2779
- result
2780
- end
2781
- .,.,
2782
-
2783
- module_eval(<<'.,.,', 'cast.y', 356)
2784
- def _reduce_176(val, _values, result)
2785
- result = val[0]; val[0][1] << val[1][1]
2786
- result
2787
- end
2788
- .,.,
2789
-
2790
- module_eval(<<'.,.,', 'cast.y', 360)
2791
- def _reduce_177(val, _values, result)
2792
- result = [val[1].pos, val[1] ]
2793
- result
2794
- end
2795
- .,.,
2796
-
2797
- module_eval(<<'.,.,', 'cast.y', 361)
2798
- def _reduce_178(val, _values, result)
2799
- result = [val[1].pos, Member.new_at(val[1].pos, val[1].val)]
2800
- result
2801
- end
2802
- .,.,
2803
-
2804
- module_eval(<<'.,.,', 'cast.y', 367)
2805
- def _reduce_179(val, _values, result)
2806
- result = Variable.new_at(val[0].pos, val[0].val)
2807
- result
2808
- end
2809
- .,.,
2810
-
2811
- module_eval(<<'.,.,', 'cast.y', 368)
2812
- def _reduce_180(val, _values, result)
2813
- result = val[0]
2814
- result
2815
- end
2816
- .,.,
2817
-
2818
- module_eval(<<'.,.,', 'cast.y', 369)
2819
- def _reduce_181(val, _values, result)
2820
- result = val[0]
2821
- result
2822
- end
2823
- .,.,
2824
-
2825
- module_eval(<<'.,.,', 'cast.y', 371)
2826
- def _reduce_182(val, _values, result)
2827
- result = val[1]
2828
- result
2829
- end
2830
- .,.,
2831
-
2832
- module_eval(<<'.,.,', 'cast.y', 372)
2833
- def _reduce_183(val, _values, result)
2834
- block_expressions_enabled? or parse_error val[0].pos, "compound statement found where expression expected"
2835
- result = BlockExpression.new(val[1]); result.pos = val[0].pos
2836
- result
2837
- end
2838
- .,.,
2839
-
2840
- module_eval(<<'.,.,', 'cast.y', 377)
2841
- def _reduce_184(val, _values, result)
2842
- result = val[0]
2843
- result
2844
- end
2845
- .,.,
2846
-
2847
- module_eval(<<'.,.,', 'cast.y', 378)
2848
- def _reduce_185(val, _values, result)
2849
- result = Index .new_at(val[0].pos, val[0], val[2])
2850
- result
2851
- end
2852
- .,.,
2853
-
2854
- module_eval(<<'.,.,', 'cast.y', 379)
2855
- def _reduce_186(val, _values, result)
2856
- result = Call .new_at(val[0].pos, val[0], val[2] )
2857
- result
2858
- end
2859
- .,.,
2860
-
2861
- module_eval(<<'.,.,', 'cast.y', 380)
2862
- def _reduce_187(val, _values, result)
2863
- result = Call .new_at(val[0].pos, val[0], NodeArray[])
2864
- result
2865
- end
2866
- .,.,
2867
-
2868
- module_eval(<<'.,.,', 'cast.y', 381)
2869
- def _reduce_188(val, _values, result)
2870
- result = Dot .new_at(val[0].pos, val[0], Member.new(val[2].val))
2871
- result
2872
- end
2873
- .,.,
2874
-
2875
- module_eval(<<'.,.,', 'cast.y', 382)
2876
- def _reduce_189(val, _values, result)
2877
- result = Arrow .new_at(val[0].pos, val[0], Member.new(val[2].val))
2878
- result
2879
- end
2880
- .,.,
2881
-
2882
- module_eval(<<'.,.,', 'cast.y', 383)
2883
- def _reduce_190(val, _values, result)
2884
- result = PostInc .new_at(val[0].pos, val[0] )
2885
- result
2886
- end
2887
- .,.,
2888
-
2889
- module_eval(<<'.,.,', 'cast.y', 384)
2890
- def _reduce_191(val, _values, result)
2891
- result = PostDec .new_at(val[0].pos, val[0] )
2892
- result
2893
- end
2894
- .,.,
2895
-
2896
- module_eval(<<'.,.,', 'cast.y', 385)
2897
- def _reduce_192(val, _values, result)
2898
- result = CompoundLiteral.new_at(val[0].pos, val[1], val[4])
2899
- result
2900
- end
2901
- .,.,
2902
-
2903
- module_eval(<<'.,.,', 'cast.y', 386)
2904
- def _reduce_193(val, _values, result)
2905
- result = CompoundLiteral.new_at(val[0].pos, val[1], val[4])
2906
- result
2907
- end
2908
- .,.,
2909
-
2910
- module_eval(<<'.,.,', 'cast.y', 390)
2911
- def _reduce_194(val, _values, result)
2912
- result = NodeArray[val[0]]
2913
- result
2914
- end
2915
- .,.,
2916
-
2917
- module_eval(<<'.,.,', 'cast.y', 391)
2918
- def _reduce_195(val, _values, result)
2919
- result = val[0] << val[2]
2920
- result
2921
- end
2922
- .,.,
2923
-
2924
- module_eval(<<'.,.,', 'cast.y', 395)
2925
- def _reduce_196(val, _values, result)
2926
- result = val[0]
2927
- result
2928
- end
2929
- .,.,
2930
-
2931
- module_eval(<<'.,.,', 'cast.y', 396)
2932
- def _reduce_197(val, _values, result)
2933
- result = val[0]
2934
- result
2935
- end
2936
- .,.,
2937
-
2938
- module_eval(<<'.,.,', 'cast.y', 400)
2939
- def _reduce_198(val, _values, result)
2940
- result = val[0]
2941
- result
2942
- end
2943
- .,.,
2944
-
2945
- module_eval(<<'.,.,', 'cast.y', 401)
2946
- def _reduce_199(val, _values, result)
2947
- result = PreInc.new_at(val[0].pos, val[1])
2948
- result
2949
- end
2950
- .,.,
2951
-
2952
- module_eval(<<'.,.,', 'cast.y', 402)
2953
- def _reduce_200(val, _values, result)
2954
- result = PreDec.new_at(val[0].pos, val[1])
2955
- result
2956
- end
2957
- .,.,
2958
-
2959
- module_eval(<<'.,.,', 'cast.y', 403)
2960
- def _reduce_201(val, _values, result)
2961
- result = val[0][0].new_at(val[0][1], val[1])
2962
- result
2963
- end
2964
- .,.,
2965
-
2966
- module_eval(<<'.,.,', 'cast.y', 404)
2967
- def _reduce_202(val, _values, result)
2968
- result = Sizeof.new_at(val[0].pos, val[1])
2969
- result
2970
- end
2971
- .,.,
2972
-
2973
- module_eval(<<'.,.,', 'cast.y', 405)
2974
- def _reduce_203(val, _values, result)
2975
- result = Sizeof.new_at(val[0].pos, val[2])
2976
- result
2977
- end
2978
- .,.,
2979
-
2980
- module_eval(<<'.,.,', 'cast.y', 409)
2981
- def _reduce_204(val, _values, result)
2982
- result = [Address , val[0].pos]
2983
- result
2984
- end
2985
- .,.,
2986
-
2987
- module_eval(<<'.,.,', 'cast.y', 410)
2988
- def _reduce_205(val, _values, result)
2989
- result = [Dereference, val[0].pos]
2990
- result
2991
- end
2992
- .,.,
2993
-
2994
- module_eval(<<'.,.,', 'cast.y', 411)
2995
- def _reduce_206(val, _values, result)
2996
- result = [Positive , val[0].pos]
2997
- result
2998
- end
2999
- .,.,
3000
-
3001
- module_eval(<<'.,.,', 'cast.y', 412)
3002
- def _reduce_207(val, _values, result)
3003
- result = [Negative , val[0].pos]
3004
- result
3005
- end
3006
- .,.,
3007
-
3008
- module_eval(<<'.,.,', 'cast.y', 413)
3009
- def _reduce_208(val, _values, result)
3010
- result = [BitNot , val[0].pos]
3011
- result
3012
- end
3013
- .,.,
3014
-
3015
- module_eval(<<'.,.,', 'cast.y', 414)
3016
- def _reduce_209(val, _values, result)
3017
- result = [Not , val[0].pos]
3018
- result
3019
- end
3020
- .,.,
3021
-
3022
- module_eval(<<'.,.,', 'cast.y', 418)
3023
- def _reduce_210(val, _values, result)
3024
- result = val[0]
3025
- result
3026
- end
3027
- .,.,
3028
-
3029
- module_eval(<<'.,.,', 'cast.y', 419)
3030
- def _reduce_211(val, _values, result)
3031
- result = Cast.new_at(val[0].pos, val[1], val[3])
3032
- result
3033
- end
3034
- .,.,
3035
-
3036
- module_eval(<<'.,.,', 'cast.y', 423)
3037
- def _reduce_212(val, _values, result)
3038
- result = val[0]
3039
- result
3040
- end
3041
- .,.,
3042
-
3043
- module_eval(<<'.,.,', 'cast.y', 424)
3044
- def _reduce_213(val, _values, result)
3045
- result = Multiply.new_at(val[0].pos, val[0], val[2])
3046
- result
3047
- end
3048
- .,.,
3049
-
3050
- module_eval(<<'.,.,', 'cast.y', 425)
3051
- def _reduce_214(val, _values, result)
3052
- result = Divide .new_at(val[0].pos, val[0], val[2])
3053
- result
3054
- end
3055
- .,.,
3056
-
3057
- module_eval(<<'.,.,', 'cast.y', 426)
3058
- def _reduce_215(val, _values, result)
3059
- result = Mod .new_at(val[0].pos, val[0], val[2])
3060
- result
3061
- end
3062
- .,.,
3063
-
3064
- module_eval(<<'.,.,', 'cast.y', 430)
3065
- def _reduce_216(val, _values, result)
3066
- result = val[0]
3067
- result
3068
- end
3069
- .,.,
3070
-
3071
- module_eval(<<'.,.,', 'cast.y', 431)
3072
- def _reduce_217(val, _values, result)
3073
- result = Add .new_at(val[0].pos, val[0], val[2])
3074
- result
3075
- end
3076
- .,.,
3077
-
3078
- module_eval(<<'.,.,', 'cast.y', 432)
3079
- def _reduce_218(val, _values, result)
3080
- result = Subtract.new_at(val[0].pos, val[0], val[2])
3081
- result
3082
- end
3083
- .,.,
3084
-
3085
- module_eval(<<'.,.,', 'cast.y', 436)
3086
- def _reduce_219(val, _values, result)
3087
- result = val[0]
3088
- result
3089
- end
3090
- .,.,
3091
-
3092
- module_eval(<<'.,.,', 'cast.y', 437)
3093
- def _reduce_220(val, _values, result)
3094
- result = ShiftLeft .new_at(val[0].pos, val[0], val[2])
3095
- result
3096
- end
3097
- .,.,
3098
-
3099
- module_eval(<<'.,.,', 'cast.y', 438)
3100
- def _reduce_221(val, _values, result)
3101
- result = ShiftRight.new_at(val[0].pos, val[0], val[2])
3102
- result
3103
- end
3104
- .,.,
3105
-
3106
- module_eval(<<'.,.,', 'cast.y', 442)
3107
- def _reduce_222(val, _values, result)
3108
- result = val[0]
3109
- result
3110
- end
3111
- .,.,
3112
-
3113
- module_eval(<<'.,.,', 'cast.y', 443)
3114
- def _reduce_223(val, _values, result)
3115
- result = Less.new_at(val[0].pos, val[0], val[2])
3116
- result
3117
- end
3118
- .,.,
3119
-
3120
- module_eval(<<'.,.,', 'cast.y', 444)
3121
- def _reduce_224(val, _values, result)
3122
- result = More.new_at(val[0].pos, val[0], val[2])
3123
- result
3124
- end
3125
- .,.,
3126
-
3127
- module_eval(<<'.,.,', 'cast.y', 445)
3128
- def _reduce_225(val, _values, result)
3129
- result = LessOrEqual.new_at(val[0].pos, val[0], val[2])
3130
- result
3131
- end
3132
- .,.,
3133
-
3134
- module_eval(<<'.,.,', 'cast.y', 446)
3135
- def _reduce_226(val, _values, result)
3136
- result = MoreOrEqual.new_at(val[0].pos, val[0], val[2])
3137
- result
3138
- end
3139
- .,.,
3140
-
3141
- module_eval(<<'.,.,', 'cast.y', 450)
3142
- def _reduce_227(val, _values, result)
3143
- result = val[0]
3144
- result
3145
- end
3146
- .,.,
3147
-
3148
- module_eval(<<'.,.,', 'cast.y', 451)
3149
- def _reduce_228(val, _values, result)
3150
- result = Equal .new_at(val[0].pos, val[0], val[2])
3151
- result
3152
- end
3153
- .,.,
3154
-
3155
- module_eval(<<'.,.,', 'cast.y', 452)
3156
- def _reduce_229(val, _values, result)
3157
- result = NotEqual.new_at(val[0].pos, val[0], val[2])
3158
- result
3159
- end
3160
- .,.,
3161
-
3162
- module_eval(<<'.,.,', 'cast.y', 456)
3163
- def _reduce_230(val, _values, result)
3164
- result = val[0]
3165
- result
3166
- end
3167
- .,.,
3168
-
3169
- module_eval(<<'.,.,', 'cast.y', 457)
3170
- def _reduce_231(val, _values, result)
3171
- result = BitAnd.new_at(val[0].pos, val[0], val[2])
3172
- result
3173
- end
3174
- .,.,
3175
-
3176
- module_eval(<<'.,.,', 'cast.y', 461)
3177
- def _reduce_232(val, _values, result)
3178
- result = val[0]
3179
- result
3180
- end
3181
- .,.,
3182
-
3183
- module_eval(<<'.,.,', 'cast.y', 462)
3184
- def _reduce_233(val, _values, result)
3185
- result = BitXor.new_at(val[0].pos, val[0], val[2])
3186
- result
3187
- end
3188
- .,.,
3189
-
3190
- module_eval(<<'.,.,', 'cast.y', 466)
3191
- def _reduce_234(val, _values, result)
3192
- result = val[0]
3193
- result
3194
- end
3195
- .,.,
3196
-
3197
- module_eval(<<'.,.,', 'cast.y', 467)
3198
- def _reduce_235(val, _values, result)
3199
- result = BitOr.new_at(val[0].pos, val[0], val[2])
3200
- result
3201
- end
3202
- .,.,
3203
-
3204
- module_eval(<<'.,.,', 'cast.y', 471)
3205
- def _reduce_236(val, _values, result)
3206
- result = val[0]
3207
- result
3208
- end
3209
- .,.,
3210
-
3211
- module_eval(<<'.,.,', 'cast.y', 472)
3212
- def _reduce_237(val, _values, result)
3213
- result = And.new_at(val[0].pos, val[0], val[2])
3214
- result
3215
- end
3216
- .,.,
3217
-
3218
- module_eval(<<'.,.,', 'cast.y', 476)
3219
- def _reduce_238(val, _values, result)
3220
- result = val[0]
3221
- result
3222
- end
3223
- .,.,
3224
-
3225
- module_eval(<<'.,.,', 'cast.y', 477)
3226
- def _reduce_239(val, _values, result)
3227
- result = Or.new_at(val[0].pos, val[0], val[2])
3228
- result
3229
- end
3230
- .,.,
3231
-
3232
- module_eval(<<'.,.,', 'cast.y', 481)
3233
- def _reduce_240(val, _values, result)
3234
- result = val[0]
3235
- result
3236
- end
3237
- .,.,
3238
-
3239
- module_eval(<<'.,.,', 'cast.y', 482)
3240
- def _reduce_241(val, _values, result)
3241
- result = Conditional.new_at(val[0].pos, val[0], val[2], val[4])
3242
- result
3243
- end
3244
- .,.,
3245
-
3246
- module_eval(<<'.,.,', 'cast.y', 486)
3247
- def _reduce_242(val, _values, result)
3248
- result = val[0]
3249
- result
3250
- end
3251
- .,.,
3252
-
3253
- module_eval(<<'.,.,', 'cast.y', 487)
3254
- def _reduce_243(val, _values, result)
3255
- result = val[1].new_at(val[0].pos, val[0], val[2])
3256
- result
3257
- end
3258
- .,.,
3259
-
3260
- module_eval(<<'.,.,', 'cast.y', 491)
3261
- def _reduce_244(val, _values, result)
3262
- result = Assign
3263
- result
3264
- end
3265
- .,.,
3266
-
3267
- module_eval(<<'.,.,', 'cast.y', 492)
3268
- def _reduce_245(val, _values, result)
3269
- result = MultiplyAssign
3270
- result
3271
- end
3272
- .,.,
3273
-
3274
- module_eval(<<'.,.,', 'cast.y', 493)
3275
- def _reduce_246(val, _values, result)
3276
- result = DivideAssign
3277
- result
3278
- end
3279
- .,.,
3280
-
3281
- module_eval(<<'.,.,', 'cast.y', 494)
3282
- def _reduce_247(val, _values, result)
3283
- result = ModAssign
3284
- result
3285
- end
3286
- .,.,
3287
-
3288
- module_eval(<<'.,.,', 'cast.y', 495)
3289
- def _reduce_248(val, _values, result)
3290
- result = AddAssign
3291
- result
3292
- end
3293
- .,.,
3294
-
3295
- module_eval(<<'.,.,', 'cast.y', 496)
3296
- def _reduce_249(val, _values, result)
3297
- result = SubtractAssign
3298
- result
3299
- end
3300
- .,.,
3301
-
3302
- module_eval(<<'.,.,', 'cast.y', 497)
3303
- def _reduce_250(val, _values, result)
3304
- result = ShiftLeftAssign
3305
- result
3306
- end
3307
- .,.,
3308
-
3309
- module_eval(<<'.,.,', 'cast.y', 498)
3310
- def _reduce_251(val, _values, result)
3311
- result = ShiftRightAssign
3312
- result
3313
- end
3314
- .,.,
3315
-
3316
- module_eval(<<'.,.,', 'cast.y', 499)
3317
- def _reduce_252(val, _values, result)
3318
- result = BitAndAssign
3319
- result
3320
- end
3321
- .,.,
3322
-
3323
- module_eval(<<'.,.,', 'cast.y', 500)
3324
- def _reduce_253(val, _values, result)
3325
- result = BitXorAssign
3326
- result
3327
- end
3328
- .,.,
3329
-
3330
- module_eval(<<'.,.,', 'cast.y', 501)
3331
- def _reduce_254(val, _values, result)
3332
- result = BitOrAssign
3333
- result
3334
- end
3335
- .,.,
3336
-
3337
- module_eval(<<'.,.,', 'cast.y', 505)
3338
- def _reduce_255(val, _values, result)
3339
- result = val[0]
3340
- result
3341
- end
3342
- .,.,
3343
-
3344
- module_eval(<<'.,.,', 'cast.y', 507)
3345
- def _reduce_256(val, _values, result)
3346
- if val[0].is_a? Comma
3347
- if val[2].is_a? Comma
3348
- val[0].exprs.push(*val[2].exprs)
3349
- else
3350
- val[0].exprs << val[2]
3351
- end
3352
- result = val[0]
3353
- else
3354
- if val[2].is_a? Comma
3355
- val[2].exprs.unshift(val[0])
3356
- val[2].pos = val[0].pos
3357
- result = val[2]
3358
- else
3359
- result = Comma.new_at(val[0].pos, NodeArray[val[0], val[2]])
3360
- end
3361
- end
3362
-
3363
- result
3364
- end
3365
- .,.,
3366
-
3367
- module_eval(<<'.,.,', 'cast.y', 527)
3368
- def _reduce_257(val, _values, result)
3369
- result = val[0]
3370
- result
3371
- end
3372
- .,.,
3373
-
3374
- module_eval(<<'.,.,', 'cast.y', 542)
3375
- def _reduce_258(val, _values, result)
3376
- result = val[0]
3377
- result
3378
- end
3379
- .,.,
3380
-
3381
- module_eval(<<'.,.,', 'cast.y', 546)
3382
- def _reduce_259(val, _values, result)
3383
- result = val[0].val; result.pos = val[0].pos
3384
- result
3385
- end
3386
- .,.,
3387
-
3388
- module_eval(<<'.,.,', 'cast.y', 547)
3389
- def _reduce_260(val, _values, result)
3390
- result = val[0].val; result.pos = val[0].pos
3391
- result
3392
- end
3393
- .,.,
3394
-
3395
- module_eval(<<'.,.,', 'cast.y', 550)
3396
- def _reduce_261(val, _values, result)
3397
- result = val[0].val; result.pos = val[0].pos
3398
- result
3399
- end
3400
- .,.,
3401
-
3402
- module_eval(<<'.,.,', 'cast.y', 554)
3403
- def _reduce_262(val, _values, result)
3404
- result = val[0]
3405
- result
3406
- end
3407
- .,.,
3408
-
3409
- module_eval(<<'.,.,', 'cast.y', 559)
3410
- def _reduce_263(val, _values, result)
3411
- val[0].val << val[1].val.val; result = val[0]
3412
- result
3413
- end
3414
- .,.,
3415
-
3416
- module_eval(<<'.,.,', 'cast.y', 560)
3417
- def _reduce_264(val, _values, result)
3418
- result = val[0].val; result.pos = val[0].pos
3419
- result
3420
- end
3421
- .,.,
3422
-
3423
- def _reduce_none(val, _values, result)
3424
- val[0]
3425
- end
3426
-
3427
- end # class Parser
3428
- end # module C