Skip to content

Commit e0d640f

Browse files
authored
fix: update parser to fix precedence of ** and ?? (#1440)
Fixes #1421
1 parent 9234092 commit e0d640f

4 files changed

Lines changed: 15 additions & 4 deletions

File tree

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"dependencies": {
1414
"linguist-languages": "^7.5.1",
1515
"mem": "^6.0.1",
16-
"php-parser": "3.0.1"
16+
"php-parser": "glayzzle/php-parser#5a0e2e1bf12517bd1c544c0f4e68482d0362a7b5"
1717
},
1818
"devDependencies": {
1919
"@babel/preset-env": "^7.7.5",

tests/parens/__snapshots__/jsfmt.spec.js.snap

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -736,6 +736,10 @@ $var = $foo ?? $baz || $baz;
736736
$var = ($foo && $baz) ?? $baz;
737737
$var = $foo && ($baz ?? $baz);
738738
739+
$result = 2 ** $number - 1;
740+
$result = (2 ** $number) - 1;
741+
$result = 2 ** ($number - 1);
742+
739743
=====================================output=====================================
740744
<?php
741745
@@ -1122,6 +1126,10 @@ $var = $foo ?? $baz || $baz;
11221126
$var = $foo && $baz ?? $baz;
11231127
$var = $foo && ($baz ?? $baz);
11241128
1129+
$result = 2 ** $number - 1;
1130+
$result = 2 ** $number - 1;
1131+
$result = 2 ** ($number - 1);
1132+
11251133
================================================================================
11261134
`;
11271135

tests/parens/bin.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -361,3 +361,7 @@
361361
$var = $foo ?? $baz || $baz;
362362
$var = ($foo && $baz) ?? $baz;
363363
$var = $foo && ($baz ?? $baz);
364+
365+
$result = 2 ** $number - 1;
366+
$result = (2 ** $number) - 1;
367+
$result = 2 ** ($number - 1);

yarn.lock

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4047,10 +4047,9 @@ performance-now@^2.1.0:
40474047
resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
40484048
integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
40494049

4050-
php-parser@3.0.1:
4050+
php-parser@glayzzle/php-parser#5a0e2e1bf12517bd1c544c0f4e68482d0362a7b5:
40514051
version "3.0.1"
4052-
resolved "https://registry.yarnpkg.com/php-parser/-/php-parser-3.0.1.tgz#69ae957362717cfefbc58eb208d12e48dab2e809"
4053-
integrity sha512-m6CBPHOoMkzEHoXG0rhEg/VegSNemUNQepHnYtrRgTAh8rsqoO65KqQ32KJ5xe2iplhO0jdwd1UJ9Ea0yHsgYQ==
4052+
resolved "https://codeload.github.com/glayzzle/php-parser/tar.gz/5a0e2e1bf12517bd1c544c0f4e68482d0362a7b5"
40544053

40554054
picomatch@^2.0.4, picomatch@^2.0.5:
40564055
version "2.2.2"

0 commit comments

Comments
 (0)