parser 3.2.2.4 → 3.3.0.5

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.
@@ -8799,79 +8799,79 @@ begin # ragel flat
8799
8799
  @paren_nest -= 1
8800
8800
  end
8801
8801
  when 32 then
8802
- # line 1059 "lib/parser/lexer.rl"
8802
+ # line 1061 "lib/parser/lexer.rl"
8803
8803
  begin
8804
8804
  tm = p end
8805
8805
  when 33 then
8806
- # line 1072 "lib/parser/lexer.rl"
8806
+ # line 1074 "lib/parser/lexer.rl"
8807
8807
  begin
8808
8808
  tm = p end
8809
8809
  when 34 then
8810
- # line 1100 "lib/parser/lexer.rl"
8810
+ # line 1102 "lib/parser/lexer.rl"
8811
8811
  begin
8812
8812
  tm = p end
8813
8813
  when 35 then
8814
- # line 1297 "lib/parser/lexer.rl"
8814
+ # line 1299 "lib/parser/lexer.rl"
8815
8815
  begin
8816
8816
  heredoc_e = p end
8817
8817
  when 36 then
8818
- # line 1298 "lib/parser/lexer.rl"
8818
+ # line 1300 "lib/parser/lexer.rl"
8819
8819
  begin
8820
8820
  new_herebody_s = p end
8821
8821
  when 37 then
8822
- # line 1392 "lib/parser/lexer.rl"
8822
+ # line 1400 "lib/parser/lexer.rl"
8823
8823
  begin
8824
8824
  tm = p - 1; diag_msg = :ivar_name end
8825
8825
  when 38 then
8826
- # line 1393 "lib/parser/lexer.rl"
8826
+ # line 1401 "lib/parser/lexer.rl"
8827
8827
  begin
8828
8828
  tm = p - 2; diag_msg = :cvar_name end
8829
8829
  when 39 then
8830
- # line 1480 "lib/parser/lexer.rl"
8830
+ # line 1488 "lib/parser/lexer.rl"
8831
8831
  begin
8832
8832
  tm = p end
8833
8833
  when 40 then
8834
- # line 1587 "lib/parser/lexer.rl"
8834
+ # line 1595 "lib/parser/lexer.rl"
8835
8835
  begin
8836
8836
  ident_tok = tok; ident_ts = @ts; ident_te = @te; end
8837
8837
  when 41 then
8838
- # line 1773 "lib/parser/lexer.rl"
8838
+ # line 1781 "lib/parser/lexer.rl"
8839
8839
  begin
8840
8840
  @num_base = 16; @num_digits_s = p end
8841
8841
  when 42 then
8842
- # line 1774 "lib/parser/lexer.rl"
8842
+ # line 1782 "lib/parser/lexer.rl"
8843
8843
  begin
8844
8844
  @num_base = 10; @num_digits_s = p end
8845
8845
  when 43 then
8846
- # line 1775 "lib/parser/lexer.rl"
8846
+ # line 1783 "lib/parser/lexer.rl"
8847
8847
  begin
8848
8848
  @num_base = 8; @num_digits_s = p end
8849
8849
  when 44 then
8850
- # line 1776 "lib/parser/lexer.rl"
8850
+ # line 1784 "lib/parser/lexer.rl"
8851
8851
  begin
8852
8852
  @num_base = 2; @num_digits_s = p end
8853
8853
  when 45 then
8854
- # line 1777 "lib/parser/lexer.rl"
8854
+ # line 1785 "lib/parser/lexer.rl"
8855
8855
  begin
8856
8856
  @num_base = 10; @num_digits_s = @ts end
8857
8857
  when 46 then
8858
- # line 1778 "lib/parser/lexer.rl"
8858
+ # line 1786 "lib/parser/lexer.rl"
8859
8859
  begin
8860
8860
  @num_base = 8; @num_digits_s = @ts end
8861
8861
  when 47 then
8862
- # line 1779 "lib/parser/lexer.rl"
8862
+ # line 1787 "lib/parser/lexer.rl"
8863
8863
  begin
8864
8864
  @num_suffix_s = p end
8865
8865
  when 48 then
8866
- # line 1822 "lib/parser/lexer.rl"
8866
+ # line 1830 "lib/parser/lexer.rl"
8867
8867
  begin
8868
8868
  @num_suffix_s = p end
8869
8869
  when 49 then
8870
- # line 1823 "lib/parser/lexer.rl"
8870
+ # line 1831 "lib/parser/lexer.rl"
8871
8871
  begin
8872
8872
  @num_suffix_s = p end
8873
8873
  when 50 then
8874
- # line 2026 "lib/parser/lexer.rl"
8874
+ # line 2034 "lib/parser/lexer.rl"
8875
8875
  begin
8876
8876
  tm = p end
8877
8877
  when 53 then
@@ -8880,7 +8880,7 @@ begin # ragel flat
8880
8880
  @te = p+1
8881
8881
  end
8882
8882
  when 54 then
8883
- # line 846 "lib/parser/lexer.rl"
8883
+ # line 848 "lib/parser/lexer.rl"
8884
8884
  begin
8885
8885
  @te = p+1
8886
8886
  begin
@@ -8896,7 +8896,7 @@ begin # ragel flat
8896
8896
  end
8897
8897
  end
8898
8898
  when 55 then
8899
- # line 846 "lib/parser/lexer.rl"
8899
+ # line 848 "lib/parser/lexer.rl"
8900
8900
  begin
8901
8901
  @te = p
8902
8902
  p = p - 1; begin
@@ -8912,7 +8912,7 @@ p = p - 1; begin
8912
8912
  end
8913
8913
  end
8914
8914
  when 56 then
8915
- # line 853 "lib/parser/lexer.rl"
8915
+ # line 855 "lib/parser/lexer.rl"
8916
8916
  begin
8917
8917
  @te = p
8918
8918
  p = p - 1; begin
@@ -8928,7 +8928,7 @@ p = p - 1; begin
8928
8928
  end
8929
8929
  end
8930
8930
  when 57 then
8931
- # line 860 "lib/parser/lexer.rl"
8931
+ # line 862 "lib/parser/lexer.rl"
8932
8932
  begin
8933
8933
  @te = p
8934
8934
  p = p - 1; begin
@@ -8944,19 +8944,19 @@ p = p - 1; begin
8944
8944
  end
8945
8945
  end
8946
8946
  when 58 then
8947
- # line 878 "lib/parser/lexer.rl"
8947
+ # line 880 "lib/parser/lexer.rl"
8948
8948
  begin
8949
8949
  @act = 4; end
8950
8950
  when 59 then
8951
- # line 882 "lib/parser/lexer.rl"
8951
+ # line 884 "lib/parser/lexer.rl"
8952
8952
  begin
8953
8953
  @act = 5; end
8954
8954
  when 60 then
8955
- # line 886 "lib/parser/lexer.rl"
8955
+ # line 888 "lib/parser/lexer.rl"
8956
8956
  begin
8957
8957
  @act = 6; end
8958
8958
  when 61 then
8959
- # line 878 "lib/parser/lexer.rl"
8959
+ # line 880 "lib/parser/lexer.rl"
8960
8960
  begin
8961
8961
  @te = p+1
8962
8962
  begin emit_table(KEYWORDS_BEGIN);
@@ -8969,7 +8969,7 @@ p = p - 1; begin
8969
8969
  end
8970
8970
  end
8971
8971
  when 62 then
8972
- # line 886 "lib/parser/lexer.rl"
8972
+ # line 888 "lib/parser/lexer.rl"
8973
8973
  begin
8974
8974
  @te = p+1
8975
8975
  begin emit(:tIDENTIFIER)
@@ -8982,7 +8982,7 @@ p = p - 1; begin
8982
8982
  end
8983
8983
  end
8984
8984
  when 63 then
8985
- # line 890 "lib/parser/lexer.rl"
8985
+ # line 892 "lib/parser/lexer.rl"
8986
8986
  begin
8987
8987
  @te = p+1
8988
8988
  begin p = @ts - 1
@@ -8997,7 +8997,7 @@ p = p - 1; begin
8997
8997
  end
8998
8998
  end
8999
8999
  when 64 then
9000
- # line 899 "lib/parser/lexer.rl"
9000
+ # line 901 "lib/parser/lexer.rl"
9001
9001
  begin
9002
9002
  @te = p+1
9003
9003
  begin emit_table(PUNCTUATION)
@@ -9010,7 +9010,7 @@ p = p - 1; begin
9010
9010
  end
9011
9011
  end
9012
9012
  when 65 then
9013
- # line 903 "lib/parser/lexer.rl"
9013
+ # line 905 "lib/parser/lexer.rl"
9014
9014
  begin
9015
9015
  @te = p+1
9016
9016
  begin p = p - 1; p = p - 1; begin
@@ -9022,7 +9022,7 @@ p = p - 1; begin
9022
9022
  end
9023
9023
  end
9024
9024
  when 66 then
9025
- # line 909 "lib/parser/lexer.rl"
9025
+ # line 911 "lib/parser/lexer.rl"
9026
9026
  begin
9027
9027
  @te = p+1
9028
9028
  begin
@@ -9049,7 +9049,7 @@ p = p - 1; begin
9049
9049
  end
9050
9050
  end
9051
9051
  when 67 then
9052
- # line 923 "lib/parser/lexer.rl"
9052
+ # line 925 "lib/parser/lexer.rl"
9053
9053
  begin
9054
9054
  @te = p+1
9055
9055
  begin p = p - 1; begin
@@ -9082,7 +9082,7 @@ p = p - 1; begin
9082
9082
  end
9083
9083
  end
9084
9084
  when 69 then
9085
- # line 878 "lib/parser/lexer.rl"
9085
+ # line 880 "lib/parser/lexer.rl"
9086
9086
  begin
9087
9087
  @te = p
9088
9088
  p = p - 1; begin emit_table(KEYWORDS_BEGIN);
@@ -9095,7 +9095,7 @@ p = p - 1; begin emit_table(KEYWORDS_BEGIN);
9095
9095
  end
9096
9096
  end
9097
9097
  when 70 then
9098
- # line 882 "lib/parser/lexer.rl"
9098
+ # line 884 "lib/parser/lexer.rl"
9099
9099
  begin
9100
9100
  @te = p
9101
9101
  p = p - 1; begin emit(:tCONSTANT)
@@ -9108,7 +9108,7 @@ p = p - 1; begin emit(:tCONSTANT)
9108
9108
  end
9109
9109
  end
9110
9110
  when 71 then
9111
- # line 886 "lib/parser/lexer.rl"
9111
+ # line 888 "lib/parser/lexer.rl"
9112
9112
  begin
9113
9113
  @te = p
9114
9114
  p = p - 1; begin emit(:tIDENTIFIER)
@@ -9121,7 +9121,7 @@ p = p - 1; begin emit(:tIDENTIFIER)
9121
9121
  end
9122
9122
  end
9123
9123
  when 72 then
