- Timestamp:
- Apr 5, 2019, 9:26:53 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
asp3_tinet_ecnl_rx/trunk/asp3_dcre/tecsgen/tecslib/core/C_parser.tab.rb
r337 r374 1 1 # 2 2 # DO NOT MODIFY!!!! 3 # This file is automatically generated by Racc 1.4. 143 # This file is automatically generated by Racc 1.4.9 4 4 # from Racc grammer file "". 5 5 # … … 8 8 class C_parser < Racc::Parser 9 9 10 module_eval(<<'...end C_parser.y.rb/module_eval...', 'C_parser.y.rb', 727) 11 12 RESERVED = { 13 # keyword 14 'typedef' => :TYPEDEF, 15 'struct' => :STRUCT, 16 'union' => :UNION, 17 'sizeof' => :SIZEOF, 18 'throw' => :THROW, 19 20 # specifier 21 # types 22 'void' => :VOID, 23 'char' => :CHAR, 24 'short' => :SHORT, 25 26 'volatile'=> :VOLATILE, 27 'const' => :CONST, 28 'extern' => :EXTERN, 29 30 'long' => :LONG, 31 'float' => :FLOAT, 32 'double' => :DOUBLE, 33 'signed' => :SIGNED, 34 'unsigned'=> :UNSIGNED, 35 36 'int' => :INT, 37 'enum' => :ENUM, 38 39 'if' => :IF, 40 'else' => :ELSE, 41 'while' => :WHILE, 42 'do' => :DO, 43 'for' => :FOR, 44 'case' => :CASE, 45 'default' => :DEFAULT, 46 'goto' => :GOTO, 47 'continue' => :CONTINUE, 48 'break' => :BREAK, 49 'return' => :RETURN, 50 '__inline__' => :__INLINE__, 51 'inline' => :INLINE, 52 '__inline' => :__INLINE, 53 'Inline' => :CINLINE, # inline starting with Capital letter 54 'static' => :STATIC, 55 'register' => :REGISTER, 56 'auto' => :AUTO, 57 '__extension__' => :EXTENSION, 58 59 } 60 61 @@generator_nest = -1 62 @@generator_stack = [] 63 @@current_locale = [] 64 65 def finalize 66 67 # mikan Namespace.pop 68 Celltype.pop 69 Cell.pop 70 CompositeCelltype.pop 71 Region.pop 72 73 end 74 75 def set_plugin( plugin ) 76 @plugin = plugin 77 end 78 79 def self.get_plugin 80 @@generator_stack[@@generator_nest].get_plugin 81 end 82 83 def get_plugin 84 @plugin 85 end 86 87 def parse(files) 88 89 # mikan Namespace.push 90 Celltype.push 91 Cell.push 92 CompositeCelltype.push 93 Region.push 94 95 @@generator_nest += 1 96 @@generator_stack[@@generator_nest] = self 97 @b_no_type_name = false 98 99 begin 100 101 @q = [] 102 comment = false 103 104 # euc のコメントを utf8 として扱うと、コメントの終わりを誤る問題の対策 105 TECS_LANG::set_kcode_binary 106 107 # 800U, 0xffLL など (整数リテラルに共通の修飾子) 108 integer_qualifier = "([Uu][Ll][Ll]|[Uu][Ll]|[Uu]|[Ll][Ll]|[Ll])?" 109 110 files.each {|file| 111 lineno = 1 112 begin 113 #2.0 IO.foreach(file) {|line| 114 TECSIO.foreach(file) {|line| 115 col = 1 116 line.rstrip! 117 118 until line.empty? 119 120 if comment 121 case line 122 # コメント終了 123 when /\A\*\// 124 comment = false 125 when /\A./ 126 ; 127 end 128 else 129 case line 130 # 空白、プリプロセスディレクティブ 131 when /\A\s+/ 132 ; 133 # 識別子 134 when /\A[a-zA-Z_]\w*/ 135 word = $& 136 @q << [RESERVED[word] || :IDENTIFIER, Token.new(word.intern, file, lineno, col)] 137 # 16 進数定数 138 when /\A0x[0-9A-Fa-f]+#{integer_qualifier}/ 139 @q << [:HEX_CONSTANT, Token.new($&, file, lineno, col)] 140 # 8 進数定数 141 when /\A0[0-7]+#{integer_qualifier}/ 142 @q << [:OCTAL_CONSTANT, Token.new($&, file, lineno, col)] 143 # 浮動小数定数 144 when /\A[0-9]+\.([0-9]*)?([Ee][+-]?[0-9]+)?/ 145 @q << [:FLOATING_CONSTANT, Token.new($&, file, lineno, col)] 146 # 整数定数 147 when /\A\d+#{integer_qualifier}/ 148 # when /\A\d+/ 149 @q << [:INTEGER_CONSTANT, Token.new($&.to_i, file, lineno, col)] 150 # 文字 151 when /\A'(?:[^'\\]|\\.)'/ 152 @q << [:CHARACTER_LITERAL, Token.new($&, file, lineno, col)] 153 # 文字列 154 # "#include #include #include \"../systask/logtask.cfg\" 最後の " 忘れ)で無限ループ 155 # when /\A"(?:[^"\\]+|\\.)*"/ 156 when /\A"(?:[^"\\]|\\.)*"/ # これはうまく行くようだ 157 @q << [:STRING_LITERAL, Token.new($&, file, lineno, col)] 158 # 行コメント 159 when /\A\/\/.*$/ 160 # 読み飛ばすだけ 161 # コメント開始 162 when /\A\/\*/ 163 comment = true 164 when /\A>>=/, /\A<<=/, /\A>>/, /\A<</ 165 @q << [$&, Token.new($&, file, lineno, col)] 166 when /\A\+=/, /\A\-=/, /\A\*=/, /\A\/=/, /\A%=/, /\A&=/, /\A\|=/, /\A\^=/ 167 @q << [$&, Token.new($&, file, lineno, col)] 168 when /\A::/, /\A==/, /\A!=/, /\A>=/, /\A<=/, /\A\->/, /\A\+\+/, /\A\-\-/ 169 @q << [$&, Token.new($&, file, lineno, col)] 170 when /\A./ 171 @q << [$&, Token.new($&, file, lineno, col)] 172 else 173 raise 174 end 175 end 176 177 line = $' 178 col += $&.length 179 end 180 181 lineno += 1 182 } 183 184 rescue => evar 185 Generator.error( "B1002 while open or reading \'$1\'" , file ) 186 print_exception( evar ) 187 end 188 } 189 190 # 終了の印 191 @q << nil 192 193 @yydebug = true 194 do_parse 195 196 ensure 197 @@generator_nest -= 1 198 TECS_LANG::reset_kcode 199 end 200 201 end 202 203 204 def next_token 205 token = @q.shift 206 207 if token then 208 @@current_locale[@@generator_nest] = token[1].locale 209 210 case token[1].val 211 when ";", ":", ",", "(", ")", "{", "}" 212 set_no_type_name false 213 when ".", "->" 214 set_no_type_name true 215 end 216 217 # TYPE_NAME トークンへ置き換え 218 if @b_no_type_name == false 219 if token[0] == :IDENTIFIER && Namespace.is_typename?( token[1].val ) then 220 token[0] = :TYPE_NAME 221 locale = @@current_locale[@@generator_nest] 10 module_eval(<<'...end C_parser.y.rb/module_eval...', 'C_parser.y.rb', 784) 11 12 RESERVED = { 13 # keyword 14 'typedef' => :TYPEDEF, 15 'struct' => :STRUCT, 16 'union' => :UNION, 17 'sizeof' => :SIZEOF, 18 'throw' => :THROW, 19 20 # specifier 21 # types 22 'void' => :VOID, 23 'char' => :CHAR, 24 'short' => :SHORT, 25 26 'volatile'=> :VOLATILE, 27 'restrict'=> :RESTRICT, 28 'const' => :CONST, 29 'extern' => :EXTERN, 30 31 'long' => :LONG, 32 'float' => :FLOAT, 33 'double' => :DOUBLE, 34 'signed' => :SIGNED, 35 'unsigned'=> :UNSIGNED, 36 37 'int' => :INT, 38 'enum' => :ENUM, 39 40 'if' => :IF, 41 'else' => :ELSE, 42 'while' => :WHILE, 43 'do' => :DO, 44 'for' => :FOR, 45 'switch' => :SWITCH, 46 'case' => :CASE, 47 'default' => :DEFAULT, 48 'goto' => :GOTO, 49 'continue' => :CONTINUE, 50 'break' => :BREAK, 51 'return' => :RETURN, 52 '__inline__' => :__INLINE__, 53 'inline' => :INLINE, 54 '__inline' => :__INLINE, 55 'Inline' => :CINLINE, # inline starting with Capital letter 56 'static' => :STATIC, 57 'register' => :REGISTER, 58 'auto' => :AUTO, 59 '__extension__' => :EXTENSION, 60 '__asm__' => :_ASM, 61 'asm' => :_ASM 62 63 } 64 65 @@generator_nest = -1 66 @@generator_stack = [] 67 @@current_locale = [] 68 69 def finalize 70 71 # mikan Namespace.pop 72 Celltype.pop 73 Cell.pop 74 CompositeCelltype.pop 75 Region.pop 76 77 end 78 79 def set_plugin( plugin ) 80 @plugin = plugin 81 end 82 83 def self.get_plugin 84 @@generator_stack[@@generator_nest].get_plugin 85 end 86 87 def get_plugin 88 @plugin 89 end 90 91 def parse(files) 92 93 # mikan Namespace.push 94 Celltype.push 95 Cell.push 96 CompositeCelltype.push 97 Region.push 98 99 @@generator_nest += 1 100 @@generator_stack[@@generator_nest] = self 101 @b_no_type_name = false 102 103 begin 104 105 @q = [] 106 comment = false 107 # b_asm = false 108 109 # euc のコメントを utf8 として扱うと、コメントの終わりを誤る問題の対策 110 TECS_LANG::set_kcode_binary 111 112 # 800U, 0xffLL など (整数リテラルに共通の修飾子) 113 integer_qualifier = "([Uu][Ll][Ll]|[Uu][Ll]|[Uu]|[Ll][Ll]|[Ll])?" 114 115 files.each {|file| 116 lineno = 1 117 begin 118 #2.0 IO.foreach(file) {|line| 119 TECSIO.foreach(file) {|line| 120 col = 1 121 line.rstrip! 122 123 until line.empty? 124 125 if comment 126 case line 127 # コメント終了 128 when /\A\*\// 129 comment = false 130 when /\A./ 131 ; 132 end 133 else 134 case line 135 # 空白、プリプロセスディレクティブ 136 when /\A\s+/ 137 ; 138 # 識別子 139 when /\A[a-zA-Z_]\w*/ 140 word = $& 141 @q << [RESERVED[word] || :IDENTIFIER, Token.new(word.intern, file, lineno, col)] 142 # 16 進数定数 143 when /\A0x[0-9A-Fa-f]+#{integer_qualifier}/ 144 @q << [:HEX_CONSTANT, Token.new($&, file, lineno, col)] 145 # 8 進数定数 146 when /\A0[0-7]+#{integer_qualifier}/ 147 @q << [:OCTAL_CONSTANT, Token.new($&, file, lineno, col)] 148 # 浮動小数定数 149 when /\A[0-9]+\.([0-9]*)?([Ee][+-]?[0-9]+)?/ 150 @q << [:FLOATING_CONSTANT, Token.new($&, file, lineno, col)] 151 # 整数定数 152 when /\A\d+#{integer_qualifier}/ 153 # when /\A\d+/ 154 @q << [:INTEGER_CONSTANT, Token.new($&.to_i, file, lineno, col)] 155 # 文字 156 when /\A'(?:[^'\\]|\\.)'/ 157 @q << [:CHARACTER_LITERAL, Token.new($&, file, lineno, col)] 158 # 文字列 159 # "#include #include #include \"../systask/logtask.cfg\" 最後の " 忘れ)で無限ループ 160 # when /\A"(?:[^"\\]+|\\.)*"/ 161 when /\A"(?:[^"\\]|\\.)*"/ # これはうまく行くようだ 162 @q << [:STRING_LITERAL, Token.new($&, file, lineno, col)] 163 # 行コメント 164 when /\A\/\/.*$/ 165 # 読み飛ばすだけ 166 # コメント開始 167 when /\A\/\*/ 168 comment = true 169 when /\A>>=/, /\A<<=/, /\A>>/, /\A<</ 170 @q << [$&, Token.new($&, file, lineno, col)] 171 when /\A\+=/, /\A\-=/, /\A\*=/, /\A\/=/, /\A%=/, /\A&=/, /\A\|=/, /\A\^=/ 172 @q << [$&, Token.new($&, file, lineno, col)] 173 when /\A::/, /\A==/, /\A!=/, /\A>=/, /\A<=/, /\A\->/, /\A\+\+/, /\A\-\-/ 174 @q << [$&, Token.new($&, file, lineno, col)] 175 when /\A\|\|/, /\A\&\&/ 176 @q << [$&, Token.new($&, file, lineno, col)] 177 when /\A./ 178 @q << [$&, Token.new($&, file, lineno, col)] 179 else 180 raise 181 end 182 end 183 184 line = $' 185 col += $&.length 186 end 187 188 lineno += 1 189 } 190 191 rescue => evar 192 Generator.error( "B1002 while open or reading \'$1\'" , file ) 193 print_exception( evar ) 194 end 195 } 196 197 # 終了の印 198 @q << nil 199 200 @yydebug = true 201 do_parse 202 203 ensure 204 @@generator_nest -= 1 205 TECS_LANG::reset_kcode 206 end 207 208 end 209 210 211 def next_token 212 token = @q.shift 213 214 if token then 215 @@current_locale[@@generator_nest] = token[1].locale 216 217 case token[1].val 218 when ";", ":", ",", "(", ")", "{", "}" 219 set_no_type_name false 220 when ".", "->" 221 set_no_type_name true 222 end 223 224 # TYPE_NAME トークンへ置き換え 225 if @b_no_type_name == false 226 if token[0] == :IDENTIFIER && Namespace.is_typename?( token[1].val ) then 227 token[0] = :TYPE_NAME 228 locale = @@current_locale[@@generator_nest] 222 229 #print( "#{locale[0]}: line #{locale[1]} : #{token[0]} '#{token[1].val}: type_name'\n" ) 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 Console.puts "error: #{locale[0]}: line #{locale[1]}#{msg}"263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 230 end 231 end 232 233 if $debug then # 070107 token 無効時ここを通さないようした (through 対応 -d の時に例外発生) 234 locale = @@current_locale[@@generator_nest] 235 if token then 236 print( "#{locale[0]}: line #{locale[1]} : #{token[0]} '#{token[1].val}'\n" ) 237 else 238 print( "#{locale[0]}: line #{locale[1]} : EOF\n" ) 239 end 240 end 241 end 242 243 token 244 end 245 246 def on_error(t, v, vstack) 247 if v == "$" then 248 Generator.error( "B1003 Unexpected EOF" ) 249 else 250 Generator.error( "B1004 syntax error near \'$1\'" , v.val ) 251 end 252 253 end 254 255 def self.current_locale 256 @@current_locale[ @@generator_nest ] 257 end 258 259 @@n_error = 0 260 @@n_warning = 0 261 @@n_info = 0 262 263 # このメソッドは構文解析、意味解析からのみ呼出し可(コード生成でエラー発生は不適切) 264 def self.error( msg ) 265 @@n_error += 1 266 locale = @@current_locale[ @@generator_nest ] 267 268 if locale then 269 Console.puts "#{locale[0]}:#{locale[1]}: error: #{msg}" 270 else 271 Console.puts "error: #{msg}" 272 end 273 end 274 275 # このメソッドは構文解析、意味解析からのみ呼出し可(コード生成でウォーニング発生は不適切) 276 def self.warning( msg ) 277 @@n_warning += 1 278 locale = @@current_locale[ @@generator_nest ] 279 Console.puts "warning: #{locale[0]}: line #{locale[1]} #{msg}" 280 end 281 282 # このメソッドは構文解析、意味解析からのみ呼出し可 283 def self.info( msg ) 284 @@n_info += 1 285 locale = @@current_locale[ @@generator_nest ] 286 Console.puts "info: #{locale[0]}: line #{locale[1]} #{msg}" 287 end 288 289 def self.get_n_error 290 @@n_error 291 end 292 293 def self.get_n_warning 294 @@n_warning 295 end 296 297 def self.get_nest 298 @@generator_nest 299 end 300 301 def set_no_type_name b_no_type_name 302 locale = @@current_locale[ @@generator_nest ] 296 303 #print "b_no_type_name=#{b_no_type_name} #{locale[0]}: line #{locale[1]}\n" 297 298 304 @b_no_type_name = b_no_type_name 305 end 299 306 300 307 ...end C_parser.y.rb/module_eval... … … 302 309 303 310 clist = [ 304 '106,107,108,109,110,112,70,113,68,181,302,143,55,118,119,208,117,120', 305 '121,122,123,124,125,106,107,108,109,110,112,337,113,209,336,210,143', 306 '76,118,119,170,117,120,121,122,123,124,125,305,69,301,67,350,28,29,106', 307 '107,108,109,110,112,75,113,28,29,162,143,77,118,119,170,117,120,121', 308 '122,123,124,125,169,79,205,206,353,306,307,308,309,310,311,312,313,314', 309 '315,264,55,144,8,9,10,11,15,16,17,18,19,20,21,174,267,23,25,27,28,29', 310 '197,198,375,263,144,106,107,108,109,110,112,346,113,342,197,198,143', 311 '173,118,119,153,117,120,121,122,123,124,125,106,107,108,109,110,112', 312 '144,113,357,341,3,143,274,118,119,253,117,120,121,122,123,124,125,106', 313 '107,108,109,110,112,54,113,199,200,361,143,53,118,119,98,117,120,121', 314 '122,123,124,125,106,107,108,109,110,112,345,113,363,83,364,143,82,118', 315 '119,346,117,120,121,122,123,124,125,81,144,249,83,274,253,82,253,53', 316 '106,107,108,109,110,112,337,113,55,336,365,236,366,118,119,144,117,120', 317 '121,122,123,124,125,54,249,367,194,253,97,53,53,195,196,81,199,200,55', 318 '55,144,230,89,8,9,10,11,15,16,17,18,19,20,21,79,372,23,25,27,28,29,199', 319 '200,144,231,88,232,233,234,235,87,237,238,240,241,242,243,194,377,194', 320 '199,200,195,196,195,196,378,39,40,41,42,43,44,45,46,144,106,107,108', 321 '109,110,112,379,113,205,206,380,143,381,118,119,382,117,120,121,122', 322 '123,124,125,106,107,108,109,110,112,384,113,197,198,385,143,386,118', 323 '119,65,117,120,121,122,123,124,125,106,107,108,109,110,112,62,113,391', 324 '37,392,143,393,118,119,394,117,120,121,122,123,124,125,106,107,108,109', 325 '110,112,61,113,211,212,396,143,398,118,119,280,117,120,121,122,123,124', 326 '125,47,144,279,36,277,8,9,10,11,15,16,17,18,19,20,21,271,37,23,25,27', 327 '28,29,270,144,38,8,9,10,11,15,16,17,18,19,20,21,199,200,23,25,27,28', 328 '29,269,97,256,144,255,39,40,41,42,43,44,45,46,36,247,8,9,10,11,15,16', 329 '17,18,19,20,21,144,246,23,25,27,28,29,245,32,38,106,107,108,109,110', 330 '112,216,113,215,210,209,143,208,118,119,207,117,120,121,122,123,124', 331 '125,39,40,41,42,43,44,45,46,303,106,107,108,109,110,112,316,113,317', 332 '319,320,236,321,118,119,323,117,120,121,122,123,124,125,54,54,54,324', 333 '54,325,53,53,53,326,53,329,176,55,55,55,230,55,8,9,10,11,15,16,17,18', 334 '19,20,21,79,175,23,25,27,28,29,77,97,144,231,171,232,233,234,235,163', 335 '237,238,240,241,242,243,183,348,184,349,185,186,187,207,,,39,40,41,42', 336 '43,44,45,46,144,106,107,108,109,110,112,,113,,,,143,,118,119,,117,120', 337 '121,122,123,124,125,,,106,107,108,109,110,112,,113,,,,236,,118,119,', 338 '117,120,121,122,123,124,125,54,54,54,,54,,53,53,53,,53,,,55,55,55,230', 339 '55,8,9,10,11,15,16,17,18,19,20,21,79,,23,25,27,28,29,,,,231,,232,233', 340 '234,235,144,237,238,240,241,242,243,201,202,203,204,201,202,203,204', 341 ',,39,40,41,42,43,44,45,46,144,106,107,108,109,110,112,,113,,,,236,,118', 342 '119,,117,120,121,122,123,124,125,54,201,202,203,204,,53,,,,,,,55,,,230', 343 ',8,9,10,11,15,16,17,18,19,20,21,79,,23,25,27,28,29,,,,231,,232,233,234', 344 '235,,237,238,240,241,242,243,,,,,,,,,,,39,40,41,42,43,44,45,46,144,106', 345 '107,108,109,110,112,,113,,,,143,,118,119,,117,120,121,122,123,124,125', 346 '106,107,108,109,110,112,,113,,,,143,,118,119,,117,120,121,122,123,124', 347 '125,106,107,108,109,110,112,,113,,,,143,,118,119,,117,120,121,122,123', 348 '124,125,106,107,108,109,110,112,,113,,,,143,,118,119,,117,120,121,122', 349 '123,124,125,,144,,,,,,,,106,107,108,109,110,112,,113,,,,143,,118,119', 350 '144,117,120,121,122,123,124,125,106,107,108,109,110,112,,113,,368,,143', 351 ',118,119,144,117,120,121,122,123,124,125,,,,,,,,106,107,108,109,110', 352 '112,,113,144,,,236,,118,119,,117,120,121,122,123,124,125,,,,,,,,,,,', 353 ',,,,,230,144,8,9,10,11,15,16,17,18,19,20,21,79,,23,25,27,28,29,,,,231', 354 '144,232,233,234,235,,237,238,240,241,242,243,,,,,,,,,,,39,40,41,42,43', 355 '44,45,46,144,106,107,108,109,110,112,,113,,,,236,,118,119,,117,120,121', 356 '122,123,124,125,,,,,,,,,,,,,,,,,230,,8,9,10,11,15,16,17,18,19,20,21', 357 '79,,23,25,27,28,29,,,,231,,232,233,234,235,,237,238,240,241,242,243', 358 ',,,,,,,,,,39,40,41,42,43,44,45,46,144,106,107,108,109,110,112,,113,', 359 ',,236,,118,119,,117,120,121,122,123,124,125,,,,,,,,,,,,,,,,,230,,8,9', 360 '10,11,15,16,17,18,19,20,21,79,,23,25,27,28,29,,,,231,,232,233,234,235', 361 ',237,238,240,241,242,243,,,,,,,,,,,39,40,41,42,43,44,45,46,144,106,107', 362 '108,109,110,112,,113,,,,143,,118,119,,117,120,121,122,123,124,125,106', 363 '107,108,109,110,112,,113,,,,143,,118,119,,117,120,121,122,123,124,125', 364 '106,107,108,109,110,112,,113,,,,143,,118,119,,117,120,121,122,123,124', 365 '125,106,107,108,109,110,112,,113,,,,143,,118,119,,117,120,121,122,123', 366 '124,125,,144,,,,,141,,,,,,,142,106,107,108,109,110,112,,113,,147,144', 367 '143,,118,119,,117,120,121,122,123,124,125,106,107,108,109,110,112,,113', 368 ',,144,143,,118,119,,117,120,121,122,123,124,125,106,107,108,109,110', 369 '112,,113,,,144,143,,118,119,,117,120,121,122,123,124,125,106,107,108', 370 '109,110,112,,113,,,,143,,118,119,,117,120,121,122,123,124,125,,144,', 371 ',,,,,,106,107,108,109,110,112,,113,,,,143,,118,119,144,117,120,121,122', 372 '123,124,125,106,107,108,109,110,112,,113,,,,143,,118,119,144,117,120', 373 '121,122,123,124,125,106,107,108,109,110,112,,113,,,,143,,118,119,144', 374 '117,120,121,122,123,124,125,106,107,108,109,110,112,,113,,,,143,,118', 375 '119,,117,120,121,122,123,124,125,,144,,,,,141,351,,,,,,142,106,107,108', 376 '109,110,112,,113,,,144,143,,118,119,,117,120,121,122,123,124,125,106', 377 '107,108,109,110,112,,113,,,144,143,,118,119,,117,120,121,122,123,124', 378 '125,106,107,108,109,110,112,,113,,,144,143,,118,119,,117,120,121,122', 379 '123,124,125,106,107,108,109,110,112,,113,,,,143,,118,119,,117,120,121', 380 '122,123,124,125,,144,,,,,,,,106,107,108,109,110,112,,113,,,,143,,118', 381 '119,144,117,120,121,122,123,124,125,106,107,108,109,110,112,,113,,,', 382 '143,,118,119,144,117,120,121,122,123,124,125,106,107,108,109,110,112', 383 ',113,,,,143,,118,119,144,117,120,121,122,123,124,125,,,,,,,,,,106,107', 384 '108,109,110,112,,113,,,,236,,118,119,144,117,120,121,122,123,124,125', 385 ',,,,,,,,,,,,,,,144,230,,8,9,10,11,15,16,17,18,19,20,21,79,239,23,25', 386 '27,28,29,,,144,231,,232,233,234,235,,237,238,240,241,242,243,,,,,,,', 387 ',,,39,40,41,42,43,44,45,46,144,106,107,108,109,110,112,,113,,338,,143', 388 ',118,119,,117,120,121,122,123,124,125,106,107,108,109,110,112,,113,', 389 ',,143,,118,119,,117,120,121,122,123,124,125,8,9,10,11,15,16,17,18,19', 390 '20,21,,,23,25,27,28,29,8,9,10,11,15,16,17,18,19,20,21,,,23,25,27,28', 391 '29,,106,107,108,109,110,112,,113,,,144,143,,118,119,,117,120,121,122', 392 '123,124,125,106,107,108,109,110,112,,113,,,144,143,,118,119,,117,120', 393 '121,122,123,124,125,106,107,108,109,110,112,,113,,,,143,,118,119,,117', 394 '120,121,122,123,124,125,106,107,108,109,110,189,,113,,,,143,,118,119', 395 ',117,120,121,122,123,124,125,,144,,,,,,,,106,107,108,109,110,191,,113', 396 ',,,143,,118,119,144,117,120,121,122,123,124,125,106,107,108,109,110', 397 '191,,113,,,,143,,118,119,144,117,120,121,122,123,124,125,106,107,108', 398 '109,110,112,,113,,,,143,,118,119,144,117,120,121,122,123,124,125,106', 399 '107,108,109,110,112,,113,,,,143,,118,119,,117,120,121,122,123,124,125', 400 ',144,,,,,141,,,,,,,142,,,328,,106,107,108,109,110,112,144,113,,,,143', 401 ',118,119,,117,120,121,122,123,124,125,,,,,,,144,,,,,,,,,,,106,107,108', 402 '109,110,112,,113,,,,236,144,118,119,,117,120,121,122,123,124,125,,,', 403 ',,,,,,,,,,,,,230,,8,9,10,11,15,16,17,18,19,20,21,79,144,23,25,27,28', 404 '29,,,,231,,232,233,234,235,,237,238,240,241,242,243,,,,,,,274,334,,253', 405 '39,40,41,42,43,44,45,46,144,55,,,,,249,334,,253,,,53,,,,,,,55,,,,,8', 406 '9,10,11,15,16,17,18,19,20,21,,,23,25,27,28,29,8,9,10,11,15,16,17,18', 407 '19,20,21,,,23,25,27,28,29,370,,,,,,,,39,40,41,42,43,44,45,46,,,149,', 408 ',,,,,,39,40,41,42,43,44,45,46,,8,9,10,11,15,16,17,18,19,20,21,,,23,25', 409 '27,28,29,8,9,10,11,15,16,17,18,19,20,21,,,23,25,27,28,29,,,,330,,,,', 410 '39,40,41,42,43,44,45,46,,,,,,,,,,,39,40,41,42,43,44,45,46,8,9,10,11', 411 '15,16,17,18,19,20,21,,,23,25,27,28,29,8,9,10,11,15,16,17,18,19,20,21', 412 ',,23,25,27,28,29,,,,,,,,,39,40,41,42,43,44,45,46,,,,,,,,,,,39,40,41', 413 '42,43,44,45,46,8,9,10,11,15,16,17,18,19,20,21,,340,23,25,27,28,29,8', 414 '9,10,11,15,16,17,18,19,20,21,,164,23,25,27,28,29,,,,,,,,,39,40,41,42', 415 '43,44,45,46,,,,,,,,,,,39,40,41,42,43,44,45,46,8,9,10,11,15,16,17,18', 416 '19,20,21,,,23,25,27,28,29,8,9,10,11,15,16,17,18,19,20,21,,,23,25,27', 417 '28,29,,,,,,,,,39,40,41,42,43,44,45,46,,,,,,,,,,,39,40,41,42,43,44,45', 418 '46,8,9,10,11,15,16,17,18,19,20,21,,,23,25,27,28,29,8,9,10,11,15,16,17', 419 '18,19,20,21,,257,23,25,27,28,29,,,,,,,,,39,40,41,42,43,44,45,46,,,,', 420 ',,,,,,39,40,41,42,43,44,45,46,8,9,10,11,15,16,17,18,19,20,21,,,23,25', 421 '27,28,29,8,9,10,11,15,16,17,18,19,20,21,,262,23,25,27,28,29,,,,,,,,', 422 '39,40,41,42,43,44,45,46,,,,,,,,,,,39,40,41,42,43,44,45,46,8,9,10,11', 423 '15,16,17,18,19,20,21,,,23,25,27,28,29,8,9,10,11,15,16,17,18,19,20,21', 424 ',,23,25,27,28,29,,,,,,,,,39,40,41,42,43,44,45,46,,,,,,,,,,,39,40,41', 425 '42,43,44,45,46,8,9,10,11,15,16,17,18,19,20,21,,,23,25,27,28,29' ] 426 racc_action_table = arr = ::Array.new(2875, nil) 311 '111,112,113,114,115,117,294,118,56,298,55,163,54,123,124,82,54,262,122', 312 '125,126,127,128,129,130,111,112,113,114,115,117,217,118,271,391,101', 313 '163,91,123,124,82,271,271,122,125,126,127,128,129,130,56,70,171,72,82', 314 '69,397,71,80,32,33,34,224,309,271,223,216,226,84,227,228,229,84,392', 315 '101,325,272,171,298,312,80,164,165,172,393,173,174,175,176,177,178,179', 316 '180,149,181,101,218,79,308,369,388,32,33,34,265,266,164,165,172,73,173', 317 '174,175,176,177,178,179,180,149,181,111,112,113,114,115,117,384,118', 318 '32,33,34,163,78,123,124,82,440,402,122,125,126,127,128,129,130,55,219', 319 '271,271,383,101,54,332,248,325,387,55,298,249,250,56,382,54,111,112', 320 '113,114,115,117,56,118,56,171,331,163,395,123,124,82,276,210,122,125', 321 '126,127,128,129,130,420,55,378,210,248,377,396,54,330,249,250,393,92', 322 '164,165,172,56,173,174,175,176,177,178,179,180,149,181,171,9,10,11,12', 323 '13,14,15,16,17,18,19,20,21,22,26,28,30,31,32,33,34,35,36,37,38,355,356', 324 '213,164,165,172,204,173,174,175,176,177,178,179,180,149,181,111,112', 325 '113,114,115,117,404,118,93,378,203,163,377,123,124,82,193,271,122,125', 326 '126,127,128,129,130,111,112,113,114,115,117,290,118,101,86,55,163,85', 327 '123,124,82,54,291,122,125,126,127,128,129,130,56,357,171,13,14,15,16', 328 '17,18,19,20,21,22,26,28,30,31,32,33,34,248,86,322,438,85,249,250,171', 329 '434,435,370,164,165,172,271,173,174,175,176,177,178,179,180,149,181', 330 '259,260,261,321,255,256,257,258,315,316,262,164,165,172,271,173,174', 331 '175,176,177,178,179,180,149,181,111,112,113,114,115,117,403,118,317', 332 '318,263,163,264,123,124,82,320,271,122,125,126,127,128,129,130,13,14', 333 '15,16,17,18,19,20,21,22,26,28,30,31,32,33,34,437,111,112,113,114,115', 334 '117,360,118,400,171,271,163,368,123,124,82,166,103,122,125,126,127,128', 335 '129,130,102,55,255,256,257,258,310,54,255,256,257,258,405,164,165,172', 336 '56,173,174,175,176,177,178,179,180,149,181,171,9,10,11,12,13,14,15,16', 337 '17,18,19,20,21,22,26,28,30,31,32,33,34,35,36,37,38,259,260,301,164,165', 338 '172,300,173,174,175,176,177,178,179,180,149,181,111,112,113,114,115', 339 '117,408,118,253,254,292,163,409,123,124,82,253,254,122,125,126,127,128', 340 '129,130,111,112,113,114,115,117,410,118,253,254,55,163,289,123,124,82', 341 '54,288,122,125,126,127,128,129,130,56,415,171,13,14,15,16,17,18,19,20', 342 '21,22,26,28,30,31,32,33,34,253,254,253,254,251,252,261,171,211,212,285', 343 '164,165,172,284,173,174,175,176,177,178,179,180,149,181,237,238,239', 344 '240,241,242,243,244,245,246,247,164,165,172,283,173,174,175,176,177', 345 '178,179,180,149,181,111,112,113,114,115,117,282,118,251,252,389,163', 346 '389,123,124,82,251,252,122,125,126,127,128,129,130,111,112,113,114,115', 347 '117,101,118,67,82,55,163,64,123,124,82,54,63,122,125,126,127,128,129', 348 '130,56,55,171,55,55,294,280,54,298,54,54,54,279,430,431,432,56,433,56', 349 '56,56,365,436,278,263,275,264,171,273,270,48,164,165,172,444,173,174', 350 '175,176,177,178,179,180,149,181,269,3,,,,,,,,,,164,165,172,,173,174', 351 '175,176,177,178,179,180,149,181,111,112,113,114,115,117,,118,,,,163', 352 ',123,124,82,,,122,125,126,127,128,129,130,111,112,113,114,115,117,,118', 353 ',,,148,,123,124,,,,122,125,126,127,128,129,130,,,171,111,112,113,114', 354 '115,117,,118,,,,148,,123,124,,,,122,125,126,127,128,129,130,,,,164,165', 355 '172,,173,174,175,176,177,178,179,180,149,181,,,,,,,111,112,113,114,115', 356 '117,,118,,411,,148,,123,124,,,149,122,125,126,127,128,129,130,,,,111', 357 '112,113,114,115,117,,118,,,,148,,123,124,,,149,122,125,126,127,128,129', 358 '130,111,112,113,114,115,117,,118,,,,148,,123,124,,,,122,125,126,127', 359 '128,129,130,,,171,,,,,,,,,,,,,149,,111,112,113,114,115,117,,118,,,171', 360 '148,,123,124,,,,122,125,126,127,128,129,130,,149,,,,,,,,111,112,113', 361 '114,115,117,,118,,,,148,,123,124,146,398,149,122,125,126,127,128,129', 362 '130,111,112,113,114,115,117,,118,,,,148,,123,124,,,,122,125,126,127', 363 '128,129,130,111,112,113,114,115,117,,118,,149,,148,,123,124,389,,,122', 364 '125,126,127,128,129,130,,,,147,,,111,112,113,114,115,117,,118,,,,148', 365 '149,123,124,,,,122,125,126,127,128,129,130,111,112,113,114,115,117,', 366 '118,,379,,148,149,123,124,,,,122,125,126,127,128,129,130,,,,,,,,,,,', 367 ',149,,,,,111,112,113,114,115,117,,118,,,,148,,123,124,,,,122,125,126', 368 '127,128,129,130,,149,,,,,,,,,,,,,,,,,,,,,,,,,149,171,9,10,11,12,13,14', 369 '15,16,17,18,19,20,21,22,26,28,30,31,32,33,34,35,36,37,38,111,112,113', 370 '114,115,117,,118,,,,148,,123,124,149,,,122,125,126,127,128,129,130,111', 371 '112,113,114,115,117,,118,,,,148,,123,124,146,,,122,125,126,127,128,129', 372 '130,111,112,113,114,115,117,,118,,,,148,,123,124,,,,122,125,126,127', 373 '128,129,130,,111,112,113,114,115,117,,118,,,,148,,123,124,,,149,122', 374 '125,126,127,128,129,130,,,147,,,111,112,113,114,115,117,,118,,,,148', 375 '149,123,124,,,,122,125,126,127,128,129,130,111,112,113,114,115,117,', 376 '118,,,,148,149,123,124,,,,122,125,126,127,128,129,130,,111,112,113,114', 377 '115,117,,118,,,,148,149,123,124,,,,122,125,126,127,128,129,130,111,112', 378 '113,114,115,117,,118,,,,148,,123,124,146,,149,122,125,126,127,128,129', 379 '130,111,112,113,114,115,117,427,118,,,,148,,123,124,,,149,122,125,126', 380 '127,128,129,130,,111,112,113,114,115,117,,118,,,,148,,123,124,,,149', 381 '122,125,126,127,128,129,130,,,147,,,111,112,113,114,115,117,,118,,185', 382 ',148,149,123,124,,,,122,125,126,127,128,129,130,111,112,113,114,115', 383 '117,,118,,,,148,149,123,124,,,,122,125,126,127,128,129,130,,111,112', 384 '113,114,115,117,,118,,,,148,149,123,124,,,,122,125,126,127,128,129,130', 385 '111,112,113,114,115,117,,118,,,,148,,123,124,,,149,122,125,126,127,128', 386 '129,130,111,112,113,114,115,117,,118,,,,148,,123,124,,,149,122,125,126', 387 '127,128,129,130,,111,112,113,114,115,117,,118,,,,148,,123,124,,,149', 388 '122,125,126,127,128,129,130,111,112,113,114,115,117,,118,,,,148,,123', 389 '124,,,149,122,125,126,127,128,129,130,111,112,113,114,115,117,,118,', 390 ',,148,,123,124,,,149,122,125,126,127,128,129,130,,111,112,113,114,115', 391 '117,,118,,,,148,,123,124,,,149,122,125,126,127,128,129,130,111,112,113', 392 '114,115,117,,118,,,,148,,123,124,,,149,122,125,126,127,128,129,130,111', 393 '112,113,114,115,117,,118,,,,148,,123,124,,,149,122,125,126,127,128,129', 394 '130,,111,112,113,114,115,117,,118,,,,148,,123,124,,,149,122,125,126', 395 '127,128,129,130,111,112,113,114,115,117,,118,,,,148,,123,124,,,149,122', 396 '125,126,127,128,129,130,111,112,113,114,115,117,,118,,,,148,,123,124', 397 ',,149,122,125,126,127,128,129,130,,111,112,113,114,115,117,,118,,,,148', 398 ',123,124,,,149,122,125,126,127,128,129,130,111,112,113,114,115,117,', 399 '118,,,,148,,123,124,,,149,122,125,126,127,128,129,130,111,112,113,114', 400 '115,117,,118,,,,148,,123,124,146,,149,122,125,126,127,128,129,130,,111', 401 '112,113,114,115,117,,118,,,,148,,123,124,,,149,122,125,126,127,128,129', 402 '130,,,,,,,,,,,,,,,,,,149,,,,,,,,,,147,,,111,112,113,114,115,117,,118', 403 ',,,148,149,123,124,,,,122,125,126,127,128,129,130,,111,112,113,114,115', 404 '117,,118,,,,148,149,123,124,,,,122,125,126,127,128,129,130,,,,,,,13', 405 '14,15,16,17,18,19,20,21,22,26,28,30,31,32,33,34,,,111,112,113,114,115', 406 '117,,118,,,,148,,123,124,,,149,122,125,126,127,128,129,130,,111,112', 407 '113,114,115,231,,118,,,,148,,123,124,,,149,122,125,126,127,128,129,130', 408 '111,112,113,114,115,233,,118,,,,148,,123,124,,,,122,125,126,127,128', 409 '129,130,111,112,113,114,115,233,,118,,,,148,,123,124,,,149,122,125,126', 410 '127,128,129,130,,,,,,,,,,,,,111,112,113,114,115,117,149,118,,,,148,', 411 '123,124,,,,122,125,126,127,128,129,130,111,112,113,114,115,117,149,118', 412 ',,,148,,123,124,,,,122,125,126,127,128,129,130,,,,,,,149,13,14,15,16', 413 '17,18,19,20,21,22,26,28,30,31,32,33,34,,,111,112,113,114,115,117,,118', 414 ',,,148,,123,124,,,149,122,125,126,127,128,129,130,111,112,113,114,115', 415 '117,327,118,,,,148,,123,124,,,149,122,125,126,127,128,129,130,,,,,,', 416 ',13,14,15,16,17,18,19,20,21,22,26,28,30,31,32,33,34,,,111,112,113,114', 417 '115,117,,118,,,,148,,123,124,,,149,122,125,126,127,128,129,130,111,112', 418 '113,114,115,117,,118,,,,148,,123,124,,,149,122,125,126,127,128,129,130', 419 '111,112,113,114,115,117,,118,,,,148,,123,124,,,,122,125,126,127,128', 420 '129,130,,111,112,113,114,115,117,429,118,,,,148,,123,124,,,149,122,125', 421 '126,127,128,129,130,,287,,,,111,112,113,114,115,117,,118,,,,148,149', 422 '123,124,146,442,,122,125,126,127,128,129,130,111,112,113,114,115,117', 423 ',118,,,,148,149,123,124,,,,122,125,126,127,128,129,130,,111,112,113', 424 '114,115,117,,118,,,,148,149,123,124,,,,122,125,126,127,128,129,130,', 425 ',147,,,,,,,,,,,,,,46,149,,,,,,,,,,,,,,,,,,,,,,,,,149,,,46,,,,,,,,,,', 426 ',,,,,,,,,,,,149,45,9,10,11,12,13,14,15,16,17,18,19,20,21,22,26,28,30', 427 '31,32,33,34,35,36,37,38,,,47,45,9,10,11,12,13,14,15,16,17,18,19,20,21', 428 '22,26,28,30,31,32,33,34,35,36,37,38,,41,47,294,375,,298,,,54,,,,,,,', 429 ',56,,,,,,,,,,325,375,,298,,,,,,,,,,,,56,,,,,,,,9,10,11,12,13,14,15,16', 430 '17,18,19,20,21,22,26,28,30,31,32,33,34,35,36,37,38,9,10,11,12,13,14', 431 '15,16,17,18,19,20,21,22,26,28,30,31,32,33,34,35,36,37,38,188,,,,,192', 432 ',,,,,,,,,,,,,,,,,,,413,,,,,,,,,,,,,,,,,,,,,,9,10,11,12,13,14,15,16,17', 433 '18,19,20,21,22,26,28,30,31,32,33,34,35,36,37,38,9,10,11,12,13,14,15', 434 '16,17,18,19,20,21,22,26,28,30,31,32,33,34,35,36,37,38,371,9,10,11,12', 435 '13,14,15,16,17,18,19,20,21,22,26,28,30,31,32,33,34,35,36,37,38,,,,,', 436 '205,,,,,,,,,,,,9,10,11,12,13,14,15,16,17,18,19,20,21,22,26,28,30,31', 437 '32,33,34,35,36,37,38,9,10,11,12,13,14,15,16,17,18,19,20,21,22,26,28', 438 '30,31,32,33,34,35,36,37,38,307,,,,,,,,,,,,,,,,,,,,,,,,,381,,,,,,,,,', 439 ',,9,10,11,12,13,14,15,16,17,18,19,20,21,22,26,28,30,31,32,33,34,35,36', 440 '37,38,9,10,11,12,13,14,15,16,17,18,19,20,21,22,26,28,30,31,32,33,34', 441 '35,36,37,38,302,9,10,11,12,13,14,15,16,17,18,19,20,21,22,26,28,30,31', 442 '32,33,34,35,36,37,38,,,,,,,,,,,,9,10,11,12,13,14,15,16,17,18,19,20,21', 443 '22,26,28,30,31,32,33,34,35,36,37,38,9,10,11,12,13,14,15,16,17,18,19', 444 '20,21,22,26,28,30,31,32,33,34,35,36,37,38,9,10,11,12,13,14,15,16,17', 445 '18,19,20,21,22,26,28,30,31,32,33,34,35,36,37,38,9,10,11,12,13,14,15', 446 '16,17,18,19,20,21,22,26,28,30,31,32,33,34,35,36,37,38,9,10,11,12,13', 447 '14,15,16,17,18,19,20,21,22,26,28,30,31,32,33,34,35,36,37,38,9,10,11', 448 '12,13,14,15,16,17,18,19,20,21,22,26,28,30,31,32,33,34,35,36,37,38,9', 449 '10,11,12,13,14,15,16,17,18,19,20,21,22,26,28,30,31,32,33,34,35,36,37', 450 '38' ] 451 racc_action_table = arr = ::Array.new(3198, nil) 427 452 idx = 0 428 453 clist.each do |str| … … 434 459 435 460 clist = [ 436 '210,210,210,210,210,210,26,210,24,114,213,210,55,210,210,297,210,210', 437 '210,210,210,210,210,211,211,211,211,211,211,332,211,298,332,299,211', 438 '48,211,211,95,211,211,211,211,211,211,211,217,26,213,24,300,55,55,189', 439 '189,189,189,189,189,48,189,114,114,90,189,50,189,189,172,189,189,189', 440 '189,189,189,189,95,50,132,132,303,217,217,217,217,217,217,217,217,217', 441 '217,166,85,210,189,189,189,189,189,189,189,189,189,189,189,101,172,189', 442 '189,189,189,189,287,287,347,166,211,394,394,394,394,394,394,347,394', 443 '259,288,288,394,101,394,394,84,394,394,394,394,394,394,394,181,181,181', 444 '181,181,181,189,181,318,259,1,181,273,181,181,273,181,181,181,181,181', 445 '181,181,194,194,194,194,194,194,51,194,289,289,322,194,51,194,194,70', 446 '194,194,194,194,194,194,194,195,195,195,195,195,195,275,195,324,52,327', 447 '195,52,195,195,275,195,195,195,195,195,195,195,51,394,248,80,180,248', 448 '80,180,248,392,392,392,392,392,392,252,392,180,252,330,392,333,392,392', 449 '181,392,392,392,392,392,392,392,342,152,335,286,152,69,342,152,286,286', 450 '248,290,290,342,152,194,392,66,392,392,392,392,392,392,392,392,392,392', 451 '392,392,339,392,392,392,392,392,291,291,195,392,64,392,392,392,392,63', 452 '392,392,392,392,392,392,285,354,128,292,292,285,285,128,128,355,392', 453 '392,392,392,392,392,392,392,392,381,381,381,381,381,381,356,381,295', 454 '295,357,381,358,381,381,359,381,381,381,381,381,381,381,380,380,380', 455 '380,380,380,365,380,129,129,369,380,371,380,380,22,380,380,380,380,380', 456 '380,380,196,196,196,196,196,196,14,196,382,32,387,196,389,196,196,390', 457 '196,196,196,196,196,196,196,197,197,197,197,197,197,12,197,137,137,393', 458 '197,397,197,197,185,197,197,197,197,197,197,197,3,381,184,32,182,32', 459 '32,32,32,32,32,32,32,32,32,32,178,2,32,32,32,32,32,177,380,32,72,72', 460 '72,72,72,72,72,72,72,72,72,130,130,72,72,72,72,72,175,170,157,196,156', 461 '32,32,32,32,32,32,32,32,2,150,2,2,2,2,2,2,2,2,2,2,2,197,148,2,2,2,2', 462 '2,146,2,2,198,198,198,198,198,198,144,198,142,136,135,198,134,198,198', 463 '133,198,198,198,198,198,198,198,2,2,2,2,2,2,2,2,215,379,379,379,379', 464 '379,379,231,379,232,234,235,379,236,379,379,238,379,379,379,379,379', 465 '379,379,160,94,54,240,264,241,160,94,54,242,264,244,111,160,94,54,379', 466 '264,379,379,379,379,379,379,379,379,379,379,379,379,105,379,379,379', 467 '379,379,104,98,198,379,97,379,379,379,379,91,379,379,379,379,379,379', 468 '115,278,115,281,115,115,115,296,,,379,379,379,379,379,379,379,379,379', 469 '171,171,171,171,171,171,,171,,,,171,,171,171,,171,171,171,171,171,171', 470 '171,,,378,378,378,378,378,378,,378,,,,378,,378,378,,378,378,378,378', 471 '378,378,378,76,4,74,,174,,76,4,74,,174,,,76,4,74,378,174,378,378,378', 472 '378,378,378,378,378,378,378,378,378,,378,378,378,378,378,,,,378,,378', 473 '378,378,378,171,378,378,378,378,378,378,294,294,294,294,131,131,131', 474 '131,,,378,378,378,378,378,378,378,378,378,361,361,361,361,361,361,,361', 475 ',,,361,,361,361,,361,361,361,361,361,361,361,218,293,293,293,293,,218', 476 ',,,,,,218,,,361,,361,361,361,361,361,361,361,361,361,361,361,361,,361', 477 '361,361,361,361,,,,361,,361,361,361,361,,361,361,361,361,361,361,,,', 478 ',,,,,,,361,361,361,361,361,361,361,361,361,199,199,199,199,199,199,', 479 '199,,,,199,,199,199,,199,199,199,199,199,199,199,350,350,350,350,350', 480 '350,,350,,,,350,,350,350,,350,350,350,350,350,350,350,346,346,346,346', 481 '346,346,,346,,,,346,,346,346,,346,346,346,346,346,346,346,191,191,191', 482 '191,191,191,,191,,,,191,,191,191,,191,191,191,191,191,191,191,,199,', 483 ',,,,,,200,200,200,200,200,200,,200,,,,200,,200,200,350,200,200,200,200', 484 '200,200,200,336,336,336,336,336,336,,336,,336,,336,,336,336,346,336', 485 '336,336,336,336,336,336,,,,,,,,323,323,323,323,323,323,,323,191,,,323', 486 ',323,323,,323,323,323,323,323,323,323,,,,,,,,,,,,,,,,,323,200,323,323', 487 '323,323,323,323,323,323,323,323,323,323,,323,323,323,323,323,,,,323', 488 '336,323,323,323,323,,323,323,323,323,323,323,,,,,,,,,,,323,323,323,323', 489 '323,323,323,323,323,321,321,321,321,321,321,,321,,,,321,,321,321,,321', 490 '321,321,321,321,321,321,,,,,,,,,,,,,,,,,321,,321,321,321,321,321,321', 491 '321,321,321,321,321,321,,321,321,321,321,321,,,,321,,321,321,321,321', 492 ',321,321,321,321,321,321,,,,,,,,,,,321,321,321,321,321,321,321,321,321', 493 '398,398,398,398,398,398,,398,,,,398,,398,398,,398,398,398,398,398,398', 494 '398,,,,,,,,,,,,,,,,,398,,398,398,398,398,398,398,398,398,398,398,398', 495 '398,,398,398,398,398,398,,,,398,,398,398,398,398,,398,398,398,398,398', 496 '398,,,,,,,,,,,398,398,398,398,398,398,398,398,398,320,320,320,320,320', 497 '320,,320,,,,320,,320,320,,320,320,320,320,320,320,320,319,319,319,319', 498 '319,319,,319,,,,319,,319,319,,319,319,319,319,319,319,319,77,77,77,77', 499 '77,77,,77,,,,77,,77,77,,77,77,77,77,77,77,77,317,317,317,317,317,317', 500 ',317,,,,317,,317,317,,317,317,317,317,317,317,317,,320,,,,,77,,,,,,', 501 '77,82,82,82,82,82,82,,82,,82,319,82,,82,82,,82,82,82,82,82,82,82,183', 502 '183,183,183,183,183,,183,,,77,183,,183,183,,183,183,183,183,183,183', 503 '183,316,316,316,316,316,316,,316,,,317,316,,316,316,,316,316,316,316', 504 '316,316,316,304,304,304,304,304,304,,304,,,,304,,304,304,,304,304,304', 505 '304,304,304,304,,82,,,,,,,,201,201,201,201,201,201,,201,,,,201,,201', 506 '201,183,201,201,201,201,201,201,201,202,202,202,202,202,202,,202,,,', 507 '202,,202,202,316,202,202,202,202,202,202,202,302,302,302,302,302,302', 508 ',302,,,,302,,302,302,304,302,302,302,302,302,302,302,277,277,277,277', 509 '277,277,,277,,,,277,,277,277,,277,277,277,277,277,277,277,,201,,,,,302', 510 '302,,,,,,302,203,203,203,203,203,203,,203,,,202,203,,203,203,,203,203', 511 '203,203,203,203,203,209,209,209,209,209,209,,209,,,302,209,,209,209', 512 ',209,209,209,209,209,209,209,212,212,212,212,212,212,,212,,,277,212', 513 ',212,212,,212,212,212,212,212,212,212,204,204,204,204,204,204,,204,', 514 ',,204,,204,204,,204,204,204,204,204,204,204,,203,,,,,,,,271,271,271', 515 '271,271,271,,271,,,,271,,271,271,209,271,271,271,271,271,271,271,205', 516 '205,205,205,205,205,,205,,,,205,,205,205,212,205,205,205,205,205,205', 517 '205,206,206,206,206,206,206,,206,,,,206,,206,206,204,206,206,206,206', 518 '206,206,206,,,,,,,,,,145,145,145,145,145,145,,145,,,,145,,145,145,271', 519 '145,145,145,145,145,145,145,,,,,,,,,,,,,,,,205,145,,145,145,145,145', 520 '145,145,145,145,145,145,145,145,145,145,145,145,145,145,,,206,145,,145', 521 '145,145,145,,145,145,145,145,145,145,,,,,,,,,,,145,145,145,145,145,145', 522 '145,145,145,253,253,253,253,253,253,,253,,253,,253,,253,253,,253,253', 523 '253,253,253,253,253,112,112,112,112,112,112,,112,,,,112,,112,112,,112', 524 '112,112,112,112,112,112,38,38,38,38,38,38,38,38,38,38,38,,,38,38,38', 525 '38,38,112,112,112,112,112,112,112,112,112,112,112,,,112,112,112,112', 526 '112,,207,207,207,207,207,207,,207,,,253,207,,207,207,,207,207,207,207', 527 '207,207,207,208,208,208,208,208,208,,208,,,112,208,,208,208,,208,208', 528 '208,208,208,208,208,116,116,116,116,116,116,,116,,,,116,,116,116,,116', 529 '116,116,116,116,116,116,117,117,117,117,117,117,,117,,,,117,,117,117', 530 ',117,117,117,117,117,117,117,,207,,,,,,,,118,118,118,118,118,118,,118', 531 ',,,118,,118,118,208,118,118,118,118,118,118,118,119,119,119,119,119', 532 '119,,119,,,,119,,119,119,116,119,119,119,119,119,119,119,141,141,141', 533 '141,141,141,,141,,,,141,,141,141,117,141,141,141,141,141,141,141,243', 534 '243,243,243,243,243,,243,,,,243,,243,243,,243,243,243,243,243,243,243', 535 ',118,,,,,141,,,,,,,141,,,243,,237,237,237,237,237,237,119,237,,,,237', 536 ',237,237,,237,237,237,237,237,237,237,,,,,,,141,,,,,,,,,,,233,233,233', 537 '233,233,233,,233,,,,233,243,233,233,,233,233,233,233,233,233,233,,,', 538 ',,,,,,,,,,,,,233,,233,233,233,233,233,233,233,233,233,233,233,233,237', 539 '233,233,233,233,233,,,,233,,233,233,233,233,,233,233,233,233,233,233', 540 ',,,,,,274,274,,274,233,233,233,233,233,233,233,233,233,274,,,,,249,249', 541 ',249,,,249,,,,,,,249,,,,,274,274,274,274,274,274,274,274,274,274,274', 542 ',,274,274,274,274,274,249,249,249,249,249,249,249,249,249,249,249,,', 543 '249,249,249,249,249,337,,,,,,,,274,274,274,274,274,274,274,274,,,83', 544 ',,,,,,,249,249,249,249,249,249,249,249,,337,337,337,337,337,337,337', 545 '337,337,337,337,,,337,337,337,337,337,83,83,83,83,83,83,83,83,83,83', 546 '83,,,83,83,83,83,83,,,,247,,,,,337,337,337,337,337,337,337,337,,,,,', 547 ',,,,,83,83,83,83,83,83,83,83,247,247,247,247,247,247,247,247,247,247', 548 '247,,,247,247,247,247,247,5,5,5,5,5,5,5,5,5,5,5,,,5,5,5,5,5,,,,,,,,', 549 '247,247,247,247,247,247,247,247,,,,,,,,,,,5,5,5,5,5,5,5,5,254,254,254', 550 '254,254,254,254,254,254,254,254,,254,254,254,254,254,254,92,92,92,92', 551 '92,92,92,92,92,92,92,,92,92,92,92,92,92,,,,,,,,,254,254,254,254,254', 552 '254,254,254,,,,,,,,,,,92,92,92,92,92,92,92,92,155,155,155,155,155,155', 553 '155,155,155,155,155,,,155,155,155,155,155,89,89,89,89,89,89,89,89,89', 554 '89,89,,,89,89,89,89,89,,,,,,,,,155,155,155,155,155,155,155,155,,,,,', 555 ',,,,,89,89,89,89,89,89,89,89,88,88,88,88,88,88,88,88,88,88,88,,,88,88', 556 '88,88,88,158,158,158,158,158,158,158,158,158,158,158,,158,158,158,158', 557 '158,158,,,,,,,,,88,88,88,88,88,88,88,88,,,,,,,,,,,158,158,158,158,158', 558 '158,158,158,67,67,67,67,67,67,67,67,67,67,67,,,67,67,67,67,67,161,161', 559 '161,161,161,161,161,161,161,161,161,,161,161,161,161,161,161,,,,,,,', 560 ',67,67,67,67,67,67,67,67,,,,,,,,,,,161,161,161,161,161,161,161,161,7', 561 '7,7,7,7,7,7,7,7,7,7,,,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,,,6,6,6,6,6,,', 562 ',,,,,,7,7,7,7,7,7,7,7,,,,,,,,,,,6,6,6,6,6,6,6,6,73,73,73,73,73,73,73', 563 '73,73,73,73,,,73,73,73,73,73' ] 564 racc_action_check = arr = ::Array.new(2875, nil) 461 '440,440,440,440,440,440,293,440,56,293,52,440,293,440,440,440,52,139', 462 '440,440,440,440,440,440,440,438,438,438,438,438,438,106,438,354,326', 463 '103,438,65,438,438,438,151,326,438,438,438,438,438,438,438,88,29,440', 464 '31,51,29,354,31,109,56,56,56,120,207,286,120,106,120,293,120,120,120', 465 '52,328,212,324,151,438,324,212,51,440,440,440,328,440,440,440,440,440', 466 '440,440,440,440,440,318,110,49,207,286,318,88,88,88,142,142,438,438', 467 '438,31,438,438,438,438,438,438,438,438,438,438,436,436,436,436,436,436', 468 '304,436,120,120,120,436,49,436,436,436,428,362,436,436,436,436,436,436', 469 '436,98,116,428,362,304,316,98,227,340,222,316,309,222,340,340,98,304', 470 '309,167,167,167,167,167,167,222,167,309,436,226,167,333,167,167,167', 471 '167,98,167,167,167,167,167,167,167,394,4,297,309,339,297,334,4,225,339', 472 '339,394,66,436,436,436,4,436,436,436,436,436,436,436,436,436,436,167', 473 '167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167', 474 '167,167,167,167,167,167,167,167,267,267,101,167,167,167,95,167,167,167', 475 '167,167,167,167,167,167,167,429,429,429,429,429,429,364,429,68,373,94', 476 '429,373,429,429,429,87,364,429,429,429,429,429,429,429,427,427,427,427', 477 '427,427,187,427,71,83,217,427,83,427,427,427,217,187,427,427,427,427', 478 '427,427,427,217,269,429,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75', 479 '75,75,133,53,221,426,53,133,133,427,418,418,291,429,429,429,426,429', 480 '429,429,429,429,429,429,429,429,429,137,137,350,220,136,136,136,136', 481 '214,214,351,427,427,427,220,427,427,427,427,427,427,427,427,427,427', 482 '175,175,175,175,175,175,363,175,215,215,352,175,353,175,175,175,218', 483 '363,175,175,175,175,175,175,175,76,76,76,76,76,76,76,76,76,76,76,76', 484 '76,76,76,76,76,425,82,82,82,82,82,82,274,82,357,175,425,82,283,82,82', 485 '82,82,73,82,82,82,82,82,82,82,72,201,347,347,347,347,209,201,348,348', 486 '348,348,365,175,175,175,201,175,175,175,175,175,175,175,175,175,175', 487 '82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82', 488 '82,82,82,349,349,198,82,82,82,197,82,82,82,82,82,82,82,82,82,82,273', 489 '273,273,273,273,273,371,273,135,135,189,273,374,273,273,273,346,346', 490 '273,273,273,273,273,273,273,404,404,404,404,404,404,376,404,345,345', 491 '79,404,186,404,404,404,79,184,404,404,404,404,404,404,404,79,380,273', 492 '47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,344,344,343,343,342', 493 '342,138,404,99,99,179,273,273,273,178,273,273,273,273,273,273,273,273', 494 '273,273,131,131,131,131,131,131,131,131,131,131,131,404,404,404,177', 495 '404,404,404,404,404,404,404,404,404,404,402,402,402,402,402,402,176', 496 '402,341,341,395,402,396,402,402,402,134,134,402,402,402,402,402,402', 497 '402,275,275,275,275,275,275,102,275,27,403,77,275,25,275,275,275,77', 498 '23,275,275,275,275,275,275,275,77,55,402,152,384,191,174,55,191,152', 499 '384,191,173,408,412,414,55,416,152,384,191,281,422,172,140,165,141,275', 500 '163,149,3,402,402,402,437,402,402,402,402,402,402,402,402,402,402,147', 501 '1,,,,,,,,,,275,275,275,,275,275,275,275,275,275,275,275,275,275,360', 502 '360,360,360,360,360,,360,,,,360,,360,360,360,,,360,360,360,360,360,360', 503 '360,249,249,249,249,249,249,,249,,,,249,,249,249,,,,249,249,249,249', 504 '249,249,249,,,360,383,383,383,383,383,383,,383,,,,383,,383,383,,,,383', 505 '383,383,383,383,383,383,,,,360,360,360,,360,360,360,360,360,360,360', 506 '360,360,360,,,,,,,377,377,377,377,377,377,,377,,377,,377,,377,377,,', 507 '249,377,377,377,377,377,377,377,,,,367,367,367,367,367,367,,367,,,,367', 508 ',367,367,,,383,367,367,367,367,367,367,367,366,366,366,366,366,366,', 509 '366,,,,366,,366,366,,,,366,366,366,366,366,366,366,,,367,,,,,,,,,,,', 510 ',377,,393,393,393,393,393,393,,393,,,366,393,,393,393,,,,393,393,393', 511 '393,393,393,393,,367,,,,,,,,356,356,356,356,356,356,,356,,,,356,,356', 512 '356,356,356,366,356,356,356,356,356,356,356,330,330,330,330,330,330', 513 ',330,,,,330,,330,330,,,,330,330,330,330,330,330,330,322,322,322,322', 514 '322,322,,322,,393,,322,,322,322,322,,,322,322,322,322,322,322,322,,', 515 ',356,,,310,310,310,310,310,310,,310,,,,310,356,310,310,,,,310,310,310', 516 '310,310,310,310,298,298,298,298,298,298,,298,,298,,298,330,298,298,', 517 ',,298,298,298,298,298,298,298,,,,,,,,,,,,,322,,,,,282,282,282,282,282', 518 '282,,282,,,,282,,282,282,,,,282,282,282,282,282,282,282,,310,,,,,,,', 519 ',,,,,,,,,,,,,,,,,298,282,282,282,282,282,282,282,282,282,282,282,282', 520 '282,282,282,282,282,282,282,282,282,282,282,282,282,282,280,280,280', 521 '280,280,280,,280,,,,280,,280,280,282,,,280,280,280,280,280,280,280,146', 522 '146,146,146,146,146,,146,,,,146,,146,146,146,,,146,146,146,146,146,146', 523 '146,278,278,278,278,278,278,,278,,,,278,,278,278,,,,278,278,278,278', 524 '278,278,278,,397,397,397,397,397,397,,397,,,,397,,397,397,,,280,397', 525 '397,397,397,397,397,397,,,146,,,405,405,405,405,405,405,,405,,,,405', 526 '146,405,405,,,,405,405,405,405,405,405,405,271,271,271,271,271,271,', 527 '271,,,,271,278,271,271,,,,271,271,271,271,271,271,271,,266,266,266,266', 528 '266,266,,266,,,,266,397,266,266,,,,266,266,266,266,266,266,266,80,80', 529 '80,80,80,80,,80,,,,80,,80,80,80,,405,80,80,80,80,80,80,80,406,406,406', 530 '406,406,406,406,406,,,,406,,406,406,,,271,406,406,406,406,406,406,406', 531 ',265,265,265,265,265,265,,265,,,,265,,265,265,,,266,265,265,265,265', 532 '265,265,265,,,80,,,85,85,85,85,85,85,,85,,85,,85,80,85,85,,,,85,85,85', 533 '85,85,85,85,264,264,264,264,264,264,,264,,,,264,406,264,264,,,,264,264', 534 '264,264,264,264,264,,263,263,263,263,263,263,,263,,,,263,265,263,263', 535 ',,,263,263,263,263,263,263,263,262,262,262,262,262,262,,262,,,,262,', 536 '262,262,,,85,262,262,262,262,262,262,262,261,261,261,261,261,261,,261', 537 ',,,261,,261,261,,,264,261,261,261,261,261,261,261,,260,260,260,260,260', 538 '260,,260,,,,260,,260,260,,,263,260,260,260,260,260,260,260,259,259,259', 539 '259,259,259,,259,,,,259,,259,259,,,262,259,259,259,259,259,259,259,258', 540 '258,258,258,258,258,,258,,,,258,,258,258,,,261,258,258,258,258,258,258', 541 '258,,257,257,257,257,257,257,,257,,,,257,,257,257,,,260,257,257,257', 542 '257,257,257,257,256,256,256,256,256,256,,256,,,,256,,256,256,,,259,256', 543 '256,256,256,256,256,256,255,255,255,255,255,255,,255,,,,255,,255,255', 544 ',,258,255,255,255,255,255,255,255,,254,254,254,254,254,254,,254,,,,254', 545 ',254,254,,,257,254,254,254,254,254,254,254,253,253,253,253,253,253,', 546 '253,,,,253,,253,253,,,256,253,253,253,253,253,253,253,252,252,252,252', 547 '252,252,,252,,,,252,,252,252,,,255,252,252,252,252,252,252,252,,251', 548 '251,251,251,251,251,,251,,,,251,,251,251,,,254,251,251,251,251,251,251', 549 '251,250,250,250,250,250,250,,250,,,,250,,250,250,,,253,250,250,250,250', 550 '250,250,250,389,389,389,389,389,389,,389,,,,389,,389,389,389,,252,389', 551 '389,389,389,389,389,389,,248,248,248,248,248,248,,248,,,,248,,248,248', 552 ',,251,248,248,248,248,248,248,248,,,,,,,,,,,,,,,,,,250,,,,,,,,,,389', 553 ',,117,117,117,117,117,117,,117,,,,117,389,117,117,,,,117,117,117,117', 554 '117,117,117,,236,236,236,236,236,236,,236,,,,236,248,236,236,,,,236', 555 '236,236,236,236,236,236,,,,,,,117,117,117,117,117,117,117,117,117,117', 556 '117,117,117,117,117,117,117,,,121,121,121,121,121,121,,121,,,,121,,121', 557 '121,,,117,121,121,121,121,121,121,121,,122,122,122,122,122,122,,122', 558 ',,,122,,122,122,,,236,122,122,122,122,122,122,122,123,123,123,123,123', 559 '123,,123,,,,123,,123,123,,,,123,123,123,123,123,123,123,124,124,124', 560 '124,124,124,,124,,,,124,,124,124,,,121,124,124,124,124,124,124,124,', 561 ',,,,,,,,,,,233,233,233,233,233,233,122,233,,,,233,,233,233,,,,233,233', 562 '233,233,233,233,233,223,223,223,223,223,223,123,223,,,,223,,223,223', 563 ',,,223,223,223,223,223,223,223,,,,,,,124,233,233,233,233,233,233,233', 564 '233,233,233,233,233,233,233,233,233,233,,,231,231,231,231,231,231,,231', 565 ',,,231,,231,231,,,233,231,231,231,231,231,231,231,224,224,224,224,224', 566 '224,224,224,,,,224,,224,224,,,223,224,224,224,224,224,224,224,,,,,,', 567 ',231,231,231,231,231,231,231,231,231,231,231,231,231,231,231,231,231', 568 ',,213,213,213,213,213,213,,213,,,,213,,213,213,,,231,213,213,213,213', 569 '213,213,213,210,210,210,210,210,210,,210,,,,210,,210,210,,,224,210,210', 570 '210,210,210,210,210,180,180,180,180,180,180,,180,,,,180,,180,180,,,', 571 '180,180,180,180,180,180,180,,407,407,407,407,407,407,407,407,,,,407', 572 ',407,407,,,213,407,407,407,407,407,407,407,,180,,,,435,435,435,435,435', 573 '435,,435,,,,435,210,435,435,435,435,,435,435,435,435,435,435,435,164', 574 '164,164,164,164,164,,164,,,,164,180,164,164,,,,164,164,164,164,164,164', 575 '164,,279,279,279,279,279,279,,279,,,,279,407,279,279,,,,279,279,279', 576 '279,279,279,279,,,435,,,,,,,,,,,,,,41,435,,,,,,,,,,,,,,,,,,,,,,,,,164', 577 ',,2,,,,,,,,,,,,,,,,,,,,,,,279,41,41,41,41,41,41,41,41,41,41,41,41,41', 578 '41,41,41,41,41,41,41,41,41,41,41,41,41,,,41,2,2,2,2,2,2,2,2,2,2,2,2', 579 '2,2,2,2,2,2,2,2,2,2,2,2,2,2,,2,2,294,294,,294,,,294,,,,,,,,,294,,,,', 580 ',,,,,325,325,,325,,,,,,,,,,,,325,,,,,,,,294,294,294,294,294,294,294', 581 '294,294,294,294,294,294,294,294,294,294,294,294,294,294,294,294,294', 582 '294,325,325,325,325,325,325,325,325,325,325,325,325,325,325,325,325', 583 '325,325,325,325,325,325,325,325,325,86,,,,,86,,,,,,,,,,,,,,,,,,,,378', 584 ',,,,,,,,,,,,,,,,,,,,,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86', 585 '86,86,86,86,86,86,86,86,86,378,378,378,378,378,378,378,378,378,378,378', 586 '378,378,378,378,378,378,378,378,378,378,378,378,378,378,292,7,7,7,7', 587 '7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,,,,,,96,,,,,,,,,,,,292,292', 588 '292,292,292,292,292,292,292,292,292,292,292,292,292,292,292,292,292', 589 '292,292,292,292,292,292,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96', 590 '96,96,96,96,96,96,96,96,96,96,202,,,,,,,,,,,,,,,,,,,,,,,,,299,,,,,,', 591 ',,,,,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202,202', 592 '202,202,202,202,202,202,202,202,202,299,299,299,299,299,299,299,299', 593 '299,299,299,299,299,299,299,299,299,299,299,299,299,299,299,299,299', 594 '199,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92', 595 '92,92,92,,,,,,,,,,,,199,199,199,199,199,199,199,199,199,199,199,199', 596 '199,199,199,199,199,199,199,199,199,199,199,199,199,8,8,8,8,8,8,8,8', 597 '8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,196,196,196,196,196,196,196,196,196', 598 '196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,6,6', 599 '6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5', 600 '5,5,5,5,5,5,5,5,5,5,5,5,5,5,93,93,93,93,93,93,93,93,93,93,93,93,93,93', 601 '93,93,93,93,93,93,93,93,93,93,93,69,69,69,69,69,69,69,69,69,69,69,69', 602 '69,69,69,69,69,69,69,69,69,69,69,69,69' ] 603 racc_action_check = arr = ::Array.new(3198, nil) 565 604 idx = 0 566 605 clist.each do |str| … … 572 611 573 612 racc_action_pointer = [ 574 nil, 150, 420, 404, 652, 2412, 2762, 2744, nil, nil, 575 nil, nil, 346, nil, 323, nil, nil, nil, nil, nil, 576 nil, nil, 337, nil, -5, nil, -7, nil, nil, nil, 577 nil, nil, 366, nil, nil, nil, nil, nil, 1848, nil, 578 nil, nil, nil, nil, nil, nil, nil, nil, 18, nil, 579 23, 162, 188, nil, 534, -8, nil, nil, nil, nil, 580 nil, nil, nil, 232, 227, nil, 204, 2674, nil, 233, 581 124, nil, 387, 2814, 653, nil, 651, 1303, nil, nil, 582 205, nil, 1363, 2342, 124, 72, nil, nil, 2604, 2552, 583 22, 543, 2482, nil, 533, 21, nil, 537, 563, nil, 584 nil, 88, nil, nil, 533, 474, nil, nil, nil, nil, 585 nil, 542, 1866, nil, 2, 581, 1972, 1995, 2027, 2050, 586 nil, nil, nil, nil, nil, nil, nil, nil, 275, 322, 587 414, 685, 45, 480, 461, 458, 456, 351, nil, nil, 588 nil, 2073, 485, nil, 477, 1749, 470, nil, 467, nil, 589 445, nil, 235, nil, nil, 2534, 411, 409, 2622, nil, 590 532, 2692, nil, nil, nil, nil, 74, nil, nil, nil, 591 436, 608, 51, nil, 655, 435, nil, 419, 412, nil, 592 206, 138, 401, 1386, 393, 383, nil, nil, nil, 51, 593 nil, 890, nil, nil, 161, 184, 356, 379, 482, 821, 594 922, 1464, 1487, 1570, 1639, 1694, 1717, 1926, 1949, 1593, 595 -2, 21, 1616, -7, nil, 506, nil, 4, 745, nil, 613 nil, 732, 2528, 716, 182, 3068, 3043, 2752, 2993, nil, 596 614 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 597 nil, 515, 517, 2177, 518, 519, 488, 2137, 491, nil, 598 529, 503, 507, 2096, 509, nil, nil, 2394, 204, 2271, 599 nil, nil, 217, 1843, 2464, nil, nil, nil, nil, 108, 600 nil, nil, nil, nil, 536, nil, nil, nil, nil, nil, 601 nil, 1671, nil, 145, 2253, 184, nil, 1533, 581, nil, 602 nil, 586, nil, nil, nil, 273, 224, 91, 105, 144, 603 225, 250, 269, 724, 681, 287, 579, -20, -5, -4, 604 10, nil, 1510, 72, 1432, nil, nil, nil, nil, nil, 605 nil, nil, nil, nil, nil, nil, 1409, 1326, 82, 1280, 606 1257, 1069, 133, 975, 153, nil, nil, 155, nil, nil, 607 216, nil, 22, 222, nil, 235, 945, 2324, nil, 260, 608 nil, nil, 234, nil, nil, nil, 867, 106, nil, nil, 609 844, nil, nil, nil, 253, 294, 310, 315, 283, 319, 610 nil, 727, nil, nil, nil, 329, nil, nil, nil, 334, 611 nil, 339, nil, nil, nil, nil, nil, nil, 633, 514, 612 333, 310, 296, nil, nil, nil, nil, 303, nil, 362, 613 332, nil, 216, 350, 115, nil, nil, 385, 1163, nil ] 615 nil, nil, nil, 624, nil, 619, nil, 656, nil, 38, 616 nil, 40, nil, nil, nil, nil, nil, nil, nil, nil, 617 nil, 2499, nil, nil, nil, nil, nil, 510, nil, 78, 618 nil, 37, 3, 322, nil, 680, -14, nil, nil, nil, 619 nil, nil, nil, nil, nil, 20, 183, nil, 249, 3118, 620 nil, 278, 429, 421, nil, 252, 344, 664, nil, 544, 621 1392, nil, 419, 285, nil, 1473, 2701, 266, 28, nil, 622 nil, nil, 2932, 3093, 214, 193, 2819, nil, 138, 576, 623 nil, 200, 654, 22, nil, nil, 12, nil, nil, 15, 624 1, nil, nil, nil, nil, nil, 137, 1959, nil, nil, 625 55, 2035, 2061, 2086, 2111, nil, nil, nil, nil, nil, 626 nil, 568, nil, 306, 629, 495, 326, 318, 571, -20, 627 672, 673, 64, nil, nil, nil, 1235, 724, nil, 702, 628 nil, 22, 682, nil, nil, nil, nil, nil, nil, nil, 629 nil, nil, nil, 672, 2431, 669, nil, 161, nil, nil, 630 nil, nil, 702, 691, 685, 376, 635, 612, 546, 542, 631 2350, nil, nil, nil, 547, nil, 545, 281, nil, 507, 632 nil, 684, nil, nil, nil, nil, 3018, 451, 447, 2968, 633 nil, 440, 2881, nil, nil, nil, nil, 44, nil, 410, 634 2325, nil, 61, 2300, 343, 368, nil, 286, 381, nil, 635 348, 322, 147, 2173, 2249, 189, 160, 139, nil, nil, 636 nil, 2224, nil, 2148, nil, nil, 1985, nil, nil, nil, 637 nil, nil, nil, nil, nil, nil, nil, nil, 1904, 779, 638 1853, 1828, 1802, 1777, 1752, 1726, 1701, 1676, 1650, 1625, 639 1600, 1574, 1549, 1524, 1498, 1443, 1367, 223, nil, 300, 640 nil, 1341, nil, 514, 385, 659, nil, nil, 1260, 2457, 641 1210, 619, 1132, 379, nil, nil, 45, nil, nil, nil, 642 nil, 325, 2794, -1, 2604, nil, nil, 183, 1090, 2906, 643 nil, nil, nil, nil, 107, nil, nil, nil, nil, 149, 644 1065, nil, nil, nil, nil, nil, 137, nil, 82, nil, 645 nil, nil, 1034, nil, 68, 2629, 23, nil, 65, nil, 646 1009, nil, nil, 167, 186, nil, nil, nil, nil, 170, 647 131, 621, 567, 559, 557, 520, 503, 417, 423, 464, 648 334, 326, 350, 351, 14, nil, 984, 421, nil, nil, 649 754, nil, 129, 376, 256, 451, 908, 883, nil, nil, 650 nil, 510, nil, 260, 520, nil, 539, 855, 2726, nil, 651 556, nil, nil, 807, 683, nil, nil, nil, nil, 1878, 652 nil, nil, nil, 950, 180, 629, 631, 1286, nil, nil, 653 nil, nil, 634, 653, 539, 1316, 1417, 2376, 687, nil, 654 nil, nil, 689, nil, 693, nil, 649, nil, 318, nil, 655 nil, nil, 622, nil, nil, 412, 323, 281, 128, 256, 656 nil, nil, nil, nil, nil, 2406, 118, 666, 23, nil, 657 -2, nil, nil, nil, nil, nil, nil ] 614 658 615 659 racc_action_default = [ 616 -176, -243, -1, -243, -243, -70, -71, -72, -80, -81, 617 -82, -83, -84, -85, -86, -87, -88, -89, -90, -91, 618 -92, -93, -96, -99, -243, -116, -243, -129, -134, -135, 619 -177, -178, -243, -180, -181, -184, -185, -186, -243, -232, 620 -233, -234, -235, -236, -237, -238, -239, 400, -243, -76, 621 -78, -243, -137, -139, -243, -145, -73, -84, -86, -74, 622 -75, -183, -182, -98, -243, -102, -115, -243, -119, -243, 623 -128, -179, -106, -108, -243, -69, -243, -243, -190, -191, 624 -136, -138, -243, -243, -243, -146, -147, -94, -243, -243, 625 -84, -85, -243, -117, -243, -243, -130, -132, -243, -107, 626 -109, -243, -188, -77, -78, -2, -3, -4, -5, -6, 627 -7, -8, -243, -10, -12, -23, -243, -243, -243, -243, 628 -29, -30, -31, -32, -33, -34, -35, -37, -41, -44, 629 -47, -52, -55, -57, -59, -61, -63, -65, -68, -79, 630 -170, -243, -243, -240, -243, -243, -243, -142, -243, -144, 631 -149, -151, -155, -140, -148, -243, -84, -85, -243, -100, 632 -243, -243, -122, -121, -114, -118, -243, -123, -125, -126, 633 -243, -243, -243, -187, -243, -243, -11, -243, -243, -67, 634 -156, -20, -243, -243, -243, -243, -18, -19, -24, -243, 635 -25, -243, -27, -28, -243, -243, -243, -243, -243, -243, 636 -243, -243, -243, -243, -243, -243, -243, -243, -243, -243, 637 -243, -243, -243, -243, -174, -243, -241, -35, -243, -192, 638 -193, -194, -195, -196, -197, -198, -199, -200, -201, -202, 639 -203, -243, -243, -243, -243, -243, -240, -243, -243, -213, 640 -243, -243, -243, -243, -243, -141, -143, -243, -158, -243, 641 -153, -154, -159, -243, -243, -105, -104, -97, -101, -243, 642 -110, -112, -113, -120, -243, -131, -133, -127, -189, -242, 643 -9, -243, -157, -158, -243, -243, -21, -20, -243, -16, 644 -17, -243, -38, -39, -40, -42, -43, -45, -46, -48, 645 -49, -50, -51, -53, -54, -56, -58, -60, -62, -64, 646 -243, -171, -243, -243, -243, -221, -222, -223, -224, -225, 647 -226, -227, -228, -229, -230, -231, -243, -243, -243, -243, 648 -243, -243, -243, -243, -243, -215, -216, -243, -218, -219, 649 -243, -152, -160, -243, -166, -243, -243, -243, -162, -243, 650 -95, -103, -243, -124, -36, -13, -243, -243, -15, -26, 651 -243, -172, -175, -173, -243, -243, -243, -243, -243, -243, 652 -210, -243, -212, -214, -217, -243, -161, -167, -164, -243, 653 -168, -243, -163, -111, -22, -14, -66, -220, -243, -243, 654 -243, -243, -243, -211, -150, -165, -169, -204, -206, -243, 655 -243, -209, -243, -243, -243, -205, -207, -243, -243, -208 ] 660 -215, -269, -1, -269, -269, -86, -88, -90, -92, -98, 661 -99, -100, -101, -102, -103, -104, -105, -106, -107, -108, 662 -109, -110, -111, -112, -113, -114, -115, -118, -121, -269, 663 -139, -269, -163, -164, -165, -166, -167, -168, -169, -216, 664 -217, -269, -219, -220, -223, -224, -225, -269, 447, -269, 665 -94, -96, -269, -171, -173, -269, -180, -87, -112, -114, 666 -89, -91, -93, -222, -221, -120, -269, -124, -138, -269, 667 -142, -269, -155, -158, -218, -130, -132, -269, -85, -269, 668 -269, -229, -269, -170, -172, -269, -269, -269, -181, -182, 669 -184, -116, -269, -269, -112, -113, -269, -140, -269, -269, 670 -159, -161, -269, -269, -129, -131, -269, -227, -95, -96, 671 -2, -3, -4, -5, -6, -7, -8, -269, -10, -12, 672 -25, -269, -269, -269, -269, -31, -32, -33, -34, -35, 673 -36, -37, -39, -43, -46, -49, -54, -57, -59, -61, 674 -63, -65, -67, -69, -97, -209, -269, -269, -265, -269, 675 -82, -269, -269, -230, -231, -232, -233, -234, -235, -236, 676 -237, -238, -239, -265, -269, -269, -243, -269, -245, -247, 677 -248, -249, -269, -269, -269, -269, -269, -269, -269, -269, 678 -269, -268, -37, -84, -269, -176, -269, -269, -179, -186, 679 -188, -192, -193, -174, -183, -185, -269, -112, -113, -269, 680 -122, -269, -269, -145, -144, -137, -141, -269, -146, -148, 681 -269, -151, -269, -269, -269, -269, -226, -269, -269, -11, 682 -269, -269, -195, -269, -269, -269, -269, -269, -19, -20, 683 -26, -269, -27, -269, -29, -30, -269, -71, -72, -73, 684 -74, -75, -76, -77, -78, -79, -80, -81, -269, -269, 685 -269, -269, -269, -269, -269, -269, -269, -269, -269, -269, 686 -269, -269, -269, -269, -269, -269, -269, -269, -213, -269, 687 -266, -269, -250, -269, -269, -269, -244, -246, -269, -269, 688 -269, -269, -269, -269, -261, -262, -269, -263, -175, -177, 689 -178, -269, -269, -197, -269, -190, -191, -198, -269, -269, 690 -128, -127, -119, -123, -269, -133, -135, -136, -143, -269, 691 -269, -149, -153, -160, -162, -152, -269, -156, -269, -228, 692 -267, -9, -269, -196, -197, -269, -269, -14, -269, -23, 693 -269, -17, -18, -269, -269, -70, -40, -41, -42, -44, 694 -45, -47, -48, -50, -51, -52, -53, -55, -56, -58, 695 -60, -62, -64, -66, -269, -210, -269, -269, -83, -240, 696 -269, -242, -269, -269, -269, -269, -269, -269, -260, -264, 697 -194, -269, -189, -199, -269, -205, -269, -269, -269, -201, 698 -269, -117, -125, -269, -269, -147, -150, -154, -157, -269, 699 -38, -13, -15, -269, -269, -28, -269, -269, -211, -214, 700 -212, -241, -269, -269, -269, -269, -269, -269, -269, -200, 701 -206, -203, -269, -207, -269, -202, -269, -134, -269, -24, 702 -16, -68, -251, -253, -254, -269, -269, -269, -269, -269, 703 -187, -204, -208, -126, -21, -269, -269, -269, -269, -256, 704 -269, -258, -22, -252, -255, -257, -259 ] 656 705 657 706 racc_goto_table = [ 658 50, 4, 177, 146, 56, 59, 60, 190, 192, 193, 659 148, 86, 139, 138, 260, 80, 167, 188, 138, 158, 660 275, 258, 178, 35, 31, 165, 332, 73, 12, 74, 661 14, 4, 287, 288, 91, 217, 95, 293, 294, 251, 662 304, 154, 219, 2, 85, 295, 92, 285, 286, 296, 663 72, 332, 297, 35, 71, 157, 91, 298, 12, 91, 664 14, 73, 73, 99, 100, 172, 94, 272, 161, 299, 665 102, 276, 104, 278, 103, 63, 214, 138, 155, 177, 666 64, 177, 152, 259, 72, 72, 254, 160, 94, 66, 667 168, 94, 266, 90, 165, 282, 283, 284, 166, 281, 668 265, 73, 300, 182, 331, 213, 30, 138, 248, 289, 669 290, 291, 292, 101, 156, 90, 347, 258, 90, 78, 670 145, 1, 157, 217, 72, 157, nil, nil, 91, nil, 671 318, nil, nil, 327, nil, nil, 273, nil, nil, nil, 672 nil, nil, nil, nil, nil, nil, nil, nil, 250, nil, 673 nil, nil, nil, nil, 160, nil, 261, 160, 322, nil, 674 94, nil, nil, nil, nil, nil, nil, 276, nil, nil, 675 268, nil, 344, 138, 339, nil, nil, nil, 73, nil, 676 nil, 156, nil, nil, 156, nil, 343, 90, nil, 138, 677 nil, nil, nil, nil, 354, nil, 373, nil, nil, nil, 678 nil, 72, nil, nil, nil, 248, 355, 356, nil, 358, 679 359, 217, 80, 217, 104, nil, nil, nil, 360, nil, 680 362, 157, nil, nil, nil, nil, nil, nil, nil, nil, 681 273, nil, nil, nil, nil, nil, 374, 352, 138, nil, 682 nil, nil, nil, nil, nil, nil, 152, nil, 152, nil, 683 nil, 217, nil, 160, nil, nil, nil, 369, 383, nil, 684 168, nil, nil, nil, 371, nil, nil, nil, 217, 217, 685 389, 390, 138, 152, nil, 387, 388, nil, nil, nil, 686 156, nil, 217, nil, 397, nil, 376, nil, 217, 395, 687 nil, nil, nil, nil, nil, 399, nil, nil, nil, nil, 707 51, 144, 145, 81, 183, 182, 184, 281, 186, 23, 708 267, 95, 208, 83, 206, 305, 303, 313, 328, 169, 709 25, 4, 199, 230, 57, 60, 61, 62, 75, 89, 710 40, 99, 168, 221, 198, 95, 296, 77, 95, 220, 711 373, 182, 232, 234, 235, 65, 96, 207, 23, 76, 712 304, 366, 343, 344, 345, 346, 75, 75, 90, 25, 713 4, 194, 214, 215, 66, 104, 105, 323, 145, 74, 714 202, 373, 196, 107, 68, 109, 94, 76, 76, 347, 715 348, 339, 340, 183, 182, 274, 341, 342, 98, 108, 716 195, 236, 187, 88, 209, 372, 353, 352, 75, 197, 717 94, 152, 286, 94, 169, 359, 39, 361, 351, 106, 718 350, 201, 98, 349, 2, 98, 303, 277, 167, 76, 719 206, 313, 225, 313, 394, 1, 299, nil, nil, 183, 720 182, 311, 183, 182, 314, 406, 407, nil, 198, nil, 721 nil, 198, nil, nil, 95, 326, 329, 333, 109, 334, 722 336, 337, 338, 220, nil, 220, nil, nil, 335, nil, 723 nil, nil, nil, nil, 293, nil, nil, nil, 182, 182, 724 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 725 182, 182, 182, 182, 182, 182, 152, 295, 354, nil, 726 nil, nil, 401, 358, nil, 324, nil, 306, 417, nil, 727 362, 363, 364, 197, nil, nil, 197, nil, nil, 94, 728 nil, nil, 75, 319, 75, 201, nil, nil, 201, 367, 729 380, 98, nil, 385, 390, nil, nil, nil, nil, 183, 730 182, 386, nil, 76, 422, 76, 424, nil, nil, nil, 731 nil, 198, 182, nil, nil, nil, nil, nil, nil, nil, 732 nil, nil, 329, 418, 83, nil, nil, nil, nil, 439, 733 nil, 441, nil, nil, nil, nil, nil, 293, 443, nil, 734 445, nil, 446, nil, nil, nil, nil, 399, 145, nil, 735 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 736 nil, nil, nil, nil, nil, nil, nil, nil, 324, 412, 737 414, 152, 183, 182, 416, 209, 197, nil, nil, nil, 738 nil, 145, nil, nil, nil, 419, 421, 182, 201, nil, 739 nil, nil, nil, nil, nil, nil, nil, 425, 426, 428, 688 740 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 689 741 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 690 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 691 nil, nil, nil, nil, nil, nil, 152, nil, 261 ] 692 693 racc_goto_check = [ 694 32, 27, 6, 25, 27, 27, 27, 10, 10, 10, 695 57, 55, 33, 24, 45, 56, 51, 12, 24, 39, 696 8, 42, 13, 26, 64, 49, 61, 9, 34, 44, 697 36, 27, 15, 15, 35, 10, 53, 17, 17, 60, 698 79, 55, 70, 2, 9, 18, 48, 14, 14, 19, 699 30, 61, 20, 26, 64, 35, 35, 21, 34, 35, 700 36, 9, 9, 44, 44, 53, 27, 60, 48, 22, 701 32, 6, 32, 6, 31, 38, 33, 24, 40, 6, 702 41, 6, 27, 43, 30, 30, 39, 27, 27, 47, 703 32, 27, 25, 34, 49, 12, 12, 12, 50, 13, 704 54, 9, 6, 9, 59, 62, 63, 24, 55, 16, 705 16, 16, 16, 67, 34, 34, 8, 42, 34, 68, 706 69, 1, 35, 10, 30, 35, nil, nil, 35, nil, 707 70, nil, nil, 6, nil, nil, 55, nil, nil, nil, 708 nil, nil, nil, nil, nil, nil, nil, nil, 32, nil, 709 nil, nil, nil, nil, 27, nil, 32, 27, 25, nil, 710 27, nil, nil, nil, nil, nil, nil, 6, nil, nil, 711 32, nil, 12, 24, 25, nil, nil, nil, 9, nil, 712 nil, 34, nil, nil, 34, nil, 51, 34, nil, 24, 713 nil, nil, nil, nil, 6, nil, 45, nil, nil, nil, 714 nil, 30, nil, nil, nil, 55, 6, 6, nil, 6, 715 6, 10, 56, 10, 32, nil, nil, nil, 70, nil, 716 70, 35, nil, nil, nil, nil, nil, nil, nil, nil, 717 55, nil, nil, nil, nil, nil, 6, 33, 24, nil, 718 nil, nil, nil, nil, nil, nil, 27, nil, 27, nil, 719 nil, 10, nil, 27, nil, nil, nil, 25, 70, nil, 720 32, nil, nil, nil, 57, nil, nil, nil, 10, 10, 721 6, 6, 24, 27, nil, 70, 70, nil, nil, nil, 722 34, nil, 10, nil, 6, nil, 24, nil, 10, 70, 723 nil, nil, nil, nil, nil, 70, nil, nil, nil, nil, 742 nil, nil, nil, nil, nil, 423, 399, 145, nil, nil, 724 743 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 725 744 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 745 306 ] 746 747 racc_goto_check = [ 748 36, 37, 12, 72, 26, 13, 28, 73, 60, 38, 749 11, 39, 55, 59, 53, 49, 46, 57, 8, 29, 750 40, 30, 43, 15, 30, 30, 30, 30, 33, 58, 751 68, 56, 84, 10, 39, 39, 65, 48, 39, 6, 752 66, 13, 13, 13, 13, 42, 52, 54, 38, 9, 753 47, 75, 18, 18, 18, 18, 33, 33, 9, 40, 754 30, 58, 56, 56, 45, 48, 48, 65, 12, 68, 755 52, 66, 44, 36, 51, 36, 38, 9, 9, 19, 756 19, 16, 16, 26, 13, 28, 17, 17, 30, 35, 757 9, 27, 61, 62, 36, 64, 24, 23, 33, 38, 758 38, 30, 6, 38, 29, 73, 67, 73, 22, 71, 759 21, 30, 30, 20, 2, 30, 46, 84, 83, 9, 760 53, 57, 9, 57, 8, 1, 43, nil, nil, 26, 761 13, 28, 26, 13, 28, 75, 75, nil, 39, nil, 762 nil, 39, nil, nil, 39, 6, 12, 10, 36, 10, 763 15, 15, 15, 6, nil, 6, nil, nil, 12, nil, 764 nil, nil, nil, nil, 58, nil, nil, nil, 13, 13, 765 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 766 13, 13, 13, 13, 13, 13, 30, 36, 6, nil, 767 nil, nil, 73, 12, nil, 58, nil, 36, 49, nil, 768 6, 6, 6, 38, nil, nil, 38, nil, nil, 38, 769 nil, nil, 33, 36, 33, 30, nil, nil, 30, 29, 770 12, 30, nil, 55, 15, nil, nil, nil, nil, 26, 771 13, 28, nil, 9, 73, 9, 73, nil, nil, nil, 772 nil, 39, 13, nil, nil, nil, nil, nil, nil, nil, 773 nil, nil, 12, 11, 59, nil, nil, nil, nil, 73, 774 nil, 73, nil, nil, nil, nil, nil, 58, 73, nil, 775 73, nil, 73, nil, nil, nil, nil, 37, 12, nil, 726 776 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 727 nil, nil, nil, nil, nil, nil, 27, nil, 32 ] 777 nil, nil, nil, nil, nil, nil, nil, nil, 58, 12, 778 60, 30, 26, 13, 28, 36, 38, nil, nil, nil, 779 nil, 12, nil, nil, nil, 12, 26, 13, 30, nil, 780 nil, nil, nil, nil, nil, nil, nil, 6, 6, 6, 781 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 782 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 783 nil, nil, nil, nil, nil, 72, 37, 12, nil, nil, 784 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 785 nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 786 36 ] 728 787 729 788 racc_goto_pointer = [ 730 nil, 121, 43, nil, nil, nil, -110, nil, -161, -11, 731 -110, nil, -99, -90, -150, -167, -92, -168, -162, -159, 732 -157, -153, -142, nil, -64, -79, 21, -1, nil, nil, 733 12, -2, -4, -65, 26, -33, 28, nil, 53, -69, 734 -9, 58, -137, -77, -9, -146, nil, 65, -21, -67, 735 4, -78, nil, -33, -70, -44, -36, -73, nil, -143, 736 -113, -222, -36, 104, 22, nil, nil, 39, 69, 41, 737 -103, nil, nil, nil, nil, nil, nil, nil, nil, -177 ] 789 nil, 125, 114, nil, nil, nil, -78, nil, -206, 2, 790 -84, -136, -78, -80, nil, -98, -170, -167, -203, -180, 791 -148, -152, -155, -167, -169, nil, -81, -40, -79, -63, 792 19, nil, nil, -19, nil, 10, -4, -79, 7, -58, 793 18, nil, 18, -70, -19, 37, -183, -151, -10, -186, 794 nil, 45, -23, -82, -51, -86, -40, -195, -27, -39, 795 -78, 6, 37, nil, -197, -155, -253, 104, 28, nil, 796 nil, 32, -48, -168, nil, -231, nil, nil, nil, nil, 797 nil, nil, nil, 36, -50 ] 738 798 739 799 racc_goto_default = [ 740 nil, nil, nil, 114, 105, 111, 244, 115, nil, 7, 741 126, 116, 127, nil, 128, 129, 130, 131, 132, 133, 742 134, 135, 136, 137, 179, 140, 220, 218, 48, 5, 743 6, 49, 84, nil, 57, 13, 58, 22, nil, nil, 744 nil, nil, 159, nil, 180, nil, 24, nil, nil, 93, 745 nil, nil, 26, nil, 96, 51, 52, 335, 150, 151, 746 333, 252, nil, nil, nil, 33, 34, nil, 227, nil, 747 nil, 221, 222, 223, 224, 225, 226, 228, 229, nil ] 800 nil, nil, nil, 119, 110, 116, 151, 120, nil, 7, 801 nil, nil, 150, 131, 121, 132, 133, 134, 135, 136, 802 137, 138, 139, 140, 141, 142, 143, nil, nil, 44, 803 191, 49, 5, 6, 8, 50, 87, 268, 58, 24, 804 59, 27, nil, nil, nil, nil, 200, nil, 222, nil, 805 29, nil, nil, 97, nil, nil, nil, 100, 52, 53, 806 376, nil, nil, 189, 190, 374, 297, nil, nil, 42, 807 43, nil, 154, 170, 153, 155, 156, 157, 158, 159, 808 160, 161, 162, nil, nil ] 748 809 749 810 racc_reduce_table = [ 750 811 0, 0, :racc_error, 751 1, 97, :_reduce_none, 752 1, 99, :_reduce_2, 753 1, 99, :_reduce_3, 754 1, 99, :_reduce_4, 755 1, 99, :_reduce_5, 756 1, 99, :_reduce_6, 757 1, 99, :_reduce_7, 758 1, 99, :_reduce_8, 759 3, 99, :_reduce_9, 760 1, 101, :_reduce_10, 761 2, 101, :_reduce_11, 762 1, 103, :_reduce_none, 763 4, 103, :_reduce_none, 764 5, 103, :_reduce_none, 765 4, 103, :_reduce_15, 766 3, 103, :_reduce_16, 767 3, 103, :_reduce_17, 768 2, 103, :_reduce_18, 769 2, 103, :_reduce_19, 770 0, 104, :_reduce_none, 812 1, 98, :_reduce_none, 813 1, 100, :_reduce_2, 814 1, 100, :_reduce_3, 815 1, 100, :_reduce_4, 816 1, 100, :_reduce_5, 817 1, 100, :_reduce_6, 818 1, 100, :_reduce_7, 819 1, 100, :_reduce_8, 820 3, 100, :_reduce_9, 821 1, 102, :_reduce_10, 822 2, 102, :_reduce_11, 771 823 1, 104, :_reduce_none, 824 4, 104, :_reduce_13, 772 825 3, 104, :_reduce_none, 773 1, 106, :_reduce_none, 774 2, 106, :_reduce_24, 775 2, 106, :_reduce_25, 776 4, 106, :_reduce_26, 777 2, 106, :_reduce_27, 778 2, 106, :_reduce_28, 779 1, 107, :_reduce_29, 780 1, 107, :_reduce_30, 781 1, 107, :_reduce_31, 782 1, 107, :_reduce_32, 783 1, 107, :_reduce_33, 784 1, 107, :_reduce_34, 785 1, 108, :_reduce_none, 786 4, 108, :_reduce_36, 826 4, 104, :_reduce_none, 827 5, 104, :_reduce_none, 828 3, 104, :_reduce_17, 829 3, 104, :_reduce_18, 830 2, 104, :_reduce_19, 831 2, 104, :_reduce_20, 832 6, 104, :_reduce_none, 833 7, 104, :_reduce_none, 834 1, 105, :_reduce_none, 835 3, 105, :_reduce_none, 787 836 1, 110, :_reduce_none, 788 3, 110, :_reduce_38, 789 3, 110, :_reduce_39, 790 3, 110, :_reduce_40, 791 1, 111, :_reduce_none, 792 3, 111, :_reduce_42, 793 3, 111, :_reduce_43, 837 2, 110, :_reduce_26, 838 2, 110, :_reduce_27, 839 4, 110, :_reduce_28, 840 2, 110, :_reduce_29, 841 2, 110, :_reduce_30, 842 1, 111, :_reduce_31, 843 1, 111, :_reduce_32, 844 1, 111, :_reduce_33, 845 1, 111, :_reduce_34, 846 1, 111, :_reduce_35, 847 1, 111, :_reduce_36, 794 848 1, 112, :_reduce_none, 795 3, 112, :_reduce_45, 796 3, 112, :_reduce_46, 849 4, 112, :_reduce_38, 797 850 1, 113, :_reduce_none, 798 3, 113, :_reduce_48, 799 3, 113, :_reduce_49, 800 3, 113, :_reduce_50, 801 3, 113, :_reduce_51, 851 3, 113, :_reduce_40, 852 3, 113, :_reduce_41, 853 3, 113, :_reduce_42, 802 854 1, 114, :_reduce_none, 803 3, 114, :_reduce_ 53,804 3, 114, :_reduce_ 54,855 3, 114, :_reduce_44, 856 3, 114, :_reduce_45, 805 857 1, 115, :_reduce_none, 806 3, 115, :_reduce_56, 858 3, 115, :_reduce_47, 859 3, 115, :_reduce_48, 807 860 1, 116, :_reduce_none, 808 3, 116, :_reduce_58, 861 3, 116, :_reduce_50, 862 3, 116, :_reduce_51, 863 3, 116, :_reduce_52, 864 3, 116, :_reduce_53, 809 865 1, 117, :_reduce_none, 810 3, 117, :_reduce_60, 866 3, 117, :_reduce_55, 867 3, 117, :_reduce_56, 811 868 1, 118, :_reduce_none, 812 3, 118, :_reduce_ 62,869 3, 118, :_reduce_58, 813 870 1, 119, :_reduce_none, 814 3, 119, :_reduce_6 4,871 3, 119, :_reduce_60, 815 872 1, 120, :_reduce_none, 816 5, 120, :_reduce_66,817 1, 1 02, :_reduce_67,818 1, 121, :_reduce_68,819 3, 122, :_reduce_none,820 1, 123, :_reduce_70,873 3, 120, :_reduce_62, 874 1, 121, :_reduce_none, 875 3, 121, :_reduce_64, 876 1, 122, :_reduce_none, 877 3, 122, :_reduce_66, 821 878 1, 123, :_reduce_none, 822 1, 123, :_reduce_72, 823 2, 123, :_reduce_73, 824 2, 123, :_reduce_74, 825 2, 123, :_reduce_75, 826 1, 124, :_reduce_76, 827 3, 124, :_reduce_77, 879 5, 123, :_reduce_68, 880 1, 109, :_reduce_none, 881 3, 109, :_reduce_none, 882 1, 124, :_reduce_none, 883 1, 124, :_reduce_none, 884 1, 124, :_reduce_none, 885 1, 124, :_reduce_none, 886 1, 124, :_reduce_none, 887 1, 124, :_reduce_none, 888 1, 124, :_reduce_none, 889 1, 124, :_reduce_none, 890 1, 124, :_reduce_none, 891 1, 124, :_reduce_none, 892 1, 124, :_reduce_none, 893 1, 103, :_reduce_82, 894 3, 103, :_reduce_83, 895 1, 125, :_reduce_84, 896 3, 126, :_reduce_none, 897 1, 127, :_reduce_86, 898 2, 127, :_reduce_87, 828 899 1, 127, :_reduce_none, 829 3, 127, :_reduce_79, 830 1, 126, :_reduce_80, 831 1, 126, :_reduce_81, 832 1, 126, :_reduce_82, 833 1, 126, :_reduce_83, 834 1, 126, :_reduce_84, 835 1, 126, :_reduce_85, 836 1, 126, :_reduce_86, 837 1, 126, :_reduce_87, 838 1, 126, :_reduce_88, 839 1, 126, :_reduce_89, 840 1, 126, :_reduce_90, 841 1, 126, :_reduce_91, 842 1, 126, :_reduce_92, 843 1, 126, :_reduce_93, 844 0, 136, :_reduce_94, 845 6, 130, :_reduce_95, 846 0, 137, :_reduce_96, 847 5, 130, :_reduce_97, 848 2, 130, :_reduce_98, 849 1, 133, :_reduce_99, 850 1, 135, :_reduce_none, 851 2, 135, :_reduce_none, 852 1, 134, :_reduce_102, 853 3, 138, :_reduce_103, 854 2, 138, :_reduce_none, 855 2, 138, :_reduce_none, 900 2, 127, :_reduce_89, 901 1, 127, :_reduce_90, 902 2, 127, :_reduce_91, 903 1, 127, :_reduce_none, 904 2, 127, :_reduce_none, 905 1, 128, :_reduce_94, 906 3, 128, :_reduce_95, 907 1, 132, :_reduce_none, 908 3, 132, :_reduce_97, 909 1, 129, :_reduce_none, 910 1, 129, :_reduce_none, 911 1, 129, :_reduce_none, 912 1, 129, :_reduce_none, 913 1, 130, :_reduce_102, 914 1, 130, :_reduce_103, 915 1, 130, :_reduce_104, 916 1, 130, :_reduce_105, 917 1, 130, :_reduce_106, 918 1, 130, :_reduce_107, 919 1, 130, :_reduce_108, 920 1, 130, :_reduce_109, 921 1, 130, :_reduce_110, 922 1, 130, :_reduce_111, 923 1, 130, :_reduce_112, 924 1, 130, :_reduce_113, 925 1, 130, :_reduce_114, 926 1, 130, :_reduce_115, 927 0, 141, :_reduce_116, 928 6, 135, :_reduce_117, 929 0, 142, :_reduce_118, 930 5, 135, :_reduce_119, 931 2, 135, :_reduce_120, 932 1, 138, :_reduce_121, 856 933 1, 140, :_reduce_none, 857 2, 140, :_reduce_107, 858 1, 140, :_reduce_108, 859 2, 140, :_reduce_109, 860 1, 139, :_reduce_110, 861 3, 139, :_reduce_111, 862 1, 141, :_reduce_none, 863 5, 131, :_reduce_none, 864 4, 131, :_reduce_none, 865 2, 131, :_reduce_none, 866 1, 142, :_reduce_116, 867 1, 144, :_reduce_none, 868 2, 144, :_reduce_none, 869 1, 143, :_reduce_none, 870 3, 145, :_reduce_none, 871 2, 145, :_reduce_none, 872 2, 145, :_reduce_none, 934 2, 140, :_reduce_none, 935 1, 139, :_reduce_124, 936 3, 143, :_reduce_125, 937 5, 143, :_reduce_126, 938 2, 143, :_reduce_none, 939 2, 143, :_reduce_none, 940 2, 145, :_reduce_129, 941 1, 145, :_reduce_none, 942 2, 145, :_reduce_131, 943 1, 145, :_reduce_132, 944 1, 144, :_reduce_133, 945 3, 144, :_reduce_134, 873 946 1, 146, :_reduce_none, 874 3, 146, :_reduce_none, 875 1, 147, :_reduce_none, 876 4, 132, :_reduce_none, 877 5, 132, :_reduce_none, 878 2, 132, :_reduce_none, 879 1, 148, :_reduce_129, 947 5, 136, :_reduce_none, 948 4, 136, :_reduce_none, 949 2, 136, :_reduce_none, 950 1, 147, :_reduce_139, 880 951 1, 149, :_reduce_none, 881 3, 149, :_reduce_none,882 1, 1 50, :_reduce_none,952 2, 149, :_reduce_none, 953 1, 148, :_reduce_none, 883 954 3, 150, :_reduce_none, 884 1, 105, :_reduce_134,885 1, 105, :_reduce_135,886 2, 128, :_reduce_136,887 1, 128, :_reduce_none,888 2, 128, :_reduce_138,889 1, 152, :_reduce_139,890 3, 152, :_reduce_ 140,891 4, 1 52, :_reduce_141,892 3, 152, :_reduce_142,893 4, 152, :_reduce_143,894 3, 152, :_reduce_144,895 1, 151, :_reduce_145,896 2, 151, :_reduce_146,897 2, 151, :_reduce_147,898 3, 151, :_reduce_148,955 2, 150, :_reduce_none, 956 2, 150, :_reduce_none, 957 1, 151, :_reduce_none, 958 3, 151, :_reduce_none, 959 1, 152, :_reduce_none, 960 2, 152, :_reduce_none, 961 3, 152, :_reduce_none, 962 4, 137, :_reduce_none, 963 5, 137, :_reduce_none, 964 5, 137, :_reduce_none, 965 6, 137, :_reduce_none, 966 2, 137, :_reduce_none, 967 5, 137, :_reduce_none, 968 6, 137, :_reduce_none, 969 2, 137, :_reduce_none, 899 970 1, 153, :_reduce_none, 900 5, 153, :_reduce_none,971 3, 153, :_reduce_none, 901 972 1, 154, :_reduce_none, 902 973 3, 154, :_reduce_none, 903 2, 155, :_reduce_none, 904 2, 155, :_reduce_none, 905 1, 155, :_reduce_none, 906 1, 109, :_reduce_none, 907 2, 109, :_reduce_none, 908 1, 156, :_reduce_none, 909 1, 156, :_reduce_none, 910 2, 156, :_reduce_none, 911 3, 157, :_reduce_none, 912 2, 157, :_reduce_none, 913 3, 157, :_reduce_none, 914 3, 157, :_reduce_none, 915 4, 157, :_reduce_none, 916 2, 157, :_reduce_166, 917 3, 157, :_reduce_none, 918 3, 157, :_reduce_168, 919 4, 157, :_reduce_none, 920 1, 129, :_reduce_170, 921 3, 129, :_reduce_171, 922 4, 129, :_reduce_172, 923 4, 129, :_reduce_173, 924 1, 158, :_reduce_174, 925 3, 158, :_reduce_175, 926 0, 98, :_reduce_none, 927 2, 98, :_reduce_none, 974 1, 106, :_reduce_163, 975 1, 106, :_reduce_none, 976 1, 106, :_reduce_165, 977 1, 131, :_reduce_none, 978 1, 131, :_reduce_none, 979 1, 131, :_reduce_none, 980 1, 131, :_reduce_none, 981 2, 133, :_reduce_170, 982 1, 133, :_reduce_none, 983 2, 133, :_reduce_172, 984 1, 156, :_reduce_173, 985 3, 156, :_reduce_174, 986 4, 156, :_reduce_175, 987 3, 156, :_reduce_176, 988 4, 156, :_reduce_177, 989 4, 156, :_reduce_none, 990 3, 156, :_reduce_179, 991 1, 155, :_reduce_180, 992 2, 155, :_reduce_181, 993 2, 155, :_reduce_182, 994 3, 155, :_reduce_183, 928 995 1, 159, :_reduce_none, 929 996 2, 159, :_reduce_none, 997 1, 157, :_reduce_none, 998 5, 157, :_reduce_none, 930 999 1, 160, :_reduce_none, 931 1, 160, :_reduce_none, 932 2, 160, :_reduce_none, 933 2, 160, :_reduce_none, 934 1, 160, :_reduce_none, 935 1, 160, :_reduce_none, 936 1, 160, :_reduce_none, 937 4, 161, :_reduce_187, 938 1, 163, :_reduce_188, 939 3, 163, :_reduce_189, 940 3, 162, :_reduce_none, 941 0, 165, :_reduce_none, 1000 3, 160, :_reduce_none, 1001 2, 161, :_reduce_none, 1002 2, 161, :_reduce_none, 1003 1, 161, :_reduce_none, 1004 1, 158, :_reduce_none, 1005 3, 158, :_reduce_none, 1006 1, 107, :_reduce_none, 1007 2, 107, :_reduce_none, 1008 1, 162, :_reduce_none, 1009 1, 162, :_reduce_none, 1010 2, 162, :_reduce_none, 1011 3, 163, :_reduce_none, 1012 2, 163, :_reduce_none, 1013 3, 163, :_reduce_none, 1014 3, 163, :_reduce_none, 1015 4, 163, :_reduce_none, 1016 2, 163, :_reduce_205, 1017 3, 163, :_reduce_none, 1018 3, 163, :_reduce_207, 1019 4, 163, :_reduce_none, 1020 1, 134, :_reduce_209, 1021 3, 134, :_reduce_210, 1022 4, 134, :_reduce_211, 1023 4, 134, :_reduce_212, 1024 1, 108, :_reduce_213, 1025 3, 108, :_reduce_214, 1026 0, 99, :_reduce_none, 1027 2, 99, :_reduce_none, 1028 1, 164, :_reduce_none, 1029 2, 164, :_reduce_none, 1030 1, 165, :_reduce_none, 1031 1, 165, :_reduce_none, 942 1032 2, 165, :_reduce_none, 943 1, 166, :_reduce_none, 944 1, 166, :_reduce_none, 945 1, 166, :_reduce_none, 946 1, 166, :_reduce_none, 947 1, 166, :_reduce_none, 948 1, 166, :_reduce_none, 949 1, 166, :_reduce_none, 950 1, 166, :_reduce_none, 951 1, 166, :_reduce_none, 952 1, 166, :_reduce_none, 953 1, 166, :_reduce_none, 954 5, 167, :_reduce_none, 955 7, 167, :_reduce_none, 956 5, 168, :_reduce_none, 957 7, 169, :_reduce_none, 958 9, 170, :_reduce_none, 959 5, 171, :_reduce_none, 960 3, 172, :_reduce_none, 961 4, 172, :_reduce_none, 962 3, 172, :_reduce_none, 963 3, 164, :_reduce_none, 964 3, 173, :_reduce_none, 965 2, 173, :_reduce_none, 966 2, 173, :_reduce_none, 967 3, 173, :_reduce_none, 968 2, 173, :_reduce_none, 969 2, 174, :_reduce_none, 970 4, 174, :_reduce_none, 971 1, 175, :_reduce_none, 972 1, 175, :_reduce_none, 973 1, 175, :_reduce_none, 974 1, 175, :_reduce_none, 975 1, 175, :_reduce_none, 976 1, 175, :_reduce_none, 977 1, 175, :_reduce_none, 978 1, 175, :_reduce_none, 979 1, 175, :_reduce_none, 980 1, 175, :_reduce_none, 981 1, 175, :_reduce_none, 982 1, 125, :_reduce_none, 983 1, 125, :_reduce_none, 984 1, 125, :_reduce_none, 985 1, 125, :_reduce_none, 986 1, 125, :_reduce_none, 987 1, 125, :_reduce_none, 988 1, 125, :_reduce_none, 989 1, 125, :_reduce_none, 990 1, 100, :_reduce_240, 991 2, 100, :_reduce_241, 992 3, 100, :_reduce_242 ] 993 994 racc_reduce_n = 243 995 996 racc_shift_n = 400 1033 2, 165, :_reduce_none, 1034 1, 165, :_reduce_none, 1035 1, 165, :_reduce_none, 1036 1, 165, :_reduce_none, 1037 4, 166, :_reduce_226, 1038 1, 168, :_reduce_227, 1039 3, 168, :_reduce_228, 1040 3, 167, :_reduce_none, 1041 1, 170, :_reduce_none, 1042 1, 170, :_reduce_none, 1043 1, 170, :_reduce_none, 1044 1, 170, :_reduce_none, 1045 1, 170, :_reduce_none, 1046 1, 170, :_reduce_none, 1047 1, 170, :_reduce_none, 1048 1, 170, :_reduce_none, 1049 1, 170, :_reduce_none, 1050 1, 170, :_reduce_none, 1051 3, 171, :_reduce_none, 1052 4, 171, :_reduce_none, 1053 3, 171, :_reduce_none, 1054 2, 169, :_reduce_none, 1055 3, 169, :_reduce_none, 1056 1, 180, :_reduce_none, 1057 2, 180, :_reduce_none, 1058 1, 181, :_reduce_none, 1059 1, 181, :_reduce_none, 1060 1, 172, :_reduce_none, 1061 2, 172, :_reduce_none, 1062 5, 173, :_reduce_none, 1063 7, 173, :_reduce_none, 1064 5, 177, :_reduce_none, 1065 5, 174, :_reduce_none, 1066 7, 175, :_reduce_none, 1067 6, 176, :_reduce_none, 1068 7, 176, :_reduce_none, 1069 6, 176, :_reduce_none, 1070 7, 176, :_reduce_none, 1071 3, 178, :_reduce_none, 1072 2, 178, :_reduce_none, 1073 2, 178, :_reduce_none, 1074 2, 178, :_reduce_none, 1075 3, 178, :_reduce_none, 1076 1, 101, :_reduce_265, 1077 2, 101, :_reduce_266, 1078 3, 101, :_reduce_267, 1079 1, 179, :_reduce_268 ] 1080 1081 racc_reduce_n = 269 1082 1083 racc_shift_n = 447 997 1084 998 1085 racc_token_table = { … … 1014 1101 "++" => 15, 1015 1102 "--" => 16, 1016 "," => 17, 1017 :SIZEOF => 18, 1018 "&" => 19, 1019 "*" => 20, 1020 "+" => 21, 1021 "-" => 22, 1022 "~" => 23, 1023 "!" => 24, 1024 "/" => 25, 1025 "%" => 26, 1026 "<<" => 27, 1027 ">>" => 28, 1028 "<" => 29, 1029 ">" => 30, 1030 "<=" => 31, 1031 ">=" => 32, 1032 "==" => 33, 1033 "!=" => 34, 1034 "^" => 35, 1035 "|" => 36, 1036 "&&" => 37, 1037 "||" => 38, 1038 "?" => 39, 1039 ":" => 40, 1040 ";" => 41, 1041 "=" => 42, 1042 :VOID => 43, 1043 :FLOAT => 44, 1044 :DOUBLE => 45, 1045 :BOOL => 46, 1046 :TYPE_NAME => 47, 1047 :CHAR => 48, 1048 :SHORT => 49, 1049 :INT => 50, 1050 :LONG => 51, 1051 :SIGNED => 52, 1052 :UNSIGNED => 53, 1053 "{" => 54, 1054 "}" => 55, 1055 :STRUCT => 56, 1056 :UNION => 57, 1057 :ENUM => 58, 1058 :CONST => 59, 1059 :VOLATILE => 60, 1060 :C_EXP => 61, 1061 :EXTENSION => 62, 1062 :TYPEDEF => 63, 1063 :IF => 64, 1064 :ELSE => 65, 1065 :WHILE => 66, 1066 :DO => 67, 1067 :FOR => 68, 1068 :SWITCH => 69, 1069 :infunc_statment => 70, 1070 :CASE => 71, 1071 :DEFAULT => 72, 1072 :GOTO => 73, 1073 :CONTINUE => 74, 1074 :BREAK => 75, 1075 :RETURN => 76, 1076 "+=" => 77, 1077 "-=" => 78, 1078 "*=" => 79, 1079 "/=" => 80, 1080 "%=" => 81, 1081 "<<=" => 82, 1082 ">>=" => 83, 1083 "&=" => 84, 1084 "|=" => 85, 1085 "^=" => 86, 1086 :__INLINE__ => 87, 1087 :INLINE => 88, 1088 :__INLINE => 89, 1089 :CINLINE => 90, 1090 :EXTERN => 91, 1091 :STATIC => 92, 1092 :AUTO => 93, 1093 :REGISTER => 94, 1094 "::" => 95 } 1095 1096 racc_nt_base = 96 1103 "{" => 17, 1104 "}" => 18, 1105 "," => 19, 1106 :SIZEOF => 20, 1107 "&" => 21, 1108 "*" => 22, 1109 "+" => 23, 1110 "-" => 24, 1111 "~" => 25, 1112 "!" => 26, 1113 "/" => 27, 1114 "%" => 28, 1115 "<<" => 29, 1116 ">>" => 30, 1117 "<" => 31, 1118 ">" => 32, 1119 "<=" => 33, 1120 ">=" => 34, 1121 "==" => 35, 1122 "!=" => 36, 1123 "^" => 37, 1124 "|" => 38, 1125 "&&" => 39, 1126 "||" => 40, 1127 "?" => 41, 1128 ":" => 42, 1129 "=" => 43, 1130 "+=" => 44, 1131 "-=" => 45, 1132 "*=" => 46, 1133 "/=" => 47, 1134 "%=" => 48, 1135 "<<=" => 49, 1136 ">>=" => 50, 1137 "&=" => 51, 1138 "|=" => 52, 1139 "^=" => 53, 1140 ";" => 54, 1141 :EXTERN => 55, 1142 :STATIC => 56, 1143 :AUTO => 57, 1144 :REGISTER => 58, 1145 :VOID => 59, 1146 :CHAR => 60, 1147 :SHORT => 61, 1148 :INT => 62, 1149 :LONG => 63, 1150 :FLOAT => 64, 1151 :DOUBLE => 65, 1152 :SIGNED => 66, 1153 :UNSIGNED => 67, 1154 :BOOL => 68, 1155 :TYPE_NAME => 69, 1156 :STRUCT => 70, 1157 :UNION => 71, 1158 :ENUM => 72, 1159 :CONST => 73, 1160 :RESTRICT => 74, 1161 :VOLATILE => 75, 1162 :__INLINE__ => 76, 1163 :INLINE => 77, 1164 :__INLINE => 78, 1165 :CINLINE => 79, 1166 :C_EXP => 80, 1167 :EXTENSION => 81, 1168 :TYPEDEF => 82, 1169 :CASE => 83, 1170 :DEFAULT => 84, 1171 :IF => 85, 1172 :ELSE => 86, 1173 :SWITCH => 87, 1174 :WHILE => 88, 1175 :DO => 89, 1176 :FOR => 90, 1177 :GOTO => 91, 1178 :CONTINUE => 92, 1179 :BREAK => 93, 1180 :RETURN => 94, 1181 "::" => 95, 1182 :_ASM => 96 } 1183 1184 racc_nt_base = 97 1097 1185 1098 1186 racc_use_result_var = true … … 1132 1220 "\"++\"", 1133 1221 "\"--\"", 1222 "\"{\"", 1223 "\"}\"", 1134 1224 "\",\"", 1135 1225 "SIZEOF", … … 1156 1246 "\"?\"", 1157 1247 "\":\"", 1158 "\";\"",1159 1248 "\"=\"", 1160 "VOID",1161 "FLOAT",1162 "DOUBLE",1163 "BOOL",1164 "TYPE_NAME",1165 "CHAR",1166 "SHORT",1167 "INT",1168 "LONG",1169 "SIGNED",1170 "UNSIGNED",1171 "\"{\"",1172 "\"}\"",1173 "STRUCT",1174 "UNION",1175 "ENUM",1176 "CONST",1177 "VOLATILE",1178 "C_EXP",1179 "EXTENSION",1180 "TYPEDEF",1181 "IF",1182 "ELSE",1183 "WHILE",1184 "DO",1185 "FOR",1186 "SWITCH",1187 "infunc_statment",1188 "CASE",1189 "DEFAULT",1190 "GOTO",1191 "CONTINUE",1192 "BREAK",1193 "RETURN",1194 1249 "\"+=\"", 1195 1250 "\"-=\"", … … 1202 1257 "\"|=\"", 1203 1258 "\"^=\"", 1259 "\";\"", 1260 "EXTERN", 1261 "STATIC", 1262 "AUTO", 1263 "REGISTER", 1264 "VOID", 1265 "CHAR", 1266 "SHORT", 1267 "INT", 1268 "LONG", 1269 "FLOAT", 1270 "DOUBLE", 1271 "SIGNED", 1272 "UNSIGNED", 1273 "BOOL", 1274 "TYPE_NAME", 1275 "STRUCT", 1276 "UNION", 1277 "ENUM", 1278 "CONST", 1279 "RESTRICT", 1280 "VOLATILE", 1204 1281 "__INLINE__", 1205 1282 "INLINE", 1206 1283 "__INLINE", 1207 1284 "CINLINE", 1208 "EXTERN", 1209 "STATIC", 1210 "AUTO", 1211 "REGISTER", 1285 "C_EXP", 1286 "EXTENSION", 1287 "TYPEDEF", 1288 "CASE", 1289 "DEFAULT", 1290 "IF", 1291 "ELSE", 1292 "SWITCH", 1293 "WHILE", 1294 "DO", 1295 "FOR", 1296 "GOTO", 1297 "CONTINUE", 1298 "BREAK", 1299 "RETURN", 1212 1300 "\"::\"", 1301 "_ASM", 1213 1302 "$start", 1214 1303 "all", … … 1219 1308 "expression", 1220 1309 "postfix_expression", 1221 "argument_ list",1310 "argument_expression_list", 1222 1311 "type_qualifier", 1312 "type_name", 1313 "initializer_list", 1314 "assignment_expression", 1223 1315 "unary_expression", 1224 1316 "unary_operator", 1225 1317 "cast_expression", 1226 "type_name",1227 1318 "multiplicative_expression", 1228 1319 "additive_expression", … … 1236 1327 "logical_or_expression", 1237 1328 "conditional_expression", 1329 "assignment_operator", 1238 1330 "constant_expression", 1239 1331 "declaration", 1240 1332 "declaration_specifiers", 1241 1333 "init_declarator_list", 1242 "storage_class ",1334 "storage_class_specifier", 1243 1335 "type_specifier", 1336 "function_specifier", 1244 1337 "init_declarator", 1245 1338 "declarator", … … 1255 1348 "struct_declaration", 1256 1349 "struct_declarator_list", 1257 " type_specifier_qualifier_list",1350 "specifier_qualifier_list", 1258 1351 "struct_declarator", 1259 1352 "union_term", … … 1263 1356 "union_declarator_list", 1264 1357 "union_declarator", 1265 "enum_type",1266 1358 "enumerator_list", 1267 1359 "enumerator", … … 1269 1361 "direct_declarator", 1270 1362 "parameter_type_list", 1363 "identifier_list", 1364 "type_qualifier_list", 1271 1365 "parameter_list", 1272 1366 "parameter_declaration", 1273 1367 "abstract_declarator", 1274 1368 "direct_abstract_declarator", 1275 "initializer_list",1276 1369 "extension_statement", 1277 " statement",1370 "cdl_statement", 1278 1371 "typedef", 1279 1372 "func_def", 1280 1373 "declarator_list", 1281 "compoundstatement", 1282 "infunc_statement_list", 1283 "infunc_statement", 1374 "compound_statement", 1375 "statement", 1376 "labeled_statement", 1377 "expression_statement", 1284 1378 "ifstatement", 1285 1379 "whilestatement", … … 1287 1381 "forstatement", 1288 1382 "switchstatement", 1289 " labelstatement",1290 " gotostatement",1291 " expressionstatement",1292 " assignment_operator" ]1383 "jump_statement", 1384 "asm_statement", 1385 "block_item_list", 1386 "block_item" ] 1293 1387 1294 1388 Racc_debug_parser = false … … 1300 1394 # reduce 1 omitted 1301 1395 1302 module_eval(<<'.,.,', 'C_parser.y.rb', 5 2)1396 module_eval(<<'.,.,', 'C_parser.y.rb', 57) 1303 1397 def _reduce_2(val, _values, result) 1304 1398 result = [ :IDENTIFIER, val[0] ] … … 1307 1401 .,., 1308 1402 1309 module_eval(<<'.,.,', 'C_parser.y.rb', 6 0)1403 module_eval(<<'.,.,', 'C_parser.y.rb', 65) 1310 1404 def _reduce_3(val, _values, result) 1311 1405 result = [ :INTEGER_CONSTANT, val[0] ] … … 1314 1408 .,., 1315 1409 1316 module_eval(<<'.,.,', 'C_parser.y.rb', 6 2)1410 module_eval(<<'.,.,', 'C_parser.y.rb', 67) 1317 1411 def _reduce_4(val, _values, result) 1318 1412 result = [ :FLOATING_CONSTANT, val[0] ] … … 1321 1415 .,., 1322 1416 1323 module_eval(<<'.,.,', 'C_parser.y.rb', 6 4)1417 module_eval(<<'.,.,', 'C_parser.y.rb', 69) 1324 1418 def _reduce_5(val, _values, result) 1325 1419 result = [ :OCTAL_CONSTANT, val[0] ] … … 1328 1422 .,., 1329 1423 1330 module_eval(<<'.,.,', 'C_parser.y.rb', 66)1424 module_eval(<<'.,.,', 'C_parser.y.rb', 71) 1331 1425 def _reduce_6(val, _values, result) 1332 1426 result = [ :HEX_CONSTANT, val[0] ] … … 1335 1429 .,., 1336 1430 1337 module_eval(<<'.,.,', 'C_parser.y.rb', 68)1431 module_eval(<<'.,.,', 'C_parser.y.rb', 73) 1338 1432 def _reduce_7(val, _values, result) 1339 1433 result = [ :CHARACTER_LITERAL, val[0] ] … … 1342 1436 .,., 1343 1437 1344 module_eval(<<'.,.,', 'C_parser.y.rb', 7 0)1438 module_eval(<<'.,.,', 'C_parser.y.rb', 75) 1345 1439 def _reduce_8(val, _values, result) 1346 1440 result = [ :STRING_LITERAL_LIST, val[0] ] … … 1349 1443 .,., 1350 1444 1351 module_eval(<<'.,.,', 'C_parser.y.rb', 7 2)1445 module_eval(<<'.,.,', 'C_parser.y.rb', 77) 1352 1446 def _reduce_9(val, _values, result) 1353 1447 result = [ :PARENTHESES, val[1].get_elements ] … … 1356 1450 .,., 1357 1451 1358 module_eval(<<'.,.,', 'C_parser.y.rb', 76)1452 module_eval(<<'.,.,', 'C_parser.y.rb', 81) 1359 1453 def _reduce_10(val, _values, result) 1360 1454 result = [val[0]] … … 1363 1457 .,., 1364 1458 1365 module_eval(<<'.,.,', 'C_parser.y.rb', 78)1459 module_eval(<<'.,.,', 'C_parser.y.rb', 83) 1366 1460 def _reduce_11(val, _values, result) 1367 1461 result << val[1] … … 1372 1466 # reduce 12 omitted 1373 1467 1374 # reduce 13 omitted 1468 module_eval(<<'.,.,', 'C_parser.y.rb', 89) 1469 def _reduce_13(val, _values, result) 1470 result = [ :OP_SUBSC, val[0], val[2] ] 1471 result 1472 end 1473 .,., 1375 1474 1376 1475 # reduce 14 omitted 1377 1476 1378 module_eval(<<'.,.,', 'C_parser.y.rb', 86) 1379 def _reduce_15(val, _values, result) 1380 result = [ :OP_SUBSC, val[0], val[2] ] 1381 result 1382 end 1383 .,., 1384 1385 module_eval(<<'.,.,', 'C_parser.y.rb', 88) 1386 def _reduce_16(val, _values, result) 1477 # reduce 15 omitted 1478 1479 # reduce 16 omitted 1480 1481 module_eval(<<'.,.,', 'C_parser.y.rb', 94) 1482 def _reduce_17(val, _values, result) 1387 1483 result = [ :OP_DOT, val[0], val[2] ] 1388 1484 result … … 1390 1486 .,., 1391 1487 1392 module_eval(<<'.,.,', 'C_parser.y.rb', 9 0)1393 def _reduce_1 7(val, _values, result)1488 module_eval(<<'.,.,', 'C_parser.y.rb', 96) 1489 def _reduce_18(val, _values, result) 1394 1490 result = [ :OP_REF, val[0], val[2] ] 1395 1491 result … … 1397 1493 .,., 1398 1494 1399 module_eval(<<'.,.,', 'C_parser.y.rb', 91) 1400 def _reduce_18(val, _values, result) 1401 result = val[0] 1402 result 1403 end 1404 .,., 1405 1406 module_eval(<<'.,.,', 'C_parser.y.rb', 92) 1495 module_eval(<<'.,.,', 'C_parser.y.rb', 97) 1407 1496 def _reduce_19(val, _values, result) 1408 1497 result = val[0] … … 1411 1500 .,., 1412 1501 1413 # reduce 20 omitted 1502 module_eval(<<'.,.,', 'C_parser.y.rb', 98) 1503 def _reduce_20(val, _values, result) 1504 result = val[0] 1505 result 1506 end 1507 .,., 1414 1508 1415 1509 # reduce 21 omitted … … 1419 1513 # reduce 23 omitted 1420 1514 1421 module_eval(<<'.,.,', 'C_parser.y.rb', 104) 1422 def _reduce_24(val, _values, result) 1515 # reduce 24 omitted 1516 1517 # reduce 25 omitted 1518 1519 module_eval(<<'.,.,', 'C_parser.y.rb', 111) 1520 def _reduce_26(val, _values, result) 1423 1521 result = [ val[0], val[1] ] 1424 1522 result … … 1426 1524 .,., 1427 1525 1428 module_eval(<<'.,.,', 'C_parser.y.rb', 1 06)1429 def _reduce_2 5(val, _values, result)1526 module_eval(<<'.,.,', 'C_parser.y.rb', 113) 1527 def _reduce_27(val, _values, result) 1430 1528 result = [ :OP_SIZEOF_EXPR, val[1] ] 1431 1529 result … … 1433 1531 .,., 1434 1532 1435 module_eval(<<'.,.,', 'C_parser.y.rb', 1 08)1436 def _reduce_2 6(val, _values, result)1533 module_eval(<<'.,.,', 'C_parser.y.rb', 115) 1534 def _reduce_28(val, _values, result) 1437 1535 result = [ :OP_SIZEOF_TYPE, val[1] ] 1438 1536 result … … 1440 1538 .,., 1441 1539 1442 module_eval(<<'.,.,', 'C_parser.y.rb', 1 09)1443 def _reduce_2 7(val, _values, result)1540 module_eval(<<'.,.,', 'C_parser.y.rb', 116) 1541 def _reduce_29(val, _values, result) 1444 1542 result = val[1] 1445 1543 result … … 1447 1545 .,., 1448 1546 1449 module_eval(<<'.,.,', 'C_parser.y.rb', 11 0)1450 def _reduce_ 28(val, _values, result)1547 module_eval(<<'.,.,', 'C_parser.y.rb', 117) 1548 def _reduce_30(val, _values, result) 1451 1549 result = val[1] 1452 1550 result … … 1454 1552 .,., 1455 1553 1456 module_eval(<<'.,.,', 'C_parser.y.rb', 1 13)1457 def _reduce_ 29(val, _values, result)1554 module_eval(<<'.,.,', 'C_parser.y.rb', 120) 1555 def _reduce_31(val, _values, result) 1458 1556 result = :OP_U_AMP 1459 1557 result … … 1461 1559 .,., 1462 1560 1463 module_eval(<<'.,.,', 'C_parser.y.rb', 1 14)1464 def _reduce_3 0(val, _values, result)1561 module_eval(<<'.,.,', 'C_parser.y.rb', 121) 1562 def _reduce_32(val, _values, result) 1465 1563 result = :OP_U_ASTER 1466 1564 result … … 1468 1566 .,., 1469 1567 1470 module_eval(<<'.,.,', 'C_parser.y.rb', 1 15)1471 def _reduce_3 1(val, _values, result)1568 module_eval(<<'.,.,', 'C_parser.y.rb', 122) 1569 def _reduce_33(val, _values, result) 1472 1570 result = :OP_U_PLUS 1473 1571 result … … 1475 1573 .,., 1476 1574 1477 module_eval(<<'.,.,', 'C_parser.y.rb', 1 16)1478 def _reduce_3 2(val, _values, result)1575 module_eval(<<'.,.,', 'C_parser.y.rb', 123) 1576 def _reduce_34(val, _values, result) 1479 1577 result = :OP_U_MINUS 1480 1578 result … … 1482 1580 .,., 1483 1581 1484 module_eval(<<'.,.,', 'C_parser.y.rb', 1 17)1485 def _reduce_3 3(val, _values, result)1582 module_eval(<<'.,.,', 'C_parser.y.rb', 124) 1583 def _reduce_35(val, _values, result) 1486 1584 result = :OP_U_TILDE 1487 1585 result … … 1489 1587 .,., 1490 1588 1491 module_eval(<<'.,.,', 'C_parser.y.rb', 1 18)1492 def _reduce_3 4(val, _values, result)1589 module_eval(<<'.,.,', 'C_parser.y.rb', 125) 1590 def _reduce_36(val, _values, result) 1493 1591 result = :OP_U_EXCLAM 1494 1592 result … … 1496 1594 .,., 1497 1595 1498 # reduce 3 5omitted1499 1500 module_eval(<<'.,.,', 'C_parser.y.rb', 1 23)1501 def _reduce_3 6(val, _values, result)1596 # reduce 37 omitted 1597 1598 module_eval(<<'.,.,', 'C_parser.y.rb', 130) 1599 def _reduce_38(val, _values, result) 1502 1600 result = [ :CAST, val[1], val[3] ] 1503 1601 result … … 1505 1603 .,., 1506 1604 1507 # reduce 3 7omitted1508 1509 module_eval(<<'.,.,', 'C_parser.y.rb', 1 28)1510 def _reduce_ 38(val, _values, result)1605 # reduce 39 omitted 1606 1607 module_eval(<<'.,.,', 'C_parser.y.rb', 135) 1608 def _reduce_40(val, _values, result) 1511 1609 result = [ :OP_MULT, val[0], val[2] ] 1512 1610 result … … 1514 1612 .,., 1515 1613 1516 module_eval(<<'.,.,', 'C_parser.y.rb', 13 0)1517 def _reduce_ 39(val, _values, result)1614 module_eval(<<'.,.,', 'C_parser.y.rb', 137) 1615 def _reduce_41(val, _values, result) 1518 1616 result = [ :OP_DIV, val[0], val[2] ] 1519 1617 result … … 1521 1619 .,., 1522 1620 1523 module_eval(<<'.,.,', 'C_parser.y.rb', 13 2)1524 def _reduce_4 0(val, _values, result)1621 module_eval(<<'.,.,', 'C_parser.y.rb', 139) 1622 def _reduce_42(val, _values, result) 1525 1623 result = [ :OP_REMAIN, val[0], val[2] ] 1526 1624 result … … 1528 1626 .,., 1529 1627 1530 # reduce 4 1omitted1531 1532 module_eval(<<'.,.,', 'C_parser.y.rb', 1 37)1533 def _reduce_4 2(val, _values, result)1628 # reduce 43 omitted 1629 1630 module_eval(<<'.,.,', 'C_parser.y.rb', 144) 1631 def _reduce_44(val, _values, result) 1534 1632 result = [ :OP_ADD, val[0], val[2] ] 1535 1633 result … … 1537 1635 .,., 1538 1636 1539 module_eval(<<'.,.,', 'C_parser.y.rb', 1 39)1540 def _reduce_4 3(val, _values, result)1637 module_eval(<<'.,.,', 'C_parser.y.rb', 146) 1638 def _reduce_45(val, _values, result) 1541 1639 result = [ :OP_SUB, val[0], val[2] ] 1542 1640 result … … 1544 1642 .,., 1545 1643 1546 # reduce 4 4omitted1547 1548 module_eval(<<'.,.,', 'C_parser.y.rb', 1 44)1549 def _reduce_4 5(val, _values, result)1644 # reduce 46 omitted 1645 1646 module_eval(<<'.,.,', 'C_parser.y.rb', 151) 1647 def _reduce_47(val, _values, result) 1550 1648 result = [ :OP_LSFT, val[0], val[2] ] 1551 1649 result … … 1553 1651 .,., 1554 1652 1555 module_eval(<<'.,.,', 'C_parser.y.rb', 1 46)1556 def _reduce_4 6(val, _values, result)1653 module_eval(<<'.,.,', 'C_parser.y.rb', 153) 1654 def _reduce_48(val, _values, result) 1557 1655 result = [ :OP_RSFT, val[0], val[2] ] 1558 1656 result … … 1560 1658 .,., 1561 1659 1562 # reduce 4 7omitted1563 1564 module_eval(<<'.,.,', 'C_parser.y.rb', 15 1)1565 def _reduce_ 48(val, _values, result)1660 # reduce 49 omitted 1661 1662 module_eval(<<'.,.,', 'C_parser.y.rb', 158) 1663 def _reduce_50(val, _values, result) 1566 1664 result = [ :OP_LT, val[0], val[2] ] 1567 1665 result … … 1569 1667 .,., 1570 1668 1571 module_eval(<<'.,.,', 'C_parser.y.rb', 1 53)1572 def _reduce_ 49(val, _values, result)1669 module_eval(<<'.,.,', 'C_parser.y.rb', 160) 1670 def _reduce_51(val, _values, result) 1573 1671 result = [ :OP_GT, val[0], val[2] ] 1574 1672 result … … 1576 1674 .,., 1577 1675 1578 module_eval(<<'.,.,', 'C_parser.y.rb', 1 55)1579 def _reduce_5 0(val, _values, result)1676 module_eval(<<'.,.,', 'C_parser.y.rb', 162) 1677 def _reduce_52(val, _values, result) 1580 1678 result = [ :OP_LE, val[0], val[2] ] 1581 1679 result … … 1583 1681 .,., 1584 1682 1585 module_eval(<<'.,.,', 'C_parser.y.rb', 1 57)1586 def _reduce_5 1(val, _values, result)1683 module_eval(<<'.,.,', 'C_parser.y.rb', 164) 1684 def _reduce_53(val, _values, result) 1587 1685 result = [ :OP_GE, val[0], val[2] ] 1588 1686 result … … 1590 1688 .,., 1591 1689 1592 # reduce 5 2omitted1593 1594 module_eval(<<'.,.,', 'C_parser.y.rb', 16 2)1595 def _reduce_5 3(val, _values, result)1690 # reduce 54 omitted 1691 1692 module_eval(<<'.,.,', 'C_parser.y.rb', 169) 1693 def _reduce_55(val, _values, result) 1596 1694 result = [ :OP_EQ, val[0], val[2] ] 1597 1695 result … … 1599 1697 .,., 1600 1698 1601 module_eval(<<'.,.,', 'C_parser.y.rb', 1 64)1602 def _reduce_5 4(val, _values, result)1699 module_eval(<<'.,.,', 'C_parser.y.rb', 171) 1700 def _reduce_56(val, _values, result) 1603 1701 result = [ :OP_NE, val[0], val[2] ] 1604 1702 result … … 1606 1704 .,., 1607 1705 1608 # reduce 5 5omitted1609 1610 module_eval(<<'.,.,', 'C_parser.y.rb', 1 69)1611 def _reduce_5 6(val, _values, result)1706 # reduce 57 omitted 1707 1708 module_eval(<<'.,.,', 'C_parser.y.rb', 176) 1709 def _reduce_58(val, _values, result) 1612 1710 result = [ :OP_AND, val[0], val[2] ] 1613 1711 result … … 1615 1713 .,., 1616 1714 1617 # reduce 5 7omitted1618 1619 module_eval(<<'.,.,', 'C_parser.y.rb', 1 74)1620 def _reduce_ 58(val, _values, result)1715 # reduce 59 omitted 1716 1717 module_eval(<<'.,.,', 'C_parser.y.rb', 181) 1718 def _reduce_60(val, _values, result) 1621 1719 result = [ :OP_EOR, val[0], val[2] ] 1622 1720 result … … 1624 1722 .,., 1625 1723 1626 # reduce 59omitted1627 1628 module_eval(<<'.,.,', 'C_parser.y.rb', 1 79)1629 def _reduce_6 0(val, _values, result)1724 # reduce 61 omitted 1725 1726 module_eval(<<'.,.,', 'C_parser.y.rb', 186) 1727 def _reduce_62(val, _values, result) 1630 1728 result = [ :OP_OR, val[0], val[2] ] 1631 1729 result … … 1633 1731 .,., 1634 1732 1635 # reduce 6 1omitted1636 1637 module_eval(<<'.,.,', 'C_parser.y.rb', 1 84)1638 def _reduce_6 2(val, _values, result)1733 # reduce 63 omitted 1734 1735 module_eval(<<'.,.,', 'C_parser.y.rb', 191) 1736 def _reduce_64(val, _values, result) 1639 1737 result = [ :OP_LAND, val[0], val[2] ] 1640 1738 result … … 1642 1740 .,., 1643 1741 1644 # reduce 6 3omitted1645 1646 module_eval(<<'.,.,', 'C_parser.y.rb', 1 89)1647 def _reduce_6 4(val, _values, result)1742 # reduce 65 omitted 1743 1744 module_eval(<<'.,.,', 'C_parser.y.rb', 196) 1745 def _reduce_66(val, _values, result) 1648 1746 result = [ :OP_LOR, val[0], val[2] ] 1649 1747 result … … 1651 1749 .,., 1652 1750 1653 # reduce 6 5omitted1654 1655 module_eval(<<'.,.,', 'C_parser.y.rb', 194)1656 def _reduce_6 6(val, _values, result)1751 # reduce 67 omitted 1752 1753 module_eval(<<'.,.,', 'C_parser.y.rb', 201) 1754 def _reduce_68(val, _values, result) 1657 1755 result = [ :OP_CEX, val[0], val[2].get_elements, val[4] ] 1658 1756 result … … 1660 1758 .,., 1661 1759 1662 module_eval(<<'.,.,', 'C_parser.y.rb', 201) 1663 def _reduce_67(val, _values, result) 1760 # reduce 69 omitted 1761 1762 # reduce 70 omitted 1763 1764 # reduce 71 omitted 1765 1766 # reduce 72 omitted 1767 1768 # reduce 73 omitted 1769 1770 # reduce 74 omitted 1771 1772 # reduce 75 omitted 1773 1774 # reduce 76 omitted 1775 1776 # reduce 77 omitted 1777 1778 # reduce 78 omitted 1779 1780 # reduce 79 omitted 1781 1782 # reduce 80 omitted 1783 1784 # reduce 81 omitted 1785 1786 module_eval(<<'.,.,', 'C_parser.y.rb', 223) 1787 def _reduce_82(val, _values, result) 1664 1788 result = Expression.new( val[0] ) 1665 1789 # result.print … … 1669 1793 .,., 1670 1794 1671 module_eval(<<'.,.,', 'C_parser.y.rb', 208) 1672 def _reduce_68(val, _values, result) 1795 module_eval(<<'.,.,', 'C_parser.y.rb', 228) 1796 def _reduce_83(val, _values, result) 1797 result = Expression.new( val[2] ) # ',' の後ろを採用 1798 1799 result 1800 end 1801 .,., 1802 1803 module_eval(<<'.,.,', 'C_parser.y.rb', 234) 1804 def _reduce_84(val, _values, result) 1673 1805 result = Expression.new( val[0] ) 1674 1806 # result.print … … 1685 1817 .,., 1686 1818 1687 # reduce 69omitted1688 1689 module_eval(<<'.,.,', 'C_parser.y.rb', 2 37)1690 def _reduce_ 70(val, _values, result)1819 # reduce 85 omitted 1820 1821 module_eval(<<'.,.,', 'C_parser.y.rb', 261) 1822 def _reduce_86(val, _values, result) 1691 1823 result = CIntType.new( -3 ) # storage class は無視 1692 1824 … … 1695 1827 .,., 1696 1828 1697 # reduce 71 omitted 1698 1699 module_eval(<<'.,.,', 'C_parser.y.rb', 242) 1700 def _reduce_72(val, _values, result) 1829 module_eval(<<'.,.,', 'C_parser.y.rb', 265) 1830 def _reduce_87(val, _values, result) 1831 result = val[1] # storage class は無視 1832 1833 result 1834 end 1835 .,., 1836 1837 # reduce 88 omitted 1838 1839 module_eval(<<'.,.,', 'C_parser.y.rb', 270) 1840 def _reduce_89(val, _values, result) 1841 result = val[1].merge val[0] 1842 1843 result 1844 end 1845 .,., 1846 1847 module_eval(<<'.,.,', 'C_parser.y.rb', 274) 1848 def _reduce_90(val, _values, result) 1701 1849 result = CIntType.new( -3 ) 1702 1850 result.set_qualifier val[0] … … 1706 1854 .,., 1707 1855 1708 module_eval(<<'.,.,', 'C_parser.y.rb', 247) 1709 def _reduce_73(val, _values, result) 1710 result = val[1] # storage class は無視 1711 1712 result 1713 end 1714 .,., 1715 1716 module_eval(<<'.,.,', 'C_parser.y.rb', 251) 1717 def _reduce_74(val, _values, result) 1718 result = val[1].merge val[0] 1719 1720 result 1721 end 1722 .,., 1723 1724 module_eval(<<'.,.,', 'C_parser.y.rb', 255) 1725 def _reduce_75(val, _values, result) 1856 module_eval(<<'.,.,', 'C_parser.y.rb', 279) 1857 def _reduce_91(val, _values, result) 1726 1858 val[1].set_qualifier val[0] 1727 result = val[1] 1728 1729 result 1730 end 1731 .,., 1732 1733 module_eval(<<'.,.,', 'C_parser.y.rb', 262) 1734 def _reduce_76(val, _values, result) 1859 result = val[1] 1860 1861 result 1862 end 1863 .,., 1864 1865 # reduce 92 omitted 1866 1867 # reduce 93 omitted 1868 1869 module_eval(<<'.,.,', 'C_parser.y.rb', 287) 1870 def _reduce_94(val, _values, result) 1735 1871 result = [val[0]] 1736 1872 result … … 1738 1874 .,., 1739 1875 1740 module_eval(<<'.,.,', 'C_parser.y.rb', 2 64)1741 def _reduce_ 77(val, _values, result)1876 module_eval(<<'.,.,', 'C_parser.y.rb', 289) 1877 def _reduce_95(val, _values, result) 1742 1878 result << val[2] 1743 1879 result … … 1745 1881 .,., 1746 1882 1747 # reduce 78omitted1748 1749 module_eval(<<'.,.,', 'C_parser.y.rb', 2 69)1750 def _reduce_ 79(val, _values, result)1883 # reduce 96 omitted 1884 1885 module_eval(<<'.,.,', 'C_parser.y.rb', 294) 1886 def _reduce_97(val, _values, result) 1751 1887 val[0].set_initializer( val[2] ) 1752 1888 result … … 1754 1890 .,., 1755 1891 1756 module_eval(<<'.,.,', 'C_parser.y.rb', 272) 1757 def _reduce_80(val, _values, result) 1892 # reduce 98 omitted 1893 1894 # reduce 99 omitted 1895 1896 # reduce 100 omitted 1897 1898 # reduce 101 omitted 1899 1900 module_eval(<<'.,.,', 'C_parser.y.rb', 304) 1901 def _reduce_102(val, _values, result) 1758 1902 set_no_type_name true; result = CVoidType.new 1759 1903 result … … 1761 1905 .,., 1762 1906 1763 module_eval(<<'.,.,', 'C_parser.y.rb', 273) 1764 def _reduce_81(val, _values, result) 1907 module_eval(<<'.,.,', 'C_parser.y.rb', 306) 1908 def _reduce_103(val, _values, result) 1909 set_no_type_name true; result = CIntType.new(-11 ) 1910 result 1911 end 1912 .,., 1913 1914 module_eval(<<'.,.,', 'C_parser.y.rb', 308) 1915 def _reduce_104(val, _values, result) 1916 set_no_type_name true; result = CIntType.new( -2 ) 1917 result 1918 end 1919 .,., 1920 1921 module_eval(<<'.,.,', 'C_parser.y.rb', 310) 1922 def _reduce_105(val, _values, result) 1923 set_no_type_name true; result = CIntType.new( -3 ) 1924 result 1925 end 1926 .,., 1927 1928 module_eval(<<'.,.,', 'C_parser.y.rb', 312) 1929 def _reduce_106(val, _values, result) 1930 set_no_type_name true; result = CIntType.new( -4 ) 1931 result 1932 end 1933 .,., 1934 1935 module_eval(<<'.,.,', 'C_parser.y.rb', 314) 1936 def _reduce_107(val, _values, result) 1765 1937 set_no_type_name true; result = CFloatType.new(-32) 1766 1938 result … … 1768 1940 .,., 1769 1941 1770 module_eval(<<'.,.,', 'C_parser.y.rb', 274)1771 def _reduce_ 82(val, _values, result)1942 module_eval(<<'.,.,', 'C_parser.y.rb', 316) 1943 def _reduce_108(val, _values, result) 1772 1944 set_no_type_name true; result = CFloatType.new(-64) 1773 1945 result … … 1775 1947 .,., 1776 1948 1777 module_eval(<<'.,.,', 'C_parser.y.rb', 275) 1778 def _reduce_83(val, _values, result) 1779 set_no_type_name true; result = CBoolType.new 1780 result 1781 end 1782 .,., 1783 1784 module_eval(<<'.,.,', 'C_parser.y.rb', 276) 1785 def _reduce_84(val, _values, result) 1786 set_no_type_name true; result = val[0] 1787 result 1788 end 1789 .,., 1790 1791 module_eval(<<'.,.,', 'C_parser.y.rb', 277) 1792 def _reduce_85(val, _values, result) 1793 set_no_type_name true; result = CVoidType.new 1794 result 1795 end 1796 .,., 1797 1798 module_eval(<<'.,.,', 'C_parser.y.rb', 278) 1799 def _reduce_86(val, _values, result) 1800 set_no_type_name true; result = CVoidType.new 1801 result 1802 end 1803 .,., 1804 1805 module_eval(<<'.,.,', 'C_parser.y.rb', 279) 1806 def _reduce_87(val, _values, result) 1807 set_no_type_name true; result = CDefinedType.new( val[0].val ) 1808 result 1809 end 1810 .,., 1811 1812 module_eval(<<'.,.,', 'C_parser.y.rb', 281) 1813 def _reduce_88(val, _values, result) 1814 set_no_type_name true; result = CIntType.new(-11 ) 1815 result 1816 end 1817 .,., 1818 1819 module_eval(<<'.,.,', 'C_parser.y.rb', 282) 1820 def _reduce_89(val, _values, result) 1821 set_no_type_name true; result = CIntType.new( -2 ) 1822 result 1823 end 1824 .,., 1825 1826 module_eval(<<'.,.,', 'C_parser.y.rb', 283) 1827 def _reduce_90(val, _values, result) 1828 set_no_type_name true; result = CIntType.new( -3 ) 1829 result 1830 end 1831 .,., 1832 1833 module_eval(<<'.,.,', 'C_parser.y.rb', 284) 1834 def _reduce_91(val, _values, result) 1835 set_no_type_name true; result = CIntType.new( -4 ) 1836 result 1837 end 1838 .,., 1839 1840 module_eval(<<'.,.,', 'C_parser.y.rb', 287) 1841 def _reduce_92(val, _values, result) 1949 module_eval(<<'.,.,', 'C_parser.y.rb', 319) 1950 def _reduce_109(val, _values, result) 1842 1951 set_no_type_name true 1843 1952 result = CIntType.new( -3 ) … … 1848 1957 .,., 1849 1958 1850 module_eval(<<'.,.,', 'C_parser.y.rb', 293)1851 def _reduce_ 93(val, _values, result)1959 module_eval(<<'.,.,', 'C_parser.y.rb', 325) 1960 def _reduce_110(val, _values, result) 1852 1961 set_no_type_name true 1853 1962 result = CIntType.new( -3 ) … … 1858 1967 .,., 1859 1968 1860 module_eval(<<'.,.,', 'C_parser.y.rb', 302) 1861 def _reduce_94(val, _values, result) 1969 module_eval(<<'.,.,', 'C_parser.y.rb', 330) 1970 def _reduce_111(val, _values, result) 1971 set_no_type_name true; result = CBoolType.new 1972 result 1973 end 1974 .,., 1975 1976 module_eval(<<'.,.,', 'C_parser.y.rb', 332) 1977 def _reduce_112(val, _values, result) 1978 set_no_type_name true; result = val[0] 1979 result 1980 end 1981 .,., 1982 1983 module_eval(<<'.,.,', 'C_parser.y.rb', 334) 1984 def _reduce_113(val, _values, result) 1985 set_no_type_name true; result = CVoidType.new 1986 result 1987 end 1988 .,., 1989 1990 module_eval(<<'.,.,', 'C_parser.y.rb', 336) 1991 def _reduce_114(val, _values, result) 1992 set_no_type_name true; result = CVoidType.new 1993 result 1994 end 1995 .,., 1996 1997 module_eval(<<'.,.,', 'C_parser.y.rb', 338) 1998 def _reduce_115(val, _values, result) 1999 set_no_type_name true; result = CDefinedType.new( val[0].val ) 2000 result 2001 end 2002 .,., 2003 2004 module_eval(<<'.,.,', 'C_parser.y.rb', 344) 2005 def _reduce_116(val, _values, result) 1862 2006 StructType.set_define( true ) 1863 2007 result … … 1865 2009 .,., 1866 2010 1867 module_eval(<<'.,.,', 'C_parser.y.rb', 3 05)1868 def _reduce_ 95(val, _values, result)2011 module_eval(<<'.,.,', 'C_parser.y.rb', 347) 2012 def _reduce_117(val, _values, result) 1869 2013 StructType.end_of_parse 1870 2014 result = val[1] … … 1874 2018 .,., 1875 2019 1876 module_eval(<<'.,.,', 'C_parser.y.rb', 3 11)1877 def _reduce_ 96(val, _values, result)2020 module_eval(<<'.,.,', 'C_parser.y.rb', 353) 2021 def _reduce_118(val, _values, result) 1878 2022 result = CStructType.new() 1879 2023 StructType.set_define( true ) … … 1883 2027 .,., 1884 2028 1885 module_eval(<<'.,.,', 'C_parser.y.rb', 3 16)1886 def _reduce_ 97(val, _values, result)2029 module_eval(<<'.,.,', 'C_parser.y.rb', 358) 2030 def _reduce_119(val, _values, result) 1887 2031 StructType.end_of_parse 1888 2032 result = val[1] … … 1892 2036 .,., 1893 2037 1894 module_eval(<<'.,.,', 'C_parser.y.rb', 3 22)1895 def _reduce_ 98(val, _values, result)2038 module_eval(<<'.,.,', 'C_parser.y.rb', 364) 2039 def _reduce_120(val, _values, result) 1896 2040 StructType.set_define( false ) 1897 2041 StructType.end_of_parse … … 1902 2046 .,., 1903 2047 1904 module_eval(<<'.,.,', 'C_parser.y.rb', 3 28)1905 def _reduce_ 99(val, _values, result)2048 module_eval(<<'.,.,', 'C_parser.y.rb', 370) 2049 def _reduce_121(val, _values, result) 1906 2050 set_no_type_name true 1907 2051 result … … 1909 2053 .,., 1910 2054 1911 # reduce 1 00omitted1912 1913 # reduce 1 01omitted1914 1915 module_eval(<<'.,.,', 'C_parser.y.rb', 3 37)1916 def _reduce_1 02(val, _values, result)2055 # reduce 122 omitted 2056 2057 # reduce 123 omitted 2058 2059 module_eval(<<'.,.,', 'C_parser.y.rb', 379) 2060 def _reduce_124(val, _values, result) 1917 2061 result = CStructType.new( val[0].val ) 1918 2062 set_no_type_name true … … 1922 2066 .,., 1923 2067 1924 module_eval(<<'.,.,', 'C_parser.y.rb', 3 46)1925 def _reduce_1 03(val, _values, result)2068 module_eval(<<'.,.,', 'C_parser.y.rb', 388) 2069 def _reduce_125(val, _values, result) 1926 2070 val[1].each { |i| # i: Decl 1927 2071 i.set_type( val[0] ) … … 1936 2080 .,., 1937 2081 1938 # reduce 104 omitted 1939 1940 # reduce 105 omitted 1941 1942 # reduce 106 omitted 1943 1944 module_eval(<<'.,.,', 'C_parser.y.rb', 365) 1945 def _reduce_107(val, _values, result) 2082 module_eval(<<'.,.,', 'C_parser.y.rb', 399) 2083 def _reduce_126(val, _values, result) 2084 val[1].each { |i| # i: Decl 2085 i.set_type( val[0] ) 2086 i.set_kind( :MEMBER ) 2087 i.check 2088 CStructType.new_member( i ) 2089 } 2090 result = val[1] 2091 2092 result 2093 end 2094 .,., 2095 2096 # reduce 127 omitted 2097 2098 # reduce 128 omitted 2099 2100 module_eval(<<'.,.,', 'C_parser.y.rb', 417) 2101 def _reduce_129(val, _values, result) 1946 2102 result = val[1].merge val[0] 1947 2103 … … 1950 2106 .,., 1951 2107 1952 module_eval(<<'.,.,', 'C_parser.y.rb', 369) 1953 def _reduce_108(val, _values, result) 2108 # reduce 130 omitted 2109 2110 module_eval(<<'.,.,', 'C_parser.y.rb', 422) 2111 def _reduce_131(val, _values, result) 2112 val[1].set_qualifier val[0] 2113 result = val[1] 2114 2115 result 2116 end 2117 .,., 2118 2119 module_eval(<<'.,.,', 'C_parser.y.rb', 427) 2120 def _reduce_132(val, _values, result) 1954 2121 result = CIntType.new( -3 ) 1955 2122 result.set_qualifier val[0] … … 1959 2126 .,., 1960 2127 1961 module_eval(<<'.,.,', 'C_parser.y.rb', 374) 1962 def _reduce_109(val, _values, result) 1963 val[1].set_qualifier val[0] 1964 result = val[1] 1965 1966 result 1967 end 1968 .,., 1969 1970 module_eval(<<'.,.,', 'C_parser.y.rb', 380) 1971 def _reduce_110(val, _values, result) 2128 module_eval(<<'.,.,', 'C_parser.y.rb', 433) 2129 def _reduce_133(val, _values, result) 1972 2130 result = [ val[0] ] 1973 2131 result … … 1975 2133 .,., 1976 2134 1977 module_eval(<<'.,.,', 'C_parser.y.rb', 382)1978 def _reduce_1 11(val, _values, result)2135 module_eval(<<'.,.,', 'C_parser.y.rb', 435) 2136 def _reduce_134(val, _values, result) 1979 2137 result << val[2] 1980 2138 result … … 1982 2140 .,., 1983 2141 1984 # reduce 1 12omitted1985 1986 # reduce 1 13omitted1987 1988 # reduce 1 14omitted1989 1990 # reduce 1 15omitted1991 1992 module_eval(<<'.,.,', 'C_parser.y.rb', 399)1993 def _reduce_1 16(val, _values, result)2142 # reduce 135 omitted 2143 2144 # reduce 136 omitted 2145 2146 # reduce 137 omitted 2147 2148 # reduce 138 omitted 2149 2150 module_eval(<<'.,.,', 'C_parser.y.rb', 452) 2151 def _reduce_139(val, _values, result) 1994 2152 set_no_type_name true 1995 2153 result … … 1997 2155 .,., 1998 2156 1999 # reduce 117 omitted 2000 2001 # reduce 118 omitted 2002 2003 # reduce 119 omitted 2004 2005 # reduce 120 omitted 2006 2007 # reduce 121 omitted 2008 2009 # reduce 122 omitted 2010 2011 # reduce 123 omitted 2012 2013 # reduce 124 omitted 2014 2015 # reduce 125 omitted 2016 2017 # reduce 126 omitted 2018 2019 # reduce 127 omitted 2020 2021 # reduce 128 omitted 2022 2023 module_eval(<<'.,.,', 'C_parser.y.rb', 430) 2024 def _reduce_129(val, _values, result) 2025 result = CEnumType.new( -1 ) 2026 result 2027 end 2028 .,., 2029 2030 # reduce 130 omitted 2031 2032 # reduce 131 omitted 2033 2034 # reduce 132 omitted 2035 2036 # reduce 133 omitted 2037 2038 module_eval(<<'.,.,', 'C_parser.y.rb', 446) 2039 def _reduce_134(val, _values, result) 2157 # reduce 140 omitted 2158 2159 # reduce 141 omitted 2160 2161 # reduce 142 omitted 2162 2163 # reduce 143 omitted 2164 2165 # reduce 144 omitted 2166 2167 # reduce 145 omitted 2168 2169 # reduce 146 omitted 2170 2171 # reduce 147 omitted 2172 2173 # reduce 148 omitted 2174 2175 # reduce 149 omitted 2176 2177 # reduce 150 omitted 2178 2179 # reduce 151 omitted 2180 2181 # reduce 152 omitted 2182 2183 # reduce 153 omitted 2184 2185 # reduce 154 omitted 2186 2187 # reduce 155 omitted 2188 2189 # reduce 156 omitted 2190 2191 # reduce 157 omitted 2192 2193 # reduce 158 omitted 2194 2195 # reduce 159 omitted 2196 2197 # reduce 160 omitted 2198 2199 # reduce 161 omitted 2200 2201 # reduce 162 omitted 2202 2203 module_eval(<<'.,.,', 'C_parser.y.rb', 495) 2204 def _reduce_163(val, _values, result) 2040 2205 result = :CONST 2041 2206 result … … 2043 2208 .,., 2044 2209 2045 module_eval(<<'.,.,', 'C_parser.y.rb', 447) 2046 def _reduce_135(val, _values, result) 2210 # reduce 164 omitted 2211 2212 module_eval(<<'.,.,', 'C_parser.y.rb', 498) 2213 def _reduce_165(val, _values, result) 2047 2214 result = :VOLATILE 2048 2215 result … … 2050 2217 .,., 2051 2218 2052 module_eval(<<'.,.,', 'C_parser.y.rb', 452) 2053 def _reduce_136(val, _values, result) 2219 # reduce 166 omitted 2220 2221 # reduce 167 omitted 2222 2223 # reduce 168 omitted 2224 2225 # reduce 169 omitted 2226 2227 module_eval(<<'.,.,', 'C_parser.y.rb', 509) 2228 def _reduce_170(val, _values, result) 2054 2229 val[1].set_type( val[0] ) 2055 2230 result = val[1] … … 2059 2234 .,., 2060 2235 2061 # reduce 1 37omitted2062 2063 module_eval(<<'.,.,', 'C_parser.y.rb', 458)2064 def _reduce_1 38(val, _values, result)2236 # reduce 171 omitted 2237 2238 module_eval(<<'.,.,', 'C_parser.y.rb', 515) 2239 def _reduce_172(val, _values, result) 2065 2240 result = Decl.new( val[1].val ) 2066 2241 result.set_type( val[0] ) … … 2070 2245 .,., 2071 2246 2072 module_eval(<<'.,.,', 'C_parser.y.rb', 464)2073 def _reduce_1 39(val, _values, result)2247 module_eval(<<'.,.,', 'C_parser.y.rb', 521) 2248 def _reduce_173(val, _values, result) 2074 2249 result = Decl.new( val[0].val ) 2075 2250 result … … 2077 2252 .,., 2078 2253 2079 module_eval(<<'.,.,', 'C_parser.y.rb', 466)2080 def _reduce_1 40(val, _values, result)2254 module_eval(<<'.,.,', 'C_parser.y.rb', 523) 2255 def _reduce_174(val, _values, result) 2081 2256 result = val[1] 2082 2257 result … … 2084 2259 .,., 2085 2260 2086 module_eval(<<'.,.,', 'C_parser.y.rb', 469)2087 def _reduce_1 41(val, _values, result)2261 module_eval(<<'.,.,', 'C_parser.y.rb', 526) 2262 def _reduce_175(val, _values, result) 2088 2263 val[0].set_type( CArrayType.new( val[2] ) ) 2089 2264 result = val[0] … … 2093 2268 .,., 2094 2269 2095 module_eval(<<'.,.,', 'C_parser.y.rb', 474)2096 def _reduce_1 42(val, _values, result)2270 module_eval(<<'.,.,', 'C_parser.y.rb', 531) 2271 def _reduce_176(val, _values, result) 2097 2272 val[0].set_type( CArrayType.new ) 2098 2273 result = val[0] … … 2102 2277 .,., 2103 2278 2104 module_eval(<<'.,.,', 'C_parser.y.rb', 479)2105 def _reduce_1 43(val, _values, result)2279 module_eval(<<'.,.,', 'C_parser.y.rb', 536) 2280 def _reduce_177(val, _values, result) 2106 2281 # Generator.warning( "W6001 need 'void' for no parameter" ) 2107 2282 val[0].set_type( CFuncType.new ) … … 2112 2287 .,., 2113 2288 2114 module_eval(<<'.,.,', 'C_parser.y.rb', 487) 2115 def _reduce_144(val, _values, result) 2289 # reduce 178 omitted 2290 2291 module_eval(<<'.,.,', 'C_parser.y.rb', 543) 2292 def _reduce_179(val, _values, result) 2116 2293 # Generator.warning( "W6002 need 'void' for no parameter" ) 2117 2294 val[0].set_type( CFuncType.new ) … … 2122 2299 .,., 2123 2300 2124 module_eval(<<'.,.,', 'C_parser.y.rb', 494)2125 def _reduce_1 45(val, _values, result)2301 module_eval(<<'.,.,', 'C_parser.y.rb', 550) 2302 def _reduce_180(val, _values, result) 2126 2303 result = CPtrType.new 2127 2304 result … … 2129 2306 .,., 2130 2307 2131 module_eval(<<'.,.,', 'C_parser.y.rb', 497)2132 def _reduce_1 46(val, _values, result)2308 module_eval(<<'.,.,', 'C_parser.y.rb', 553) 2309 def _reduce_181(val, _values, result) 2133 2310 result = CPtrType.new 2134 2311 result.set_qualifier( val[1] ) … … 2138 2315 .,., 2139 2316 2140 module_eval(<<'.,.,', 'C_parser.y.rb', 5 02)2141 def _reduce_1 47(val, _values, result)2317 module_eval(<<'.,.,', 'C_parser.y.rb', 558) 2318 def _reduce_182(val, _values, result) 2142 2319 val[1].set_type(CPtrType.new) 2143 2320 result = val[1] … … 2147 2324 .,., 2148 2325 2149 module_eval(<<'.,.,', 'C_parser.y.rb', 5 07)2150 def _reduce_1 48(val, _values, result)2326 module_eval(<<'.,.,', 'C_parser.y.rb', 563) 2327 def _reduce_183(val, _values, result) 2151 2328 ptrtype = CPtrType.new 2152 2329 ptrtype.set_qualifier( val[1] ) … … 2158 2335 .,., 2159 2336 2160 # reduce 149 omitted 2161 2162 # reduce 150 omitted 2163 2164 # reduce 151 omitted 2165 2166 # reduce 152 omitted 2167 2168 # reduce 153 omitted 2169 2170 # reduce 154 omitted 2171 2172 # reduce 155 omitted 2173 2174 # reduce 156 omitted 2175 2176 # reduce 157 omitted 2177 2178 # reduce 158 omitted 2179 2180 # reduce 159 omitted 2181 2182 # reduce 160 omitted 2183 2184 # reduce 161 omitted 2185 2186 # reduce 162 omitted 2187 2188 # reduce 163 omitted 2189 2190 # reduce 164 omitted 2191 2192 # reduce 165 omitted 2193 2194 module_eval(<<'.,.,', 'C_parser.y.rb', 571) 2195 def _reduce_166(val, _values, result) 2337 # reduce 184 omitted 2338 2339 # reduce 185 omitted 2340 2341 # reduce 186 omitted 2342 2343 # reduce 187 omitted 2344 2345 # reduce 188 omitted 2346 2347 # reduce 189 omitted 2348 2349 # reduce 190 omitted 2350 2351 # reduce 191 omitted 2352 2353 # reduce 192 omitted 2354 2355 # reduce 193 omitted 2356 2357 # reduce 194 omitted 2358 2359 # reduce 195 omitted 2360 2361 # reduce 196 omitted 2362 2363 # reduce 197 omitted 2364 2365 # reduce 198 omitted 2366 2367 # reduce 199 omitted 2368 2369 # reduce 200 omitted 2370 2371 # reduce 201 omitted 2372 2373 # reduce 202 omitted 2374 2375 # reduce 203 omitted 2376 2377 # reduce 204 omitted 2378 2379 module_eval(<<'.,.,', 'C_parser.y.rb', 630) 2380 def _reduce_205(val, _values, result) 2196 2381 Generator.warning( "W6003 need 'void' for no parameter" ) 2197 2382 … … 2200 2385 .,., 2201 2386 2202 # reduce 167omitted2203 2204 module_eval(<<'.,.,', 'C_parser.y.rb', 576)2205 def _reduce_ 168(val, _values, result)2387 # reduce 206 omitted 2388 2389 module_eval(<<'.,.,', 'C_parser.y.rb', 635) 2390 def _reduce_207(val, _values, result) 2206 2391 Generator.warning( "W6004 need 'void' for no parameter" ) 2207 2392 … … 2210 2395 .,., 2211 2396 2212 # reduce 169omitted2213 2214 module_eval(<<'.,.,', 'C_parser.y.rb', 583)2215 def _reduce_ 170(val, _values, result)2397 # reduce 208 omitted 2398 2399 module_eval(<<'.,.,', 'C_parser.y.rb', 642) 2400 def _reduce_209(val, _values, result) 2216 2401 result = val[0] 2217 2402 result … … 2219 2404 .,., 2220 2405 2221 module_eval(<<'.,.,', 'C_parser.y.rb', 585)2222 def _reduce_ 171(val, _values, result)2406 module_eval(<<'.,.,', 'C_parser.y.rb', 644) 2407 def _reduce_210(val, _values, result) 2223 2408 result = val[1] 2224 2409 result … … 2226 2411 .,., 2227 2412 2228 module_eval(<<'.,.,', 'C_parser.y.rb', 587)2229 def _reduce_ 172(val, _values, result)2413 module_eval(<<'.,.,', 'C_parser.y.rb', 646) 2414 def _reduce_211(val, _values, result) 2230 2415 result = val[1] 2231 2416 result … … 2233 2418 .,., 2234 2419 2235 module_eval(<<'.,.,', 'C_parser.y.rb', 589)2236 def _reduce_ 173(val, _values, result)2420 module_eval(<<'.,.,', 'C_parser.y.rb', 648) 2421 def _reduce_212(val, _values, result) 2237 2422 result = C_EXP.new( val[2] ) 2238 2423 result … … 2240 2425 .,., 2241 2426 2242 module_eval(<<'.,.,', 'C_parser.y.rb', 594)2243 def _reduce_ 174(val, _values, result)2427 module_eval(<<'.,.,', 'C_parser.y.rb', 653) 2428 def _reduce_213(val, _values, result) 2244 2429 result = [ val[0] ] 2245 2430 … … 2248 2433 .,., 2249 2434 2250 module_eval(<<'.,.,', 'C_parser.y.rb', 598)2251 def _reduce_ 175(val, _values, result)2435 module_eval(<<'.,.,', 'C_parser.y.rb', 657) 2436 def _reduce_214(val, _values, result) 2252 2437 val[0] << val[2] 2253 2438 result = val[0] … … 2257 2442 .,., 2258 2443 2259 # reduce 176omitted2260 2261 # reduce 177omitted2262 2263 # reduce 178omitted2264 2265 # reduce 179omitted2266 2267 # reduce 180omitted2268 2269 # reduce 181omitted2270 2271 # reduce 182omitted2272 2273 # reduce 183omitted2274 2275 # reduce 184omitted2276 2277 # reduce 185omitted2278 2279 # reduce 186omitted2280 2281 module_eval(<<'.,.,', 'C_parser.y.rb', 6 26)2282 def _reduce_ 187(val, _values, result)2444 # reduce 215 omitted 2445 2446 # reduce 216 omitted 2447 2448 # reduce 217 omitted 2449 2450 # reduce 218 omitted 2451 2452 # reduce 219 omitted 2453 2454 # reduce 220 omitted 2455 2456 # reduce 221 omitted 2457 2458 # reduce 222 omitted 2459 2460 # reduce 223 omitted 2461 2462 # reduce 224 omitted 2463 2464 # reduce 225 omitted 2465 2466 module_eval(<<'.,.,', 'C_parser.y.rb', 685) 2467 def _reduce_226(val, _values, result) 2283 2468 val[2].each{ |i| 2284 2469 i.set_kind( :TYPEDEF ) … … 2291 2476 .,., 2292 2477 2293 module_eval(<<'.,.,', 'C_parser.y.rb', 6 35)2294 def _reduce_ 188(val, _values, result)2478 module_eval(<<'.,.,', 'C_parser.y.rb', 694) 2479 def _reduce_227(val, _values, result) 2295 2480 result = [ val[0] ] 2296 2481 result … … 2298 2483 .,., 2299 2484 2300 module_eval(<<'.,.,', 'C_parser.y.rb', 6 37)2301 def _reduce_ 189(val, _values, result)2485 module_eval(<<'.,.,', 'C_parser.y.rb', 696) 2486 def _reduce_228(val, _values, result) 2302 2487 result << val[2] 2303 2488 result … … 2305 2490 .,., 2306 2491 2307 # reduce 190 omitted2308 2309 # reduce 191 omitted2310 2311 # reduce 192 omitted2312 2313 # reduce 193 omitted2314 2315 # reduce 194 omitted2316 2317 # reduce 195 omitted2318 2319 # reduce 196 omitted2320 2321 # reduce 197 omitted2322 2323 # reduce 198 omitted2324 2325 # reduce 199 omitted2326 2327 # reduce 200 omitted2328 2329 # reduce 201 omitted2330 2331 # reduce 202 omitted2332 2333 # reduce 203 omitted2334 2335 # reduce 204 omitted2336 2337 # reduce 205 omitted2338 2339 # reduce 206 omitted2340 2341 # reduce 207 omitted2342 2343 # reduce 208 omitted2344 2345 # reduce 209 omitted2346 2347 # reduce 210 omitted2348 2349 # reduce 211 omitted2350 2351 # reduce 212 omitted2352 2353 # reduce 213 omitted2354 2355 # reduce 214 omitted2356 2357 # reduce 215 omitted2358 2359 # reduce 216 omitted2360 2361 # reduce 217 omitted2362 2363 # reduce 218 omitted2364 2365 # reduce 219 omitted2366 2367 # reduce 220 omitted2368 2369 # reduce 221 omitted2370 2371 # reduce 222 omitted2372 2373 # reduce 223 omitted2374 2375 # reduce 224 omitted2376 2377 # reduce 225 omitted2378 2379 # reduce 226 omitted2380 2381 # reduce 227 omitted2382 2383 # reduce 228 omitted2384 2385 2492 # reduce 229 omitted 2386 2493 … … 2405 2512 # reduce 239 omitted 2406 2513 2407 module_eval(<<'.,.,', 'C_parser.y.rb', 718) 2408 def _reduce_240(val, _values, result) 2514 # reduce 240 omitted 2515 2516 # reduce 241 omitted 2517 2518 # reduce 242 omitted 2519 2520 # reduce 243 omitted 2521 2522 # reduce 244 omitted 2523 2524 # reduce 245 omitted 2525 2526 # reduce 246 omitted 2527 2528 # reduce 247 omitted 2529 2530 # reduce 248 omitted 2531 2532 # reduce 249 omitted 2533 2534 # reduce 250 omitted 2535 2536 # reduce 251 omitted 2537 2538 # reduce 252 omitted 2539 2540 # reduce 253 omitted 2541 2542 # reduce 254 omitted 2543 2544 # reduce 255 omitted 2545 2546 # reduce 256 omitted 2547 2548 # reduce 257 omitted 2549 2550 # reduce 258 omitted 2551 2552 # reduce 259 omitted 2553 2554 # reduce 260 omitted 2555 2556 # reduce 261 omitted 2557 2558 # reduce 262 omitted 2559 2560 # reduce 263 omitted 2561 2562 # reduce 264 omitted 2563 2564 module_eval(<<'.,.,', 'C_parser.y.rb', 761) 2565 def _reduce_265(val, _values, result) 2409 2566 result = NamespacePath.new( val[0].val, false ) 2410 2567 result … … 2412 2569 .,., 2413 2570 2414 module_eval(<<'.,.,', 'C_parser.y.rb', 7 19)2415 def _reduce_2 41(val, _values, result)2571 module_eval(<<'.,.,', 'C_parser.y.rb', 762) 2572 def _reduce_266(val, _values, result) 2416 2573 result = NamespacePath.new( val[1].val, true ) 2417 2574 result … … 2419 2576 .,., 2420 2577 2421 module_eval(<<'.,.,', 'C_parser.y.rb', 7 21)2422 def _reduce_2 42(val, _values, result)2578 module_eval(<<'.,.,', 'C_parser.y.rb', 764) 2579 def _reduce_267(val, _values, result) 2423 2580 result = val[0].append!( val[2].val ) 2581 result 2582 end 2583 .,., 2584 2585 module_eval(<<'.,.,', 'C_parser.y.rb', 768) 2586 def _reduce_268(val, _values, result) 2587 while true 2588 # ';' が表れるまで、トークンを読み飛ばす。 2589 # gcc の構文拡張に対応すべきだが、単純な実装として、';' まで読み飛ばす。 2590 # トークン単位で読み飛ばしているので、文字列やコメント内の ';' は対象にならない。 2591 token = next_token 2592 if token[1].val == ";" 2593 break 2594 end 2595 # p "skip: #{token[1].val}" 2596 end 2597 2424 2598 result 2425 2599 end
Note:
See TracChangeset
for help on using the changeset viewer.