adlint 3.0.8 → 3.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. data/ChangeLog +295 -0
  2. data/MANIFEST +9 -0
  3. data/NEWS +25 -4
  4. data/etc/mesg.d/c_builtin/en_US/messages.yml +1 -1
  5. data/etc/mesg.d/c_builtin/ja_JP/messages.yml +1 -1
  6. data/etc/mesg.d/core/en_US/messages.yml +1 -1
  7. data/etc/mesg.d/core/ja_JP/messages.yml +1 -1
  8. data/features/code_check/E0008.feature +20 -0
  9. data/features/code_check/W0093.feature +1 -1
  10. data/features/code_check/W0097.feature +30 -0
  11. data/features/code_check/W0100.feature +66 -0
  12. data/features/code_check/W0422.feature +157 -0
  13. data/features/code_check/W0459.feature +118 -0
  14. data/features/code_check/W0461.feature +115 -0
  15. data/features/code_check/W0610.feature +59 -0
  16. data/features/code_check/W0612.feature +29 -0
  17. data/features/code_check/W0613.feature +33 -0
  18. data/features/code_check/W0704.feature +25 -0
  19. data/features/code_check/W0705.feature +33 -0
  20. data/features/code_check/W1050.feature +43 -0
  21. data/features/code_check/W1071.feature +30 -0
  22. data/features/code_check/W9001.feature +24 -0
  23. data/lib/adlint/cc1/branch.rb +32 -9
  24. data/lib/adlint/cc1/builtin.rb +2 -2
  25. data/lib/adlint/cc1/conv.rb +33 -33
  26. data/lib/adlint/cc1/ctrlexpr.rb +30 -30
  27. data/lib/adlint/cc1/domain.rb +12 -4
  28. data/lib/adlint/cc1/environ.rb +2 -1
  29. data/lib/adlint/cc1/expr.rb +135 -125
  30. data/lib/adlint/cc1/format.rb +3 -3
  31. data/lib/adlint/cc1/interp.rb +123 -109
  32. data/lib/adlint/cc1/lexer.rb +44 -40
  33. data/lib/adlint/cc1/mediator.rb +2 -2
  34. data/lib/adlint/cc1/object.rb +121 -36
  35. data/lib/adlint/cc1/option.rb +1 -0
  36. data/lib/adlint/cc1/parser.rb +874 -845
  37. data/lib/adlint/cc1/parser.y +22 -2
  38. data/lib/adlint/cc1/syntax.rb +37 -18
  39. data/lib/adlint/cc1/type.rb +3 -3
  40. data/lib/adlint/cc1/value.rb +58 -50
  41. data/lib/adlint/cpp/lexer.rb +5 -1
  42. data/lib/adlint/cpp/macro.rb +30 -30
  43. data/lib/adlint/cpp/subst.rb +4 -4
  44. data/lib/adlint/exam/c_builtin/cc1_check.rb +172 -172
  45. data/lib/adlint/exam/c_builtin/cc1_check_shima.rb +11 -11
  46. data/lib/adlint/exam/c_builtin/cpp_check.rb +2 -2
  47. data/lib/adlint/memo.rb +13 -13
  48. data/lib/adlint/prelude.rb +2 -2
  49. data/lib/adlint/version.rb +2 -2
  50. data/share/doc/developers_guide_ja.html +7 -5
  51. data/share/doc/developers_guide_ja.texi +5 -3
  52. data/share/doc/users_guide_en.html +3 -3
  53. data/share/doc/users_guide_en.texi +1 -1
  54. data/share/doc/users_guide_ja.html +3 -3
  55. data/share/doc/users_guide_ja.texi +1 -1
  56. metadata +11 -2
@@ -42,8 +42,7 @@ module Cc1 #:nodoc:
42
42
  super(pp_src.pp_tokens)
43
43
  @lst_tok = nil
44
44
  @nxt_tok = nil
45
- @typedef_names = ScopedNameSet.new
46
- @object_names = ScopedNameSet.new
45
+ @ordinary_identifiers = OrdinaryIdentifiers.new
47
46
  @identifier_translation = true
48
47
  end
49
48
 
@@ -51,23 +50,13 @@ module Cc1 #:nodoc:
51
50
 
52
51
  def_plugin :on_string_literals_concatenated
53
52
 
54
- def add_typedef_name(tok)
55
- @typedef_names.add(tok.value)
56
- end
53
+ extend Forwardable
57
54
 
58
- def add_object_name(tok)
59
- @object_names.add(tok.value)
60
- end
61
-
62
- def enter_scope
63
- @typedef_names.enter_scope
64
- @object_names.enter_scope
65
- end
66
-
67
- def leave_scope
68
- @typedef_names.leave_scope
69
- @object_names.leave_scope
70
- end
55
+ def_delegator :@ordinary_identifiers, :add_typedef_name
56
+ def_delegator :@ordinary_identifiers, :add_object_name
57
+ def_delegator :@ordinary_identifiers, :add_enumerator_name
58
+ def_delegator :@ordinary_identifiers, :enter_scope
59
+ def_delegator :@ordinary_identifiers, :leave_scope
71
60
 
72
61
  def enable_identifier_translation
73
62
  @identifier_translation = true
@@ -142,12 +131,12 @@ module Cc1 #:nodoc:
142
131
 
143
132
  if @identifier_translation
144
133
  if tok.type == :IDENTIFIER
145
- return tok if @object_names.include?(tok.value)
146
- if @typedef_names.include?(tok.value)
134
+ id_type = @ordinary_identifiers.find(tok.value)
135
+ if id_type == :typedef
147
136
  unless @lst_tok and
148
137
  @lst_tok.type == :STRUCT || @lst_tok.type == :UNION ||
149
- @lst_tok.type == :ENUM ||
150
- @lst_tok.type == "->" || @lst_tok.type == "."
138
+ @lst_tok.type == :ENUM ||
139
+ @lst_tok.type == "->" || @lst_tok.type == "."
151
140
  tok = tok.class.new(:TYPEDEF_NAME, tok.value, tok.location)
152
141
  end
153
142
  end
@@ -160,11 +149,11 @@ module Cc1 #:nodoc:
160
149
  until lexer_ctxt.content.empty?
161
150
  nxt_tok = tokenize(lexer_ctxt)
162
151
  if nxt_tok.type == :STRING_LITERAL