9124
- # line 890 "lib/parser/lexer.rl"
9124
+ # line 892 "lib/parser/lexer.rl"
9125
9125
  begin
9126
9126
  @te = p
9127
9127
  p = p - 1; begin p = @ts - 1
@@ -9136,7 +9136,7 @@ p = p - 1; begin p = @ts - 1
9136
9136
  end
9137
9137
  end
9138
9138
  when 73 then
9139
- # line 899 "lib/parser/lexer.rl"
9139
+ # line 901 "lib/parser/lexer.rl"
9140
9140
  begin
9141
9141
  @te = p
9142
9142
  p = p - 1; begin emit_table(PUNCTUATION)
@@ -9149,7 +9149,7 @@ p = p - 1; begin emit_table(PUNCTUATION)
9149
9149
  end
9150
9150
  end
9151
9151
  when 74 then
9152
- # line 906 "lib/parser/lexer.rl"
9152
+ # line 908 "lib/parser/lexer.rl"
9153
9153
  begin
9154
9154
  @te = p
9155
9155
  p = p - 1; begin p = p - 1; begin
@@ -9161,12 +9161,12 @@ p = p - 1; begin p = p - 1; begin
9161
9161
  end
9162
9162
  end
9163
9163
  when 75 then
9164
- # line 920 "lib/parser/lexer.rl"
9164
+ # line 922 "lib/parser/lexer.rl"
9165
9165
  begin
9166
9166
  @te = p
9167
9167
  p = p - 1; end
9168
9168
  when 76 then
9169
- # line 923 "lib/parser/lexer.rl"
9169
+ # line 925 "lib/parser/lexer.rl"
9170
9170
  begin
9171
9171
  @te = p
9172
9172
  p = p - 1; begin p = p - 1; begin
@@ -9178,7 +9178,7 @@ p = p - 1; begin p = p - 1; begin
9178
9178
  end
9179
9179
  end
9180
9180
  when 77 then
9181
- # line 899 "lib/parser/lexer.rl"
9181
+ # line 901 "lib/parser/lexer.rl"
9182
9182
  begin
9183
9183
  begin p = (( @te))-1; end
9184
9184
  begin emit_table(PUNCTUATION)
@@ -9191,7 +9191,7 @@ p = p - 1; begin p = p - 1; begin
9191
9191
  end
9192
9192
  end
9193
9193
  when 78 then
9194
- # line 923 "lib/parser/lexer.rl"
9194
+ # line 925 "lib/parser/lexer.rl"
9195
9195
  begin
9196
9196
  begin p = (( @te))-1; end
9197
9197
  begin p = p - 1; begin
@@ -9239,7 +9239,7 @@ p = p - 1; begin p = p - 1; begin
9239
9239
  end
9240
9240
  end
9241
9241
  when 80 then
9242
- # line 935 "lib/parser/lexer.rl"
9242
+ # line 937 "lib/parser/lexer.rl"
9243
9243
  begin
9244
9244
  @te = p+1
9245
9245
  begin emit(:tLABEL, tok(@ts, @te - 2), @ts, @te - 1)
@@ -9252,7 +9252,7 @@ end
9252
9252
  end
9253
9253
  end
9254
9254
  when 81 then
9255
- # line 939 "lib/parser/lexer.rl"
9255
+ # line 941 "lib/parser/lexer.rl"
9256
9256
  begin
9257
9257
  @te = p+1
9258
9258
  begin
@@ -9279,7 +9279,7 @@ end
9279
9279
  end
9280
9280
  end
9281
9281
  when 82 then
9282
- # line 953 "lib/parser/lexer.rl"
9282
+ # line 955 "lib/parser/lexer.rl"
9283
9283
  begin
9284
9284
  @te = p+1
9285
9285
  begin p = p - 1; begin
@@ -9312,12 +9312,12 @@ end
9312
9312
  end
9313
9313
  end
9314
9314
  when 84 then
9315
- # line 950 "lib/parser/lexer.rl"
9315
+ # line 952 "lib/parser/lexer.rl"
9316
9316
  begin
9317
9317
  @te = p
9318
9318
  p = p - 1; end
9319
9319
  when 85 then
9320
- # line 953 "lib/parser/lexer.rl"
9320
+ # line 955 "lib/parser/lexer.rl"
9321
9321
  begin
9322
9322
  @te = p
9323
9323
  p = p - 1; begin p = p - 1; begin
@@ -9329,7 +9329,7 @@ p = p - 1; begin p = p - 1; begin
9329
9329
  end
9330
9330
  end
9331
9331
  when 86 then
9332
- # line 953 "lib/parser/lexer.rl"
9332
+ # line 955 "lib/parser/lexer.rl"
9333
9333
  begin
9334
9334
  begin p = (( @te))-1; end
9335
9335
  begin p = p - 1; begin
@@ -9341,7 +9341,7 @@ p = p - 1; begin p = p - 1; begin
9341
9341
  end
9342
9342
  end
9343
9343
  when 87 then
9344
- # line 979 "lib/parser/lexer.rl"
9344
+ # line 981 "lib/parser/lexer.rl"
9345
9345
  begin
9346
9346
  @te = p+1
9347
9347
  begin emit_table(PUNCTUATION)
@@ -9354,7 +9354,7 @@ p = p - 1; begin p = p - 1; begin
9354
9354
  end
9355
9355
  end
9356
9356
  when 88 then
9357
- # line 985 "lib/parser/lexer.rl"
9357
+ # line 987 "lib/parser/lexer.rl"
9358
9358
  begin
9359
9359
  @te = p+1
9360
9360
  begin p = p - 1; begin
@@ -9387,7 +9387,7 @@ p = p - 1; begin p = p - 1; begin
9387
9387
  end
9388
9388
  end
9389
9389
  when 90 then
9390
- # line 964 "lib/parser/lexer.rl"
9390
+ # line 966 "lib/parser/lexer.rl"
9391
9391
  begin
9392
9392
  @te = p
9393
9393
  p = p - 1; begin emit(:tCONSTANT)
@@ -9400,7 +9400,7 @@ p = p - 1; begin emit(:tCONSTANT)
9400
9400
  end
9401
9401
  end
9402
9402
  when 91 then
9403
- # line 968 "lib/parser/lexer.rl"
9403
+ # line 970 "lib/parser/lexer.rl"
9404
9404
  begin
9405
9405
  @te = p
9406
9406
  p = p - 1; begin emit(:tIDENTIFIER)
@@ -9413,7 +9413,7 @@ p = p - 1; begin emit(:tIDENTIFIER)
9413
9413
  end
9414
9414
  end
9415
9415
  when 92 then
9416
- # line 972 "lib/parser/lexer.rl"
9416
+ # line 974 "lib/parser/lexer.rl"
9417
9417
  begin
9418
9418
  @te = p
9419
9419
  p = p - 1; begin emit(:tFID, tok(@ts, tm), @ts, tm)
@@ -9426,7 +9426,7 @@ p = p - 1; begin emit(:tFID, tok(@ts, tm), @ts, tm)
9426
9426
  end
9427
9427
  end
9428
9428
  when 93 then
9429
- # line 979 "lib/parser/lexer.rl"
9429
+ # line 981 "lib/parser/lexer.rl"
9430
9430
  begin
9431
9431
  @te = p
9432
9432
  p = p - 1; begin emit_table(PUNCTUATION)
@@ -9439,12 +9439,12 @@ p = p - 1; begin emit_table(PUNCTUATION)
9439
9439
  end
9440
9440
  end
9441
9441
  when 94 then
9442
- # line 982 "lib/parser/lexer.rl"
9442
+ # line 984 "lib/parser/lexer.rl"
9443
9443
  begin
9444
9444
  @te = p
9445
9445
  p = p - 1; end
9446
9446
  when 95 then
9447
- # line 985 "lib/parser/lexer.rl"
9447
+ # line 987 "lib/parser/lexer.rl"
9448
9448
  begin
9449
9449
  @te = p
9450
9450
  p = p - 1; begin p = p - 1; begin
@@ -9456,23 +9456,23 @@ p = p - 1; begin p = p - 1; begin
9456
9456
  end
9457
9457
  end
9458
9458
  when 96 then
9459
- # line 1063 "lib/parser/lexer.rl"
9459
+ # line 1065 "lib/parser/lexer.rl"
9460
9460
  begin
9461
9461
  @act = 33; end
9462
9462
  when 97 then
9463
- # line 1073 "lib/parser/lexer.rl"
9463
+ # line 1075 "lib/parser/lexer.rl"
9464
9464
  begin
9465
9465
  @act = 34; end
9466
9466
  when 98 then
9467
- # line 1112 "lib/parser/lexer.rl"
9467
+ # line 1114 "lib/parser/lexer.rl"
9468
9468
  begin
9469
9469
  @act = 39; end
9470
9470
  when 99 then
9471
- # line 1117 "lib/parser/lexer.rl"
9471
+ # line 1119 "lib/parser/lexer.rl"
9472
9472
  begin
9473
9473
  @act = 40; end
9474
9474
  when 100 then
9475
- # line 1045 "lib/parser/lexer.rl"
9475
+ # line 1047 "lib/parser/lexer.rl"
9476
9476
  begin
9477
9477
  @te = p+1
9478
9478
  begin
@@ -9488,7 +9488,7 @@ p = p - 1; begin p = p - 1; begin
9488
9488
  end
9489
9489
  end
9490
9490
  when 101 then
9491
- # line 1063 "lib/parser/lexer.rl"
9491
+ # line 1065 "lib/parser/lexer.rl"
9492
9492
  begin
9493
9493
  @te = p+1
9494
9494
  begin
@@ -9505,7 +9505,7 @@ p = p - 1; begin p = p - 1; begin
9505
9505
  end
9506
9506
  end
9507
9507
  when 102 then
9508
- # line 1084 "lib/parser/lexer.rl"
9508
+ # line 1086 "lib/parser/lexer.rl"
9509
9509
  begin
9510
9510
  @te = p+1
9511
9511
  begin p = p - 1; p = p - 1; begin
@@ -9517,7 +9517,7 @@ p = p - 1; begin p = p - 1; begin
9517
9517
  end
9518
9518
  end
9519
9519
  when 103 then
9520
- # line 1092 "lib/parser/lexer.rl"
9520
+ # line 1094 "lib/parser/lexer.rl"
9521
9521
  begin
9522
9522
  @te = p+1
9523
9523
  begin p = @ts - 1; begin
@@ -9529,7 +9529,7 @@ p = p - 1; begin p = p - 1; begin
9529
9529
  end
9530
9530
  end
9531
9531
  when 104 then
9532
- # line 1101 "lib/parser/lexer.rl"
9532
+ # line 1103 "lib/parser/lexer.rl"
9533
9533
  begin
9534
9534
  @te = p+1
9535
9535
  begin p = tm - 1; begin
@@ -9541,7 +9541,7 @@ p = p - 1; begin p = p - 1; begin
9541
9541
  end
