parser 2.5.0.1 → 2.5.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9ee63d086cc3d7ade55f51e03ac92d6f88315fb7
4
- data.tar.gz: 8efdd495d4866bfb27db7b0b15be94515b18a91f
3
+ metadata.gz: 1497971563a08dc36f4f331db195ebbe9d157082
4
+ data.tar.gz: 6af1b9d7f17195f6306c6de045c547ebc4dc77e4
5
5
  SHA512:
6
- metadata.gz: ae6472a338db72f9d422633eeb83fb6ba37f3f07e99f89d8d2661b840a08177aaffb2ffa8677a7d826f86278c94ba2434b68e00e265d43e7da3ca4998fceeb49
7
- data.tar.gz: 382b2d934d537bf496e74911a25a7caf286192955a50698f4a0c7b80d5b0f852feebd51d6beb0cd12381052960ab0c4687e26e965a43cab36269ec9919bf730e
6
+ metadata.gz: 0c87434346083e12a82d091d0e274ff0ef3766aac84704fad1d1b5f734bf1a884187c46570c474136bc04d0fb24122cdfc76eb5d32f0e4c79d1d31f986c8d110
7
+ data.tar.gz: bae16691e9e99837d7fc31551b31b4f2e98e0729ebf92a401a595b3b942e65de4b6819341e93e89c27cf9fa56951edd02b5201b63b77e9ec023e67e3b1f57768
@@ -1,6 +1,12 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
+ v2.5.0.2 (2018-02-22)
5
+ ---------------------
6
+
7
+ Bugs fixed:
8
+ * ruby24.y, ruby25.y: Replicate cmdargs handling from MRI. (#453) (Ilya Bylich)
9
+
4
10
  v2.5.0.1 (2018-02-21)
5
11
  ---------------------
6
12
 
@@ -955,20 +955,13 @@ rule
955
955
 
956
956
  result = @builder.begin_keyword(val[0], val[2], val[3])
957
957
  }
958
- | tLPAREN_ARG
959
- {
960
- result = @lexer.cmdarg.dup
961
- @lexer.cmdarg.clear
962
- }
963
- stmt
958
+ | tLPAREN_ARG stmt
964
959
  {
965
960
  @lexer.state = :expr_endarg
966
961
  }
967
962
  rparen
968
963
  {
969
- @lexer.cmdarg = val[1]
970
-
971
- result = @builder.begin(val[0], val[2], val[4])
964
+ result = @builder.begin(val[0], val[1], val[3])
972
965
  }
973
966
  | tLPAREN_ARG
974
967
  {
@@ -965,20 +965,13 @@ rule
965
965
 
966
966
  result = @builder.begin_keyword(val[0], val[2], val[3])
967
967
  }
968
- | tLPAREN_ARG
969
- {
970
- result = @lexer.cmdarg.dup
971
- @lexer.cmdarg.clear
972
- }
973
- stmt
968
+ | tLPAREN_ARG stmt
974
969
  {
975
970
  @lexer.state = :expr_endarg
976
971
  }
977
972
  rparen
978
973
  {
979
- @lexer.cmdarg = val[1]
980
-
981
- result = @builder.begin(val[0], val[2], val[4])
974
+ result = @builder.begin(val[0], val[1], val[3])
982
975
  }
983
976
  | tLPAREN_ARG
984
977
  {
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Parser
4
- VERSION = '2.5.0.1'
4
+ VERSION = '2.5.0.2'
5
5
  end
@@ -122,6 +122,9 @@ module ParseHelper
122
122
 
123
123
  assert_source_range(begin_pos, end_pos, range, version, line.inspect)
124
124
  end
125
+
126
+ assert_equal parser.instance_eval { @lexer }.cmdarg.instance_eval { @stack }, 0,
127
+ "(#{version}) expected cmdarg to be empty after parsing"
125
128
  end
126
129
 
127
130
  # Use like this:
@@ -6781,4 +6781,20 @@ class TestParser < Minitest::Test
6781
6781
  %q{},
6782
6782
  SINCE_1_9)
6783
6783
  end
6784
+
6785
+ def test_bug_452
6786
+ assert_parses(
6787
+ s(:begin,
6788
+ s(:send, nil, :td,
6789
+ s(:send,
6790
+ s(:begin,
6791
+ s(:int, 1500)), :toString)),
6792
+ s(:block,
6793
+ s(:send,
6794
+ s(:send, nil, :td), :num),
6795
+ s(:args), nil)),
6796
+ %q{td (1_500).toString(); td.num do; end},
6797
+ %q{},
6798
+ ALL_VERSIONS)
6799
+ end
6784
6800
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: parser
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.0.1
4
+ version: 2.5.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - whitequark
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-21 00:00:00.000000000 Z
11
+ date: 2018-02-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ast