163
- res_tok = tok.class.new(tok.type, tok.value.sub(/"\z/, "") +
164
- nxt_tok.value.sub(/\AL?"/, ""),
165
- tok.location)
166
- notify_string_literals_concatenated(tok, nxt_tok, res_tok)
167
- return res_tok
152
+ rslt_tok = tok.class.new(tok.type, tok.value.sub(/"\z/, "") +
153
+ nxt_tok.value.sub(/\AL?"/, ""),
154
+ tok.location)
155
+ notify_string_literals_concatenated(tok, nxt_tok, rslt_tok)
156
+ return rslt_tok
168
157
  else
169
158
  @nxt_tok = nxt_tok
170
159
  break
@@ -233,33 +222,48 @@ module Cc1 #:nodoc:
233
222
  end
234
223
  end
235
224
 
236
- def notify_string_literals_concatenated(former, latter, res_tok)
237
- on_string_literals_concatenated.invoke(former, latter, res_tok)
225
+ def notify_string_literals_concatenated(former, latter, rslt_tok)
226
+ on_string_literals_concatenated.invoke(former, latter, rslt_tok)
238
227
  end
239
228
  end
240
229
 
241
- class ScopedNameSet
230
+ class OrdinaryIdentifiers
242
231
  def initialize
243
- @name_stack = [Set.new]
244
- @scope_stack = [GlobalScope.new]
232
+ @id_stack = [[]]
245
233
  end
246
234
 
247
235
  def enter_scope
248
- @name_stack.push(Set.new)
249
- @scope_stack.push(Scope.new(@scope_stack.size))
236
+ @id_stack.unshift([])
250
237
  end
251
238
 
252
239
  def leave_scope
253
- @name_stack.pop
254
- @scope_stack.pop
240
+ @id_stack.shift
255
241
  end
256
242
 
257
- def add(name)
258
- @name_stack.last.add(name)
243
+ def add_typedef_name(tok)
244
+ add(tok.value, :typedef)
259
245
  end
260
246
 
261
- def include?(name)
262
- @name_stack.any? { |set| set.include?(name) }
247
+ def add_object_name(tok)
248
+ add(tok.value, :object)
249
+ end
250
+
251
+ def add_enumerator_name(tok)
252
+ add(tok.value, :enumerator)
253
+ end
254
+
255
+ def find(id_str)
256
+ @id_stack.each do |id_ary|
257
+ if pair = id_ary.assoc(id_str)
258
+ return pair.last
259
+ end
260
+ end
261
+ nil
262
+ end
263
+
264
+ private
265
+ def add(id_str, tag)
266
+ @id_stack.first.unshift([id_str, tag])
263
267
  end
264
268
  end
265
269
 
@@ -75,8 +75,8 @@ module Cc1 #:nodoc:
75
75
  # mem = memory_at(addr) ? mem.binding.object : nil
76
76
  # }.compact
77
77
 
78
- ptr.value.to_enum.each do |addr|
79
- if mem = memory_at(addr)
78
+ if ptr.value.definite?
79
+ if addr = ptr.value.to_enum.first and mem = memory_at(addr)
80
80
  obj = mem.binding.object
81
81
  if obj.variable? or
82
82
  obj.function? && ptr.type.unqualify.base_type.function?
@@ -257,13 +257,23 @@ module Cc1 #:nodoc:
257
257
 
258
258
  def narrow_value_domain!(op, val)
259
259
  assign!(type.arbitrary_value) unless self.value
260
+
260
261
  self.value.narrow_domain!(op, val.coerce_to(type))
262
+ # NOTE: Write via memory to correctly propagate inner variable's
263
+ # mutation to its outer variable.
264
+ binding.memory._cascade_update
265
+
261
266
  self.value.exist?
262
267
  end
263
268
 
264
269
  def widen_value_domain!(op, val)
265
270
  assign!(type.nil_value) unless self.value
271
+
266
272
  self.value.widen_domain!(op, val.coerce_to(type))
273
+ # NOTE: Write via memory to correctly propagate inner variable's
274
+ # mutation to its outer variable.
275
+ binding.memory._cascade_update
276
+
267
277
  self.value.exist?
268
278
  end
269
279
 
@@ -328,60 +338,93 @@ module Cc1 #:nodoc:
328
338
  super(mem, dcl_or_def, type, scope)
329
339
  # TODO: If too slow, make an index of inner variables.
330
340
  @inner_variables = create_inner_variables(type.unqualify, scope)
341
+ @representative_element = create_representative_element(type.unqualify)
331
342
  end
332
343
 
333
- def enter_value_versioning_group
344
+ attr_reader :representative_element
345
+
346
+ def assign!(val)
334
347
  super
348
+ if @representative_element
349
+ repr_type = @representative_element.type
350
+ if val.undefined?
351
+ @representative_element.assign!(repr_type.undefined_value)
352
+ else
353
+ @representative_element.assign!(repr_type.arbitrary_value)
354
+ end
355
+ end
356
+ end
357
+
358
+ def enter_value_versioning_group
335
359
  if @inner_variables
336
360
  @inner_variables.each do |inner|
337
361
  inner.enter_value_versioning_group
338
362
  end
339
363
  end
364
+ super
365
+ if @representative_element
366
+ @representative_element.enter_value_versioning_group
367
+ end
340
368
  end
341
369
 
342
370
  def leave_value_versioning_group(raise_complement)
343
- super
344
371
  if @inner_variables
345
372
  @inner_variables.each do |inner|
346
373
  inner.leave_value_versioning_group(raise_complement)
347
374
  end
348
375
  end
376
+ super
377
+ if @representative_element
378
+ @representative_element.leave_value_versioning_group(raise_complement)
379
+ end
349
380
  end
350
381
 
351
382
  def begin_value_versioning
352
- super
353
383
  if @inner_variables
354
384
  @inner_variables.each do |inner|
355
385
  inner.begin_value_versioning
356
386
  end
357
387
  end
388
+ super
389
+ if @representative_element
390
+ @representative_element.begin_value_versioning
391
+ end
358
392
  end
359
393
 
360
394
  def end_value_versioning
361
- super
362
395
  if @inner_variables
363
396
  @inner_variables.each do |inner|
364
397
  inner.end_value_versioning
365
398
  end
366
399
  end
400
+ super
401
+ if @representative_element
402
+ @representative_element.end_value_versioning
403
+ end
367
404
  end
368
405
 
369
- def rollback_latest_value_version!
370
- super
406
+ def thin_latest_value_version!(with_rollback)
371
407
  if @inner_variables
372
408
  @inner_variables.each do |inner|
373
- inner.rollback_latest_value_version!
409
+ inner.thin_latest_value_version!(with_rollback)
374
410
  end
375
411
  end
412
+ super
413
+ if @representative_element
414
+ @representative_element.thin_latest_value_version!(with_rollback)
415
+ end
376
416
  end
377
417
 
378
418
  def rollback_all_value_versions!
379
- super
380
419
  if @inner_variables
381
420
  @inner_variables.each do |inner|
382
421
  inner.rollback_all_value_versions!
383
422
  end
384
423
  end
424
+ super
425
+ if @representative_element
426
+ @representative_element.rollback_all_value_versions!
427
+ end
385
428
  end
386
429
 
387
430
  def inner?
@@ -439,6 +482,17 @@ module Cc1 #:nodoc:
439
482
  CompositeMemberVariable.new(win, self, memb.type, memb.name)
440
483
  end
441
484
  end
485
+
486
+ def create_representative_element(type)
487
+ if type.array?
488
+ mem = binding.memory.create_unmapped_window
489
+ ArrayElementVariable.new(mem, self, type.base_type, 0).tap do |var|
490
+ var.assign!(type.base_type.undefined_value)
491
+ end
492
+ else
493
+ nil
494
+ end
495
+ end
442
496
  end
443
497
 
444
498
  module Nameable
@@ -644,9 +698,9 @@ module Cc1 #:nodoc:
644
698
  end
645
699
 
646
700
  def define(dcl_or_def, init_val = nil)
647
- if storage_duration_of(dcl_or_def) == :static
648
- # NOTE: Value of the static duration object should be arbitrary because
649
- # execution of its accessors are out of order.
701
+ if storage_duration_of(dcl_or_def) == :static && !dcl_or_def.type.const?
702
+ # NOTE: Value of the inconstant static duration variable should be
703
+ # arbitrary because execution of its accessors are out of order.
650
704
  # So, a value of the initializer should be ignored.
651
705
  init_val = dcl_or_def.type.arbitrary_value
652
706
  else
@@ -656,7 +710,10 @@ module Cc1 #:nodoc:
656
710
  if var = lookup(dcl_or_def.identifier.value)
657
711
  if var.scope == current_scope
658
712
  var.declarations_and_definitions.push(dcl_or_def)
659
- var.assign!(init_val)
713
+ var.value.force_overwrite!(init_val.coerce_to(var.type))
714
+ if repr_elem = var.representative_element
715
+ repr_elem.value.force_overwrite!(repr_elem.type.arbitrary_value)
716
+ end
660
717
  return var
661
718
  end
662
719
  end
@@ -813,6 +870,8 @@ module Cc1 #:nodoc:
813
870
 
814
871
  def rollback_all_global_variables_value!
815
872
  @named_variables.first.each_value do |var|
873
+ # NOTE: Rollback effects recorded to global variables because execution
874
+ # of its accessors are out of order.
816
875
  var.rollback_all_value_versions!
817
876
  end
818
877
  end
@@ -1121,6 +1180,12 @@ module Cc1 #:nodoc:
1121
1180
  @value = VersionedValue.new(val)
1122
1181
  end
1123
1182
  end
1183
+
1184
+ def _cascade_update
1185
+ # NOTE: This method will be called only from # #narrow_value_domain! and
1186
+ # #widen_value_domain! of Variable to propagate memory mutation to
1187
+ # the upper MemoryBlock from MemoryWindow.
1188
+ end
1124
1189
  end
1125
1190
 
1126
1191
  class MemoryBlock < Memory
@@ -1132,19 +1197,24 @@ module Cc1 #:nodoc:
1132
1197
  attr_reader :windows
1133
1198
 
1134
1199
  def create_window(offset, byte_size)
1135
- win = MemoryWindow.new(self, @address + offset, byte_size)
1136
- win.on_written += method(:handle_written_through_window)
1137
- @windows.push(win)
1138
- win
1200
+ MemoryWindow.new(self, @address + offset, byte_size).tap do |win|
1201
+ win.on_written += method(:handle_written_through_window)
1202
+ @windows.push(win)
1203
+ end
1139
1204
  end
1140
1205
 
1206
+ def create_unmapped_window
1207
+ UnmappedMemoryWindow.new(self).tap do |win|
1208
+ win.on_written += method(:handle_written_through_window)
1209
+ end
1210
+ end
1211
+
1212
+ alias :_orig_write :write
1141
1213
  def write(val)
1142
1214
  super
1143
1215
  if !@windows.empty? and
1144
- @value.array? && val.array? or
1145
- @value.composite? && val.composite?
1146
- single_val = val.to_single_value
1147
- @windows.zip(single_val.values).each do |win, inner_val|
1216
+ @value.array? && val.array? or @value.composite? && val.composite?
1217
+ @windows.zip(val.to_single_value.values).each do |win, inner_val|
1148
1218
  win.write(inner_val, false)
1149
1219
  end
1150
1220
  end
@@ -1152,24 +1222,29 @@ module Cc1 #:nodoc:
1152
1222
 
1153
1223
  protected
1154
1224
  def create_value_from_windows
1155
- case
1156
- when @value.scalar?
1157
- @value
1158
- when @value.array?
1159
- ArrayValue.new(@windows.map { |w| w.create_value_from_windows })
1160
- when @value.composite?
1161
- CompositeValue.new(@windows.map { |w| w.create_value_from_windows })
1225
+ if @value
1226
+ case
1227
+ when @value.scalar?
1228
+ @value
1229
+ when @value.array?
1230
+ ArrayValue.new(@windows.map { |w| w.create_value_from_windows })
1231
+ when @value.composite?
1232
+ CompositeValue.new(@windows.map { |w| w.create_value_from_windows })
1233
+ else
1234
+ __NOTREACHED__
1235
+ end
1236
+ else
1237
+ nil
1162
1238
  end
1163
1239
  end
1164
1240
 
1165
1241
  private
1166
- def handle_written_through_window(*)
1167
- val = create_value_from_windows
1168
-
1169
- if @value
1170
- @value.overwrite!(val)
1171
- else
1172
- @value = VersionedValue.new(val)
1242
+ def handle_written_through_window(win)
1243
+ if val = create_value_from_windows
1244
+ unless win.read.must_be_undefined?
1245
+ val = val.to_defined_value
1246
+ end
1247
+ _orig_write(val)
1173
1248
  end
1174
1249
  end
1175
1250
  end
@@ -1194,13 +1269,23 @@ module Cc1 #:nodoc:
1194
1269
 
1195
1270
  def write(val, cascade = true)
1196
1271
  super(val)
1197
- on_written.invoke(self) if cascade
1272
+ _cascade_update if cascade
1273
+ end
1274
+
1275
+ def _cascade_update
1276
+ on_written.invoke(self)
1198
1277
  end
1199
1278
 
1200
1279
  private
1201
1280
  def handle_written_through_window(*)
1202
1281
  super
1203
- on_written.invoke(self)
1282
+ _cascade_update
1283
+ end
1284
+ end
1285
+
1286
+ class UnmappedMemoryWindow < MemoryWindow
1287
+ def initialize(owner)
1288
+ super(owner, owner.address, owner.byte_size)
1204
1289
  end
1205
1290
  end
1206
1291
 
@@ -49,6 +49,7 @@ module Cc1 #:nodoc:
49
49
 
50
50
  module BranchGroupOptions
51
51
  COMPLETE = :complete
52
+ ITERATION = :iteration
52
53
  end
53
54
 
54
55
  end
@@ -18,7 +18,7 @@ module AdLint
18
18
  module Cc1
19
19
  class Parser < Racc::Parser
20
20
 
21
- module_eval(<<'...end parser.y/module_eval...', 'parser.y', 1827)
21
+ module_eval(<<'...end parser.y/module_eval...', 'parser.y', 1847)
22
22
 
23
23
  include ReportUtil
24
24
  include MonitorUtil
@@ -102,159 +102,159 @@ private :monitor
102
102
  ##### State transition tables begin ###
103
103
 
104
104
  clist = [
105
- '214,333,84,85,95,42,38,345,149,344,378,281,57,336,333,36,37,139,139',
106
- '379,354,65,67,42,42,70,192,193,42,225,226,233,42,234,235,236,237,238',
107
- '239,240,241,86,435,96,87,323,78,281,57,43,90,91,60,148,353,92,93,97',
108
- '98,99,100,101,214,333,84,85,95,43,43,338,414,358,43,66,68,281,368,69',
109
- '250,44,44,402,56,83,44,84,85,95,232,281,391,225,226,233,387,234,235',
110
- '236,237,238,239,240,241,86,259,96,87,450,377,431,397,383,90,91,60,281',
111
- '281,92,93,97,98,99,100,101,86,382,96,87,278,400,345,42,344,90,91,59',
112
- '280,279,92,93,97,98,99,100,101,281,42,29,192,193,232,12,13,14,15,16',
113
- '39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,368,347,250',
114
- '381,187,214,333,84,85,95,188,189,44,32,380,43,212,201,213,249,347,250',
115
- '249,38,250,406,83,44,84,85,95,44,36,37,225,226,233,408,234,235,236,237',
116
- '238,239,240,241,86,319,96,87,194,195,196,197,202,90,91,60,373,49,92',
117
- '93,97,98,99,100,101,86,44,96,87,452,194,195,196,197,90,91,411,427,281',
118
- '92,93,97,98,99,100,101,281,73,29,72,150,232,12,13,14,15,16,39,38,18',
119
- '19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,198,199,449,425,316',
120
- '317,214,333,84,85,95,281,281,32,38,159,426,158,372,160,161,162,163,36',
121
- '37,281,187,194,195,196,197,371,188,189,415,225,226,233,416,234,235,236',
122
- '237,238,239,240,241,86,187,96,87,288,203,289,188,189,90,91,60,44,417',
123
- '92,93,97,98,99,100,101,214,333,84,85,95,175,177,178,179,180,181,182',
124
- '183,184,185,186,73,290,72,291,263,264,436,437,361,362,232,192,193,225',
125
- '226,233,200,234,235,236,237,238,239,240,241,86,140,96,87,204,205,190',
126
- '191,139,90,91,60,198,199,92,93,97,98,99,100,101,192,193,190,191,192',
127
- '193,190,191,364,375,242,375,83,134,84,85,95,203,243,129,355,340,42,29',
128
- '339,428,232,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26',
129
- '27,28,33,34,35,335,118,86,332,96,87,331,433,330,393,202,90,91,32,327',
130
- '43,92,93,97,98,99,100,101,201,325,-230,265,44,-229,446,322,448,139,272',
131
- '200,282,64,283,455,48,375,,,,,,,,,342,,,,,,,,,,49,214,217,84,85,95,12',
132
- '13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35',
133
- '225,226,233,,234,235,236,237,238,239,240,241,86,32,96,87,,,,,,90,91',
134
- '60,,,92,93,97,98,99,100,101,214,333,84,85,95,,,,,,,,,,,,,,,,,,,,,,232',
135
- ',,225,226,233,,234,235,236,237,238,239,240,241,86,,96,87,,,,,,90,91',
136
- '60,42,29,92,93,97,98,99,100,101,,,38,18,19,20,21,24,25,22,23,36,37,17',
137
- '26,27,28,33,34,35,,,,,,,232,,,,,,,32,,43,,,,,,,,,,,,44,,,,214,333,84',
138
- '85,95,,,,,,,,,,,,259,,,,,,,,,,,,255,225,226,233,,234,235,236,237,238',
139
- '239,240,241,86,,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101,214,333',
140
- '84,85,95,,,,,,,,,,,,,,,,,,,,,,232,,,225,226,233,,234,235,236,237,238',
141
- '239,240,241,86,,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101,214,333',
142
- '84,85,95,,,,,,,,,,,,,,,,,83,,84,85,95,232,,,225,226,233,,234,235,236',
143
- '237,238,239,240,241,86,,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101',
144
- '86,,96,87,,212,,213,,90,91,117,,,92,93,97,98,99,100,101,,,,,,232,83',
145
- '29,84,85,95,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26',
146
- '27,28,33,34,35,,,,,,,,,,,,,86,32,96,87,,,,,,90,91,,,,92,93,97,98,99',
147
- '100,101,,,,,,,,,,,,,83,,84,85,95,,,,,,42,29,,,232,12,13,14,15,16,39',
148
- '38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,86,,96,87,,',
149
- ',,,90,91,32,,43,92,93,97,98,99,100,101,,,,,44,,,,,,,,,,,,,,,,,,,,,,232',
150
- ',,,,,,,,,49,214,217,84,85,95,12,13,14,15,16,39,38,18,19,20,21,24,25',
151
- '22,23,36,37,17,26,27,28,33,34,35,225,226,233,,234,235,236,237,238,239',
152
- '240,241,86,32,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101,83,,84,85',
153
- '95,,,,,,,,,,,,,,,,,,,,,,232,,,,,,,,214,333,84,85,95,,,86,,96,87,,,,',
154
- ',90,91,,,,92,93,97,98,99,100,101,,225,226,233,,234,235,236,237,238,239',
155
- '240,241,86,,96,87,,,,,,90,91,60,,232,92,93,97,98,99,100,101,214,333',
156
- '84,85,95,,,,,,,,,,,,,,,,,,,,,,232,,,225,226,233,,234,235,236,237,238',
157
- '239,240,241,86,,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101,214,333',
158
- '84,85,95,,,,,,,,,,,,,,,,,83,,84,85,95,232,,,225,226,233,,234,235,236',
159
- '237,238,239,240,241,86,,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101',
160
- '86,,96,87,,,410,,,90,91,,,,92,93,97,98,99,100,101,,,29,,,232,12,13,14',
161
- '15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,',
162
- ',,,,,,,,32,,,,,,,29,,,60,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23',
163
- '36,37,17,26,27,28,33,34,35,59,,,,,,,,,,,,,32,,,,,,,29,,,60,12,13,14',
164
- '15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,59,,',
165
- ',,,,,83,,84,85,95,32,,144,,,,38,,,,60,,,,,36,37,83,,84,85,95,,,,,,,',
166
- ',,,,,,59,86,,96,87,,,145,,,90,91,,,,92,141,97,98,99,100,101,,86,,96',
167
- '87,,,404,,,90,91,,,,92,403,97,98,99,100,101,83,29,84,85,95,,,,,,,38',
168
- '18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,86,32',
169
- '96,87,,,,,,90,91,,357,,92,93,97,98,99,100,101,83,29,84,85,95,,,,,,,38',
170
- '18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,83,,84,85,95,,,,',
171
- ',,,86,32,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101,83,,84,85,95,',
172
- ',,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,',
173
- ',86,,96,164,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86',
174
- ',96,164,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86',
175
- ',96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87',
176
- ',,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,',
177
- ',,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,170,,,,,',
178
- '90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,172,,,,,',
179
- '90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,164,,,,,,90,91',
180
- ',,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,,,,,,90,91,',
181
- ',,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87,,,,,,90,91,,,,92',
182
- '93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93',
183
- '97,98,99,100,101,83,,84,85,95,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98',
184
- '99,100,101,,,,,,,,,,,,,86,,96,87,,,,,,90,91,117,,,92,93,97,98,99,100',
185
- '101,83,29,84,85,95,,,,,,,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28',
186
- '33,34,35,83,,84,85,95,,,,,,,,86,32,96,87,,,,,,90,91,,,,92,93,97,98,99',
187
- '100,101,83,,84,85,95,,,,86,,96,87,,212,,213,,90,91,117,384,,92,93,97',
188
- '98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,,,,,,90,91,375,,,92,93,97',
189
- '98,99,100,101,,83,,84,85,95,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99',
190
- '100,101,83,,84,85,95,,,,,,,38,,86,,96,87,,,,36,37,90,91,,,,92,93,97',
191
- '98,99,100,101,83,,84,85,95,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99',
192
- '100,101,83,,84,85,95,,,,,,,,,86,,96,87,,212,,213,,90,91,117,206,,92',
193
- '93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,,,,,,90,91,117,,,92,93',
194
- '97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,363,,,90,91,,,,92',
195
- '93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,,,,,,90,91,,,,92,93,97',
196
- '98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97',
197
- '98,99,100,101,83,,84,85,95,,,86,,96,87,,,350,,,90,91,,,,92,349,97,98',
198
- '99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,432,,,90,91,,,,92,93,97',
199
- '98,99,100,101,83,,84,85,95,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99',
200
- '100,101,83,,84,85,95,,,,,,,,,86,,96,87,443,,,,,90,91,,,,92,93,97,98',
201
- '99,100,101,83,,84,85,95,,,86,,96,87,445,,,,,90,91,,,,92,93,97,98,99',
202
- '100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99',
203
- '100,101,83,,84,85,95,,,86,,96,87,,212,,213,,90,91,117,447,,92,93,97',
204
- '98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97',
205
- '98,99,100,101,83,,84,85,95,,,86,,96,87,,,267,,,90,91,,,,92,93,97,98',
206
- '99,100,101,83,,84,85,95,,,271,,,,38,,86,,96,87,,,,36,37,90,91,117,,',
207
- '92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,,,270,,,90,91,,,,92',
208
- '268,97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,,,,90,91,,,,92',
209
- '93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,,,,,,90,91,,,,92,93,97',
210
- '98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97',
211
- '98,99,100,101,83,,84,85,95,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99',
212
- '100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99',
213
- '100,101,83,,84,85,95,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101',
214
- '83,,84,85,95,,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101',
215
- '83,,84,85,95,,,86,,96,87,285,,,,,90,91,,,,92,93,97,98,99,100,101,83',
216
- ',84,85,95,,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,,,',
217
- ',,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,29,84,85,95,,',
218
- ',,,,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,',
219
- ',,86,32,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101,83,29,84,85,95',
220
- ',,,,,,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,',
221
- ',,,,86,32,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101,83,29,84,85,95',
222
- ',,,,,,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,83,,84,85',
223
- '95,,,,,,,,86,32,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101,83,,84',
105
+ '216,335,84,85,95,42,38,347,151,346,437,283,57,338,335,36,37,140,141',
106
+ '65,140,141,67,42,42,70,194,195,42,227,228,235,42,236,237,238,239,240',
107
+ '241,242,243,86,399,96,87,325,78,356,283,43,90,91,60,150,384,92,93,97',
108
+ '98,99,100,101,216,335,84,85,95,43,43,340,416,66,43,360,68,57,370,69',
109
+ '252,44,44,355,404,83,44,84,85,95,234,283,402,227,228,235,283,236,237',
110
+ '238,239,240,241,242,243,86,261,96,87,380,379,56,59,385,90,91,60,283',
111
+ '381,92,93,97,98,99,100,101,86,383,96,87,433,382,347,42,346,90,91,251',
112
+ '452,252,92,93,97,98,99,100,101,283,42,29,194,195,234,12,13,14,15,16',
113
+ '39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,370,349,252',
114
+ '203,189,216,335,84,85,95,190,191,44,32,408,43,214,410,215,251,349,252',
115
+ '73,38,72,204,83,44,84,85,95,44,36,37,227,228,235,375,236,237,238,239',
116
+ '240,241,242,243,86,321,96,87,196,197,198,199,413,90,91,60,152,49,92',
117
+ '93,97,98,99,100,101,86,44,96,87,280,196,197,198,199,90,91,374,282,281',
118
+ '92,93,97,98,99,100,101,283,290,29,291,373,234,12,13,14,15,16,39,38,18',
119
+ '19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,200,201,454,429,318',
120
+ '319,216,335,84,85,95,283,283,32,38,189,451,427,428,140,141,190,191,36',
121
+ '37,283,283,283,196,197,198,199,73,417,72,227,228,235,418,236,237,238',
122
+ '239,240,241,242,243,86,189,96,87,292,205,293,190,191,90,91,60,44,419',
123
+ '92,93,97,98,99,100,101,216,335,84,85,95,177,179,180,181,182,183,184',
124
+ '185,186,187,188,161,393,160,142,162,163,164,165,265,266,234,438,439',
125
+ '227,228,235,389,236,237,238,239,240,241,242,243,86,366,96,87,194,195',
126
+ '363,364,377,90,91,60,140,141,92,93,97,98,99,100,101,200,201,194,195',
127
+ '206,207,194,195,192,193,192,193,83,244,84,85,95,192,193,377,134,202',
128
+ '42,29,245,129,234,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37',
129
+ '17,26,27,28,33,34,35,357,342,86,341,96,87,430,337,118,334,333,90,91',
130
+ '32,435,43,92,93,97,98,99,100,101,332,395,205,329,44,204,327,-232,267',
131
+ '-231,448,324,450,203,274,202,284,64,285,457,48,377,,,,,344,,,,,,,,,',
132
+ '49,216,219,84,85,95,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36',
133
+ '37,17,26,27,28,33,34,35,227,228,235,,236,237,238,239,240,241,242,243',
134
+ '86,32,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101,216,335,84,85,95',
135
+ ',,,,,,,,,,,,,,,,,,,,,234,,,227,228,235,,236,237,238,239,240,241,242',
136
+ '243,86,,96,87,,,,,,90,91,60,42,29,92,93,97,98,99,100,101,,,38,18,19',
137
+ '20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,234,,,,,,,32,,43',
138
+ ',,,,,,,,,,,44,,,,216,335,84,85,95,,,,,,,,,,,,261,,,,,,,,,,,,257,227',
139
+ '228,235,,236,237,238,239,240,241,242,243,86,,96,87,,,,,,90,91,60,,,92',
140
+ '93,97,98,99,100,101,216,335,84,85,95,,,,,,,,,,,,,,,,,,,,,,234,,,227',
141
+ '228,235,,236,237,238,239,240,241,242,243,86,,96,87,,,,,,90,91,60,,,92',
142
+ '93,97,98,99,100,101,216,335,84,85,95,,,,,,,,,,,,,,,,,83,,84,85,95,234',
143
+ ',,227,228,235,,236,237,238,239,240,241,242,243,86,,96,87,,,,,,90,91',
144
+ '60,,,92,93,97,98,99,100,101,86,,96,87,,214,,215,,90,91,117,,,92,93,97',
145
+ '98,99,100,101,,,,,,234,83,29,84,85,95,12,13,14,15,16,39,38,18,19,20',
146
+ '21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,86,32,96,87,,',
147
+ ',,,90,91,,,,92,93,97,98,99,100,101,,,,,,,,,,,,,83,,84,85,95,,,,,,42',
148
+ '29,,,234,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27',
149
+ '28,33,34,35,,,86,,96,87,,,,,,90,91,32,,43,92,93,97,98,99,100,101,,,',
150
+ ',44,,,,,,,,,,,,,,,,,,,,,,234,,,,,,,,,,49,216,219,84,85,95,12,13,14,15',
151
+ '16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,227,228',
152
+ '235,,236,237,238,239,240,241,242,243,86,32,96,87,,,,,,90,91,60,,,92',
153
+ '93,97,98,99,100,101,83,,84,85,95,,,,,,,,,,,,,,,,,,,,,,234,,,,,,,,216',
154
+ '335,84,85,95,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,,227,228',
155
+ '235,,236,237,238,239,240,241,242,243,86,,96,87,,,,,,90,91,60,,234,92',
156
+ '93,97,98,99,100,101,216,335,84,85,95,,,,,,,,,,,,,,,,,,,,,,234,,,227',
157
+ '228,235,,236,237,238,239,240,241,242,243,86,,96,87,,,,,,90,91,60,,,92',
158
+ '93,97,98,99,100,101,216,335,84,85,95,,,,,,,,,,,,,,,,,83,,84,85,95,234',
159
+ ',,227,228,235,,236,237,238,239,240,241,242,243,86,,96,87,,,,,,90,91',
160
+ '60,,,92,93,97,98,99,100,101,86,,96,87,,,412,,,90,91,,,,92,93,97,98,99',
161
+ '100,101,,,29,,,234,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37',
162
+ '17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,,,,,,29,,,60,12,13,14,15,16,39',
163
+ '38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,59,,,,,,,,,,,',
164
+ ',32,,,,,,,29,,,60,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37',
165
+ '17,26,27,28,33,34,35,59,,,,,,,,83,,84,85,95,32,,146,,,,38,,,,60,,,,',
166
+ '36,37,83,,84,85,95,,,,,,,,,,,,,,59,86,,96,87,,,147,,,90,91,,,,92,143',
167
+ '97,98,99,100,101,,86,,96,87,,,406,,,90,91,,,,92,405,97,98,99,100,101',
168
+ '83,29,84,85,95,,,,,,,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33',
169
+ '34,35,,,,,,,,,,,,,86,32,96,87,,,,,,90,91,,359,,92,93,97,98,99,100,101',
170
+ '83,29,84,85,95,,,,,,,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33',
171
+ '34,35,83,,84,85,95,,,,,,,,86,32,96,87,,,,,,90,91,60,,,92,93,97,98,99',
172
+ '100,101,83,,84,85,95,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101',
173
+ '83,,84,85,95,,,,,,,,86,,96,166,,,,,,90,91,,,,92,93,97,98,99,100,101',
174
+ '83,,84,85,95,,,,86,,96,166,,,,,,90,91,,,,92,93,97,98,99,100,101,83,',
175
+ '84,85,95,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84',
224
176
  '85,95,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95',
225
177
  ',,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,',
226
- ',,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,',
227
- ',86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,',
228
- '96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96',
229
- '87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87,,',
230
- ',,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,,,',
231
- ',,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87,,,,,,90',
232
- '91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,,,,,,90,91',
233
- ',,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87,,,,,,90,91,,,,92',
234
- '93,97,98,99,100,101,,,,,,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98',
235
- '99,100,101,2,,42,29,,,,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23',
236
- '36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,43,,,,,,,,42,29,,,44,12',
178
+ ',,86,,96,172,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,',
179
+ ',,86,,96,174,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86',
180
+ ',96,166,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86',
181
+ ',96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87',
182
+ ',,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,',
183
+ ',,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87,,,,,,90',
184
+ '91,,,,92,93,97,98,99,100,101,,,,,,,,,,,,,86,,96,87,,,,,,90,91,117,,',
185
+ '92,93,97,98,99,100,101,83,29,84,85,95,,,,,,,38,18,19,20,21,24,25,22',
186
+ '23,36,37,17,26,27,28,33,34,35,83,,84,85,95,,,,,,,,86,32,96,87,,,,,,90',
187
+ '91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87,,214,,215,,90',
188
+ '91,117,386,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,,,',
189
+ ',,90,91,377,,,92,93,97,98,99,100,101,,83,,84,85,95,,,86,,96,87,,,,,',
190
+ '90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,38,,86,,96,87,,,',
191
+ '36,37,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,,,,,',
192
+ '90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,214',
193
+ ',215,,90,91,117,208,,92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87',
194
+ ',,,,,90,91,117,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96',
195
+ '87,,,365,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87',
196
+ ',,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87',
197
+ ',,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,,,352',
198
+ ',,90,91,,,,92,351,97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,',
199
+ '434,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,,,,,',
200
+ '90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,445,',
201
+ ',,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,447,,,,',
202
+ '90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,,,',
203
+ '90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,,214,,215,',
204
+ '90,91,117,449,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87',
205
+ ',,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,,,269',
206
+ ',,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,273,,,,38,,86,,96,87',
207
+ ',,,36,37,90,91,117,,,92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87',
208
+ ',,272,,,90,91,,,,92,270,97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96',
209
+ '87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,,,',
210
+ ',,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,',
211
+ ',,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,,,,,,90,91',
212
+ ',,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,,,,90,91',
213
+ ',,,92,93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,,,,,,90,91,,,,92',
214
+ '93,97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,,,,90,91,,,,92',
215
+ '93,97,98,99,100,101,83,,84,85,95,,,86,,96,87,287,,,,,90,91,,,,92,93',
216
+ '97,98,99,100,101,83,,84,85,95,,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93',
217
+ '97,98,99,100,101,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101',
218
+ '83,29,84,85,95,,,,,,,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33',
219
+ '34,35,,,,,,,,,,,,,86,32,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101',
220
+ '83,29,84,85,95,,,,,,,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33',
221
+ '34,35,,,,,,,,,,,,,86,32,96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101',
222
+ '83,29,84,85,95,,,,,,,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33',
223
+ '34,35,83,,84,85,95,,,,,,,,86,32,96,87,,,,,,90,91,60,,,92,93,97,98,99',
224
+ '100,101,83,,84,85,95,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101',
225
+ '83,,84,85,95,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83',
226
+ ',84,85,95,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85',
227
+ '95,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95',
228
+ ',,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,',
229
+ ',,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86',
230
+ ',96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,',
231
+ '96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87',
232
+ ',,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,',
233
+ ',,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87,,,,,,90',
234
+ '91,,,,92,93,97,98,99,100,101,,,,,,,,,,,,,86,,96,87,,,,,,90,91,,,,92',
235
+ '93,97,98,99,100,101,2,,42,29,,,,12,13,14,15,16,39,38,18,19,20,21,24',
236
+ '25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,43,,,,,,,,42,29',
237
+ ',,44,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28',
238
+ '33,34,35,,,,,,,,,,,,,,32,,370,,252,29,,,,,,,,,44,38,18,19,20,21,24,25',
239
+ '22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,251,,252,29,,,,,,',
240
+ ',,44,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,',
241
+ ',,,,32,,29,,,,,,,,,263,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28',
242
+ '33,34,35,,,,,,,,,,,,,,32,,29,,,,,,,,,131,38,18,19,20,21,24,25,22,23',
243
+ '36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,29,,,,,,,,,264,38,18,19',
244
+ '20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,29,,,',
245
+ ',,,,,354,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,',
246
+ ',,,,,,,,32,,29,,,,,,,,,255,38,18,19,20,21,24,25,22,23,36,37,17,26,27',
247
+ '28,33,34,35,,,,,,,,,,,,,,32,,29,,,,,,,,,136,38,18,19,20,21,24,25,22',
248
+ '23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,,,,,,,29,,,254,12,13',
249
+ '14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,',
250
+ ',,,,,,,,,,,32,,,,,,,29,,,60,12,13,14,15,16,39,38,18,19,20,21,24,25,22',
251
+ '23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,,,,,,29,,,60,12,13,14',
252
+ '15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,',
253
+ ',,,,,,,,32,,,,,,,29,,,60,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23',
254
+ '36,37,17,26,27,28,33,34,35,,,,,,,,,,,29,,,32,12,13,14,15,16,39,38,18',
255
+ '19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,29,,,32,12',
237
256
  '13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35',
238
- ',,,,,,,,,,,,,32,,368,,250,29,,,,,,,,,44,38,18,19,20,21,24,25,22,23,36',
239
- '37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,249,,250,29,,,,,,,,,44,38,18',
240
- '19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,29',
241
- ',,,,,,,,261,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,',
242
- ',,,,,,,,,,,32,,29,,,,,,,,,131,38,18,19,20,21,24,25,22,23,36,37,17,26',
243
- '27,28,33,34,35,,,,,,,,,,,,,,32,,29,,,,,,,,,262,38,18,19,20,21,24,25',
244
- '22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,29,,,,,,,,,352,38',
245
- '18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,',
246
- '29,,,,,,,,,253,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35',
247
- ',,,,,,,,,,,,,32,,29,,,,,,,,,136,38,18,19,20,21,24,25,22,23,36,37,17',
248
- '26,27,28,33,34,35,,,,,,,,,,,,,,32,,,,,,,,29,,,252,12,13,14,15,16,39',
249
- '38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32',
250
- ',,,,,,29,,,60,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17',
251
- '26,27,28,33,34,35,,,,,,,,,,,,,,32,,,,,,,29,,,60,12,13,14,15,16,39,38',
252
- '18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,',
253
- ',,,,,29,,,60,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26',
254
- '27,28,33,34,35,,,,,,,,,,,29,,,32,12,13,14,15,16,39,38,18,19,20,21,24',
255
- '25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,29,,,32,12,13,14,15,16',
256
- '39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,',
257
- ',,32' ]
257
+ ',,,,,,,,,,,,,32' ]
258
258
  racc_action_table = arr = ::Array.new(4469, nil)
259
259
  idx = 0
260
260
  clist.each do |str|
@@ -265,179 +265,179 @@ clist = [
265
265
  end
266
266
 
267
267
  clist = [
268
- '452,452,452,452,452,40,144,343,73,343,286,215,50,238,238,144,144,362',
269
- '264,286,256,33,34,57,43,35,307,307,354,452,452,452,367,452,452,452,452',
270
- '452,452,452,452,452,409,452,452,215,50,341,5,40,452,452,452,73,256,452',
271
- '452,452,452,452,452,452,450,450,450,450,450,57,43,238,362,264,354,33',
272
- '34,401,367,35,367,57,43,341,5,204,354,204,204,204,452,315,326,450,450',
273
- '450,321,450,450,450,450,450,450,450,450,450,354,450,450,442,284,401',
274
- '334,315,450,450,450,284,442,450,450,450,450,450,450,450,204,294,204',
275
- '204,147,337,248,368,248,204,204,82,154,147,204,204,204,204,204,204,204',
276
- '154,3,3,306,306,450,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3',
277
- '368,368,368,293,300,448,448,448,448,448,300,300,368,3,292,3,210,110',
278
- '210,249,249,249,247,44,247,345,197,3,197,197,197,249,44,44,448,448,448',
279
- '346,448,448,448,448,448,448,448,448,448,210,448,448,107,107,107,107',
280
- '111,448,448,448,279,3,448,448,448,448,448,448,448,197,44,197,197,444',
281
- '308,308,308,308,197,197,351,396,444,197,197,197,197,197,197,197,396',
282
- '41,372,41,74,448,372,372,372,372,372,372,372,372,372,372,372,372,372',
283
- '372,372,372,372,372,372,372,372,372,372,372,310,310,441,394,207,207',
284
- '445,445,445,445,445,441,394,372,75,89,395,89,276,89,89,89,89,75,75,395',
285
- '301,309,309,309,309,275,301,301,365,445,445,445,366,445,445,445,445',
286
- '445,445,445,445,445,104,445,445,160,112,160,104,104,445,445,445,75,372',
287
- '445,445,445,445,445,445,445,443,443,443,443,443,103,103,103,103,103',
288
- '103,103,103,103,103,103,71,161,71,161,137,137,419,419,266,266,445,305',
289
- '305,443,443,443,109,443,443,443,443,443,443,443,443,443,70,443,443,113',
290
- '113,302,302,69,443,443,443,108,108,443,443,443,443,443,443,443,304,304',
291
- '303,303,106,106,105,105,269,380,124,382,241,67,241,241,241,314,125,65',
292
- '258,240,216,216,239,397,443,216,216,216,216,216,216,216,216,216,216',
293
- '216,216,216,216,216,216,216,216,216,216,216,216,216,216,237,60,241,235',
294
- '241,241,234,405,233,328,313,241,241,216,226,216,241,241,241,241,241',
295
- '241,241,312,224,217,139,216,214,434,213,438,140,143,311,155,32,156,449',
296
- '2,381,,,,,,,,,241,,,,,,,,,,216,227,227,227,227,227,227,227,227,227,227',
297
- '227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227',
298
- '227,227,227,227,227,,227,227,227,227,227,227,227,227,227,227,227,227',
299
- ',,,,,227,227,227,,,227,227,227,227,227,227,227,236,236,236,236,236,',
300
- ',,,,,,,,,,,,,,,,,,,,227,,,236,236,236,,236,236,236,236,236,236,236,236',
301
- '236,,236,236,,,,,,236,236,236,133,133,236,236,236,236,236,236,236,,',
302
- '133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133',
303
- '133,,,,,,,236,,,,,,,133,,133,,,,,,,,,,,,133,,,,427,427,427,427,427,',
304
- ',,,,,,,,,,133,,,,,,,,,,,,133,427,427,427,,427,427,427,427,427,427,427',
305
- '427,427,,427,427,,,,,,427,427,427,,,427,427,427,427,427,427,427,426',
306
- '426,426,426,426,,,,,,,,,,,,,,,,,,,,,,427,,,426,426,426,,426,426,426',
307
- '426,426,426,426,426,426,,426,426,,,,,,426,426,426,,,426,426,426,426',
308
- '426,426,426,325,325,325,325,325,,,,,,,,,,,,,,,,,375,,375,375,375,426',
309
- ',,325,325,325,,325,325,325,325,325,325,325,325,325,,325,325,,,,,,325',
310
- '325,325,,,325,325,325,325,325,325,325,375,,375,375,,375,,375,,375,375',
311
- '375,,,375,375,375,375,375,375,375,,,,,,325,335,335,335,335,335,335,335',
312
- '335,335,335,335,335,335,335,335,335,335,335,335,335,335,335,335,335',
313
- '335,335,335,335,335,,,,,,,,,,,,,335,335,335,335,,,,,,335,335,,,,335',
314
- '335,335,335,335,335,335,,,,,,,,,,,,,399,,399,399,399,,,,,,58,58,,,335',
315
- '58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58',
316
- '58,,,399,,399,399,,,,,,399,399,58,,58,399,399,399,399,399,399,399,,',
317
- ',,58,,,,,,,,,,,,,,,,,,,,,,399,,,,,,,,,,58,119,119,119,119,119,119,119',
268
+ '454,454,454,454,454,40,146,345,73,345,411,217,50,240,240,146,146,364',
269
+ '364,33,266,266,34,57,43,35,309,309,356,454,454,454,369,454,454,454,454',
270
+ '454,454,454,454,454,336,454,454,217,50,258,343,40,454,454,454,73,296',
271
+ '454,454,454,454,454,454,454,452,452,452,452,452,57,43,240,364,33,356',
272
+ '266,34,5,369,35,369,57,43,258,343,206,356,206,206,206,454,317,339,452',
273
+ '452,452,403,452,452,452,452,452,452,452,452,452,356,452,452,288,286',
274
+ '5,82,317,452,452,452,286,288,452,452,452,452,452,452,452,206,295,206',
275
+ '206,403,294,250,370,250,206,206,249,444,249,206,206,206,206,206,206',
276
+ '206,444,3,3,308,308,452,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3',
277
+ '3,3,370,370,370,110,302,450,450,450,450,450,302,302,370,3,347,3,212',
278
+ '348,212,251,251,251,41,44,41,111,199,3,199,199,199,251,44,44,450,450',
279
+ '450,281,450,450,450,450,450,450,450,450,450,212,450,450,107,107,107',
280
+ '107,353,450,450,450,74,3,450,450,450,450,450,450,450,199,44,199,199',
281
+ '149,310,310,310,310,199,199,278,156,149,199,199,199,199,199,199,199',
282
+ '156,162,374,162,277,450,374,374,374,374,374,374,374,374,374,374,374',
283
+ '374,374,374,374,374,374,374,374,374,374,374,374,374,312,312,446,398',
284
+ '209,209,447,447,447,447,447,446,398,374,75,303,443,396,397,142,142,303',
285
+ '303,75,75,443,396,397,311,311,311,311,71,367,71,447,447,447,368,447',
286
+ '447,447,447,447,447,447,447,447,104,447,447,163,112,163,104,104,447',
287
+ '447,447,75,374,447,447,447,447,447,447,447,445,445,445,445,445,103,103',
288
+ '103,103,103,103,103,103,103,103,103,89,328,89,70,89,89,89,89,137,137',
289
+ '447,421,421,445,445,445,323,445,445,445,445,445,445,445,445,445,271',
290
+ '445,445,307,307,268,268,382,445,445,445,69,69,445,445,445,445,445,445',
291
+ '445,108,108,306,306,113,113,106,106,304,304,105,105,243,124,243,243',
292
+ '243,305,305,384,67,109,218,218,125,65,445,218,218,218,218,218,218,218',
293
+ '218,218,218,218,218,218,218,218,218,218,218,218,218,218,218,218,218',
294
+ '260,242,243,241,243,243,399,239,60,237,236,243,243,218,407,218,243,243',
295
+ '243,243,243,243,243,235,330,316,228,218,315,226,219,139,216,436,215',
296
+ '440,314,145,313,157,32,158,451,2,383,,,,,243,,,,,,,,,,218,229,229,229',
297
+ '229,229,229,229,229,229,229,229,229,229,229,229,229,229,229,229,229',
298
+ '229,229,229,229,229,229,229,229,229,229,229,229,,229,229,229,229,229',
299
+ '229,229,229,229,229,229,229,,,,,,229,229,229,,,229,229,229,229,229,229',
300
+ '229,238,238,238,238,238,,,,,,,,,,,,,,,,,,,,,,229,,,238,238,238,,238',
301
+ '238,238,238,238,238,238,238,238,,238,238,,,,,,238,238,238,133,133,238',
302
+ '238,238,238,238,238,238,,,133,133,133,133,133,133,133,133,133,133,133',
303
+ '133,133,133,133,133,133,133,,,,,,,238,,,,,,,133,,133,,,,,,,,,,,,133',
304
+ ',,,429,429,429,429,429,,,,,,,,,,,,133,,,,,,,,,,,,133,429,429,429,,429',
305
+ '429,429,429,429,429,429,429,429,,429,429,,,,,,429,429,429,,,429,429',
306
+ '429,429,429,429,429,428,428,428,428,428,,,,,,,,,,,,,,,,,,,,,,429,,,428',
307
+ '428,428,,428,428,428,428,428,428,428,428,428,,428,428,,,,,,428,428,428',
308
+ ',,428,428,428,428,428,428,428,327,327,327,327,327,,,,,,,,,,,,,,,,,377',
309
+ ',377,377,377,428,,,327,327,327,,327,327,327,327,327,327,327,327,327',
310
+ ',327,327,,,,,,327,327,327,,,327,327,327,327,327,327,327,377,,377,377',
311
+ ',377,,377,,377,377,377,,,377,377,377,377,377,377,377,,,,,,327,337,337',
312
+ '337,337,337,337,337,337,337,337,337,337,337,337,337,337,337,337,337',
313
+ '337,337,337,337,337,337,337,337,337,337,,,,,,,,,,,,,337,337,337,337',
314
+ ',,,,,337,337,,,,337,337,337,337,337,337,337,,,,,,,,,,,,,401,,401,401',
315
+ '401,,,,,,58,58,,,337,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58',
316
+ '58,58,58,58,58,58,58,58,,,401,,401,401,,,,,,401,401,58,,58,401,401,401',
317
+ '401,401,401,401,,,,,58,,,,,,,,,,,,,,,,,,,,,,401,,,,,,,,,,58,119,119',
318
318
  '119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119',
319
- '119,119,119,119,119,119,119,119,,119,119,119,119,119,119,119,119,119',
320
- '119,119,119,,,,,,119,119,119,,,119,119,119,119,119,119,119,398,,398',
321
- '398,398,,,,,,,,,,,,,,,,,,,,,,119,,,,,,,,327,327,327,327,327,,,398,,398',
322
- '398,,,,,,398,398,,,,398,398,398,398,398,398,398,,327,327,327,,327,327',
323
- '327,327,327,327,327,327,327,,327,327,,,,,,327,327,327,,398,327,327,327',
324
- '327,327,327,327,391,391,391,391,391,,,,,,,,,,,,,,,,,,,,,,327,,,391,391',
325
- '391,,391,391,391,391,391,391,391,391,391,,391,391,,,,,,391,391,391,',
326
- ',391,391,391,391,391,391,391,425,425,425,425,425,,,,,,,,,,,,,,,,,349',
327
- ',349,349,349,391,,,425,425,425,,425,425,425,425,425,425,425,425,425',
328
- ',425,425,,,,,,425,425,425,,,425,425,425,425,425,425,425,349,,349,349',
329
- ',,349,,,349,349,,,,349,349,349,349,349,349,349,,,324,,,425,324,324,324',
330
- '324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324',
331
- '324,324,324,324,,,,,,,,,,,,,,324,,,,,,,55,,,324,55,55,55,55,55,55,55',
332
- '55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,324,,,,,,,,,,,,,55',
333
- ',,,,,,11,,,55,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11',
334
- '11,11,11,11,11,11,55,,,,,,,,72,,72,72,72,11,,72,,,,72,,,,11,,,,,72,72',
335
- '344,,344,344,344,,,,,,,,,,,,,,11,72,,72,72,,,72,,,72,72,,,,72,72,72',
336
- '72,72,72,72,,344,,344,344,,,344,,,344,344,,,,344,344,344,344,344,344',
337
- '344,338,260,338,338,338,,,,,,,260,260,260,260,260,260,260,260,260,260',
338
- '260,260,260,260,260,260,260,260,,,,,,,,,,,,,338,260,338,338,,,,,,338',
339
- '338,,260,,338,338,338,338,338,338,338,87,87,87,87,87,,,,,,,87,87,87',
340
- '87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,379,,379,379,379,,,,,,',
341
- ',87,87,87,87,,,,,,87,87,87,,,87,87,87,87,87,87,87,90,,90,90,90,,,,379',
342
- ',379,379,,,,,,379,379,,,,379,379,379,379,379,379,379,91,,91,91,91,,',
343
- ',,,,,90,,90,90,,,,,,90,90,,,,90,90,90,90,90,90,90,92,,92,92,92,,,,91',
344
- ',91,91,,,,,,91,91,,,,91,91,91,91,91,91,91,93,,93,93,93,,,,,,,,92,,92',
345
- '92,,,,,,92,92,,,,92,92,92,92,92,92,92,94,,94,94,94,,,,93,,93,93,,,,',
346
- ',93,93,,,,93,93,93,93,93,93,93,95,,95,95,95,,,,,,,,94,,94,94,,,,,,94',
347
- '94,,,,94,94,94,94,94,94,94,96,,96,96,96,,,,95,,95,95,,,,,,95,95,,,,95',
348
- '95,95,95,95,95,95,97,,97,97,97,,,,,,,,96,,96,96,,,,,,96,96,,,,96,96',
349
- '96,96,96,96,96,332,,332,332,332,,,,97,,97,97,,,,,,97,97,,,,97,97,97',
350
- '97,97,97,97,331,,331,331,331,,,,,,,,332,,332,332,,,,,,332,332,,,,332',
351
- '332,332,332,332,332,332,330,,330,330,330,,,,331,,331,331,,,,,,331,331',
352
- ',,,331,331,331,331,331,331,331,383,,383,383,383,,,,,,,,330,,330,330',
353
- ',,,,,330,330,,,,330,330,330,330,330,330,330,386,,386,386,386,,,,383',
354
- ',383,383,,,,,,383,383,,,,383,383,383,383,383,383,383,,,,,,,,,,,,,386',
355
- ',386,386,,,,,,386,386,386,,,386,386,386,386,386,386,386,64,64,64,64',
356
- '64,,,,,,,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,317,',
357
- '317,317,317,,,,,,,,64,64,64,64,,,,,,64,64,,,,64,64,64,64,64,64,64,283',
358
- ',283,283,283,,,,317,,317,317,,317,,317,,317,317,317,317,,317,317,317',
359
- '317,317,317,317,281,,281,281,281,,,,,,,,283,,283,283,,,,,,283,283,283',
360
- ',,283,283,283,283,283,283,283,,271,,271,271,271,,,281,,281,281,,,,,',
361
- '281,281,,,,281,281,281,281,281,281,281,273,,273,273,273,,,,,,,273,,271',
362
- ',271,271,,,,273,273,271,271,,,,271,271,271,271,271,271,271,117,,117',
363
- '117,117,,,273,,273,273,,,,,,273,273,,,,273,273,273,273,273,273,273,59',
364
- ',59,59,59,,,,,,,,,117,,117,117,,117,,117,,117,117,117,117,,117,117,117',
365
- '117,117,117,117,268,,268,268,268,,,59,,59,59,,,,,,59,59,59,,,59,59,59',
366
- '59,59,59,59,265,,265,265,265,,,,,,,,,268,,268,268,,,268,,,268,268,,',
367
- ',268,268,268,268,268,268,268,259,,259,259,259,,,265,,265,265,,,,,,265',
368
- '265,,,,265,265,265,265,265,265,265,250,,250,250,250,,,,,,,,,259,,259',
369
- '259,,,,,,259,259,,,,259,259,259,259,259,259,259,403,,403,403,403,,,250',
370
- ',250,250,,,250,,,250,250,,,,250,250,250,250,250,250,250,428,,428,428',
371
- '428,,,,,,,,,403,,403,403,,,403,,,403,403,,,,403,403,403,403,403,403',
372
- '403,429,,429,429,429,,,428,,428,428,,,,,,428,428,,,,428,428,428,428',
373
- '428,428,428,430,,430,430,430,,,,,,,,,429,,429,429,429,,,,,429,429,,',
374
- ',429,429,429,429,429,429,429,225,,225,225,225,,,430,,430,430,430,,,',
375
- ',430,430,,,,430,430,430,430,430,430,430,437,,437,437,437,,,,,,,,,225',
376
- ',225,225,,,,,,225,225,,,,225,225,225,225,225,225,225,212,,212,212,212',
377
- ',,437,,437,437,,437,,437,,437,437,437,437,,437,437,437,437,437,437,437',
378
- '141,,141,141,141,,,,,,,,,212,,212,212,,,,,,212,212,,,,212,212,212,212',
379
- '212,212,212,209,,209,209,209,,,141,,141,141,,,141,,,141,141,,,,141,141',
380
- '141,141,141,141,141,142,,142,142,142,,,142,,,,142,,209,,209,209,,,,142',
381
- '142,209,209,209,,,209,209,209,209,209,209,209,205,,205,205,205,,,142',
382
- ',142,142,,,142,,,142,142,,,,142,142,142,142,142,142,142,355,,355,355',
383
- '355,,,,,,,,,205,,205,205,,,,,,205,205,,,,205,205,205,205,205,205,205',
384
- '203,,203,203,203,,,355,,355,355,,,,,,355,355,,,,355,355,355,355,355',
385
- '355,355,202,,202,202,202,,,,,,,,,203,,203,203,,,,,,203,203,,,,203,203',
386
- '203,203,203,203,203,201,,201,201,201,,,202,,202,202,,,,,,202,202,,,',
387
- '202,202,202,202,202,202,202,200,,200,200,200,,,,,,,,,201,,201,201,,',
388
- ',,,201,201,,,,201,201,201,201,201,201,201,158,,158,158,158,,,200,,200',
389
- '200,,,,,,200,200,,,,200,200,200,200,200,200,200,159,,159,159,159,,,',
390
- ',,,,,158,,158,158,,,,,,158,158,,,,158,158,158,158,158,158,158,199,,199',
391
- '199,199,,,159,,159,159,159,,,,,159,159,,,,159,159,159,159,159,159,159',
392
- '198,,198,198,198,,,,,,,,,199,,199,199,,,,,,199,199,,,,199,199,199,199',
393
- '199,199,199,,,,,,,,198,,198,198,,,,,,198,198,,,,198,198,198,198,198',
394
- '198,198,164,164,164,164,164,,,,,,,164,164,164,164,164,164,164,164,164',
395
- '164,164,164,164,164,164,164,164,164,,,,,,,,,,,,,164,164,164,164,,,,',
396
- ',164,164,164,,,164,164,164,164,164,164,164,170,170,170,170,170,,,,,',
397
- ',170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170',
398
- '170,,,,,,,,,,,,,170,170,170,170,,,,,,170,170,170,,,170,170,170,170,170',
399
- '170,170,172,172,172,172,172,,,,,,,172,172,172,172,172,172,172,172,172',
400
- '172,172,172,172,172,172,172,172,172,175,,175,175,175,,,,,,,,172,172',
401
- '172,172,,,,,,172,172,172,,,172,172,172,172,172,172,172,176,,176,176',
402
- '176,,,,175,,175,175,,,,,,175,175,,,,175,175,175,175,175,175,175,187',
403
- ',187,187,187,,,,,,,,176,,176,176,,,,,,176,176,,,,176,176,176,176,176',
404
- '176,176,188,,188,188,188,,,,187,,187,187,,,,,,187,187,,,,187,187,187',
405
- '187,187,187,187,189,,189,189,189,,,,,,,,188,,188,188,,,,,,188,188,,',
406
- ',188,188,188,188,188,188,188,190,,190,190,190,,,,189,,189,189,,,,,,189',
407
- '189,,,,189,189,189,189,189,189,189,191,,191,191,191,,,,,,,,190,,190',
408
- '190,,,,,,190,190,,,,190,190,190,190,190,190,190,192,,192,192,192,,,',
409
- '191,,191,191,,,,,,191,191,,,,191,191,191,191,191,191,191,193,,193,193',
410
- '193,,,,,,,,192,,192,192,,,,,,192,192,,,,192,192,192,192,192,192,192',
411
- '194,,194,194,194,,,,193,,193,193,,,,,,193,193,,,,193,193,193,193,193',
412
- '193,193,195,,195,195,195,,,,,,,,194,,194,194,,,,,,194,194,,,,194,194',
413
- '194,194,194,194,194,196,,196,196,196,,,,195,,195,195,,,,,,195,195,,',
414
- ',195,195,195,195,195,195,195,,,,,,,,,,,,,196,,196,196,,,,,,196,196,',
415
- ',,196,196,196,196,196,196,196,1,,1,1,,,,1,1,1,1,1,1,1,1,1,1,1,1,1,1',
416
- '1,1,1,1,1,1,1,1,1,1,,,,,,,,,,,,,,1,,1,,,,,,,,274,274,,,1,274,274,274',
417
- '274,274,274,274,274,274,274,274,274,274,274,274,274,274,274,274,274',
418
- '274,274,274,274,,,,,,,,,,,,,,274,,274,,274,126,,,,,,,,,274,126,126,126',
419
- '126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,,,,,,,,',
420
- ',,,,,126,,126,,126,134,,,,,,,,,126,134,134,134,134,134,134,134,134,134',
421
- '134,134,134,134,134,134,134,134,134,,,,,,,,,,,,,,134,,66,,,,,,,,,134',
422
- '66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,,,,,,,,,,,,,,66',
423
- ',135,,,,,,,,,66,135,135,135,135,135,135,135,135,135,135,135,135,135',
424
- '135,135,135,135,135,,,,,,,,,,,,,,135,,251,,,,,,,,,135,251,251,251,251',
425
- '251,251,251,251,251,251,251,251,251,251,251,251,251,251,,,,,,,,,,,,',
426
- ',251,,130,,,,,,,,,251,130,130,130,130,130,130,130,130,130,130,130,130',
427
- '130,130,130,130,130,130,,,,,,,,,,,,,,130,,68,,,,,,,,,130,68,68,68,68',
428
- '68,68,68,68,68,68,68,68,68,68,68,68,68,68,,,,,,,,,,,,,,68,,129,,,,,',
429
- ',,,68,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129',
430
- '129,129,,,,,,,,,,,,,,129,,,,,,,,388,,,129,388,388,388,388,388,388,388',
431
- '388,388,388,388,388,388,388,388,388,388,388,388,388,388,388,388,388',
432
- ',,,,,,,,,,,,,388,,,,,,,79,,,388,79,79,79,79,79,79,79,79,79,79,79,79',
433
- '79,79,79,79,79,79,79,79,79,79,79,79,,,,,,,,,,,,,,79,,,,,,,61,,,79,61',
434
- '61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61',
435
- ',,,,,,,,,,,,,61,,,,,,,348,,,61,348,348,348,348,348,348,348,348,348,348',
436
- '348,348,348,348,348,348,348,348,348,348,348,348,348,348,,,,,,,,,,,146',
437
- ',,348,146,146,146,146,146,146,146,146,146,146,146,146,146,146,146,146',
438
- '146,146,146,146,146,146,146,146,,,,,,,,,,,407,,,146,407,407,407,407',
439
- '407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407',
440
- '407,407,407,,,,,,,,,,,,,,407' ]
319
+ '119,119,119,119,119,119,119,119,119,119,119,119,119,,119,119,119,119',
320
+ '119,119,119,119,119,119,119,119,,,,,,119,119,119,,,119,119,119,119,119',
321
+ '119,119,400,,400,400,400,,,,,,,,,,,,,,,,,,,,,,119,,,,,,,,329,329,329',
322
+ '329,329,,,400,,400,400,,,,,,400,400,,,,400,400,400,400,400,400,400,',
323
+ '329,329,329,,329,329,329,329,329,329,329,329,329,,329,329,,,,,,329,329',
324
+ '329,,400,329,329,329,329,329,329,329,393,393,393,393,393,,,,,,,,,,,',
325
+ ',,,,,,,,,,329,,,393,393,393,,393,393,393,393,393,393,393,393,393,,393',
326
+ '393,,,,,,393,393,393,,,393,393,393,393,393,393,393,427,427,427,427,427',
327
+ ',,,,,,,,,,,,,,,,351,,351,351,351,393,,,427,427,427,,427,427,427,427',
328
+ '427,427,427,427,427,,427,427,,,,,,427,427,427,,,427,427,427,427,427',
329
+ '427,427,351,,351,351,,,351,,,351,351,,,,351,351,351,351,351,351,351',
330
+ ',,326,,,427,326,326,326,326,326,326,326,326,326,326,326,326,326,326',
331
+ '326,326,326,326,326,326,326,326,326,326,,,,,,,,,,,,,,326,,,,,,,55,,',
332
+ '326,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55',
333
+ '55,55,326,,,,,,,,,,,,,55,,,,,,,11,,,55,11,11,11,11,11,11,11,11,11,11',
334
+ '11,11,11,11,11,11,11,11,11,11,11,11,11,11,55,,,,,,,,72,,72,72,72,11',
335
+ ',72,,,,72,,,,11,,,,,72,72,346,,346,346,346,,,,,,,,,,,,,,11,72,,72,72',
336
+ ',,72,,,72,72,,,,72,72,72,72,72,72,72,,346,,346,346,,,346,,,346,346,',
337
+ ',,346,346,346,346,346,346,346,340,262,340,340,340,,,,,,,262,262,262',
338
+ '262,262,262,262,262,262,262,262,262,262,262,262,262,262,262,,,,,,,,',
339
+ ',,,,340,262,340,340,,,,,,340,340,,262,,340,340,340,340,340,340,340,87',
340
+ '87,87,87,87,,,,,,,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87',
341
+ '87,381,,381,381,381,,,,,,,,87,87,87,87,,,,,,87,87,87,,,87,87,87,87,87',
342
+ '87,87,90,,90,90,90,,,,381,,381,381,,,,,,381,381,,,,381,381,381,381,381',
343
+ '381,381,91,,91,91,91,,,,,,,,90,,90,90,,,,,,90,90,,,,90,90,90,90,90,90',
344
+ '90,92,,92,92,92,,,,91,,91,91,,,,,,91,91,,,,91,91,91,91,91,91,91,93,',
345
+ '93,93,93,,,,,,,,92,,92,92,,,,,,92,92,,,,92,92,92,92,92,92,92,94,,94',
346
+ '94,94,,,,93,,93,93,,,,,,93,93,,,,93,93,93,93,93,93,93,95,,95,95,95,',
347
+ ',,,,,,94,,94,94,,,,,,94,94,,,,94,94,94,94,94,94,94,96,,96,96,96,,,,95',
348
+ ',95,95,,,,,,95,95,,,,95,95,95,95,95,95,95,97,,97,97,97,,,,,,,,96,,96',
349
+ '96,,,,,,96,96,,,,96,96,96,96,96,96,96,334,,334,334,334,,,,97,,97,97',
350
+ ',,,,,97,97,,,,97,97,97,97,97,97,97,333,,333,333,333,,,,,,,,334,,334',
351
+ '334,,,,,,334,334,,,,334,334,334,334,334,334,334,332,,332,332,332,,,',
352
+ '333,,333,333,,,,,,333,333,,,,333,333,333,333,333,333,333,385,,385,385',
353
+ '385,,,,,,,,332,,332,332,,,,,,332,332,,,,332,332,332,332,332,332,332',
354
+ '388,,388,388,388,,,,385,,385,385,,,,,,385,385,,,,385,385,385,385,385',
355
+ '385,385,,,,,,,,,,,,,388,,388,388,,,,,,388,388,388,,,388,388,388,388',
356
+ '388,388,388,64,64,64,64,64,,,,,,,64,64,64,64,64,64,64,64,64,64,64,64',
357
+ '64,64,64,64,64,64,319,,319,319,319,,,,,,,,64,64,64,64,,,,,,64,64,,,',
358
+ '64,64,64,64,64,64,64,285,,285,285,285,,,,319,,319,319,,319,,319,,319',
359
+ '319,319,319,,319,319,319,319,319,319,319,283,,283,283,283,,,,,,,,285',
360
+ ',285,285,,,,,,285,285,285,,,285,285,285,285,285,285,285,,273,,273,273',
361
+ '273,,,283,,283,283,,,,,,283,283,,,,283,283,283,283,283,283,283,275,',
362
+ '275,275,275,,,,,,,275,,273,,273,273,,,,275,275,273,273,,,,273,273,273',
363
+ '273,273,273,273,117,,117,117,117,,,275,,275,275,,,,,,275,275,,,,275',
364
+ '275,275,275,275,275,275,59,,59,59,59,,,,,,,,,117,,117,117,,117,,117',
365
+ ',117,117,117,117,,117,117,117,117,117,117,117,270,,270,270,270,,,59',
366
+ ',59,59,,,,,,59,59,59,,,59,59,59,59,59,59,59,267,,267,267,267,,,,,,,',
367
+ ',270,,270,270,,,270,,,270,270,,,,270,270,270,270,270,270,270,261,,261',
368
+ '261,261,,,267,,267,267,,,,,,267,267,,,,267,267,267,267,267,267,267,252',
369
+ ',252,252,252,,,,,,,,,261,,261,261,,,,,,261,261,,,,261,261,261,261,261',
370
+ '261,261,405,,405,405,405,,,252,,252,252,,,252,,,252,252,,,,252,252,252',
371
+ '252,252,252,252,430,,430,430,430,,,,,,,,,405,,405,405,,,405,,,405,405',
372
+ ',,,405,405,405,405,405,405,405,431,,431,431,431,,,430,,430,430,,,,,',
373
+ '430,430,,,,430,430,430,430,430,430,430,432,,432,432,432,,,,,,,,,431',
374
+ ',431,431,431,,,,,431,431,,,,431,431,431,431,431,431,431,227,,227,227',
375
+ '227,,,432,,432,432,432,,,,,432,432,,,,432,432,432,432,432,432,432,439',
376
+ ',439,439,439,,,,,,,,,227,,227,227,,,,,,227,227,,,,227,227,227,227,227',
377
+ '227,227,214,,214,214,214,,,439,,439,439,,439,,439,,439,439,439,439,',
378
+ '439,439,439,439,439,439,439,143,,143,143,143,,,,,,,,,214,,214,214,,',
379
+ ',,,214,214,,,,214,214,214,214,214,214,214,211,,211,211,211,,,143,,143',
380
+ '143,,,143,,,143,143,,,,143,143,143,143,143,143,143,144,,144,144,144',
381
+ ',,144,,,,144,,211,,211,211,,,,144,144,211,211,211,,,211,211,211,211',
382
+ '211,211,211,207,,207,207,207,,,144,,144,144,,,144,,,144,144,,,,144,144',
383
+ '144,144,144,144,144,357,,357,357,357,,,,,,,,,207,,207,207,,,,,,207,207',
384
+ ',,,207,207,207,207,207,207,207,205,,205,205,205,,,357,,357,357,,,,,',
385
+ '357,357,,,,357,357,357,357,357,357,357,204,,204,204,204,,,,,,,,,205',
386
+ ',205,205,,,,,,205,205,,,,205,205,205,205,205,205,205,203,,203,203,203',
387
+ ',,204,,204,204,,,,,,204,204,,,,204,204,204,204,204,204,204,202,,202',
388
+ '202,202,,,,,,,,,203,,203,203,,,,,,203,203,,,,203,203,203,203,203,203',
389
+ '203,160,,160,160,160,,,202,,202,202,,,,,,202,202,,,,202,202,202,202',
390
+ '202,202,202,161,,161,161,161,,,,,,,,,160,,160,160,,,,,,160,160,,,,160',
391
+ '160,160,160,160,160,160,201,,201,201,201,,,161,,161,161,161,,,,,161',
392
+ '161,,,,161,161,161,161,161,161,161,200,,200,200,200,,,,,,,,,201,,201',
393
+ '201,,,,,,201,201,,,,201,201,201,201,201,201,201,,,,,,,,200,,200,200',
394
+ ',,,,,200,200,,,,200,200,200,200,200,200,200,166,166,166,166,166,,,,',
395
+ ',,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166',
396
+ '166,,,,,,,,,,,,,166,166,166,166,,,,,,166,166,166,,,166,166,166,166,166',
397
+ '166,166,172,172,172,172,172,,,,,,,172,172,172,172,172,172,172,172,172',
398
+ '172,172,172,172,172,172,172,172,172,,,,,,,,,,,,,172,172,172,172,,,,',
399
+ ',172,172,172,,,172,172,172,172,172,172,172,174,174,174,174,174,,,,,',
400
+ ',174,174,174,174,174,174,174,174,174,174,174,174,174,174,174,174,174',
401
+ '174,177,,177,177,177,,,,,,,,174,174,174,174,,,,,,174,174,174,,,174,174',
402
+ '174,174,174,174,174,178,,178,178,178,,,,177,,177,177,,,,,,177,177,,',
403
+ ',177,177,177,177,177,177,177,189,,189,189,189,,,,,,,,178,,178,178,,',
404
+ ',,,178,178,,,,178,178,178,178,178,178,178,190,,190,190,190,,,,189,,189',
405
+ '189,,,,,,189,189,,,,189,189,189,189,189,189,189,191,,191,191,191,,,',
406
+ ',,,,190,,190,190,,,,,,190,190,,,,190,190,190,190,190,190,190,192,,192',
407
+ '192,192,,,,191,,191,191,,,,,,191,191,,,,191,191,191,191,191,191,191',
408
+ '193,,193,193,193,,,,,,,,192,,192,192,,,,,,192,192,,,,192,192,192,192',
409
+ '192,192,192,194,,194,194,194,,,,193,,193,193,,,,,,193,193,,,,193,193',
410
+ '193,193,193,193,193,195,,195,195,195,,,,,,,,194,,194,194,,,,,,194,194',
411
+ ',,,194,194,194,194,194,194,194,196,,196,196,196,,,,195,,195,195,,,,',
412
+ ',195,195,,,,195,195,195,195,195,195,195,197,,197,197,197,,,,,,,,196',
413
+ ',196,196,,,,,,196,196,,,,196,196,196,196,196,196,196,198,,198,198,198',
414
+ ',,,197,,197,197,,,,,,197,197,,,,197,197,197,197,197,197,197,,,,,,,,',
415
+ ',,,,198,,198,198,,,,,,198,198,,,,198,198,198,198,198,198,198,1,,1,1',
416
+ ',,,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,,,,,,,,,,,,,,1,,1',
417
+ ',,,,,,,276,276,,,1,276,276,276,276,276,276,276,276,276,276,276,276,276',
418
+ '276,276,276,276,276,276,276,276,276,276,276,,,,,,,,,,,,,,276,,276,,276',
419
+ '126,,,,,,,,,276,126,126,126,126,126,126,126,126,126,126,126,126,126',
420
+ '126,126,126,126,126,,,,,,,,,,,,,,126,,126,,126,134,,,,,,,,,126,134,134',
421
+ '134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,,,,',
422
+ ',,,,,,,,,134,,66,,,,,,,,,134,66,66,66,66,66,66,66,66,66,66,66,66,66',
423
+ '66,66,66,66,66,,,,,,,,,,,,,,66,,135,,,,,,,,,66,135,135,135,135,135,135',
424
+ '135,135,135,135,135,135,135,135,135,135,135,135,,,,,,,,,,,,,,135,,253',
425
+ ',,,,,,,,135,253,253,253,253,253,253,253,253,253,253,253,253,253,253',
426
+ '253,253,253,253,,,,,,,,,,,,,,253,,130,,,,,,,,,253,130,130,130,130,130',
427
+ '130,130,130,130,130,130,130,130,130,130,130,130,130,,,,,,,,,,,,,,130',
428
+ ',68,,,,,,,,,130,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68',
429
+ ',,,,,,,,,,,,,68,,129,,,,,,,,,68,129,129,129,129,129,129,129,129,129',
430
+ '129,129,129,129,129,129,129,129,129,,,,,,,,,,,,,,129,,,,,,,,390,,,129',
431
+ '390,390,390,390,390,390,390,390,390,390,390,390,390,390,390,390,390',
432
+ '390,390,390,390,390,390,390,,,,,,,,,,,,,,390,,,,,,,79,,,390,79,79,79',
433
+ '79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,,,,,',
434
+ ',,,,,,,,79,,,,,,,61,,,79,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61',
435
+ '61,61,61,61,61,61,61,61,61,,,,,,,,,,,,,,61,,,,,,,350,,,61,350,350,350',
436
+ '350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350',
437
+ '350,350,350,350,,,,,,,,,,,148,,,350,148,148,148,148,148,148,148,148',
438
+ '148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,,,,',
439
+ ',,,,,,409,,,148,409,409,409,409,409,409,409,409,409,409,409,409,409',
440
+ '409,409,409,409,409,409,409,409,409,409,409,,,,,,,,,,,,,,409' ]
441
441
  racc_action_check = arr = ::Array.new(4469, nil)
442
442
  idx = 0
443
443
  clist.each do |str|
@@ -448,238 +448,242 @@ clist = [
448
448
  end
449
449
 
450
450
  racc_action_pointer = [
451
- nil, 3753, 513, 144, nil, -8, nil, nil, nil, nil,
451
+ nil, 3753, 517, 144, nil, 19, nil, nil, nil, nil,
452
452
  nil, 1493, nil, nil, nil, nil, nil, nil, nil, nil,
453
453
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
454
- nil, nil, 464, 19, 20, 23, nil, nil, nil, nil,
455
- 3, 218, nil, 22, 185, nil, nil, nil, nil, nil,
454
+ nil, nil, 468, 17, 20, 23, nil, nil, nil, nil,
455
+ 3, 151, nil, 22, 185, nil, nil, nil, nil, nil,
456
456
  -44, nil, nil, nil, nil, 1445, nil, 21, 1004, 2387,
457
- 420, 4300, nil, nil, 2172, 388, 3940, 382, 4112, 408,
458
- 349, 331, 1530, 6, 220, 294, nil, nil, nil, 4252,
459
- nil, nil, 56, nil, nil, nil, nil, 1676, nil, 262,
457
+ 427, 4300, nil, nil, 2172, 394, 3940, 389, 4112, 412,
458
+ 326, 279, 1530, 6, 186, 294, nil, nil, nil, 4252,
459
+ nil, nil, 31, nil, nil, nil, nil, 1676, nil, 331,
460
460
  1738, 1767, 1800, 1829, 1862, 1891, 1924, 1953, nil, nil,
461
- nil, nil, nil, 287, 283, 369, 361, 157, 342, 336,
462
- 118, 154, 286, 330, nil, nil, nil, 2359, nil, 1093,
463
- nil, nil, nil, nil, 386, 394, 3851, nil, nil, 4155,
464
- 4069, nil, nil, 647, 3897, 3983, nil, 326, nil, 421,
465
- 504, 2759, 2821, 458, -7, nil, 4386, 81, nil, nil,
466
- nil, nil, nil, nil, 89, 462, 464, nil, 3041, 3069,
467
- 342, 376, nil, nil, 3193, nil, nil, nil, nil, nil,
468
- 3255, nil, 3317, nil, nil, 3346, 3379, nil, nil, nil,
469
- nil, nil, nil, nil, nil, nil, nil, 3408, 3441, 3470,
470
- 3503, 3532, 3565, 3594, 3627, 3656, 3689, 199, 3131, 3103,
471
- 3007, 2979, 2945, 2917, 81, 2855, nil, 242, nil, 2793,
472
- 143, nil, 2731, 502, 424, -45, 443, 421, nil, nil,
473
- nil, nil, nil, nil, 420, 2669, 410, 532, nil, nil,
474
- nil, nil, nil, 436, 434, 431, 594, 428, 11, 357,
475
- 354, 433, nil, nil, nil, nil, nil, 151, 84, 148,
476
- 2511, 4026, nil, nil, nil, nil, -36, nil, 365, 2483,
477
- 1614, nil, nil, nil, 16, 2449, 330, nil, 2421, 382,
478
- nil, 2297, nil, 2325, 3805, 277, 255, nil, nil, 231,
479
- nil, 2263, nil, 2234, 59, nil, -37, nil, nil, nil,
480
- nil, nil, 142, 131, 78, nil, nil, nil, nil, nil,
481
- 121, 261, 348, 365, 357, 322, 82, -40, 179, 252,
482
- 221, 451, 423, 409, 381, 33, nil, 2201, nil, nil,
483
- nil, 45, nil, nil, 1397, 831, 12, 1189, 428, nil,
484
- 2048, 2015, 1986, nil, 74, 920, nil, 39, 1614, nil,
485
- nil, -9, nil, -39, 1552, 153, 165, nil, 4348, 1334,
486
- nil, 204, nil, nil, 26, 2883, nil, nil, nil, nil,
487
- nil, nil, 15, nil, nil, 278, 282, 30, 129, nil,
488
- nil, nil, 262, nil, nil, 852, nil, nil, nil, 1705,
489
- 378, 460, 380, 2077, nil, nil, 2110, nil, 4204, nil,
490
- nil, 1251, nil, nil, 249, 262, 207, 402, 1155, 994,
491
- nil, 19, nil, 2545, nil, 432, nil, 4424, nil, -5,
492
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 328,
493
- nil, nil, nil, nil, nil, 1313, 769, 707, 2573, 2607,
494
- 2635, nil, nil, nil, 456, nil, nil, 2697, 471, nil,
495
- nil, 248, 60, 359, 199, 297, nil, nil, 178, 422,
496
- 60, nil, -2, nil, nil, nil, nil, nil ]
461
+ nil, nil, nil, 287, 283, 373, 363, 157, 351, 387,
462
+ 104, 125, 286, 351, nil, nil, nil, 2359, nil, 1093,
463
+ nil, nil, nil, nil, 389, 400, 3851, nil, nil, 4155,
464
+ 4069, nil, nil, 647, 3897, 3983, nil, 330, nil, 426,
465
+ nil, nil, 310, 2759, 2821, 462, -7, nil, 4386, 199,
466
+ nil, nil, nil, nil, nil, nil, 207, 466, 468, nil,
467
+ 3041, 3069, 262, 342, nil, nil, 3193, nil, nil, nil,
468
+ nil, nil, 3255, nil, 3317, nil, nil, 3346, 3379, nil,
469
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 3408,
470
+ 3441, 3470, 3503, 3532, 3565, 3594, 3627, 3656, 3689, 199,
471
+ 3131, 3103, 3007, 2979, 2945, 2917, 81, 2855, nil, 242,
472
+ nil, 2793, 143, nil, 2731, 506, 428, -45, 443, 426,
473
+ nil, nil, nil, nil, nil, nil, 425, 2669, 422, 532,
474
+ nil, nil, nil, nil, nil, 451, 438, 437, 594, 435,
475
+ 11, 387, 385, 433, nil, nil, nil, nil, nil, 89,
476
+ 84, 148, 2511, 4026, nil, nil, nil, nil, -9, nil,
477
+ 396, 2483, 1614, nil, nil, nil, 18, 2449, 353, nil,
478
+ 2421, 354, nil, 2297, nil, 2325, 3805, 220, 197, nil,
479
+ nil, 210, nil, 2263, nil, 2234, 59, nil, 60, nil,
480
+ nil, nil, nil, nil, 82, 78, 7, nil, nil, nil,
481
+ nil, nil, 121, 250, 371, 380, 359, 340, 82, -40,
482
+ 179, 253, 221, 455, 436, 427, 440, 33, nil, 2201,
483
+ nil, nil, nil, 344, nil, nil, 1397, 831, 300, 1189,
484
+ 443, nil, 2048, 2015, 1986, nil, 6, 920, nil, 0,
485
+ 1614, nil, nil, -8, nil, -39, 1552, 142, 145, nil,
486
+ 4348, 1334, nil, 180, nil, nil, 26, 2883, nil, nil,
487
+ nil, nil, nil, nil, 15, nil, nil, 277, 282, 30,
488
+ 129, nil, nil, nil, 262, nil, nil, 852, nil, nil,
489
+ nil, 1705, 356, 464, 388, 2077, nil, nil, 2110, nil,
490
+ 4204, nil, nil, 1251, nil, nil, 263, 264, 249, 434,
491
+ 1155, 994, nil, 38, nil, 2545, nil, 439, nil, 4424,
492
+ nil, -37, nil, nil, nil, nil, nil, nil, nil, nil,
493
+ nil, 333, nil, nil, nil, nil, nil, 1313, 769, 707,
494
+ 2573, 2607, 2635, nil, nil, nil, 460, nil, nil, 2697,
495
+ 475, nil, nil, 262, 89, 359, 248, 297, nil, nil,
496
+ 178, 426, 60, nil, -2, nil, nil, nil, nil, nil ]
497
497
 
498
498
  racc_action_default = [
499
- -257, -269, -269, -269, -86, -269, -88, -90, -92, -94,
499
+ -259, -271, -271, -271, -86, -271, -88, -90, -92, -94,
500
500
  -96, -98, -100, -101, -102, -103, -104, -105, -106, -107,
501
501
  -108, -109, -110, -111, -112, -113, -114, -115, -116, -117,
502
- -118, -119, -269, -269, -269, -269, -154, -155, -156, -157,
503
- -269, -159, -160, -269, -174, -258, -259, -260, 458, -84,
504
- -269, -89, -91, -93, -95, -98, -87, -269, -269, -269,
505
- -232, -269, -264, -267, -269, -130, -269, -131, -269, -269,
506
- -149, -158, -269, -170, -269, -175, -176, -178, -85, -269,
507
- -262, -97, -98, -1, -2, -3, -4, -269, -7, -21,
508
- -269, -269, -269, -269, -269, -269, -269, -269, -32, -33,
502
+ -118, -119, -271, -271, -271, -271, -156, -157, -158, -159,
503
+ -271, -161, -162, -271, -176, -260, -261, -262, 460, -84,
504
+ -271, -89, -91, -93, -95, -98, -87, -271, -271, -271,
505
+ -234, -271, -266, -269, -271, -130, -271, -131, -271, -271,
506
+ -149, -160, -271, -172, -271, -177, -178, -180, -85, -271,
507
+ -264, -97, -98, -1, -2, -3, -4, -271, -7, -21,
508
+ -271, -271, -271, -271, -271, -271, -271, -271, -32, -33,
509
509
  -34, -35, -36, -38, -42, -45, -48, -53, -56, -58,
510
- -60, -62, -64, -66, -68, -99, -207, -269, -231, -269,
511
- -263, -268, -38, -83, -269, -269, -189, -137, -139, -269,
512
- -269, -127, -132, -269, -269, -269, -129, -269, -150, -152,
513
- -269, -269, -269, -269, -269, -169, -269, -269, -173, -187,
514
- -161, -177, -179, -261, -269, -269, -269, -81, -269, -269,
515
- -269, -269, -15, -16, -269, -22, -23, -24, -25, -26,
516
- -269, -27, -269, -29, -31, -269, -269, -71, -72, -73,
517
- -74, -75, -76, -77, -78, -79, -80, -269, -269, -269,
518
- -269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
519
- -269, -269, -269, -269, -269, -269, -208, -269, -211, -269,
520
- -269, -216, -269, -269, -1, -269, -269, -117, -220, -221,
521
- -222, -223, -224, -225, -269, -269, -269, -233, -235, -237,
522
- -238, -239, -240, -269, -269, -269, -269, -269, -269, -269,
523
- -269, -269, -120, -121, -136, -138, -190, -191, -193, -202,
524
- -269, -269, -123, -126, -133, -134, -269, -140, -142, -269,
525
- -269, -125, -128, -145, -269, -269, -269, -168, -269, -269,
526
- -163, -269, -164, -269, -186, -269, -180, -182, -172, -269,
527
- -5, -269, -6, -269, -269, -9, -269, -19, -11, -13,
528
- -12, -14, -269, -269, -269, -69, -70, -39, -40, -41,
529
- -43, -44, -46, -47, -49, -50, -51, -52, -54, -55,
530
- -57, -59, -61, -63, -65, -269, -209, -269, -212, -215,
531
- -217, -269, -219, -241, -98, -269, -269, -269, -269, -236,
532
- -269, -269, -269, -230, -269, -269, -229, -269, -269, -253,
533
- -254, -269, -255, -192, -269, -205, -269, -201, -269, -269,
534
- -195, -269, -122, -135, -269, -269, -143, -124, -147, -151,
535
- -153, -146, -269, -167, -162, -269, -269, -191, -202, -184,
536
- -185, -171, -269, -188, -82, -269, -37, -8, -10, -269,
537
- -269, -28, -30, -269, -210, -213, -269, -218, -269, -266,
538
- -226, -269, -228, -234, -269, -269, -269, -269, -269, -269,
539
- -251, -269, -256, -269, -197, -269, -204, -269, -194, -269,
540
- -199, -196, -141, -144, -148, -166, -165, -181, -183, -269,
541
- -20, -67, -214, -265, -227, -269, -269, -269, -269, -269,
542
- -269, -252, -200, -198, -269, -203, -17, -269, -242, -244,
543
- -245, -269, -269, -269, -269, -269, -206, -18, -269, -269,
544
- -269, -247, -269, -249, -243, -246, -248, -250 ]
510
+ -60, -62, -64, -66, -68, -99, -209, -271, -233, -271,
511
+ -265, -270, -38, -83, -271, -271, -191, -137, -139, -271,
512
+ -271, -127, -132, -271, -271, -271, -129, -271, -150, -152,
513
+ -154, -155, -271, -271, -271, -271, -271, -171, -271, -271,
514
+ -175, -189, -163, -179, -181, -263, -271, -271, -271, -81,
515
+ -271, -271, -271, -271, -15, -16, -271, -22, -23, -24,
516
+ -25, -26, -271, -27, -271, -29, -31, -271, -271, -71,
517
+ -72, -73, -74, -75, -76, -77, -78, -79, -80, -271,
518
+ -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
519
+ -271, -271, -271, -271, -271, -271, -271, -271, -210, -271,
520
+ -213, -271, -271, -218, -271, -271, -1, -271, -271, -117,
521
+ -222, -223, -224, -225, -226, -227, -271, -271, -271, -235,
522
+ -237, -239, -240, -241, -242, -271, -271, -271, -271, -271,
523
+ -271, -271, -271, -271, -120, -121, -136, -138, -192, -193,
524
+ -195, -204, -271, -271, -123, -126, -133, -134, -271, -140,
525
+ -142, -271, -271, -125, -128, -145, -271, -271, -271, -170,
526
+ -271, -271, -165, -271, -166, -271, -188, -271, -182, -184,
527
+ -174, -271, -5, -271, -6, -271, -271, -9, -271, -19,
528
+ -11, -13, -12, -14, -271, -271, -271, -69, -70, -39,
529
+ -40, -41, -43, -44, -46, -47, -49, -50, -51, -52,
530
+ -54, -55, -57, -59, -61, -63, -65, -271, -211, -271,
531
+ -214, -217, -219, -271, -221, -243, -98, -271, -271, -271,
532
+ -271, -238, -271, -271, -271, -232, -271, -271, -231, -271,
533
+ -271, -255, -256, -271, -257, -194, -271, -207, -271, -203,
534
+ -271, -271, -197, -271, -122, -135, -271, -271, -143, -124,
535
+ -147, -151, -153, -146, -271, -169, -164, -271, -271, -193,
536
+ -204, -186, -187, -173, -271, -190, -82, -271, -37, -8,
537
+ -10, -271, -271, -28, -30, -271, -212, -215, -271, -220,
538
+ -271, -268, -228, -271, -230, -236, -271, -271, -271, -271,
539
+ -271, -271, -253, -271, -258, -271, -199, -271, -206, -271,
540
+ -196, -271, -201, -198, -141, -144, -148, -168, -167, -183,
541
+ -185, -271, -20, -67, -216, -267, -229, -271, -271, -271,
542
+ -271, -271, -271, -254, -202, -200, -271, -205, -17, -271,
543
+ -244, -246, -247, -271, -271, -271, -271, -271, -208, -18,
544
+ -271, -271, -271, -249, -271, -251, -245, -248, -250, -252 ]
545
545
 
546
546
  racc_goto_table = [
547
- 3, 4, 115, 71, 62, 123, 116, 154, 61, 11,
548
- 124, 55, 76, 275, 246, 207, 54, 257, 254, 143,
549
- 386, 126, 51, 254, 343, 228, 125, 137, 75, 418,
550
- 165, 166, 130, 359, 135, 171, 173, 174, 398, 304,
551
- 305, 306, 307, 151, 126, 308, 309, 81, 80, 156,
552
- 302, 303, 79, 122, 120, 47, 142, 300, 301, 5,
553
- 176, 121, 147, 146, 116, 82, 82, 256, 314, 313,
554
- 407, 54, 153, 312, 320, 311, 310, 51, 284, 121,
555
- 155, 167, 168, 169, 154, 337, 227, 119, 328, 269,
556
- 154, 286, 154, 45, 247, 251, 46, 1, 266, nil,
557
- 260, 429, 430, nil, nil, nil, 287, nil, nil, nil,
558
- nil, nil, nil, nil, nil, nil, nil, nil, 216, 229,
559
- nil, 126, 295, 296, nil, 315, 292, 126, 273, 126,
560
- 168, 359, 293, 329, 294, nil, nil, nil, nil, 254,
561
- 386, 258, nil, nil, 343, 274, nil, nil, 254, nil,
562
- nil, nil, 318, 123, nil, nil, 116, 155, 321, nil,
563
- nil, 341, 370, 155, nil, 155, 123, nil, nil, nil,
564
- nil, 326, nil, nil, nil, nil, 297, 298, 299, 122,
565
- 122, 122, 122, 122, 122, 122, 122, 122, 122, 122,
566
- 122, 122, 122, 122, nil, nil, nil, 351, nil, nil,
567
- 123, 122, nil, nil, nil, 356, 123, nil, nil, nil,
568
- nil, 360, nil, nil, 122, 409, nil, 247, 365, nil,
569
- 366, 334, nil, nil, 324, nil, 216, 229, 374, 54,
570
- nil, nil, nil, nil, 53, 51, nil, nil, 412, nil,
571
- nil, nil, 367, nil, nil, nil, nil, nil, 122, nil,
572
- 394, 395, 396, nil, 122, nil, nil, 168, 401, nil,
573
- 385, nil, nil, nil, 116, nil, nil, nil, nil, nil,
574
- nil, nil, 376, 419, 434, 77, nil, nil, nil, nil,
575
- nil, nil, 369, nil, nil, nil, nil, 54, nil, 53,
576
- 52, 405, nil, 51, nil, 128, 123, 128, nil, 128,
577
- nil, 413, nil, 77, nil, nil, 152, nil, nil, nil,
578
- 390, nil, 392, nil, nil, nil, nil, 389, 128, nil,
579
- nil, 388, 116, nil, 421, nil, 420, nil, nil, 422,
580
- 71, nil, nil, 116, nil, 399, 367, nil, 168, nil,
581
- nil, nil, nil, nil, 122, 52, nil, 274, 441, 442,
582
- 444, 127, nil, 127, nil, 127, nil, 245, nil, nil,
583
- 128, 128, 258, nil, 245, 128, 128, nil, nil, nil,
584
- nil, 274, 122, 152, 127, 77, 424, nil, nil, nil,
585
- 385, 423, nil, nil, 116, nil, nil, nil, 121, nil,
586
- nil, nil, 168, nil, nil, 128, nil, nil, nil, nil,
587
- nil, 128, nil, 128, nil, nil, 274, nil, nil, nil,
588
- 438, 439, 440, 244, nil, nil, 127, 127, nil, nil,
589
- 244, 127, 127, nil, nil, nil, nil, nil, 451, nil,
590
- 453, nil, nil, 454, nil, 456, nil, 457, nil, nil,
591
- nil, nil, nil, nil, nil, nil, nil, 53, nil, nil,
592
- nil, 127, nil, nil, nil, nil, nil, 127, nil, 127,
547
+ 3, 4, 115, 71, 62, 123, 116, 61, 156, 11,
548
+ 209, 55, 124, 248, 75, 277, 256, 388, 76, 145,
549
+ 345, 256, 230, 361, 137, 167, 168, 420, 259, 81,
550
+ 173, 175, 176, 130, 54, 135, 126, 51, 47, 400,
551
+ 310, 311, 144, 306, 307, 308, 309, 5, 80, 153,
552
+ 178, 79, 304, 305, 120, 302, 303, 149, 148, 126,
553
+ 258, 121, 316, 315, 116, 82, 82, 409, 314, 322,
554
+ 313, 125, 155, 312, 339, 229, 119, 330, 288, 121,
555
+ 157, 286, 45, 46, 1, nil, nil, 156, nil, 54,
556
+ nil, 271, 51, 156, 158, 156, 253, 268, nil, nil,
557
+ 249, 262, 431, 432, nil, nil, 122, nil, 289, nil,
558
+ nil, nil, nil, nil, nil, nil, 275, nil, 218, 231,
559
+ nil, 361, nil, nil, 297, 298, nil, nil, 317, nil,
560
+ nil, nil, 331, nil, 169, 170, 171, 388, 126, 256,
561
+ 345, 260, nil, nil, 126, nil, 126, 276, 256, nil,
562
+ nil, nil, nil, nil, 320, 123, nil, nil, 116, 157,
563
+ nil, nil, 323, 372, 343, 157, nil, 157, 123, nil,
564
+ nil, nil, nil, 294, nil, 328, nil, nil, nil, 295,
565
+ nil, 296, nil, nil, nil, 170, nil, nil, nil, nil,
566
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 353,
567
+ nil, nil, 123, nil, nil, nil, nil, nil, 123, 358,
568
+ nil, nil, nil, nil, nil, 362, 53, 411, nil, nil,
569
+ 367, nil, 368, nil, nil, 249, 326, nil, 218, 231,
570
+ 376, 299, 300, 301, 122, 122, 122, 122, 122, 122,
571
+ 122, 122, 122, 122, 122, 122, 122, 122, 122, 54,
572
+ 369, 414, 51, 396, 397, 398, 122, 77, nil, nil,
573
+ nil, 403, 387, nil, nil, nil, 116, nil, nil, 122,
574
+ 421, 53, nil, nil, nil, nil, 436, 128, 336, 128,
575
+ nil, 128, nil, nil, 371, 77, nil, nil, 154, nil,
576
+ nil, nil, nil, 407, nil, nil, nil, nil, 123, nil,
577
+ 128, nil, nil, 122, nil, 415, nil, 54, nil, 122,
578
+ 51, 52, 170, nil, nil, nil, nil, nil, nil, 391,
579
+ nil, nil, 390, nil, 116, nil, 423, 378, 422, nil,
580
+ nil, 424, 71, nil, nil, 116, nil, 401, nil, 247,
581
+ nil, nil, 128, 128, 369, nil, 247, 128, 128, 276,
582
+ nil, 443, 444, 446, nil, nil, nil, 154, nil, 77,
583
+ nil, nil, nil, nil, 260, nil, 52, 392, nil, 394,
584
+ nil, nil, 127, 276, 127, nil, 127, nil, nil, 128,
585
+ nil, nil, 387, 425, nil, 128, 116, 128, nil, nil,
586
+ 121, nil, nil, 170, nil, 127, nil, nil, nil, 122,
587
+ nil, nil, nil, nil, nil, nil, nil, nil, 276, nil,
588
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
589
+ nil, nil, nil, nil, nil, nil, nil, 122, nil, nil,
590
+ nil, 53, nil, 426, 246, nil, nil, 127, 127, nil,
591
+ nil, 246, 127, 127, nil, nil, nil, 170, nil, nil,
593
592
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
593
+ nil, nil, nil, nil, nil, nil, 128, 440, 441, 442,
594
+ nil, nil, nil, nil, 127, 128, nil, nil, nil, nil,
595
+ 127, nil, 127, nil, nil, 453, nil, 455, 154, 53,
596
+ 456, nil, 458, nil, 459, nil, nil, nil, nil, nil,
594
597
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
595
- nil, nil, 128, nil, nil, nil, nil, nil, nil, nil,
596
- nil, 128, nil, nil, nil, nil, nil, nil, nil, nil,
597
- nil, nil, nil, 52, 152, 53, nil, nil, nil, nil,
598
598
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
599
+ nil, nil, nil, nil, nil, nil, 52, nil, nil, nil,
599
600
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
600
- nil, nil, nil, nil, nil, nil, nil, nil, 127, nil,
601
- nil, nil, nil, nil, nil, nil, nil, 127, nil, nil,
602
601
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
603
- nil, 52 ]
602
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
603
+ nil, 127, nil, nil, nil, nil, nil, nil, nil, nil,
604
+ 127, nil, nil, nil, nil, nil, nil, nil, nil, nil,
605
+ nil, nil, nil, nil, 52 ]
604
606
 
605
607
  racc_goto_check = [
606
- 27, 26, 36, 47, 4, 23, 9, 3, 75, 35,
607
- 25, 35, 46, 49, 54, 8, 33, 43, 40, 9,
608
- 58, 41, 30, 40, 55, 71, 7, 44, 48, 53,
609
- 10, 10, 39, 45, 39, 10, 10, 10, 63, 15,
610
- 15, 15, 15, 46, 41, 16, 16, 34, 4, 7,
611
- 14, 14, 75, 11, 4, 29, 48, 13, 13, 28,
612
- 24, 26, 50, 51, 9, 35, 35, 42, 21, 20,
613
- 57, 33, 4, 19, 60, 18, 17, 30, 3, 26,
614
- 4, 11, 11, 11, 3, 67, 68, 69, 70, 9,
615
- 3, 6, 3, 73, 46, 39, 74, 1, 44, nil,
616
- 39, 63, 63, nil, nil, nil, 9, nil, nil, nil,
617
- nil, nil, nil, nil, nil, nil, nil, nil, 27, 26,
618
- nil, 41, 9, 9, nil, 3, 7, 41, 48, 41,
619
- 11, 45, 7, 71, 7, nil, nil, nil, nil, 40,
620
- 58, 35, nil, nil, 55, 27, nil, nil, 40, nil,
621
- nil, nil, 36, 23, nil, nil, 9, 4, 25, nil,
622
- nil, 3, 54, 4, nil, 4, 23, nil, nil, nil,
623
- nil, 25, nil, nil, nil, nil, 11, 11, 11, 11,
624
- 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
625
- 11, 11, 11, 11, nil, nil, nil, 9, nil, nil,
626
- 23, 11, nil, nil, nil, 25, 23, nil, nil, nil,
627
- nil, 25, nil, nil, 11, 49, nil, 46, 9, nil,
628
- 9, 61, nil, nil, 35, nil, 27, 26, 9, 33,
629
- nil, nil, nil, nil, 32, 30, nil, nil, 43, nil,
630
- nil, nil, 46, nil, nil, nil, nil, nil, 11, nil,
631
- 3, 3, 3, nil, 11, nil, nil, 11, 3, nil,
632
- 36, nil, nil, nil, 9, nil, nil, nil, nil, nil,
633
- nil, nil, 11, 8, 49, 32, nil, nil, nil, nil,
634
- nil, nil, 35, nil, nil, nil, nil, 33, nil, 32,
635
- 31, 9, nil, 30, nil, 32, 23, 32, nil, 32,
636
- nil, 25, nil, 32, nil, nil, 32, nil, nil, nil,
637
- 61, nil, 61, nil, nil, nil, nil, 4, 32, nil,
638
- nil, 75, 9, nil, 23, nil, 9, nil, nil, 36,
639
- 47, nil, nil, 9, nil, 26, 46, nil, 11, nil,
640
- nil, nil, nil, nil, 11, 31, nil, 27, 3, 3,
641
- 3, 31, nil, 31, nil, 31, nil, 32, nil, nil,
642
- 32, 32, 35, nil, 32, 32, 32, nil, nil, nil,
643
- nil, 27, 11, 32, 31, 32, 61, nil, nil, nil,
644
- 36, 4, nil, nil, 9, nil, nil, nil, 26, nil,
645
- nil, nil, 11, nil, nil, 32, nil, nil, nil, nil,
646
- nil, 32, nil, 32, nil, nil, 27, nil, nil, nil,
647
- 61, 61, 61, 31, nil, nil, 31, 31, nil, nil,
648
- 31, 31, 31, nil, nil, nil, nil, nil, 61, nil,
649
- 61, nil, nil, 61, nil, 61, nil, 61, nil, nil,
650
- nil, nil, nil, nil, nil, nil, nil, 32, nil, nil,
651
- nil, 31, nil, nil, nil, nil, nil, 31, nil, 31,
608
+ 27, 26, 36, 48, 4, 23, 9, 76, 3, 35,
609
+ 8, 35, 25, 55, 49, 50, 40, 59, 47, 9,
610
+ 56, 40, 72, 45, 44, 10, 10, 54, 43, 34,
611
+ 10, 10, 10, 39, 33, 39, 41, 30, 29, 64,
612
+ 16, 16, 49, 15, 15, 15, 15, 28, 4, 47,
613
+ 24, 76, 14, 14, 4, 13, 13, 51, 52, 41,
614
+ 42, 26, 21, 20, 9, 35, 35, 58, 19, 61,
615
+ 18, 7, 4, 17, 68, 69, 70, 71, 6, 26,
616
+ 4, 3, 74, 75, 1, nil, nil, 3, nil, 33,
617
+ nil, 9, 30, 3, 7, 3, 39, 44, nil, nil,
618
+ 47, 39, 64, 64, nil, nil, 11, nil, 9, nil,
619
+ nil, nil, nil, nil, nil, nil, 49, nil, 27, 26,
620
+ nil, 45, nil, nil, 9, 9, nil, nil, 3, nil,
621
+ nil, nil, 72, nil, 11, 11, 11, 59, 41, 40,
622
+ 56, 35, nil, nil, 41, nil, 41, 27, 40, nil,
623
+ nil, nil, nil, nil, 36, 23, nil, nil, 9, 4,
624
+ nil, nil, 25, 55, 3, 4, nil, 4, 23, nil,
625
+ nil, nil, nil, 7, nil, 25, nil, nil, nil, 7,
626
+ nil, 7, nil, nil, nil, 11, nil, nil, nil, nil,
627
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 9,
628
+ nil, nil, 23, nil, nil, nil, nil, nil, 23, 25,
629
+ nil, nil, nil, nil, nil, 25, 32, 50, nil, nil,
630
+ 9, nil, 9, nil, nil, 47, 35, nil, 27, 26,
631
+ 9, 11, 11, 11, 11, 11, 11, 11, 11, 11,
632
+ 11, 11, 11, 11, 11, 11, 11, 11, 11, 33,
633
+ 47, 43, 30, 3, 3, 3, 11, 32, nil, nil,
634
+ nil, 3, 36, nil, nil, nil, 9, nil, nil, 11,
635
+ 8, 32, nil, nil, nil, nil, 50, 32, 62, 32,
636
+ nil, 32, nil, nil, 35, 32, nil, nil, 32, nil,
637
+ nil, nil, nil, 9, nil, nil, nil, nil, 23, nil,
638
+ 32, nil, nil, 11, nil, 25, nil, 33, nil, 11,
639
+ 30, 31, 11, nil, nil, nil, nil, nil, nil, 4,
640
+ nil, nil, 76, nil, 9, nil, 23, 11, 9, nil,
641
+ nil, 36, 48, nil, nil, 9, nil, 26, nil, 32,
642
+ nil, nil, 32, 32, 47, nil, 32, 32, 32, 27,
643
+ nil, 3, 3, 3, nil, nil, nil, 32, nil, 32,
644
+ nil, nil, nil, nil, 35, nil, 31, 62, nil, 62,
645
+ nil, nil, 31, 27, 31, nil, 31, nil, nil, 32,
646
+ nil, nil, 36, 4, nil, 32, 9, 32, nil, nil,
647
+ 26, nil, nil, 11, nil, 31, nil, nil, nil, 11,
648
+ nil, nil, nil, nil, nil, nil, nil, nil, 27, nil,
649
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
650
+ nil, nil, nil, nil, nil, nil, nil, 11, nil, nil,
651
+ nil, 32, nil, 62, 31, nil, nil, 31, 31, nil,
652
+ nil, 31, 31, 31, nil, nil, nil, 11, nil, nil,
653
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
654
+ nil, nil, nil, nil, nil, nil, 32, 62, 62, 62,
655
+ nil, nil, nil, nil, 31, 32, nil, nil, nil, nil,
656
+ 31, nil, 31, nil, nil, 62, nil, 62, 32, 32,
657
+ 62, nil, 62, nil, 62, nil, nil, nil, nil, nil,
652
658
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
653
659
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
654
- nil, nil, 32, nil, nil, nil, nil, nil, nil, nil,
655
- nil, 32, nil, nil, nil, nil, nil, nil, nil, nil,
656
- nil, nil, nil, 31, 32, 32, nil, nil, nil, nil,
660
+ nil, nil, nil, nil, nil, nil, 31, nil, nil, nil,
657
661
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
658
662
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
659
- nil, nil, nil, nil, nil, nil, nil, nil, 31, nil,
660
- nil, nil, nil, nil, nil, nil, nil, 31, nil, nil,
661
663
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
662
- nil, 31 ]
664
+ nil, 31, nil, nil, nil, nil, nil, nil, nil, nil,
665
+ 31, nil, nil, nil, nil, nil, nil, nil, nil, nil,
666
+ nil, nil, nil, nil, 31 ]
663
667
 