9542
9542
  end
9543
9543
  when 105 then
9544
- # line 1112 "lib/parser/lexer.rl"
9544
+ # line 1114 "lib/parser/lexer.rl"
9545
9545
  begin
9546
9546
  @te = p+1
9547
9547
  begin
@@ -9556,7 +9556,7 @@ p = p - 1; begin p = p - 1; begin
9556
9556
  end
9557
9557
  end
9558
9558
  when 106 then
9559
- # line 1126 "lib/parser/lexer.rl"
9559
+ # line 1128 "lib/parser/lexer.rl"
9560
9560
  begin
9561
9561
  @te = p+1
9562
9562
  begin p = p - 1; begin
@@ -9589,7 +9589,7 @@ p = p - 1; begin p = p - 1; begin
9589
9589
  end
9590
9590
  end
9591
9591
  when 108 then
9592
- # line 1001 "lib/parser/lexer.rl"
9592
+ # line 1003 "lib/parser/lexer.rl"
9593
9593
  begin
9594
9594
  @te = p
9595
9595
  p = p - 1; begin
@@ -9615,7 +9615,7 @@ p = p - 1; begin
9615
9615
  end
9616
9616
  end
9617
9617
  when 109 then
9618
- # line 1014 "lib/parser/lexer.rl"
9618
+ # line 1016 "lib/parser/lexer.rl"
9619
9619
  begin
9620
9620
  @te = p
9621
9621
  p = p - 1; begin emit(:tLPAREN2, '('.freeze)
@@ -9628,7 +9628,7 @@ p = p - 1; begin emit(:tLPAREN2, '('.freeze)
9628
9628
  end
9629
9629
  end
9630
9630
  when 110 then
9631
- # line 1020 "lib/parser/lexer.rl"
9631
+ # line 1022 "lib/parser/lexer.rl"
9632
9632
  begin
9633
9633
  @te = p
9634
9634
  p = p - 1; begin emit(:tLBRACK, '['.freeze, @te - 1, @te)
@@ -9641,7 +9641,7 @@ p = p - 1; begin emit(:tLBRACK, '['.freeze, @te - 1, @te)
9641
9641
  end
9642
9642
  end
9643
9643
  when 111 then
9644
- # line 1026 "lib/parser/lexer.rl"
9644
+ # line 1028 "lib/parser/lexer.rl"
9645
9645
  begin
9646
9646
  @te = p
9647
9647
  p = p - 1; begin
@@ -9663,7 +9663,7 @@ p = p - 1; begin
9663
9663
  end
9664
9664
  end
9665
9665
  when 112 then
9666
- # line 1054 "lib/parser/lexer.rl"
9666
+ # line 1056 "lib/parser/lexer.rl"
9667
9667
  begin
9668
9668
  @te = p
9669
9669
  p = p - 1; begin p = p - 1; begin
@@ -9675,7 +9675,7 @@ p = p - 1; begin p = p - 1; begin
9675
9675
  end
9676
9676
  end
9677
9677
  when 113 then
9678
- # line 1073 "lib/parser/lexer.rl"
9678
+ # line 1075 "lib/parser/lexer.rl"
9679
9679
  begin
9680
9680
  @te = p
9681
9681
  p = p - 1; begin
@@ -9693,7 +9693,7 @@ p = p - 1; begin
9693
9693
  end
9694
9694
  end
9695
9695
  when 114 then
9696
- # line 1089 "lib/parser/lexer.rl"
9696
+ # line 1091 "lib/parser/lexer.rl"
9697
9697
  begin
9698
9698
  @te = p
9699
9699
  p = p - 1; begin p = p - 1; begin
@@ -9705,7 +9705,7 @@ p = p - 1; begin p = p - 1; begin
9705
9705
  end
9706
9706
  end
9707
9707
  when 115 then
9708
- # line 1112 "lib/parser/lexer.rl"
9708
+ # line 1114 "lib/parser/lexer.rl"
9709
9709
  begin
9710
9710
  @te = p
9711
9711
  p = p - 1; begin
@@ -9720,12 +9720,12 @@ p = p - 1; begin
9720
9720
  end
9721
9721
  end
9722
9722
  when 116 then
9723
- # line 1117 "lib/parser/lexer.rl"
9723
+ # line 1119 "lib/parser/lexer.rl"
9724
9724
  begin
9725
9725
  @te = p
9726
9726
  p = p - 1; end
9727
9727
  when 117 then
9728
- # line 1120 "lib/parser/lexer.rl"
9728
+ # line 1122 "lib/parser/lexer.rl"
9729
9729
  begin
9730
9730
  @te = p
9731
9731
  p = p - 1; begin begin
@@ -9737,7 +9737,7 @@ p = p - 1; begin begin
9737
9737
  end
9738
9738
  end
9739
9739
  when 118 then
9740
- # line 1123 "lib/parser/lexer.rl"
9740
+ # line 1125 "lib/parser/lexer.rl"
9741
9741
  begin
9742
9742
  @te = p
9743
9743
  p = p - 1; begin p = p - 1; begin
@@ -9749,7 +9749,7 @@ p = p - 1; begin p = p - 1; begin
9749
9749
  end
9750
9750
  end
9751
9751
  when 119 then
9752
- # line 1126 "lib/parser/lexer.rl"
9752
+ # line 1128 "lib/parser/lexer.rl"
9753
9753
  begin
9754
9754
  @te = p
9755
9755
  p = p - 1; begin p = p - 1; begin
@@ -9761,12 +9761,12 @@ p = p - 1; begin p = p - 1; begin
9761
9761
  end
9762
9762
  end
9763
9763
  when 120 then
9764
- # line 1117 "lib/parser/lexer.rl"
9764
+ # line 1119 "lib/parser/lexer.rl"
9765
9765
  begin
9766
9766
  begin p = (( @te))-1; end
9767
9767
  end
9768
9768
  when 121 then
9769
- # line 1126 "lib/parser/lexer.rl"
9769
+ # line 1128 "lib/parser/lexer.rl"
9770
9770
  begin
9771
9771
  begin p = (( @te))-1; end
9772
9772
  begin p = p - 1; begin
@@ -9828,15 +9828,15 @@ end
9828
9828
  end
9829
9829
  end
9830
9830
  when 123 then
9831
- # line 1149 "lib/parser/lexer.rl"
9831
+ # line 1151 "lib/parser/lexer.rl"
9832
9832
  begin
9833
9833
  @act = 46; end
9834
9834
  when 124 then
9835
- # line 1162 "lib/parser/lexer.rl"
9835
+ # line 1164 "lib/parser/lexer.rl"
9836
9836
  begin
9837
9837
  @act = 47; end
9838
9838
  when 125 then
9839
- # line 1162 "lib/parser/lexer.rl"
9839
+ # line 1164 "lib/parser/lexer.rl"
9840
9840
  begin
9841
9841
  @te = p+1
9842
9842
  begin p = @ts - 1
@@ -9870,7 +9870,7 @@ end
9870
9870
  end
9871
9871
  end
9872
9872
  when 127 then
9873
- # line 1139 "lib/parser/lexer.rl"
9873
+ # line 1141 "lib/parser/lexer.rl"
9874
9874
  begin
9875
9875
  @te = p
9876
9876
  p = p - 1; begin
@@ -9895,7 +9895,7 @@ p = p - 1; begin
9895
9895
  end
9896
9896
  end
9897
9897
  when 128 then
9898
- # line 1162 "lib/parser/lexer.rl"
9898
+ # line 1164 "lib/parser/lexer.rl"
9899
9899
  begin
9900
9900
  @te = p
9901
9901
  p = p - 1; begin p = @ts - 1
@@ -9908,7 +9908,7 @@ p = p - 1; begin p = @ts - 1
9908
9908
  end
9909
9909
  end
9910
9910
  when 129 then
9911
- # line 1162 "lib/parser/lexer.rl"
9911
+ # line 1164 "lib/parser/lexer.rl"
9912
9912
  begin
9913
9913
  begin p = (( @te))-1; end
9914
9914
  begin p = @ts - 1
@@ -9953,7 +9953,7 @@ p = p - 1; begin p = @ts - 1
9953
9953
  end
9954
9954
  end
9955
9955
  when 131 then
9956
- # line 1198 "lib/parser/lexer.rl"
9956
+ # line 1200 "lib/parser/lexer.rl"
9957
9957
  begin
9958
9958
  @te = p+1
9959
9959
  begin emit_do(true)
@@ -9966,7 +9966,7 @@ end
9966
9966
  end
9967
9967
  end
9968
9968
  when 132 then
9969
- # line 1204 "lib/parser/lexer.rl"
9969
+ # line 1206 "lib/parser/lexer.rl"
9970
9970
  begin
9971
9971
  @te = p+1
9972
9972
  begin p = p - 1; begin
@@ -9999,7 +9999,7 @@ end
9999
9999
  end
10000
10000
  end
10001
10001
  when 134 then
10002
- # line 1185 "lib/parser/lexer.rl"
10002
+ # line 1187 "lib/parser/lexer.rl"
10003
10003
  begin
10004
10004
  @te = p
10005
10005
  p = p - 1; begin
@@ -10021,12 +10021,12 @@ p = p - 1; begin
10021
10021
  end
10022
10022
  end
10023
10023
  when 135 then
10024
- # line 1201 "lib/parser/lexer.rl"
10024
+ # line 1203 "lib/parser/lexer.rl"
10025
10025
  begin
10026
10026
  @te = p
10027
10027
  p = p - 1; end
10028
10028
  when 136 then
10029
- # line 1204 "lib/parser/lexer.rl"
10029
+ # line 1206 "lib/parser/lexer.rl"
10030
10030
  begin
10031
10031
  @te = p
10032
10032
  p = p - 1; begin p = p - 1; begin
@@ -10038,15 +10038,15 @@ p = p - 1; begin p = p - 1; begin
10038
10038
  end
10039
10039
  end
10040
10040
  when 137 then
10041
- # line 1216 "lib/parser/lexer.rl"
10041
+ # line 1218 "lib/parser/lexer.rl"
10042
10042
  begin
10043
10043
  @act = 54; end
10044
10044
  when 138 then
10045
- # line 1220 "lib/parser/lexer.rl"
10045
+ # line 1222 "lib/parser/lexer.rl"
10046
10046
  begin
10047
10047
  @act = 55; end
10048
10048
  when 139 then
10049
- # line 1228 "lib/parser/lexer.rl"
10049
+ # line 1230 "lib/parser/lexer.rl"
10050
10050
  begin
10051
10051
  @te = p+1
10052
10052
  begin p = p - 1; begin
@@ -10079,7 +10079,7 @@ p = p - 1; begin p = p - 1; begin
10079
10079
  end
10080
10080
  end
10081
10081
  when 141 then
10082
- # line 1220 "lib/parser/lexer.rl"
10082
+ # line 1222 "lib/parser/lexer.rl"
10083
10083
  begin
10084
10084
  @te = p
