dbc 1.2.3 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -23,8 +23,7 @@ module DBC
23
23
 
24
24
  def DBC.get_ocl(str)
25
25
  str =~ /\A\/\*\*[ \t]*[\r\n]+(\s*\*?\s*(?:inv|pre|post|context).+)[ \t]*\*\/\Z/m
26
-
27
- $1
26
+ $1
28
27
  end
29
28
 
30
29
  class Cache < CTokenizer::LexerBase
@@ -101,7 +100,7 @@ module DBC
101
100
  # take out context information
102
101
  str.gsub!(/^[ \t]*\*?[ \t]*context[ \t]+(.+)$/) do
103
102
  if context
104
- source.error("multiple contexts given: '#{context.to_s}' and '#{$1}'")
103
+ source.error("multiple contexts given: '#{context}' and '#{$1}'")
105
104
  end
106
105
  context = ctype_parser.parse($1 << ';')
107
106
  context = context.first
@@ -211,7 +210,7 @@ module DBC
211
210
  def shift
212
211
  t = super
213
212
  # note: comments don't affect start_of_line?
214
- if t[0] == :COMMENT and start_of_line? and ocl = DBC.get_ocl(t[1])
213
+ if t.at(0) == :COMMENT and start_of_line? and ocl = DBC.get_ocl(t[1])
215
214
  parse_ocl(ocl)
216
215
  end
217
216
  t
@@ -221,8 +220,7 @@ private
221
220
  def parse_ocl(str)
222
221
  self.error("no context for previous contract") \
223
222
  unless @token_cache.empty?
224
- count = CTokenizer.line_count(str)
225
- parser = OCL::Parser.new(str, self.file, self.line - count)
223
+ parser = OCL::Parser.new(str, self.file, self.line - CTokenizer.line_count(str))
226
224
  self.error("no conditions given") if parser.conditions.empty?
227
225
 
228
226
  unless parser.context
@@ -16,7 +16,14 @@ module Preprocessor
16
16
 
17
17
  class Define < Racc::Parser
18
18
 
19
- module_eval <<'..end src/define.y modeval..id5b00a44be7', 'src/define.y', 74
19
+ module_eval <<'..end src/define.y modeval..idcc3778cf05', 'src/define.y', 74
20
+
21
+ include ParseErrorHandler
22
+
23
+ tmp = '#'.freeze
24
+ STRINGIFY_TOKEN = [tmp, tmp].freeze
25
+ tmp = '##'.freeze
26
+ PASTE_TOKEN = [tmp, tmp].freeze
20
27
 
21
28
  def initialize(params, tokens)
22
29
  if params and not params.class == Parameters
@@ -25,11 +32,23 @@ module_eval <<'..end src/define.y modeval..id5b00a44be7', 'src/define.y', 74
25
32
  else
26
33
  @params = params
27
34
  end