664
668
  racc_goto_pointer = [
665
- nil, 97, nil, -80, -7, nil, -68, -38, -102, -53,
666
- -60, -11, nil, -133, -142, -155, -153, -124, -126, -129,
667
- -134, -136, nil, -59, -43, -54, 0, -1, 58, 54,
668
- 19, 287, 231, 13, -10, 8, -57, nil, nil, -34,
669
- -112, -43, -66, -116, -42, -231, -32, -37, -16, -133,
670
- -11, -10, nil, -343, -112, -223, nil, -275, -297, nil,
671
- -136, -15, nil, -297, nil, nil, nil, -153, -33, 27,
672
- -139, -94, nil, 92, 95, -3 ]
669
+ nil, 84, nil, -79, -7, nil, -83, 7, -107, -53,
670
+ -65, 42, nil, -137, -142, -153, -160, -129, -133, -136,
671
+ -142, -144, nil, -59, -53, -52, 0, -1, 46, 37,
672
+ 34, 308, 213, 31, -28, 8, -57, nil, nil, -33,
673
+ -114, -28, -73, -105, -45, -243, nil, -26, -37, -30,
674
+ -133, -16, -15, nil, -347, -113, -229, nil, -280, -302,
675
+ nil, -143, 40, nil, -298, nil, nil, nil, -166, -44,
676
+ 16, -152, -97, nil, 81, 82, -4 ]
673
677
 