10085
10085
  p = p - 1; begin p = @ts - 1; begin
@@ -10091,12 +10091,12 @@ p = p - 1; begin p = @ts - 1; begin
10091
10091
  end
10092
10092
  end
10093
10093
  when 142 then
10094
- # line 1222 "lib/parser/lexer.rl"
10094
+ # line 1224 "lib/parser/lexer.rl"
10095
10095
  begin
10096
10096
  @te = p
10097
10097
  p = p - 1; end
10098
10098
  when 143 then
10099
- # line 1225 "lib/parser/lexer.rl"
10099
+ # line 1227 "lib/parser/lexer.rl"
10100
10100
  begin
10101
10101
  @te = p
10102
10102
  p = p - 1; begin p = p - 1; begin
@@ -10108,7 +10108,7 @@ p = p - 1; begin p = p - 1; begin
10108
10108
  end
10109
10109
  end
10110
10110
  when 144 then
10111
- # line 1228 "lib/parser/lexer.rl"
10111
+ # line 1230 "lib/parser/lexer.rl"
10112
10112
  begin
10113
10113
  @te = p
10114
10114
  p = p - 1; begin p = p - 1; begin
@@ -10145,31 +10145,31 @@ p = p - 1; begin p = p - 1; begin
10145
10145
  end
10146
10146
  end
10147
10147
  when 146 then
10148
- # line 1243 "lib/parser/lexer.rl"
10148
+ # line 1245 "lib/parser/lexer.rl"
10149
10149
  begin
10150
10150
  @act = 60; end
10151
10151
  when 147 then
10152
- # line 1346 "lib/parser/lexer.rl"
10152
+ # line 1348 "lib/parser/lexer.rl"
10153
10153
  begin
10154
10154
  @act = 67; end
10155
10155
  when 148 then
10156
- # line 1434 "lib/parser/lexer.rl"
10156
+ # line 1442 "lib/parser/lexer.rl"
10157
10157
  begin
10158
10158
  @act = 76; end
10159
10159
  when 149 then
10160
- # line 1475 "lib/parser/lexer.rl"
10160
+ # line 1483 "lib/parser/lexer.rl"
10161
10161
  begin
10162
10162
  @act = 80; end
10163
10163
  when 150 then
10164
- # line 1481 "lib/parser/lexer.rl"
10164
+ # line 1489 "lib/parser/lexer.rl"
10165
10165
  begin
10166
10166
  @act = 81; end
10167
10167
  when 151 then
10168
- # line 1487 "lib/parser/lexer.rl"
10168
+ # line 1495 "lib/parser/lexer.rl"
10169
10169
  begin
10170
10170
  @act = 82; end
10171
10171
  when 152 then
10172
- # line 1578 "lib/parser/lexer.rl"
10172
+ # line 1586 "lib/parser/lexer.rl"
10173
10173
  begin
10174
10174
  @act = 86; end
10175
10175
  when 153 then
@@ -10177,11 +10177,11 @@ end
10177
10177
  begin
10178
10178
  @act = 87; end
10179
10179
  when 154 then
10180
- # line 1624 "lib/parser/lexer.rl"
10180
+ # line 1632 "lib/parser/lexer.rl"
10181
10181
  begin
10182
10182
  @act = 91; end
10183
10183
  when 155 then
10184
- # line 1243 "lib/parser/lexer.rl"
10184
+ # line 1245 "lib/parser/lexer.rl"
10185
10185
  begin
10186
10186
  @te = p+1
10187
10187
  begin
@@ -10196,7 +10196,7 @@ end
10196
10196
  end
10197
10197
  end
10198
10198
  when 156 then
10199
- # line 1260 "lib/parser/lexer.rl"
10199
+ # line 1262 "lib/parser/lexer.rl"
10200
10200
  begin
10201
10201
  @te = p+1
10202
10202
  begin
@@ -10214,7 +10214,7 @@ end
10214
10214
  end
10215
10215
  end
10216
10216
  when 157 then
10217
- # line 1270 "lib/parser/lexer.rl"
10217
+ # line 1272 "lib/parser/lexer.rl"
10218
10218
  begin
10219
10219
  @te = p+1
10220
10220
  begin
@@ -10230,7 +10230,7 @@ end
10230
10230
  end
10231
10231
  end
10232
10232
  when 158 then
10233
- # line 1278 "lib/parser/lexer.rl"
10233
+ # line 1280 "lib/parser/lexer.rl"
10234
10234
  begin
10235
10235
  @te = p+1
10236
10236
  begin
@@ -10246,7 +10246,7 @@ end
10246
10246
  end
10247
10247
  end
10248
10248
  when 159 then
10249
- # line 1355 "lib/parser/lexer.rl"
10249
+ # line 1357 "lib/parser/lexer.rl"
10250
10250
  begin
10251
10251
  @te = p+1
10252
10252
  begin
@@ -10262,7 +10262,7 @@ end
10262
10262
  end
10263
10263
  end
10264
10264
  when 160 then
10265
- # line 1363 "lib/parser/lexer.rl"
10265
+ # line 1365 "lib/parser/lexer.rl"
10266
10266
  begin
10267
10267
  @te = p+1
10268
10268
  begin
@@ -10279,7 +10279,7 @@ end
10279
10279
  end
10280
10280
  end
10281
10281
  when 161 then
10282
- # line 1373 "lib/parser/lexer.rl"
10282
+ # line 1375 "lib/parser/lexer.rl"
10283
10283
  begin
10284
10284
  @te = p+1
10285
10285
  begin
@@ -10294,11 +10294,17 @@ end
10294
10294
  end
10295
10295
  end
10296
10296
  when 162 then
10297
- # line 1387 "lib/parser/lexer.rl"
10297
+ # line 1389 "lib/parser/lexer.rl"
10298
10298
  begin
10299
10299
  @te = p+1
10300
10300
  begin
10301
- emit(:tSYMBOL, tok(@ts + 1), @ts)
10301
+ gvar_name = tok(@ts + 1)
10302
+
10303
+ if @version >= 33 && gvar_name.start_with?('$0') && gvar_name.length > 2
10304
+ diagnostic :error, :gvar_name, { :name => gvar_name }, range(@ts + 1, @te)
10305
+ end
10306
+
10307
+ emit(:tSYMBOL, gvar_name, @ts)
10302
10308
  @cs = 516; begin
10303
10309
  p += 1
10304
10310
  _trigger_goto = true
@@ -10309,7 +10315,7 @@ end
10309
10315
  end
10310
10316
  end
10311
10317
  when 163 then
10312
- # line 1408 "lib/parser/lexer.rl"
10318
+ # line 1416 "lib/parser/lexer.rl"
10313
10319
  begin
10314
10320
  @te = p+1
10315
10321
  begin
@@ -10339,7 +10345,7 @@ end
10339
10345
  end
10340
10346
  end
10341
10347
  when 164 then
10342
- # line 1423 "lib/parser/lexer.rl"
10348
+ # line 1431 "lib/parser/lexer.rl"
10343
10349
  begin
10344
10350
  @te = p+1
10345
10351
  begin
@@ -10347,7 +10353,7 @@ end
10347
10353
  end
10348
10354
  end
10349
10355
  when 165 then
10350
- # line 1475 "lib/parser/lexer.rl"
10356
+ # line 1483 "lib/parser/lexer.rl"
10351
10357
  begin
10352
10358
  @te = p+1
10353
10359
  begin emit_table(PUNCTUATION_BEGIN)
@@ -10360,7 +10366,7 @@ end
10360
10366
  end
10361
10367
  end
10362
10368
  when 166 then
10363
- # line 1496 "lib/parser/lexer.rl"
10369
+ # line 1504 "lib/parser/lexer.rl"
10364
10370
  begin
10365
10371
  @te = p+1
10366
10372
  begin
@@ -10393,7 +10399,7 @@ end
10393
10399
  end
10394
10400
  end
10395
10401
  when 167 then
10396
- # line 1534 "lib/parser/lexer.rl"
10402
+ # line 1542 "lib/parser/lexer.rl"
10397
10403
  begin
10398
10404
  @te = p+1
10399
10405
  begin
@@ -10439,7 +10445,7 @@ end
10439
10445
  end
10440
10446
  end
10441
10447
  when 168 then
10442
- # line 1589 "lib/parser/lexer.rl"
10448
+ # line 1597 "lib/parser/lexer.rl"
10443
10449
  begin
10444
10450
  @te = p+1
10445
10451
  begin
@@ -10461,7 +10467,7 @@ end
10461
10467
  end
10462
10468
  end
10463
10469
  when 169 then
10464
- # line 1608 "lib/parser/lexer.rl"
10470
+ # line 1616 "lib/parser/lexer.rl"
10465
10471
  begin
10466
10472
  @te = p+1
10467
10473
  begin
@@ -10477,7 +10483,7 @@ end
10477
10483
  end
10478
10484
  end
10479
10485
  when 170 then
10480
- # line 1624 "lib/parser/lexer.rl"
10486
+ # line 1632 "lib/parser/lexer.rl"
10481
10487
  begin
10482
10488
  @te = p+1
10483
10489
  begin p = @ts - 1; begin
@@ -10510,7 +10516,7 @@ end
10510
10516
  end
10511
10517
  end
10512
10518
  when 172 then
10513
- # line 1243 "lib/parser/lexer.rl"
10519
+ # line 1245 "lib/parser/lexer.rl"
10514
10520
  begin
10515
10521
  @te = p
10516
10522
  p = p - 1; begin
@@ -10525,7 +10531,7 @@ p = p - 1; begin
10525
10531
  end
10526
10532
  end
10527
10533
  when 173 then
10528
- # line 1250 "lib/parser/lexer.rl"
10534
+ # line 1252 "lib/parser/lexer.rl"
10529
10535
  begin
10530
10536
  @te = p
10531
10537
  p = p - 1; begin emit(:tSTAR, '*'.freeze)
@@ -10538,7 +10544,7 @@ p = p - 1; begin emit(:tSTAR, '*'.freeze)
10538
10544
  end
10539
10545
  end
10540
10546
  when 174 then
10541
- # line 1285 "lib/parser/lexer.rl"
10547
+ # line 1287 "lib/parser/lexer.rl"
10542
10548
  begin
10543
10549
  @te = p
10544
10550
  p = p - 1; begin
@@ -10546,7 +10552,7 @@ p = p - 1; begin
10546
10552
  end
10547
10553
  end
10548
10554
  when 175 then
10549
- # line 1299 "lib/parser/lexer.rl"
10555
+ # line 1301 "lib/parser/lexer.rl"
10550
10556
  begin
10551
10557
  @te = p
10552
10558
  p = p - 1; begin
@@ -10592,7 +10598,7 @@ p = p - 1; begin
10592
10598
  end
10593
10599
  end
10594
10600
  when 176 then
10595
- # line 1346 "lib/parser/lexer.rl"
10601
+ # line 1348 "lib/parser/lexer.rl"
10596
10602
  begin