28
- @value = tokens.to_s.freeze
35
+ scanner = CTokenizer::Lexer.new(tokens.to_s)
36
+ @value = []
37
+ until scanner.empty?
38
+ # this works because all spaces, comments and newlines were
39
+ # replaced by a single space by the preprocessor
40
+ @value.push( \
41
+ if scanner.scan(/[ \t]*##[ \t]*/)
42
+ PASTE_TOKEN
43
+ elsif scanner.scan(/#[ \t]*/)
44
+ STRINGIFY_TOKEN
45
+ else
46
+ scanner.shift
47
+ end ) # if
48
+ end # until
49
+ @value.push(CTokenizer::EOF_TOKEN)
29
50
  end
30
51
 
31
- #attr_reader :file, :line
32
-
33
52
  def takes_args?
34
53
  @params != nil and not @params.empty?
35
54
  end
@@ -41,58 +60,23 @@ module_eval <<'..end src/define.y modeval..id5b00a44be7', 'src/define.y', 74
41
60
  # 3) concat tokens using ## operator
42
61
  # 4) (happens after call to tokens) repeat 1) for each identifier
43
62
  def value(stack)
63
+ @pos = 0
44
64
  if takes_args?
45
- args = @params.get_args(stack)
46
- end
47
- evaluate(args)
48
- end
49
-
50
- def to_s
51
- @value
52
- end
53
-
54
- def inspect
55
- "\#<#{self.class}:#{self.to_s}>"
56
- end
57
-
58
- protected
59
-
60
- tmp = '#'.freeze
61
- STRINGIFY_TOKEN = [tmp, tmp].freeze
62
- tmp = '##'.freeze
63
- PASTE_TOKEN = [tmp, tmp].freeze
64
-
65
- def evaluate(args)
66
- scanner = CTokenizer::Lexer.new(@value)
67
- @q = []
68
- until scanner.empty?
69
- @q.push( case
70
- # this works because all spaces, comments and newlines were
71
- # replaced by a single space by the preprocessor
72
- when scanner.scan(/[ \t]*##[ \t]*/)
73
- PASTE_TOKEN
74
- when scanner.scan(/#[ \t]*/)
75
- STRINGIFY_TOKEN
65
+ args = @params.arguments(stack, :PARAMETER)
66
+ tokens = @value.collect do |t|
67
+ if t.at(0) == :IDENTIFIER and idx = @params.index(t.at(1))
68
+ args.at(idx)
76
69
  else
77
- t = scanner.shift
78
- if args and t[0] == :IDENTIFIER and idx = @params.index(t[1])
79
- [:PARAMETER, args[idx]].freeze
80
- else
81
- t
82
- end
83
- end ) # case
84
- end # until
85
- @q.push(CTokenizer::EOF_TOKEN)
86
- do_parse
87
- end
88
-
89
- include ParseErrorHandler
90
-
91
- def next_token
92
- @q.shift
70
+ t
71
+ end
72
+ end
73
+ yyparse(tokens, :each)
74
+ else
75
+ yyparse(@value, :each)
76
+ end
93
77
  end
94
78
 
95
- ..end src/define.y modeval..id5b00a44be7
79
+ ..end src/define.y modeval..idcc3778cf05
96
80
 
97
81
  ##### racc 1.4.4 generates ###
98
82
 
@@ -67,7 +67,7 @@ def expand_function(conditions, context, body, start_line, line_info)
67
67
  if pre_text.empty? and post_text.empty? and inv_text.empty?
68
68
  # we're done early
69
69
  body.each do |t|
70
- outstr << t[1]
70
+ outstr << t.at(1)
71
71
  end
72
72
  return outstr
73
73
  end
@@ -84,18 +84,18 @@ def expand_function(conditions, context, body, start_line, line_info)
84
84
  # output function body
85
85
  if post_text.empty? and inv_text.empty?
86
86
  body.each do |t|
87
- outstr << t[1]
88
- start_line += CTokenizer.line_count(t[1])
87
+ outstr << t.at(1)
88
+ start_line += CTokenizer.line_count(t.at(1))
89
89
  end
90
90
  else
91
91
  output_label = false
92
92
  body = body.dup
93
93
  until body.empty?
94
94
  t = body.shift
95
- start_line += CTokenizer.line_count(t[1])
95
+ start_line += CTokenizer.line_count(t.at(1))
96
96
  # replace return statements with goto statements.
97
97
  # if a value is returned this value is saved in ocl__ret_val
98
- if t[1] == 'return'
98
+ if t.at(1) == 'return'
99
99
  output_label = true
100
100
  if void_return_type
101
101
  outstr << 'goto ocl__return_here'
@@ -104,14 +104,14 @@ def expand_function(conditions, context, body, start_line, line_info)
104
104
  loop do
105
105
  raise "syntax error" if body.empty?
106
106
  t = body.shift
107
- start_line += CTokenizer.line_count(t[1])
108
- break if t[1] == ';'
109
- outstr << t[1]
107
+ start_line += CTokenizer.line_count(t.at(1))
108
+ break if t.at(1) == ';'
109
+ outstr << t.at(1)
110
110
  end
111
111
  outstr << ' ); goto ocl__return_here; }'
112
112
  end
113
113
  else # output all other tokens
114
- outstr << t[1]
114
+ outstr << t.at(1)
115
115
  end
116
116
  end
117
117
  outstr << "\nocl__return_here:\n" if output_label
@@ -246,6 +246,10 @@ module OCL
246
246
  def csymbol; '+' end
247
247
  end
248
248
 
249
+ class UBitNot < Unary
250
+ def csymbol; '~' end
251
+ end
252
+
249
253
  # only allows C expression
250
254
  class CUnary < Unary
251
255
  def initialize(exp)
@@ -413,7 +417,7 @@ module OCL
413
417
 
414
418
  class Parser < Racc::Parser
415
419
 
416
- module_eval <<'..end src/ocl.y modeval..id6957183bdb', 'src/ocl.y', 848
420
+ module_eval <<'..end src/ocl.y modeval..id8fdb3e31c0', 'src/ocl.y', 877
417
421
 
418
422
  def initialize(str, file, line)
419
423
  @line = line
@@ -493,13 +497,15 @@ protected
493
497
  # get C token
494
498
  t = scanner.shift
495
499
  t_sym = t.at(0)
496
- @q.push( if t_sym == :SYMBOL
497
- RESERVED.fetch(t.at(1), t)
498
- elsif t_sym == :IDENTIFIER
499
- RESERVED.fetch(t.at(1)) { CType.convert_token(t) }
500
- else
501
- t
502
- end ) unless t_sym == :SPACE # skip spaces
500
+ unless t_sym == :SPACE # skip spaces
501
+ @q.push( RESERVED.fetch(t.at(1)) do
502
+ if t_sym == :IDENTIFIER
503
+ CType.convert_token(t)
504
+ else
505
+ t
506
+ end # if
507
+ end )
508
+ end # unless
503
509
  end # case
504
510
  end # until
505
511
 
@@ -509,658 +515,448 @@ protected
509
515
 
510
516
  def next_token
511
517
  t = @q.shift
512
- while t[0] == :NEWLINE
518
+ while t.at(0) == :NEWLINE
513
519
  @line += 1
514
520
  t = @q.shift
515
521
  end
516
522
  t
517
523
  end
518
524
 
519
- ..end src/ocl.y modeval..id6957183bdb
525
+ ..end src/ocl.y modeval..id8fdb3e31c0
520
526
 
521
527
  ##### racc 1.4.4 generates ###
522
528
 
523
529
  racc_reduce_table = [
524
530
  0, 0, :racc_error,
525
- 1, 68, :_reduce_none,
526
- 1, 69, :_reduce_none,
527
- 2, 69, :_reduce_3,
528
- 1, 69, :_reduce_4,
529
- 1, 70, :_reduce_5,
530
- 2, 70, :_reduce_6,
531
- 3, 71, :_reduce_7,
532
- 1, 73, :_reduce_none,
533
- 1, 73, :_reduce_none,
534
- 3, 72, :_reduce_10,
535
- 2, 76, :_reduce_11,
536
- 1, 78, :_reduce_none,
537
- 1, 78, :_reduce_none,
538
- 1, 78, :_reduce_none,
539
- 1, 79, :_reduce_none,
540
- 1, 79, :_reduce_none,
541
- 1, 79, :_reduce_none,
542
- 1, 79, :_reduce_none,
543
- 3, 79, :_reduce_19,
544
- 1, 75, :_reduce_none,
545
- 1, 75, :_reduce_21,
531
+ 1, 70, :_reduce_none,
532
+ 1, 71, :_reduce_none,
533
+ 2, 71, :_reduce_3,
534
+ 1, 71, :_reduce_4,
535
+ 1, 72, :_reduce_5,
536
+ 2, 72, :_reduce_6,
537
+ 3, 73, :_reduce_7,
546
538
  1, 75, :_reduce_none,
547
539
  1, 75, :_reduce_none,
540
+ 3, 74, :_reduce_10,
541
+ 2, 78, :_reduce_11,
542
+ 1, 80, :_reduce_none,
543
+ 1, 80, :_reduce_none,
548
544
  1, 80, :_reduce_none,
549
- 4, 80, :_reduce_25,
550
- 4, 80, :_reduce_26,
551
- 3, 80, :_reduce_27,
552
- 3, 80, :_reduce_28,
553
- 3, 80, :_reduce_29,
554
- 1, 82, :_reduce_none,
555
- 2, 82, :_reduce_31,
556
545
  1, 81, :_reduce_none,
557
- 3, 81, :_reduce_33,
558
- 1, 83, :_reduce_none,
546
+ 1, 81, :_reduce_none,
547
+ 1, 81, :_reduce_none,
548
+ 1, 81, :_reduce_none,
549
+ 3, 81, :_reduce_19,
550
+ 1, 77, :_reduce_none,
551
+ 1, 77, :_reduce_21,
552
+ 1, 77, :_reduce_none,
553
+ 1, 77, :_reduce_none,
554
+ 1, 82, :_reduce_none,
555
+ 4, 82, :_reduce_25,
556
+ 4, 82, :_reduce_26,
557
+ 3, 82, :_reduce_27,
558
+ 3, 82, :_reduce_28,
559
+ 3, 82, :_reduce_29,
560
+ 1, 84, :_reduce_none,
561
+ 2, 84, :_reduce_31,
559
562
  1, 83, :_reduce_none,
563
+ 3, 83, :_reduce_33,
564
+ 1, 85, :_reduce_none,
560
565
  1, 85, :_reduce_none,
561
- 2, 85, :_reduce_37,
562
- 2, 85, :_reduce_38,
563
- 2, 85, :_reduce_39,
564
- 2, 85, :_reduce_40,
565
- 2, 85, :_reduce_41,
566
- 2, 85, :_reduce_42,
567
- 4, 85, :_reduce_43,
568
- 6, 85, :_reduce_44,
569
- 6, 85, :_reduce_45,
570
- 1, 86, :_reduce_none,
571
- 4, 86, :_reduce_47,
566
+ 1, 87, :_reduce_none,
567
+ 2, 87, :_reduce_37,
568
+ 2, 87, :_reduce_38,
569
+ 2, 87, :_reduce_39,
570
+ 2, 87, :_reduce_40,
571
+ 2, 87, :_reduce_41,
572
+ 2, 87, :_reduce_42,
573
+ 2, 87, :_reduce_43,
574
+ 4, 87, :_reduce_44,
575
+ 6, 87, :_reduce_45,
576
+ 6, 87, :_reduce_46,
572
577
  1, 88, :_reduce_none,
573
- 3, 88, :_reduce_49,
574
- 3, 88, :_reduce_50,
575
- 3, 88, :_reduce_51,
576
- 1, 89, :_reduce_none,
577
- 3, 89, :_reduce_53,
578
- 3, 89, :_reduce_54,
578
+ 4, 88, :_reduce_48,
579
579
  1, 90, :_reduce_none,
580
- 3, 90, :_reduce_56,
580
+ 3, 90, :_reduce_50,
581
+ 3, 90, :_reduce_51,
582
+ 3, 90, :_reduce_52,
583
+ 1, 91, :_reduce_none,
584
+ 3, 91, :_reduce_54,
585
+ 3, 91, :_reduce_55,
581
586
  1, 92, :_reduce_none,
582
- 3, 92, :_reduce_58,
583
- 3, 92, :_reduce_59,
584
- 3, 92, :_reduce_60,
585
- 3, 92, :_reduce_61,
586
- 3, 92, :_reduce_62,
587
- 3, 92, :_reduce_63,
588
- 1, 93, :_reduce_none,
589
- 3, 93, :_reduce_65,
587
+ 3, 92, :_reduce_57,
590
588
  1, 94, :_reduce_none,
591
- 3, 94, :_reduce_67,
589
+ 3, 94, :_reduce_59,
590
+ 3, 94, :_reduce_60,
591
+ 3, 94, :_reduce_61,
592
+ 3, 94, :_reduce_62,
592
593
  1, 95, :_reduce_none,
593
- 3, 95, :_reduce_69,
594
- 1, 77, :_reduce_none,
595
- 3, 77, :_reduce_71,
596
- 3, 87, :_reduce_72,
597
- 3, 91, :_reduce_73,
598
- 3, 91, :_reduce_74,
599
- 1, 96, :_reduce_none,
600
- 1, 96, :_reduce_none,
601
- 1, 96, :_reduce_none,
602
- 1, 96, :_reduce_none,
603
- 1, 96, :_reduce_none,
604
- 1, 96, :_reduce_none,
605
- 1, 96, :_reduce_none,
606
- 1, 96, :_reduce_none,
594
+ 3, 95, :_reduce_64,
595
+ 3, 95, :_reduce_65,
607
596
  1, 96, :_reduce_none,
597
+ 3, 96, :_reduce_67,
608
598
  1, 97, :_reduce_none,
609
- 1, 97, :_reduce_none,
610
- 1, 98, :_reduce_none,
599
+ 3, 97, :_reduce_69,
611
600
  1, 98, :_reduce_none,
612
- 2, 74, :_reduce_88,
613
- 1, 74, :_reduce_89,
614
- 1, 101, :_reduce_90,
615
- 2, 101, :_reduce_91,
616
- 1, 102, :_reduce_92,
617
- 1, 102, :_reduce_93,
618
- 1, 102, :_reduce_94,
619
- 1, 102, :_reduce_95,
620
- 1, 105, :_reduce_none,
621
- 1, 105, :_reduce_none,
622
- 2, 103, :_reduce_98,
601
+ 3, 98, :_reduce_71,
623
602
  1, 99, :_reduce_none,
624
- 2, 99, :_reduce_100,
625
- 1, 100, :_reduce_101,
626
- 2, 106, :_reduce_102,
627
- 1, 106, :_reduce_none,
628
- 1, 109, :_reduce_none,
629
- 1, 108, :_reduce_105,
630
- 3, 108, :_reduce_106,
631
- 4, 108, :_reduce_107,
632
- 3, 108, :_reduce_108,
633
- 4, 108, :_reduce_109,
634
- 4, 108, :_reduce_110,
635
- 3, 108, :_reduce_111,
636
- 2, 104, :_reduce_112,
637
- 2, 107, :_reduce_113,
638
- 1, 107, :_reduce_114,
639
- 3, 107, :_reduce_115,
640
- 2, 107, :_reduce_116,
641
- 1, 112, :_reduce_117,
642
- 2, 112, :_reduce_118,
643
- 1, 110, :_reduce_119,
644
- 3, 110, :_reduce_120,
645
- 1, 113, :_reduce_121,
646
- 3, 113, :_reduce_122,
647
- 2, 114, :_reduce_123,
648
- 2, 114, :_reduce_124,
649
- 1, 114, :_reduce_125,
650
- 1, 111, :_reduce_126,
603
+ 3, 99, :_reduce_73,
604
+ 1, 100, :_reduce_none,
605
+ 3, 100, :_reduce_75,
606
+ 1, 101, :_reduce_none,
607
+ 3, 101, :_reduce_77,
608
+ 1, 79, :_reduce_none,
609
+ 3, 79, :_reduce_79,
610
+ 3, 89, :_reduce_80,
611
+ 3, 93, :_reduce_81,
612
+ 3, 93, :_reduce_82,
613
+ 1, 102, :_reduce_none,
614
+ 1, 102, :_reduce_none,
615
+ 1, 102, :_reduce_none,
616
+ 1, 102, :_reduce_none,
617
+ 1, 102, :_reduce_none,
618
+ 1, 102, :_reduce_none,
619
+ 1, 102, :_reduce_none,
620
+ 1, 102, :_reduce_none,
621
+ 1, 102, :_reduce_none,
622
+ 1, 103, :_reduce_none,
623
+ 1, 103, :_reduce_none,
624
+ 1, 104, :_reduce_none,
625
+ 1, 104, :_reduce_none,
626
+ 2, 76, :_reduce_96,
627
+ 1, 76, :_reduce_97,
628
+ 1, 107, :_reduce_98,
629
+ 2, 107, :_reduce_99,
630
+ 1, 108, :_reduce_100,
631
+ 1, 108, :_reduce_101,
632
+ 1, 108, :_reduce_102,
633
+ 1, 108, :_reduce_103,
634
+ 1, 111, :_reduce_none,
635
+ 1, 111, :_reduce_none,
636
+ 2, 109, :_reduce_106,
637
+ 1, 105, :_reduce_none,
638
+ 2, 105, :_reduce_108,
639
+ 1, 106, :_reduce_109,
640
+ 2, 112, :_reduce_110,
641
+ 1, 112, :_reduce_none,
642
+ 1, 115, :_reduce_none,
643
+ 1, 114, :_reduce_113,
644
+ 3, 114, :_reduce_114,
645
+ 4, 114, :_reduce_115,
646
+ 3, 114, :_reduce_116,
647
+ 4, 114, :_reduce_117,
648
+ 4, 114, :_reduce_118,
649
+ 3, 114, :_reduce_119,
650
+ 2, 110, :_reduce_120,
651
+ 2, 113, :_reduce_121,
652
+ 1, 113, :_reduce_122,
653
+ 3, 113, :_reduce_123,
654
+ 2, 113, :_reduce_124,
655
+ 1, 118, :_reduce_125,
656
+ 2, 118, :_reduce_126,
651
657
  1, 116, :_reduce_127,
652
658
  3, 116, :_reduce_128,
653
- 1, 84, :_reduce_129,
654
- 2, 84, :_reduce_130,
655
- 1, 115, :_reduce_131,
656
- 1, 117, :_reduce_132,
657
- 1, 117, :_reduce_none,
658
- 2, 117, :_reduce_134,
659
- 3, 118, :_reduce_none,
660
- 2, 118, :_reduce_136,
661
- 3, 118, :_reduce_137,
662
- 3, 118, :_reduce_138,
663
- 4, 118, :_reduce_139,
664
- 2, 118, :_reduce_140,
665
- 3, 118, :_reduce_141,
666
- 3, 118, :_reduce_142,
667
- 4, 118, :_reduce_143 ]
668
-
669
- racc_reduce_n = 144
670
-
671
- racc_shift_n = 227
672
-
673
- racc_action_table = [
674
- 69, 72, 48, 94, 94, 53, 58, 94, 77, 78,
675
- 94, 94, 77, 95, 96, 197, 80, 223, 224, 93,
676
- 65, 67, 70, 41, 18, 198, 94, 24, 182, 101,
677
- 102, 64, 145, 38, 44, 104, 95, 96, 54, 57,
678
- 164, 62, 97, 77, 37, 43, 17, 19, 21, 23,
679
- 26, 28, 29, 30, 33, 36, 42, 15, 69, 72,
680
- 48, 36, 42, 53, 58, 36, 42, 103, 94, 94,
681
- 184, 100, 160, 180, 181, 183, 158, 78, 65, 67,
682
- 70, 41, 18, 204, 201, 24, 225, 213, 158, 64,
683
- 160, 38, 44, 205, 158, 206, 54, 57, 77, 62,
684
- 203, 77, 37, 43, 17, 19, 21, 23, 26, 28,
685
- 29, 30, 33, 36, 42, 15, 69, 72, 48, 77,
686
- 78, 53, 58, 78, 76, 18, 114, 201, 24, 194,
687
- 80, 158, 187, 193, 38, 44, 65, 67, 70, 41,
688
- 18, 78, 18, 24, 113, 24, 186, 64, 80, 38,
689
- 44, 38, 44, 185, 54, 57, 94, 62, 95, 96,
690
- 37, 43, 17, 19, 21, 23, 26, 28, 29, 30,
691
- 33, 36, 42, 15, 69, 72, 48, 76, 18, 53,
692
- 58, 24, 18, 95, 96, 24, 214, 38, 44, 215,
693
- 18, 38, 44, 24, 65, 67, 70, 41, 18, 38,
694
- 44, 24, 129, 116, 169, 64, 128, 38, 44, 165,
695
- 194, 77, 54, 57, 193, 62, 116, 115, 37, 43,
696
- 17, 19, 21, 23, 26, 28, 29, 30, 33, 36,
697
- 42, 15, 41, 78, 107, 108, 109, 110, 105, 106,
698
- 201, 192, 114, 113, 158, 111, 77, 107, 108, 109,
699
- 110, 105, 106, 37, 43, 17, 19, 21, 23, 26,
700
- 28, 29, 30, 33, 36, 42, 15, 41, 129, 6,
701
- 8, 10, 128, 85, 73, 160, 192, 14, 13, 158,
702
- 2, 4, 6, 8, 10, 89, 90, 91, 37, 43,
703
- 17, 19, 21, 23, 26, 28, 29, 30, 33, 36,
704
- 42, 15, 69, 72, 48, 226, nil, 53, 58, 37,
705
- 43, 17, 19, 21, 23, 26, 28, 29, 6, 8,
706
- 10, nil, 65, 67, 70, nil, 18, nil, nil, 24,
707
- 89, 90, 91, 64, nil, 38, 44, 6, 8, 10,
708
- 54, 57, nil, 62, 69, 72, 48, nil, nil, 53,
709
- 58, 89, 90, 91, nil, nil, nil, nil, nil, nil,
710
- nil, nil, nil, nil, 65, 67, 70, nil, 18, nil,
711
- nil, 24, nil, nil, nil, 64, nil, 38, 44, nil,
712
- nil, nil, 54, 57, nil, 62, 69, 72, 48, nil,
713
- nil, 53, 58, nil, nil, nil, nil, nil, nil, nil,
714
- nil, nil, nil, nil, nil, nil, 65, 67, 70, nil,
715
- 18, nil, nil, 24, nil, nil, nil, 64, nil, 38,
716
- 44, nil, nil, nil, 54, 57, nil, 62, 69, 72,
717
- 48, nil, nil, 53, 58, nil, nil, nil, nil, nil,
718
- nil, nil, nil, nil, nil, nil, nil, nil, 65, 67,
719
- 70, nil, 18, nil, nil, 24, nil, nil, nil, 64,
720
- nil, 38, 44, nil, nil, nil, 54, 57, nil, 62,
721
- 69, 72, 48, nil, nil, 53, 58, nil, nil, nil,
722
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
723
- 65, 67, 70, nil, 18, nil, nil, 24, nil, nil,
724
- nil, 64, nil, 38, 44, nil, 217, nil, 54, 57,
725
- nil, 62, 69, 72, 48, nil, nil, 53, 58, nil,
726
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
727
- nil, nil, 65, 67, 70, nil, 18, nil, nil, 24,
728
- nil, nil, nil, 64, nil, 38, 44, nil, 189, nil,
729
- 54, 57, nil, 62, 69, 72, 48, nil, nil, 53,
730
- 58, nil, nil, nil, nil, nil, nil, nil, nil, nil,
731
- nil, nil, nil, nil, 65, 67, 70, nil, 18, nil,
732
- nil, 24, nil, nil, nil, 64, nil, 38, 44, nil,
733
- nil, nil, 54, 57, nil, 62, 69, 72, 48, nil,
734
- nil, 53, 58, nil, nil, nil, nil, nil, nil, nil,
735
- nil, nil, nil, nil, nil, nil, 65, 67, 70, nil,
736
- 18, nil, nil, 24, nil, nil, nil, 64, nil, 38,
737
- 44, nil, nil, nil, 54, 57, nil, 62, 69, 72,
738
- 48, nil, nil, 53, 58, nil, nil, nil, nil, nil,
739
- nil, nil, nil, nil, nil, nil, nil, nil, 65, 67,
740
- 70, nil, 18, nil, nil, 24, nil, nil, nil, 64,
741
- nil, 38, 44, nil, nil, nil, 54, 57, nil, 62,
742
- 69, 72, 48, nil, nil, 53, 58, nil, nil, nil,
743
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
744
- 65, 67, 70, nil, 18, nil, nil, 24, nil, nil,
745
- nil, 64, nil, 38, 44, nil, nil, nil, 54, 57,
746
- nil, 62, 69, 72, 48, nil, nil, 53, 58, nil,
747
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
748
- nil, nil, 65, 67, 70, nil, 18, nil, nil, 24,
749
- nil, nil, nil, 64, nil, 38, 44, nil, nil, nil,
750
- 54, 57, nil, 62, 69, 72, 48, nil, nil, 53,
751
- 58, nil, nil, nil, nil, nil, nil, nil, nil, nil,
752
- nil, nil, nil, nil, 65, 67, 70, nil, 18, nil,
753
- nil, 24, nil, nil, nil, 64, nil, 38, 44, nil,
754
- nil, nil, 54, 57, nil, 62, 69, 72, 48, nil,
755
- nil, 53, 58, nil, nil, nil, nil, nil, nil, nil,
756
- nil, nil, nil, nil, nil, nil, 65, 67, 70, nil,
757
- 18, nil, nil, 24, nil, nil, nil, 64, nil, 38,
758
- 44, nil, nil, nil, 54, 57, nil, 62, 69, 72,
759
- 48, nil, nil, 53, 58, nil, nil, nil, nil, nil,
760
- nil, nil, nil, nil, nil, nil, nil, nil, 65, 67,
761
- 70, nil, 18, nil, nil, 24, nil, nil, nil, 64,
762
- nil, 38, 44, nil, nil, nil, 54, 57, nil, 62,
763
- 69, 72, 48, nil, nil, 53, 58, nil, nil, nil,
764
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
765
- 65, 67, 70, nil, 18, nil, nil, 24, nil, nil,
766
- nil, 64, nil, 38, 44, nil, nil, nil, 54, 57,
767
- nil, 62, 69, 72, 48, nil, nil, 53, 58, nil,
768
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
769
- nil, nil, 65, 67, 70, nil, 18, nil, nil, 24,
770
- nil, nil, nil, 64, nil, 38, 44, nil, nil, nil,
771
- 54, 57, nil, 62, 69, 72, 48, nil, nil, 53,
772
- 58, nil, nil, nil, nil, nil, nil, nil, nil, nil,
773
- nil, nil, nil, nil, 65, 67, 70, nil, 18, nil,
774
- nil, 24, nil, nil, nil, 64, nil, 38, 44, nil,
775
- nil, nil, 54, 57, nil, 62, 69, 72, 48, nil,
776
- nil, 53, 58, nil, nil, nil, nil, nil, nil, nil,
777
- nil, nil, nil, nil, nil, nil, 65, 67, 70, nil,
778
- 18, nil, nil, 24, nil, nil, nil, 64, nil, 38,
779
- 44, nil, nil, nil, 54, 57, nil, 62, 69, 72,
780
- 48, nil, nil, 53, 58, nil, nil, nil, nil, nil,
781
- nil, nil, nil, nil, nil, nil, nil, nil, 65, 67,
782
- 70, nil, 18, nil, nil, 24, nil, nil, nil, 64,
783
- nil, 38, 44, nil, nil, nil, 54, 57, nil, 62,
784
- 69, 72, 48, nil, nil, 53, 58, nil, nil, nil,
785
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
786
- 65, 67, 70, nil, 18, nil, nil, 24, nil, nil,
787
- nil, 64, nil, 38, 44, nil, nil, nil, 54, 57,
788
- nil, 62, 69, 72, 48, nil, nil, 53, 58, nil,
789
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
790
- nil, nil, 65, 67, 70, nil, 18, nil, nil, 24,
791
- nil, nil, nil, 64, nil, 38, 44, nil, nil, nil,
792
- 54, 57, nil, 62, 69, 72, 48, nil, nil, 53,
793
- 58, nil, nil, nil, nil, nil, nil, nil, nil, nil,
794
- nil, nil, nil, nil, 65, 67, 70, nil, 18, nil,
795
- nil, 24, nil, nil, nil, 64, nil, 38, 44, nil,
796
- nil, nil, 54, 57, nil, 62, 69, 72, 48, nil,
797
- nil, 53, 58, nil, nil, nil, nil, nil, nil, nil,
798
- nil, nil, nil, nil, nil, nil, 65, 67, 70, nil,
799
- 18, nil, nil, 24, nil, nil, nil, 121, nil, 38,
800
- 44, nil, nil, nil, 54, 57, nil, 62, 69, 72,
801
- 48, nil, nil, 53, 58, nil, nil, nil, nil, nil,
802
- nil, nil, nil, nil, nil, nil, nil, nil, 65, 67,
803
- 70, nil, 18, nil, nil, 24, nil, nil, nil, 64,
804
- nil, 38, 44, nil, 171, nil, 54, 57, nil, 62,
805
- 69, 72, 48, nil, nil, 53, 58, nil, nil, nil,
806
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
807
- 65, 67, 70, nil, 18, nil, nil, 24, nil, nil,
808
- nil, 64, nil, 38, 44, nil, nil, nil, 54, 57,
809
- nil, 62, 69, 72, 48, nil, nil, 53, 58, nil,
810
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
811
- nil, nil, 65, 67, 70, nil, 18, nil, nil, 24,
812
- nil, nil, nil, 64, nil, 38, 44, nil, nil, nil,
813
- 54, 57, nil, 62, 69, 72, 48, nil, nil, 53,
814
- 58, nil, nil, nil, nil, nil, nil, nil, nil, nil,
815
- nil, nil, nil, nil, 65, 67, 70, nil, 18, nil,
816
- nil, 24, nil, nil, nil, 64, nil, 38, 44, nil,
817
- nil, nil, 54, 57, nil, 62, 69, 72, 48, nil,
818
- nil, 53, 58, nil, nil, nil, nil, nil, nil, nil,
819
- nil, nil, nil, nil, nil, nil, 65, 67, 70, nil,
820
- 18, nil, nil, 24, nil, nil, nil, 64, nil, 38,
821
- 44, nil, nil, nil, 54, 57, nil, 62, 69, 72,
822
- 48, nil, nil, 53, 58, nil, nil, nil, nil, nil,
823
- nil, nil, nil, nil, nil, nil, nil, nil, 65, 67,
824
- 70, nil, 18, nil, nil, 24, nil, nil, nil, 64,
825
- nil, 38, 44, nil, nil, nil, 54, 57, nil, 62,
826
- 69, 72, 48, nil, nil, 53, 58, nil, nil, nil,
827
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
828
- 65, 67, 70, nil, 18, nil, nil, 24, nil, nil,
829
- nil, 64, nil, 38, 44, nil, nil, nil, 54, 57,
830
- nil, 62, 69, 72, 48, nil, nil, 53, 58, nil,
831
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
832
- nil, nil, 65, 67, 70, nil, 18, nil, nil, 24,
833
- nil, nil, nil, 64, nil, 38, 44, nil, nil, nil,
834
- 54, 57, nil, 62, 69, 72, 48, nil, nil, 53,
835
- 58, nil, nil, nil, nil, nil, nil, nil, nil, nil,
836
- nil, nil, nil, nil, 65, 67, 70, nil, 18, nil,
837
- nil, 24, nil, nil, nil, 64, nil, 38, 44, nil,
838
- nil, nil, 54, 57, nil, 62, 69, 72, 48, nil,
839
- nil, 53, 58, nil, nil, nil, nil, nil, nil, nil,
840
- nil, nil, nil, nil, nil, nil, 65, 67, 70, 41,
841
- 18, nil, nil, 24, nil, nil, nil, 64, nil, 38,
842
- 44, nil, nil, 41, 54, 57, nil, 62, nil, nil,
843
- 37, 43, 17, 19, 21, 23, 26, 28, 29, 30,
844
- 33, 36, 42, 15, 37, 43, 17, 19, 21, 23,
845
- 26, 28, 29, 30, 33, 36, 42, 15, 41, nil,
846
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
847
- nil, nil, nil, nil, nil, nil, nil, nil, 221, 37,
848
- 43, 17, 19, 21, 23, 26, 28, 29, 30, 33,
849
- 36, 42, 15, 41, nil, nil, nil, nil, nil, nil,
850
- nil, nil, 219, nil, nil, nil, nil, nil, nil, nil,
851
- nil, nil, nil, nil, 37, 43, 17, 19, 21, 23,
852
- 26, 28, 29, 30, 33, 36, 42, 15, 41, 18,
853
- nil, nil, 24, nil, nil, nil, nil, nil, 38, 44,
854
- nil, nil, 41, nil, nil, nil, nil, nil, nil, 37,
855
- 43, 17, 19, 21, 23, 26, 28, 29, 30, 33,
856
- 36, 42, 15, 37, 43, 17, 19, 21, 23, 26,
857
- 28, 29, 30, 33, 36, 42, 15, 41, 18, nil,
858
- nil, 24, nil, nil, nil, nil, 178, 38, 44, nil,
859
- nil, nil, nil, nil, nil, nil, nil, nil, 37, 43,
860
- 17, 19, 21, 23, 26, 28, 29, 30, 33, 36,
861
- 42, 15 ]
862
-
863
- racc_action_check = [
864
- 103, 103, 103, 211, 212, 103, 103, 170, 77, 82,
865
- 138, 49, 123, 50, 50, 166, 82, 211, 212, 49,
866
- 103, 103, 103, 103, 103, 170, 118, 103, 138, 55,
867
- 55, 103, 103, 103, 103, 55, 136, 136, 103, 103,
868
- 118, 103, 50, 117, 103, 103, 103, 103, 103, 103,
869
- 103, 103, 103, 103, 103, 103, 103, 103, 183, 183,
870
- 183, 77, 77, 183, 183, 123, 123, 55, 216, 188,
871
- 142, 55, 117, 136, 136, 142, 117, 202, 183, 183,
872
- 183, 183, 183, 174, 202, 183, 216, 188, 202, 183,
873
- 163, 183, 183, 175, 163, 177, 183, 183, 172, 183,
874
- 173, 80, 183, 183, 183, 183, 183, 183, 183, 183,
875
- 183, 183, 183, 183, 183, 183, 64, 64, 64, 16,
876
- 172, 64, 64, 80, 15, 15, 157, 172, 15, 162,
877
- 80, 172, 156, 162, 15, 15, 64, 64, 64, 64,
878
- 64, 16, 206, 64, 155, 206, 153, 64, 16, 64,
879
- 64, 206, 206, 152, 64, 64, 141, 64, 207, 207,
880
- 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
881
- 64, 64, 64, 64, 121, 121, 121, 35, 35, 121,
882
- 121, 35, 102, 208, 208, 102, 190, 35, 35, 191,
883
- 101, 102, 102, 101, 121, 121, 121, 121, 121, 101,
884
- 101, 121, 83, 133, 126, 121, 83, 121, 121, 119,
885
- 195, 201, 121, 121, 195, 121, 63, 62, 121, 121,
886
- 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
887
- 121, 121, 201, 201, 56, 56, 56, 56, 56, 56,
888
- 201, 201, 61, 59, 201, 57, 160, 154, 154, 154,
889
- 154, 154, 154, 201, 201, 201, 201, 201, 201, 201,
890
- 201, 201, 201, 201, 201, 201, 201, 160, 127, 46,
891
- 46, 46, 127, 31, 14, 160, 160, 3, 1, 160,
892
- 0, 0, 0, 0, 0, 47, 47, 47, 160, 160,
893
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
894
- 160, 160, 54, 54, 54, 218, nil, 54, 54, 32,
895
- 32, 32, 32, 32, 32, 32, 32, 32, 7, 7,
896
- 7, nil, 54, 54, 54, nil, 54, nil, nil, 54,
897
- 135, 135, 135, 54, nil, 54, 54, 9, 9, 9,
898
- 54, 54, nil, 54, 165, 165, 165, nil, nil, 165,
899
- 165, 134, 134, 134, nil, nil, nil, nil, nil, nil,
900
- nil, nil, nil, nil, 165, 165, 165, nil, 165, nil,
901
- nil, 165, nil, nil, nil, 165, nil, 165, 165, nil,
902
- nil, nil, 165, 165, nil, 165, 12, 12, 12, nil,
903
- nil, 12, 12, nil, nil, nil, nil, nil, nil, nil,
904
- nil, nil, nil, nil, nil, nil, 12, 12, 12, nil,
905
- 12, nil, nil, 12, nil, nil, nil, 12, nil, 12,
906
- 12, nil, nil, nil, 12, 12, nil, 12, 108, 108,
907
- 108, nil, nil, 108, 108, nil, nil, nil, nil, nil,
908
- nil, nil, nil, nil, nil, nil, nil, nil, 108, 108,
909
- 108, nil, 108, nil, nil, 108, nil, nil, nil, 108,
910
- nil, 108, 108, nil, nil, nil, 108, 108, nil, 108,
911
- 193, 193, 193, nil, nil, 193, 193, nil, nil, nil,
912
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
913
- 193, 193, 193, nil, 193, nil, nil, 193, nil, nil,
914
- nil, 193, nil, 193, 193, nil, 193, nil, 193, 193,
915
- nil, 193, 158, 158, 158, nil, nil, 158, 158, nil,
916
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
917
- nil, nil, 158, 158, 158, nil, 158, nil, nil, 158,
918
- nil, nil, nil, 158, nil, 158, 158, nil, 158, nil,
919
- 158, 158, nil, 158, 181, 181, 181, nil, nil, 181,
920
- 181, nil, nil, nil, nil, nil, nil, nil, nil, nil,
921
- nil, nil, nil, nil, 181, 181, 181, nil, 181, nil,
922
- nil, 181, nil, nil, nil, 181, nil, 181, 181, nil,
923
- nil, nil, 181, 181, nil, 181, 107, 107, 107, nil,
924
- nil, 107, 107, nil, nil, nil, nil, nil, nil, nil,
925
- nil, nil, nil, nil, nil, nil, 107, 107, 107, nil,
926
- 107, nil, nil, 107, nil, nil, nil, 107, nil, 107,
927
- 107, nil, nil, nil, 107, 107, nil, 107, 180, 180,
928
- 180, nil, nil, 180, 180, nil, nil, nil, nil, nil,
929
- nil, nil, nil, nil, nil, nil, nil, nil, 180, 180,
930
- 180, nil, 180, nil, nil, 180, nil, nil, nil, 180,
931
- nil, 180, 180, nil, nil, nil, 180, 180, nil, 180,
932
- 114, 114, 114, nil, nil, 114, 114, nil, nil, nil,
933
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
934
- 114, 114, 114, nil, 114, nil, nil, 114, nil, nil,
935
- nil, 114, nil, 114, 114, nil, nil, nil, 114, 114,
936
- nil, 114, 53, 53, 53, nil, nil, 53, 53, nil,
937
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
938
- nil, nil, 53, 53, 53, nil, 53, nil, nil, 53,
939
- nil, nil, nil, 53, nil, 53, 53, nil, nil, nil,
940
- 53, 53, nil, 53, 116, 116, 116, nil, nil, 116,
941
- 116, nil, nil, nil, nil, nil, nil, nil, nil, nil,
942
- nil, nil, nil, nil, 116, 116, 116, nil, 116, nil,
943
- nil, 116, nil, nil, nil, 116, nil, 116, 116, nil,
944
- nil, nil, 116, 116, nil, 116, 48, 48, 48, nil,
945
- nil, 48, 48, nil, nil, nil, nil, nil, nil, nil,
946
- nil, nil, nil, nil, nil, nil, 48, 48, 48, nil,
947
- 48, nil, nil, 48, nil, nil, nil, 48, nil, 48,
948
- 48, nil, nil, nil, 48, 48, nil, 48, 185, 185,
949
- 185, nil, nil, 185, 185, nil, nil, nil, nil, nil,
950
- nil, nil, nil, nil, nil, nil, nil, nil, 185, 185,
951
- 185, nil, 185, nil, nil, 185, nil, nil, nil, 185,
952
- nil, 185, 185, nil, nil, nil, 185, 185, nil, 185,
953
- 186, 186, 186, nil, nil, 186, 186, nil, nil, nil,
954
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
955
- 186, 186, 186, nil, 186, nil, nil, 186, nil, nil,
956
- nil, 186, nil, 186, 186, nil, nil, nil, 186, 186,
957
- nil, 186, 96, 96, 96, nil, nil, 96, 96, nil,
958
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
959
- nil, nil, 96, 96, 96, nil, 96, nil, nil, 96,
960
- nil, nil, nil, 96, nil, 96, 96, nil, nil, nil,
961
- 96, 96, nil, 96, 113, 113, 113, nil, nil, 113,
962
- 113, nil, nil, nil, nil, nil, nil, nil, nil, nil,
963
- nil, nil, nil, nil, 113, 113, 113, nil, 113, nil,
964
- nil, 113, nil, nil, nil, 113, nil, 113, 113, nil,
965
- nil, nil, 113, 113, nil, 113, 100, 100, 100, nil,
966
- nil, 100, 100, nil, nil, nil, nil, nil, nil, nil,
967
- nil, nil, nil, nil, nil, nil, 100, 100, 100, nil,
968
- 100, nil, nil, 100, nil, nil, nil, 100, nil, 100,
969
- 100, nil, nil, nil, 100, 100, nil, 100, 97, 97,
970
- 97, nil, nil, 97, 97, nil, nil, nil, nil, nil,
971
- nil, nil, nil, nil, nil, nil, nil, nil, 97, 97,
972
- 97, nil, 97, nil, nil, 97, nil, nil, nil, 97,
973
- nil, 97, 97, nil, nil, nil, 97, 97, nil, 97,
974
- 105, 105, 105, nil, nil, 105, 105, nil, nil, nil,
975
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
976
- 105, 105, 105, nil, 105, nil, nil, 105, nil, nil,
977
- nil, 105, nil, 105, 105, nil, nil, nil, 105, 105,
978
- nil, 105, 106, 106, 106, nil, nil, 106, 106, nil,
979
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
980
- nil, nil, 106, 106, 106, nil, 106, nil, nil, 106,
981
- nil, nil, nil, 106, nil, 106, 106, nil, nil, nil,
982
- 106, 106, nil, 106, 69, 69, 69, nil, nil, 69,
983
- 69, nil, nil, nil, nil, nil, nil, nil, nil, nil,
984
- nil, nil, nil, nil, 69, 69, 69, nil, 69, nil,
985
- nil, 69, nil, nil, nil, 69, nil, 69, 69, nil,
986
- nil, nil, 69, 69, nil, 69, 72, 72, 72, nil,
987
- nil, 72, 72, nil, nil, nil, nil, nil, nil, nil,
988
- nil, nil, nil, nil, nil, nil, 72, 72, 72, nil,
989
- 72, nil, nil, 72, nil, nil, nil, 72, nil, 72,
990
- 72, nil, nil, nil, 72, 72, nil, 72, 128, 128,
991
- 128, nil, nil, 128, 128, nil, nil, nil, nil, nil,
992
- nil, nil, nil, nil, nil, nil, nil, nil, 128, 128,
993
- 128, nil, 128, nil, nil, 128, nil, nil, nil, 128,
994
- nil, 128, 128, nil, 128, nil, 128, 128, nil, 128,
995
- 110, 110, 110, nil, nil, 110, 110, nil, nil, nil,
996
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
997
- 110, 110, 110, nil, 110, nil, nil, 110, nil, nil,
998
- nil, 110, nil, 110, 110, nil, nil, nil, 110, 110,
999
- nil, 110, 187, 187, 187, nil, nil, 187, 187, nil,
1000
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1001
- nil, nil, 187, 187, 187, nil, 187, nil, nil, 187,
1002
- nil, nil, nil, 187, nil, 187, 187, nil, nil, nil,
1003
- 187, 187, nil, 187, 109, 109, 109, nil, nil, 109,
1004
- 109, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1005
- nil, nil, nil, nil, 109, 109, 109, nil, 109, nil,
1006
- nil, 109, nil, nil, nil, 109, nil, 109, 109, nil,
1007
- nil, nil, 109, 109, nil, 109, 89, 89, 89, nil,
1008
- nil, 89, 89, nil, nil, nil, nil, nil, nil, nil,
1009
- nil, nil, nil, nil, nil, nil, 89, 89, 89, nil,
1010
- 89, nil, nil, 89, nil, nil, nil, 89, nil, 89,
1011
- 89, nil, nil, nil, 89, 89, nil, 89, 90, 90,
1012
- 90, nil, nil, 90, 90, nil, nil, nil, nil, nil,
1013
- nil, nil, nil, nil, nil, nil, nil, nil, 90, 90,
1014
- 90, nil, 90, nil, nil, 90, nil, nil, nil, 90,
1015
- nil, 90, 90, nil, nil, nil, 90, 90, nil, 90,
1016
- 91, 91, 91, nil, nil, 91, 91, nil, nil, nil,
1017
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1018
- 91, 91, 91, nil, 91, nil, nil, 91, nil, nil,
1019
- nil, 91, nil, 91, 91, nil, nil, nil, 91, 91,
1020
- nil, 91, 94, 94, 94, nil, nil, 94, 94, nil,
1021
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1022
- nil, nil, 94, 94, 94, nil, 94, nil, nil, 94,
1023
- nil, nil, nil, 94, nil, 94, 94, nil, nil, nil,
1024
- 94, 94, nil, 94, 95, 95, 95, nil, nil, 95,
1025
- 95, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1026
- nil, nil, nil, nil, 95, 95, 95, nil, 95, nil,
1027
- nil, 95, nil, nil, nil, 95, nil, 95, 95, nil,
1028
- nil, nil, 95, 95, nil, 95, 58, 58, 58, nil,
1029
- nil, 58, 58, nil, nil, nil, nil, nil, nil, nil,
1030
- nil, nil, nil, nil, nil, nil, 58, 58, 58, 115,
1031
- 58, nil, nil, 58, nil, nil, nil, 58, nil, 58,
1032
- 58, nil, nil, 40, 58, 58, nil, 58, nil, nil,
1033
- 115, 115, 115, 115, 115, 115, 115, 115, 115, 115,
1034
- 115, 115, 115, 115, 40, 40, 40, 40, 40, 40,
1035
- 40, 40, 40, 40, 40, 40, 40, 40, 205, nil,
1036
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1037
- nil, nil, nil, nil, nil, nil, nil, nil, 205, 205,
1038
- 205, 205, 205, 205, 205, 205, 205, 205, 205, 205,
1039
- 205, 205, 205, 194, nil, nil, nil, nil, nil, nil,
1040
- nil, nil, 194, nil, nil, nil, nil, nil, nil, nil,
1041
- nil, nil, nil, nil, 194, 194, 194, 194, 194, 194,
1042
- 194, 194, 194, 194, 194, 194, 194, 194, 4, 4,
1043
- nil, nil, 4, nil, nil, nil, nil, nil, 4, 4,
1044
- nil, nil, 111, nil, nil, nil, nil, nil, nil, 4,
1045
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1046
- 4, 4, 4, 111, 111, 111, 111, 111, 111, 111,
1047
- 111, 111, 111, 111, 111, 111, 111, 129, 129, nil,
1048
- nil, 129, nil, nil, nil, nil, 129, 129, 129, nil,
1049
- nil, nil, nil, nil, nil, nil, nil, nil, 129, 129,
1050
- 129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
1051
- 129, 129 ]
659
+ 1, 119, :_reduce_129,
660
+ 3, 119, :_reduce_130,
661
+ 2, 120, :_reduce_131,
662
+ 2, 120, :_reduce_132,
663
+ 1, 120, :_reduce_133,
664
+ 1, 117, :_reduce_134,
665
+ 1, 122, :_reduce_135,
666
+ 3, 122, :_reduce_136,
667
+ 1, 86, :_reduce_137,
668
+ 2, 86, :_reduce_138,
669
+ 1, 121, :_reduce_139,
670
+ 1, 123, :_reduce_140,
671
+ 1, 123, :_reduce_none,
672
+ 2, 123, :_reduce_142,
673
+ 3, 124, :_reduce_none,
674
+ 2, 124, :_reduce_144,
675
+ 3, 124, :_reduce_145,
676
+ 3, 124, :_reduce_146,
677
+ 4, 124, :_reduce_147,
678
+ 2, 124, :_reduce_148,
679
+ 3, 124, :_reduce_149,
680
+ 3, 124, :_reduce_150,
681
+ 4, 124, :_reduce_151 ]
682
+
683
+ racc_reduce_n = 152
684
+
685
+ racc_shift_n = 239
686
+
687
+ clist = [
688
+ '44,47,15,20,124,91,31,34,91,91,124,91,91,127,124,135,28,90,91,140,123',
689
+ '114,236,231,17,21,25,59,33,235,221,40,134,99,100,16,135,24,29,102,140',
690
+ '84,38,42,93,94,53,56,58,61,63,65,67,68,70,72,75,52,55,57,44,47,15,20',
691
+ '52,55,31,34,52,55,127,91,93,94,141,98,28,213,91,101,200,140,192,193',
692
+ '17,21,25,59,33,196,186,40,237,210,187,16,194,24,29,124,124,195,38,42',
693
+ '92,124,53,56,58,61,63,65,67,68,70,72,75,52,55,57,44,47,15,20,127,127',
694
+ '31,34,78,177,127,213,123,178,186,140,28,123,187,119,33,107,108,40,17',
695
+ '21,25,59,33,24,29,40,87,88,89,16,152,24,29,131,177,216,38,42,178,116',
696
+ '53,56,58,61,63,65,67,68,70,72,75,52,55,57,44,47,15,20,119,33,31,34,40',
697
+ '33,93,94,40,86,24,29,28,179,24,29,33,107,108,40,17,21,25,59,33,24,29',
698
+ '40,87,88,89,16,124,24,29,9,11,12,38,42,93,94,53,56,58,61,63,65,67,68',
699
+ '70,72,75,52,55,57,59,87,88,89,33,112,111,40,135,180,124,110,140,24,29',
700
+ '104,105,106,103,53,56,58,61,63,65,67,68,70,72,75,52,55,57,109,59,127',
701
+ '5,7,9,11,12,112,213,180,110,199,140,104,105,106,103,228,229,53,56,58',
702
+ '61,63,65,67,68,70,72,75,52,55,57,44,47,15,20,230,86,31,34,104,105,106',
703
+ '103,9,11,12,84,28,9,11,12,78,198,234,197,17,21,25,114,33,91,49,40,48',
704
+ '211,,16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21',
705
+ '25,,33,,,40,,,,79,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,',
706
+ ',,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,',
707
+ ',,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20,,',
708
+ '31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47',
709
+ '15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38',
710
+ '42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24',
711
+ '29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40',
712
+ ',,,16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25',
713
+ ',33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,',
714
+ ',17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,',
715
+ ',28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20,,,31',
716
+ '34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15',
717
+ '20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42',
718
+ '44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29',
719
+ ',,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,',
720
+ '16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33',
721
+ ',,40,,,,16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17',
722
+ '21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28',
723
+ ',,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20,,,31,34,',
724
+ ',,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,220,,38,42,44,47,15',
725
+ '20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42',
726
+ '44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29',
727
+ ',,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,',
728
+ '16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33',
729
+ ',,40,,,,16,,24,29,,190,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,',
730
+ '17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,',
731
+ '28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20,,,31,34',
732
+ ',,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20',
733
+ ',,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44',
734
+ '47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,209',
735
+ ',38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16',
736
+ ',24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,',
737
+ ',40,,,,16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21',
738
+ '25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,',
739
+ ',,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20,,,31,34,,,,',
740
+ ',,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47,15,20,,',
741
+ '31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38,42,44,47',
742
+ '15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24,29,,,,38',
743
+ '42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,,33,,,40,,,,16,,24',
744
+ '29,,,,38,42,44,47,15,20,,,31,34,,,,,,,,,28,,,,,,,,17,21,25,59,33,,,40',
745
+ ',,,16,,24,29,,,,38,42,,,53,56,58,61,63,65,67,68,70,72,75,52,55,57,59',
746
+ '33,,,40,,,,,,24,29,,,,59,,,,53,56,58,61,63,65,67,68,70,72,75,52,55,57',
747
+ '233,53,56,58,61,63,65,67,68,70,72,75,52,55,57,59,53,56,58,61,63,65,67',
748
+ '68,70,,,,,,,,,,53,56,58,61,63,65,67,68,70,72,75,52,55,57,59,,,,,,,,',
749
+ '217,,,,,59,,,,,53,56,58,61,63,65,67,68,70,72,75,52,55,57,53,56,58,61',
750
+ '63,65,67,68,70,72,75,52,55,57,59,33,,,40,,,,,205,24,29,,,,,,,,53,56',
751
+ '58,61,63,65,67,68,70,72,75,52,55,57' ]
752
+ racc_action_table = arr = Array.new(2112, nil)
753
+ str = a = i = nil
754
+ idx = 0
755
+ clist.each do |str|
756
+ str.split(',', -1).each do |i|
757
+ arr[idx] = i.to_i unless i.empty?
758
+ idx += 1
759
+ end
760
+ end
761
+
762
+ clist = [
763
+ '195,195,195,195,82,208,195,195,225,26,124,219,189,126,175,139,195,26',
764
+ '81,139,126,45,225,208,195,195,195,195,195,219,189,195,81,35,35,195,82',
765
+ '195,195,35,82,143,195,195,148,148,195,195,195,195,195,195,195,195,195',
766
+ '195,195,195,195,195,79,79,79,79,124,124,79,79,175,175,214,159,27,27',
767
+ '83,35,79,214,227,35,172,214,148,148,79,79,79,79,79,159,188,79,227,181',
768
+ '188,79,154,79,79,183,66,154,79,79,27,123,79,79,79,79,79,79,79,79,79',
769
+ '79,79,79,79,79,98,98,98,98,183,66,98,98,142,176,123,183,66,176,138,183',
770
+ '98,123,138,57,57,168,168,57,98,98,98,98,98,57,57,98,151,151,151,98,98',
771
+ '98,98,73,128,184,98,98,128,49,98,98,98,98,98,98,98,98,98,98,98,98,98',
772
+ '98,16,16,16,16,62,62,16,16,62,99,222,222,99,147,62,62,16,133,99,99,100',
773
+ '37,37,100,16,16,16,16,16,100,100,16,150,150,150,16,135,16,16,77,77,77',
774
+ '16,16,223,223,16,16,16,16,16,16,16,16,16,16,16,16,16,16,135,23,23,23',
775
+ '228,43,42,228,135,135,213,41,135,228,228,164,164,164,164,135,135,135',
776
+ '135,135,135,135,135,135,135,135,135,135,135,38,213,213,0,0,0,0,0,171',
777
+ '213,213,170,169,213,165,165,165,165,204,206,213,213,213,213,213,213',
778
+ '213,213,213,213,213,213,213,213,105,105,105,105,207,22,105,105,36,36',
779
+ '36,36,8,8,8,19,105,6,6,6,13,167,218,166,105,105,105,132,105,153,3,105',
780
+ '2,182,,105,,105,105,,,,105,105,15,15,15,15,,,15,15,,,,,,,,,15,,,,,,',
781
+ ',15,15,15,,15,,,15,,,,15,,15,15,,,,15,15,20,20,20,20,,,20,20,,,,,,,',
782
+ ',20,,,,,,,,20,20,20,,20,,,20,,,,20,,20,20,,,,20,20,108,108,108,108,',
783
+ ',108,108,,,,,,,,,108,,,,,,,,108,108,108,,108,,,108,,,,108,,108,108,',
784
+ ',,108,108,199,199,199,199,,,199,199,,,,,,,,,199,,,,,,,,199,199,199,',
785
+ '199,,,199,,,,199,,199,199,,,,199,199,107,107,107,107,,,107,107,,,,,',
786
+ ',,,107,,,,,,,,107,107,107,,107,,,107,,,,107,,107,107,,,,107,107,106',
787
+ '106,106,106,,,106,106,,,,,,,,,106,,,,,,,,106,106,106,,106,,,106,,,,106',
788
+ ',106,106,,,,106,106,28,28,28,28,,,28,28,,,,,,,,,28,,,,,,,,28,28,28,',
789
+ '28,,,28,,,,28,,28,28,,,,28,28,31,31,31,31,,,31,31,,,,,,,,,31,,,,,,,',
790
+ '31,31,31,,31,,,31,,,,31,,31,31,,,,31,31,34,34,34,34,,,34,34,,,,,,,,',
791
+ '34,,,,,,,,34,34,34,,34,,,34,,,,34,,34,34,,,,34,34,110,110,110,110,,',
792
+ '110,110,,,,,,,,,110,,,,,,,,110,110,110,,110,,,110,,,,110,,110,110,,',
793
+ ',110,110,198,198,198,198,,,198,198,,,,,,,,,198,,,,,,,,198,198,198,,198',
794
+ ',,198,,,,198,,198,198,,,,198,198,197,197,197,197,,,197,197,,,,,,,,,197',
795
+ ',,,,,,,197,197,197,,197,,,197,,,,197,,197,197,,,,197,197,112,112,112',
796
+ '112,,,112,112,,,,,,,,,112,,,,,,,,112,112,112,,112,,,112,,,,112,,112',
797
+ '112,,,,112,112,193,193,193,193,,,193,193,,,,,,,,,193,,,,,,,,193,193',
798
+ '193,,193,,,193,,,,193,,193,193,,,,193,193,192,192,192,192,,,192,192',
799
+ ',,,,,,,,192,,,,,,,,192,192,192,,192,,,192,,,,192,,192,192,,,,192,192',
800
+ '114,114,114,114,,,114,114,,,,,,,,,114,,,,,,,,114,114,114,,114,,,114',
801
+ ',,,114,,114,114,,,,114,114,44,44,44,44,,,44,44,,,,,,,,,44,,,,,,,,44',
802
+ '44,44,,44,,,44,,,,44,,44,44,,,,44,44,187,187,187,187,,,187,187,,,,,',
803
+ ',,,187,,,,,,,,187,187,187,,187,,,187,,,,187,,187,187,,187,,187,187,47',
804
+ '47,47,47,,,47,47,,,,,,,,,47,,,,,,,,47,47,47,,47,,,47,,,,47,,47,47,,',
805
+ ',47,47,104,104,104,104,,,104,104,,,,,,,,,104,,,,,,,,104,104,104,,104',
806
+ ',,104,,,,104,,104,104,,,,104,104,103,103,103,103,,,103,103,,,,,,,,,103',
807
+ ',,,,,,,103,103,103,,103,,,103,,,,103,,103,103,,,,103,103,140,140,140',
808
+ '140,,,140,140,,,,,,,,,140,,,,,,,,140,140,140,,140,,,140,,,,140,,140',
809
+ '140,,140,,140,140,88,88,88,88,,,88,88,,,,,,,,,88,,,,,,,,88,88,88,,88',
810
+ ',,88,,,,88,,88,88,,,,88,88,141,141,141,141,,,141,141,,,,,,,,,141,,,',
811
+ ',,,,141,141,141,,141,,,141,,,,141,,141,141,,,,141,141,94,94,94,94,,',
812
+ '94,94,,,,,,,,,94,,,,,,,,94,94,94,,94,,,94,,,,94,,94,94,,,,94,94,93,93',
813
+ '93,93,,,93,93,,,,,,,,,93,,,,,,,,93,93,93,,93,,,93,,,,93,,93,93,,,,93',
814
+ '93,178,178,178,178,,,178,178,,,,,,,,,178,,,,,,,,178,178,178,,178,,,178',
815
+ ',,,178,,178,178,,178,,178,178,78,78,78,78,,,78,78,,,,,,,,,78,,,,,,,',
816
+ '78,78,78,,78,,,78,,,,78,,78,78,,,,78,78,1,1,1,1,,,1,1,,,,,,,,,1,,,,',
817
+ ',,,1,1,1,,1,,,1,,,,1,,1,1,,,,1,1,92,92,92,92,,,92,92,,,,,,,,,92,,,,',
818
+ ',,,92,92,92,,92,,,92,,,,92,,92,92,,,,92,92,91,91,91,91,,,91,91,,,,,',
819
+ ',,,91,,,,,,,,91,91,91,,91,,,91,,,,91,,91,91,,,,91,91,89,89,89,89,,,89',
820
+ '89,,,,,,,,,89,,,,,,,,89,89,89,,89,,,89,,,,89,,89,89,,,,89,89,84,84,84',
821
+ '84,,,84,84,,,,,,,,,84,,,,,,,,84,84,84,,84,,,84,,,,84,,84,84,,,,84,84',
822
+ '86,86,86,86,,,86,86,,,,,,,,,86,,,,,,,,86,86,86,,86,,,86,,,,86,,86,86',
823
+ ',,,86,86,87,87,87,87,,,87,87,,,,,,,,,87,,,,,,,,87,87,87,,87,,,87,,,',
824
+ '87,,87,87,,,,87,87,101,101,101,101,,,101,101,,,,,,,,,101,,,,,,,,101',
825
+ '101,101,64,101,,,101,,,,101,,101,101,,,,101,101,,,64,64,64,64,64,64',
826
+ '64,64,64,64,64,64,64,64,7,7,,,7,,,,,,7,7,,,,216,,,,7,7,7,7,7,7,7,7,7',
827
+ '7,7,7,7,7,216,216,216,216,216,216,216,216,216,216,216,216,216,216,216',
828
+ '111,60,60,60,60,60,60,60,60,60,,,,,,,,,,111,111,111,111,111,111,111',
829
+ '111,111,111,111,111,111,111,186,,,,,,,,,186,,,,,109,,,,,186,186,186',
830
+ '186,186,186,186,186,186,186,186,186,186,186,109,109,109,109,109,109',
831
+ '109,109,109,109,109,109,109,109,177,177,,,177,,,,,177,177,177,,,,,,',
832
+ ',177,177,177,177,177,177,177,177,177,177,177,177,177,177' ]
833
+ racc_action_check = arr = Array.new(2112, nil)
834
+ str = a = i = nil
835
+ idx = 0
836
+ clist.each do |str|
837
+ str.split(',', -1).each do |i|
838
+ arr[idx] = i.to_i unless i.empty?
839
+ idx += 1
840
+ end
841
+ end
1052
842
 
1053
843
  racc_action_pointer = [
1054
- 245, 244, nil, 277, 1756, nil, nil, 281, nil, 300,
1055
- nil, nil, 377, nil, 274, 92, 108, nil, nil, nil,
1056
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1057
- nil, 238, 256, nil, nil, 145, nil, nil, nil, nil,
1058
- 1651, nil, nil, nil, nil, nil, 232, 274, 797, -16,
1059
- -1, nil, nil, 713, 293, 27, 216, 205, 1637, 219,
1060
- nil, 217, 177, 190, 107, nil, nil, nil, nil, 1175,
1061
- nil, nil, 1217, nil, nil, nil, nil, -3, nil, nil,
1062
- 90, nil, -24, 162, nil, nil, nil, nil, nil, 1427,
1063
- 1469, 1511, nil, nil, 1553, 1595, 923, 1049, nil, nil,
1064
- 1007, 157, 149, -9, nil, 1091, 1133, 587, 419, 1385,
1065
- 1301, 1770, nil, 965, 671, 1637, 755, 32, -1, 168,
1066
- nil, 165, nil, 1, nil, nil, 163, 228, 1259, 1805,
1067
- nil, nil, nil, 177, 340, 319, 22, nil, -17, nil,
1068
- nil, 129, 29, nil, nil, nil, nil, nil, nil, nil,
1069
- nil, nil, 110, 97, 229, 120, 83, 101, 503, nil,
1070
- 235, nil, 89, 50, nil, 335, -26, nil, nil, nil,
1071
- -20, nil, 87, 59, 42, 47, nil, 49, nil, nil,
1072
- 629, 545, nil, 49, nil, 839, 881, 1343, 42, nil,
1073
- 145, 148, nil, 461, 1721, 170, nil, nil, nil, nil,
1074
- nil, 200, 44, nil, nil, 1686, 109, 144, 169, nil,
1075
- nil, -24, -23, nil, nil, nil, 41, nil, 264, nil,
1076
- nil, nil, nil, nil, nil, nil, nil ]
844
+ 237, 1574, 301, 337, nil, nil, 283, 1915, 278, nil,
845
+ nil, nil, nil, 299, nil, 342, 171, nil, nil, 293,
846
+ 386, nil, 282, 229, nil, nil, -22, 57, 606, nil,
847
+ nil, 650, nil, nil, 694, 31, 296, 178, 229, nil,
848
+ nil, 226, 202, 219, 1046, -6, nil, 1134, nil, 165,
849
+ nil, nil, nil, nil, nil, nil, nil, 103, nil, nil,
850
+ 1945, nil, 148, nil, 1882, nil, 88, nil, nil, nil,
851
+ nil, nil, nil, 120, nil, nil, nil, 178, 1530, 51,
852
+ nil, -13, -8, 29, 1750, nil, 1794, 1838, 1310, 1706,
853
+ nil, 1662, 1618, 1442, 1398, nil, nil, nil, 111, 152,
854
+ 163, 1882, nil, 1222, 1178, 298, 562, 518, 430, 2010,
855
+ 738, 1963, 870, nil, 1002, nil, nil, nil, nil, nil,
856
+ nil, nil, nil, 93, -2, nil, -24, nil, 116, nil,
857
+ nil, nil, 307, 152, nil, 204, nil, nil, 90, -29,
858
+ 1266, 1354, 100, 12, nil, nil, nil, 163, 29, nil,
859
+ 200, 140, nil, 305, 51, nil, nil, nil, nil, 40,
860
+ nil, nil, nil, nil, 236, 268, 303, 281, 118, 258,
861
+ 259, 255, 35, nil, nil, 2, 85, 2043, 1486, nil,
862
+ nil, 48, 295, 87, 111, nil, 1996, 1090, 46, -19,
863
+ nil, nil, 958, 914, nil, -9, nil, 826, 782, 474,
864
+ nil, nil, nil, nil, 241, nil, 247, 266, -26, nil,
865
+ nil, nil, nil, 238, 33, nil, 1930, nil, 284, -20,
866
+ nil, nil, 175, 209, nil, -23, nil, 47, 207, nil,
867
+ nil, nil, nil, nil, nil, nil, nil, nil, nil ]
1077
868
 
1078
869
  racc_action_default = [
1079
- -144, -144, -4, -144, -144, -1, -12, -2, -13, -144,
1080
- -14, -5, -144, -11, -144, -144, -89, -77, -20, -78,
1081
- -92, -79, -99, -80, -22, -93, -81, -94, -82, -83,
1082
- -84, -144, -90, -85, -8, -144, -86, -75, -21, -9,
1083
- -144, -95, -87, -76, -23, -6, -3, -52, -144, -144,
1084
- -55, -57, -24, -144, -144, -30, -64, -144, -144, -66,
1085
- -36, -68, -144, -70, -144, -16, -46, -17, -48, -144,
1086
- -18, -15, -144, 227, -112, -96, -97, -114, -104, -88,
1087
- -144, -101, -144, -103, -105, -7, -91, -98, -100, -144,
1088
- -144, -144, -38, -10, -144, -144, -144, -144, -39, -37,
1089
- -144, -144, -144, -144, -31, -144, -144, -144, -144, -144,
1090
- -144, -144, -40, -144, -144, -144, -144, -129, -144, -144,
1091
- -41, -144, -42, -113, -116, -117, -144, -102, -144, -144,
1092
- -49, -50, -51, -71, -53, -54, -144, -56, -144, -28,
1093
- -29, -34, -144, -32, -35, -27, -62, -63, -58, -60,
1094
- -59, -61, -144, -144, -65, -67, -144, -69, -144, -130,
1095
- -144, -131, -133, -132, -19, -144, -144, -115, -118, -106,
1096
- -144, -108, -125, -144, -144, -119, -121, -126, -111, -127,
1097
- -144, -144, -25, -144, -26, -144, -144, -144, -144, -136,
1098
- -144, -144, -140, -144, -144, -134, -47, -43, -107, -123,
1099
- -124, -144, -132, -109, -110, -144, -144, -73, -74, -33,
1100
- -72, -144, -144, -137, -141, -135, -144, -138, -144, -142,
1101
- -122, -120, -128, -44, -45, -139, -143 ]
870
+ -152, -152, -152, -152, -1, -4, -2, -152, -152, -12,
871
+ -5, -13, -14, -74, -49, -152, -152, -16, -15, -76,
872
+ -152, -17, -78, -53, -21, -18, -152, -56, -152, -23,
873
+ -58, -152, -24, -20, -152, -30, -63, -66, -152, -36,
874
+ -22, -68, -152, -70, -152, -72, -47, -152, -11, -152,
875
+ -6, -102, -94, -83, -9, -95, -84, -152, -85, -103,
876
+ -98, -86, -152, -87, -152, -88, -97, -89, -90, -100,
877
+ -91, -107, -92, -152, -101, -93, -8, -3, -152, -152,
878
+ -43, -152, -137, -152, -152, -38, -152, -152, -152, -152,
879
+ -10, -152, -152, -152, -152, -37, -39, -40, -152, -152,
880
+ -152, -152, -31, -152, -152, -152, -152, -152, -152, -152,
881
+ -152, -152, -152, -41, -152, -42, 239, -104, -120, -105,
882
+ -99, -106, -108, -152, -122, -109, -152, -112, -111, -113,
883
+ -96, -7, -73, -152, -19, -152, -138, -139, -141, -140,
884
+ -152, -152, -75, -77, -50, -51, -52, -79, -152, -57,
885
+ -54, -55, -27, -34, -152, -32, -35, -28, -29, -152,
886
+ -62, -59, -60, -61, -64, -65, -152, -152, -67, -152,
887
+ -69, -71, -152, -124, -125, -121, -110, -152, -152, -44,
888
+ -148, -152, -152, -133, -127, -129, -152, -152, -142, -152,
889
+ -144, -48, -152, -152, -26, -152, -25, -152, -152, -152,
890
+ -114, -123, -126, -135, -134, -119, -152, -152, -152, -116,
891
+ -143, -149, -132, -152, -140, -131, -152, -150, -152, -152,
892
+ -146, -145, -81, -82, -33, -152, -80, -152, -152, -117,
893
+ -118, -115, -130, -128, -151, -147, -45, -46, -136 ]
1102
894
 
1103
895
  racc_goto_table = [
1104
- 39, 49, 16, 79, 124, 126, 137, 127, 143, 173,
1105
- 119, 75, 92, 159, 125, 191, 74, 98, 99, 136,
1106
- 195, 7, 112, 153, 45, 134, 135, 156, 154, 157,
1107
- 46, 75, 155, 120, 86, 133, 87, 122, 88, 142,
1108
- 34, 31, 174, 123, 163, 220, 9, 177, 5, 3,
1109
- 167, nil, nil, 130, 131, 132, 191, nil, nil, 195,
1110
- 168, nil, 117, 45, nil, nil, nil, 166, 200, nil,
1111
- nil, nil, nil, nil, 218, 146, 147, 148, 149, 150,
1112
- 151, nil, nil, nil, nil, nil, nil, 163, 209, 138,
1113
- nil, nil, 141, nil, 210, nil, nil, 139, 140, 202,
1114
- nil, 117, 207, 208, nil, nil, nil, 136, nil, 16,
1115
- nil, nil, nil, 16, nil, nil, nil, 170, nil, 117,
1116
- nil, nil, nil, nil, nil, 179, 126, 127, 202, 196,
896
+ 54, 26, 130, 66, 149, 85, 172, 155, 148, 176,
897
+ 139, 136, 82, 95, 188, 50, 96, 181, 83, 97,
898
+ 174, 206, 118, 6, 166, 170, 169, 121, 143, 113,
899
+ 218, 77, 115, 160, 161, 162, 163, 150, 151, 164,
900
+ 165, 147, 132, 171, 142, 120, 168, 80, 154, 76,
901
+ 117, 73, 173, 207, 175, 117, 232, 8, 204, 4,
902
+ 122, 3, nil, 139, nil, nil, nil, nil, nil, nil,
903
+ nil, 202, 144, 145, 146, 82, nil, nil, nil, nil,
904
+ nil, 133, nil, nil, nil, nil, 50, nil, nil, 188,
905
+ nil, nil, 157, 158, 82, 181, 172, 176, 153, nil,
906
+ nil, 159, nil, 201, 224, 66, nil, 66, 222, 223,
907
+ 226, 214, 212, nil, 148, nil, nil, nil, nil, 215,
908
+ nil, nil, nil, nil, nil, nil, 191, nil, nil, nil,
909
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
910
+ 189, 214, nil, nil, nil, nil, nil, nil, nil, nil,
911
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1117
912
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1118
- nil, nil, nil, nil, nil, nil, nil, 188, nil, nil,
1119
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 199,
913
+ 203, nil, nil, nil, nil, nil, nil, nil, 208, nil,
914
+ nil, nil, nil, nil, nil, nil, nil, 219, nil, nil,
915
+ nil, 82, nil, nil, nil, 153, nil, 225, nil, 227,
1120
916
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1121
- nil, nil, 141, nil, nil, 211, 212, nil, nil, nil,
1122
- nil, 117, 216, nil, nil, nil, nil, nil, nil, nil,
1123
917
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1124
- nil, nil, 222 ]
918
+ nil, 238 ]
1125
919
 