674
678
  racc_goto_default = [
675
- nil, nil, 88, 215, 219, 89, nil, nil, nil, 157,
679
+ nil, nil, 88, 217, 221, 89, nil, nil, nil, 159,
676
680
  102, 103, 94, 104, 105, 106, 107, 108, 109, 110,
677
681
  111, 112, 113, 114, nil, nil, 63, 58, 50, nil,
678
- 6, 7, 8, 9, 10, 74, 208, 30, 31, nil,
679
- 132, 133, nil, nil, nil, 138, 40, 41, nil, nil,
680
- nil, nil, 276, 277, 346, 248, 348, nil, 209, 210,
681
- 211, 230, 218, 220, 221, 222, 223, 224, nil, nil,
682
- nil, nil, 231, nil, nil, nil ]
682
+ 6, 7, 8, 9, 10, 74, 210, 30, 31, nil,
683
+ 132, 133, nil, nil, nil, 138, 139, 40, 41, nil,
684
+ nil, nil, nil, 278, 279, 348, 250, 350, nil, 211,
685
+ 212, 213, 232, 220, 222, 223, 224, 225, 226, nil,
686
+ nil, nil, nil, 233, nil, nil, nil ]
683
687
 
684
688
  racc_reduce_table = [
685
689
  0, 0, :racc_error,
@@ -836,125 +840,127 @@ racc_reduce_table = [
836
840
  3, 136, :_reduce_151,
837
841
  1, 137, :_reduce_152,
838
842
  3, 137, :_reduce_153,
843
+ 1, 138, :_reduce_none,
844
+ 1, 138, :_reduce_155,
839
845
  1, 124, :_reduce_none,
840
846
  1, 124, :_reduce_none,
841
847
  1, 124, :_reduce_none,
842
848
  1, 125, :_reduce_none,
843
- 2, 127, :_reduce_158,
844
- 1, 127, :_reduce_159,
845
- 1, 139, :_reduce_160,
846
- 3, 139, :_reduce_161,
847
- 5, 139, :_reduce_162,
848
- 4, 139, :_reduce_163,
849
- 4, 139, :_reduce_164,
850
- 6, 139, :_reduce_165,
851
- 6, 139, :_reduce_166,
852
- 5, 139, :_reduce_167,
853
- 4, 139, :_reduce_168,
854
- 3, 139, :_reduce_169,
855
- 0, 143, :_reduce_170,
856
- 5, 139, :_reduce_171,
857
- 4, 139, :_reduce_172,
858
- 3, 139, :_reduce_173,
859
- 1, 138, :_reduce_174,
860
- 2, 138, :_reduce_175,
861
- 2, 138, :_reduce_176,
862
- 3, 138, :_reduce_177,
863
- 1, 140, :_reduce_178,
864
- 2, 140, :_reduce_179,
849
+ 2, 127, :_reduce_160,
850
+ 1, 127, :_reduce_161,
851
+ 1, 140, :_reduce_162,
852
+ 3, 140, :_reduce_163,
853
+ 5, 140, :_reduce_164,
854
+ 4, 140, :_reduce_165,
855
+ 4, 140, :_reduce_166,
856
+ 6, 140, :_reduce_167,
857
+ 6, 140, :_reduce_168,
858
+ 5, 140, :_reduce_169,
859
+ 4, 140, :_reduce_170,
860
+ 3, 140, :_reduce_171,
861
+ 0, 144, :_reduce_172,
862
+ 5, 140, :_reduce_173,
863
+ 4, 140, :_reduce_174,
864
+ 3, 140, :_reduce_175,
865
+ 1, 139, :_reduce_176,
866
+ 2, 139, :_reduce_177,
867
+ 2, 139, :_reduce_178,
868
+ 3, 139, :_reduce_179,
865
869
  1, 141, :_reduce_180,
866
- 3, 141, :_reduce_181,
867
- 1, 144, :_reduce_182,
868
- 3, 144, :_reduce_183,
869
- 2, 145, :_reduce_184,
870
- 2, 145, :_reduce_185,
871
- 1, 145, :_reduce_186,
872
- 1, 142, :_reduce_187,
873
- 3, 142, :_reduce_188,
874
- 1, 99, :_reduce_189,
875
- 2, 99, :_reduce_190,
876
- 1, 146, :_reduce_191,
877
- 2, 146, :_reduce_192,
878
- 1, 146, :_reduce_193,
879
- 3, 147, :_reduce_194,
880
- 2, 147, :_reduce_195,
881
- 3, 147, :_reduce_196,
882
- 3, 147, :_reduce_197,
883
- 4, 147, :_reduce_198,
884
- 3, 147, :_reduce_199,
885
- 4, 147, :_reduce_200,
886
- 2, 147, :_reduce_201,
887
- 0, 148, :_reduce_202,
888
- 4, 147, :_reduce_203,
889
- 3, 147, :_reduce_204,
890
- 0, 149, :_reduce_205,
891
- 5, 147, :_reduce_206,
892
- 1, 128, :_reduce_207,
893
- 2, 128, :_reduce_208,
894
- 3, 128, :_reduce_209,
895
- 4, 128, :_reduce_210,
896
- 1, 100, :_reduce_211,
897
- 2, 100, :_reduce_212,
898
- 3, 100, :_reduce_213,
899
- 4, 100, :_reduce_214,
900
- 2, 150, :_reduce_none,
901
- 1, 151, :_reduce_none,
870
+ 2, 141, :_reduce_181,
871
+ 1, 142, :_reduce_182,
872
+ 3, 142, :_reduce_183,
873
+ 1, 145, :_reduce_184,
874
+ 3, 145, :_reduce_185,
875
+ 2, 146, :_reduce_186,
876
+ 2, 146, :_reduce_187,
877
+ 1, 146, :_reduce_188,
878
+ 1, 143, :_reduce_189,
879
+ 3, 143, :_reduce_190,
880
+ 1, 99, :_reduce_191,
881
+ 2, 99, :_reduce_192,
882
+ 1, 147, :_reduce_193,
883
+ 2, 147, :_reduce_194,
884
+ 1, 147, :_reduce_195,
885
+ 3, 148, :_reduce_196,
886
+ 2, 148, :_reduce_197,
887
+ 3, 148, :_reduce_198,
888
+ 3, 148, :_reduce_199,
889
+ 4, 148, :_reduce_200,
890
+ 3, 148, :_reduce_201,
891
+ 4, 148, :_reduce_202,
892
+ 2, 148, :_reduce_203,
893
+ 0, 149, :_reduce_204,
894
+ 4, 148, :_reduce_205,
895
+ 3, 148, :_reduce_206,
896
+ 0, 150, :_reduce_207,
897
+ 5, 148, :_reduce_208,
898
+ 1, 128, :_reduce_209,
899
+ 2, 128, :_reduce_210,
900
+ 3, 128, :_reduce_211,
901
+ 4, 128, :_reduce_212,
902
+ 1, 100, :_reduce_213,
903
+ 2, 100, :_reduce_214,
904
+ 3, 100, :_reduce_215,
905
+ 4, 100, :_reduce_216,
902
906
  2, 151, :_reduce_none,
903
- 3, 152, :_reduce_none,
907
+ 1, 152, :_reduce_none,
904
908
  2, 152, :_reduce_none,
905
- 1, 153, :_reduce_none,
906
- 1, 153, :_reduce_none,
907
- 1, 153, :_reduce_none,
908
- 1, 153, :_reduce_none,
909
- 1, 153, :_reduce_none,
910
- 1, 153, :_reduce_none,
911
- 3, 154, :_reduce_226,
912
- 4, 154, :_reduce_227,
913
- 3, 154, :_reduce_228,
914
- 1, 159, :_reduce_none,
915
- 1, 159, :_reduce_230,
916
- 2, 96, :_reduce_231,
917
- 0, 161, :_reduce_232,
918
- 0, 162, :_reduce_233,
919
- 5, 96, :_reduce_234,
920
- 1, 160, :_reduce_235,
921
- 2, 160, :_reduce_236,
922
- 1, 163, :_reduce_none,
923
- 1, 163, :_reduce_none,
924
- 1, 163, :_reduce_none,
925
- 1, 155, :_reduce_240,
926
- 2, 155, :_reduce_241,
927
- 5, 156, :_reduce_242,
928
- 7, 156, :_reduce_243,
929
- 5, 156, :_reduce_244,
930
- 5, 157, :_reduce_245,
931
- 7, 157, :_reduce_246,
932
- 6, 157, :_reduce_247,
933
- 7, 157, :_reduce_248,
934
- 6, 157, :_reduce_249,
935
- 7, 157, :_reduce_250,
936
- 3, 158, :_reduce_251,
937
- 4, 158, :_reduce_252,
938
- 2, 158, :_reduce_253,
939
- 2, 158, :_reduce_254,
940
- 2, 158, :_reduce_255,
941
- 3, 158, :_reduce_256,
942
- 0, 93, :_reduce_257,
943
- 2, 93, :_reduce_258,
944
- 1, 165, :_reduce_none,
945
- 1, 165, :_reduce_none,
946
- 4, 166, :_reduce_261,
947
- 3, 166, :_reduce_262,
948
- 3, 166, :_reduce_263,
949
- 2, 166, :_reduce_264,
950
- 4, 164, :_reduce_265,
951
- 3, 164, :_reduce_266,
952
- 1, 167, :_reduce_267,
953
- 2, 167, :_reduce_268 ]
954
-
955
- racc_reduce_n = 269
956
-
957
- racc_shift_n = 458
909
+ 3, 153, :_reduce_none,
910
+ 2, 153, :_reduce_none,
911
+ 1, 154, :_reduce_none,
912
+ 1, 154, :_reduce_none,
913
+ 1, 154, :_reduce_none,
914
+ 1, 154, :_reduce_none,
915
+ 1, 154, :_reduce_none,
916
+ 1, 154, :_reduce_none,
917
+ 3, 155, :_reduce_228,
918
+ 4, 155, :_reduce_229,
919
+ 3, 155, :_reduce_230,
920
+ 1, 160, :_reduce_none,
921
+ 1, 160, :_reduce_232,
922
+ 2, 96, :_reduce_233,
923
+ 0, 162, :_reduce_234,
924
+ 0, 163, :_reduce_235,
925
+ 5, 96, :_reduce_236,
926
+ 1, 161, :_reduce_237,
927
+ 2, 161, :_reduce_238,
928
+ 1, 164, :_reduce_none,
929
+ 1, 164, :_reduce_none,
930
+ 1, 164, :_reduce_none,
931
+ 1, 156, :_reduce_242,
932
+ 2, 156, :_reduce_243,
933
+ 5, 157, :_reduce_244,
934
+ 7, 157, :_reduce_245,
935
+ 5, 157, :_reduce_246,
936
+ 5, 158, :_reduce_247,
937
+ 7, 158, :_reduce_248,
938
+ 6, 158, :_reduce_249,
939
+ 7, 158, :_reduce_250,
940
+ 6, 158, :_reduce_251,
941
+ 7, 158, :_reduce_252,
942
+ 3, 159, :_reduce_253,
943
+ 4, 159, :_reduce_254,
944
+ 2, 159, :_reduce_255,
945
+ 2, 159, :_reduce_256,
946
+ 2, 159, :_reduce_257,
947
+ 3, 159, :_reduce_258,
948
+ 0, 93, :_reduce_259,
949
+ 2, 93, :_reduce_260,
950
+ 1, 166, :_reduce_none,
951
+ 1, 166, :_reduce_none,
952
+ 4, 167, :_reduce_263,
953
+ 3, 167, :_reduce_264,
954
+ 3, 167, :_reduce_265,
955
+ 2, 167, :_reduce_266,
956
+ 4, 165, :_reduce_267,
957
+ 3, 165, :_reduce_268,
958
+ 1, 168, :_reduce_269,
959
+ 2, 168, :_reduce_270 ]
960
+
961
+ racc_reduce_n = 271
962
+
963
+ racc_shift_n = 460
958
964
 
