Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F15426224
D13890.id33845.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
22 KB
Referenced Files
None
Subscribers
None
D13890.id33845.diff
View Options
diff --git a/src/parser/xhpast/__tests__/data/base-pass.php.expect b/src/parser/xhpast/__tests__/data/base-pass.php.expect
--- a/src/parser/xhpast/__tests__/data/base-pass.php.expect
+++ b/src/parser/xhpast/__tests__/data/base-pass.php.expect
@@ -2,7 +2,7 @@
"tree": [
9000,
0,
- 0,
+ 1,
[
[
9006,
@@ -21,7 +21,11 @@
"stream": [
[
371,
- 6
+ 5
+ ],
+ [
+ 375,
+ 1
]
]
}
diff --git a/src/parser/xhpast/__tests__/data/php-access-on-instanciation.expect b/src/parser/xhpast/__tests__/data/php-access-on-instanciation.expect
--- a/src/parser/xhpast/__tests__/data/php-access-on-instanciation.expect
+++ b/src/parser/xhpast/__tests__/data/php-access-on-instanciation.expect
@@ -340,11 +340,11 @@
"stream": [
[
371,
- 6
+ 5
],
[
375,
- 1
+ 2
],
[
356,
diff --git a/src/parser/xhpast/__tests__/data/php-array-dereference-2.expect b/src/parser/xhpast/__tests__/data/php-array-dereference-2.expect
--- a/src/parser/xhpast/__tests__/data/php-array-dereference-2.expect
+++ b/src/parser/xhpast/__tests__/data/php-array-dereference-2.expect
@@ -95,11 +95,11 @@
"stream": [
[
371,
- 6
+ 5
],
[
375,
- 1
+ 2
],
[
303,
diff --git a/src/parser/xhpast/__tests__/data/php-array-dereference-3.expect b/src/parser/xhpast/__tests__/data/php-array-dereference-3.expect
--- a/src/parser/xhpast/__tests__/data/php-array-dereference-3.expect
+++ b/src/parser/xhpast/__tests__/data/php-array-dereference-3.expect
@@ -2,12 +2,12 @@
"tree": [
9000,
0,
- 20,
+ 21,
[
[
9006,
0,
- 19,
+ 20,
[
[
9007,
@@ -16,77 +16,77 @@
],
[
9004,
- 1,
- 19,
+ 2,
+ 20,
[
[
9015,
- 1,
- 19,
+ 2,
+ 20,
[
[
9017,
- 1,
- 19,
+ 2,
+ 20,
[
[
9016,
- 3,
- 15,
+ 4,
+ 16,
[
[
9099,
- 4,
- 14,
+ 5,
+ 15,
[
[
9001,
- 4,
- 4
+ 5,
+ 5
],
[
9095,
- 5,
- 14,
+ 6,
+ 15,
[
[
9100,
- 6,
- 13,
+ 7,
+ 14,
[
[
9099,
- 6,
- 10,
+ 7,
+ 11,
[
[
9089,
- 6,
- 8,
+ 7,
+ 9,
[
[
9090,
- 6,
- 6
+ 7,
+ 7
],
[
9013,
- 8,
- 8
+ 9,
+ 9
]
]
],
[
9095,
- 9,
- 10
+ 10,
+ 11
]
]
],
[
9047,
- 12,
- 12
+ 13,
+ 13
]
]
]
@@ -98,8 +98,8 @@
],
[
9006,
- 17,
- 19
+ 18,
+ 20
]
]
]
@@ -114,7 +114,11 @@
"stream": [
[
371,
- 6
+ 5
+ ],
+ [
+ 375,
+ 1
],
[
303,
diff --git a/src/parser/xhpast/__tests__/data/php-array-dereference.expect b/src/parser/xhpast/__tests__/data/php-array-dereference.expect
--- a/src/parser/xhpast/__tests__/data/php-array-dereference.expect
+++ b/src/parser/xhpast/__tests__/data/php-array-dereference.expect
@@ -350,11 +350,11 @@
"stream": [
[
371,
- 6
+ 5
],
[
375,
- 1
+ 2
],
[
337,
diff --git a/src/parser/xhpast/__tests__/data/php-binary-literal.php.expect b/src/parser/xhpast/__tests__/data/php-binary-literal.php.expect
--- a/src/parser/xhpast/__tests__/data/php-binary-literal.php.expect
+++ b/src/parser/xhpast/__tests__/data/php-binary-literal.php.expect
@@ -2,12 +2,12 @@
"tree": [
9000,
0,
- 2,
+ 3,
[
[
9006,
0,
- 2,
+ 3,
[
[
9007,
@@ -16,13 +16,13 @@
],
[
9004,
- 1,
2,
+ 3,
[
[
9086,
- 1,
- 1
+ 2,
+ 2
]
]
]
@@ -33,7 +33,11 @@
"stream": [
[
371,
- 6
+ 5
+ ],
+ [
+ 375,
+ 1
],
[
307,
diff --git a/src/parser/xhpast/__tests__/data/php-callable-typehint.php.expect b/src/parser/xhpast/__tests__/data/php-callable-typehint.php.expect
--- a/src/parser/xhpast/__tests__/data/php-callable-typehint.php.expect
+++ b/src/parser/xhpast/__tests__/data/php-callable-typehint.php.expect
@@ -81,11 +81,11 @@
"stream": [
[
371,
- 6
+ 5
],
[
375,
- 1
+ 2
],
[
337,
diff --git a/src/parser/xhpast/__tests__/data/php-comments.php.expect b/src/parser/xhpast/__tests__/data/php-comments.php.expect
--- a/src/parser/xhpast/__tests__/data/php-comments.php.expect
+++ b/src/parser/xhpast/__tests__/data/php-comments.php.expect
@@ -21,11 +21,11 @@
"stream": [
[
371,
- 6
+ 5
],
[
375,
- 1
+ 2
],
[
369,
diff --git a/src/parser/xhpast/__tests__/data/php-empty-heredoc.php.expect b/src/parser/xhpast/__tests__/data/php-empty-heredoc.php.expect
--- a/src/parser/xhpast/__tests__/data/php-empty-heredoc.php.expect
+++ b/src/parser/xhpast/__tests__/data/php-empty-heredoc.php.expect
@@ -50,11 +50,11 @@
"stream": [
[
371,
- 6
+ 5
],
[
375,
- 1
+ 2
],
[
311,
diff --git a/src/parser/xhpast/__tests__/data/php-finally.php.expect b/src/parser/xhpast/__tests__/data/php-finally.php.expect
--- a/src/parser/xhpast/__tests__/data/php-finally.php.expect
+++ b/src/parser/xhpast/__tests__/data/php-finally.php.expect
@@ -2,12 +2,12 @@
"tree": [
9000,
0,
- 21,
+ 22,
[
[
9006,
0,
- 20,
+ 21,
[
[
9007,
@@ -16,43 +16,43 @@
],
[
9004,
- 1,
- 20,
+ 2,
+ 21,
[
[
9041,
- 1,
- 20,
+ 2,
+ 21,
[
[
9006,
- 3,
- 4
+ 4,
+ 5
],
[
9042,
- 6,
- 15,
+ 7,
+ 16,
[
[
9043,
- 6,
- 15,
+ 7,
+ 16,
[
[
9090,
- 9,
- 9
+ 10,
+ 10
],
[
9047,
- 11,
- 11
+ 12,
+ 12
],
[
9006,
- 14,
- 15
+ 15,
+ 16
]
]
]
@@ -60,8 +60,8 @@
],
[
9113,
- 17,
- 20,
+ 18,
+ 21,
[
[
9006
@@ -79,7 +79,11 @@
"stream": [
[
371,
- 6
+ 5
+ ],
+ [
+ 375,
+ 1
],
[
340,
diff --git a/src/parser/xhpast/__tests__/data/php-literal-index.php.expect b/src/parser/xhpast/__tests__/data/php-literal-index.php.expect
--- a/src/parser/xhpast/__tests__/data/php-literal-index.php.expect
+++ b/src/parser/xhpast/__tests__/data/php-literal-index.php.expect
@@ -2,12 +2,12 @@
"tree": [
9000,
0,
- 14,
+ 15,
[
[
9006,
0,
- 13,
+ 14,
[
[
9007,
@@ -16,36 +16,36 @@
],
[
9004,
- 1,
- 7,
+ 2,
+ 8,
[
[
9100,
- 1,
- 6,
+ 2,
+ 7,
[
[
9082,
- 1,
- 3,
+ 2,
+ 4,
[
[
9093,
- 1,
- 3,
+ 2,
+ 4,
[
[
9094,
- 2,
- 2,
+ 3,
+ 3,
[
[
9005
],
[
9086,
- 2,
- 2
+ 3,
+ 3
]
]
]
@@ -55,8 +55,8 @@
],
[
9086,
- 5,
- 5
+ 6,
+ 6
]
]
]
@@ -64,23 +64,23 @@
],
[
9004,
- 9,
- 13,
+ 10,
+ 14,
[
[
9100,
- 9,
- 12,
+ 10,
+ 13,
[
[
9087,
- 9,
- 9
+ 10,
+ 10
],
[
9086,
- 11,
- 11
+ 12,
+ 12
]
]
]
@@ -93,7 +93,11 @@
"stream": [
[
371,
- 6
+ 5
+ ],
+ [
+ 375,
+ 1
],
[
91,
diff --git a/src/parser/xhpast/__tests__/data/php-literals.php.expect b/src/parser/xhpast/__tests__/data/php-literals.php.expect
--- a/src/parser/xhpast/__tests__/data/php-literals.php.expect
+++ b/src/parser/xhpast/__tests__/data/php-literals.php.expect
@@ -189,11 +189,11 @@
"stream": [
[
371,
- 6
+ 5
],
[
375,
- 1
+ 2
],
[
307,
diff --git a/src/parser/xhpast/__tests__/data/php-short-array.php.expect b/src/parser/xhpast/__tests__/data/php-short-array.php.expect
--- a/src/parser/xhpast/__tests__/data/php-short-array.php.expect
+++ b/src/parser/xhpast/__tests__/data/php-short-array.php.expect
@@ -2,12 +2,12 @@
"tree": [
9000,
0,
- 4,
+ 5,
[
[
9006,
0,
- 3,
+ 4,
[
[
9007,
@@ -16,18 +16,18 @@
],
[
9004,
- 1,
- 3,
+ 2,
+ 4,
[
[
9082,
- 1,
2,
+ 3,
[
[
9093,
- 1,
- 2
+ 2,
+ 3
]
]
]
@@ -40,7 +40,11 @@
"stream": [
[
371,
- 6
+ 5
+ ],
+ [
+ 375,
+ 1
],
[
91,
diff --git a/src/parser/xhpast/__tests__/data/php-syntax.php.expect b/src/parser/xhpast/__tests__/data/php-syntax.php.expect
--- a/src/parser/xhpast/__tests__/data/php-syntax.php.expect
+++ b/src/parser/xhpast/__tests__/data/php-syntax.php.expect
@@ -5606,11 +5606,11 @@
"stream": [
[
371,
- 6
+ 5
],
[
375,
- 1
+ 2
],
[
307,
diff --git a/src/parser/xhpast/__tests__/data/php-tags.php.expect b/src/parser/xhpast/__tests__/data/php-tags.php.expect
--- a/src/parser/xhpast/__tests__/data/php-tags.php.expect
+++ b/src/parser/xhpast/__tests__/data/php-tags.php.expect
@@ -2,12 +2,12 @@
"tree": [
9000,
0,
- 20,
+ 21,
[
[
9006,
0,
- 20,
+ 21,
[
[
9007,
@@ -16,20 +16,20 @@
],
[
9004,
- 1,
2,
+ 3,
[
[
9086,
- 1,
- 1
+ 2,
+ 2
]
]
],
[
9004,
- 4,
- 4,
+ 5,
+ 5,
[
[
9005
@@ -38,25 +38,25 @@
],
[
9007,
- 5,
- 5
+ 6,
+ 6
],
[
9004,
- 7,
8,
+ 9,
[
[
9086,
- 7,
- 7
+ 8,
+ 8
]
]
],
[
9004,
- 10,
- 10,
+ 11,
+ 11,
[
[
9005
@@ -65,25 +65,25 @@
],
[
9007,
- 11,
- 11
+ 12,
+ 12
],
[
9004,
- 13,
14,
+ 15,
[
[
9086,
- 13,
- 13
+ 14,
+ 14
]
]
],
[
9004,
- 16,
- 16,
+ 17,
+ 17,
[
[
9005
@@ -92,11 +92,6 @@
],
[
9034,
- 17,
- 17
- ],
- [
- 9034,
18,
18
],
@@ -109,6 +104,11 @@
9034,
20,
20
+ ],
+ [
+ 9034,
+ 21,
+ 21
]
]
]
@@ -117,7 +117,11 @@
"stream": [
[
371,
- 6
+ 5
+ ],
+ [
+ 375,
+ 1
],
[
307,
diff --git a/src/parser/xhpast/__tests__/data/php-traits.php.expect b/src/parser/xhpast/__tests__/data/php-traits.php.expect
--- a/src/parser/xhpast/__tests__/data/php-traits.php.expect
+++ b/src/parser/xhpast/__tests__/data/php-traits.php.expect
@@ -429,11 +429,11 @@
"stream": [
[
371,
- 6
+ 5
],
[
375,
- 1
+ 2
],
[
390,
diff --git a/src/parser/xhpast/__tests__/data/php-yield.php.expect b/src/parser/xhpast/__tests__/data/php-yield.php.expect
--- a/src/parser/xhpast/__tests__/data/php-yield.php.expect
+++ b/src/parser/xhpast/__tests__/data/php-yield.php.expect
@@ -211,11 +211,11 @@
"stream": [
[
371,
- 6
+ 5
],
[
375,
- 1
+ 2
],
[
337,
diff --git a/src/parser/xhpast/bin/PhutilXHPASTBinary.php b/src/parser/xhpast/bin/PhutilXHPASTBinary.php
--- a/src/parser/xhpast/bin/PhutilXHPASTBinary.php
+++ b/src/parser/xhpast/bin/PhutilXHPASTBinary.php
@@ -8,7 +8,7 @@
* This is the version that would be obtained with an up-to-date XHPAST
* build. The //actual// XHPAST build version may vary.
*/
- const EXPECTED_VERSION = '5.7.1';
+ const EXPECTED_VERSION = '5.7.2';
/**
* The XHPAST build version.
diff --git a/support/xhpast/scanner.l b/support/xhpast/scanner.l
--- a/support/xhpast/scanner.l
+++ b/support/xhpast/scanner.l
@@ -68,7 +68,7 @@
/* Open / close PHP + inline HTML */
<INITIAL>{
- "<?php"([ \t]|{NEWLINE}) {
+ "<?php"/([ \t]|{NEWLINE}) {
yy_scan_newlines(yytext + 5, yyg);
// the state transition will be done in yy_token()
tok(T_OPEN_TAG);
@@ -322,7 +322,6 @@
/* (HERE|NOW)DOC's */
<PHP,PHP_NO_RESERVED_WORDS,PHP_NO_RESERVED_WORDS_PERSIST>b?"<<<"{TABS_AND_SPACES} {
-
push_state(PHP_HEREDOC_START);
yyextra->heredoc_yyleng = yyleng;
yymore();
diff --git a/support/xhpast/scanner.lex.hpp b/support/xhpast/scanner.lex.hpp
--- a/support/xhpast/scanner.lex.hpp
+++ b/support/xhpast/scanner.lex.hpp
@@ -361,7 +361,7 @@
#undef YY_DECL
#endif
-#line 394 "scanner.l"
+#line 393 "scanner.l"
#line 368 "scanner.lex.hpp"
diff --git a/support/xhpast/scanner.lex.cpp b/support/xhpast/scanner.lex.cpp
--- a/support/xhpast/scanner.lex.cpp
+++ b/support/xhpast/scanner.lex.cpp
@@ -24771,6 +24771,10 @@
case 1:
/* rule 1 can match eol */
+*yy_cp = yyg->yy_hold_char; /* undo effects of setting up yytext */
+YY_LINENO_REWIND_TO(yy_bp + 5);
+yyg->yy_c_buf_p = yy_cp = yy_bp + 5;
+YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
#line 71 "scanner.l"
{
@@ -25574,7 +25578,6 @@
YY_RULE_SETUP
#line 324 "scanner.l"
{
-
push_state(PHP_HEREDOC_START);
yyextra->heredoc_yyleng = yyleng;
yymore();
@@ -25583,7 +25586,7 @@
case 136:
YY_RULE_SETUP
-#line 331 "scanner.l"
+#line 330 "scanner.l"
{
// Create a new string for the heredoc label. Since we're using yymore above
// yytext will actually start at the "<<<" and not the label. Use of
@@ -25599,7 +25602,7 @@
YY_BREAK
case 137:
YY_RULE_SETUP
-#line 343 "scanner.l"
+#line 342 "scanner.l"
{
yyextra->heredoc_label = string(yytext + yyextra->heredoc_yyleng);
set_state(PHP_HEREDOC_NSTART);
@@ -25611,7 +25614,7 @@
case 138:
/* rule 138 can match eol */
YY_RULE_SETUP
-#line 350 "scanner.l"
+#line 349 "scanner.l"
{
yyextra->heredoc_yyleng = yyleng;
set_state(PHP_HEREDOC_NEWLINE);
@@ -25622,7 +25625,7 @@
case 139:
/* rule 139 can match eol */
YY_RULE_SETUP
-#line 356 "scanner.l"
+#line 355 "scanner.l"
{
if (strncmp(
yyextra->heredoc_label.c_str(),
@@ -25646,7 +25649,7 @@
YY_BREAK
case 140:
YY_RULE_SETUP
-#line 376 "scanner.l"
+#line 375 "scanner.l"
{
yyextra->heredoc_yyleng = yyleng;
yymore();
@@ -25655,7 +25658,7 @@
case 141:
/* rule 141 can match eol */
YY_RULE_SETUP
-#line 380 "scanner.l"
+#line 379 "scanner.l"
{
++yyextra->lineno;
yyextra->heredoc_yyleng = yyleng;
@@ -25667,7 +25670,7 @@
case 142:
/* rule 142 can match eol */
YY_RULE_SETUP
-#line 388 "scanner.l"
+#line 387 "scanner.l"
{
tok(yytext[0]);
// fix unused function warnings
@@ -25677,10 +25680,10 @@
YY_BREAK
case 143:
YY_RULE_SETUP
-#line 395 "scanner.l"
+#line 394 "scanner.l"
YY_FATAL_ERROR( "flex scanner jammed" );
YY_BREAK
-#line 25684 "scanner.lex.cpp"
+#line 25687 "scanner.lex.cpp"
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(PHP):
case YY_STATE_EOF(PHP_HEREDOC_START):
@@ -26886,7 +26889,7 @@
#define YYTABLES_NAME "yytables"
-#line 394 "scanner.l"
+#line 393 "scanner.l"
diff --git a/support/xhpast/xhpast.cpp b/support/xhpast/xhpast.cpp
--- a/support/xhpast/xhpast.cpp
+++ b/support/xhpast/xhpast.cpp
@@ -12,7 +12,7 @@
int main(int argc, char* argv[]) {
if (argc != 1) {
// Coupling: modify also src/parser/xhpast/bin/PhutilXHPASTBinary.php
- cout << "5.7.1\n";
+ cout << "5.7.2\n";
return 0;
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Mon, Mar 24, 7:46 AM (3 d, 6 h ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7718376
Default Alt Text
D13890.id33845.diff (22 KB)
Attached To
Mode
D13890: Don't eat whitespace after T_OPEN_TAG
Attached
Detach File
Event Timeline
Log In to Comment