1126
920
  racc_goto_check = [
1127
- 8, 10, 32, 33, 40, 39, 24, 41, 16, 43,
1128
- 17, 8, 19, 48, 31, 50, 38, 19, 19, 22,
1129
- 51, 3, 19, 20, 5, 21, 21, 20, 25, 27,
1130
- 3, 8, 26, 19, 34, 28, 38, 18, 32, 14,
1131
- 7, 6, 44, 45, 40, 47, 4, 49, 2, 1,
1132
- 40, nil, nil, 19, 19, 19, 50, nil, nil, 51,
1133
- 31, nil, 32, 5, nil, nil, nil, 17, 48, nil,
1134
- nil, nil, nil, nil, 43, 23, 23, 23, 23, 23,
1135
- 23, nil, nil, nil, nil, nil, nil, 40, 16, 10,
1136
- nil, nil, 10, nil, 24, nil, nil, 8, 8, 40,
1137
- nil, 32, 22, 22, nil, nil, nil, 22, nil, 32,
1138
- nil, nil, nil, 32, nil, nil, nil, 10, nil, 32,
1139
- nil, nil, nil, nil, nil, 8, 39, 41, 40, 19,
921
+ 8, 10, 37, 36, 24, 19, 43, 16, 22, 45,
922
+ 44, 52, 36, 19, 55, 5, 19, 54, 17, 19,
923
+ 35, 47, 42, 3, 20, 27, 20, 42, 31, 19,
924
+ 47, 3, 19, 23, 23, 23, 23, 21, 21, 25,
925
+ 25, 32, 29, 28, 30, 38, 26, 18, 14, 7,
926
+ 8, 6, 44, 48, 49, 8, 51, 4, 53, 2,
927
+ 36, 1, nil, 44, nil, nil, nil, nil, nil, nil,
928
+ nil, 35, 19, 19, 19, 36, nil, nil, nil, nil,
929
+ nil, 17, nil, nil, nil, nil, 5, nil, nil, 55,
930
+ nil, nil, 8, 8, 36, 54, 43, 45, 10, nil,
931
+ nil, 10, nil, 44, 16, 36, nil, 36, 22, 22,
932
+ 24, 44, 52, nil, 22, nil, nil, nil, nil, 37,
933
+ nil, nil, nil, nil, nil, nil, 19, nil, nil, nil,
1140
934
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
935
+ 10, 44, nil, nil, nil, nil, nil, nil, nil, nil,
936
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
937
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
938
+ 8, nil, nil, nil, nil, nil, nil, nil, 10, nil,
1141
939
  nil, nil, nil, nil, nil, nil, nil, 10, nil, nil,
1142
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 33,
940
+ nil, 36, nil, nil, nil, 10, nil, 10, nil, 10,
1143
941
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1144
- nil, nil, 10, nil, nil, 10, 10, nil, nil, nil,
1145
- nil, 32, 10, nil, nil, nil, nil, nil, nil, nil,
1146
942
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
1147
- nil, nil, 8 ]
943
+ nil, 8 ]
1148
944
 
