adlint 3.0.4 → 3.0.8

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 (73) hide show
  1. data/ChangeLog +374 -13
  2. data/INSTALL +1 -3
  3. data/MANIFEST +12 -0
  4. data/NEWS +30 -4
  5. data/README +0 -4
  6. data/TODO +2 -1
  7. data/etc/mesg.d/c_builtin/en_US/messages.yml +2 -2
  8. data/etc/mesg.d/c_builtin/ja_JP/messages.yml +2 -2
  9. data/etc/mesg.d/core/en_US/messages.yml +5 -1
  10. data/etc/mesg.d/core/ja_JP/messages.yml +5 -1
  11. data/features/code_check/W0422.feature +128 -0
  12. data/features/code_check/W0491.feature +57 -0
  13. data/features/code_check/W0492.feature +80 -0
  14. data/features/code_check/W0542.feature +20 -0
  15. data/features/code_check/W0580.feature +25 -0
  16. data/features/code_check/W0610.feature +36 -0
  17. data/features/code_check/W0642.feature +67 -0
  18. data/features/code_check/W0786.feature +39 -0
  19. data/features/code_check/W0830.feature +27 -0
  20. data/features/code_check/W1047.feature +72 -0
  21. data/features/code_check/W9003.feature +22 -0
  22. data/features/code_extraction/TODO +1 -0
  23. data/features/metric_measurement/TODO +1 -0
  24. data/lib/adlint/analyzer.rb +2 -2
  25. data/lib/adlint/cc1/ctrlexpr.rb +27 -6
  26. data/lib/adlint/cc1/domain.rb +72 -12
  27. data/lib/adlint/cc1/enum.rb +4 -0
  28. data/lib/adlint/cc1/expr.rb +31 -29
  29. data/lib/adlint/cc1/interp.rb +45 -56
  30. data/lib/adlint/cc1/lexer.rb +26 -5
  31. data/lib/adlint/cc1/mediator.rb +35 -6
  32. data/lib/adlint/cc1/object.rb +62 -19
  33. data/lib/adlint/cc1/parser.rb +948 -904
  34. data/lib/adlint/cc1/parser.y +59 -29
  35. data/lib/adlint/cc1/phase.rb +6 -8
  36. data/lib/adlint/cc1/syntax.rb +70 -17
  37. data/lib/adlint/cc1/util.rb +4 -4
  38. data/lib/adlint/code.rb +16 -6
  39. data/lib/adlint/cpp/eval.rb +31 -25
  40. data/lib/adlint/cpp/lexer.rb +11 -5
  41. data/lib/adlint/cpp/macro.rb +34 -7
  42. data/lib/adlint/cpp/phase.rb +8 -8
  43. data/lib/adlint/error.rb +6 -0
  44. data/lib/adlint/exam/c_builtin/cc1_check.rb +557 -594
  45. data/lib/adlint/exam/c_builtin/cc1_check_shima.rb +72 -72
  46. data/lib/adlint/exam/c_builtin/cc1_code.rb +72 -52
  47. data/lib/adlint/exam/c_builtin/cc1_metric.rb +131 -131
  48. data/lib/adlint/exam/c_builtin/cpp_check.rb +48 -48
  49. data/lib/adlint/exam/c_builtin/cpp_check_shima.rb +2 -2
  50. data/lib/adlint/exam/c_builtin/cpp_code.rb +21 -21
  51. data/lib/adlint/exam/c_builtin/ld_check.rb +88 -87
  52. data/lib/adlint/exam/c_builtin/ld_metric.rb +4 -5
  53. data/lib/adlint/exam/c_builtin.rb +6 -6
  54. data/lib/adlint/ld/object.rb +269 -186
  55. data/lib/adlint/ld/phase.rb +19 -19
  56. data/lib/adlint/ld/typedef.rb +7 -7
  57. data/lib/adlint/ld/util.rb +25 -17
  58. data/lib/adlint/location.rb +6 -1
  59. data/lib/adlint/memo.rb +66 -13
  60. data/lib/adlint/prelude.rb +2 -2
  61. data/lib/adlint/report.rb +13 -14
  62. data/lib/adlint/util.rb +1 -1
  63. data/lib/adlint/version.rb +2 -2
  64. data/share/doc/Makefile +6 -2
  65. data/share/doc/c99gram.dot +502 -0
  66. data/share/doc/c99gram.pdf +0 -0
  67. data/share/doc/developers_guide_ja.html +4 -3
  68. data/share/doc/developers_guide_ja.texi +2 -1
  69. data/share/doc/users_guide_en.html +9 -9
  70. data/share/doc/users_guide_en.texi +7 -7
  71. data/share/doc/users_guide_ja.html +9 -9
  72. data/share/doc/users_guide_ja.texi +7 -7
  73. metadata +14 -2
@@ -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', 1797)
21
+ module_eval(<<'...end parser.y/module_eval...', 'parser.y', 1827)
22
22
 
23
23
  include ReportUtil
24
24
  include MonitorUtil
@@ -102,158 +102,160 @@ private :monitor
102
102
  ##### State transition tables begin ###
103
103
 
104
104
  clist = [
105
- '217,29,84,85,95,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17',
106
- '26,27,28,33,34,35,226,227,234,70,235,236,237,238,239,240,241,242,86',
107
- '32,96,87,281,42,281,335,327,90,91,60,391,139,92,93,97,98,99,100,101',
108
- '217,67,84,85,95,387,343,377,342,420,42,421,281,407,139,57,65,396,281',
109
- '42,281,83,69,84,85,95,233,366,43,226,227,234,394,235,236,237,238,239',
110
- '240,241,242,86,336,96,87,356,324,406,59,56,90,91,60,68,43,92,93,97,98',
111
- '99,100,101,86,43,96,87,44,410,66,42,42,90,91,42,444,44,92,93,97,98,99',
112
- '100,101,281,42,29,354,42,233,12,13,14,15,16,39,38,18,19,20,21,24,25',
113
- '22,23,36,37,17,26,27,28,33,34,35,43,273,277,251,43,217,365,84,85,95',
114
- '385,278,44,32,381,43,44,57,273,345,251,215,445,216,281,243,371,44,280',
115
- '402,44,281,354,281,226,227,234,281,235,236,237,238,239,240,241,242,86',
116
- '190,96,87,362,78,319,191,192,90,91,60,425,49,92,93,97,98,99,100,101',
117
- '217,38,84,85,95,343,38,342,38,244,36,37,250,345,251,36,37,36,37,447',
118
- '73,405,72,372,44,73,233,72,281,226,227,234,373,235,236,237,238,239,240',
119
- '241,242,86,190,96,87,419,44,203,191,192,90,91,60,44,281,92,93,97,98',
120
- '99,100,101,217,408,84,85,95,178,180,181,182,183,184,185,186,187,188',
121
- '189,162,288,161,289,163,164,165,166,153,250,233,251,205,226,227,234',
122
- '411,235,236,237,238,239,240,241,242,86,190,96,87,290,412,291,191,192',
123
- '90,91,60,201,202,92,93,97,98,99,100,101,217,206,84,85,95,197,198,199',
124
- '200,197,198,199,200,197,198,199,200,316,317,432,433,261,262,193,194',
125
- '376,233,193,194,226,227,234,369,235,236,237,238,239,240,241,242,86,369',
126
- '96,87,359,360,207,208,369,90,91,60,201,202,92,93,97,98,99,100,101,195',
127
- '196,195,196,195,196,195,196,193,194,195,196,83,140,84,85,95,139,338',
128
- '337,134,334,42,29,332,422,233,12,13,14,15,16,39,38,18,19,20,21,24,25',
129
- '22,23,36,37,17,26,27,28,33,34,35,331,129,86,330,96,87,205,375,428,429',
130
- '118,90,91,32,206,43,92,93,97,98,99,100,101,204,263,139,323,44,374,322',
131
- '270,203,443,276,279,282,283,64,204,450,48,427,,,,,,,,340,,,,,,,,,,49',
132
- '217,29,84,85,95,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17',
133
- '26,27,28,33,34,35,226,227,234,,235,236,237,238,239,240,241,242,86,32',
134
- '96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101,217,,84,85,95,,,,,,,,,',
135
- ',,,,,,,,,,,,233,,,226,227,234,,235,236,237,238,239,240,241,242,86,,96',
136
- '87,,,,,,90,91,60,,,92,93,97,98,99,100,101,217,,84,85,95,,,,,,,,,,,,',
137
- ',,,,,,,,,233,,,226,227,234,,235,236,237,238,239,240,241,242,86,,96,87',
138
- ',,,,,90,91,60,,,92,93,97,98,99,100,101,217,,84,85,95,,,,,,,,,,,,,,,',
139
- ',83,,84,85,95,233,,,226,227,234,,235,236,237,238,239,240,241,242,86',
140
- ',96,87,,,,,,90,91,60,,,92,93,97,98,99,100,101,86,,96,87,,,,,,90,91,',
141
- ',,92,93,97,98,99,100,101,,,,,,233,,,,,,,,,,,,,,,,,,,,,233,83,29,84,85',
142
- '95,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33',
143
- '34,35,,,,,,217,,84,85,95,,,86,32,96,87,,,,,,90,91,,,,92,93,97,98,99',
144
- '100,101,,226,227,234,,235,236,237,238,239,240,241,242,86,,96,87,,,,',
145
- ',90,91,60,,233,92,93,97,98,99,100,101,,,,,,,,,,,,,,,,,,,,,,,42,29,,',
146
- '233,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33',
147
- '34,35,,,,,,217,,84,85,95,,,,32,,43,,,,,,,,,,,83,44,84,85,95,,,,226,227',
148
- '234,,235,236,237,238,239,240,241,242,86,,96,87,,,,,,90,91,60,,49,92',
149
- '93,97,98,99,100,101,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,',
150
- ',,,,233,,,,,,,,,,,,,,,,,,,,,233,217,29,84,85,95,12,13,14,15,16,39,38',
151
- '18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,226,227,234,,235',
152
- '236,237,238,239,240,241,242,86,32,96,87,,,,,,90,91,60,,,92,93,97,98',
153
- '99,100,101,217,,84,85,95,,,,,,,,,,,,,,,,,,,,,,233,,,226,227,234,,235',
154
- '236,237,238,239,240,241,242,86,,96,87,,,,,,90,91,60,29,,92,93,97,98',
155
- '99,100,101,,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,',
156
- ',,,,,233,,,29,,,32,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37',
157
- '17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,,,,,,29,256,,60,12,13,14,15,16',
158
- '39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,59,,,,,,,,',
159
- ',,,,32,,,,,,,29,,,60,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36',
160
- '37,17,26,27,28,33,34,35,59,,,,,,,,83,,84,85,95,32,,144,,,,38,,,,60,',
161
- ',,,36,37,83,,84,85,95,,,,,,,,,,,,,,59,86,,96,87,,,145,,,90,91,,,,92',
162
- '141,97,98,99,100,101,,86,,96,87,,215,,216,,90,91,117,,,92,93,97,98,99',
163
- '100,101,83,,84,85,95,,,,,,,,,,,,,,,,,83,,84,85,95,,,,,,,,,,,,,,,,86',
164
- ',96,87,,,404,,,90,91,,,,92,93,97,98,99,100,101,86,,96,87,,,398,,,90',
165
- '91,,,,92,397,97,98,99,100,101,83,29,84,85,95,,,,,,,38,18,19,20,21,24',
166
- '25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,86,32,96,87,,,,,,90',
167
- '91,,136,,92,93,97,98,99,100,101,83,29,84,85,95,,,,,,,38,18,19,20,21',
168
- '24,25,22,23,36,37,17,26,27,28,33,34,35,83,,84,85,95,,,,,,,,86,32,96',
169
- '87,,,,,,90,91,60,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87',
170
- ',,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,167',
171
- ',,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,167,,,,',
172
- ',90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,,,,,',
173
- '90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87,,,,,,90,91',
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',
174
180
  ',,,92,93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,,,,,,90,91,',
175
- ',,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,173,,,,,,90,91,,,,92',
176
- '93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,175,,,,,,90,91,,,,92',
177
- '93,97,98,99,100,101,83,,84,85,95,,,,86,,96,167,,,,,,90,91,,,,92,93,97',
178
- '98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98',
179
- '99,100,101,83,,84,85,95,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100',
180
- '101,83,,84,85,95,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101',
181
- '83,,84,85,95,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84',
182
- '85,95,,,,,,,,86,,96,87,,,,,,90,91,117,,,92,93,97,98,99,100,101,83,,84',
183
- '85,95,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95',
184
- ',,,,,,,86,,96,87,,215,,216,,90,91,117,378,,92,93,97,98,99,100,101,83',
185
- ',84,85,95,,,,86,,96,87,,,,,,90,91,369,,,92,93,97,98,99,100,101,,,,,',
186
- ',,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,29,84,85,95',
187
- ',,,,,,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,',
188
- ',,,,86,32,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,',
189
- ',,,,38,,,,,,,,,36,37,83,,84,85,95,,,,,,,,,,,,,,,86,,96,87,83,,84,85',
190
- '95,90,91,,,,92,93,97,98,99,100,101,,86,,96,87,,215,,216,,90,91,117,209',
191
- ',92,93,97,98,99,100,101,,,86,,96,87,,,426,,,90,91,,,,92,93,97,98,99',
192
- '100,101,83,,84,85,95,,,,,,,,,,,,,,,,,83,,84,85,95,,,,,,,,,,,,,,,,86',
193
- ',96,87,83,,84,85,95,90,91,,,,92,93,97,98,99,100,101,86,,96,87,,,361',
194
- ',,90,91,,,,92,93,97,98,99,100,101,,,,86,,96,87,83,,84,85,95,90,91,,',
195
- ',92,93,97,98,99,100,101,,,,,83,,84,85,95,,,,,,,,,,,,,,,,86,,96,87,83',
196
- ',84,85,95,90,91,117,,,92,93,97,98,99,100,101,86,,96,87,,,348,,,90,91',
197
- ',,,92,347,97,98,99,100,101,,,,86,,96,87,83,,84,85,95,90,91,,,,92,93',
198
- '97,98,99,100,101,,,,,83,,84,85,95,,,,,,,,,,,,,,,,86,,96,87,83,,84,85',
199
- '95,90,91,,,,92,93,97,98,99,100,101,86,,96,87,439,,,,,90,91,,,,92,93',
200
- '97,98,99,100,101,,,,86,,96,87,441,,,,,90,91,,,,92,93,97,98,99,100,101',
201
- '83,,84,85,95,,,,,,,,,,,,,,,,,83,,84,85,95,,,,,,,,,,,,,,,,86,,96,87,83',
202
- ',84,85,95,90,91,,,,92,93,97,98,99,100,101,86,,96,87,,215,,216,,90,91',
203
- '117,442,,92,93,97,98,99,100,101,,,,86,,96,87,,,265,,,90,91,,,,92,93',
204
- '97,98,99,100,101,83,,84,85,95,,,269,,,,38,,,,,,,,,36,37,83,,84,85,95',
205
- ',,,,,,,,,,,,,,86,,96,87,,,268,,,90,91,,,,92,266,97,98,99,100,101,,86',
206
- ',96,87,83,,84,85,95,90,91,,,,92,93,97,98,99,100,101,,,,,83,,84,85,95',
207
- ',,,,,,,,,,,,,,,86,,96,87,83,,84,85,95,90,91,117,,,92,93,97,98,99,100',
208
- '101,86,,96,87,83,,84,85,95,90,91,,,,92,93,97,98,99,100,101,,,,86,,96',
209
- '87,83,,84,85,95,90,91,,,,92,93,97,98,99,100,101,86,,96,87,83,,84,85',
210
- '95,90,91,,,,92,93,97,98,99,100,101,,,,86,,96,87,83,,84,85,95,90,91,',
211
- ',,92,93,97,98,99,100,101,86,,96,87,83,,84,85,95,90,91,,,,92,93,97,98',
212
- '99,100,101,,,,86,,96,87,83,,84,85,95,90,91,,,,92,93,97,98,99,100,101',
213
- '86,,96,87,83,,84,85,95,90,91,,,,92,93,97,98,99,100,101,,,,86,,96,87',
214
- '83,,84,85,95,90,91,,,,92,93,97,98,99,100,101,86,,96,87,285,,,,,90,91',
215
- ',,,92,93,97,98,99,100,101,,,,86,,96,87,83,,84,85,95,90,91,,,,92,93,97',
216
- '98,99,100,101,,,,,,,,,,,,,,,,,,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93',
217
- '97,98,99,100,101,83,29,84,85,95,,,,,,,38,18,19,20,21,24,25,22,23,36',
218
- '37,17,26,27,28,33,34,35,,,,,,,,,,,,,86,32,96,87,,,,,,90,91,60,,,92,93',
219
- '97,98,99,100,101,83,29,84,85,95,,,,,,,38,18,19,20,21,24,25,22,23,36',
220
- '37,17,26,27,28,33,34,35,,,,,,,,,,,,,86,32,96,87,,,,,,90,91,60,,,92,93',
221
- '97,98,99,100,101,83,29,84,85,95,,,,,,,38,18,19,20,21,24,25,22,23,36',
222
- '37,17,26,27,28,33,34,35,83,,84,85,95,,,,,,,,86,32,96,87,,,,,,90,91,60',
223
181
  ',,92,93,97,98,99,100,101,83,,84,85,95,,,,86,,96,87,,,,,,90,91,,,,92',
224
182
  '93,97,98,99,100,101,83,,84,85,95,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93',
225
183
  '97,98,99,100,101,83,,84,85,95,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98',
226
- '99,100,101,83,,84,85,95,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99',
227
- '100,101,83,,84,85,95,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101',
228
- '83,,84,85,95,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83',
229
- ',84,85,95,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85',
230
- '95,,,,,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95',
231
- ',,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95,,,,,',
232
- ',,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,,,,,,,,,86,,96,87,',
233
- ',,,,90,91,,,,92,93,97,98,99,100,101,2,,42,29,,,,12,13,14,15,16,39,38',
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',
224
+ '85,95,,,,86,,96,87,,,,,,90,91,,,,92,93,97,98,99,100,101,83,,84,85,95',
225
+ ',,,,,,,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',
237
+ '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',
234
245
  '18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,',
235
- '43,,,,,,,,42,29,,,44,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36',
236
- '37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,273,,251,29,,,,,,,,,44,38,18',
237
- '19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,250',
238
- ',251,29,,,,,,,,,44,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34',
239
- '35,,,,,,,,,,,,,,32,,29,,,,,,,,,350,38,18,19,20,21,24,25,22,23,36,37',
240
- '17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,29,,,,,,,,,260,38,18,19,20,21',
241
- '24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,29,,,,,,,,,131',
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',
242
249
  '38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32',
243
- ',29,,,,,,,,,259,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35',
244
- ',,,,,,,,,,,,,32,,29,,,,,,,,,253,38,18,19,20,21,24,25,22,23,36,37,17',
245
- '26,27,28,33,34,35,,,,,,,,,,,,,,32,,29,,,,,,,,,254,38,18,19,20,21,24',
246
- '25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,,,,,,,29,,,355',
247
- '12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34',
248
- '35,,,,,,,,,,,,,,32,,,,,,,29,,,60,12,13,14,15,16,39,38,18,19,20,21,24',
249
- '25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,,,,,,,29,,,60,12',
250
- '13,14,15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35',
251
- ',,,,,,,,,,,,,32,,,,,,152,29,,,60,12,13,14,15,16,39,38,18,19,20,21,24',
252
- '25,22,23,36,37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32,29,,149,,12,13,14',
253
- '15,16,39,38,18,19,20,21,24,25,22,23,36,37,17,26,27,28,33,34,35,,,,,',
254
- ',,,,,,,,32,29,,400,,12,13,14,15,16,39,38,18,19,20,21,24,25,22,23,36',
255
- '37,17,26,27,28,33,34,35,,,,,,,,,,,,,,32' ]
256
- racc_action_table = arr = ::Array.new(4442, nil)
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' ]
258
+ racc_action_table = arr = ::Array.new(4469, nil)
257
259
  idx = 0