10597
10603
  @te = p
10598
10604
  p = p - 1; begin
@@ -10600,7 +10606,7 @@ p = p - 1; begin
10600
10606
  end
10601
10607
  end
10602
10608
  when 177 then
10603
- # line 1379 "lib/parser/lexer.rl"
10609
+ # line 1381 "lib/parser/lexer.rl"
10604
10610
  begin
10605
10611
  @te = p
10606
10612
  p = p - 1; begin
@@ -10616,11 +10622,17 @@ p = p - 1; begin
10616
10622
  end
10617
10623
  end
10618
10624
  when 178 then
10619
- # line 1387 "lib/parser/lexer.rl"
10625
+ # line 1389 "lib/parser/lexer.rl"
10620
10626
  begin
10621
10627
  @te = p
10622
10628
  p = p - 1; begin
10623
- emit(:tSYMBOL, tok(@ts + 1), @ts)
10629
+ gvar_name = tok(@ts + 1)
10630
+
10631
+ if @version >= 33 && gvar_name.start_with?('$0') && gvar_name.length > 2
10632
+ diagnostic :error, :gvar_name, { :name => gvar_name }, range(@ts + 1, @te)
10633
+ end
10634
+
10635
+ emit(:tSYMBOL, gvar_name, @ts)
10624
10636
  @cs = 516; begin
10625
10637
  p += 1
10626
10638
  _trigger_goto = true
@@ -10631,7 +10643,7 @@ p = p - 1; begin
10631
10643
  end
10632
10644
  end
10633
10645
  when 179 then
10634
- # line 1395 "lib/parser/lexer.rl"
10646
+ # line 1403 "lib/parser/lexer.rl"
10635
10647
  begin
10636
10648
  @te = p
10637
10649
  p = p - 1; begin
@@ -10647,7 +10659,7 @@ p = p - 1; begin
10647
10659
  end
10648
10660
  end
10649
10661
  when 180 then
10650
- # line 1423 "lib/parser/lexer.rl"
10662
+ # line 1431 "lib/parser/lexer.rl"
10651
10663
  begin
10652
10664
  @te = p
10653
10665
  p = p - 1; begin
@@ -10655,7 +10667,7 @@ p = p - 1; begin
10655
10667
  end
10656
10668
  end
10657
10669
  when 181 then
10658
- # line 1451 "lib/parser/lexer.rl"
10670
+ # line 1459 "lib/parser/lexer.rl"
10659
10671
  begin
10660
10672
  @te = p
10661
10673
  p = p - 1; begin
@@ -10677,7 +10689,7 @@ p = p - 1; begin
10677
10689
  end
10678
10690
  end
10679
10691
  when 182 then
10680
- # line 1465 "lib/parser/lexer.rl"
10692
+ # line 1473 "lib/parser/lexer.rl"
10681
10693
  begin
10682
10694
  @te = p
10683
10695
  p = p - 1; begin emit(:tLBRACK, '['.freeze)
@@ -10690,7 +10702,7 @@ p = p - 1; begin emit(:tLBRACK, '['.freeze)
10690
10702
  end
10691
10703
  end
10692
10704
  when 183 then
10693
- # line 1470 "lib/parser/lexer.rl"
10705
+ # line 1478 "lib/parser/lexer.rl"
10694
10706
  begin
10695
10707
  @te = p
10696
10708
  p = p - 1; begin emit(:tLPAREN, '('.freeze)
@@ -10703,7 +10715,7 @@ p = p - 1; begin emit(:tLPAREN, '('.freeze)
10703
10715
  end
10704
10716
  end
10705
10717
  when 184 then
10706
- # line 1475 "lib/parser/lexer.rl"
10718
+ # line 1483 "lib/parser/lexer.rl"
10707
10719
  begin
10708
10720
  @te = p
10709
10721
  p = p - 1; begin emit_table(PUNCTUATION_BEGIN)
@@ -10716,7 +10728,7 @@ p = p - 1; begin emit_table(PUNCTUATION_BEGIN)
10716
10728
  end
10717
10729
  end
10718
10730
  when 185 then
10719
- # line 1481 "lib/parser/lexer.rl"
10731
+ # line 1489 "lib/parser/lexer.rl"
10720
10732
  begin
10721
10733
  @te = p
10722
10734
  p = p - 1; begin emit(:kRESCUE, 'rescue'.freeze, @ts, tm)
@@ -10730,7 +10742,7 @@ p = p - 1; begin emit(:kRESCUE, 'rescue'.freeze, @ts, tm)
10730
10742
  end
10731
10743
  end
10732
10744
  when 186 then
10733
- # line 1523 "lib/parser/lexer.rl"
10745
+ # line 1531 "lib/parser/lexer.rl"
10734
10746
  begin
10735
10747
  @te = p
10736
10748
  p = p - 1; begin
@@ -10750,7 +10762,7 @@ p = p - 1; begin
10750
10762
  end
10751
10763
  end
10752
10764
  when 187 then
10753
- # line 1534 "lib/parser/lexer.rl"
10765
+ # line 1542 "lib/parser/lexer.rl"
10754
10766
  begin
10755
10767
  @te = p
10756
10768
  p = p - 1; begin
@@ -10796,7 +10808,7 @@ p = p - 1; begin
10796
10808
  end
10797
10809
  end
10798
10810
  when 188 then
10799
- # line 1578 "lib/parser/lexer.rl"
10811
+ # line 1586 "lib/parser/lexer.rl"
10800
10812
  begin
10801
10813
  @te = p
10802
10814
  p = p - 1; begin p = @ts - 1
@@ -10823,6 +10835,14 @@ p = p - 1; begin
10823
10835
  break
10824
10836
  end
10825
10837
 
10838
+ elsif @version >= 32 && tok =~ /\A_[1-9]\z/
10839
+ @cs = 247; begin
10840
+ p += 1
10841
+ _trigger_goto = true
10842
+ _goto_level = _out
10843
+ break
10844
+ end
10845
+
10826
10846
  else
10827
10847
  @cs = (arg_or_cmdarg(cmd_state)); begin
10828
10848
  p += 1
@@ -10835,12 +10855,12 @@ p = p - 1; begin
10835
10855
  end
10836
10856
  end
10837
10857
  when 190 then
10838
- # line 1605 "lib/parser/lexer.rl"
10858
+ # line 1613 "lib/parser/lexer.rl"
10839
10859
  begin
10840
10860
  @te = p
10841
10861
  p = p - 1; end
10842
10862
  when 191 then
10843
- # line 1608 "lib/parser/lexer.rl"
10863
+ # line 1616 "lib/parser/lexer.rl"
10844
10864
  begin
10845
10865
  @te = p
10846
10866
  p = p - 1; begin
@@ -10856,7 +10876,7 @@ p = p - 1; begin
10856
10876
  end
10857
10877
  end
10858
10878
  when 192 then
10859
- # line 1624 "lib/parser/lexer.rl"
10879
+ # line 1632 "lib/parser/lexer.rl"
10860
10880
  begin
10861
10881
  @te = p
10862
10882
  p = p - 1; begin p = @ts - 1; begin
@@ -10868,7 +10888,7 @@ p = p - 1; begin p = @ts - 1; begin
10868
10888
  end
10869
10889
  end
10870
10890
  when 193 then
10871
- # line 1285 "lib/parser/lexer.rl"
10891
+ # line 1287 "lib/parser/lexer.rl"
10872
10892
  begin
10873
10893
  begin p = (( @te))-1; end
10874
10894
  begin
@@ -10876,7 +10896,7 @@ p = p - 1; begin p = @ts - 1; begin
10876
10896
  end
10877
10897
  end
10878
10898
  when 194 then
10879
- # line 1346 "lib/parser/lexer.rl"
10899
+ # line 1348 "lib/parser/lexer.rl"
10880
10900
  begin
10881
10901
  begin p = (( @te))-1; end
10882
10902
  begin
@@ -10898,6 +10918,14 @@ p = p - 1; begin p = @ts - 1; begin
10898
10918
  break
10899
10919
  end
10900
10920
 
10921
+ elsif @version >= 32 && tok =~ /\A_[1-9]\z/
10922
+ @cs = 247; begin
10923
+ p += 1
10924
+ _trigger_goto = true
10925
+ _goto_level = _out
10926
+ break
10927
+ end
10928
+
10901
10929
  else
10902
10930
  @cs = (arg_or_cmdarg(cmd_state)); begin
10903
10931
  p += 1
@@ -10910,12 +10938,12 @@ p = p - 1; begin p = @ts - 1; begin
10910
10938
  end
10911
10939
  end
10912
10940
  when 196 then
10913
- # line 1605 "lib/parser/lexer.rl"
10941
+ # line 1613 "lib/parser/lexer.rl"
10914
10942
  begin
10915
10943
  begin p = (( @te))-1; end
10916
10944
  end
10917
10945
  when 197 then
10918
- # line 1624 "lib/parser/lexer.rl"
10946
+ # line 1632 "lib/parser/lexer.rl"
10919
10947
  begin
10920
10948
  begin p = (( @te))-1; end
10921
10949
  begin p = @ts - 1; begin
@@ -11026,6 +11054,14 @@ p = p - 1; begin p = @ts - 1; begin
11026
11054
  break
11027
11055
  end
11028
11056
 
11057
+ elsif @version >= 32 && tok =~ /\A_[1-9]\z/
11058
+ @cs = 247; begin
11059
+ p += 1
11060
+ _trigger_goto = true
11061
+ _goto_level = _out
11062
+ break
11063
+ end
11064
+
11029
11065
  else
11030
11066
  @cs = (arg_or_cmdarg(cmd_state)); begin
11031
11067
  p += 1
@@ -11048,7 +11084,7 @@ p = p - 1; begin p = @ts - 1; begin
11048
11084
  end
11049
11085
  end
11050
11086
  when 199 then
11051
- # line 1644 "lib/parser/lexer.rl"
11087
+ # line 1652 "lib/parser/lexer.rl"
11052
11088
  begin
11053
11089
  @te = p+1
11054
11090
  begin p = p - 1; begin
@@ -11081,12 +11117,12 @@ end
11081
11117
  end
11082
11118
  end
11083
11119
  when 201 then
11084
- # line 1632 "lib/parser/lexer.rl"
11120
+ # line 1640 "lib/parser/lexer.rl"
11085
11121
  begin
11086
11122
  @te = p
11087
11123
  p = p - 1; end
11088
11124
  when 202 then
11089
- # line 1635 "lib/parser/lexer.rl"
11125
+ # line 1643 "lib/parser/lexer.rl"
11090
11126
  begin
11091
11127
  @te = p
11092
11128
  p = p - 1; begin
@@ -11110,7 +11146,7 @@ p = p - 1; begin
11110
11146
  end
11111
11147
  end
11112
11148
  when 203 then
11113
- # line 1644 "lib/parser/lexer.rl"
11149
+ # line 1652 "lib/parser/lexer.rl"
11114
11150
  begin