1149
945
  racc_goto_pointer = [
1150
- nil, 49, 48, 21, 46, 17, 37, 36, -4, nil,
1151
- -11, nil, nil, nil, -64, nil, -95, -54, -35, -36,
1152
- -88, -70, -78, -30, -91, -85, -82, -87, -59, nil,
1153
- nil, -63, -2, -13, 2, nil, nil, nil, 1, -75,
1154
- -73, -75, nil, -120, -87, -34, nil, -160, -104, -82,
1155
- -145, -143 ]
946
+ nil, 61, 59, 23, 57, 9, 44, 42, -7, nil,
947
+ 0, nil, nil, nil, -50, nil, -91, 2, 32, -15,
948
+ -85, -56, -84, -70, -88, -68, -64, -87, -71, -36,
949
+ -40, -58, -50, nil, nil, -104, -4, -64, -15, nil,
950
+ nil, nil, -35, -117, -72, -117, nil, -156, -124, -70,
951
+ nil, -160, -71, -119, -118, -125 ]
1156
952
 
1157
953
  racc_goto_default = [
1158
- nil, nil, nil, nil, nil, 11, nil, 152, 71, 12,
1159
- 118, 1, 52, 55, nil, 60, nil, 144, 66, 68,
1160
- nil, 47, 50, 51, nil, 56, 59, 61, 63, 32,
1161
- 35, 40, 172, nil, 20, 22, 25, 27, nil, 81,
1162
- 82, 83, 84, 190, nil, nil, 175, 176, nil, nil,
1163
- 161, 162 ]
954
+ nil, nil, nil, nil, nil, 10, nil, 167, 18, 1,
955
+ 81, 2, 32, 35, nil, 39, nil, 156, 46, 14,
956
+ nil, 23, 27, 30, nil, 36, 37, 41, 43, 45,
957
+ 13, 19, 22, 60, 62, 64, 183, nil, 69, 71,
958
+ 74, 51, nil, 125, 126, 128, 129, 182, nil, nil,
959
+ 184, 185, nil, nil, 137, 138 ]
1164
960
 