258
260
  clist.each do |str|
259
261
  str.split(',', -1).each do |i|
@@ -263,179 +265,180 @@ clist = [
263
265
  end
264
266
 
265
267
  clist = [
266
- '447,279,447,447,447,279,279,279,279,279,279,279,279,279,279,279,279',
267
- '279,279,279,279,279,279,279,279,279,279,279,279,447,447,447,35,447,447',
268
- '447,447,447,447,447,447,447,279,447,447,339,40,315,239,227,447,447,447',
269
- '333,262,447,447,447,447,447,447,447,445,34,445,445,445,328,249,315,249',
270
- '389,407,390,218,351,360,5,33,339,389,57,390,354,35,354,354,354,447,279',
271
- '40,445,445,445,335,445,445,445,445,445,445,445,445,445,239,445,445,262',
272
- '218,351,82,5,445,445,445,34,407,445,445,445,445,445,445,445,354,57,354',
273
- '354,407,360,33,257,272,354,354,43,437,57,354,354,354,354,354,354,354',
274
- '437,3,3,407,273,445,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3',
275
- '257,272,148,272,43,443,278,443,443,443,326,148,257,3,321,3,43,50,273',
276
- '273,273,213,438,213,395,124,284,3,157,344,273,438,257,284,443,443,443',
277
- '157,443,443,443,443,443,443,443,443,443,300,443,443,267,50,213,300,300',
278
- '443,443,443,395,3,443,443,443,443,443,443,443,327,44,327,327,327,341',
279
- '144,341,75,125,44,44,250,250,250,144,144,75,75,440,71,349,71,286,250',
280
- '41,443,41,440,327,327,327,286,327,327,327,327,327,327,327,327,327,104',
281
- '327,327,388,44,109,104,104,327,327,327,75,388,327,327,327,327,327,327',
282
- '327,441,353,441,441,441,103,103,103,103,103,103,103,103,103,103,103',
283
- '89,163,89,163,89,89,89,89,74,248,327,248,111,441,441,441,363,441,441',
284
- '441,441,441,441,441,441,441,301,441,441,164,364,164,301,301,441,441',
285
- '441,310,310,441,441,441,441,441,441,441,439,314,439,439,439,107,107',
286
- '107,107,309,309,309,309,308,308,308,308,210,210,413,413,137,137,302',
287
- '302,294,441,303,303,439,439,439,374,439,439,439,439,439,439,439,439',
288
- '439,375,439,439,264,264,113,113,376,439,439,439,108,108,439,439,439',
289
- '439,439,439,439,307,307,304,304,106,106,305,305,105,105,306,306,242',
290
- '70,242,242,242,69,241,240,67,238,219,219,236,391,439,219,219,219,219',
291
- '219,219,219,219,219,219,219,219,219,219,219,219,219,219,219,219,219',
292
- '219,219,219,235,65,242,234,242,242,313,293,401,403,60,242,242,219,112',
293
- '219,242,242,242,242,242,242,242,312,139,140,217,219,292,216,143,311',
294
- '434,147,150,158,159,32,110,444,2,399,,,,,,,,242,,,,,,,,,,219,228,228',
295
- '228,228,228,228,228,228,228,228,228,228,228,228,228,228,228,228,228',
296
- '228,228,228,228,228,228,228,228,228,228,228,228,228,,228,228,228,228',
297
- '228,228,228,228,228,228,228,228,,,,,,228,228,228,,,228,228,228,228,228',
298
- '228,228,237,,237,237,237,,,,,,,,,,,,,,,,,,,,,,228,,,237,237,237,,237',
299
- '237,237,237,237,237,237,237,237,,237,237,,,,,,237,237,237,,,237,237',
300
- '237,237,237,237,237,421,,421,421,421,,,,,,,,,,,,,,,,,,,,,,237,,,421',
301
- '421,421,,421,421,421,421,421,421,421,421,421,,421,421,,,,,,421,421,421',
302
- ',,421,421,421,421,421,421,421,420,,420,420,420,,,,,,,,,,,,,,,,,393,',
303
- '393,393,393,421,,,420,420,420,,420,420,420,420,420,420,420,420,420,',
304
- '420,420,,,,,,420,420,420,,,420,420,420,420,420,420,420,393,,393,393',
305
- ',,,,,393,393,,,,393,393,393,393,393,393,393,,,,,,420,,,,,,,,,,,,,,,',
306
- ',,,,,393,334,334,334,334,334,334,334,334,334,334,334,334,334,334,334',
307
- '334,334,334,334,334,334,334,334,334,334,334,334,334,334,,,,,,385,,385',
308
- '385,385,,,334,334,334,334,,,,,,334,334,,,,334,334,334,334,334,334,334',
309
- ',385,385,385,,385,385,385,385,385,385,385,385,385,,385,385,,,,,,385',
310
- '385,385,,334,385,385,385,385,385,385,385,,,,,,,,,,,,,,,,,,,,,,,58,58',
311
- ',,385,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58',
312
- '58,58,58,,,,,,323,,323,323,323,,,,58,,58,,,,,,,,,,,392,58,392,392,392',
313
- ',,,323,323,323,,323,323,323,323,323,323,323,323,323,,323,323,,,,,,323',
314
- '323,323,,58,323,323,323,323,323,323,323,392,,392,392,,,,,,392,392,,',
315
- ',392,392,392,392,392,392,392,,,,,,323,,,,,,,,,,,,,,,,,,,,,392,119,119',
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',
316
318
  '119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119',
317
- '119,119,119,119,119,119,119,119,119,119,119,119,119,,119,119,119,119',
318
- '119,119,119,119,119,119,119,119,,,,,,119,119,119,,,119,119,119,119,119',
319
- '119,119,419,,419,419,419,,,,,,,,,,,,,,,,,,,,,,119,,,419,419,419,,419',
320
- '419,419,419,419,419,419,419,419,,419,419,,,,,,419,419,419,133,,419,419',
321
- '419,419,419,419,419,,133,133,133,133,133,133,133,133,133,133,133,133',
322
- '133,133,133,133,133,133,,,,,,,,419,,,55,,,133,55,55,55,55,55,55,55,55',
323
- '55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,55,,,,,,,,,,,,,,55,,,,',
324
- ',,11,133,,55,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11',
325
- '11,11,11,11,11,55,,,,,,,,,,,,,11,,,,,,,325,,,11,325,325,325,325,325',
326
- '325,325,325,325,325,325,325,325,325,325,325,325,325,325,325,325,325',
327
- '325,325,11,,,,,,,,72,,72,72,72,325,,72,,,,72,,,,325,,,,,72,72,369,,369',
328
- '369,369,,,,,,,,,,,,,,325,72,,72,72,,,72,,,72,72,,,,72,72,72,72,72,72',
329
- '72,,369,,369,369,,369,,369,,369,369,369,,,369,369,369,369,369,369,369',
330
- '347,,347,347,347,,,,,,,,,,,,,,,,,342,,342,342,342,,,,,,,,,,,,,,,,347',
331
- ',347,347,,,347,,,347,347,,,,347,347,347,347,347,347,347,342,,342,342',
332
- ',,342,,,342,342,,,,342,342,342,342,342,342,342,336,68,336,336,336,,',
333
- ',,,,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,,,,,,,,,,',
334
- ',,336,68,336,336,,,,,,336,336,,68,,336,336,336,336,336,336,336,87,87',
335
- '87,87,87,,,,,,,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87',
336
- '373,,373,373,373,,,,,,,,87,87,87,87,,,,,,87,87,87,,,87,87,87,87,87,87',
337
- '87,90,,90,90,90,,,,373,,373,373,,,,,,373,373,,,,373,373,373,373,373',
338
- '373,373,91,,91,91,91,,,,,,,,90,,90,90,,,,,,90,90,,,,90,90,90,90,90,90',
339
- '90,92,,92,92,92,,,,91,,91,91,,,,,,91,91,,,,91,91,91,91,91,91,91,93,',
340
- '93,93,93,,,,,,,,92,,92,92,,,,,,92,92,,,,92,92,92,92,92,92,92,94,,94',
341
- '94,94,,,,93,,93,93,,,,,,93,93,,,,93,93,93,93,93,93,93,95,,95,95,95,',
342
- ',,,,,,94,,94,94,,,,,,94,94,,,,94,94,94,94,94,94,94,96,,96,96,96,,,,95',
343
- ',95,95,,,,,,95,95,,,,95,95,95,95,95,95,95,97,,97,97,97,,,,,,,,96,,96',
344
- '96,,,,,,96,96,,,,96,96,96,96,96,96,96,332,,332,332,332,,,,97,,97,97',
345
- ',,,,,97,97,,,,97,97,97,97,97,97,97,331,,331,331,331,,,,,,,,332,,332',
346
- '332,,,,,,332,332,,,,332,332,332,332,332,332,332,330,,330,330,330,,,',
347
- '331,,331,331,,,,,,331,331,,,,331,331,331,331,331,331,331,377,,377,377',
348
- '377,,,,,,,,330,,330,330,,,,,,330,330,,,,330,330,330,330,330,330,330',
349
- '380,,380,380,380,,,,377,,377,377,,,,,,377,377,,,,377,377,377,377,377',
350
- '377,377,199,,199,199,199,,,,,,,,380,,380,380,,,,,,380,380,380,,,380',
351
- '380,380,380,380,380,380,317,,317,317,317,,,,199,,199,199,,,,,,199,199',
352
- ',,,199,199,199,199,199,199,199,283,,283,283,283,,,,,,,,317,,317,317',
353
- ',317,,317,,317,317,317,317,,317,317,317,317,317,317,317,281,,281,281',
354
- '281,,,,283,,283,283,,,,,,283,283,283,,,283,283,283,283,283,283,283,',
355
- ',,,,,,,,,,,281,,281,281,,,,,,281,281,,,,281,281,281,281,281,281,281',
356
- '64,64,64,64,64,,,,,,,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64',
357
- '64,64,,,,,,,,,,,,,64,64,64,64,,,,,,64,64,,,,64,64,64,64,64,64,64,271',
358
- ',271,271,271,,,,,,,271,,,,,,,,,271,271,117,,117,117,117,,,,,,,,,,,,',
359
- ',,271,,271,271,397,,397,397,397,271,271,,,,271,271,271,271,271,271,271',
360
- ',117,,117,117,,117,,117,,117,117,117,117,,117,117,117,117,117,117,117',
361
- ',,397,,397,397,,,397,,,397,397,,,,397,397,397,397,397,397,397,269,,269',
362
- '269,269,,,,,,,,,,,,,,,,,266,,266,266,266,,,,,,,,,,,,,,,,269,,269,269',
363
- '263,,263,263,263,269,269,,,,269,269,269,269,269,269,269,266,,266,266',
364
- ',,266,,,266,266,,,,266,266,266,266,266,266,266,,,,263,,263,263,59,,59',
365
- '59,59,263,263,,,,263,263,263,263,263,263,263,,,,,251,,251,251,251,,',
366
- ',,,,,,,,,,,,,59,,59,59,408,,408,408,408,59,59,59,,,59,59,59,59,59,59',
367
- '59,251,,251,251,,,251,,,251,251,,,,251,251,251,251,251,251,251,,,,408',
368
- ',408,408,422,,422,422,422,408,408,,,,408,408,408,408,408,408,408,,,',
369
- ',423,,423,423,423,,,,,,,,,,,,,,,,422,,422,422,424,,424,424,424,422,422',
370
- ',,,422,422,422,422,422,422,422,423,,423,423,423,,,,,423,423,,,,423,423',
371
- '423,423,423,423,423,,,,424,,424,424,424,,,,,424,424,,,,424,424,424,424',
372
- '424,424,424,226,,226,226,226,,,,,,,,,,,,,,,,,433,,433,433,433,,,,,,',
373
- ',,,,,,,,,226,,226,226,141,,141,141,141,226,226,,,,226,226,226,226,226',
374
- '226,226,433,,433,433,,433,,433,,433,433,433,433,,433,433,433,433,433',
375
- '433,433,,,,141,,141,141,,,141,,,141,141,,,,141,141,141,141,141,141,141',
376
- '142,,142,142,142,,,142,,,,142,,,,,,,,,142,142,215,,215,215,215,,,,,',
377
- ',,,,,,,,,142,,142,142,,,142,,,142,142,,,,142,142,142,142,142,142,142',
378
- ',215,,215,215,212,,212,212,212,215,215,,,,215,215,215,215,215,215,215',
379
- ',,,,208,,208,208,208,,,,,,,,,,,,,,,,212,,212,212,207,,207,207,207,212',
380
- '212,212,,,212,212,212,212,212,212,212,208,,208,208,206,,206,206,206',
381
- '208,208,,,,208,208,208,208,208,208,208,,,,207,,207,207,205,,205,205',
382
- '205,207,207,,,,207,207,207,207,207,207,207,206,,206,206,204,,204,204',
383
- '204,206,206,,,,206,206,206,206,206,206,206,,,,205,,205,205,203,,203',
384
- '203,203,205,205,,,,205,205,205,205,205,205,205,204,,204,204,202,,202',
385
- '202,202,204,204,,,,204,204,204,204,204,204,204,,,,203,,203,203,161,',
386
- '161,161,161,203,203,,,,203,203,203,203,203,203,203,202,,202,202,162',
387
- ',162,162,162,202,202,,,,202,202,202,202,202,202,202,,,,161,,161,161',
388
- '201,,201,201,201,161,161,,,,161,161,161,161,161,161,161,162,,162,162',
389
- '162,,,,,162,162,,,,162,162,162,162,162,162,162,,,,201,,201,201,200,',
390
- '200,200,200,201,201,,,,201,201,201,201,201,201,201,,,,,,,,,,,,,,,,,',
391
- ',,,,,,,200,,200,200,,,,,,200,200,,,,200,200,200,200,200,200,200,167',
392
- '167,167,167,167,,,,,,,167,167,167,167,167,167,167,167,167,167,167,167',
393
- '167,167,167,167,167,167,,,,,,,,,,,,,167,167,167,167,,,,,,167,167,167',
394
- ',,167,167,167,167,167,167,167,173,173,173,173,173,,,,,,,173,173,173',
395
- '173,173,173,173,173,173,173,173,173,173,173,173,173,173,173,,,,,,,,',
396
- ',,,,173,173,173,173,,,,,,173,173,173,,,173,173,173,173,173,173,173,175',
397
- '175,175,175,175,,,,,,,175,175,175,175,175,175,175,175,175,175,175,175',
398
- '175,175,175,175,175,175,178,,178,178,178,,,,,,,,175,175,175,175,,,,',
399
- ',175,175,175,,,175,175,175,175,175,175,175,179,,179,179,179,,,,178,',
400
- '178,178,,,,,,178,178,,,,178,178,178,178,178,178,178,190,,190,190,190',
401
- ',,,,,,,179,,179,179,,,,,,179,179,,,,179,179,179,179,179,179,179,191',
402
- ',191,191,191,,,,190,,190,190,,,,,,190,190,,,,190,190,190,190,190,190',
403
- '190,192,,192,192,192,,,,,,,,191,,191,191,,,,,,191,191,,,,191,191,191',
404
- '191,191,191,191,193,,193,193,193,,,,192,,192,192,,,,,,192,192,,,,192',
405
- '192,192,192,192,192,192,194,,194,194,194,,,,,,,,193,,193,193,,,,,,193',
406
- '193,,,,193,193,193,193,193,193,193,195,,195,195,195,,,,194,,194,194',
407
- ',,,,,194,194,,,,194,194,194,194,194,194,194,196,,196,196,196,,,,,,,',
408
- '195,,195,195,,,,,,195,195,,,,195,195,195,195,195,195,195,197,,197,197',
409
- '197,,,,196,,196,196,,,,,,196,196,,,,196,196,196,196,196,196,196,198',
410
- ',198,198,198,,,,,,,,197,,197,197,,,,,,197,197,,,,197,197,197,197,197',
411
- '197,197,,,,,,,,,198,,198,198,,,,,,198,198,,,,198,198,198,198,198,198',
412
- '198,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,1,,,,,,',
413
- ',,,,,,,1,,1,,,,,,,,146,146,,,1,146,146,146,146,146,146,146,146,146,146',
414
- '146,146,146,146,146,146,146,146,146,146,146,146,146,146,,,,,,,,,,,,',
415
- ',146,,146,,146,126,,,,,,,,,146,126,126,126,126,126,126,126,126,126,126',
416
- '126,126,126,126,126,126,126,126,,,,,,,,,,,,,,126,,126,,126,252,,,,,',
417
- ',,,126,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252',
418
- '252,252,,,,,,,,,,,,,,252,,135,,,,,,,,,252,135,135,135,135,135,135,135',
419
- '135,135,135,135,135,135,135,135,135,135,135,,,,,,,,,,,,,,135,,66,,,',
420
- ',,,,,135,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,,,,,',
421
- ',,,,,,,,66,,134,,,,,,,,,66,134,134,134,134,134,134,134,134,134,134,134',
422
- '134,134,134,134,134,134,134,,,,,,,,,,,,,,134,,129,,,,,,,,,134,129,129',
423
- '129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,,,,',
424
- ',,,,,,,,,129,,130,,,,,,,,,129,130,130,130,130,130,130,130,130,130,130',
425
- '130,130,130,130,130,130,130,130,,,,,,,,,,,,,,130,,258,,,,,,,,,130,258',
426
- '258,258,258,258,258,258,258,258,258,258,258,258,258,258,258,258,258',
427
- ',,,,,,,,,,,,,258,,,,,,,,61,,,258,61,61,61,61,61,61,61,61,61,61,61,61',
428
- '61,61,61,61,61,61,61,61,61,61,61,61,,,,,,,,,,,,,,61,,,,,,,79,,,61,79',
429
- '79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79',
430
- ',,,,,,,,,,,,,79,,,,,,,383,,,79,383,383,383,383,383,383,383,383,383,383',
431
- '383,383,383,383,383,383,383,383,383,383,383,383,383,383,,,,,,,,,,,,',
432
- ',383,,,,,,73,73,,,383,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73',
433
- '73,73,73,73,73,73,73,73,,,,,,,,,,,,,,73,343,,73,,343,343,343,343,343',
434
- '343,343,343,343,343,343,343,343,343,343,343,343,343,343,343,343,343',
435
- '343,343,,,,,,,,,,,,,,343,346,,343,,346,346,346,346,346,346,346,346,346',
436
- '346,346,346,346,346,346,346,346,346,346,346,346,346,346,346,,,,,,,,',
437
- ',,,,,346' ]
438
- racc_action_check = arr = ::Array.new(4442, nil)
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' ]
441
+ racc_action_check = arr = ::Array.new(4469, nil)
439
442
  idx = 0
440
443
  clist.each do |str|
441
444
  str.split(',', -1).each do |i|
@@ -445,246 +448,238 @@ clist = [
445
448
  end
446
449
 
447
450
  racc_action_pointer = [
448
- nil, 3718, 519, 144, nil, 21, nil, nil, nil, nil,
449
- nil, 1295, nil, nil, nil, nil, nil, nil, nil, nil,
451
+ nil, 3753, 513, 144, nil, -8, nil, nil, nil, nil,
452
+ nil, 1493, nil, nil, nil, nil, nil, nil, nil, nil,
450
453
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
451
- nil, nil, 470, 76, 61, 30, nil, nil, nil, nil,
452
- 44, 221, nil, 133, 230, nil, nil, nil, nil, nil,
453
- 136, nil, nil, nil, nil, 1247, nil, 79, 951, 2488,
454
- 434, 4169, nil, nil, 2229, 426, 3948, 394, 1547, 443,
455
- 387, 216, 1380, 4313, 281, 237, nil, nil, nil, 4217,
456
- nil, nil, 31, nil, nil, nil, nil, 1609, nil, 274,
457
- 1671, 1700, 1733, 1762, 1795, 1824, 1857, 1886, nil, nil,
458
- nil, nil, nil, 230, 226, 376, 366, 303, 347, 232,
459
- 443, 257, 434, 337, nil, nil, nil, 2313, nil, 1095,
460
- nil, nil, nil, nil, 153, 204, 3816, nil, nil, 4034,
461
- 4077, nil, nil, 1209, 3991, 3905, nil, 332, nil, 424,
462
- 502, 2730, 2792, 460, 235, nil, 3770, 465, 130, nil,
463
- 457, nil, nil, nil, nil, nil, nil, 156, 467, 468,
464
- nil, 3039, 3060, 319, 347, nil, nil, 3191, nil, nil,
465
- nil, nil, nil, 3253, nil, 3315, nil, nil, 3344, 3377,
466
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
467
- 3406, 3439, 3468, 3501, 3530, 3563, 3592, 3625, 3654, 2072,
468
- 3129, 3084, 3015, 2994, 2970, 2949, 2925, 2904, 2880, nil,
469
- 328, nil, 2859, 148, nil, 2814, 506, 427, 18, 448,
470
- nil, nil, nil, nil, nil, nil, 2685, -29, 537, nil,
471
- nil, nil, nil, nil, 436, 433, 406, 599, 403, 46,
472
- 357, 356, 438, nil, nil, nil, nil, nil, 283, 22,
473
- 208, 2509, 3862, nil, nil, nil, nil, 129, 4120, nil,
474
- nil, nil, 52, 2443, 356, nil, 2419, 176, nil, 2398,
475
- nil, 2291, 130, 147, nil, nil, nil, nil, 179, -2,
476
- nil, 2167, nil, 2134, 152, nil, 218, nil, nil, nil,
477
- nil, nil, 460, 439, 344, nil, nil, nil, nil, nil,
478
- 164, 288, 329, 333, 364, 368, 372, 362, 311, 307,
479
- 285, 453, 428, 410, 308, -9, nil, 2105, nil, nil,
480
- nil, 140, nil, 985, nil, 1343, 107, 240, 12, nil,
481
- 1981, 1948, 1919, 17, 833, 4, 1547, nil, nil, -11,
482
- nil, 201, 1485, 4355, 157, nil, 4397, 1464, nil, 214,
483
- nil, 19, nil, 227, 81, nil, nil, nil, nil, nil,
484
- 74, nil, nil, 287, 301, nil, nil, nil, nil, 1402,
485
- nil, nil, nil, 1638, 344, 354, 361, 2010, nil, nil,
486
- 2043, nil, nil, 4265, nil, 867, nil, nil, 240, 24,
487
- 26, 407, 1006, 744, nil, 143, nil, 2336, nil, 471,
488
- nil, 440, nil, 441, nil, nil, nil, 70, 2533, nil,
489
- nil, nil, nil, 330, nil, nil, nil, nil, nil, 1157,
490
- 723, 661, 2578, 2599, 2623, nil, nil, nil, nil, nil,
491
- nil, nil, nil, 2706, 477, nil, nil, 89, 150, 364,
492
- 214, 302, nil, 178, 428, 60, nil, -2, nil, nil,
493
- 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,
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,
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 ]
494
497
 
495
498
  racc_action_default = [
496
- -254, -266, -266, -266, -86, -266, -88, -90, -92, -94,
499
+ -257, -269, -269, -269, -86, -269, -88, -90, -92, -94,
497
500
  -96, -98, -100, -101, -102, -103, -104, -105, -106, -107,
498
501
  -108, -109, -110, -111, -112, -113, -114, -115, -116, -117,
499
- -118, -119, -266, -266, -266, -266, -155, -156, -157, -158,
500
- -266, -160, -161, -266, -174, -255, -256, -257, 453, -84,
501
- -266, -89, -91, -93, -95, -98, -87, -266, -266, -266,
502
- -229, -266, -261, -264, -266, -130, -266, -131, -266, -266,
503
- -150, -159, -266, -266, -266, -175, -176, -178, -85, -266,
504
- -259, -97, -98, -1, -2, -3, -4, -266, -7, -21,
505
- -266, -266, -266, -266, -266, -266, -266, -266, -32, -33,
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,
506
509
  -34, -35, -36, -38, -42, -45, -48, -53, -56, -58,
507
- -60, -62, -64, -66, -68, -99, -206, -266, -228, -266,
508
- -260, -265, -38, -83, -266, -266, -189, -138, -140, -266,
509
- -266, -127, -132, -135, -266, -266, -129, -266, -151, -153,
510
- -266, -266, -266, -266, -266, -170, -186, -266, -266, -173,
511
- -180, -182, -187, -162, -177, -179, -258, -266, -266, -266,
512
- -81, -266, -266, -266, -266, -15, -16, -266, -22, -23,
513
- -24, -25, -26, -266, -27, -266, -29, -31, -266, -266,
514
- -71, -72, -73, -74, -75, -76, -77, -78, -79, -80,
515
- -266, -266, -266, -266, -266, -266, -266, -266, -266, -266,
516
- -266, -266, -266, -266, -266, -266, -266, -266, -266, -207,
517
- -266, -210, -266, -266, -215, -266, -266, -1, -266, -266,
518
- -219, -220, -221, -222, -223, -224, -266, -266, -230, -232,
519
- -234, -235, -236, -237, -266, -266, -266, -266, -266, -266,
520
- -266, -266, -266, -120, -121, -137, -139, -190, -191, -193,
521
- -202, -266, -266, -123, -126, -133, -134, -266, -266, -125,
522
- -128, -146, -266, -266, -266, -169, -266, -266, -164, -266,
523
- -165, -266, -191, -202, -184, -185, -171, -172, -266, -266,
524
- -5, -266, -6, -266, -266, -9, -266, -19, -11, -13,
525
- -12, -14, -266, -266, -266, -69, -70, -39, -40, -41,
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,
526
529
  -43, -44, -46, -47, -49, -50, -51, -52, -54, -55,
527
- -57, -59, -61, -63, -65, -266, -208, -266, -211, -214,
528
- -216, -266, -218, -266, -238, -98, -266, -266, -266, -233,
529
- -266, -266, -266, -266, -266, -266, -266, -250, -251, -266,
530
- -252, -192, -266, -266, -266, -201, -266, -266, -195, -266,
531
- -122, -266, -141, -143, -266, -124, -148, -152, -154, -147,
532
- -266, -168, -163, -266, -266, -188, -181, -183, -82, -266,
533
- -37, -8, -10, -266, -266, -28, -30, -266, -209, -212,
534
- -266, -217, -225, -266, -263, -266, -227, -231, -266, -266,
535
- -266, -266, -266, -266, -248, -266, -253, -266, -197, -266,
536
- -204, -266, -194, -266, -199, -196, -136, -266, -266, -144,
537
- -149, -167, -166, -266, -20, -67, -213, -262, -226, -266,
538
- -266, -266, -266, -266, -266, -249, -200, -198, -205, -203,
539
- -142, -145, -17, -266, -239, -241, -242, -266, -266, -266,
540
- -266, -266, -18, -266, -266, -266, -244, -266, -246, -240,
541
- -243, -245, -247 ]
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 ]
542
545
 
543
546
  racc_goto_table = [
544
- 11, 4, 55, 115, 116, 61, 157, 124, 62, 71,
545
- 3, 210, 147, 76, 123, 255, 54, 143, 380, 51,
546
- 255, 352, 125, 229, 357, 137, 75, 341, 247, 81,
547
- 130, 392, 135, 168, 169, 300, 301, 126, 174, 176,
548
- 177, 302, 303, 351, 154, 159, 308, 309, 275, 79,
549
- 257, 341, 80, 47, 142, 5, 82, 82, 120, 179,
550
- 126, 121, 116, 304, 305, 306, 307, 148, 367, 314,
551
- 313, 54, 312, 320, 51, 311, 156, 310, 228, 121,
552
- 284, 119, 146, 328, 158, 286, 157, 267, 45, 423,
553
- 424, 46, 157, 252, 157, 248, 264, 1, 258, nil,
554
- nil, nil, nil, nil, nil, nil, nil, 287, nil, nil,
555
- nil, nil, nil, nil, nil, 272, nil, nil, nil, 230,
556
- nil, nil, 357, 295, 296, 292, 271, 315, 219, nil,
557
- nil, 293, 329, 294, 380, nil, nil, 255, 122, nil,
558
- 126, nil, nil, 255, nil, 274, 126, nil, 126, nil,
559
- nil, nil, nil, nil, nil, nil, 318, 116, 321, 54,
560
- nil, 339, 51, nil, 158, 123, 170, 171, 172, 326,
561
- 158, 430, 158, nil, nil, nil, 123, nil, nil, nil,
562
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
563
- nil, nil, nil, nil, nil, nil, 349, nil, nil, nil,
564
- nil, nil, nil, nil, nil, nil, 358, nil, nil, nil,
565
- nil, nil, nil, 123, 363, 171, 364, nil, 325, 248,
566
- nil, 333, nil, nil, nil, nil, 368, nil, 230, nil,
567
- nil, nil, 54, nil, nil, 51, nil, 219, nil, nil,
568
- nil, 71, 272, nil, nil, nil, nil, nil, nil, 388,
569
- 389, 390, nil, nil, nil, 395, 353, nil, nil, nil,
570
- nil, 379, 116, 413, 297, 298, 299, 122, 122, 122,
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,
571
565
  122, 122, 122, 122, 122, 122, 122, 122, 122, 122,
572
- 122, 122, 401, nil, nil, 403, nil, 399, 146, 122,
573
- nil, nil, nil, nil, nil, nil, nil, 409, nil, nil,
574
- 122, nil, nil, nil, 123, nil, nil, 382, nil, nil,
575
- nil, 386, nil, nil, 116, nil, nil, nil, 414, 383,
576
- nil, nil, 384, nil, 416, 116, 53, 415, nil, nil,
577
- nil, nil, nil, nil, 393, nil, nil, 122, nil, nil,
578
- 171, 437, 438, 440, nil, nil, nil, nil, nil, nil,
579
- nil, 431, 146, nil, 52, 146, nil, 370, 123, nil,
580
- nil, nil, nil, nil, nil, nil, nil, 77, nil, 418,
581
- nil, nil, nil, nil, nil, nil, nil, 379, 116, nil,
582
- 417, 53, nil, 121, nil, nil, nil, 128, nil, 128,
583
- nil, 128, nil, nil, nil, 77, nil, nil, 155, nil,
584
- nil, nil, nil, 434, 435, 436, 353, nil, nil, 52,
585
- 128, nil, nil, nil, nil, 127, nil, 127, nil, 127,
586
- nil, 171, nil, 446, nil, 448, nil, 449, 122, 451,
587
- nil, 452, nil, nil, nil, nil, nil, nil, 127, nil,
588
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 246,
589
- nil, 122, 128, 128, nil, nil, 246, 128, 128, nil,
590
- nil, nil, nil, nil, nil, 155, nil, 77, nil, 53,
591
- nil, 171, nil, nil, nil, nil, nil, 245, nil, nil,
592
- 127, 127, 122, nil, 245, 127, 127, nil, nil, nil,
593
- 128, nil, nil, nil, nil, nil, 128, 52, 128, nil,
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,
594
593
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
595
- nil, nil, nil, nil, nil, nil, nil, nil, 127, nil,
596
- nil, nil, nil, nil, 127, nil, 127, nil, nil, nil,
597
594
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
598
- nil, nil, 53, 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,
599
598
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
600
599
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
601
- 52, nil, nil, nil, nil, 128, nil, nil, nil, nil,
602
- nil, 128, nil, nil, nil, nil, nil, nil, nil, nil,
603
- nil, nil, nil, nil, 155, nil, nil, nil, nil, nil,
604
- nil, nil, nil, 127, nil, nil, nil, nil, nil, 127 ]
600
+ nil, nil, nil, nil, nil, nil, nil, nil, 127, nil,
601
+ nil, nil, nil, nil, nil, nil, nil, 127, nil, nil,
602
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
603
+ nil, 52 ]
605
604
 