11115
11151
  @te = p
11116
11152
  p = p - 1; begin p = p - 1; begin
@@ -11122,7 +11158,7 @@ p = p - 1; begin p = p - 1; begin
11122
11158
  end
11123
11159
  end
11124
11160
  when 204 then
11125
- # line 1654 "lib/parser/lexer.rl"
11161
+ # line 1662 "lib/parser/lexer.rl"
11126
11162
  begin
11127
11163
  @te = p+1
11128
11164
  begin p = @ts - 1
@@ -11135,7 +11171,7 @@ p = p - 1; begin p = p - 1; begin
11135
11171
  end
11136
11172
  end
11137
11173
  when 205 then
11138
- # line 1659 "lib/parser/lexer.rl"
11174
+ # line 1667 "lib/parser/lexer.rl"
11139
11175
  begin
11140
11176
  @te = p+1
11141
11177
  begin
@@ -11150,7 +11186,7 @@ p = p - 1; begin p = p - 1; begin
11150
11186
  end
11151
11187
  end
11152
11188
  when 206 then
11153
- # line 1670 "lib/parser/lexer.rl"
11189
+ # line 1678 "lib/parser/lexer.rl"
11154
11190
  begin
11155
11191
  @te = p+1
11156
11192
  begin p = p - 1; begin
@@ -11183,12 +11219,12 @@ p = p - 1; begin p = p - 1; begin
11183
11219
  end
11184
11220
  end
11185
11221
  when 208 then
11186
- # line 1664 "lib/parser/lexer.rl"
11222
+ # line 1672 "lib/parser/lexer.rl"
11187
11223
  begin
11188
11224
  @te = p
11189
11225
  p = p - 1; end
11190
11226
  when 209 then
11191
- # line 1667 "lib/parser/lexer.rl"
11227
+ # line 1675 "lib/parser/lexer.rl"
11192
11228
  begin
11193
11229
  @te = p
11194
11230
  p = p - 1; begin begin
@@ -11200,7 +11236,7 @@ p = p - 1; begin begin
11200
11236
  end
11201
11237
  end
11202
11238
  when 210 then
11203
- # line 1670 "lib/parser/lexer.rl"
11239
+ # line 1678 "lib/parser/lexer.rl"
11204
11240
  begin
11205
11241
  @te = p
11206
11242
  p = p - 1; begin p = p - 1; begin
@@ -11212,7 +11248,7 @@ p = p - 1; begin p = p - 1; begin
11212
11248
  end
11213
11249
  end
11214
11250
  when 211 then
11215
- # line 1670 "lib/parser/lexer.rl"
11251
+ # line 1678 "lib/parser/lexer.rl"
11216
11252
  begin
11217
11253
  begin p = (( @te))-1; end
11218
11254
  begin p = p - 1; begin
@@ -11224,59 +11260,59 @@ p = p - 1; begin p = p - 1; begin
11224
11260
  end
11225
11261
  end
11226
11262
  when 212 then
11227
- # line 1689 "lib/parser/lexer.rl"
11263
+ # line 1697 "lib/parser/lexer.rl"
11228
11264
  begin
11229
11265
  @act = 104; end
11230
11266
  when 213 then
11231
- # line 1718 "lib/parser/lexer.rl"
11267
+ # line 1726 "lib/parser/lexer.rl"
11232
11268
  begin
11233
11269
  @act = 105; end
11234
11270
  when 214 then
11235
- # line 1722 "lib/parser/lexer.rl"
11271
+ # line 1730 "lib/parser/lexer.rl"
11236
11272
  begin
11237
11273
  @act = 106; end
11238
11274
  when 215 then
11239
- # line 1727 "lib/parser/lexer.rl"
11275
+ # line 1735 "lib/parser/lexer.rl"
11240
11276
  begin
11241
11277
  @act = 107; end
11242
11278
  when 216 then
11243
- # line 1732 "lib/parser/lexer.rl"
11279
+ # line 1740 "lib/parser/lexer.rl"
11244
11280
  begin
11245
11281
  @act = 108; end
11246
11282
  when 217 then
11247
- # line 1737 "lib/parser/lexer.rl"
11283
+ # line 1745 "lib/parser/lexer.rl"
11248
11284
  begin
11249
11285
  @act = 109; end
11250
11286
  when 218 then
11251
- # line 1741 "lib/parser/lexer.rl"
11287
+ # line 1749 "lib/parser/lexer.rl"
11252
11288
  begin
11253
11289
  @act = 110; end
11254
11290
  when 219 then
11255
- # line 1752 "lib/parser/lexer.rl"
11291
+ # line 1760 "lib/parser/lexer.rl"
11256
11292
  begin
11257
11293
  @act = 111; end
11258
11294
  when 220 then
11259
- # line 1766 "lib/parser/lexer.rl"
11295
+ # line 1774 "lib/parser/lexer.rl"
11260
11296
  begin
11261
11297
  @act = 112; end
11262
11298
  when 221 then
11263
- # line 1780 "lib/parser/lexer.rl"
11299
+ # line 1788 "lib/parser/lexer.rl"
11264
11300
  begin
11265
11301
  @act = 113; end
11266
11302
  when 222 then
11267
- # line 1798 "lib/parser/lexer.rl"
11303
+ # line 1806 "lib/parser/lexer.rl"
11268
11304
  begin
11269
11305
  @act = 115; end
11270
11306
  when 223 then
11271
- # line 1810 "lib/parser/lexer.rl"
11307
+ # line 1818 "lib/parser/lexer.rl"
11272
11308
  begin
11273
11309
  @act = 116; end
11274
11310
  when 224 then
11275
- # line 1825 "lib/parser/lexer.rl"
11311
+ # line 1833 "lib/parser/lexer.rl"
11276
11312
  begin
11277
11313
  @act = 117; end
11278
11314
  when 225 then
11279
- # line 1854 "lib/parser/lexer.rl"
11315
+ # line 1862 "lib/parser/lexer.rl"
11280
11316
  begin
11281
11317
  @act = 119; end
11282
11318
  when 226 then
@@ -11284,19 +11320,19 @@ p = p - 1; begin p = p - 1; begin
11284
11320
  begin
11285
11321
  @act = 123; end
11286
11322
  when 227 then
11287
- # line 1876 "lib/parser/lexer.rl"
11323
+ # line 1884 "lib/parser/lexer.rl"
11288
11324
  begin
11289
11325
  @act = 124; end
11290
11326
  when 228 then
11291
- # line 1902 "lib/parser/lexer.rl"
11327
+ # line 1910 "lib/parser/lexer.rl"
11292
11328
  begin
11293
11329
  @act = 126; end
11294
11330
  when 229 then
11295
- # line 1908 "lib/parser/lexer.rl"
11331
+ # line 1916 "lib/parser/lexer.rl"
11296
11332
  begin
11297
11333
  @act = 127; end
11298
11334
  when 230 then
11299
- # line 1681 "lib/parser/lexer.rl"
11335
+ # line 1689 "lib/parser/lexer.rl"
11300
11336
  begin
11301
11337
  @te = p+1
11302
11338
  begin
@@ -11313,7 +11349,7 @@ p = p - 1; begin p = p - 1; begin
11313
11349
  end
11314
11350
  end
11315
11351
  when 231 then
11316
- # line 1722 "lib/parser/lexer.rl"
11352
+ # line 1730 "lib/parser/lexer.rl"
11317
11353
  begin
11318
11354
  @te = p+1
11319
11355
  begin emit_singleton_class
@@ -11326,7 +11362,7 @@ p = p - 1; begin p = p - 1; begin
11326
11362
  end
11327
11363
  end
11328
11364
  when 232 then
11329
- # line 1843 "lib/parser/lexer.rl"
11365
+ # line 1851 "lib/parser/lexer.rl"
11330
11366
  begin
11331
11367
  @te = p+1
11332
11368
  begin
@@ -11342,7 +11378,7 @@ p = p - 1; begin p = p - 1; begin
11342
11378
  end
11343
11379
  end
11344
11380
  when 233 then
11345
- # line 1862 "lib/parser/lexer.rl"
11381
+ # line 1870 "lib/parser/lexer.rl"
11346
11382
  begin
11347
11383
  @te = p+1
11348
11384
  begin p = @ts - 1; begin
@@ -11356,7 +11392,7 @@ p = p - 1; begin p = p - 1; begin
11356
11392
  end
11357
11393
  end
11358
11394
  when 234 then
11359
- # line 1869 "lib/parser/lexer.rl"
11395
+ # line 1877 "lib/parser/lexer.rl"
11360
11396
  begin
11361
11397
  @te = p+1
11362
11398
  begin emit_table(PUNCTUATION)
@@ -11369,7 +11405,7 @@ p = p - 1; begin p = p - 1; begin
11369
11405
  end
11370
11406
  end
11371
11407
  when 235 then
11372
- # line 1893 "lib/parser/lexer.rl"
11408
+ # line 1901 "lib/parser/lexer.rl"
11373
11409
  begin
11374
11410
  @te = p+1
11375
11411
  begin
@@ -11384,7 +11420,7 @@ p = p - 1; begin p = p - 1; begin
11384
11420
  end
11385
11421
  end
11386
11422
  when 236 then
11387
- # line 1902 "lib/parser/lexer.rl"
11423
+ # line 1910 "lib/parser/lexer.rl"
11388
11424
  begin
11389
11425
  @te = p+1
11390
11426
  begin
@@ -11399,7 +11435,7 @@ p = p - 1; begin p = p - 1; begin
11399
11435
  end
11400
11436
  end
11401
11437
  when 237 then
11402
- # line 1929 "lib/parser/lexer.rl"
11438
+ # line 1937 "lib/parser/lexer.rl"
11403
11439
  begin
11404
11440
  @te = p+1
11405
11441
  begin emit(:tOP_ASGN, tok(@ts, @te - 1))
@@ -11412,7 +11448,7 @@ p = p - 1; begin p = p - 1; begin
11412
11448
  end
11413
11449
  end
11414
11450
  when 238 then
11415
- # line 1933 "lib/parser/lexer.rl"
11451
+ # line 1941 "lib/parser/lexer.rl"
11416
11452
  begin
11417
11453
  @te = p+1
11418
11454
  begin emit(:tEH, '?'.freeze)
@@ -11425,7 +11461,7 @@ p = p - 1; begin p = p - 1; begin
11425
11461
  end
11426
11462
  end
11427
11463
  when 239 then
11428
- # line 1941 "lib/parser/lexer.rl"
11464
+ # line 1949 "lib/parser/lexer.rl"
11429
11465
  begin
11430
11466
  @te = p+1
11431
11467
  begin
@@ -11445,7 +11481,7 @@ p = p - 1; begin p = p - 1; begin
11445
11481
  end
11446
11482
  end
11447
11483
  when 240 then
11448
- # line 1952 "lib/parser/lexer.rl"
11484
+ # line 1960 "lib/parser/lexer.rl"
11449
11485
  begin