1165
961
  racc_token_table = {
1166
962
  false => 0,
@@ -1173,67 +969,69 @@ racc_token_table = {
1173
969
  :UMINUS => 7,
1174
970
  "@pre" => 8,
1175
971
  "not" => 9,
1176
- "sizeof" => 10,
1177
- "*" => 11,
1178
- "/" => 12,
1179
- "%" => 13,
1180
- "+" => 14,
1181
- "-" => 15,
1182
- :RANGE => 16,
1183
- :IN_RANGE => 17,
1184
- "<" => 18,
1185
- "<=" => 19,
1186
- ">" => 20,
1187
- ">=" => 21,
1188
- "==" => 22,
1189
- "!=" => 23,
1190
- "and" => 24,
1191
- "or" => 25,
1192
- "xor" => 26,
1193
- "implies" => 27,
1194
- :POINTER => 28,
1195
- :CONSTANT => 29,
1196
- :CHARACTER => 30,
1197
- :STRING => 31,
1198
- :TYPEDEF_NAME => 32,
1199
- :IDENTIFIER => 33,
1200
- :LABEL => 34,
1201
- :END_OF_STATEMENT => 35,
1202
- "context" => 36,
1203
- "inv" => 37,
1204
- "pre" => 38,
1205
- "post" => 39,
1206
- "(" => 40,
1207
- ")" => 41,
1208
- "return" => 42,
1209
- "in" => 43,
1210
- "[" => 44,
1211
- "]" => 45,
1212
- "," => 46,
1213
- "&" => 47,
1214
- "forall" => 48,
1215
- "|" => 49,
1216
- "exists" => 50,
1217
- ".." => 51,
1218
- "..." => 52,
1219
- "void" => 53,
1220
- "char" => 54,
1221
- "short" => 55,
1222
- "int" => 56,
1223
- "long" => 57,
1224
- "float" => 58,
1225
- "double" => 59,
1226
- "signed" => 60,
1227
- "unsigned" => 61,
1228
- "struct" => 62,
1229
- "union" => 63,
1230
- "const" => 64,
1231
- "volatile" => 65,
1232
- "enum" => 66 }
972
+ "~" => 10,
973
+ "sizeof" => 11,
974
+ "*" => 12,
975
+ "/" => 13,
976
+ "%" => 14,
977
+ "+" => 15,
978
+ "-" => 16,
979
+ :RANGE => 17,
980
+ :IN_RANGE => 18,
981
+ "<" => 19,
982
+ "<=" => 20,
983
+ ">" => 21,
984
+ ">=" => 22,
985
+ "==" => 23,
986
+ "!=" => 24,
987
+ "&" => 25,
988
+ "^" => 26,
989
+ "|" => 27,
990
+ "and" => 28,
991
+ "or" => 29,
992
+ "xor" => 30,
993
+ "implies" => 31,
994
+ :POINTER => 32,
995
+ :CONSTANT => 33,
996
+ :CHARACTER => 34,
997
+ :STRING => 35,
998
+ :TYPEDEF_NAME => 36,
999
+ :IDENTIFIER => 37,
1000
+ :LABEL => 38,
1001
+ :END_OF_STATEMENT => 39,
1002
+ "context" => 40,
1003
+ "inv" => 41,
1004
+ "pre" => 42,
1005
+ "post" => 43,
1006
+ "(" => 44,
1007
+ ")" => 45,
1008
+ "return" => 46,
1009
+ "in" => 47,
1010
+ "[" => 48,
1011
+ "]" => 49,
1012
+ "," => 50,
1013
+ "forall" => 51,
1014
+ "exists" => 52,
1015
+ ".." => 53,
1016
+ "..." => 54,
1017
+ "void" => 55,
1018
+ "char" => 56,
1019
+ "short" => 57,
1020
+ "int" => 58,
1021
+ "long" => 59,
1022
+ "float" => 60,
1023
+ "double" => 61,
1024
+ "signed" => 62,
1025
+ "unsigned" => 63,
1026
+ "struct" => 64,
1027
+ "union" => 65,
1028
+ "const" => 66,
1029
+ "volatile" => 67,
1030
+ "enum" => 68 }
1233
1031
 