606
605
  racc_goto_check = [
607
- 35, 26, 35, 36, 9, 73, 3, 25, 4, 48,
608
- 27, 8, 50, 47, 23, 40, 33, 9, 57, 30,
609
- 40, 44, 7, 69, 46, 45, 49, 55, 54, 34,
610
- 39, 62, 39, 10, 10, 13, 13, 41, 10, 10,
611
- 10, 14, 14, 42, 47, 7, 16, 16, 54, 73,
612
- 43, 55, 4, 29, 49, 28, 35, 35, 4, 24,
613
- 41, 26, 9, 15, 15, 15, 15, 51, 53, 21,
614
- 20, 33, 19, 59, 30, 18, 4, 17, 66, 26,
615
- 3, 67, 27, 68, 4, 6, 3, 9, 71, 62,
616
- 62, 72, 3, 39, 3, 47, 45, 1, 39, nil,
617
- nil, nil, nil, nil, nil, nil, nil, 9, nil, nil,
618
- nil, nil, nil, nil, nil, 47, nil, nil, nil, 26,
619
- nil, nil, 46, 9, 9, 7, 49, 3, 27, nil,
620
- nil, 7, 69, 7, 57, nil, nil, 40, 11, nil,
621
- 41, nil, nil, 40, nil, 35, 41, nil, 41, nil,
622
- nil, nil, nil, nil, nil, nil, 36, 9, 25, 33,
623
- nil, 3, 30, nil, 4, 23, 11, 11, 11, 25,
624
- 4, 44, 4, nil, nil, nil, 23, nil, nil, nil,
625
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
626
- nil, nil, nil, nil, nil, nil, 9, nil, nil, nil,
627
- nil, nil, nil, nil, nil, nil, 25, nil, nil, nil,
628
- nil, nil, nil, 23, 9, 11, 9, nil, 35, 47,
629
- nil, 60, nil, nil, nil, nil, 9, nil, 26, nil,
630
- nil, nil, 33, nil, nil, 30, nil, 27, nil, nil,
631
- nil, 48, 47, nil, nil, nil, nil, nil, nil, 3,
632
- 3, 3, nil, nil, nil, 3, 35, nil, nil, nil,
633
- nil, 36, 9, 8, 11, 11, 11, 11, 11, 11,
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,
634
624
  11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
635
- 11, 11, 50, nil, nil, 50, nil, 9, 27, 11,
636
- nil, nil, nil, nil, nil, nil, nil, 25, nil, nil,
637
- 11, nil, nil, nil, 23, nil, nil, 60, nil, nil,
638
- nil, 60, nil, nil, 9, nil, nil, nil, 9, 73,
639
- nil, nil, 4, nil, 36, 9, 32, 23, nil, nil,
640
- nil, nil, nil, nil, 26, nil, nil, 11, nil, nil,
641
- 11, 3, 3, 3, nil, nil, nil, nil, nil, nil,
642
- nil, 25, 27, nil, 31, 27, nil, 11, 23, nil,
643
- nil, nil, nil, nil, nil, nil, nil, 32, nil, 60,
644
- nil, nil, nil, nil, nil, nil, nil, 36, 9, nil,
645
- 4, 32, nil, 26, nil, nil, nil, 32, nil, 32,
646
- nil, 32, nil, nil, nil, 32, nil, nil, 32, nil,
647
- nil, nil, nil, 60, 60, 60, 35, nil, nil, 31,
648
- 32, nil, nil, nil, nil, 31, nil, 31, nil, 31,
649
- nil, 11, nil, 60, nil, 60, nil, 60, 11, 60,
650
- nil, 60, nil, nil, nil, nil, nil, nil, 31, nil,
651
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 32,
652
- nil, 11, 32, 32, nil, nil, 32, 32, 32, nil,
653
- nil, nil, nil, nil, nil, 32, nil, 32, nil, 32,
654
- nil, 11, nil, nil, nil, nil, nil, 31, nil, nil,
655
- 31, 31, 11, nil, 31, 31, 31, nil, nil, nil,
656
- 32, nil, nil, nil, nil, nil, 32, 31, 32, nil,
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,
657
652
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
658
- nil, nil, nil, nil, nil, nil, nil, nil, 31, nil,
659
- nil, nil, nil, nil, 31, nil, 31, nil, nil, nil,
660
653
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
661
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,
662
657
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
663
658
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
664
- 31, nil, nil, nil, nil, 32, nil, nil, nil, nil,
665
- nil, 32, nil, nil, nil, nil, nil, nil, nil, nil,
666
- nil, nil, nil, nil, 32, nil, nil, nil, nil, nil,
667
- nil, nil, nil, 31, nil, nil, nil, nil, nil, 31 ]
659
+ nil, nil, nil, nil, nil, nil, nil, nil, 31, nil,
660
+ nil, nil, nil, nil, nil, nil, nil, 31, nil, nil,
661
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
662
+ nil, 31 ]
668
663
 
669
664
  racc_goto_pointer = [
670
- nil, 97, nil, -81, -3, nil, -77, -42, -106, -55,
671
- -57, 74, nil, -158, -154, -134, -155, -126, -129, -133,
672
- -136, -138, nil, -50, -44, -57, 0, 9, 54, 52,
673
- 16, 351, 323, 13, -28, -1, -56, nil, nil, -36,
674
- -115, -27, -214, -83, -236, -44, -238, -31, -31, -18,
675
- -61, -6, nil, -211, -98, -221, nil, -299, nil, -140,
676
- -16, nil, -303, nil, nil, nil, -41, 21, -145, -96,
677
- nil, 87, 90, -6 ]
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 ]
678
673
 
679
674
  racc_goto_default = [
680
- nil, nil, 88, 218, 221, 89, nil, nil, nil, 160,
675
+ nil, nil, 88, 215, 219, 89, nil, nil, nil, 157,
681
676
  102, 103, 94, 104, 105, 106, 107, 108, 109, 110,
682
677
  111, 112, 113, 114, nil, nil, 63, 58, 50, nil,
683
- 6, 7, 8, 9, 10, 74, 211, 30, 31, nil,
684
- 132, 133, nil, nil, nil, nil, 138, 40, 41, nil,
685
- nil, nil, 150, 151, 344, 249, 346, 212, 213, 214,
686
- 231, 220, 222, 223, 224, 225, nil, nil, nil, nil,
687
- 232, nil, nil, 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 ]
688
683
 