11450
11486
  @te = p+1
11451
11487
  begin emit_table(PUNCTUATION)
@@ -11458,7 +11494,7 @@ p = p - 1; begin p = p - 1; begin
11458
11494
  end
11459
11495
  end
11460
11496
  when 241 then
11461
- # line 1965 "lib/parser/lexer.rl"
11497
+ # line 1973 "lib/parser/lexer.rl"
11462
11498
  begin
11463
11499
  @te = p+1
11464
11500
  begin emit(:tSEMI, ';'.freeze)
@@ -11472,7 +11508,7 @@ p = p - 1; begin p = p - 1; begin
11472
11508
  end
11473
11509
  end
11474
11510
  when 242 then
11475
- # line 1969 "lib/parser/lexer.rl"
11511
+ # line 1977 "lib/parser/lexer.rl"
11476
11512
  begin
11477
11513
  @te = p+1
11478
11514
  begin
@@ -11481,7 +11517,7 @@ p = p - 1; begin p = p - 1; begin
11481
11517
  end
11482
11518
  end
11483
11519
  when 243 then
11484
- # line 1975 "lib/parser/lexer.rl"
11520
+ # line 1983 "lib/parser/lexer.rl"
11485
11521
  begin
11486
11522
  @te = p+1
11487
11523
  begin
@@ -11510,7 +11546,7 @@ p = p - 1; begin p = p - 1; begin
11510
11546
  end
11511
11547
  end
11512
11548
  when 245 then
11513
- # line 1689 "lib/parser/lexer.rl"
11549
+ # line 1697 "lib/parser/lexer.rl"
11514
11550
  begin
11515
11551
  @te = p
11516
11552
  p = p - 1; begin
@@ -11544,7 +11580,7 @@ p = p - 1; begin
11544
11580
  end
11545
11581
  end
11546
11582
  when 246 then
11547
- # line 1718 "lib/parser/lexer.rl"
11583
+ # line 1726 "lib/parser/lexer.rl"
11548
11584
  begin
11549
11585
  @te = p
11550
11586
  p = p - 1; begin emit_table(KEYWORDS)
@@ -11557,7 +11593,7 @@ p = p - 1; begin emit_table(KEYWORDS)
11557
11593
  end
11558
11594
  end
11559
11595
  when 247 then
11560
- # line 1722 "lib/parser/lexer.rl"
11596
+ # line 1730 "lib/parser/lexer.rl"
11561
11597
  begin
11562
11598
  @te = p
11563
11599
  p = p - 1; begin emit_singleton_class
@@ -11570,7 +11606,7 @@ p = p - 1; begin emit_singleton_class
11570
11606
  end
11571
11607
  end
11572
11608
  when 248 then
11573
- # line 1732 "lib/parser/lexer.rl"
11609
+ # line 1740 "lib/parser/lexer.rl"
11574
11610
  begin
11575
11611
  @te = p
11576
11612
  p = p - 1; begin emit_table(KEYWORDS)
@@ -11584,7 +11620,7 @@ p = p - 1; begin emit_table(KEYWORDS)
11584
11620
  end
11585
11621
  end
11586
11622
  when 249 then
11587
- # line 1780 "lib/parser/lexer.rl"
11623
+ # line 1788 "lib/parser/lexer.rl"
11588
11624
  begin
11589
11625
  @te = p
11590
11626
  p = p - 1; begin
@@ -11606,7 +11642,7 @@ p = p - 1; begin
11606
11642
  end
11607
11643
  end
11608
11644
  when 250 then
11609
- # line 1793 "lib/parser/lexer.rl"
11645
+ # line 1801 "lib/parser/lexer.rl"
11610
11646
  begin
11611
11647
  @te = p
11612
11648
  p = p - 1; begin
@@ -11614,7 +11650,7 @@ p = p - 1; begin
11614
11650
  end
11615
11651
  end
11616
11652
  when 251 then
11617
- # line 1825 "lib/parser/lexer.rl"
11653
+ # line 1833 "lib/parser/lexer.rl"
11618
11654
  begin
11619
11655
  @te = p
11620
11656
  p = p - 1; begin
@@ -11636,7 +11672,7 @@ p = p - 1; begin
11636
11672
  end
11637
11673
  end
11638
11674
  when 252 then
11639
- # line 1854 "lib/parser/lexer.rl"
11675
+ # line 1862 "lib/parser/lexer.rl"
11640
11676
  begin
11641
11677
  @te = p
11642
11678
  p = p - 1; begin emit(:tCONSTANT)
@@ -11649,7 +11685,7 @@ p = p - 1; begin emit(:tCONSTANT)
11649
11685
  end
11650
11686
  end
11651
11687
  when 253 then
11652
- # line 1858 "lib/parser/lexer.rl"
11688
+ # line 1866 "lib/parser/lexer.rl"
11653
11689
  begin
11654
11690
  @te = p
11655
11691
  p = p - 1; begin emit(:tCONSTANT, tok(@ts, tm), @ts, tm)
@@ -11662,7 +11698,7 @@ p = p - 1; begin emit(:tCONSTANT, tok(@ts, tm), @ts, tm)
11662
11698
  end
11663
11699
  end
11664
11700
  when 254 then
11665
- # line 1862 "lib/parser/lexer.rl"
11701
+ # line 1870 "lib/parser/lexer.rl"
11666
11702
  begin
11667
11703
  @te = p
11668
11704
  p = p - 1; begin p = @ts - 1; begin
@@ -11676,7 +11712,7 @@ p = p - 1; begin p = @ts - 1; begin
11676
11712
  end
11677
11713
  end
11678
11714
  when 255 then
11679
- # line 1869 "lib/parser/lexer.rl"
11715
+ # line 1877 "lib/parser/lexer.rl"
11680
11716
  begin
11681
11717
  @te = p
11682
11718
  p = p - 1; begin emit_table(PUNCTUATION)
@@ -11703,6 +11739,14 @@ p = p - 1; begin
11703
11739
  break
11704
11740
  end
11705
11741
 
11742
+ elsif @version >= 32 && tok =~ /\A_[1-9]\z/
11743
+ @cs = 247; begin
11744
+ p += 1
11745
+ _trigger_goto = true
11746
+ _goto_level = _out
11747
+ break
11748
+ end
11749
+
11706
11750
  else
11707
11751
  @cs = (arg_or_cmdarg(cmd_state)); begin
11708
11752
  p += 1
@@ -11715,7 +11759,7 @@ p = p - 1; begin
11715
11759
  end
11716
11760
  end
11717
11761
  when 257 then
11718
- # line 1876 "lib/parser/lexer.rl"
11762
+ # line 1884 "lib/parser/lexer.rl"
11719
11763
  begin
11720
11764
  @te = p
11721
11765
  p = p - 1; begin
@@ -11737,7 +11781,7 @@ p = p - 1; begin
11737
11781
  end
11738
11782
  end
11739
11783
  when 258 then
11740
- # line 1893 "lib/parser/lexer.rl"
11784
+ # line 1901 "lib/parser/lexer.rl"
11741
11785
  begin
11742
11786
  @te = p
11743
11787
  p = p - 1; begin
@@ -11752,7 +11796,7 @@ p = p - 1; begin
11752
11796
  end
11753
11797
  end
11754
11798
  when 259 then
11755
- # line 1902 "lib/parser/lexer.rl"
11799
+ # line 1910 "lib/parser/lexer.rl"
11756
11800
  begin
11757
11801
  @te = p
11758
11802
  p = p - 1; begin
@@ -11767,7 +11811,7 @@ p = p - 1; begin
11767
11811
  end
11768
11812
  end
11769
11813
  when 260 then
11770
- # line 1908 "lib/parser/lexer.rl"
11814
+ # line 1916 "lib/parser/lexer.rl"
11771
11815
  begin
11772
11816
  @te = p
11773
11817
  p = p - 1; begin emit_table(PUNCTUATION)
@@ -11780,7 +11824,7 @@ p = p - 1; begin emit_table(PUNCTUATION)
11780
11824
  end
11781
11825
  end
11782
11826
  when 261 then
11783
- # line 1912 "lib/parser/lexer.rl"
11827
+ # line 1920 "lib/parser/lexer.rl"
11784
11828
  begin
11785
11829
  @te = p
11786
11830
  p = p - 1; begin
@@ -11806,7 +11850,7 @@ p = p - 1; begin
11806
11850
  end
11807
11851
  end
11808
11852
  when 262 then
11809
- # line 1937 "lib/parser/lexer.rl"
11853
+ # line 1945 "lib/parser/lexer.rl"
11810
11854
  begin
11811
11855
  @te = p
11812
11856
  p = p - 1; begin emit(:tLBRACK2, '['.freeze)
@@ -11819,7 +11863,7 @@ p = p - 1; begin emit(:tLBRACK2, '['.freeze)
11819
11863
  end
11820
11864
  end
11821
11865
  when 263 then
11822
- # line 1952 "lib/parser/lexer.rl"
11866
+ # line 1960 "lib/parser/lexer.rl"
11823
11867
  begin
11824
11868
  @te = p
11825
11869
  p = p - 1; begin emit_table(PUNCTUATION)
@@ -11832,12 +11876,12 @@ p = p - 1; begin emit_table(PUNCTUATION)
11832
11876
  end
11833
11877
  end
11834
11878
  when 264 then
11835
- # line 1959 "lib/parser/lexer.rl"
11879
+ # line 1967 "lib/parser/lexer.rl"
11836
11880
  begin
11837
11881
  @te = p
11838
11882
  p = p - 1; end
11839
11883
  when 265 then
11840
- # line 1962 "lib/parser/lexer.rl"
11884
+ # line 1970 "lib/parser/lexer.rl"
11841
11885
  begin
11842
11886
  @te = p
11843
11887
  p = p - 1; begin begin
@@ -11849,7 +11893,7 @@ p = p - 1; begin begin
11849
11893
  end
11850
11894
  end
11851
11895
  when 266 then
11852
- # line 1975 "lib/parser/lexer.rl"
11896
+ # line 1983 "lib/parser/lexer.rl"
11853
11897
  begin
11854
11898
  @te = p
11855
11899
  p = p - 1; begin
@@ -11857,7 +11901,7 @@ p = p - 1; begin
11857
11901
  end
11858
11902
  end
11859
11903
  when 267 then
11860
- # line 1780 "lib/parser/lexer.rl"
11904
+ # line 1788 "lib/parser/lexer.rl"
11861
11905
  begin
11862
11906
  begin p = (( @te))-1; end
11863
11907
  begin
@@ -11879,7 +11923,7 @@ p = p - 1; begin
11879
11923
  end
11880
11924
  end
11881
11925
  when 268 then
11882
- # line 1793 "lib/parser/lexer.rl"
11926
+ # line 1801 "lib/parser/lexer.rl"
11883
11927
  begin
11884
11928
  begin p = (( @te))-1; end
11885
11929
  begin