1234
1032
  racc_use_result_var = true
1235
1033
 
1236
- racc_nt_base = 67
1034
+ racc_nt_base = 69
1237
1035
 
1238
1036
  Racc_arg = [
1239
1037
  racc_action_table,
@@ -1262,6 +1060,7 @@ Racc_token_to_s_table = [
1262
1060
  'UMINUS',
1263
1061
  '"@pre"',
1264
1062
  '"not"',
1063
+ '"~"',
1265
1064
  '"sizeof"',
1266
1065
  '"*"',
1267
1066
  '"/"',
@@ -1276,6 +1075,9 @@ Racc_token_to_s_table = [
1276
1075
  '">="',
1277
1076
  '"=="',
1278
1077
  '"!="',
1078
+ '"&"',
1079
+ '"^"',
1080
+ '"|"',
1279
1081
  '"and"',
1280
1082
  '"or"',
1281
1083
  '"xor"',
@@ -1299,9 +1101,7 @@ Racc_token_to_s_table = [
1299
1101
  '"["',
1300
1102
  '"]"',
1301
1103
  '","',
1302
- '"&"',
1303
1104
  '"forall"',
1304
- '"|"',
1305
1105
  '"exists"',
1306
1106
  '".."',
1307
1107
  '"..."',
@@ -1345,9 +1145,13 @@ Racc_token_to_s_table = [
1345
1145
  'in_expression',
1346
1146
  'range',
1347
1147
  'relational_expression',
1148
+ 'equality_expression',
1348
1149
  'and_expression',
1349
- 'or_expression',
1350
- 'xor_expression',
1150
+ 'exclusive_or_expression',
1151
+ 'inclusive_or_expression',
1152
+ 'logical_and_expression',
1153
+ 'logical_or_expression',
1154
+ 'logical_xor_expression',
1351
1155
  'primitive_type',
1352
1156
  'struct_or_union',
1353
1157
  'type_qualifier',
@@ -1382,35 +1186,35 @@ Racc_debug_parser = false
1382
1186
 
1383
1187
  # reduce 2 omitted
1384
1188
 
1385
- module_eval <<'.,.,', 'src/ocl.y', 43
1189
+ module_eval <<'.,.,', 'src/ocl.y', 44
1386
1190
  def _reduce_3( val, _values, result )
1387
1191
  result = val[1]
1388
1192
  result
1389
1193
  end
1390
1194
  .,.,
1391
1195
 
1392
- module_eval <<'.,.,', 'src/ocl.y', 44
1196
+ module_eval <<'.,.,', 'src/ocl.y', 45
1393
1197
  def _reduce_4( val, _values, result )
1394
1198
  result = []
1395
1199
  result
1396
1200
  end
1397
1201
  .,.,
1398
1202
 
1399
- module_eval <<'.,.,', 'src/ocl.y', 48
1203
+ module_eval <<'.,.,', 'src/ocl.y', 49
1400
1204
  def _reduce_5( val, _values, result )
1401
1205
  result = val[0,1]
1402
1206
  result
1403
1207
  end
1404
1208
  .,.,
1405
1209
 
1406
- module_eval <<'.,.,', 'src/ocl.y', 49
1210
+ module_eval <<'.,.,', 'src/ocl.y', 50
1407
1211
  def _reduce_6( val, _values, result )
1408
1212
  val[0] << val[1]
1409
1213
  result
1410
1214
  end
1411
1215
  .,.,
1412
1216
 
1413
- module_eval <<'.,.,', 'src/ocl.y', 53
1217
+ module_eval <<'.,.,', 'src/ocl.y', 54
1414
1218
  def _reduce_7( val, _values, result )
1415
1219
  result = val[1]; self.context = val[1]
1416
1220
  result
@@ -1421,14 +1225,14 @@ module_eval <<'.,.,', 'src/ocl.y', 53
1421
1225
 
1422
1226
  # reduce 9 omitted
1423
1227
 
1424
- module_eval <<'.,.,', 'src/ocl.y', 63
1228
+ module_eval <<'.,.,', 'src/ocl.y', 64
1425
1229
  def _reduce_10( val, _values, result )
1426
1230
  val[0].condition = val[1]; result = val[0]
1427
1231
  result
1428
1232
  end
1429
1233
  .,.,
1430
1234
 
1431
- module_eval <<'.,.,', 'src/ocl.y', 67
1235
+ module_eval <<'.,.,', 'src/ocl.y', 68
1432
1236
  def _reduce_11( val, _values, result )
1433
1237
  result = Condition.new(val[0], val[1])
1434
1238
  result
@@ -1449,7 +1253,7 @@ module_eval <<'.,.,', 'src/ocl.y', 67
1449
1253
 
1450
1254
  # reduce 18 omitted
1451
1255
 
1452
- module_eval <<'.,.,', 'src/ocl.y', 81
1256
+ module_eval <<'.,.,', 'src/ocl.y', 82
1453
1257
  def _reduce_19( val, _values, result )
1454
1258
  result = Paren.new(val[1])
1455
1259
  result
@@ -1458,7 +1262,7 @@ module_eval <<'.,.,', 'src/ocl.y', 81
1458
1262
 
1459
1263
  # reduce 20 omitted
1460
1264
 
1461
- module_eval <<'.,.,', 'src/ocl.y', 86
1265
+ module_eval <<'.,.,', 'src/ocl.y', 87
1462
1266
  def _reduce_21( val, _values, result )
1463
1267
  result = 'ocl__ret_val'
1464
1268
  result
@@ -1471,35 +1275,35 @@ module_eval <<'.,.,', 'src/ocl.y', 86
1471
1275
 
1472
1276
  # reduce 24 omitted
1473
1277
 
1474
- module_eval <<'.,.,', 'src/ocl.y', 100
1278
+ module_eval <<'.,.,', 'src/ocl.y', 101
1475
1279
  def _reduce_25( val, _values, result )
1476
1280
  result = val[0,4].join
1477
1281
  result
1478
1282
  end
1479
1283
  .,.,
1480
1284
 
1481
- module_eval <<'.,.,', 'src/ocl.y', 101
1285
+ module_eval <<'.,.,', 'src/ocl.y', 102
1482
1286
  def _reduce_26( val, _values, result )
1483
1287
  result = val[0,4].join
1484
1288
  result
1485
1289
  end
1486
1290
  .,.,
1487
1291
 
1488
- module_eval <<'.,.,', 'src/ocl.y', 102
1292
+ module_eval <<'.,.,', 'src/ocl.y', 103
1489
1293
  def _reduce_27( val, _values, result )
1490
1294
  result = val[0,3].join
1491
1295
  result
1492
1296
  end
1493
1297
  .,.,
1494
1298
 
1495
- module_eval <<'.,.,', 'src/ocl.y', 103
1299
+ module_eval <<'.,.,', 'src/ocl.y', 104
1496
1300
  def _reduce_28( val, _values, result )
1497
1301
  result = val[0,3].join
1498
1302
  result
1499
1303
  end
1500
1304
  .,.,
1501
1305
 
1502
- module_eval <<'.,.,', 'src/ocl.y', 104
1306
+ module_eval <<'.,.,', 'src/ocl.y', 105
1503
1307
  def _reduce_29( val, _values, result )
1504
1308
  result = val[0,3].join
1505
1309
  result
@@ -1508,7 +1312,7 @@ module_eval <<'.,.,', 'src/ocl.y', 104
1508
1312
 
1509
1313
  # reduce 30 omitted
1510
1314
 
1511
- module_eval <<'.,.,', 'src/ocl.y', 109
1315
+ module_eval <<'.,.,', 'src/ocl.y', 110
1512
1316
  def _reduce_31( val, _values, result )
1513
1317
  result = add_old(val[0].to_s)
1514
1318
  result
@@ -1517,7 +1321,7 @@ module_eval <<'.,.,', 'src/ocl.y', 109
1517
1321
 
1518
1322
  # reduce 32 omitted
1519
1323
 
1520
- module_eval <<'.,.,', 'src/ocl.y', 115
1324
+ module_eval <<'.,.,', 'src/ocl.y', 116
1521
1325
  def _reduce_33( val, _values, result )
1522
1326
  result = val[0,3].join(' ')
1523
1327
  result
@@ -1530,242 +1334,262 @@ module_eval <<'.,.,', 'src/ocl.y', 115
1530
1334
 
1531
1335
  # reduce 36 omitted
1532
1336
 
1533
- module_eval <<'.,.,', 'src/ocl.y', 126
1337
+ module_eval <<'.,.,', 'src/ocl.y', 127
1534
1338
  def _reduce_37( val, _values, result )
1535
1339
  result = UAddrs.new(val[1])
1536
1340
  result
1537
1341
  end
1538
1342
  .,.,
1539
1343
 
1540
- module_eval <<'.,.,', 'src/ocl.y', 127
1344
+ module_eval <<'.,.,', 'src/ocl.y', 128
1541
1345
  def _reduce_38( val, _values, result )
1542
1346
  result = UDeref.new(val[1])
1543
1347
  result
1544
1348
  end
1545
1349
  .,.,
1546
1350
 
1547
- module_eval <<'.,.,', 'src/ocl.y', 128
1351
+ module_eval <<'.,.,', 'src/ocl.y', 129
1548
1352
  def _reduce_39( val, _values, result )
1549
1353
  result = UPlus.new(val[1])
1550
1354
  result
1551
1355
  end
1552
1356
  .,.,
1553
1357
 
1554
- module_eval <<'.,.,', 'src/ocl.y', 129
1358
+ module_eval <<'.,.,', 'src/ocl.y', 130
1555
1359
  def _reduce_40( val, _values, result )
1556
1360
  result = UMinus.new(val[1])
1557
1361
  result
1558
1362
  end
1559
1363
  .,.,
1560
1364
 
1561
- module_eval <<'.,.,', 'src/ocl.y', 130
1365
+ module_eval <<'.,.,', 'src/ocl.y', 131
1562
1366
  def _reduce_41( val, _values, result )
1563
1367
  result = Not.new(val[1])
1564
1368
  result
1565
1369
  end
1566
1370
  .,.,
1567
1371
 
1568
- module_eval <<'.,.,', 'src/ocl.y', 131
1372
+ module_eval <<'.,.,', 'src/ocl.y', 132
1569
1373
  def _reduce_42( val, _values, result )
1570
- result = SizeOf.new(val[1])
1374
+ result = UBitNot.new(val[1])
1571
1375
  result
1572
1376
  end
1573
1377
  .,.,
1574
1378
 
1575
- module_eval <<'.,.,', 'src/ocl.y', 132
1379
+ module_eval <<'.,.,', 'src/ocl.y', 133
1576
1380
  def _reduce_43( val, _values, result )
1577
- result = val[0,4].join
1381
+ result = SizeOf.new(val[1])
1578
1382
  result
1579
1383
  end
1580
1384
  .,.,
1581
1385
 
1582
1386
  module_eval <<'.,.,', 'src/ocl.y', 134
1583
1387
  def _reduce_44( val, _values, result )
1584
- result = Forall.new(val[2], val[4])
1388
+ result = val[0,4].join
1585
1389
  result
1586
1390
  end
1587
1391
  .,.,
1588
1392
 
1589
1393
  module_eval <<'.,.,', 'src/ocl.y', 136
1590
1394
  def _reduce_45( val, _values, result )
1591
- result = Exists.new(val[2], val[4])
1395
+ result = Forall.new(val[2], val[4])
1592
1396
  result
1593
1397
  end
1594
1398
  .,.,
1595
1399
 
1596
- # reduce 46 omitted
1597
-
1598
- module_eval <<'.,.,', 'src/ocl.y', 141
1599
- def _reduce_47( val, _values, result )
1600
- result = val[0,4].join(' ')
1400
+ module_eval <<'.,.,', 'src/ocl.y', 138
1401
+ def _reduce_46( val, _values, result )
1402
+ result = Exists.new(val[2], val[4])
1601
1403
  result
1602
1404
  end
1603
1405
  .,.,
1604
1406
 
1605
- # reduce 48 omitted
1407
+ # reduce 47 omitted
1606
1408
 
1607
- module_eval <<'.,.,', 'src/ocl.y', 146
1608
- def _reduce_49( val, _values, result )
1609
- result = val[0,3].join(' ')
1409
+ module_eval <<'.,.,', 'src/ocl.y', 143
1410
+ def _reduce_48( val, _values, result )
1411
+ result = val[0,4].join(' ')
1610
1412
  result
1611
1413
  end
1612
1414
  .,.,
1613
1415
 
1614
- module_eval <<'.,.,', 'src/ocl.y', 147
1416
+ # reduce 49 omitted
1417
+
1418
+ module_eval <<'.,.,', 'src/ocl.y', 148
1615
1419
  def _reduce_50( val, _values, result )
1616
1420
  result = val[0,3].join(' ')
1617
1421
  result
1618
1422
  end
1619
1423
  .,.,
1620
1424
 
1621
- module_eval <<'.,.,', 'src/ocl.y', 148
1425
+ module_eval <<'.,.,', 'src/ocl.y', 149
1622
1426
  def _reduce_51( val, _values, result )
1623
1427
  result = val[0,3].join(' ')
1624
1428
  result
1625
1429
  end
1626
1430
  .,.,
1627
1431
 
1628
- # reduce 52 omitted
1629
-
1630
- module_eval <<'.,.,', 'src/ocl.y', 153
1631
- def _reduce_53( val, _values, result )
1432
+ module_eval <<'.,.,', 'src/ocl.y', 150
1433
+ def _reduce_52( val, _values, result )
1632
1434
  result = val[0,3].join(' ')
1633
1435
  result
1634
1436
  end
1635
1437
  .,.,
1636
1438
 
1637
- module_eval <<'.,.,', 'src/ocl.y', 154
1439
+ # reduce 53 omitted
1440
+
1441
+ module_eval <<'.,.,', 'src/ocl.y', 155
1638
1442
  def _reduce_54( val, _values, result )
1639
1443
  result = val[0,3].join(' ')
1640
1444
  result
1641
1445
  end
1642
1446
  .,.,
1643
1447
 
1644
- # reduce 55 omitted
1645
-
1646
- module_eval <<'.,.,', 'src/ocl.y', 160
1647
- def _reduce_56( val, _values, result )
1648
- result = val[2].test_expression(val[0])
1448
+ module_eval <<'.,.,', 'src/ocl.y', 156
1449
+ def _reduce_55( val, _values, result )
1450
+ result = val[0,3].join(' ')
1649
1451
  result
1650
1452
  end
1651
1453
  .,.,
1652
1454
 
1653
- # reduce 57 omitted
1455
+ # reduce 56 omitted
1654
1456
 
1655
- module_eval <<'.,.,', 'src/ocl.y', 165
1656
- def _reduce_58( val, _values, result )
1657
- result = val[0,3].join(' ')
1457
+ module_eval <<'.,.,', 'src/ocl.y', 162
1458
+ def _reduce_57( val, _values, result )
1459
+ result = val[2].test_expression(val[0])
1658
1460
  result
1659
1461
  end
1660
1462
  .,.,
1661
1463
 
1662
- module_eval <<'.,.,', 'src/ocl.y', 166
1464
+ # reduce 58 omitted
1465
+
1466
+ module_eval <<'.,.,', 'src/ocl.y', 167
1663
1467
  def _reduce_59( val, _values, result )
1664
1468
  result = val[0,3].join(' ')
1665
1469
  result
1666
1470
  end
1667
1471
  .,.,
1668
1472
 
1669
- module_eval <<'.,.,', 'src/ocl.y', 167
1473
+ module_eval <<'.,.,', 'src/ocl.y', 168
1670
1474
  def _reduce_60( val, _values, result )
1671
1475
  result = val[0,3].join(' ')
1672
1476
  result
1673
1477
  end
1674
1478
  .,.,
1675
1479
 
1676
- module_eval <<'.,.,', 'src/ocl.y', 168
1480
+ module_eval <<'.,.,', 'src/ocl.y', 169
1677
1481
  def _reduce_61( val, _values, result )
1678
1482
  result = val[0,3].join(' ')
1679
1483
  result
1680
1484
  end
1681
1485
  .,.,
1682
1486
 
1683
- module_eval <<'.,.,', 'src/ocl.y', 169
1487
+ module_eval <<'.,.,', 'src/ocl.y', 170
1684
1488
  def _reduce_62( val, _values, result )
1685
1489
  result = val[0,3].join(' ')
1686
1490
  result
1687
1491
  end
1688
1492
  .,.,
1689
1493
 
1690
- module_eval <<'.,.,', 'src/ocl.y', 170
1691
- def _reduce_63( val, _values, result )
1494
+ # reduce 63 omitted
1495
+
1496
+ module_eval <<'.,.,', 'src/ocl.y', 175
1497
+ def _reduce_64( val, _values, result )
1692
1498
  result = val[0,3].join(' ')
1693
1499
  result
1694
1500
  end
1695
1501
  .,.,
1696
1502
 
1697
- # reduce 64 omitted
1698
-
1699
- module_eval <<'.,.,', 'src/ocl.y', 175
1503
+ module_eval <<'.,.,', 'src/ocl.y', 176
1700
1504
  def _reduce_65( val, _values, result )
1701
- result = And.new(val[0], val[2])
1505
+ result = val[0,3].join(' ')
1702
1506
  result
1703
1507
  end
1704
1508
  .,.,
1705
1509
 
1706
1510
  # reduce 66 omitted
1707
1511
 
1708
- module_eval <<'.,.,', 'src/ocl.y', 180
1512
+ module_eval <<'.,.,', 'src/ocl.y', 181
1709
1513
  def _reduce_67( val, _values, result )
1710
- result = Or.new(val[0], val[2])
1514
+ result = val[0,3].join(' ')
1711
1515
  result
1712
1516
  end
1713
1517
  .,.,
1714
1518
 
1715
1519
  # reduce 68 omitted
1716
1520
 
1717
- module_eval <<'.,.,', 'src/ocl.y', 185
1521
+ module_eval <<'.,.,', 'src/ocl.y', 186
1718
1522
  def _reduce_69( val, _values, result )
1719
- result = XOr.new(val[0], val[2])
1523
+ result = val[0,3].join(' ')
1720
1524
  result
1721
1525
  end
1722
1526
  .,.,
1723
1527
 
1724
1528
  # reduce 70 omitted
1725
1529
 
1726
- module_eval <<'.,.,', 'src/ocl.y', 190
1530
+ module_eval <<'.,.,', 'src/ocl.y', 191
1727
1531
  def _reduce_71( val, _values, result )
1728
- result = Implies.new(val[0], val[2])
1532
+ result = val[0,3].join(' ')
1729
1533
  result
1730
1534
  end
1731
1535
  .,.,
1732
1536
 
1733
- module_eval <<'.,.,', 'src/ocl.y', 194
1734
- def _reduce_72( val, _values, result )
1735
- result = IteratorRange.new(val[0], val[2])
1736
- result
1737
- end
1738
- .,.,
1537
+ # reduce 72 omitted
1739
1538
 
1740
- module_eval <<'.,.,', 'src/ocl.y', 200
1539
+ module_eval <<'.,.,', 'src/ocl.y', 197
1741
1540
  def _reduce_73( val, _values, result )
1742
- result = Range.new(val[0], val[2], false)
1541
+ result = And.new(val[0], val[2])
1743
1542
  result
1744
1543
  end
1745
1544
  .,.,
1746
1545
 
1747
- module_eval <<'.,.,', 'src/ocl.y', 202
1748
- def _reduce_74( val, _values, result )
1749
- result = Range.new(val[0], val[2], true)
1546
+ # reduce 74 omitted
1547
+
1548
+ module_eval <<'.,.,', 'src/ocl.y', 203
1549
+ def _reduce_75( val, _values, result )
1550
+ result = Or.new(val[0], val[2])
1750
1551
  result
1751
1552
  end
1752
1553
  .,.,
1753
1554
 
1754
- # reduce 75 omitted
1755
-
1756
1555
  # reduce 76 omitted
1757
1556
 
1758
- # reduce 77 omitted
1557
+ module_eval <<'.,.,', 'src/ocl.y', 209
1558
+ def _reduce_77( val, _values, result )
1559
+ result = XOr.new(val[0], val[2])
1560
+ result
1561
+ end
1562
+ .,.,
1759
1563
 
1760
1564
  # reduce 78 omitted
1761
1565
 
1762
- # reduce 79 omitted
1566
+ module_eval <<'.,.,', 'src/ocl.y', 215
1567
+ def _reduce_79( val, _values, result )
1568
+ result = Implies.new(val[0], val[2])
1569
+ result
1570
+ end
1571
+ .,.,
1763
1572
 
1764
- # reduce 80 omitted
1573
+ module_eval <<'.,.,', 'src/ocl.y', 219
1574
+ def _reduce_80( val, _values, result )
1575
+ result = IteratorRange.new(val[0], val[2])
1576
+ result
1577
+ end
1578
+ .,.,
1765
1579
 
1766
- # reduce 81 omitted
1580
+ module_eval <<'.,.,', 'src/ocl.y', 225
1581
+ def _reduce_81( val, _values, result )
1582
+ result = Range.new(val[0], val[2], false)
1583
+ result
1584
+ end
1585
+ .,.,
1767
1586
 
1768
- # reduce 82 omitted
1587
+ module_eval <<'.,.,', 'src/ocl.y', 227
1588
+ def _reduce_82( val, _values, result )
1589
+ result = Range.new(val[0], val[2], true)
1590
+ result
1591
+ end
1592
+ .,.,
1769
1593
 
1770
1594
  # reduce 83 omitted
1771
1595
 
@@ -1777,91 +1601,107 @@ module_eval <<'.,.,', 'src/ocl.y', 202
1777
1601
 
1778
1602
  # reduce 87 omitted
1779
1603
 
1780
- module_eval <<'.,.,', 'src/ocl.y', 232
1781
- def _reduce_88( val, _values, result )
1604
+ # reduce 88 omitted
1605
+
1606
+ # reduce 89 omitted
1607
+
1608
+ # reduce 90 omitted
1609
+
1610
+ # reduce 91 omitted
1611
+
1612
+ # reduce 92 omitted
1613
+
1614
+ # reduce 93 omitted
1615
+
1616
+ # reduce 94 omitted
1617
+
1618
+ # reduce 95 omitted
1619
+
1620
+ module_eval <<'.,.,', 'src/ocl.y', 257
1621
+ def _reduce_96( val, _values, result )
1782
1622
  result = val[1]; result.base_type = val[0]
1783
1623
  result
1784
1624
  end
1785
1625
  .,.,
1786
1626
 
1787
- module_eval <<'.,.,', 'src/ocl.y', 234
1788
- def _reduce_89( val, _values, result )
1627
+ module_eval <<'.,.,', 'src/ocl.y', 259
1628
+ def _reduce_97( val, _values, result )
1789
1629
  result = CType::Type.new(); result.base_type = val[0]
1790
1630
  result
1791
1631
  end
1792
1632
  .,.,
1793
1633
 
1794
- module_eval <<'.,.,', 'src/ocl.y', 239
1795
- def _reduce_90( val, _values, result )
1634
+ module_eval <<'.,.,', 'src/ocl.y', 264
1635
+ def _reduce_98( val, _values, result )
1796
1636
  result = CType::Primitive.new(val[0])
1797
1637
  result
1798
1638
  end
1799
1639
  .,.,
1800
1640
 
1801
- module_eval <<'.,.,', 'src/ocl.y', 240
1802
- def _reduce_91( val, _values, result )
1641
+ module_eval <<'.,.,', 'src/ocl.y', 265
1642
+ def _reduce_99( val, _values, result )
1803
1643
  result = val[1].insert(val[0])
1804
1644
  result
1805
1645
  end
1806
1646
  .,.,
1807
1647
 
1808
- module_eval <<'.,.,', 'src/ocl.y', 245
1809
- def _reduce_92( val, _values, result )
1648
+ module_eval <<'.,.,', 'src/ocl.y', 270
1649
+ def _reduce_100( val, _values, result )
1810
1650
  result = CType::Base.new(val[0])
1811
1651
  result
1812
1652
  end
1813
1653
  .,.,
1814
1654
 
1815
- module_eval <<'.,.,', 'src/ocl.y', 246
1816
- def _reduce_93( val, _values, result )
1655
+ module_eval <<'.,.,', 'src/ocl.y', 271
1656
+ def _reduce_101( val, _values, result )
1817
1657
  result = CType::Base.new(val[0])
1818
1658
  result
1819
1659
  end
1820
1660
  .,.,
1821
1661
 
1822
- module_eval <<'.,.,', 'src/ocl.y', 247
1823
- def _reduce_94( val, _values, result )
1662
+ module_eval <<'.,.,', 'src/ocl.y', 272
1663
+ def _reduce_102( val, _values, result )
1824
1664
  result = CType::Base.new(val[0])
1825
1665
  result
1826
1666
  end
1827
1667
  .,.,
1828
1668
 
1829
- module_eval <<'.,.,', 'src/ocl.y', 248
1830
- def _reduce_95( val, _values, result )
1669
+ module_eval <<'.,.,', 'src/ocl.y', 273
1670
+ def _reduce_103( val, _values, result )
1831
1671
  result = CType::Base.new(val[0])
1832
1672
  result
1833
1673
  end
1834
1674
  .,.,
1835
1675
 
1836
- # reduce 96 omitted
1676
+ # reduce 104 omitted
1837
1677
 
1838
- # reduce 97 omitted
1678
+ # reduce 105 omitted
1839
1679
 
1840
- module_eval <<'.,.,', 'src/ocl.y', 258
1841
- def _reduce_98( val, _values, result )
1680
+ module_eval <<'.,.,', 'src/ocl.y', 283
1681
+ def _reduce_106( val, _values, result )
1842
1682
  result = CType::StructUnion.get(val[0], val[1])
1843
1683
  result
1844
1684
  end
1845
1685
  .,.,
1846
1686
 
1847
- # reduce 99 omitted
1687
+ # reduce 107 omitted
1848
1688
 
1849
- module_eval <<'.,.,', 'src/ocl.y', 265
1850
- def _reduce_100( val, _values, result )
1689
+ module_eval <<'.,.,', 'src/ocl.y', 290
1690
+ def _reduce_108( val, _values, result )
1851
1691
  result = val[1]; result.add_qualifier(val[0])
1852
1692
  result
1853
1693
  end
1854
1694
  .,.,
1855
1695
 
1856
- module_eval <<'.,.,', 'src/ocl.y', 269
1857
- def _reduce_101( val, _values, result )
1696
+ module_eval <<'.,.,', 'src/ocl.y', 294
1697
+ def _reduce_109( val, _values, result )
1858
1698
  result = val[0].first
1859
1699
  result
1860
1700
  end
1861
1701
  .,.,
1862
1702
 
1863
- module_eval <<'.,.,', 'src/ocl.y', 284
1864
- def _reduce_102( val, _values, result )
1703
+ module_eval <<'.,.,', 'src/ocl.y', 309
1704
+ def _reduce_110( val, _values, result )
1865
1705
  # the base type of the last element in the declarator sequence
1866
1706
  # is not a pointer. that pointer points to a new type which is
1867
1707
  # appended to the end of the declarator sequence
@@ -1872,203 +1712,203 @@ module_eval <<'.,.,', 'src/ocl.y', 284
1872
1712
  end
1873
1713
  .,.,
1874
1714
 
1875
- # reduce 103 omitted
1715
+ # reduce 111 omitted
1876
1716
 
1877
- # reduce 104 omitted
1717
+ # reduce 112 omitted
1878
1718
 
1879
- module_eval <<'.,.,', 'src/ocl.y', 294
1880
- def _reduce_105( val, _values, result )
1719
+ module_eval <<'.,.,', 'src/ocl.y', 319
1720
+ def _reduce_113( val, _values, result )
1881
1721
  result = [CType::Type.new(val[0])]
1882
1722
  result
1883
1723
  end
1884
1724
  .,.,
1885
1725
 
1886
- module_eval <<'.,.,', 'src/ocl.y', 296
1887
- def _reduce_106( val, _values, result )
1726
+ module_eval <<'.,.,', 'src/ocl.y', 321
1727
+ def _reduce_114( val, _values, result )
1888
1728
  result = val[1]
1889
1729
  result
1890
1730
  end
1891
1731
  .,.,
1892
1732
 
1893
- module_eval <<'.,.,', 'src/ocl.y', 298
1894
- def _reduce_107( val, _values, result )
1733
+ module_eval <<'.,.,', 'src/ocl.y', 323
1734
+ def _reduce_115( val, _values, result )
1895
1735
  result = val[0]; result.last.dimensions << val[2]
1896
1736
  result
1897
1737
  end
1898
1738
  .,.,
1899
1739
 
1900
- module_eval <<'.,.,', 'src/ocl.y', 300
1901
- def _reduce_108( val, _values, result )
1740
+ module_eval <<'.,.,', 'src/ocl.y', 325
1741
+ def _reduce_116( val, _values, result )
1902
1742
  result = val[0]; result.last.dimensions << nil
1903
1743
  result
1904
1744
  end
1905
1745
  .,.,
1906
1746
 
1907
- module_eval <<'.,.,', 'src/ocl.y', 302
1908
- def _reduce_109( val, _values, result )
1747
+ module_eval <<'.,.,', 'src/ocl.y', 327
1748
+ def _reduce_117( val, _values, result )
1909
1749
  result = val[0]; result.last.parameters = val[2]
1910
1750
  result
1911
1751
  end
1912
1752
  .,.,
1913
1753
 
1914
- module_eval <<'.,.,', 'src/ocl.y', 304
1915
- def _reduce_110( val, _values, result )
1754
+ module_eval <<'.,.,', 'src/ocl.y', 329
1755
+ def _reduce_118( val, _values, result )
1916
1756
  result = val[0]; result.last.parameters = val[2]
1917
1757
  result
1918
1758
  end
1919
1759
  .,.,
1920
1760
 
1921
- module_eval <<'.,.,', 'src/ocl.y', 306
1922
- def _reduce_111( val, _values, result )
1761
+ module_eval <<'.,.,', 'src/ocl.y', 331
1762
+ def _reduce_119( val, _values, result )
1923
1763
  result = val[0]; result.last.parameters = nil
1924
1764
  result
1925
1765
  end
1926
1766
  .,.,
1927
1767
 
1928
- module_eval <<'.,.,', 'src/ocl.y', 311
1929
- def _reduce_112( val, _values, result )
1768
+ module_eval <<'.,.,', 'src/ocl.y', 336
1769
+ def _reduce_120( val, _values, result )
1930
1770
  result = CType::Enum[val[1]]
1931
1771
  result
1932
1772
  end
1933
1773
  .,.,
1934
1774
 
1935
- module_eval <<'.,.,', 'src/ocl.y', 316
1936
- def _reduce_113( val, _values, result )
1775
+ module_eval <<'.,.,', 'src/ocl.y', 341
1776
+ def _reduce_121( val, _values, result )
1937
1777
  result = CType::Pointer.new(val[1])
1938
1778
  result
1939
1779
  end
1940
1780
  .,.,
1941
1781
 
1942
- module_eval <<'.,.,', 'src/ocl.y', 318
1943
- def _reduce_114( val, _values, result )
1782
+ module_eval <<'.,.,', 'src/ocl.y', 343
1783
+ def _reduce_122( val, _values, result )
1944
1784
  result = CType::Pointer.new()
1945
1785
  result
1946
1786
  end
1947
1787
  .,.,
1948
1788
 
1949
- module_eval <<'.,.,', 'src/ocl.y', 324
1950
- def _reduce_115( val, _values, result )
1789
+ module_eval <<'.,.,', 'src/ocl.y', 349
1790
+ def _reduce_123( val, _values, result )
1951
1791
  result = val[2]
1952
1792
  result.base_type = CType::Pointer.new(val[1])
1953
1793
  result
1954
1794
  end
1955
1795
  .,.,
1956
1796
 
1957
- module_eval <<'.,.,', 'src/ocl.y', 329
1958
- def _reduce_116( val, _values, result )
1797
+ module_eval <<'.,.,', 'src/ocl.y', 354
1798
+ def _reduce_124( val, _values, result )
1959
1799
  result = val[1]
1960
1800
  result.base_type = CType::Pointer.new()
1961
1801
  result
1962
1802
  end
1963
1803
  .,.,
1964
1804
 
1965
- module_eval <<'.,.,', 'src/ocl.y', 333
1966
- def _reduce_117( val, _values, result )
1805
+ module_eval <<'.,.,', 'src/ocl.y', 358
1806
+ def _reduce_125( val, _values, result )
1967
1807
  result = val[0,1]
1968
1808
  result
1969
1809
  end
1970
1810
  .,.,
1971
1811
 
1972
- module_eval <<'.,.,', 'src/ocl.y', 334
1973
- def _reduce_118( val, _values, result )
1812
+ module_eval <<'.,.,', 'src/ocl.y', 359
1813
+ def _reduce_126( val, _values, result )
1974
1814
  result = val[0] << val[1]
1975
1815
  result
1976
1816
  end
1977
1817
  .,.,
1978
1818
 
1979
- module_eval <<'.,.,', 'src/ocl.y', 339
1980
- def _reduce_119( val, _values, result )
1819
+ module_eval <<'.,.,', 'src/ocl.y', 364
1820
+ def _reduce_127( val, _values, result )
1981
1821
  result = val[0].finalize
1982
1822
  result
1983
1823
  end
1984
1824
  .,.,
1985
1825
 
1986
- module_eval <<'.,.,', 'src/ocl.y', 340
1987
- def _reduce_120( val, _values, result )
1826
+ module_eval <<'.,.,', 'src/ocl.y', 365
1827
+ def _reduce_128( val, _values, result )
1988
1828
  result = val[0].with_ellipses
1989
1829
  result
1990
1830
  end
1991
1831
  .,.,
1992
1832
 
1993
- module_eval <<'.,.,', 'src/ocl.y', 345
1994
- def _reduce_121( val, _values, result )
1833
+ module_eval <<'.,.,', 'src/ocl.y', 370
1834
+ def _reduce_129( val, _values, result )
1995
1835
  result = CType::List.new << val[0]
1996
1836
  result
1997
1837
  end
1998
1838
  .,.,
1999
1839
 
2000
- module_eval <<'.,.,', 'src/ocl.y', 346
2001
- def _reduce_122( val, _values, result )
1840
+ module_eval <<'.,.,', 'src/ocl.y', 371
1841
+ def _reduce_130( val, _values, result )
2002
1842
  result = val[0] << val[2]
2003
1843
  result
2004
1844
  end
2005
1845
  .,.,
2006
1846
 
2007
- module_eval <<'.,.,', 'src/ocl.y', 352
2008
- def _reduce_123( val, _values, result )
1847
+ module_eval <<'.,.,', 'src/ocl.y', 377
1848
+ def _reduce_131( val, _values, result )
2009
1849
  result = val[1]; result.base_type = val[0]
2010
1850
  result
2011
1851
  end
2012
1852
  .,.,
2013
1853
 
2014
- module_eval <<'.,.,', 'src/ocl.y', 354
2015
- def _reduce_124( val, _values, result )
1854
+ module_eval <<'.,.,', 'src/ocl.y', 379
1855
+ def _reduce_132( val, _values, result )
2016
1856
  result = val[1]; result.base_type = val[0]
2017
1857
  result
2018
1858
  end
2019
1859
  .,.,
2020
1860
 
2021
- module_eval <<'.,.,', 'src/ocl.y', 356
2022
- def _reduce_125( val, _values, result )
1861
+ module_eval <<'.,.,', 'src/ocl.y', 381
1862
+ def _reduce_133( val, _values, result )
2023
1863
  result = CType::Type.new(); result.base_type = val[0]
2024
1864
  result
2025
1865
  end
2026
1866
  .,.,
2027
1867
 
2028
- module_eval <<'.,.,', 'src/ocl.y', 365
2029
- def _reduce_126( val, _values, result )
1868
+ module_eval <<'.,.,', 'src/ocl.y', 390
1869
+ def _reduce_134( val, _values, result )
2030
1870
  result = val[0].finalize
2031
1871
  result
2032
1872
  end
2033
1873
  .,.,
2034
1874
 
2035
- module_eval <<'.,.,', 'src/ocl.y', 370
2036
- def _reduce_127( val, _values, result )
1875
+ module_eval <<'.,.,', 'src/ocl.y', 395
1876
+ def _reduce_135( val, _values, result )
2037
1877
  result = CType::List.new << val[0]
2038
1878
  result
2039
1879
  end
2040
1880
  .,.,
2041
1881
 
2042
- module_eval <<'.,.,', 'src/ocl.y', 371
2043
- def _reduce_128( val, _values, result )
1882
+ module_eval <<'.,.,', 'src/ocl.y', 396
1883
+ def _reduce_136( val, _values, result )
2044
1884
  result = val[0] << val[2]
2045
1885
  result
2046
1886
  end
2047
1887
  .,.,
2048
1888
 
2049
- module_eval <<'.,.,', 'src/ocl.y', 376
2050
- def _reduce_129( val, _values, result )
1889
+ module_eval <<'.,.,', 'src/ocl.y', 401
1890
+ def _reduce_137( val, _values, result )
2051
1891
  result = CType::Type.new(); result.base_type = val[0]
2052
1892
  result
2053
1893
  end
2054
1894
  .,.,
2055
1895
 
2056
- module_eval <<'.,.,', 'src/ocl.y', 378
2057
- def _reduce_130( val, _values, result )
1896
+ module_eval <<'.,.,', 'src/ocl.y', 403
1897
+ def _reduce_138( val, _values, result )
2058
1898
  result = val[1]; result.base_type = val[0]
2059
1899
  result
2060
1900
  end
2061
1901
  .,.,
2062
1902
 
2063
- module_eval <<'.,.,', 'src/ocl.y', 383
2064
- def _reduce_131( val, _values, result )
1903
+ module_eval <<'.,.,', 'src/ocl.y', 408
1904
+ def _reduce_139( val, _values, result )
2065
1905
  result = val[0].first
2066
1906
  result
2067
1907
  end
2068
1908
  .,.,
2069
1909
 
2070
- module_eval <<'.,.,', 'src/ocl.y', 396
2071
- def _reduce_132( val, _values, result )
1910
+ module_eval <<'.,.,', 'src/ocl.y', 421
1911
+ def _reduce_140( val, _values, result )
2072
1912
  # create new type, example: int (*)(const char *, const char *)
2073
1913
  result = [CType::Type.new(), CType::Type.new()]
2074
1914
  result.first.base_type = val[0] # pointer to a
@@ -2077,10 +1917,10 @@ module_eval <<'.,.,', 'src/ocl.y', 396
2077
1917
  end
2078
1918
  .,.,
2079
1919
 
2080
- # reduce 133 omitted
1920
+ # reduce 141 omitted
2081
1921
 
2082
- module_eval <<'.,.,', 'src/ocl.y', 404
2083
- def _reduce_134( val, _values, result )
1922
+ module_eval <<'.,.,', 'src/ocl.y', 429
1923
+ def _reduce_142( val, _values, result )
2084
1924
  # see direct_declarator for more info
2085
1925
  result = val[1]
2086
1926
  result.last.base_type = val[0]
@@ -2089,10 +1929,10 @@ module_eval <<'.,.,', 'src/ocl.y', 404
2089
1929
  end
2090
1930
  .,.,
2091
1931
 
2092
- # reduce 135 omitted
1932
+ # reduce 143 omitted
2093
1933
 
2094
- module_eval <<'.,.,', 'src/ocl.y', 414
2095
- def _reduce_136( val, _values, result )
1934
+ module_eval <<'.,.,', 'src/ocl.y', 439
1935
+ def _reduce_144( val, _values, result )
2096
1936
  # create new type
2097
1937
  result = [CType::Type.new()]
2098
1938
  result.last.dimensions << nil
@@ -2100,8 +1940,8 @@ module_eval <<'.,.,', 'src/ocl.y', 414
2100
1940
  end
2101
1941
  .,.,
2102
1942
 
2103
- module_eval <<'.,.,', 'src/ocl.y', 420
2104
- def _reduce_137( val, _values, result )
1943
+ module_eval <<'.,.,', 'src/ocl.y', 445
1944
+ def _reduce_145( val, _values, result )
2105
1945
  # create new type
2106
1946
  result = [CType::Type.new()]
2107
1947
  result.last.dimensions << val[1]
@@ -2109,22 +1949,22 @@ module_eval <<'.,.,', 'src/ocl.y', 420
2109
1949
  end
2110
1950
  .,.,
2111
1951
 
2112
- module_eval <<'.,.,', 'src/ocl.y', 421
2113
- def _reduce_138( val, _values, result )
1952
+ module_eval <<'.,.,', 'src/ocl.y', 446
1953
+ def _reduce_146( val, _values, result )
2114
1954
  result = val[0]; result.last.dimensions << nil
2115
1955
  result
2116
1956
  end
2117
1957
  .,.,
2118
1958
 
2119
- module_eval <<'.,.,', 'src/ocl.y', 423
2120
- def _reduce_139( val, _values, result )
1959
+ module_eval <<'.,.,', 'src/ocl.y', 448
1960
+ def _reduce_147( val, _values, result )
2121
1961
  result = val[0]; result.last.dimensions << val[2]
2122
1962
  result
2123
1963
  end
2124
1964
  .,.,
2125
1965
 
2126
- module_eval <<'.,.,', 'src/ocl.y', 430
2127
- def _reduce_140( val, _values, result )
1966
+ module_eval <<'.,.,', 'src/ocl.y', 455
1967
+ def _reduce_148( val, _values, result )
2128
1968
  # create new type
2129
1969
  result = [CType::Type.new()]
2130
1970
  result.last.parameters = nil
@@ -2132,8 +1972,8 @@ module_eval <<'.,.,', 'src/ocl.y', 430
2132
1972
  end
2133
1973
  .,.,
2134
1974
 
2135
- module_eval <<'.,.,', 'src/ocl.y', 436
2136
- def _reduce_141( val, _values, result )
1975
+ module_eval <<'.,.,', 'src/ocl.y', 461
1976
+ def _reduce_149( val, _values, result )
2137
1977
  # create new type
2138
1978
  result = [CType::Type.new()]
2139
1979
  result.last.parameters = val[2]
@@ -2141,15 +1981,15 @@ module_eval <<'.,.,', 'src/ocl.y', 436
2141
1981
  end
2142
1982
  .,.,
2143
1983
 
2144
- module_eval <<'.,.,', 'src/ocl.y', 437
2145
- def _reduce_142( val, _values, result )
1984
+ module_eval <<'.,.,', 'src/ocl.y', 462
1985
+ def _reduce_150( val, _values, result )
2146
1986
  result = val[0]; result.last.parameters = nil
2147
1987
  result
2148
1988
  end
2149
1989
  .,.,
2150
1990
 
2151
- module_eval <<'.,.,', 'src/ocl.y', 439
2152
- def _reduce_143( val, _values, result )
1991
+ module_eval <<'.,.,', 'src/ocl.y', 464
1992
+ def _reduce_151( val, _values, result )
2153
1993
  result = val[0]; result.last.parameters = val[2]
2154
1994
  result
2155
1995
  end