689
684
  racc_reduce_table = [
690
685
  0, 0, :racc_error,
@@ -805,8 +800,8 @@ racc_reduce_table = [
805
800
  1, 123, :_reduce_115,
806
801
  1, 123, :_reduce_116,
807
802
  1, 123, :_reduce_117,
808
- 1, 123, :_reduce_none,
809
- 1, 123, :_reduce_none,
803
+ 1, 123, :_reduce_118,
804
+ 1, 123, :_reduce_119,
810
805
  4, 123, :_reduce_120,
811
806
  4, 123, :_reduce_121,
812
807
  5, 129, :_reduce_122,
@@ -822,60 +817,60 @@ racc_reduce_table = [
822
817
  1, 131, :_reduce_132,
823
818
  2, 131, :_reduce_133,
824
819
  2, 132, :_reduce_134,
825
- 0, 135, :_reduce_135,
826
- 4, 132, :_reduce_136,
827
- 2, 133, :_reduce_137,
828
- 1, 133, :_reduce_138,
829
- 2, 133, :_reduce_139,
830
- 1, 133, :_reduce_140,
831
- 1, 134, :_reduce_141,
832
- 3, 134, :_reduce_142,
833
- 1, 136, :_reduce_143,
834
- 2, 136, :_reduce_144,
835
- 3, 136, :_reduce_145,
836
- 4, 130, :_reduce_146,
820
+ 3, 132, :_reduce_135,
821
+ 2, 133, :_reduce_136,
822
+ 1, 133, :_reduce_137,
823
+ 2, 133, :_reduce_138,
824
+ 1, 133, :_reduce_139,
825
+ 1, 134, :_reduce_140,
826
+ 3, 134, :_reduce_141,
827
+ 1, 135, :_reduce_142,
828
+ 2, 135, :_reduce_143,
829
+ 3, 135, :_reduce_144,
830
+ 4, 130, :_reduce_145,
831
+ 5, 130, :_reduce_146,
837
832
  5, 130, :_reduce_147,
838
- 5, 130, :_reduce_148,
839
- 6, 130, :_reduce_149,
840
- 2, 130, :_reduce_150,
841
- 1, 137, :_reduce_151,
842
- 3, 137, :_reduce_152,
843
- 1, 138, :_reduce_153,
844
- 3, 138, :_reduce_154,
833
+ 6, 130, :_reduce_148,
834
+ 2, 130, :_reduce_149,
835
+ 1, 136, :_reduce_150,
836
+ 3, 136, :_reduce_151,
837
+ 1, 137, :_reduce_152,
838
+ 3, 137, :_reduce_153,
845
839
  1, 124, :_reduce_none,
846
840
  1, 124, :_reduce_none,
847
841
  1, 124, :_reduce_none,
848
842
  1, 125, :_reduce_none,
849
- 2, 127, :_reduce_159,
850
- 1, 127, :_reduce_160,
851
- 1, 140, :_reduce_161,
852
- 3, 140, :_reduce_162,
853
- 5, 140, :_reduce_163,
854
- 4, 140, :_reduce_164,
855
- 4, 140, :_reduce_165,
856
- 6, 140, :_reduce_166,
857
- 6, 140, :_reduce_167,
858
- 5, 140, :_reduce_168,
859
- 4, 140, :_reduce_169,
860
- 3, 140, :_reduce_170,
861
- 4, 140, :_reduce_171,
862
- 4, 140, :_reduce_172,
863
- 3, 140, :_reduce_173,
864
- 1, 139, :_reduce_174,
865
- 2, 139, :_reduce_175,
866
- 2, 139, :_reduce_176,
867
- 3, 139, :_reduce_177,
868
- 1, 141, :_reduce_178,
869
- 2, 141, :_reduce_179,
870
- 1, 142, :_reduce_180,
871
- 3, 142, :_reduce_181,
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,
865
+ 1, 141, :_reduce_180,
866
+ 3, 141, :_reduce_181,
872
867
  1, 144, :_reduce_182,
873
868
  3, 144, :_reduce_183,
874
869
  2, 145, :_reduce_184,
875
870
  2, 145, :_reduce_185,
876
871
  1, 145, :_reduce_186,
877
- 1, 143, :_reduce_187,
878
- 3, 143, :_reduce_188,
872
+ 1, 142, :_reduce_187,
873
+ 3, 142, :_reduce_188,
879
874
  1, 99, :_reduce_189,
880
875
  2, 99, :_reduce_190,
881
876
  1, 146, :_reduce_191,
@@ -892,71 +887,74 @@ racc_reduce_table = [
892
887
  0, 148, :_reduce_202,
893
888
  4, 147, :_reduce_203,
894
889
  3, 147, :_reduce_204,
895
- 4, 147, :_reduce_205,
896
- 1, 128, :_reduce_206,
897
- 2, 128, :_reduce_207,
898
- 3, 128, :_reduce_208,
899
- 4, 128, :_reduce_209,
900
- 1, 100, :_reduce_210,
901
- 2, 100, :_reduce_211,
902
- 3, 100, :_reduce_212,
903
- 4, 100, :_reduce_213,
904
- 2, 149, :_reduce_none,
905
- 1, 150, :_reduce_none,
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,
906
900
  2, 150, :_reduce_none,
907
- 3, 151, :_reduce_none,
901
+ 1, 151, :_reduce_none,
908
902
  2, 151, :_reduce_none,
909
- 1, 152, :_reduce_none,
910
- 1, 152, :_reduce_none,
911
- 1, 152, :_reduce_none,
912
- 1, 152, :_reduce_none,
913
- 1, 152, :_reduce_none,
914
- 1, 152, :_reduce_none,
915
- 3, 153, :_reduce_225,
916
- 4, 153, :_reduce_226,
917
- 3, 153, :_reduce_227,
918
- 2, 96, :_reduce_228,
919
- 0, 159, :_reduce_229,
920
- 0, 160, :_reduce_230,
921
- 5, 96, :_reduce_231,
922
- 1, 158, :_reduce_232,
923
- 2, 158, :_reduce_233,
924
- 1, 161, :_reduce_none,
925
- 1, 161, :_reduce_none,
926
- 1, 161, :_reduce_none,
927
- 1, 154, :_reduce_237,
928
- 2, 154, :_reduce_238,
929
- 5, 155, :_reduce_239,
930
- 7, 155, :_reduce_240,
931
- 5, 155, :_reduce_241,
932
- 5, 156, :_reduce_242,
933
- 7, 156, :_reduce_243,
934
- 6, 156, :_reduce_244,
935
- 7, 156, :_reduce_245,
936
- 6, 156, :_reduce_246,
937
- 7, 156, :_reduce_247,
938
- 3, 157, :_reduce_248,
939
- 4, 157, :_reduce_249,
940
- 2, 157, :_reduce_250,
941
- 2, 157, :_reduce_251,
942
- 2, 157, :_reduce_252,
943
- 3, 157, :_reduce_253,
944
- 0, 93, :_reduce_254,
945
- 2, 93, :_reduce_255,
903
+ 3, 152, :_reduce_none,
904
+ 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,
946
922
  1, 163, :_reduce_none,
947
923
  1, 163, :_reduce_none,
948
- 4, 164, :_reduce_258,
949
- 3, 164, :_reduce_259,
950
- 3, 164, :_reduce_260,
951
- 2, 164, :_reduce_261,
952
- 4, 162, :_reduce_262,
953
- 3, 162, :_reduce_263,
954
- 1, 165, :_reduce_264,
955
- 2, 165, :_reduce_265 ]
956
-
957
- racc_reduce_n = 266
958
-
959
- racc_shift_n = 453
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
960
958
 
961
959
  racc_token_table = {
962
960
  false => 0,
@@ -1208,7 +1206,6 @@ Racc_token_to_s_table = [
1208
1206
  "struct_declaration",
1209
1207
  "specifier_qualifier_list",
1210
1208
  "struct_declarator_list",
1211
- "@1",
1212
1209
  "struct_declarator",
1213
1210
  "enumerator_list",
1214
1211
  "enumerator",
@@ -1217,11 +1214,13 @@ Racc_token_to_s_table = [
1217
1214
  "type_qualifier_list",
1218
1215
  "parameter_type_list",
1219
1216
  "identifier_list",
1217
+ "@1",
1220
1218
  "parameter_list",
1221
1219
  "parameter_declaration",
1222
1220
  "abstract_declarator",
1223
1221
  "direct_abstract_declarator",
1224
1222
  "@2",
1223
+ "@3",
1225
1224
  "designation",
1226
1225
  "designator_list",
1227
1226
  "designator",
@@ -1231,9 +1230,10 @@ Racc_token_to_s_table = [
1231
1230
  "selection_statement",
1232
1231
  "iteration_statement",
1233
1232
  "jump_statement",
1233
+ "label_name",
1234
1234
  "block_item_list",
1235
- "@3",
1236
1235
  "@4",
1236
+ "@5",
1237
1237
  "block_item",
1238
1238
  "local_function_definition",
1239
1239
  "external_declaration",
@@ -1880,7 +1880,7 @@ module_eval(<<'.,.,', 'parser.y', 528)
1880
1880
  module_eval(<<'.,.,', 'parser.y', 548)
1881
1881
  def _reduce_84(val, _values, result)
1882
1882
  checkpoint(val[0].location)
1883
- @lexer.start_identifier_translation
1883
+ @lexer.enable_identifier_translation
1884
1884
  result = Declaration.new(val[0], [], @sym_tbl)
1885
1885
  result.head_token = val[0].head_token
1886
1886
  result.tail_token = val[1]
@@ -1892,6 +1892,7 @@ module_eval(<<'.,.,', 'parser.y', 548)
1892
1892
  module_eval(<<'.,.,', 'parser.y', 556)
1893
1893
  def _reduce_85(val, _values, result)
1894
1894
  checkpoint(val[0].location)
1895
+ @lexer.enable_identifier_translation
1895
1896
  result = Declaration.new(val[0], val[1], @sym_tbl)
1896
1897
  result.head_token = val[0].head_token
1897
1898
  result.tail_token = val[2]
@@ -1910,7 +1911,7 @@ module_eval(<<'.,.,', 'parser.y', 556)
1910
1911
 
1911
1912
  # reduce 86 omitted
1912
1913
 
1913
- module_eval(<<'.,.,', 'parser.y', 575)
1914
+ module_eval(<<'.,.,', 'parser.y', 576)
1914
1915
  def _reduce_87(val, _values, result)
1915
1916
  checkpoint(val[0].first.location)
1916
1917
  result = Declaration.new(nil, val[0], @sym_tbl)
@@ -1921,7 +1922,7 @@ module_eval(<<'.,.,', 'parser.y', 575)
1921
1922
  end
1922
1923
  .,.,
1923
1924
 
1924
- module_eval(<<'.,.,', 'parser.y', 585)
1925
+ module_eval(<<'.,.,', 'parser.y', 586)
1925
1926
  def _reduce_88(val, _values, result)
1926
1927
  checkpoint(val[0].location)
1927
1928
  result = DeclarationSpecifiers.new
@@ -1932,7 +1933,7 @@ module_eval(<<'.,.,', 'parser.y', 585)
1932
1933
  end
1933
1934
  .,.,
1934
1935
 
1935
- module_eval(<<'.,.,', 'parser.y', 592)
1936
+ module_eval(<<'.,.,', 'parser.y', 593)
1936
1937
  def _reduce_89(val, _values, result)
1937
1938
  checkpoint(val[0].location)
1938
1939
  result = val[0]
@@ -1943,10 +1944,9 @@ module_eval(<<'.,.,', 'parser.y', 592)
1943
1944
  end
1944
1945
  .,.,
1945
1946
 
1946
- module_eval(<<'.,.,', 'parser.y', 599)
1947
+ module_eval(<<'.,.,', 'parser.y', 600)
1947
1948
  def _reduce_90(val, _values, result)
1948
1949
  checkpoint(val[0].location)
1949
- @lexer.stop_identifier_translation
1950
1950
  result = DeclarationSpecifiers.new
1951
1951
  result.type_specifiers.push(val[0])
1952
1952
  result.head_token = val[0].head_token
@@ -1959,7 +1959,6 @@ module_eval(<<'.,.,', 'parser.y', 599)
1959
1959
  module_eval(<<'.,.,', 'parser.y', 608)
1960
1960
  def _reduce_91(val, _values, result)
1961
1961
  checkpoint(val[0].location)
1962
- @lexer.stop_identifier_translation
1963
1962
  result = val[0]
1964
1963
  result.type_specifiers.push(val[1])
1965
1964
  result.tail_token = val[1].tail_token
@@ -1968,7 +1967,7 @@ module_eval(<<'.,.,', 'parser.y', 608)
1968
1967
  end
1969
1968
  .,.,
1970
1969
 
1971
- module_eval(<<'.,.,', 'parser.y', 616)
1970
+ module_eval(<<'.,.,', 'parser.y', 615)
1972
1971
  def _reduce_92(val, _values, result)
1973
1972
  checkpoint(val[0].location)
1974
1973
  result = DeclarationSpecifiers.new
@@ -1979,7 +1978,7 @@ module_eval(<<'.,.,', 'parser.y', 616)
1979
1978
  end
1980
1979
  .,.,
1981
1980
 
1982
- module_eval(<<'.,.,', 'parser.y', 623)
1981
+ module_eval(<<'.,.,', 'parser.y', 622)
1983
1982
  def _reduce_93(val, _values, result)
1984
1983
  checkpoint(val[0].location)
1985
1984
  result = val[0]
@@ -1990,7 +1989,7 @@ module_eval(<<'.,.,', 'parser.y', 623)
1990
1989
  end
1991
1990
  .,.,
1992
1991
 
1993
- module_eval(<<'.,.,', 'parser.y', 630)
1992
+ module_eval(<<'.,.,', 'parser.y', 629)
1994
1993
  def _reduce_94(val, _values, result)
1995
1994
  checkpoint(val[0].location)
1996
1995
  result = DeclarationSpecifiers.new
@@ -2001,7 +2000,7 @@ module_eval(<<'.,.,', 'parser.y', 630)
2001
2000
  end
2002
2001
  .,.,
2003
2002
 
2004
- module_eval(<<'.,.,', 'parser.y', 637)
2003
+ module_eval(<<'.,.,', 'parser.y', 636)
2005
2004
  def _reduce_95(val, _values, result)
2006
2005
  checkpoint(val[0].location)
2007
2006
  result = val[0]
@@ -2012,7 +2011,7 @@ module_eval(<<'.,.,', 'parser.y', 637)
2012
2011
  end
2013
2012
  .,.,
2014
2013
 
2015
- module_eval(<<'.,.,', 'parser.y', 647)
2014
+ module_eval(<<'.,.,', 'parser.y', 646)
2016
2015
  def _reduce_96(val, _values, result)
2017
2016
  checkpoint(val[0].location)
2018
2017
  result = val
@@ -2021,7 +2020,7 @@ module_eval(<<'.,.,', 'parser.y', 647)
2021
2020
  end
2022
2021
  .,.,
2023
2022
 
2024
- module_eval(<<'.,.,', 'parser.y', 652)
2023
+ module_eval(<<'.,.,', 'parser.y', 651)
2025
2024
  def _reduce_97(val, _values, result)
2026
2025
  checkpoint(val[0].first.location)
2027
2026
  result = val[0].push(val[2])
@@ -2030,7 +2029,7 @@ module_eval(<<'.,.,', 'parser.y', 652)
2030
2029
  end
2031
2030
  .,.,
2032
2031
 
2033
- module_eval(<<'.,.,', 'parser.y', 660)
2032
+ module_eval(<<'.,.,', 'parser.y', 659)
2034
2033
  def _reduce_98(val, _values, result)
2035
2034
  checkpoint(val[0].location)
2036
2035
  result = InitDeclarator.new(val[0], nil)
@@ -2041,7 +2040,7 @@ module_eval(<<'.,.,', 'parser.y', 660)
2041
2040
  end
2042
2041
  .,.,
2043
2042
 
2044
- module_eval(<<'.,.,', 'parser.y', 667)
2043
+ module_eval(<<'.,.,', 'parser.y', 666)
2045
2044
  def _reduce_99(val, _values, result)
2046
2045
  checkpoint(val[0].location)
2047
2046
  result = InitDeclarator.new(val[0], val[2])
@@ -2062,9 +2061,10 @@ module_eval(<<'.,.,', 'parser.y', 667)
2062
2061
 
2063
2062
  # reduce 104 omitted
2064
2063
 
2065
- module_eval(<<'.,.,', 'parser.y', 685)
2064
+ module_eval(<<'.,.,', 'parser.y', 684)
2066
2065
  def _reduce_105(val, _values, result)
2067
2066
  checkpoint(val[0].location)
2067
+ @lexer.disable_identifier_translation
2068
2068
  result = StandardTypeSpecifier.new(val[0])
2069
2069
  result.head_token = result.tail_token = val[0]
2070
2070
 
@@ -2075,6 +2075,7 @@ module_eval(<<'.,.,', 'parser.y', 685)
2075
2075
  module_eval(<<'.,.,', 'parser.y', 691)
2076
2076
  def _reduce_106(val, _values, result)
2077
2077
  checkpoint(val[0].location)
2078
+ @lexer.disable_identifier_translation
2078
2079
  result = StandardTypeSpecifier.new(val[0])
2079
2080
  result.head_token = result.tail_token = val[0]
2080
2081
 
@@ -2082,9 +2083,10 @@ module_eval(<<'.,.,', 'parser.y', 691)
2082
2083
  end
2083
2084
  .,.,
2084
2085
 
2085
- module_eval(<<'.,.,', 'parser.y', 697)
2086
+ module_eval(<<'.,.,', 'parser.y', 698)
2086
2087
  def _reduce_107(val, _values, result)
2087
2088
  checkpoint(val[0].location)
2089
+ @lexer.disable_identifier_translation
2088
2090
  result = StandardTypeSpecifier.new(val[0])
2089
2091
  result.head_token = result.tail_token = val[0]
2090
2092
 
@@ -2092,9 +2094,10 @@ module_eval(<<'.,.,', 'parser.y', 697)
2092
2094
  end
2093
2095
  .,.,
2094
2096
 
2095
- module_eval(<<'.,.,', 'parser.y', 703)
2097
+ module_eval(<<'.,.,', 'parser.y', 705)
2096
2098
  def _reduce_108(val, _values, result)
2097
2099
  checkpoint(val[0].location)
2100
+ @lexer.disable_identifier_translation
2098
2101
  result = StandardTypeSpecifier.new(val[0])
2099
2102
  result.head_token = result.tail_token = val[0]
2100
2103
 
@@ -2102,9 +2105,10 @@ module_eval(<<'.,.,', 'parser.y', 703)
2102
2105
  end
2103
2106
  .,.,
2104
2107
 
2105
- module_eval(<<'.,.,', 'parser.y', 709)
2108
+ module_eval(<<'.,.,', 'parser.y', 712)
2106
2109
  def _reduce_109(val, _values, result)
2107
2110
  checkpoint(val[0].location)
2111
+ @lexer.disable_identifier_translation
2108
2112
  result = StandardTypeSpecifier.new(val[0])
2109
2113
  result.head_token = result.tail_token = val[0]
2110
2114
 
@@ -2112,9 +2116,10 @@ module_eval(<<'.,.,', 'parser.y', 709)
2112
2116
  end
2113
2117
  .,.,
2114
2118
 
2115
- module_eval(<<'.,.,', 'parser.y', 715)
2119
+ module_eval(<<'.,.,', 'parser.y', 719)
2116
2120
  def _reduce_110(val, _values, result)
2117
2121
  checkpoint(val[0].location)
2122
+ @lexer.disable_identifier_translation
2118
2123
  result = StandardTypeSpecifier.new(val[0])
2119
2124
  result.head_token = result.tail_token = val[0]
2120
2125
 
@@ -2122,9 +2127,10 @@ module_eval(<<'.,.,', 'parser.y', 715)
2122
2127
  end
2123
2128
  .,.,
2124
2129
 
2125
- module_eval(<<'.,.,', 'parser.y', 721)
2130
+ module_eval(<<'.,.,', 'parser.y', 726)
2126
2131
  def _reduce_111(val, _values, result)
2127
2132
  checkpoint(val[0].location)
2133
+ @lexer.disable_identifier_translation
2128
2134
  result = StandardTypeSpecifier.new(val[0])
2129
2135
  result.head_token = result.tail_token = val[0]
2130
2136
 
@@ -2132,9 +2138,10 @@ module_eval(<<'.,.,', 'parser.y', 721)
2132
2138
  end
2133
2139
  .,.,
2134
2140
 
2135
- module_eval(<<'.,.,', 'parser.y', 727)
2141
+ module_eval(<<'.,.,', 'parser.y', 733)
2136
2142
  def _reduce_112(val, _values, result)
2137
2143
  checkpoint(val[0].location)
2144
+ @lexer.disable_identifier_translation
2138
2145
  result = StandardTypeSpecifier.new(val[0])
2139
2146
  result.head_token = result.tail_token = val[0]
2140
2147
 
@@ -2142,9 +2149,10 @@ module_eval(<<'.,.,', 'parser.y', 727)
2142
2149
  end
2143
2150
  .,.,
2144
2151
 
2145
- module_eval(<<'.,.,', 'parser.y', 733)
2152
+ module_eval(<<'.,.,', 'parser.y', 740)
2146
2153
  def _reduce_113(val, _values, result)
2147
2154
  checkpoint(val[0].location)
2155
+ @lexer.disable_identifier_translation
2148
2156
  result = StandardTypeSpecifier.new(val[0])
2149
2157
  result.head_token = result.tail_token = val[0]
2150
2158
 
@@ -2152,9 +2160,10 @@ module_eval(<<'.,.,', 'parser.y', 733)
2152
2160
  end
2153
2161
  .,.,
2154
2162
 
2155
- module_eval(<<'.,.,', 'parser.y', 739)
2163
+ module_eval(<<'.,.,', 'parser.y', 747)
2156
2164
  def _reduce_114(val, _values, result)
2157
2165
  checkpoint(val[0].location)
2166
+ @lexer.disable_identifier_translation
2158
2167
  result = StandardTypeSpecifier.new(val[0])
2159
2168
  result.head_token = result.tail_token = val[0]
2160
2169
 
@@ -2162,9 +2171,10 @@ module_eval(<<'.,.,', 'parser.y', 739)
2162
2171
  end
2163
2172
  .,.,
2164
2173
 
2165
- module_eval(<<'.,.,', 'parser.y', 745)
2174
+ module_eval(<<'.,.,', 'parser.y', 754)
2166
2175
  def _reduce_115(val, _values, result)
2167
2176
  checkpoint(val[0].location)
2177
+ @lexer.disable_identifier_translation
2168
2178
  result = StandardTypeSpecifier.new(val[0])
2169
2179
  result.head_token = result.tail_token = val[0]
2170
2180
 
@@ -2172,9 +2182,10 @@ module_eval(<<'.,.,', 'parser.y', 745)
2172
2182
  end
2173
2183
  .,.,
2174
2184
 
2175
- module_eval(<<'.,.,', 'parser.y', 751)
2185
+ module_eval(<<'.,.,', 'parser.y', 761)
2176
2186
  def _reduce_116(val, _values, result)
2177
2187
  checkpoint(val[0].location)
2188
+ @lexer.disable_identifier_translation
2178
2189
  result = StandardTypeSpecifier.new(val[0])
2179
2190
  result.head_token = result.tail_token = val[0]
2180
2191
 
@@ -2182,9 +2193,10 @@ module_eval(<<'.,.,', 'parser.y', 751)
2182
2193
  end
2183
2194
  .,.,
2184
2195
 
2185
- module_eval(<<'.,.,', 'parser.y', 757)
2196
+ module_eval(<<'.,.,', 'parser.y', 768)
2186
2197
  def _reduce_117(val, _values, result)
2187
2198
  checkpoint(val[0].location)
2199
+ @lexer.disable_identifier_translation
2188
2200
  result = TypedefTypeSpecifier.new(val[0])
2189
2201
  result.head_token = result.tail_token = val[0]
2190
2202
 
@@ -2192,13 +2204,30 @@ module_eval(<<'.,.,', 'parser.y', 757)
2192
2204
  end
2193
2205
  .,.,
2194
2206
 
2195
- # reduce 118 omitted
2207
+ module_eval(<<'.,.,', 'parser.y', 775)
2208
+ def _reduce_118(val, _values, result)
2209
+ checkpoint(val[0].location)
2210
+ @lexer.disable_identifier_translation
2211
+ result = val[0]
2212
+
2213
+ result
2214
+ end
2215
+ .,.,
2196
2216
 
2197
- # reduce 119 omitted
2217
+ module_eval(<<'.,.,', 'parser.y', 781)
2218
+ def _reduce_119(val, _values, result)
2219
+ checkpoint(val[0].location)
2220
+ @lexer.disable_identifier_translation
2221
+ result = val[0]
2222
+
2223
+ result
2224
+ end
2225
+ .,.,
2198
2226
 
2199
- module_eval(<<'.,.,', 'parser.y', 765)
2227
+ module_eval(<<'.,.,', 'parser.y', 787)
2200
2228
  def _reduce_120(val, _values, result)
2201
2229
  checkpoint(val[0].location)
2230
+ @lexer.disable_identifier_translation
2202
2231
  val[2].full = true
2203
2232
  result = TypeofTypeSpecifier.new(val[2], nil)
2204
2233
  result.head_token = val[0]
@@ -2208,9 +2237,10 @@ module_eval(<<'.,.,', 'parser.y', 765)
2208
2237
  end
2209
2238
  .,.,
2210
2239
 
2211
- module_eval(<<'.,.,', 'parser.y', 773)
2240
+ module_eval(<<'.,.,', 'parser.y', 796)
2212
2241
  def _reduce_121(val, _values, result)
2213
2242
  checkpoint(val[0].location)
2243
+ @lexer.disable_identifier_translation
2214
2244
  result = TypeofTypeSpecifier.new(nil, val[2])
2215
2245
  result.head_token = val[0]
2216
2246
  result.tail_token = val[3]
@@ -2219,7 +2249,7 @@ module_eval(<<'.,.,', 'parser.y', 773)
2219
2249
  end
2220
2250
  .,.,
2221
2251
 
2222
- module_eval(<<'.,.,', 'parser.y', 783)
2252
+ module_eval(<<'.,.,', 'parser.y', 807)
2223
2253
  def _reduce_122(val, _values, result)
2224
2254
  checkpoint(val[0].location)
2225
2255
  result = StructSpecifier.new(val[1], val[3])
@@ -2230,7 +2260,7 @@ module_eval(<<'.,.,', 'parser.y', 783)
2230
2260
  end
2231
2261
  .,.,
2232
2262
 
2233
- module_eval(<<'.,.,', 'parser.y', 790)
2263
+ module_eval(<<'.,.,', 'parser.y', 814)
2234
2264
  def _reduce_123(val, _values, result)
2235
2265
  checkpoint(val[0].location)
2236
2266
  result = StructSpecifier.new(val[1], [])
@@ -2241,7 +2271,7 @@ module_eval(<<'.,.,', 'parser.y', 790)
2241
2271
  end
2242
2272
  .,.,
2243
2273
 
2244
- module_eval(<<'.,.,', 'parser.y', 797)
2274
+ module_eval(<<'.,.,', 'parser.y', 821)
2245
2275
  def _reduce_124(val, _values, result)
2246
2276
  checkpoint(val[0].location)
2247
2277
  result = UnionSpecifier.new(val[1], val[3])
@@ -2252,7 +2282,7 @@ module_eval(<<'.,.,', 'parser.y', 797)
2252
2282
  end
2253
2283
  .,.,
2254
2284
 
2255
- module_eval(<<'.,.,', 'parser.y', 804)
2285
+ module_eval(<<'.,.,', 'parser.y', 828)
2256
2286
  def _reduce_125(val, _values, result)
2257
2287
  checkpoint(val[0].location)
2258
2288
  result = UnionSpecifier.new(val[1], [])
@@ -2263,7 +2293,7 @@ module_eval(<<'.,.,', 'parser.y', 804)
2263
2293
  end
2264
2294
  .,.,
2265
2295
 
2266
- module_eval(<<'.,.,', 'parser.y', 811)
2296
+ module_eval(<<'.,.,', 'parser.y', 835)
2267
2297
  def _reduce_126(val, _values, result)
2268
2298
  checkpoint(val[0].location)
2269
2299
  result = StructSpecifier.new(create_anon_tag_name(val[0]), val[2])
@@ -2274,7 +2304,7 @@ module_eval(<<'.,.,', 'parser.y', 811)
2274
2304
  end
2275
2305
  .,.,
2276
2306
 
2277
- module_eval(<<'.,.,', 'parser.y', 818)
2307
+ module_eval(<<'.,.,', 'parser.y', 842)
2278
2308
  def _reduce_127(val, _values, result)
2279
2309
  checkpoint(val[0].location)
2280
2310
  result = StructSpecifier.new(create_anon_tag_name(val[0]), [])
@@ -2285,7 +2315,7 @@ module_eval(<<'.,.,', 'parser.y', 818)
2285
2315
  end
2286
2316
  .,.,
2287
2317
 
2288
- module_eval(<<'.,.,', 'parser.y', 825)
2318
+ module_eval(<<'.,.,', 'parser.y', 849)
2289
2319
  def _reduce_128(val, _values, result)
2290
2320
  checkpoint(val[0].location)
2291
2321
  result = UnionSpecifier.new(create_anon_tag_name(val[0]), val[2])
@@ -2296,7 +2326,7 @@ module_eval(<<'.,.,', 'parser.y', 825)
2296
2326
  end
2297
2327
  .,.,
2298
2328
 
2299
- module_eval(<<'.,.,', 'parser.y', 832)
2329
+ module_eval(<<'.,.,', 'parser.y', 856)
2300
2330
  def _reduce_129(val, _values, result)
2301
2331
  checkpoint(val[0].location)
2302
2332
  result = UnionSpecifier.new(create_anon_tag_name(val[0]), [])
@@ -2307,7 +2337,7 @@ module_eval(<<'.,.,', 'parser.y', 832)
2307
2337
  end
2308
2338
  .,.,
2309
2339
 
2310
- module_eval(<<'.,.,', 'parser.y', 839)
2340
+ module_eval(<<'.,.,', 'parser.y', 863)
2311
2341
  def _reduce_130(val, _values, result)
2312
2342
  checkpoint(val[0].location)
2313
2343
  result = StructSpecifier.new(val[1], nil)
@@ -2318,7 +2348,7 @@ module_eval(<<'.,.,', 'parser.y', 839)
2318
2348
  end
2319
2349
  .,.,
2320
2350
 
2321
- module_eval(<<'.,.,', 'parser.y', 846)
2351
+ module_eval(<<'.,.,', 'parser.y', 870)
2322
2352
  def _reduce_131(val, _values, result)
2323
2353
  checkpoint(val[0].location)
2324
2354
  result = UnionSpecifier.new(val[1], nil)
@@ -2329,28 +2359,29 @@ module_eval(<<'.,.,', 'parser.y', 846)
2329
2359
  end
2330
2360
  .,.,
2331
2361
 
2332
- module_eval(<<'.,.,', 'parser.y', 856)
2362
+ module_eval(<<'.,.,', 'parser.y', 880)
2333
2363
  def _reduce_132(val, _values, result)
2334
2364
  checkpoint(val[0].location)
2365
+ @lexer.enable_identifier_translation
2335
2366
  result = val
2336
2367
 
2337
2368
  result
2338
2369
  end
2339
2370
  .,.,
2340
2371
 
2341
- module_eval(<<'.,.,', 'parser.y', 861)
2372
+ module_eval(<<'.,.,', 'parser.y', 886)
2342
2373
  def _reduce_133(val, _values, result)
2343
2374
  checkpoint(val[0].first.location)
2375
+ @lexer.enable_identifier_translation
2344
2376
  result = val[0].push(val[1])
2345
2377
 
2346
2378
  result
2347
2379
  end
2348
2380
  .,.,
2349
2381
 
2350
- module_eval(<<'.,.,', 'parser.y', 869)
2382
+ module_eval(<<'.,.,', 'parser.y', 895)
2351
2383
  def _reduce_134(val, _values, result)
2352
2384
  checkpoint(val[0].location)
2353
- @lexer.start_identifier_translation
2354
2385
  result = StructDeclaration.new(val[0], [])
2355
2386
  result.head_token = val[0].head_token
2356
2387
  result.tail_token = val[1]
@@ -2359,28 +2390,20 @@ module_eval(<<'.,.,', 'parser.y', 869)
2359
2390
  end
2360
2391
  .,.,
2361
2392
 
2362
- module_eval(<<'.,.,', 'parser.y', 875)
2393
+ module_eval(<<'.,.,', 'parser.y', 902)
2363
2394
  def _reduce_135(val, _values, result)
2364
- @lexer.stop_identifier_translation
2365
- result
2366
- end
2367
- .,.,
2368
-
2369
- module_eval(<<'.,.,', 'parser.y', 878)
2370
- def _reduce_136(val, _values, result)
2371
2395
  checkpoint(val[0].location)
2372
- result = StructDeclaration.new(val[0], val[2])
2396
+ result = StructDeclaration.new(val[0], val[1])
2373
2397
  result.head_token = val[0].head_token
2374
- result.tail_token = val[3]
2398
+ result.tail_token = val[2]
2375
2399
 
2376
2400
  result
2377
2401
  end
2378
2402
  .,.,
2379
2403
 
2380
- module_eval(<<'.,.,', 'parser.y', 888)
2381
- def _reduce_137(val, _values, result)
2404
+ module_eval(<<'.,.,', 'parser.y', 912)
2405
+ def _reduce_136(val, _values, result)
2382
2406
  checkpoint(val[0].location)
2383
- @lexer.stop_identifier_translation
2384
2407
  result = val[0]
2385
2408
  result.type_specifiers.push(val[1])
2386
2409
  result.tail_token = val[1].tail_token
@@ -2389,10 +2412,9 @@ module_eval(<<'.,.,', 'parser.y', 888)
2389
2412
  end
2390
2413
  .,.,
2391
2414
 
2392
- module_eval(<<'.,.,', 'parser.y', 896)
2393
- def _reduce_138(val, _values, result)
2415
+ module_eval(<<'.,.,', 'parser.y', 919)
2416
+ def _reduce_137(val, _values, result)
2394
2417
  checkpoint(val[0].location)
2395
- @lexer.stop_identifier_translation
2396
2418
  result = SpecifierQualifierList.new
2397
2419
  result.type_specifiers.push(val[0])
2398
2420
  result.head_token = val[0].head_token
@@ -2402,8 +2424,8 @@ module_eval(<<'.,.,', 'parser.y', 896)
2402
2424
  end
2403
2425
  .,.,
2404
2426
 
2405
- module_eval(<<'.,.,', 'parser.y', 905)
2406
- def _reduce_139(val, _values, result)
2427
+ module_eval(<<'.,.,', 'parser.y', 927)
2428
+ def _reduce_138(val, _values, result)
2407
2429
  checkpoint(val[0].location)
2408
2430
  result = val[0]
2409
2431
  result.type_qualifiers.push(val[1])
@@ -2413,8 +2435,8 @@ module_eval(<<'.,.,', 'parser.y', 905)
2413
2435
  end
2414
2436
  .,.,
2415
2437
 
2416
- module_eval(<<'.,.,', 'parser.y', 912)
2417
- def _reduce_140(val, _values, result)
2438
+ module_eval(<<'.,.,', 'parser.y', 934)
2439
+ def _reduce_139(val, _values, result)
2418
2440
  checkpoint(val[0].location)
2419
2441
  result = SpecifierQualifierList.new
2420
2442
  result.type_qualifiers.push(val[0])
@@ -2424,8 +2446,8 @@ module_eval(<<'.,.,', 'parser.y', 912)
2424
2446
  end
2425
2447
  .,.,
2426
2448
 
2427
- module_eval(<<'.,.,', 'parser.y', 922)
2428
- def _reduce_141(val, _values, result)
2449
+ module_eval(<<'.,.,', 'parser.y', 944)
2450
+ def _reduce_140(val, _values, result)
2429
2451
  checkpoint(val[0].location)
2430
2452
  result = val
2431
2453
 
@@ -2433,8 +2455,8 @@ module_eval(<<'.,.,', 'parser.y', 922)
2433
2455
  end
2434
2456
  .,.,
2435
2457
 
2436
- module_eval(<<'.,.,', 'parser.y', 927)
2437
- def _reduce_142(val, _values, result)
2458
+ module_eval(<<'.,.,', 'parser.y', 949)
2459
+ def _reduce_141(val, _values, result)
2438
2460
  checkpoint(val[0].first.location)
2439
2461
  result = val[0].push(val[2])
2440
2462
 
@@ -2442,8 +2464,8 @@ module_eval(<<'.,.,', 'parser.y', 927)
2442
2464
  end
2443
2465
  .,.,
2444
2466
 
2445
- module_eval(<<'.,.,', 'parser.y', 935)
2446
- def _reduce_143(val, _values, result)
2467
+ module_eval(<<'.,.,', 'parser.y', 957)
2468
+ def _reduce_142(val, _values, result)
2447
2469
  checkpoint(val[0].location)
2448
2470
  result = StructDeclarator.new(val[0], nil)
2449
2471
  result.head_token = val[0].head_token
@@ -2453,8 +2475,8 @@ module_eval(<<'.,.,', 'parser.y', 935)
2453
2475
  end
2454
2476
  .,.,
2455
2477
 
2456
- module_eval(<<'.,.,', 'parser.y', 942)
2457
- def _reduce_144(val, _values, result)
2478
+ module_eval(<<'.,.,', 'parser.y', 964)
2479
+ def _reduce_143(val, _values, result)
2458
2480
  checkpoint(val[0].location)
2459
2481
  val[1].full = true
2460
2482
  result = StructDeclarator.new(nil, val[1])
@@ -2465,8 +2487,8 @@ module_eval(<<'.,.,', 'parser.y', 942)
2465
2487
  end
2466
2488
  .,.,
2467
2489
 
2468
- module_eval(<<'.,.,', 'parser.y', 950)
2469
- def _reduce_145(val, _values, result)
2490
+ module_eval(<<'.,.,', 'parser.y', 972)
2491
+ def _reduce_144(val, _values, result)
2470
2492
  checkpoint(val[0].location)
2471
2493
  val[2].full = true
2472
2494
  result = StructDeclarator.new(val[0], val[2])
@@ -2477,8 +2499,8 @@ module_eval(<<'.,.,', 'parser.y', 950)
2477
2499
  end
2478
2500
  .,.,
2479
2501
 
2480
- module_eval(<<'.,.,', 'parser.y', 961)
2481
- def _reduce_146(val, _values, result)
2502
+ module_eval(<<'.,.,', 'parser.y', 983)
2503
+ def _reduce_145(val, _values, result)
2482
2504
  checkpoint(val[0].location)
2483
2505
  result = EnumSpecifier.new(create_anon_tag_name(val[0]), val[2])
2484
2506
  result.head_token = val[0]
@@ -2488,8 +2510,8 @@ module_eval(<<'.,.,', 'parser.y', 961)
2488
2510
  end
2489
2511
  .,.,
2490
2512
 
2491
- module_eval(<<'.,.,', 'parser.y', 968)
2492
- def _reduce_147(val, _values, result)
2513
+ module_eval(<<'.,.,', 'parser.y', 990)
2514
+ def _reduce_146(val, _values, result)
2493
2515
  checkpoint(val[0].location)
2494
2516
  result = EnumSpecifier.new(val[1], val[3])
2495
2517
  result.head_token = val[0]
@@ -2499,8 +2521,8 @@ module_eval(<<'.,.,', 'parser.y', 968)
2499
2521
  end
2500
2522
  .,.,
2501
2523
 
2502
- module_eval(<<'.,.,', 'parser.y', 975)
2503
- def _reduce_148(val, _values, result)
2524
+ module_eval(<<'.,.,', 'parser.y', 997)
2525
+ def _reduce_147(val, _values, result)
2504
2526
  checkpoint(val[0].location)
2505
2527
  result = EnumSpecifier.new(create_anon_tag_name(val[0]),
2506
2528
  val[2], val[3])
@@ -2511,8 +2533,8 @@ module_eval(<<'.,.,', 'parser.y', 975)
2511
2533
  end
2512
2534
  .,.,
2513
2535
 
2514
- module_eval(<<'.,.,', 'parser.y', 983)
2515
- def _reduce_149(val, _values, result)
2536
+ module_eval(<<'.,.,', 'parser.y', 1005)
2537
+ def _reduce_148(val, _values, result)
2516
2538
  checkpoint(val[0].location)
2517
2539
  result = EnumSpecifier.new(val[1], val[3], val[4])
2518
2540
  result.head_token = val[0]
@@ -2522,8 +2544,8 @@ module_eval(<<'.,.,', 'parser.y', 983)
2522
2544
  end
2523
2545
  .,.,
2524
2546
 
2525
- module_eval(<<'.,.,', 'parser.y', 990)
2526
- def _reduce_150(val, _values, result)
2547
+ module_eval(<<'.,.,', 'parser.y', 1012)
2548
+ def _reduce_149(val, _values, result)
2527
2549
  checkpoint(val[0].location)
2528
2550
  result = EnumSpecifier.new(val[1], nil)
2529
2551
  result.head_token = val[0]
@@ -2533,8 +2555,8 @@ module_eval(<<'.,.,', 'parser.y', 990)
2533
2555
  end
2534
2556
  .,.,
2535
2557
 
2536
- module_eval(<<'.,.,', 'parser.y', 1000)
2537
- def _reduce_151(val, _values, result)
2558
+ module_eval(<<'.,.,', 'parser.y', 1022)
2559
+ def _reduce_150(val, _values, result)
2538
2560
  checkpoint(val[0].location)
2539
2561
  result = val
2540
2562
 
@@ -2542,8 +2564,8 @@ module_eval(<<'.,.,', 'parser.y', 1000)
2542
2564
  end
2543
2565
  .,.,
2544
2566
 
2545
- module_eval(<<'.,.,', 'parser.y', 1005)
2546
- def _reduce_152(val, _values, result)
2567
+ module_eval(<<'.,.,', 'parser.y', 1027)
2568
+ def _reduce_151(val, _values, result)
2547
2569
  checkpoint(val[0].first.location)
2548
2570
  result = val[0].push(val[2])
2549
2571
 
@@ -2551,8 +2573,8 @@ module_eval(<<'.,.,', 'parser.y', 1005)
2551
2573
  end
2552
2574
  .,.,
2553
2575
 
2554
- module_eval(<<'.,.,', 'parser.y', 1013)
2555
- def _reduce_153(val, _values, result)
2576
+ module_eval(<<'.,.,', 'parser.y', 1035)
2577
+ def _reduce_152(val, _values, result)
2556
2578
  checkpoint(val[0].location)
2557
2579
  sym = @sym_tbl.create_new_symbol(EnumeratorName, val[0])
2558
2580
  result = Enumerator.new(val[0], nil, sym)
@@ -2562,8 +2584,8 @@ module_eval(<<'.,.,', 'parser.y', 1013)
2562
2584
  end
2563
2585
  .,.,
2564
2586
 
2565
- module_eval(<<'.,.,', 'parser.y', 1020)
2566
- def _reduce_154(val, _values, result)
2587
+ module_eval(<<'.,.,', 'parser.y', 1042)
2588
+ def _reduce_153(val, _values, result)
2567
2589
  checkpoint(val[0].location)
2568
2590
  val[2].full = true
2569
2591
  sym = @sym_tbl.create_new_symbol(EnumeratorName, val[0])
@@ -2575,16 +2597,16 @@ module_eval(<<'.,.,', 'parser.y', 1020)
2575
2597
  end
2576
2598
  .,.,
2577
2599
 
2600
+ # reduce 154 omitted
2601
+
2578
2602
  # reduce 155 omitted
2579
2603
 
2580
2604
  # reduce 156 omitted
2581
2605
 
2582
2606
  # reduce 157 omitted
2583
2607
 
2584
- # reduce 158 omitted
2585
-
2586
- module_eval(<<'.,.,', 'parser.y', 1042)
2587
- def _reduce_159(val, _values, result)
2608
+ module_eval(<<'.,.,', 'parser.y', 1064)
2609
+ def _reduce_158(val, _values, result)
2588
2610
  checkpoint(val[0].first.location)
2589
2611
  result = val[1]
2590
2612
  result.pointer = val[0]
@@ -2595,8 +2617,8 @@ module_eval(<<'.,.,', 'parser.y', 1042)
2595
2617
  end
2596
2618
  .,.,
2597
2619
 
2598
- module_eval(<<'.,.,', 'parser.y', 1050)
2599
- def _reduce_160(val, _values, result)
2620
+ module_eval(<<'.,.,', 'parser.y', 1072)
2621
+ def _reduce_159(val, _values, result)
2600
2622
  checkpoint(val[0].location)
2601
2623
  result = val[0]
2602
2624
  result.full = true
@@ -2605,10 +2627,10 @@ module_eval(<<'.,.,', 'parser.y', 1050)
2605
2627
  end
2606
2628
  .,.,
2607
2629
 
2608
- module_eval(<<'.,.,', 'parser.y', 1059)
2609
- def _reduce_161(val, _values, result)
2630
+ module_eval(<<'.,.,', 'parser.y', 1081)
2631
+ def _reduce_160(val, _values, result)
2610
2632
  checkpoint(val[0].location)
2611
- @lexer.start_identifier_translation
2633
+ @lexer.enable_identifier_translation
2612
2634
  result = IdentifierDeclarator.new(val[0])
2613
2635
  result.head_token = result.tail_token = val[0]
2614
2636
 
@@ -2616,8 +2638,8 @@ module_eval(<<'.,.,', 'parser.y', 1059)
2616
2638
  end
2617
2639
  .,.,
2618
2640
 
2619
- module_eval(<<'.,.,', 'parser.y', 1066)
2620
- def _reduce_162(val, _values, result)
2641
+ module_eval(<<'.,.,', 'parser.y', 1088)
2642
+ def _reduce_161(val, _values, result)
2621
2643
  checkpoint(val[0].location)
2622
2644
  result = GroupedDeclarator.new(val[1])
2623
2645
  result.head_token = val[0]
@@ -2627,8 +2649,8 @@ module_eval(<<'.,.,', 'parser.y', 1066)
2627
2649
  end
2628
2650
  .,.,
2629
2651
 
2630
- module_eval(<<'.,.,', 'parser.y', 1073)
2631
- def _reduce_163(val, _values, result)
2652
+ module_eval(<<'.,.,', 'parser.y', 1095)
2653
+ def _reduce_162(val, _values, result)
2632
2654
  checkpoint(val[0].location)
2633
2655
  val[3].full = true
2634
2656
  result = ArrayDeclarator.new(val[0], val[3])
@@ -2639,8 +2661,8 @@ module_eval(<<'.,.,', 'parser.y', 1073)
2639
2661
  end
2640
2662
  .,.,
2641
2663
 
2642
- module_eval(<<'.,.,', 'parser.y', 1081)
2643
- def _reduce_164(val, _values, result)
2664
+ module_eval(<<'.,.,', 'parser.y', 1103)
2665
+ def _reduce_163(val, _values, result)
2644
2666
  checkpoint(val[0].location)
2645
2667
  result = ArrayDeclarator.new(val[0], nil)
2646
2668
  result.head_token = val[0].head_token
@@ -2650,8 +2672,8 @@ module_eval(<<'.,.,', 'parser.y', 1081)
2650
2672
  end
2651
2673
  .,.,
2652
2674
 
2653
- module_eval(<<'.,.,', 'parser.y', 1088)
2654
- def _reduce_165(val, _values, result)
2675
+ module_eval(<<'.,.,', 'parser.y', 1110)
2676
+ def _reduce_164(val, _values, result)
2655
2677
  checkpoint(val[0].location)
2656
2678
  val[2].full = true
2657
2679
  result = ArrayDeclarator.new(val[0], val[2])
@@ -2662,8 +2684,8 @@ module_eval(<<'.,.,', 'parser.y', 1088)
2662
2684
  end
2663
2685
  .,.,
2664
2686
 
2665
- module_eval(<<'.,.,', 'parser.y', 1097)
2666
- def _reduce_166(val, _values, result)
2687
+ module_eval(<<'.,.,', 'parser.y', 1119)
2688
+ def _reduce_165(val, _values, result)
2667
2689
  checkpoint(val[0].location)
2668
2690
  val[4].full = true
2669
2691
  result = ArrayDeclarator.new(val[0], val[4])
@@ -2674,8 +2696,8 @@ module_eval(<<'.,.,', 'parser.y', 1097)
2674
2696
  end
2675
2697
  .,.,
2676
2698
 
2677
- module_eval(<<'.,.,', 'parser.y', 1106)
2678
- def _reduce_167(val, _values, result)
2699
+ module_eval(<<'.,.,', 'parser.y', 1128)
2700
+ def _reduce_166(val, _values, result)
2679
2701
  checkpoint(val[0].location)
2680
2702
  val[4].full = true
2681
2703
  result = ArrayDeclarator.new(val[0], val[4])
@@ -2686,8 +2708,8 @@ module_eval(<<'.,.,', 'parser.y', 1106)
2686
2708
  end
2687
2709
  .,.,
2688
2710
 
2689
- module_eval(<<'.,.,', 'parser.y', 1114)
2690
- def _reduce_168(val, _values, result)
2711
+ module_eval(<<'.,.,', 'parser.y', 1136)
2712
+ def _reduce_167(val, _values, result)
2691
2713
  checkpoint(val[0].location)
2692
2714
  result = ArrayDeclarator.new(val[0], nil)
2693
2715
  result.head_token = val[0].head_token
@@ -2697,8 +2719,8 @@ module_eval(<<'.,.,', 'parser.y', 1114)
2697
2719
  end
2698
2720
  .,.,
2699
2721
 
2700
- module_eval(<<'.,.,', 'parser.y', 1121)
2701
- def _reduce_169(val, _values, result)
2722
+ module_eval(<<'.,.,', 'parser.y', 1143)
2723
+ def _reduce_168(val, _values, result)
2702
2724
  checkpoint(val[0].location)
2703
2725
  result = ArrayDeclarator.new(val[0], nil)
2704
2726
  result.head_token = val[0].head_token
@@ -2708,8 +2730,8 @@ module_eval(<<'.,.,', 'parser.y', 1121)
2708
2730
  end
2709
2731
  .,.,
2710
2732
 
2711
- module_eval(<<'.,.,', 'parser.y', 1128)
2712
- def _reduce_170(val, _values, result)
2733
+ module_eval(<<'.,.,', 'parser.y', 1150)
2734
+ def _reduce_169(val, _values, result)
2713
2735
  checkpoint(val[0].location)
2714
2736
  result = ArrayDeclarator.new(val[0], nil)
2715
2737
  result.head_token = val[0].head_token
@@ -2719,18 +2741,25 @@ module_eval(<<'.,.,', 'parser.y', 1128)
2719
2741
  end
2720
2742
  .,.,
2721
2743
 
2722
- module_eval(<<'.,.,', 'parser.y', 1135)
2744
+ module_eval(<<'.,.,', 'parser.y', 1155)
2745
+ def _reduce_170(val, _values, result)
2746
+ @lexer.enable_identifier_translation
2747
+ result
2748
+ end
2749
+ .,.,
2750
+
2751
+ module_eval(<<'.,.,', 'parser.y', 1158)
2723
2752
  def _reduce_171(val, _values, result)
2724
2753
  checkpoint(val[0].location)
2725
- result = AnsiFunctionDeclarator.new(val[0], val[2])
2754
+ result = AnsiFunctionDeclarator.new(val[0], val[3])
2726
2755
  result.head_token = val[0].head_token
2727
- result.tail_token = val[3]
2756
+ result.tail_token = val[4]
2728
2757
 
2729
2758
  result
2730
2759
  end
2731
2760
  .,.,
2732
2761
 
2733
- module_eval(<<'.,.,', 'parser.y', 1142)
2762
+ module_eval(<<'.,.,', 'parser.y', 1165)
2734
2763
  def _reduce_172(val, _values, result)
2735
2764
  checkpoint(val[0].location)
2736
2765
  result = KandRFunctionDeclarator.new(val[0], val[2])
@@ -2741,7 +2770,7 @@ module_eval(<<'.,.,', 'parser.y', 1142)
2741
2770
  end
2742
2771
  .,.,
2743
2772
 
2744
- module_eval(<<'.,.,', 'parser.y', 1149)
2773
+ module_eval(<<'.,.,', 'parser.y', 1172)
2745
2774
  def _reduce_173(val, _values, result)
2746
2775
  checkpoint(val[0].location)
2747
2776
  result = AbbreviatedFunctionDeclarator.new(val[0])
@@ -2752,7 +2781,7 @@ module_eval(<<'.,.,', 'parser.y', 1149)
2752
2781
  end
2753
2782
  .,.,
2754
2783
 
2755
- module_eval(<<'.,.,', 'parser.y', 1159)
2784
+ module_eval(<<'.,.,', 'parser.y', 1182)
2756
2785
  def _reduce_174(val, _values, result)
2757
2786
  checkpoint(val[0].location)
2758
2787
  result = val
@@ -2761,7 +2790,7 @@ module_eval(<<'.,.,', 'parser.y', 1159)
2761
2790
  end
2762
2791
  .,.,
2763
2792
 
2764
- module_eval(<<'.,.,', 'parser.y', 1164)
2793
+ module_eval(<<'.,.,', 'parser.y', 1187)
2765
2794
  def _reduce_175(val, _values, result)
2766
2795
  checkpoint(val[0].location)
2767
2796
  result = val[1].unshift(val[0])
@@ -2770,7 +2799,7 @@ module_eval(<<'.,.,', 'parser.y', 1164)
2770
2799
  end
2771
2800
  .,.,
2772
2801
 
2773
- module_eval(<<'.,.,', 'parser.y', 1169)
2802
+ module_eval(<<'.,.,', 'parser.y', 1192)
2774
2803
  def _reduce_176(val, _values, result)
2775
2804
  checkpoint(val[0].location)
2776
2805
  result = val[1].unshift(val[0])
@@ -2779,7 +2808,7 @@ module_eval(<<'.,.,', 'parser.y', 1169)
2779
2808
  end
2780
2809
  .,.,
2781
2810
 
2782
- module_eval(<<'.,.,', 'parser.y', 1174)
2811
+ module_eval(<<'.,.,', 'parser.y', 1197)
2783
2812
  def _reduce_177(val, _values, result)
2784
2813
  checkpoint(val[0].location)
2785
2814
  result = val[1].unshift(val[0]).concat(val[2])
@@ -2788,7 +2817,7 @@ module_eval(<<'.,.,', 'parser.y', 1174)
2788
2817
  end
2789
2818
  .,.,
2790
2819
 
2791
- module_eval(<<'.,.,', 'parser.y', 1182)
2820
+ module_eval(<<'.,.,', 'parser.y', 1205)
2792
2821
  def _reduce_178(val, _values, result)
2793
2822
  checkpoint(val[0].location)
2794
2823
  result = val
@@ -2797,7 +2826,7 @@ module_eval(<<'.,.,', 'parser.y', 1182)
2797
2826
  end
2798
2827
  .,.,
2799
2828
 
2800
- module_eval(<<'.,.,', 'parser.y', 1187)
2829
+ module_eval(<<'.,.,', 'parser.y', 1210)
2801
2830
  def _reduce_179(val, _values, result)
2802
2831
  checkpoint(val[0].first.location)
2803
2832
  result = val[0].push(val[1])
@@ -2806,7 +2835,7 @@ module_eval(<<'.,.,', 'parser.y', 1187)
2806
2835
  end
2807
2836
  .,.,
2808
2837
 
2809
- module_eval(<<'.,.,', 'parser.y', 1195)
2838
+ module_eval(<<'.,.,', 'parser.y', 1218)
2810
2839
  def _reduce_180(val, _values, result)
2811
2840
  checkpoint(val[0].first.location)
2812
2841
  result = ParameterTypeList.new(val[0], false)
@@ -2817,7 +2846,7 @@ module_eval(<<'.,.,', 'parser.y', 1195)
2817
2846
  end
2818
2847
  .,.,
2819
2848
 
2820
- module_eval(<<'.,.,', 'parser.y', 1202)
2849
+ module_eval(<<'.,.,', 'parser.y', 1225)
2821
2850
  def _reduce_181(val, _values, result)
2822
2851
  checkpoint(val[0].first.location)
2823
2852
  result = ParameterTypeList.new(val[0], true)
@@ -2828,7 +2857,7 @@ module_eval(<<'.,.,', 'parser.y', 1202)
2828
2857
  end
2829
2858
  .,.,
2830
2859
 
2831
- module_eval(<<'.,.,', 'parser.y', 1212)
2860
+ module_eval(<<'.,.,', 'parser.y', 1235)
2832
2861
  def _reduce_182(val, _values, result)
2833
2862
  checkpoint(val[0].location)
2834
2863
  result = val
@@ -2837,7 +2866,7 @@ module_eval(<<'.,.,', 'parser.y', 1212)
2837
2866
  end
2838
2867
  .,.,
2839
2868
 
2840
- module_eval(<<'.,.,', 'parser.y', 1217)
2869
+ module_eval(<<'.,.,', 'parser.y', 1240)
2841
2870
  def _reduce_183(val, _values, result)
2842
2871
  checkpoint(val[0].first.location)
2843
2872
  result = val[0].push(val[2])
@@ -2846,9 +2875,10 @@ module_eval(<<'.,.,', 'parser.y', 1217)
2846
2875
  end
2847
2876
  .,.,
2848
2877
 
2849
- module_eval(<<'.,.,', 'parser.y', 1225)
2878
+ module_eval(<<'.,.,', 'parser.y', 1248)
2850
2879
  def _reduce_184(val, _values, result)
2851
2880
  checkpoint(val[0].location)
2881
+ @lexer.enable_identifier_translation
2852
2882
  result = ParameterDeclaration.new(val[0], val[1])
2853
2883
  result.head_token = val[0].head_token
2854
2884
  result.tail_token = val[1].tail_token
@@ -2857,9 +2887,10 @@ module_eval(<<'.,.,', 'parser.y', 1225)
2857
2887
  end
2858
2888
  .,.,
2859
2889
 
2860
- module_eval(<<'.,.,', 'parser.y', 1232)
2890
+ module_eval(<<'.,.,', 'parser.y', 1256)
2861
2891
  def _reduce_185(val, _values, result)
2862
2892
  checkpoint(val[0].location)
2893
+ @lexer.enable_identifier_translation
2863
2894
  result = ParameterDeclaration.new(val[0], val[1])
2864
2895
  result.head_token = val[0].head_token
2865
2896
  result.tail_token = val[1].tail_token
@@ -2868,10 +2899,10 @@ module_eval(<<'.,.,', 'parser.y', 1232)
2868
2899
  end
2869
2900
  .,.,
2870
2901
 
2871
- module_eval(<<'.,.,', 'parser.y', 1239)
2902
+ module_eval(<<'.,.,', 'parser.y', 1264)
2872
2903
  def _reduce_186(val, _values, result)
2873
2904
  checkpoint(val[0].location)
2874
- @lexer.start_identifier_translation
2905
+ @lexer.enable_identifier_translation
2875
2906
  result = ParameterDeclaration.new(val[0], nil)
2876
2907
  result.head_token = val[0].head_token
2877
2908
  result.tail_token = val[0].tail_token
@@ -2880,7 +2911,7 @@ module_eval(<<'.,.,', 'parser.y', 1239)
2880
2911
  end
2881
2912
  .,.,
2882
2913
 
2883
- module_eval(<<'.,.,', 'parser.y', 1250)
2914
+ module_eval(<<'.,.,', 'parser.y', 1275)
2884
2915
  def _reduce_187(val, _values, result)
2885
2916
  checkpoint(val[0].location)
2886
2917
  result = val
@@ -2889,7 +2920,7 @@ module_eval(<<'.,.,', 'parser.y', 1250)
2889
2920
  end
2890
2921
  .,.,
2891
2922
 
2892
- module_eval(<<'.,.,', 'parser.y', 1255)
2923
+ module_eval(<<'.,.,', 'parser.y', 1280)
2893
2924
  def _reduce_188(val, _values, result)
2894
2925
  checkpoint(val[0].first.location)
2895
2926
  result = val[0].push(val[2])
@@ -2898,10 +2929,10 @@ module_eval(<<'.,.,', 'parser.y', 1255)
2898
2929
  end
2899
2930
  .,.,
2900
2931
 
2901
- module_eval(<<'.,.,', 'parser.y', 1263)
2932
+ module_eval(<<'.,.,', 'parser.y', 1288)
2902
2933
  def _reduce_189(val, _values, result)
2903
2934
  checkpoint(val[0].location)
2904
- @lexer.start_identifier_translation
2935
+ @lexer.enable_identifier_translation
2905
2936
  result = TypeName.new(val[0], nil, @sym_tbl)
2906
2937
  result.head_token = val[0].head_token
2907
2938
  result.tail_token = val[0].tail_token
@@ -2910,9 +2941,10 @@ module_eval(<<'.,.,', 'parser.y', 1263)
2910
2941
  end
2911
2942
  .,.,
2912
2943
 
2913
- module_eval(<<'.,.,', 'parser.y', 1271)
2944
+ module_eval(<<'.,.,', 'parser.y', 1296)
2914
2945
  def _reduce_190(val, _values, result)
2915
2946
  checkpoint(val[0].location)
2947
+ @lexer.enable_identifier_translation
2916
2948
  result = TypeName.new(val[0], val[1], @sym_tbl)
2917
2949
  result.head_token = val[0].head_token
2918
2950
  result.tail_token = val[1].tail_token
@@ -2921,10 +2953,10 @@ module_eval(<<'.,.,', 'parser.y', 1271)
2921
2953
  end
2922
2954
  .,.,
2923
2955
 
2924
- module_eval(<<'.,.,', 'parser.y', 1281)
2956
+ module_eval(<<'.,.,', 'parser.y', 1307)
2925
2957
  def _reduce_191(val, _values, result)
2926
2958
  checkpoint(val[0].first.location)
2927
- @lexer.start_identifier_translation
2959
+ @lexer.enable_identifier_translation
2928
2960
  result = PointerAbstractDeclarator.new(nil, val[0])
2929
2961
  result.head_token = val[0].first
2930
2962
  result.tail_token = val[0].last
@@ -2934,9 +2966,10 @@ module_eval(<<'.,.,', 'parser.y', 1281)
2934
2966
  end
2935
2967
  .,.,
2936
2968
 
2937
- module_eval(<<'.,.,', 'parser.y', 1290)
2969
+ module_eval(<<'.,.,', 'parser.y', 1316)
2938
2970
  def _reduce_192(val, _values, result)
2939
2971
  checkpoint(val[0].first.location)
2972
+ @lexer.enable_identifier_translation
2940
2973
  result = PointerAbstractDeclarator.new(val[1], val[0])
2941
2974
  result.head_token = val[0].first
2942
2975
  result.tail_token = val[1].tail_token
@@ -2946,7 +2979,7 @@ module_eval(<<'.,.,', 'parser.y', 1290)
2946
2979
  end
2947
2980
  .,.,
2948
2981
 
2949
- module_eval(<<'.,.,', 'parser.y', 1298)
2982
+ module_eval(<<'.,.,', 'parser.y', 1325)
2950
2983
  def _reduce_193(val, _values, result)
2951
2984
  checkpoint(val[0].location)
2952
2985
  result = val[0]
@@ -2956,10 +2989,9 @@ module_eval(<<'.,.,', 'parser.y', 1298)
2956
2989
  end
2957
2990
  .,.,
2958
2991
 
2959
- module_eval(<<'.,.,', 'parser.y', 1307)
2992
+ module_eval(<<'.,.,', 'parser.y', 1334)
2960
2993
  def _reduce_194(val, _values, result)
2961
2994
  checkpoint(val[0].location)
2962
- @lexer.start_identifier_translation
2963
2995
  result = GroupedAbstractDeclarator.new(val[1])
2964
2996
  result.head_token = val[0]
2965
2997
  result.tail_token = val[2]
@@ -2968,10 +3000,9 @@ module_eval(<<'.,.,', 'parser.y', 1307)
2968
3000
  end
2969
3001
  .,.,
2970
3002
 
2971
- module_eval(<<'.,.,', 'parser.y', 1315)
3003
+ module_eval(<<'.,.,', 'parser.y', 1341)
2972
3004
  def _reduce_195(val, _values, result)
2973
3005
  checkpoint(val[0].location)
2974
- @lexer.start_identifier_translation
2975
3006
  result = ArrayAbstractDeclarator.new(nil, nil)
2976
3007
  result.head_token = val[0]
2977
3008
  result.tail_token = val[1]
@@ -2980,10 +3011,9 @@ module_eval(<<'.,.,', 'parser.y', 1315)
2980
3011
  end
2981
3012
  .,.,
2982
3013
 
2983
- module_eval(<<'.,.,', 'parser.y', 1323)
3014
+ module_eval(<<'.,.,', 'parser.y', 1348)
2984
3015
  def _reduce_196(val, _values, result)
2985
3016
  checkpoint(val[0].location)
2986
- @lexer.start_identifier_translation
2987
3017
  val[1].full = true
2988
3018
  result = ArrayAbstractDeclarator.new(nil, val[1])
2989
3019
  result.head_token = val[0]
@@ -2993,7 +3023,7 @@ module_eval(<<'.,.,', 'parser.y', 1323)
2993
3023
  end
2994
3024
  .,.,
2995
3025
 
2996
- module_eval(<<'.,.,', 'parser.y', 1332)
3026
+ module_eval(<<'.,.,', 'parser.y', 1356)
2997
3027
  def _reduce_197(val, _values, result)
2998
3028
  checkpoint(val[0].location)
2999
3029
  result = ArrayAbstractDeclarator.new(val[0], nil)
@@ -3004,7 +3034,7 @@ module_eval(<<'.,.,', 'parser.y', 1332)
3004
3034
  end
3005
3035
  .,.,
3006
3036
 
3007
- module_eval(<<'.,.,', 'parser.y', 1339)
3037
+ module_eval(<<'.,.,', 'parser.y', 1363)
3008
3038
  def _reduce_198(val, _values, result)
3009
3039
  checkpoint(val[0].location)
3010
3040
  val[2].full = true
@@ -3016,10 +3046,9 @@ module_eval(<<'.,.,', 'parser.y', 1339)
3016
3046
  end
3017
3047
  .,.,
3018
3048
 
3019
- module_eval(<<'.,.,', 'parser.y', 1347)
3049
+ module_eval(<<'.,.,', 'parser.y', 1371)
3020
3050
  def _reduce_199(val, _values, result)
3021
3051
  checkpoint(val[0].location)
3022
- @lexer.start_identifier_translation
3023
3052
  result = ArrayAbstractDeclarator.new(nil, nil)
3024
3053
  result.head_token = val[0]
3025
3054
  result.tail_token = val[2]
@@ -3028,7 +3057,7 @@ module_eval(<<'.,.,', 'parser.y', 1347)
3028
3057
  end
3029
3058
  .,.,
3030
3059
 
3031
- module_eval(<<'.,.,', 'parser.y', 1355)
3060
+ module_eval(<<'.,.,', 'parser.y', 1378)
3032
3061
  def _reduce_200(val, _values, result)
3033
3062
  checkpoint(val[0].location)
3034
3063
  result = ArrayAbstractDeclarator.new(val[0], nil)
@@ -3039,10 +3068,9 @@ module_eval(<<'.,.,', 'parser.y', 1355)
3039
3068
  end
3040
3069
  .,.,
3041
3070
 
3042
- module_eval(<<'.,.,', 'parser.y', 1362)
3071
+ module_eval(<<'.,.,', 'parser.y', 1385)
3043
3072
  def _reduce_201(val, _values, result)
3044
3073
  checkpoint(val[0].location)
3045
- @lexer.start_identifier_translation
3046
3074
  result = FunctionAbstractDeclarator.new(nil, nil)
3047
3075
  result.head_token = val[0]
3048
3076
  result.tail_token = val[1]
@@ -3051,14 +3079,14 @@ module_eval(<<'.,.,', 'parser.y', 1362)
3051
3079
  end
3052
3080
  .,.,
3053
3081
 
3054
- module_eval(<<'.,.,', 'parser.y', 1368)
3082
+ module_eval(<<'.,.,', 'parser.y', 1390)
3055
3083
  def _reduce_202(val, _values, result)
3056
- @lexer.start_identifier_translation
3084
+ @lexer.enable_identifier_translation
3057
3085
  result
3058
3086
  end
3059
3087
  .,.,
3060
3088
 
3061
- module_eval(<<'.,.,', 'parser.y', 1370)
3089
+ module_eval(<<'.,.,', 'parser.y', 1392)
3062
3090
  def _reduce_203(val, _values, result)
3063
3091
  checkpoint(val[0].location)
3064
3092
  result = FunctionAbstractDeclarator.new(nil, val[2])
@@ -3069,10 +3097,9 @@ module_eval(<<'.,.,', 'parser.y', 1370)
3069
3097
  end
3070
3098
  .,.,
3071
3099
 
3072
- module_eval(<<'.,.,', 'parser.y', 1377)
3100
+ module_eval(<<'.,.,', 'parser.y', 1399)
3073
3101
  def _reduce_204(val, _values, result)
3074
3102
  checkpoint(val[0].location)
3075
- @lexer.start_identifier_translation
3076
3103
  result = FunctionAbstractDeclarator.new(val[0], nil)
3077
3104
  result.head_token = val[0].head_token
3078
3105
  result.tail_token = val[2]
@@ -3081,19 +3108,26 @@ module_eval(<<'.,.,', 'parser.y', 1377)
3081
3108
  end
3082
3109
  .,.,
3083
3110
 
3084
- module_eval(<<'.,.,', 'parser.y', 1385)
3111
+ module_eval(<<'.,.,', 'parser.y', 1404)
3085
3112
  def _reduce_205(val, _values, result)
3113
+ @lexer.enable_identifier_translation
3114
+ result
3115
+ end
3116
+ .,.,
3117
+
3118
+ module_eval(<<'.,.,', 'parser.y', 1407)
3119
+ def _reduce_206(val, _values, result)
3086
3120
  checkpoint(val[0].location)
3087
- result = FunctionAbstractDeclarator.new(val[0], val[2])
3121
+ result = FunctionAbstractDeclarator.new(val[0], val[3])
3088
3122
  result.head_token = val[0].head_token
3089
- result.tail_token = val[3]
3123
+ result.tail_token = val[4]
3090
3124
 
3091
3125
  result
3092
3126
  end
3093
3127
  .,.,
3094
3128
 
3095
- module_eval(<<'.,.,', 'parser.y', 1395)
3096
- def _reduce_206(val, _values, result)
3129
+ module_eval(<<'.,.,', 'parser.y', 1417)
3130
+ def _reduce_207(val, _values, result)
3097
3131
  checkpoint(val[0].location)
3098
3132
  val[0].full = true
3099
3133
  result = Initializer.new(val[0], nil)
@@ -3104,8 +3138,8 @@ module_eval(<<'.,.,', 'parser.y', 1395)
3104
3138
  end
3105
3139
  .,.,
3106
3140
 
3107
- module_eval(<<'.,.,', 'parser.y', 1403)
3108
- def _reduce_207(val, _values, result)
3141
+ module_eval(<<'.,.,', 'parser.y', 1425)
3142
+ def _reduce_208(val, _values, result)
3109
3143
  checkpoint(val[0].location)
3110
3144
  result = Initializer.new(nil, nil)
3111
3145
  result.head_token = val[0]
@@ -3115,8 +3149,8 @@ module_eval(<<'.,.,', 'parser.y', 1403)
3115
3149
  end
3116
3150
  .,.,
3117
3151
 
3118
- module_eval(<<'.,.,', 'parser.y', 1410)
3119
- def _reduce_208(val, _values, result)
3152
+ module_eval(<<'.,.,', 'parser.y', 1432)
3153
+ def _reduce_209(val, _values, result)
3120
3154
  checkpoint(val[0].location)
3121
3155
  result = Initializer.new(nil, val[1])
3122
3156
  result.head_token = val[0]
@@ -3126,8 +3160,8 @@ module_eval(<<'.,.,', 'parser.y', 1410)
3126
3160
  end
3127
3161
  .,.,
3128
3162
 
3129
- module_eval(<<'.,.,', 'parser.y', 1417)
3130
- def _reduce_209(val, _values, result)
3163
+ module_eval(<<'.,.,', 'parser.y', 1439)
3164
+ def _reduce_210(val, _values, result)
3131
3165
  checkpoint(val[0].location)
3132
3166
  result = Initializer.new(nil, val[1])
3133
3167
  result.head_token = val[0]
@@ -3137,8 +3171,8 @@ module_eval(<<'.,.,', 'parser.y', 1417)
3137
3171
  end
3138
3172
  .,.,
3139
3173
 
3140
- module_eval(<<'.,.,', 'parser.y', 1427)
3141
- def _reduce_210(val, _values, result)
3174
+ module_eval(<<'.,.,', 'parser.y', 1449)
3175
+ def _reduce_211(val, _values, result)
3142
3176
  checkpoint(val[0].location)
3143
3177
  result = val
3144
3178
 
@@ -3146,8 +3180,8 @@ module_eval(<<'.,.,', 'parser.y', 1427)
3146
3180
  end
3147
3181
  .,.,
3148
3182
 
3149
- module_eval(<<'.,.,', 'parser.y', 1432)
3150
- def _reduce_211(val, _values, result)
3183
+ module_eval(<<'.,.,', 'parser.y', 1454)
3184
+ def _reduce_212(val, _values, result)
3151
3185
  checkpoint(val[1].location)
3152
3186
  result = [val[1]]
3153
3187
 
@@ -3155,8 +3189,8 @@ module_eval(<<'.,.,', 'parser.y', 1432)
3155
3189
  end
3156
3190
  .,.,
3157
3191
 
3158
- module_eval(<<'.,.,', 'parser.y', 1437)
3159
- def _reduce_212(val, _values, result)
3192
+ module_eval(<<'.,.,', 'parser.y', 1459)
3193
+ def _reduce_213(val, _values, result)
3160
3194
  checkpoint(val[0].first.location)
3161
3195
  result = val[0].push(val[2])
3162
3196
 
@@ -3164,8 +3198,8 @@ module_eval(<<'.,.,', 'parser.y', 1437)
3164
3198
  end
3165
3199
  .,.,
3166
3200
 
3167
- module_eval(<<'.,.,', 'parser.y', 1442)
3168
- def _reduce_213(val, _values, result)
3201
+ module_eval(<<'.,.,', 'parser.y', 1464)
3202
+ def _reduce_214(val, _values, result)
3169
3203
  checkpoint(val[0].first.location)
3170
3204
  result = val[0].push(val[3])
3171
3205
 
@@ -3173,8 +3207,6 @@ module_eval(<<'.,.,', 'parser.y', 1442)
3173
3207
  end
3174
3208
  .,.,
3175
3209
 
3176
- # reduce 214 omitted
3177
-
3178
3210
  # reduce 215 omitted
3179
3211
 
3180
3212
  # reduce 216 omitted
@@ -3195,8 +3227,10 @@ module_eval(<<'.,.,', 'parser.y', 1442)
3195
3227
 
3196
3228
  # reduce 224 omitted
3197
3229
 
3198
- module_eval(<<'.,.,', 'parser.y', 1476)
3199
- def _reduce_225(val, _values, result)
3230
+ # reduce 225 omitted
3231
+
3232
+ module_eval(<<'.,.,', 'parser.y', 1498)
3233
+ def _reduce_226(val, _values, result)
3200
3234
  checkpoint(val[0].location)
3201
3235
  result = GenericLabeledStatement.new(val[0], val[2])
3202
3236
  result.head_token = val[0]
@@ -3206,8 +3240,8 @@ module_eval(<<'.,.,', 'parser.y', 1476)
3206
3240
  end
3207
3241
  .,.,
3208
3242
 
3209
- module_eval(<<'.,.,', 'parser.y', 1483)
3210
- def _reduce_226(val, _values, result)
3243
+ module_eval(<<'.,.,', 'parser.y', 1505)
3244
+ def _reduce_227(val, _values, result)
3211
3245
  checkpoint(val[0].location)
3212
3246
  val[1].full = true
3213
3247
  result = CaseLabeledStatement.new(val[1], val[3])
@@ -3218,8 +3252,8 @@ module_eval(<<'.,.,', 'parser.y', 1483)
3218
3252
  end
3219
3253
  .,.,
3220
3254
 
3221
- module_eval(<<'.,.,', 'parser.y', 1491)
3222
- def _reduce_227(val, _values, result)
3255
+ module_eval(<<'.,.,', 'parser.y', 1513)
3256
+ def _reduce_228(val, _values, result)
3223
3257
  checkpoint(val[0].location)
3224
3258
  result = DefaultLabeledStatement.new(val[2])
3225
3259
  result.head_token = val[0]
@@ -3229,8 +3263,18 @@ module_eval(<<'.,.,', 'parser.y', 1491)
3229
3263
  end
3230
3264
  .,.,
3231
3265
 
3232
- module_eval(<<'.,.,', 'parser.y', 1501)
3233
- def _reduce_228(val, _values, result)
3266
+ # reduce 229 omitted
3267
+
3268
+ module_eval(<<'.,.,', 'parser.y', 1524)
3269
+ def _reduce_230(val, _values, result)
3270
+ result = val[0].class.new(:IDENTIFIER, val[0].value, val[0].location)
3271
+
3272
+ result
3273
+ end
3274
+ .,.,
3275
+
3276
+ module_eval(<<'.,.,', 'parser.y', 1531)
3277
+ def _reduce_231(val, _values, result)
3234
3278
  checkpoint(val[0].location)
3235
3279
  result = CompoundStatement.new([])
3236
3280
  result.head_token = val[0]
@@ -3240,22 +3284,22 @@ module_eval(<<'.,.,', 'parser.y', 1501)
3240
3284
  end
3241
3285
  .,.,
3242
3286
 
3243
- module_eval(<<'.,.,', 'parser.y', 1506)
3244
- def _reduce_229(val, _values, result)
3287
+ module_eval(<<'.,.,', 'parser.y', 1536)
3288
+ def _reduce_232(val, _values, result)
3245
3289
  @lexer.enter_scope
3246
3290
  result
3247
3291
  end
3248
3292
  .,.,
3249
3293
 
3250
- module_eval(<<'.,.,', 'parser.y', 1506)
3251
- def _reduce_230(val, _values, result)
3294
+ module_eval(<<'.,.,', 'parser.y', 1536)
3295
+ def _reduce_233(val, _values, result)
3252
3296
  @lexer.leave_scope
3253
3297
  result
3254
3298
  end
3255
3299
  .,.,
3256
3300
 
3257
- module_eval(<<'.,.,', 'parser.y', 1508)
3258
- def _reduce_231(val, _values, result)
3301
+ module_eval(<<'.,.,', 'parser.y', 1538)
3302
+ def _reduce_234(val, _values, result)
3259
3303
  checkpoint(val[0].location)
3260
3304
  result = CompoundStatement.new(val[2])
3261
3305
  result.head_token = val[0]
@@ -3265,8 +3309,8 @@ module_eval(<<'.,.,', 'parser.y', 1508)
3265
3309
  end
3266
3310
  .,.,
3267
3311
 
3268
- module_eval(<<'.,.,', 'parser.y', 1518)
3269
- def _reduce_232(val, _values, result)
3312
+ module_eval(<<'.,.,', 'parser.y', 1548)
3313
+ def _reduce_235(val, _values, result)
3270
3314
  checkpoint(val[0].location)
3271
3315
  result = val
3272
3316
 
@@ -3274,8 +3318,8 @@ module_eval(<<'.,.,', 'parser.y', 1518)
3274
3318
  end
3275
3319
  .,.,
3276
3320
 
3277
- module_eval(<<'.,.,', 'parser.y', 1523)
3278
- def _reduce_233(val, _values, result)
3321
+ module_eval(<<'.,.,', 'parser.y', 1553)
3322
+ def _reduce_236(val, _values, result)
3279
3323
  checkpoint(val[0].first.location)
3280
3324
  result = val[0].push(val[1])
3281
3325
 
@@ -3283,14 +3327,14 @@ module_eval(<<'.,.,', 'parser.y', 1523)
3283
3327
  end
3284
3328
  .,.,
3285
3329
 
3286
- # reduce 234 omitted
3330
+ # reduce 237 omitted
3287
3331
 
3288
- # reduce 235 omitted
3332
+ # reduce 238 omitted
3289
3333
 
3290
- # reduce 236 omitted
3334
+ # reduce 239 omitted
3291
3335
 
3292
- module_eval(<<'.,.,', 'parser.y', 1537)
3293
- def _reduce_237(val, _values, result)
3336
+ module_eval(<<'.,.,', 'parser.y', 1567)
3337
+ def _reduce_240(val, _values, result)
3294
3338
  checkpoint(val[0].location)
3295
3339
  result = ExpressionStatement.new(nil)
3296
3340
  result.head_token = result.tail_token = val[0]
@@ -3299,8 +3343,8 @@ module_eval(<<'.,.,', 'parser.y', 1537)
3299
3343
  end
3300
3344
  .,.,
3301
3345
 
3302
- module_eval(<<'.,.,', 'parser.y', 1543)
3303
- def _reduce_238(val, _values, result)
3346
+ module_eval(<<'.,.,', 'parser.y', 1573)
3347
+ def _reduce_241(val, _values, result)
3304
3348
  checkpoint(val[0].location)
3305
3349
  val[0].full = true
3306
3350
  result = ExpressionStatement.new(val[0])
@@ -3311,8 +3355,8 @@ module_eval(<<'.,.,', 'parser.y', 1543)
3311
3355
  end
3312
3356
  .,.,
3313
3357
 
3314
- module_eval(<<'.,.,', 'parser.y', 1554)
3315
- def _reduce_239(val, _values, result)
3358
+ module_eval(<<'.,.,', 'parser.y', 1584)
3359
+ def _reduce_242(val, _values, result)
3316
3360
  checkpoint(val[0].location)
3317
3361
  val[2].full = true
3318
3362
  result = IfStatement.new(val[2], val[4], val[3])
@@ -3323,8 +3367,8 @@ module_eval(<<'.,.,', 'parser.y', 1554)
3323
3367
  end
3324
3368
  .,.,
3325
3369
 
3326
- module_eval(<<'.,.,', 'parser.y', 1562)
3327
- def _reduce_240(val, _values, result)
3370
+ module_eval(<<'.,.,', 'parser.y', 1592)
3371
+ def _reduce_243(val, _values, result)
3328
3372
  checkpoint(val[0].location)
3329
3373
  val[2].full = true
3330
3374
  result = IfElseStatement.new(val[2], val[4], val[6], val[3], val[5])
@@ -3335,8 +3379,8 @@ module_eval(<<'.,.,', 'parser.y', 1562)
3335
3379
  end
3336
3380
  .,.,
3337
3381
 
3338
- module_eval(<<'.,.,', 'parser.y', 1570)
3339
- def _reduce_241(val, _values, result)
3382
+ module_eval(<<'.,.,', 'parser.y', 1600)
3383
+ def _reduce_244(val, _values, result)
3340
3384
  checkpoint(val[0].location)
3341
3385
  val[2].full = true
3342
3386
  result = SwitchStatement.new(val[2], val[4])
@@ -3347,8 +3391,8 @@ module_eval(<<'.,.,', 'parser.y', 1570)
3347
3391
  end
3348
3392
  .,.,
3349
3393
 
3350
- module_eval(<<'.,.,', 'parser.y', 1581)
3351
- def _reduce_242(val, _values, result)
3394
+ module_eval(<<'.,.,', 'parser.y', 1611)
3395
+ def _reduce_245(val, _values, result)
3352
3396
  checkpoint(val[0].location)
3353
3397
  val[2].full = true
3354
3398
  result = WhileStatement.new(val[2], val[4], val[3])
@@ -3359,8 +3403,8 @@ module_eval(<<'.,.,', 'parser.y', 1581)
3359
3403
  end
3360
3404
  .,.,
3361
3405
 
3362
- module_eval(<<'.,.,', 'parser.y', 1589)
3363
- def _reduce_243(val, _values, result)
3406
+ module_eval(<<'.,.,', 'parser.y', 1619)
3407
+ def _reduce_246(val, _values, result)
3364
3408
  checkpoint(val[0].location)
3365
3409
  val[4].full = true
3366
3410
  result = DoStatement.new(val[1], val[4], val[0], val[2])
@@ -3371,8 +3415,8 @@ module_eval(<<'.,.,', 'parser.y', 1589)
3371
3415
  end
3372
3416
  .,.,
3373
3417
 
3374
- module_eval(<<'.,.,', 'parser.y', 1597)
3375
- def _reduce_244(val, _values, result)
3418
+ module_eval(<<'.,.,', 'parser.y', 1627)
3419
+ def _reduce_247(val, _values, result)
3376
3420
  checkpoint(val[0].location)
3377
3421
  result = ForStatement.new(val[2], val[3], nil, val[5], val[4])
3378
3422
  result.head_token = val[0]
@@ -3382,8 +3426,8 @@ module_eval(<<'.,.,', 'parser.y', 1597)
3382
3426
  end
3383
3427
  .,.,
3384
3428
 
3385
- module_eval(<<'.,.,', 'parser.y', 1605)
3386
- def _reduce_245(val, _values, result)
3429
+ module_eval(<<'.,.,', 'parser.y', 1635)
3430
+ def _reduce_248(val, _values, result)
3387
3431
  checkpoint(val[0].location)
3388
3432
  val[4].full = true
3389
3433
  result = ForStatement.new(val[2], val[3], val[4], val[6], val[5])
@@ -3394,8 +3438,8 @@ module_eval(<<'.,.,', 'parser.y', 1605)
3394
3438
  end
3395
3439
  .,.,
3396
3440
 
3397
- module_eval(<<'.,.,', 'parser.y', 1613)
3398
- def _reduce_246(val, _values, result)
3441
+ module_eval(<<'.,.,', 'parser.y', 1643)
3442
+ def _reduce_249(val, _values, result)
3399
3443
  checkpoint(val[0].location)
3400
3444
  result = C99ForStatement.new(val[2], val[3], nil, val[5], val[4])
3401
3445
  result.head_token = val[0]
@@ -3405,8 +3449,8 @@ module_eval(<<'.,.,', 'parser.y', 1613)
3405
3449
  end
3406
3450
  .,.,
3407
3451
 
3408
- module_eval(<<'.,.,', 'parser.y', 1620)
3409
- def _reduce_247(val, _values, result)
3452
+ module_eval(<<'.,.,', 'parser.y', 1650)
3453
+ def _reduce_250(val, _values, result)
3410
3454
  checkpoint(val[0].location)
3411
3455
  val[4].full = true
3412
3456
  result = C99ForStatement.new(val[2], val[3], val[4], val[6], val[5])
@@ -3417,8 +3461,8 @@ module_eval(<<'.,.,', 'parser.y', 1620)
3417
3461
  end
3418
3462
  .,.,
3419
3463
 
3420
- module_eval(<<'.,.,', 'parser.y', 1631)
3421
- def _reduce_248(val, _values, result)
3464
+ module_eval(<<'.,.,', 'parser.y', 1661)
3465
+ def _reduce_251(val, _values, result)
3422
3466
  checkpoint(val[0].location)
3423
3467
  result = GotoStatement.new(val[1])
3424
3468
  result.head_token = val[0]
@@ -3428,8 +3472,8 @@ module_eval(<<'.,.,', 'parser.y', 1631)
3428
3472
  end
3429
3473
  .,.,
3430
3474
 
3431
- module_eval(<<'.,.,', 'parser.y', 1638)
3432
- def _reduce_249(val, _values, result)
3475
+ module_eval(<<'.,.,', 'parser.y', 1668)
3476
+ def _reduce_252(val, _values, result)
3433
3477
  checkpoint(val[0].location)
3434
3478
  E(:E0015, val[1].location, val[1].value)
3435
3479
  result = ErrorStatement.new(val[1])
@@ -3440,8 +3484,8 @@ module_eval(<<'.,.,', 'parser.y', 1638)
3440
3484
  end
3441
3485
  .,.,
3442
3486
 
3443
- module_eval(<<'.,.,', 'parser.y', 1646)
3444
- def _reduce_250(val, _values, result)
3487
+ module_eval(<<'.,.,', 'parser.y', 1676)
3488
+ def _reduce_253(val, _values, result)
3445
3489
  checkpoint(val[0].location)
3446
3490
  result = ContinueStatement.new
3447
3491
  result.head_token = val[0]
@@ -3451,8 +3495,8 @@ module_eval(<<'.,.,', 'parser.y', 1646)
3451
3495
  end
3452
3496
  .,.,
3453
3497
 
3454
- module_eval(<<'.,.,', 'parser.y', 1653)
3455
- def _reduce_251(val, _values, result)
3498
+ module_eval(<<'.,.,', 'parser.y', 1683)
3499
+ def _reduce_254(val, _values, result)
3456
3500
  checkpoint(val[0].location)
3457
3501
  result = BreakStatement.new
3458
3502
  result.head_token = val[0]
@@ -3462,8 +3506,8 @@ module_eval(<<'.,.,', 'parser.y', 1653)
3462
3506
  end
3463
3507
  .,.,
3464
3508
 
3465
- module_eval(<<'.,.,', 'parser.y', 1660)
3466
- def _reduce_252(val, _values, result)
3509
+ module_eval(<<'.,.,', 'parser.y', 1690)
3510
+ def _reduce_255(val, _values, result)
3467
3511
  checkpoint(val[0].location)
3468
3512
  result = ReturnStatement.new(nil)
3469
3513
  result.head_token = val[0]
@@ -3473,8 +3517,8 @@ module_eval(<<'.,.,', 'parser.y', 1660)
3473
3517
  end
3474
3518
  .,.,
3475
3519
 
3476
- module_eval(<<'.,.,', 'parser.y', 1667)
3477
- def _reduce_253(val, _values, result)
3520
+ module_eval(<<'.,.,', 'parser.y', 1697)
3521
+ def _reduce_256(val, _values, result)
3478
3522
  checkpoint(val[0].location)
3479
3523
  val[1].full = true
3480
3524
  result = ReturnStatement.new(val[1])
@@ -3485,16 +3529,16 @@ module_eval(<<'.,.,', 'parser.y', 1667)
3485
3529
  end
3486
3530
  .,.,
3487
3531
 
3488
- module_eval(<<'.,.,', 'parser.y', 1681)
3489
- def _reduce_254(val, _values, result)
3532
+ module_eval(<<'.,.,', 'parser.y', 1711)
3533
+ def _reduce_257(val, _values, result)
3490
3534
  result = TranslationUnit.new
3491
3535
 
3492
3536
  result
3493
3537
  end
3494
3538
  .,.,
3495
3539
 
3496
- module_eval(<<'.,.,', 'parser.y', 1685)
3497
- def _reduce_255(val, _values, result)
3540
+ module_eval(<<'.,.,', 'parser.y', 1715)
3541
+ def _reduce_258(val, _values, result)
3498
3542
  checkpoint(val[0].location)
3499
3543
  result = val[0]
3500
3544
  result.push(val[1])
@@ -3503,12 +3547,12 @@ module_eval(<<'.,.,', 'parser.y', 1685)
3503
3547
  end
3504
3548
  .,.,
3505
3549
 
3506
- # reduce 256 omitted
3550
+ # reduce 259 omitted
3507
3551
 
3508
- # reduce 257 omitted
3552
+ # reduce 260 omitted
3509
3553
 
3510
- module_eval(<<'.,.,', 'parser.y', 1699)
3511
- def _reduce_258(val, _values, result)
3554
+ module_eval(<<'.,.,', 'parser.y', 1729)
3555
+ def _reduce_261(val, _values, result)
3512
3556
  checkpoint(val[0].location)
3513
3557
  result = KandRFunctionDefinition.new(val[0], val[1], val[2], val[3],
3514
3558
  @sym_tbl)
@@ -3519,8 +3563,8 @@ module_eval(<<'.,.,', 'parser.y', 1699)
3519
3563
  end
3520
3564
  .,.,
3521
3565
 
3522
- module_eval(<<'.,.,', 'parser.y', 1707)
3523
- def _reduce_259(val, _values, result)
3566
+ module_eval(<<'.,.,', 'parser.y', 1737)
3567
+ def _reduce_262(val, _values, result)
3524
3568
  checkpoint(val[0].location)
3525
3569
  case val[1]
3526
3570
  when AnsiFunctionDeclarator
@@ -3538,8 +3582,8 @@ module_eval(<<'.,.,', 'parser.y', 1707)
3538
3582
  end
3539
3583
  .,.,
3540
3584
 
3541
- module_eval(<<'.,.,', 'parser.y', 1722)
3542
- def _reduce_260(val, _values, result)
3585
+ module_eval(<<'.,.,', 'parser.y', 1752)
3586
+ def _reduce_263(val, _values, result)
3543
3587
  checkpoint(val[0].location)
3544
3588
  result = KandRFunctionDefinition.new(nil, val[0], val[1], val[2],
3545
3589
  @sym_tbl)
@@ -3550,8 +3594,8 @@ module_eval(<<'.,.,', 'parser.y', 1722)
3550
3594
  end
3551
3595
  .,.,
3552
3596
 
3553
- module_eval(<<'.,.,', 'parser.y', 1730)
3554
- def _reduce_261(val, _values, result)
3597
+ module_eval(<<'.,.,', 'parser.y', 1760)
3598
+ def _reduce_264(val, _values, result)
3555
3599
  checkpoint(val[0].location)
3556
3600
  case val[0]
3557
3601
  when AnsiFunctionDeclarator
@@ -3569,8 +3613,8 @@ module_eval(<<'.,.,', 'parser.y', 1730)
3569
3613
  end
3570
3614
  .,.,
3571
3615
 
3572
- module_eval(<<'.,.,', 'parser.y', 1748)
3573
- def _reduce_262(val, _values, result)
3616
+ module_eval(<<'.,.,', 'parser.y', 1778)
3617
+ def _reduce_265(val, _values, result)
3574
3618
  checkpoint(val[0].location)
3575
3619
  result = KandRFunctionDefinition.new(val[0], val[1], val[2], val[3],
3576
3620
  @sym_tbl)
@@ -3581,8 +3625,8 @@ module_eval(<<'.,.,', 'parser.y', 1748)
3581
3625
  end
3582
3626
  .,.,
3583
3627
 
3584
- module_eval(<<'.,.,', 'parser.y', 1756)
3585
- def _reduce_263(val, _values, result)
3628
+ module_eval(<<'.,.,', 'parser.y', 1786)
3629
+ def _reduce_266(val, _values, result)
3586
3630
  checkpoint(val[0].location)
3587
3631
  case val[1]
3588
3632
  when AnsiFunctionDeclarator
@@ -3600,8 +3644,8 @@ module_eval(<<'.,.,', 'parser.y', 1756)
3600
3644
  end
3601
3645
  .,.,
3602
3646
 
3603
- module_eval(<<'.,.,', 'parser.y', 1774)
3604
- def _reduce_264(val, _values, result)
3647
+ module_eval(<<'.,.,', 'parser.y', 1804)
3648
+ def _reduce_267(val, _values, result)
3605
3649
  checkpoint(val[0].location)
3606
3650
  result = val
3607
3651
 
@@ -3609,8 +3653,8 @@ module_eval(<<'.,.,', 'parser.y', 1774)
3609
3653
  end
3610
3654
  .,.,
3611
3655
 
3612
- module_eval(<<'.,.,', 'parser.y', 1779)
3613
- def _reduce_265(val, _values, result)
3656
+ module_eval(<<'.,.,', 'parser.y', 1809)
3657
+ def _reduce_268(val, _values, result)
3614
3658
  checkpoint(val[0].first.location)
3615
3659
  result = val[0].push(val[1])
3616
3660