@@ -11887,7 +11931,7 @@ p = p - 1; begin
11887
11931
  end
11888
11932
  end
11889
11933
  when 269 then
11890
- # line 1825 "lib/parser/lexer.rl"
11934
+ # line 1833 "lib/parser/lexer.rl"
11891
11935
  begin
11892
11936
  begin p = (( @te))-1; end
11893
11937
  begin
@@ -11909,7 +11953,7 @@ p = p - 1; begin
11909
11953
  end
11910
11954
  end
11911
11955
  when 270 then
11912
- # line 1975 "lib/parser/lexer.rl"
11956
+ # line 1983 "lib/parser/lexer.rl"
11913
11957
  begin
11914
11958
  begin p = (( @te))-1; end
11915
11959
  begin
@@ -12152,6 +12196,14 @@ p = p - 1; begin
12152
12196
  break
12153
12197
  end
12154
12198
 
12199
+ elsif @version >= 32 && tok =~ /\A_[1-9]\z/
12200
+ @cs = 247; begin
12201
+ p += 1
12202
+ _trigger_goto = true
12203
+ _goto_level = _out
12204
+ break
12205
+ end
12206
+
12155
12207
  else
12156
12208
  @cs = (arg_or_cmdarg(cmd_state)); begin
12157
12209
  p += 1
@@ -12206,15 +12258,15 @@ p = p - 1; begin
12206
12258
  end
12207
12259
  end
12208
12260
  when 272 then
12209
- # line 1991 "lib/parser/lexer.rl"
12261
+ # line 1999 "lib/parser/lexer.rl"
12210
12262
  begin
12211
12263
  @act = 140; end
12212
12264
  when 273 then
12213
- # line 2030 "lib/parser/lexer.rl"
12265
+ # line 2038 "lib/parser/lexer.rl"
12214
12266
  begin
12215
12267
  @act = 144; end
12216
12268
  when 274 then
12217
- # line 2016 "lib/parser/lexer.rl"
12269
+ # line 2024 "lib/parser/lexer.rl"
12218
12270
  begin
12219
12271
  @te = p+1
12220
12272
  begin
@@ -12240,7 +12292,7 @@ end
12240
12292
  end
12241
12293
  end
12242
12294
  when 275 then
12243
- # line 2027 "lib/parser/lexer.rl"
12295
+ # line 2035 "lib/parser/lexer.rl"
12244
12296
  begin
12245
12297
  @te = p+1
12246
12298
  begin p = tm - 1; begin
@@ -12252,7 +12304,7 @@ end
12252
12304
  end
12253
12305
  end
12254
12306
  when 276 then
12255
- # line 2030 "lib/parser/lexer.rl"
12307
+ # line 2038 "lib/parser/lexer.rl"
12256
12308
  begin
12257
12309
  @te = p+1
12258
12310
  begin emit(:tNL, nil, @newline_s, @newline_s + 1)
@@ -12265,7 +12317,7 @@ end
12265
12317
  end
12266
12318
  end
12267
12319
  when 277 then
12268
- # line 1991 "lib/parser/lexer.rl"
12320
+ # line 1999 "lib/parser/lexer.rl"
12269
12321
  begin
12270
12322
  @te = p
12271
12323
  p = p - 1; begin
@@ -12288,7 +12340,7 @@ p = p - 1; begin
12288
12340
  end
12289
12341
  end
12290
12342
  when 278 then
12291
- # line 2005 "lib/parser/lexer.rl"
12343
+ # line 2013 "lib/parser/lexer.rl"
12292
12344
  begin
12293
12345
  @te = p
12294
12346
  p = p - 1; begin
@@ -12314,7 +12366,7 @@ p = p - 1; begin
12314
12366
  end
12315
12367
  end
12316
12368
  when 279 then
12317
- # line 2027 "lib/parser/lexer.rl"
12369
+ # line 2035 "lib/parser/lexer.rl"
12318
12370
  begin
12319
12371
  @te = p
12320
12372
  p = p - 1; begin p = tm - 1; begin
@@ -12326,7 +12378,7 @@ p = p - 1; begin p = tm - 1; begin
12326
12378
  end
12327
12379
  end
12328
12380
  when 280 then
12329
- # line 2030 "lib/parser/lexer.rl"
12381
+ # line 2038 "lib/parser/lexer.rl"
12330
12382
  begin
12331
12383
  @te = p
12332
12384
  p = p - 1; begin emit(:tNL, nil, @newline_s, @newline_s + 1)
@@ -12339,7 +12391,7 @@ p = p - 1; begin emit(:tNL, nil, @newline_s, @newline_s + 1)
12339
12391
  end
12340
12392
  end
12341
12393
  when 281 then
12342
- # line 1991 "lib/parser/lexer.rl"
12394
+ # line 1999 "lib/parser/lexer.rl"
12343
12395
  begin
12344
12396
  begin p = (( @te))-1; end
12345
12397
  begin
@@ -12362,7 +12414,7 @@ p = p - 1; begin emit(:tNL, nil, @newline_s, @newline_s + 1)
12362
12414
  end
12363
12415
  end
12364
12416
  when 282 then
12365
- # line 2030 "lib/parser/lexer.rl"
12417
+ # line 2038 "lib/parser/lexer.rl"
12366
12418
  begin
12367
12419
  begin p = (( @te))-1; end
12368
12420
  begin emit(:tNL, nil, @newline_s, @newline_s + 1)
@@ -12411,7 +12463,7 @@ p = p - 1; begin emit(:tNL, nil, @newline_s, @newline_s + 1)
12411
12463
  end
12412
12464
  end
12413
12465
  when 284 then
12414
- # line 2040 "lib/parser/lexer.rl"
12466
+ # line 2048 "lib/parser/lexer.rl"
12415
12467
  begin
12416
12468
  @te = p+1
12417
12469
  begin
@@ -12426,12 +12478,12 @@ end
12426
12478
  end
12427
12479
  end
12428
12480
  when 285 then
12429
- # line 2045 "lib/parser/lexer.rl"
12481
+ # line 2053 "lib/parser/lexer.rl"
12430
12482
  begin
12431
12483
  @te = p+1
12432
12484
  end
12433
12485
  when 286 then
12434
- # line 2040 "lib/parser/lexer.rl"
12486
+ # line 2048 "lib/parser/lexer.rl"
12435
12487
  begin
12436
12488
  @te = p
12437
12489
  p = p - 1; begin
@@ -12446,7 +12498,7 @@ p = p - 1; begin
12446
12498
  end
12447
12499
  end
12448
12500
  when 287 then
12449
- # line 2048 "lib/parser/lexer.rl"
12501
+ # line 2056 "lib/parser/lexer.rl"
12450
12502
  begin
12451
12503
  @te = p
12452
12504
  p = p - 1; begin
@@ -12455,7 +12507,7 @@ p = p - 1; begin
12455
12507
  end
12456
12508
  end
12457
12509
  when 288 then
12458
- # line 2058 "lib/parser/lexer.rl"
12510
+ # line 2066 "lib/parser/lexer.rl"
12459
12511
  begin
12460
12512
  @te = p+1
12461
12513
  begin @eq_begin_s = @ts
@@ -12468,13 +12520,13 @@ p = p - 1; begin
12468
12520
  end
12469
12521
  end
12470
12522
  when 289 then
12471
- # line 2062 "lib/parser/lexer.rl"
12523
+ # line 2070 "lib/parser/lexer.rl"
12472
12524
  begin
12473
12525
  @te = p+1
12474
12526
  begin p = pe - 3 end
12475
12527
  end
12476
12528
  when 290 then
12477
- # line 2065 "lib/parser/lexer.rl"
12529
+ # line 2073 "lib/parser/lexer.rl"
12478
12530
  begin
12479
12531
  @te = p+1
12480
12532
  begin cmd_state = true; p = p - 1; begin
@@ -12507,12 +12559,12 @@ p = p - 1; begin
12507
12559
  end
12508
12560
  end
12509
12561
  when 292 then
12510
- # line 2055 "lib/parser/lexer.rl"
12562
+ # line 2063 "lib/parser/lexer.rl"
12511
12563
  begin
12512
12564
  @te = p
12513
12565
  p = p - 1; end
12514
12566
  when 293 then
12515
- # line 2058 "lib/parser/lexer.rl"
12567
+ # line 2066 "lib/parser/lexer.rl"
12516
12568
  begin
12517
12569
  @te = p
12518
12570
  p = p - 1; begin @eq_begin_s = @ts
@@ -12525,7 +12577,7 @@ p = p - 1; begin @eq_begin_s = @ts
12525
12577
  end
12526
12578
  end
12527
12579
  when 294 then
12528
- # line 2065 "lib/parser/lexer.rl"
12580
+ # line 2073 "lib/parser/lexer.rl"
12529
12581
  begin
12530
12582
  @te = p
12531
12583
  p = p - 1; begin cmd_state = true; p = p - 1; begin
@@ -12537,7 +12589,7 @@ p = p - 1; begin cmd_state = true; p = p - 1; begin
12537
12589
  end
12538
12590
  end
12539
12591
  when 295 then
12540
- # line 2065 "lib/parser/lexer.rl"
12592
+ # line 2073 "lib/parser/lexer.rl"
12541
12593
  begin
12542
12594
  begin p = (( @te))-1; end
12543
12595
  begin cmd_state = true; p = p - 1; begin
@@ -12549,7 +12601,7 @@ p = p - 1; begin cmd_state = true; p = p - 1; begin
12549
12601
  end
12550
12602
  end
12551
12603
  when 296 then
12552
- # line 2072 "lib/parser/lexer.rl"
12604
+ # line 2080 "lib/parser/lexer.rl"
12553
12605
  begin
12554
12606
  @te = p+1
12555
12607
  begin
@@ -12566,7 +12618,7 @@ p = p - 1; begin cmd_state = true; p = p - 1; begin
12566
12618
 
12567
12619
  end
12568
12620
  end
12569
- # line 12569 "lib/parser/lexer-F0.rb"
12621
+ # line 12621 "lib/parser/lexer-F0.rb"
12570
12622
  end # action switch
12571
12623
  end
12572
12624
  end
@@ -12586,7 +12638,7 @@ p = p - 1; begin cmd_state = true; p = p - 1; begin
12586
12638
  # line 1 "NONE"
12587
12639
  begin
12588
12640
  @ts = nil; end
12589
- # line 12589 "lib/parser/lexer-F0.rb"
12641
+ # line 12641 "lib/parser/lexer-F0.rb"
12590
12642
  end # to state action switch
12591
12643
  end
12592
12644
  if _trigger_goto
@@ -12864,7 +12916,7 @@ p = p - 1; begin cmd_state = true; p = p - 1; begin
12864
12916
  end
12865
12917
 
12866
12918
 
12867
- # line 2081 "lib/parser/lexer.rl"
12919
+ # line 2089 "lib/parser/lexer.rl"
12868
12920
 
12869
12921
  # %
12870
12922
  end