dbc 1.2.3 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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