959
965
  racc_token_table = {
960
966
  false => 0,
@@ -1209,6 +1215,7 @@ Racc_token_to_s_table = [
1209
1215
  "struct_declarator",
1210
1216
  "enumerator_list",
1211
1217
  "enumerator",
1218
+ "enumerator_name",
1212
1219
  "pointer",
1213
1220
  "direct_declarator",
1214
1221
  "type_qualifier_list",
@@ -2505,46 +2512,58 @@ module_eval(<<'.,.,', 'parser.y', 983)
2505
2512
  result = EnumSpecifier.new(create_anon_tag_name(val[0]), val[2])
2506
2513
  result.head_token = val[0]
2507
2514
  result.tail_token = val[3]
2515
+ result.enumerators.each do |enum|
2516
+ @lexer.add_enumerator_name(enum.identifier)
2517
+ end
2508
2518
 
2509
2519
  result
2510
2520
  end
2511
2521
  .,.,
2512
2522
 
2513
- module_eval(<<'.,.,', 'parser.y', 990)
2523
+ module_eval(<<'.,.,', 'parser.y', 993)
2514
2524
  def _reduce_146(val, _values, result)
2515
2525
  checkpoint(val[0].location)
2516
2526
  result = EnumSpecifier.new(val[1], val[3])
2517
2527
  result.head_token = val[0]
2518
2528
  result.tail_token = val[4]
2529
+ result.enumerators.each do |enum|
2530
+ @lexer.add_enumerator_name(enum.identifier)
2531
+ end
2519
2532
 
2520
2533
  result
2521
2534
  end
2522
2535
  .,.,
2523
2536
 
2524
- module_eval(<<'.,.,', 'parser.y', 997)
2537
+ module_eval(<<'.,.,', 'parser.y', 1003)
2525
2538
  def _reduce_147(val, _values, result)
2526
2539
  checkpoint(val[0].location)
2527
2540
  result = EnumSpecifier.new(create_anon_tag_name(val[0]),
2528
2541
  val[2], val[3])
2529
2542
  result.head_token = val[0]
2530
2543
  result.tail_token = val[4]
2544
+ result.enumerators.each do |enum|
2545
+ @lexer.add_enumerator_name(enum.identifier)
2546
+ end
2531
2547
 
2532
2548
  result
2533
2549
  end
2534
2550
  .,.,
2535
2551
 
2536
- module_eval(<<'.,.,', 'parser.y', 1005)
2552
+ module_eval(<<'.,.,', 'parser.y', 1014)
2537
2553
  def _reduce_148(val, _values, result)
2538
2554
  checkpoint(val[0].location)
2539
2555
  result = EnumSpecifier.new(val[1], val[3], val[4])
2540
2556
  result.head_token = val[0]
2541
2557
  result.tail_token = val[5]
2558
+ result.enumerators.each do |enum|
2559
+ @lexer.add_enumerator_name(enum.identifier)
2560
+ end
2542
2561
 
2543
2562
  result
2544
2563
  end
2545
2564
  .,.,
2546
2565
 
2547
- module_eval(<<'.,.,', 'parser.y', 1012)
2566
+ module_eval(<<'.,.,', 'parser.y', 1024)
2548
2567
  def _reduce_149(val, _values, result)
2549
2568
  checkpoint(val[0].location)
2550
2569
  result = EnumSpecifier.new(val[1], nil)
@@ -2555,7 +2574,7 @@ module_eval(<<'.,.,', 'parser.y', 1012)
2555
2574
  end
2556
2575
  .,.,
2557
2576
 
2558
- module_eval(<<'.,.,', 'parser.y', 1022)
2577
+ module_eval(<<'.,.,', 'parser.y', 1034)
2559
2578
  def _reduce_150(val, _values, result)
2560
2579
  checkpoint(val[0].location)
2561
2580
  result = val
@@ -2564,7 +2583,7 @@ module_eval(<<'.,.,', 'parser.y', 1022)
2564
2583
  end
2565
2584
  .,.,
2566
2585
 
2567
- module_eval(<<'.,.,', 'parser.y', 1027)
2586
+ module_eval(<<'.,.,', 'parser.y', 1039)
2568
2587
  def _reduce_151(val, _values, result)
2569
2588
  checkpoint(val[0].first.location)
2570
2589
  result = val[0].push(val[2])
@@ -2573,7 +2592,7 @@ module_eval(<<'.,.,', 'parser.y', 1027)
2573
2592
  end
2574
2593
  .,.,
2575
2594
 
2576
- module_eval(<<'.,.,', 'parser.y', 1035)
2595
+ module_eval(<<'.,.,', 'parser.y', 1047)
2577
2596
  def _reduce_152(val, _values, result)
2578
2597
  checkpoint(val[0].location)
2579
2598
  sym = @sym_tbl.create_new_symbol(EnumeratorName, val[0])
@@ -2584,7 +2603,7 @@ module_eval(<<'.,.,', 'parser.y', 1035)
2584
2603
  end
2585
2604
  .,.,
2586
2605
 
2587
- module_eval(<<'.,.,', 'parser.y', 1042)
2606
+ module_eval(<<'.,.,', 'parser.y', 1054)
2588
2607
  def _reduce_153(val, _values, result)
2589
2608
  checkpoint(val[0].location)
2590
2609
  val[2].full = true
@@ -2599,14 +2618,24 @@ module_eval(<<'.,.,', 'parser.y', 1042)
2599
2618
 
2600
2619
  # reduce 154 omitted
2601
2620
 
2602
- # reduce 155 omitted
2621
+ module_eval(<<'.,.,', 'parser.y', 1067)
2622
+ def _reduce_155(val, _values, result)
2623
+ result = val[0].class.new(:IDENTIFIER, val[0].value, val[0].location)
2624
+
2625
+ result
2626
+ end
2627
+ .,.,
2603
2628
 
2604
2629
  # reduce 156 omitted
2605
2630
 
2606
2631
  # reduce 157 omitted
2607
2632
 
2608
- module_eval(<<'.,.,', 'parser.y', 1064)
2609
- def _reduce_158(val, _values, result)
2633
+ # reduce 158 omitted
2634
+
2635
+ # reduce 159 omitted
2636
+
2637
+ module_eval(<<'.,.,', 'parser.y', 1084)
2638
+ def _reduce_160(val, _values, result)
2610
2639
  checkpoint(val[0].first.location)
2611
2640
  result = val[1]
2612
2641
  result.pointer = val[0]
@@ -2617,8 +2646,8 @@ module_eval(<<'.,.,', 'parser.y', 1064)
2617
2646
  end
2618
2647
  .,.,
2619
2648
 
2620
- module_eval(<<'.,.,', 'parser.y', 1072)
2621
- def _reduce_159(val, _values, result)
2649
+ module_eval(<<'.,.,', 'parser.y', 1092)
2650
+ def _reduce_161(val, _values, result)
2622
2651
  checkpoint(val[0].location)
2623
2652
  result = val[0]
2624
2653
  result.full = true
@@ -2627,8 +2656,8 @@ module_eval(<<'.,.,', 'parser.y', 1072)
2627
2656
  end
2628
2657
  .,.,
2629
2658
 
2630
- module_eval(<<'.,.,', 'parser.y', 1081)
2631
- def _reduce_160(val, _values, result)
2659
+ module_eval(<<'.,.,', 'parser.y', 1101)
2660
+ def _reduce_162(val, _values, result)
2632
2661
  checkpoint(val[0].location)
2633
2662
  @lexer.enable_identifier_translation
2634
2663
  result = IdentifierDeclarator.new(val[0])
@@ -2638,8 +2667,8 @@ module_eval(<<'.,.,', 'parser.y', 1081)
2638
2667
  end
2639
2668
  .,.,
2640
2669
 
2641
- module_eval(<<'.,.,', 'parser.y', 1088)
2642
- def _reduce_161(val, _values, result)
2670
+ module_eval(<<'.,.,', 'parser.y', 1108)
2671
+ def _reduce_163(val, _values, result)
2643
2672
  checkpoint(val[0].location)
2644
2673
  result = GroupedDeclarator.new(val[1])
2645
2674
  result.head_token = val[0]
@@ -2649,8 +2678,8 @@ module_eval(<<'.,.,', 'parser.y', 1088)
2649
2678
  end
2650
2679
  .,.,
2651
2680
 
2652
- module_eval(<<'.,.,', 'parser.y', 1095)
2653
- def _reduce_162(val, _values, result)
2681
+ module_eval(<<'.,.,', 'parser.y', 1115)
2682
+ def _reduce_164(val, _values, result)
2654
2683
  checkpoint(val[0].location)
2655
2684
  val[3].full = true
2656
2685
  result = ArrayDeclarator.new(val[0], val[3])
@@ -2661,8 +2690,8 @@ module_eval(<<'.,.,', 'parser.y', 1095)
2661
2690
  end
2662
2691
  .,.,
2663
2692
 
2664
- module_eval(<<'.,.,', 'parser.y', 1103)
2665
- def _reduce_163(val, _values, result)
2693
+ module_eval(<<'.,.,', 'parser.y', 1123)
2694
+ def _reduce_165(val, _values, result)
2666
2695
  checkpoint(val[0].location)
2667
2696
  result = ArrayDeclarator.new(val[0], nil)
2668
2697
  result.head_token = val[0].head_token
@@ -2672,8 +2701,8 @@ module_eval(<<'.,.,', 'parser.y', 1103)
2672
2701
  end
2673
2702
  .,.,
2674
2703
 
2675
- module_eval(<<'.,.,', 'parser.y', 1110)
2676
- def _reduce_164(val, _values, result)
2704
+ module_eval(<<'.,.,', 'parser.y', 1130)
2705
+ def _reduce_166(val, _values, result)
2677
2706
  checkpoint(val[0].location)
2678
2707
  val[2].full = true
2679
2708
  result = ArrayDeclarator.new(val[0], val[2])
@@ -2684,8 +2713,8 @@ module_eval(<<'.,.,', 'parser.y', 1110)
2684
2713
  end
2685
2714
  .,.,
2686
2715
 
2687
- module_eval(<<'.,.,', 'parser.y', 1119)
2688
- def _reduce_165(val, _values, result)
2716
+ module_eval(<<'.,.,', 'parser.y', 1139)
2717
+ def _reduce_167(val, _values, result)
2689
2718
  checkpoint(val[0].location)
2690
2719
  val[4].full = true
2691
2720
  result = ArrayDeclarator.new(val[0], val[4])
@@ -2696,8 +2725,8 @@ module_eval(<<'.,.,', 'parser.y', 1119)
2696
2725
  end
2697
2726
  .,.,
2698
2727
 
2699
- module_eval(<<'.,.,', 'parser.y', 1128)
2700
- def _reduce_166(val, _values, result)
2728
+ module_eval(<<'.,.,', 'parser.y', 1148)
2729
+ def _reduce_168(val, _values, result)
2701
2730
  checkpoint(val[0].location)
2702
2731
  val[4].full = true
2703
2732
  result = ArrayDeclarator.new(val[0], val[4])
@@ -2708,8 +2737,8 @@ module_eval(<<'.,.,', 'parser.y', 1128)
2708
2737
  end
2709
2738
  .,.,
2710
2739
 
2711
- module_eval(<<'.,.,', 'parser.y', 1136)
2712
- def _reduce_167(val, _values, result)
2740
+ module_eval(<<'.,.,', 'parser.y', 1156)
2741
+ def _reduce_169(val, _values, result)
2713
2742
  checkpoint(val[0].location)
2714
2743
  result = ArrayDeclarator.new(val[0], nil)
2715
2744
  result.head_token = val[0].head_token
@@ -2719,8 +2748,8 @@ module_eval(<<'.,.,', 'parser.y', 1136)
2719
2748
  end
2720
2749
  .,.,
2721
2750
 
2722
- module_eval(<<'.,.,', 'parser.y', 1143)
2723
- def _reduce_168(val, _values, result)
2751
+ module_eval(<<'.,.,', 'parser.y', 1163)
2752
+ def _reduce_170(val, _values, result)
2724
2753
  checkpoint(val[0].location)
2725
2754
  result = ArrayDeclarator.new(val[0], nil)
2726
2755
  result.head_token = val[0].head_token
@@ -2730,8 +2759,8 @@ module_eval(<<'.,.,', 'parser.y', 1143)
2730
2759
  end
2731
2760
  .,.,
2732
2761
 
2733
- module_eval(<<'.,.,', 'parser.y', 1150)
2734
- def _reduce_169(val, _values, result)
2762
+ module_eval(<<'.,.,', 'parser.y', 1170)
2763
+ def _reduce_171(val, _values, result)
2735
2764
  checkpoint(val[0].location)
2736
2765
  result = ArrayDeclarator.new(val[0], nil)
2737
2766
  result.head_token = val[0].head_token
@@ -2741,15 +2770,15 @@ module_eval(<<'.,.,', 'parser.y', 1150)
2741
2770
  end
2742
2771
  .,.,
2743
2772
 
2744
- module_eval(<<'.,.,', 'parser.y', 1155)
2745
- def _reduce_170(val, _values, result)
2773
+ module_eval(<<'.,.,', 'parser.y', 1175)
2774
+ def _reduce_172(val, _values, result)
2746
2775
  @lexer.enable_identifier_translation
2747
2776
  result
2748
2777
  end
2749
2778
  .,.,
2750
2779
 
2751
- module_eval(<<'.,.,', 'parser.y', 1158)
2752
- def _reduce_171(val, _values, result)
2780
+ module_eval(<<'.,.,', 'parser.y', 1178)
2781
+ def _reduce_173(val, _values, result)
2753
2782
  checkpoint(val[0].location)
2754
2783
  result = AnsiFunctionDeclarator.new(val[0], val[3])
2755
2784
  result.head_token = val[0].head_token
@@ -2759,8 +2788,8 @@ module_eval(<<'.,.,', 'parser.y', 1158)
2759
2788
  end
2760
2789
  .,.,
2761
2790
 
2762
- module_eval(<<'.,.,', 'parser.y', 1165)
2763
- def _reduce_172(val, _values, result)
2791
+ module_eval(<<'.,.,', 'parser.y', 1185)
2792
+ def _reduce_174(val, _values, result)
2764
2793
  checkpoint(val[0].location)
2765
2794
  result = KandRFunctionDeclarator.new(val[0], val[2])
2766
2795
  result.head_token = val[0].head_token
@@ -2770,8 +2799,8 @@ module_eval(<<'.,.,', 'parser.y', 1165)
2770
2799
  end
2771
2800
  .,.,
2772
2801
 
2773
- module_eval(<<'.,.,', 'parser.y', 1172)
2774
- def _reduce_173(val, _values, result)
2802
+ module_eval(<<'.,.,', 'parser.y', 1192)
2803
+ def _reduce_175(val, _values, result)
2775
2804
  checkpoint(val[0].location)
2776
2805
  result = AbbreviatedFunctionDeclarator.new(val[0])
2777
2806
  result.head_token = val[0].head_token
@@ -2781,8 +2810,8 @@ module_eval(<<'.,.,', 'parser.y', 1172)
2781
2810
  end
2782
2811
  .,.,
2783
2812
 
2784
- module_eval(<<'.,.,', 'parser.y', 1182)
2785
- def _reduce_174(val, _values, result)
2813
+ module_eval(<<'.,.,', 'parser.y', 1202)
2814
+ def _reduce_176(val, _values, result)
2786
2815
  checkpoint(val[0].location)
2787
2816
  result = val
2788
2817
 
@@ -2790,8 +2819,8 @@ module_eval(<<'.,.,', 'parser.y', 1182)
2790
2819
  end
2791
2820
  .,.,
2792
2821
 
2793
- module_eval(<<'.,.,', 'parser.y', 1187)
2794
- def _reduce_175(val, _values, result)
2822
+ module_eval(<<'.,.,', 'parser.y', 1207)
2823
+ def _reduce_177(val, _values, result)
2795
2824
  checkpoint(val[0].location)
2796
2825
  result = val[1].unshift(val[0])
2797
2826
 
@@ -2799,8 +2828,8 @@ module_eval(<<'.,.,', 'parser.y', 1187)
2799
2828
  end
2800
2829
  .,.,
2801
2830
 
2802
- module_eval(<<'.,.,', 'parser.y', 1192)
2803
- def _reduce_176(val, _values, result)
2831
+ module_eval(<<'.,.,', 'parser.y', 1212)
2832
+ def _reduce_178(val, _values, result)
2804
2833
  checkpoint(val[0].location)
2805
2834
  result = val[1].unshift(val[0])
2806
2835
 
@@ -2808,8 +2837,8 @@ module_eval(<<'.,.,', 'parser.y', 1192)
2808
2837
  end
2809
2838
  .,.,
2810
2839
 
2811
- module_eval(<<'.,.,', 'parser.y', 1197)
2812
- def _reduce_177(val, _values, result)
2840
+ module_eval(<<'.,.,', 'parser.y', 1217)
2841
+ def _reduce_179(val, _values, result)
2813
2842
  checkpoint(val[0].location)
2814
2843
  result = val[1].unshift(val[0]).concat(val[2])
2815
2844
 
@@ -2817,8 +2846,8 @@ module_eval(<<'.,.,', 'parser.y', 1197)
2817
2846
  end
2818
2847
  .,.,
2819
2848
 
2820
- module_eval(<<'.,.,', 'parser.y', 1205)
2821
- def _reduce_178(val, _values, result)
2849
+ module_eval(<<'.,.,', 'parser.y', 1225)
2850
+ def _reduce_180(val, _values, result)
2822
2851
  checkpoint(val[0].location)
2823
2852
  result = val
2824
2853
 
@@ -2826,8 +2855,8 @@ module_eval(<<'.,.,', 'parser.y', 1205)
2826
2855
  end
2827
2856
  .,.,
2828
2857
 
2829
- module_eval(<<'.,.,', 'parser.y', 1210)
2830
- def _reduce_179(val, _values, result)
2858
+ module_eval(<<'.,.,', 'parser.y', 1230)
2859
+ def _reduce_181(val, _values, result)
2831
2860
  checkpoint(val[0].first.location)
2832
2861
  result = val[0].push(val[1])
2833
2862
 
@@ -2835,8 +2864,8 @@ module_eval(<<'.,.,', 'parser.y', 1210)
2835
2864
  end
2836
2865
  .,.,
2837
2866
 
2838
- module_eval(<<'.,.,', 'parser.y', 1218)
2839
- def _reduce_180(val, _values, result)
2867
+ module_eval(<<'.,.,', 'parser.y', 1238)
2868
+ def _reduce_182(val, _values, result)
2840
2869
  checkpoint(val[0].first.location)
2841
2870
  result = ParameterTypeList.new(val[0], false)
2842
2871
  result.head_token = val[0].first.head_token
@@ -2846,8 +2875,8 @@ module_eval(<<'.,.,', 'parser.y', 1218)
2846
2875
  end
2847
2876
  .,.,
2848
2877
 
2849
- module_eval(<<'.,.,', 'parser.y', 1225)
2850
- def _reduce_181(val, _values, result)
2878
+ module_eval(<<'.,.,', 'parser.y', 1245)
2879
+ def _reduce_183(val, _values, result)
2851
2880
  checkpoint(val[0].first.location)
2852
2881
  result = ParameterTypeList.new(val[0], true)
2853
2882
  result.head_token = val[0].first.head_token
@@ -2857,8 +2886,8 @@ module_eval(<<'.,.,', 'parser.y', 1225)
2857
2886
  end
2858
2887
  .,.,
2859
2888
 
2860
- module_eval(<<'.,.,', 'parser.y', 1235)
2861
- def _reduce_182(val, _values, result)
2889
+ module_eval(<<'.,.,', 'parser.y', 1255)
2890
+ def _reduce_184(val, _values, result)
2862
2891
  checkpoint(val[0].location)
2863
2892
  result = val
2864
2893
 
@@ -2866,8 +2895,8 @@ module_eval(<<'.,.,', 'parser.y', 1235)
2866
2895
  end
2867
2896
  .,.,
2868
2897
 
2869
- module_eval(<<'.,.,', 'parser.y', 1240)
2870
- def _reduce_183(val, _values, result)
2898
+ module_eval(<<'.,.,', 'parser.y', 1260)
2899
+ def _reduce_185(val, _values, result)
2871
2900
  checkpoint(val[0].first.location)
2872
2901
  result = val[0].push(val[2])
2873
2902
 
@@ -2875,8 +2904,8 @@ module_eval(<<'.,.,', 'parser.y', 1240)
2875
2904
  end
2876
2905
  .,.,
2877
2906
 
2878
- module_eval(<<'.,.,', 'parser.y', 1248)
2879
- def _reduce_184(val, _values, result)
2907
+ module_eval(<<'.,.,', 'parser.y', 1268)
2908
+ def _reduce_186(val, _values, result)
2880
2909
  checkpoint(val[0].location)
2881
2910
  @lexer.enable_identifier_translation
2882
2911
  result = ParameterDeclaration.new(val[0], val[1])
@@ -2887,8 +2916,8 @@ module_eval(<<'.,.,', 'parser.y', 1248)
2887
2916
  end
2888
2917
  .,.,
2889
2918
 
2890
- module_eval(<<'.,.,', 'parser.y', 1256)
2891
- def _reduce_185(val, _values, result)
2919
+ module_eval(<<'.,.,', 'parser.y', 1276)
2920
+ def _reduce_187(val, _values, result)
2892
2921
  checkpoint(val[0].location)
2893
2922
  @lexer.enable_identifier_translation
2894
2923
  result = ParameterDeclaration.new(val[0], val[1])
@@ -2899,8 +2928,8 @@ module_eval(<<'.,.,', 'parser.y', 1256)
2899
2928
  end
2900
2929
  .,.,
2901
2930
 
2902
- module_eval(<<'.,.,', 'parser.y', 1264)
2903
- def _reduce_186(val, _values, result)
2931
+ module_eval(<<'.,.,', 'parser.y', 1284)
2932
+ def _reduce_188(val, _values, result)
2904
2933
  checkpoint(val[0].location)
2905
2934
  @lexer.enable_identifier_translation
2906
2935
  result = ParameterDeclaration.new(val[0], nil)
@@ -2911,8 +2940,8 @@ module_eval(<<'.,.,', 'parser.y', 1264)
2911
2940
  end
2912
2941
  .,.,
2913
2942
 
2914
- module_eval(<<'.,.,', 'parser.y', 1275)
2915
- def _reduce_187(val, _values, result)
2943
+ module_eval(<<'.,.,', 'parser.y', 1295)
2944
+ def _reduce_189(val, _values, result)
2916
2945
  checkpoint(val[0].location)
2917
2946
  result = val
2918
2947
 
@@ -2920,8 +2949,8 @@ module_eval(<<'.,.,', 'parser.y', 1275)
2920
2949
  end
2921
2950
  .,.,
2922
2951
 
2923
- module_eval(<<'.,.,', 'parser.y', 1280)
2924
- def _reduce_188(val, _values, result)
2952
+ module_eval(<<'.,.,', 'parser.y', 1300)
2953
+ def _reduce_190(val, _values, result)
2925
2954
  checkpoint(val[0].first.location)
2926
2955
  result = val[0].push(val[2])
2927
2956
 
@@ -2929,8 +2958,8 @@ module_eval(<<'.,.,', 'parser.y', 1280)
2929
2958
  end
2930
2959
  .,.,
2931
2960
 
2932
- module_eval(<<'.,.,', 'parser.y', 1288)
2933
- def _reduce_189(val, _values, result)
2961
+ module_eval(<<'.,.,', 'parser.y', 1308)
2962
+ def _reduce_191(val, _values, result)
2934
2963
  checkpoint(val[0].location)
2935
2964
  @lexer.enable_identifier_translation
2936
2965
  result = TypeName.new(val[0], nil, @sym_tbl)
@@ -2941,8 +2970,8 @@ module_eval(<<'.,.,', 'parser.y', 1288)
2941
2970
  end
2942
2971
  .,.,
2943
2972
 
2944
- module_eval(<<'.,.,', 'parser.y', 1296)
2945
- def _reduce_190(val, _values, result)
2973
+ module_eval(<<'.,.,', 'parser.y', 1316)
2974
+ def _reduce_192(val, _values, result)
2946
2975
  checkpoint(val[0].location)
2947
2976
  @lexer.enable_identifier_translation
2948
2977
  result = TypeName.new(val[0], val[1], @sym_tbl)
@@ -2953,8 +2982,8 @@ module_eval(<<'.,.,', 'parser.y', 1296)
2953
2982
  end
2954
2983
  .,.,
2955
2984
 
2956
- module_eval(<<'.,.,', 'parser.y', 1307)
2957
- def _reduce_191(val, _values, result)
2985
+ module_eval(<<'.,.,', 'parser.y', 1327)
2986
+ def _reduce_193(val, _values, result)
2958
2987
  checkpoint(val[0].first.location)
2959
2988
  @lexer.enable_identifier_translation
2960
2989
  result = PointerAbstractDeclarator.new(nil, val[0])
@@ -2966,8 +2995,8 @@ module_eval(<<'.,.,', 'parser.y', 1307)
2966
2995
  end
2967
2996
  .,.,
2968
2997
 
2969
- module_eval(<<'.,.,', 'parser.y', 1316)
2970
- def _reduce_192(val, _values, result)
2998
+ module_eval(<<'.,.,', 'parser.y', 1336)
2999
+ def _reduce_194(val, _values, result)
2971
3000
  checkpoint(val[0].first.location)
2972
3001
  @lexer.enable_identifier_translation
2973
3002
  result = PointerAbstractDeclarator.new(val[1], val[0])
@@ -2979,8 +3008,8 @@ module_eval(<<'.,.,', 'parser.y', 1316)
2979
3008
  end
2980
3009
  .,.,
2981
3010
 
2982
- module_eval(<<'.,.,', 'parser.y', 1325)
2983
- def _reduce_193(val, _values, result)
3011
+ module_eval(<<'.,.,', 'parser.y', 1345)
3012
+ def _reduce_195(val, _values, result)
2984
3013
  checkpoint(val[0].location)
2985
3014
  result = val[0]
2986
3015
  result.full = true
@@ -2989,8 +3018,8 @@ module_eval(<<'.,.,', 'parser.y', 1325)
2989
3018
  end
2990
3019
  .,.,
2991
3020
 
2992
- module_eval(<<'.,.,', 'parser.y', 1334)
2993
- def _reduce_194(val, _values, result)
3021
+ module_eval(<<'.,.,', 'parser.y', 1354)
3022
+ def _reduce_196(val, _values, result)
2994
3023
  checkpoint(val[0].location)
2995
3024
  result = GroupedAbstractDeclarator.new(val[1])
2996
3025
  result.head_token = val[0]
@@ -3000,8 +3029,8 @@ module_eval(<<'.,.,', 'parser.y', 1334)
3000
3029
  end
3001
3030
  .,.,
3002
3031
 
3003
- module_eval(<<'.,.,', 'parser.y', 1341)
3004
- def _reduce_195(val, _values, result)
3032
+ module_eval(<<'.,.,', 'parser.y', 1361)
3033
+ def _reduce_197(val, _values, result)
3005
3034
  checkpoint(val[0].location)
3006
3035
  result = ArrayAbstractDeclarator.new(nil, nil)
3007
3036
  result.head_token = val[0]
@@ -3011,8 +3040,8 @@ module_eval(<<'.,.,', 'parser.y', 1341)
3011
3040
  end
3012
3041
  .,.,
3013
3042
 
3014
- module_eval(<<'.,.,', 'parser.y', 1348)
3015
- def _reduce_196(val, _values, result)
3043
+ module_eval(<<'.,.,', 'parser.y', 1368)
3044
+ def _reduce_198(val, _values, result)
3016
3045
  checkpoint(val[0].location)
3017
3046
  val[1].full = true
3018
3047
  result = ArrayAbstractDeclarator.new(nil, val[1])
@@ -3023,8 +3052,8 @@ module_eval(<<'.,.,', 'parser.y', 1348)
3023
3052
  end
3024
3053
  .,.,
3025
3054
 
3026
- module_eval(<<'.,.,', 'parser.y', 1356)
3027
- def _reduce_197(val, _values, result)
3055
+ module_eval(<<'.,.,', 'parser.y', 1376)
3056
+ def _reduce_199(val, _values, result)
3028
3057
  checkpoint(val[0].location)
3029
3058
  result = ArrayAbstractDeclarator.new(val[0], nil)
3030
3059
  result.head_token = val[0].head_token
@@ -3034,8 +3063,8 @@ module_eval(<<'.,.,', 'parser.y', 1356)
3034
3063
  end
3035
3064
  .,.,
3036
3065
 
3037
- module_eval(<<'.,.,', 'parser.y', 1363)
3038
- def _reduce_198(val, _values, result)
3066
+ module_eval(<<'.,.,', 'parser.y', 1383)
3067
+ def _reduce_200(val, _values, result)
3039
3068
  checkpoint(val[0].location)
3040
3069
  val[2].full = true
3041
3070
  result = ArrayAbstractDeclarator.new(val[0], val[2])
@@ -3046,8 +3075,8 @@ module_eval(<<'.,.,', 'parser.y', 1363)
3046
3075
  end
3047
3076
  .,.,
3048
3077
 
3049
- module_eval(<<'.,.,', 'parser.y', 1371)
3050
- def _reduce_199(val, _values, result)
3078
+ module_eval(<<'.,.,', 'parser.y', 1391)
3079
+ def _reduce_201(val, _values, result)
3051
3080
  checkpoint(val[0].location)
3052
3081
  result = ArrayAbstractDeclarator.new(nil, nil)
3053
3082
  result.head_token = val[0]
@@ -3057,8 +3086,8 @@ module_eval(<<'.,.,', 'parser.y', 1371)
3057
3086
  end
3058
3087
  .,.,
3059
3088
 
3060
- module_eval(<<'.,.,', 'parser.y', 1378)
3061
- def _reduce_200(val, _values, result)
3089
+ module_eval(<<'.,.,', 'parser.y', 1398)
3090
+ def _reduce_202(val, _values, result)
3062
3091
  checkpoint(val[0].location)
3063
3092
  result = ArrayAbstractDeclarator.new(val[0], nil)
3064
3093
  result.head_token = val[0].head_token
@@ -3068,8 +3097,8 @@ module_eval(<<'.,.,', 'parser.y', 1378)
3068
3097
  end
3069
3098
  .,.,
3070
3099
 
3071
- module_eval(<<'.,.,', 'parser.y', 1385)
3072
- def _reduce_201(val, _values, result)
3100
+ module_eval(<<'.,.,', 'parser.y', 1405)
3101
+ def _reduce_203(val, _values, result)
3073
3102
  checkpoint(val[0].location)
3074
3103
  result = FunctionAbstractDeclarator.new(nil, nil)
3075
3104
  result.head_token = val[0]
@@ -3079,15 +3108,15 @@ module_eval(<<'.,.,', 'parser.y', 1385)
3079
3108
  end
3080
3109
  .,.,
3081
3110
 
3082
- module_eval(<<'.,.,', 'parser.y', 1390)
3083
- def _reduce_202(val, _values, result)
3111
+ module_eval(<<'.,.,', 'parser.y', 1410)
3112
+ def _reduce_204(val, _values, result)
3084
3113
  @lexer.enable_identifier_translation
3085
3114
  result
3086
3115
  end
3087
3116
  .,.,
3088
3117
 
3089
- module_eval(<<'.,.,', 'parser.y', 1392)
3090
- def _reduce_203(val, _values, result)
3118
+ module_eval(<<'.,.,', 'parser.y', 1412)
3119
+ def _reduce_205(val, _values, result)
3091
3120
  checkpoint(val[0].location)
3092
3121
  result = FunctionAbstractDeclarator.new(nil, val[2])
3093
3122
  result.head_token = val[0]
@@ -3097,8 +3126,8 @@ module_eval(<<'.,.,', 'parser.y', 1392)
3097
3126
  end
3098
3127
  .,.,
3099
3128
 
3100
- module_eval(<<'.,.,', 'parser.y', 1399)
3101
- def _reduce_204(val, _values, result)
3129
+ module_eval(<<'.,.,', 'parser.y', 1419)
3130
+ def _reduce_206(val, _values, result)
3102
3131
  checkpoint(val[0].location)
3103
3132
  result = FunctionAbstractDeclarator.new(val[0], nil)
3104
3133
  result.head_token = val[0].head_token
@@ -3108,15 +3137,15 @@ module_eval(<<'.,.,', 'parser.y', 1399)
3108
3137
  end
3109
3138
  .,.,
3110
3139
 
3111
- module_eval(<<'.,.,', 'parser.y', 1404)
3112
- def _reduce_205(val, _values, result)
3140
+ module_eval(<<'.,.,', 'parser.y', 1424)
3141
+ def _reduce_207(val, _values, result)
3113
3142
  @lexer.enable_identifier_translation
3114
3143
  result
3115
3144
  end
3116
3145
  .,.,
3117
3146
 
3118
- module_eval(<<'.,.,', 'parser.y', 1407)
3119
- def _reduce_206(val, _values, result)
3147
+ module_eval(<<'.,.,', 'parser.y', 1427)
3148
+ def _reduce_208(val, _values, result)
3120
3149
  checkpoint(val[0].location)
3121
3150
  result = FunctionAbstractDeclarator.new(val[0], val[3])
3122
3151
  result.head_token = val[0].head_token
@@ -3126,8 +3155,8 @@ module_eval(<<'.,.,', 'parser.y', 1407)
3126
3155
  end
3127
3156
  .,.,
3128
3157
 
3129
- module_eval(<<'.,.,', 'parser.y', 1417)
3130
- def _reduce_207(val, _values, result)
3158
+ module_eval(<<'.,.,', 'parser.y', 1437)
3159
+ def _reduce_209(val, _values, result)
3131
3160
  checkpoint(val[0].location)
3132
3161
  val[0].full = true
3133
3162
  result = Initializer.new(val[0], nil)
@@ -3138,8 +3167,8 @@ module_eval(<<'.,.,', 'parser.y', 1417)
3138
3167
  end
3139
3168
  .,.,
3140
3169
 
3141
- module_eval(<<'.,.,', 'parser.y', 1425)
3142
- def _reduce_208(val, _values, result)
3170
+ module_eval(<<'.,.,', 'parser.y', 1445)
3171
+ def _reduce_210(val, _values, result)
3143
3172
  checkpoint(val[0].location)
3144
3173
  result = Initializer.new(nil, nil)
3145
3174
  result.head_token = val[0]
@@ -3149,8 +3178,8 @@ module_eval(<<'.,.,', 'parser.y', 1425)
3149
3178
  end
3150
3179
  .,.,
3151
3180
 
3152
- module_eval(<<'.,.,', 'parser.y', 1432)
3153
- def _reduce_209(val, _values, result)
3181
+ module_eval(<<'.,.,', 'parser.y', 1452)
3182
+ def _reduce_211(val, _values, result)
3154
3183
  checkpoint(val[0].location)
3155
3184
  result = Initializer.new(nil, val[1])
3156
3185
  result.head_token = val[0]
@@ -3160,8 +3189,8 @@ module_eval(<<'.,.,', 'parser.y', 1432)
3160
3189
  end
3161
3190
  .,.,
3162
3191
 
3163
- module_eval(<<'.,.,', 'parser.y', 1439)
3164
- def _reduce_210(val, _values, result)
3192
+ module_eval(<<'.,.,', 'parser.y', 1459)
3193
+ def _reduce_212(val, _values, result)
3165
3194
  checkpoint(val[0].location)
3166
3195
  result = Initializer.new(nil, val[1])
3167
3196
  result.head_token = val[0]
@@ -3171,8 +3200,8 @@ module_eval(<<'.,.,', 'parser.y', 1439)
3171
3200
  end
3172
3201
  .,.,
3173
3202
 
3174
- module_eval(<<'.,.,', 'parser.y', 1449)
3175
- def _reduce_211(val, _values, result)
3203
+ module_eval(<<'.,.,', 'parser.y', 1469)
3204
+ def _reduce_213(val, _values, result)
3176
3205
  checkpoint(val[0].location)
3177
3206
  result = val
3178
3207
 
@@ -3180,8 +3209,8 @@ module_eval(<<'.,.,', 'parser.y', 1449)
3180
3209
  end
3181
3210
  .,.,
3182
3211
 
3183
- module_eval(<<'.,.,', 'parser.y', 1454)
3184
- def _reduce_212(val, _values, result)
3212
+ module_eval(<<'.,.,', 'parser.y', 1474)
3213
+ def _reduce_214(val, _values, result)
3185
3214
  checkpoint(val[1].location)
3186
3215
  result = [val[1]]
3187
3216
 
@@ -3189,8 +3218,8 @@ module_eval(<<'.,.,', 'parser.y', 1454)
3189
3218
  end
3190
3219
  .,.,
3191
3220
 
3192
- module_eval(<<'.,.,', 'parser.y', 1459)
3193
- def _reduce_213(val, _values, result)
3221
+ module_eval(<<'.,.,', 'parser.y', 1479)
3222
+ def _reduce_215(val, _values, result)
3194
3223
  checkpoint(val[0].first.location)
3195
3224
  result = val[0].push(val[2])
3196
3225
 
@@ -3198,8 +3227,8 @@ module_eval(<<'.,.,', 'parser.y', 1459)
3198
3227
  end
3199
3228
  .,.,
3200
3229
 
3201
- module_eval(<<'.,.,', 'parser.y', 1464)
3202
- def _reduce_214(val, _values, result)
3230
+ module_eval(<<'.,.,', 'parser.y', 1484)
3231
+ def _reduce_216(val, _values, result)
3203
3232
  checkpoint(val[0].first.location)
3204
3233
  result = val[0].push(val[3])
3205
3234
 
@@ -3207,10 +3236,6 @@ module_eval(<<'.,.,', 'parser.y', 1464)
3207
3236
  end
3208
3237
  .,.,
3209
3238
 
3210
- # reduce 215 omitted
3211
-
3212
- # reduce 216 omitted
3213
-
3214
3239
  # reduce 217 omitted
3215
3240
 
3216
3241
  # reduce 218 omitted
@@ -3229,8 +3254,12 @@ module_eval(<<'.,.,', 'parser.y', 1464)
3229
3254
 
3230
3255
  # reduce 225 omitted
3231
3256
 
3232
- module_eval(<<'.,.,', 'parser.y', 1498)
3233
- def _reduce_226(val, _values, result)
3257
+ # reduce 226 omitted
3258
+
3259
+ # reduce 227 omitted
3260
+
3261
+ module_eval(<<'.,.,', 'parser.y', 1518)
3262
+ def _reduce_228(val, _values, result)
3234
3263
  checkpoint(val[0].location)
3235
3264
  result = GenericLabeledStatement.new(val[0], val[2])
3236
3265
  result.head_token = val[0]
@@ -3240,8 +3269,8 @@ module_eval(<<'.,.,', 'parser.y', 1498)
3240
3269
  end
3241
3270
  .,.,
3242
3271
 
3243
- module_eval(<<'.,.,', 'parser.y', 1505)
3244
- def _reduce_227(val, _values, result)
3272
+ module_eval(<<'.,.,', 'parser.y', 1525)
3273
+ def _reduce_229(val, _values, result)
3245
3274
  checkpoint(val[0].location)
3246
3275
  val[1].full = true
3247
3276
  result = CaseLabeledStatement.new(val[1], val[3])
@@ -3252,8 +3281,8 @@ module_eval(<<'.,.,', 'parser.y', 1505)
3252
3281
  end
3253
3282
  .,.,
3254
3283
 
3255
- module_eval(<<'.,.,', 'parser.y', 1513)
3256
- def _reduce_228(val, _values, result)
3284
+ module_eval(<<'.,.,', 'parser.y', 1533)
3285
+ def _reduce_230(val, _values, result)
3257
3286
  checkpoint(val[0].location)
3258
3287
  result = DefaultLabeledStatement.new(val[2])
3259
3288
  result.head_token = val[0]
@@ -3263,18 +3292,18 @@ module_eval(<<'.,.,', 'parser.y', 1513)
3263
3292
  end
3264
3293
  .,.,
3265
3294
 
3266
- # reduce 229 omitted
3295
+ # reduce 231 omitted
3267
3296
 
3268
- module_eval(<<'.,.,', 'parser.y', 1524)
3269
- def _reduce_230(val, _values, result)
3297
+ module_eval(<<'.,.,', 'parser.y', 1544)
3298
+ def _reduce_232(val, _values, result)
3270
3299
  result = val[0].class.new(:IDENTIFIER, val[0].value, val[0].location)
3271
3300
 
3272
3301
  result
3273
3302
  end
3274
3303
  .,.,
3275
3304
 
3276
- module_eval(<<'.,.,', 'parser.y', 1531)
3277
- def _reduce_231(val, _values, result)
3305
+ module_eval(<<'.,.,', 'parser.y', 1551)
3306
+ def _reduce_233(val, _values, result)
3278
3307
  checkpoint(val[0].location)
3279
3308
  result = CompoundStatement.new([])
3280
3309
  result.head_token = val[0]
@@ -3284,22 +3313,22 @@ module_eval(<<'.,.,', 'parser.y', 1531)
3284
3313
  end
3285
3314
  .,.,
3286
3315
 
3287
- module_eval(<<'.,.,', 'parser.y', 1536)
3288
- def _reduce_232(val, _values, result)
3316
+ module_eval(<<'.,.,', 'parser.y', 1556)
3317
+ def _reduce_234(val, _values, result)
3289
3318
  @lexer.enter_scope
3290
3319
  result
3291
3320
  end
3292
3321
  .,.,
3293
3322
 
3294
- module_eval(<<'.,.,', 'parser.y', 1536)
3295
- def _reduce_233(val, _values, result)
3323
+ module_eval(<<'.,.,', 'parser.y', 1556)
3324
+ def _reduce_235(val, _values, result)
3296
3325
  @lexer.leave_scope
3297
3326
  result
3298
3327
  end
3299
3328
  .,.,
3300
3329
 
3301
- module_eval(<<'.,.,', 'parser.y', 1538)
3302
- def _reduce_234(val, _values, result)
3330
+ module_eval(<<'.,.,', 'parser.y', 1558)
3331
+ def _reduce_236(val, _values, result)
3303
3332
  checkpoint(val[0].location)
3304
3333
  result = CompoundStatement.new(val[2])
3305
3334
  result.head_token = val[0]
@@ -3309,8 +3338,8 @@ module_eval(<<'.,.,', 'parser.y', 1538)
3309
3338
  end
3310
3339
  .,.,
3311
3340
 
3312
- module_eval(<<'.,.,', 'parser.y', 1548)
3313
- def _reduce_235(val, _values, result)
3341
+ module_eval(<<'.,.,', 'parser.y', 1568)
3342
+ def _reduce_237(val, _values, result)
3314
3343
  checkpoint(val[0].location)
3315
3344
  result = val
3316
3345
 
@@ -3318,8 +3347,8 @@ module_eval(<<'.,.,', 'parser.y', 1548)
3318
3347
  end
3319
3348
  .,.,
3320
3349
 
3321
- module_eval(<<'.,.,', 'parser.y', 1553)
3322
- def _reduce_236(val, _values, result)
3350
+ module_eval(<<'.,.,', 'parser.y', 1573)
3351
+ def _reduce_238(val, _values, result)
3323
3352
  checkpoint(val[0].first.location)
3324
3353
  result = val[0].push(val[1])
3325
3354
 
@@ -3327,14 +3356,14 @@ module_eval(<<'.,.,', 'parser.y', 1553)
3327
3356
  end
3328
3357
  .,.,
3329
3358
 
3330
- # reduce 237 omitted
3359
+ # reduce 239 omitted
3331
3360
 
3332
- # reduce 238 omitted
3361
+ # reduce 240 omitted
3333
3362
 
3334
- # reduce 239 omitted
3363
+ # reduce 241 omitted
3335
3364
 
3336
- module_eval(<<'.,.,', 'parser.y', 1567)
3337
- def _reduce_240(val, _values, result)
3365
+ module_eval(<<'.,.,', 'parser.y', 1587)
3366
+ def _reduce_242(val, _values, result)
3338
3367
  checkpoint(val[0].location)
3339
3368
  result = ExpressionStatement.new(nil)
3340
3369
  result.head_token = result.tail_token = val[0]
@@ -3343,8 +3372,8 @@ module_eval(<<'.,.,', 'parser.y', 1567)
3343
3372
  end
3344
3373
  .,.,
3345
3374
 
3346
- module_eval(<<'.,.,', 'parser.y', 1573)
3347
- def _reduce_241(val, _values, result)
3375
+ module_eval(<<'.,.,', 'parser.y', 1593)
3376
+ def _reduce_243(val, _values, result)
3348
3377
  checkpoint(val[0].location)
3349
3378
  val[0].full = true
3350
3379
  result = ExpressionStatement.new(val[0])
@@ -3355,8 +3384,8 @@ module_eval(<<'.,.,', 'parser.y', 1573)
3355
3384
  end
3356
3385
  .,.,
3357
3386
 
3358
- module_eval(<<'.,.,', 'parser.y', 1584)
3359
- def _reduce_242(val, _values, result)
3387
+ module_eval(<<'.,.,', 'parser.y', 1604)
3388
+ def _reduce_244(val, _values, result)
3360
3389
  checkpoint(val[0].location)
3361
3390
  val[2].full = true
3362
3391
  result = IfStatement.new(val[2], val[4], val[3])
@@ -3367,8 +3396,8 @@ module_eval(<<'.,.,', 'parser.y', 1584)
3367
3396
  end
3368
3397
  .,.,
3369
3398
 
3370
- module_eval(<<'.,.,', 'parser.y', 1592)
3371
- def _reduce_243(val, _values, result)
3399
+ module_eval(<<'.,.,', 'parser.y', 1612)
3400
+ def _reduce_245(val, _values, result)
3372
3401
  checkpoint(val[0].location)
3373
3402
  val[2].full = true
3374
3403
  result = IfElseStatement.new(val[2], val[4], val[6], val[3], val[5])
@@ -3379,8 +3408,8 @@ module_eval(<<'.,.,', 'parser.y', 1592)
3379
3408
  end
3380
3409
  .,.,
3381
3410
 
3382
- module_eval(<<'.,.,', 'parser.y', 1600)
3383
- def _reduce_244(val, _values, result)
3411
+ module_eval(<<'.,.,', 'parser.y', 1620)
3412
+ def _reduce_246(val, _values, result)
3384
3413
  checkpoint(val[0].location)
3385
3414
  val[2].full = true
3386
3415
  result = SwitchStatement.new(val[2], val[4])
@@ -3391,8 +3420,8 @@ module_eval(<<'.,.,', 'parser.y', 1600)
3391
3420
  end
3392
3421
  .,.,
3393
3422
 
3394
- module_eval(<<'.,.,', 'parser.y', 1611)
3395
- def _reduce_245(val, _values, result)
3423
+ module_eval(<<'.,.,', 'parser.y', 1631)
3424
+ def _reduce_247(val, _values, result)
3396
3425
  checkpoint(val[0].location)
3397
3426
  val[2].full = true
3398
3427
  result = WhileStatement.new(val[2], val[4], val[3])
@@ -3403,8 +3432,8 @@ module_eval(<<'.,.,', 'parser.y', 1611)
3403
3432
  end
3404
3433
  .,.,
3405
3434
 
3406
- module_eval(<<'.,.,', 'parser.y', 1619)
3407
- def _reduce_246(val, _values, result)
3435
+ module_eval(<<'.,.,', 'parser.y', 1639)
3436
+ def _reduce_248(val, _values, result)
3408
3437
  checkpoint(val[0].location)
3409
3438
  val[4].full = true
3410
3439
  result = DoStatement.new(val[1], val[4], val[0], val[2])
@@ -3415,8 +3444,8 @@ module_eval(<<'.,.,', 'parser.y', 1619)
3415
3444
  end
3416
3445
  .,.,
3417
3446
 
3418
- module_eval(<<'.,.,', 'parser.y', 1627)
3419
- def _reduce_247(val, _values, result)
3447
+ module_eval(<<'.,.,', 'parser.y', 1647)
3448
+ def _reduce_249(val, _values, result)
3420
3449
  checkpoint(val[0].location)
3421
3450
  result = ForStatement.new(val[2], val[3], nil, val[5], val[4])
3422
3451
  result.head_token = val[0]
@@ -3426,8 +3455,8 @@ module_eval(<<'.,.,', 'parser.y', 1627)
3426
3455
  end
3427
3456
  .,.,
3428
3457
 
3429
- module_eval(<<'.,.,', 'parser.y', 1635)
3430
- def _reduce_248(val, _values, result)
3458
+ module_eval(<<'.,.,', 'parser.y', 1655)
3459
+ def _reduce_250(val, _values, result)
3431
3460
  checkpoint(val[0].location)
3432
3461
  val[4].full = true
3433
3462
  result = ForStatement.new(val[2], val[3], val[4], val[6], val[5])
@@ -3438,8 +3467,8 @@ module_eval(<<'.,.,', 'parser.y', 1635)
3438
3467
  end
3439
3468
  .,.,
3440
3469
 
3441
- module_eval(<<'.,.,', 'parser.y', 1643)
3442
- def _reduce_249(val, _values, result)
3470
+ module_eval(<<'.,.,', 'parser.y', 1663)
3471
+ def _reduce_251(val, _values, result)
3443
3472
  checkpoint(val[0].location)
3444
3473
  result = C99ForStatement.new(val[2], val[3], nil, val[5], val[4])
3445
3474
  result.head_token = val[0]
@@ -3449,8 +3478,8 @@ module_eval(<<'.,.,', 'parser.y', 1643)
3449
3478
  end
3450
3479
  .,.,
3451
3480
 
3452
- module_eval(<<'.,.,', 'parser.y', 1650)
3453
- def _reduce_250(val, _values, result)
3481
+ module_eval(<<'.,.,', 'parser.y', 1670)
3482
+ def _reduce_252(val, _values, result)
3454
3483
  checkpoint(val[0].location)
3455
3484
  val[4].full = true
3456
3485
  result = C99ForStatement.new(val[2], val[3], val[4], val[6], val[5])
@@ -3461,8 +3490,8 @@ module_eval(<<'.,.,', 'parser.y', 1650)
3461
3490
  end
3462
3491
  .,.,
3463
3492
 
3464
- module_eval(<<'.,.,', 'parser.y', 1661)
3465
- def _reduce_251(val, _values, result)
3493
+ module_eval(<<'.,.,', 'parser.y', 1681)
3494
+ def _reduce_253(val, _values, result)
3466
3495
  checkpoint(val[0].location)
3467
3496
  result = GotoStatement.new(val[1])
3468
3497
  result.head_token = val[0]
@@ -3472,8 +3501,8 @@ module_eval(<<'.,.,', 'parser.y', 1661)
3472
3501
  end
3473
3502
  .,.,
3474
3503
 
3475
- module_eval(<<'.,.,', 'parser.y', 1668)
3476
- def _reduce_252(val, _values, result)
3504
+ module_eval(<<'.,.,', 'parser.y', 1688)
3505
+ def _reduce_254(val, _values, result)
3477
3506
  checkpoint(val[0].location)
3478
3507
  E(:E0015, val[1].location, val[1].value)
3479
3508
  result = ErrorStatement.new(val[1])
@@ -3484,8 +3513,8 @@ module_eval(<<'.,.,', 'parser.y', 1668)
3484
3513
  end
3485
3514
  .,.,
3486
3515
 
3487
- module_eval(<<'.,.,', 'parser.y', 1676)
3488
- def _reduce_253(val, _values, result)
3516
+ module_eval(<<'.,.,', 'parser.y', 1696)
3517
+ def _reduce_255(val, _values, result)
3489
3518
  checkpoint(val[0].location)
3490
3519
  result = ContinueStatement.new
3491
3520
  result.head_token = val[0]
@@ -3495,8 +3524,8 @@ module_eval(<<'.,.,', 'parser.y', 1676)
3495
3524
  end
3496
3525
  .,.,
3497
3526
 
3498
- module_eval(<<'.,.,', 'parser.y', 1683)
3499
- def _reduce_254(val, _values, result)
3527
+ module_eval(<<'.,.,', 'parser.y', 1703)
3528
+ def _reduce_256(val, _values, result)
3500
3529
  checkpoint(val[0].location)
3501
3530
  result = BreakStatement.new
3502
3531
  result.head_token = val[0]
@@ -3506,8 +3535,8 @@ module_eval(<<'.,.,', 'parser.y', 1683)
3506
3535
  end
3507
3536
  .,.,
3508
3537
 
3509
- module_eval(<<'.,.,', 'parser.y', 1690)
3510
- def _reduce_255(val, _values, result)
3538
+ module_eval(<<'.,.,', 'parser.y', 1710)
3539
+ def _reduce_257(val, _values, result)
3511
3540
  checkpoint(val[0].location)
3512
3541
  result = ReturnStatement.new(nil)
3513
3542
  result.head_token = val[0]
@@ -3517,8 +3546,8 @@ module_eval(<<'.,.,', 'parser.y', 1690)
3517
3546
  end
3518
3547
  .,.,
3519
3548
 
3520
- module_eval(<<'.,.,', 'parser.y', 1697)
3521
- def _reduce_256(val, _values, result)
3549
+ module_eval(<<'.,.,', 'parser.y', 1717)
3550
+ def _reduce_258(val, _values, result)
3522
3551
  checkpoint(val[0].location)
3523
3552
  val[1].full = true
3524
3553
  result = ReturnStatement.new(val[1])
@@ -3529,16 +3558,16 @@ module_eval(<<'.,.,', 'parser.y', 1697)
3529
3558
  end
3530
3559
  .,.,
3531
3560
 
3532
- module_eval(<<'.,.,', 'parser.y', 1711)
3533
- def _reduce_257(val, _values, result)
3561
+ module_eval(<<'.,.,', 'parser.y', 1731)
3562
+ def _reduce_259(val, _values, result)
3534
3563
  result = TranslationUnit.new
3535
3564
 
3536
3565
  result
3537
3566
  end
3538
3567
  .,.,
3539
3568
 
3540
- module_eval(<<'.,.,', 'parser.y', 1715)
3541
- def _reduce_258(val, _values, result)
3569
+ module_eval(<<'.,.,', 'parser.y', 1735)
3570
+ def _reduce_260(val, _values, result)
3542
3571
  checkpoint(val[0].location)
3543
3572
  result = val[0]
3544
3573
  result.push(val[1])
@@ -3547,12 +3576,12 @@ module_eval(<<'.,.,', 'parser.y', 1715)
3547
3576
  end
3548
3577
  .,.,
3549
3578
 
3550
- # reduce 259 omitted
3579
+ # reduce 261 omitted
3551
3580
 
3552
- # reduce 260 omitted
3581
+ # reduce 262 omitted
3553
3582
 
3554
- module_eval(<<'.,.,', 'parser.y', 1729)
3555
- def _reduce_261(val, _values, result)
3583
+ module_eval(<<'.,.,', 'parser.y', 1749)
3584
+ def _reduce_263(val, _values, result)
3556
3585
  checkpoint(val[0].location)
3557
3586
  result = KandRFunctionDefinition.new(val[0], val[1], val[2], val[3],
3558
3587
  @sym_tbl)
@@ -3563,8 +3592,8 @@ module_eval(<<'.,.,', 'parser.y', 1729)
3563
3592
  end
3564
3593
  .,.,
3565
3594
 
3566
- module_eval(<<'.,.,', 'parser.y', 1737)
3567
- def _reduce_262(val, _values, result)
3595
+ module_eval(<<'.,.,', 'parser.y', 1757)
3596
+ def _reduce_264(val, _values, result)
3568
3597
  checkpoint(val[0].location)
3569
3598
  case val[1]
3570
3599
  when AnsiFunctionDeclarator
@@ -3582,8 +3611,8 @@ module_eval(<<'.,.,', 'parser.y', 1737)
3582
3611
  end
3583
3612
  .,.,
3584
3613
 
3585
- module_eval(<<'.,.,', 'parser.y', 1752)
3586
- def _reduce_263(val, _values, result)
3614
+ module_eval(<<'.,.,', 'parser.y', 1772)
3615
+ def _reduce_265(val, _values, result)
3587
3616
  checkpoint(val[0].location)
3588
3617
  result = KandRFunctionDefinition.new(nil, val[0], val[1], val[2],
3589
3618
  @sym_tbl)
@@ -3594,8 +3623,8 @@ module_eval(<<'.,.,', 'parser.y', 1752)
3594
3623
  end
3595
3624
  .,.,
3596
3625
 
3597
- module_eval(<<'.,.,', 'parser.y', 1760)
3598
- def _reduce_264(val, _values, result)
3626
+ module_eval(<<'.,.,', 'parser.y', 1780)
3627
+ def _reduce_266(val, _values, result)
3599
3628
  checkpoint(val[0].location)
3600
3629
  case val[0]
3601
3630
  when AnsiFunctionDeclarator
@@ -3613,8 +3642,8 @@ module_eval(<<'.,.,', 'parser.y', 1760)
3613
3642
  end
3614
3643
  .,.,
3615
3644
 
3616
- module_eval(<<'.,.,', 'parser.y', 1778)
3617
- def _reduce_265(val, _values, result)
3645
+ module_eval(<<'.,.,', 'parser.y', 1798)
3646
+ def _reduce_267(val, _values, result)
3618
3647
  checkpoint(val[0].location)
3619
3648
  result = KandRFunctionDefinition.new(val[0], val[1], val[2], val[3],
3620
3649
  @sym_tbl)
@@ -3625,8 +3654,8 @@ module_eval(<<'.,.,', 'parser.y', 1778)
3625
3654
  end
3626
3655
  .,.,
3627
3656
 
3628
- module_eval(<<'.,.,', 'parser.y', 1786)
3629
- def _reduce_266(val, _values, result)
3657
+ module_eval(<<'.,.,', 'parser.y', 1806)
3658
+ def _reduce_268(val, _values, result)
3630
3659
  checkpoint(val[0].location)
3631
3660
  case val[1]
3632
3661
  when AnsiFunctionDeclarator
@@ -3644,8 +3673,8 @@ module_eval(<<'.,.,', 'parser.y', 1786)
3644
3673
  end
3645
3674
  .,.,
3646
3675
 
3647
- module_eval(<<'.,.,', 'parser.y', 1804)
3648
- def _reduce_267(val, _values, result)
3676
+ module_eval(<<'.,.,', 'parser.y', 1824)
3677
+ def _reduce_269(val, _values, result)
3649
3678
  checkpoint(val[0].location)
3650
3679
  result = val
3651
3680
 
@@ -3653,8 +3682,8 @@ module_eval(<<'.,.,', 'parser.y', 1804)
3653
3682
  end
3654
3683
  .,.,
3655
3684
 
3656
- module_eval(<<'.,.,', 'parser.y', 1809)
3657
- def _reduce_268(val, _values, result)
3685
+ module_eval(<<'.,.,', 'parser.y', 1829)
3686
+ def _reduce_270(val, _values, result)
3658
3687
  checkpoint(val[0].first.location)
3659
3688
  result = val[0].push(val[1])
3660
3689