| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541 |
- Error recovery
- -----
- <?php
- foo()
- bar()
- baz()
- -----
- Syntax error, unexpected T_STRING from 4:1 to 4:3
- Syntax error, unexpected T_STRING from 5:1 to 5:3
- Syntax error, unexpected EOF from 5:6 to 5:6
- array(
- 0: Stmt_Expression(
- expr: Expr_FuncCall(
- name: Name(
- parts: array(
- 0: foo
- )
- )
- args: array(
- )
- )
- )
- 1: Stmt_Expression(
- expr: Expr_FuncCall(
- name: Name(
- parts: array(
- 0: bar
- )
- )
- args: array(
- )
- )
- )
- 2: Stmt_Expression(
- expr: Expr_FuncCall(
- name: Name(
- parts: array(
- 0: baz
- )
- )
- args: array(
- )
- )
- )
- )
- -----
- <?php
- foo()
- bar();
- baz();
- -----
- Syntax error, unexpected T_STRING from 4:1 to 4:3
- array(
- 0: Stmt_Expression(
- expr: Expr_FuncCall(
- name: Name(
- parts: array(
- 0: foo
- )
- )
- args: array(
- )
- )
- )
- 1: Stmt_Expression(
- expr: Expr_FuncCall(
- name: Name(
- parts: array(
- 0: bar
- )
- )
- args: array(
- )
- )
- )
- 2: Stmt_Expression(
- expr: Expr_FuncCall(
- name: Name(
- parts: array(
- 0: baz
- )
- )
- args: array(
- )
- )
- )
- )
- -----
- <?php
- foo();
- bar()
- baz();
- -----
- Syntax error, unexpected T_STRING from 5:1 to 5:3
- array(
- 0: Stmt_Expression(
- expr: Expr_FuncCall(
- name: Name(
- parts: array(
- 0: foo
- )
- )
- args: array(
- )
- )
- )
- 1: Stmt_Expression(
- expr: Expr_FuncCall(
- name: Name(
- parts: array(
- 0: bar
- )
- )
- args: array(
- )
- )
- )
- 2: Stmt_Expression(
- expr: Expr_FuncCall(
- name: Name(
- parts: array(
- 0: baz
- )
- )
- args: array(
- )
- )
- )
- )
- -----
- <?php
- abc;
- 1 + ;
- -----
- Syntax error, unexpected ';' from 3:5 to 3:5
- array(
- 0: Stmt_Expression(
- expr: Expr_ConstFetch(
- name: Name(
- parts: array(
- 0: abc
- )
- )
- )
- )
- 1: Stmt_Expression(
- expr: Scalar_LNumber(
- value: 1
- )
- )
- )
- -----
- <?php
- function test() {
- 1 +
- }
- -----
- Syntax error, unexpected '}' from 4:1 to 4:1
- array(
- 0: Stmt_Function(
- attrGroups: array(
- )
- byRef: false
- name: Identifier(
- name: test
- )
- params: array(
- )
- returnType: null
- stmts: array(
- 0: Stmt_Expression(
- expr: Scalar_LNumber(
- value: 1
- )
- )
- )
- )
- )
- -----
- <?php
- $i = 0;
- while
- $j = 1;
- $k = 2;
- -----
- Syntax error, unexpected T_VARIABLE, expecting '(' from 6:1 to 6:2
- array(
- 0: Stmt_Expression(
- expr: Expr_Assign(
- var: Expr_Variable(
- name: i
- )
- expr: Scalar_LNumber(
- value: 0
- )
- )
- )
- 1: Stmt_Expression(
- expr: Expr_Assign(
- var: Expr_Variable(
- name: j
- )
- expr: Scalar_LNumber(
- value: 1
- )
- )
- )
- 2: Stmt_Expression(
- expr: Expr_Assign(
- var: Expr_Variable(
- name: k
- )
- expr: Scalar_LNumber(
- value: 2
- )
- )
- )
- )
- -----
- <?php
- $i = 0;
- while () {
- $j = 1;
- }
- $k = 2;
- // The output here drops the loop - would require Error node to handle this
- -----
- Syntax error, unexpected ')' from 4:8 to 4:8
- array(
- 0: Stmt_Expression(
- expr: Expr_Assign(
- var: Expr_Variable(
- name: i
- )
- expr: Scalar_LNumber(
- value: 0
- )
- )
- )
- 1: Stmt_Expression(
- expr: Expr_Assign(
- var: Expr_Variable(
- name: j
- )
- expr: Scalar_LNumber(
- value: 1
- )
- )
- )
- 2: Stmt_Expression(
- expr: Expr_Assign(
- var: Expr_Variable(
- name: k
- )
- expr: Scalar_LNumber(
- value: 2
- )
- )
- )
- 3: Stmt_Nop(
- comments: array(
- 0: // The output here drops the loop - would require Error node to handle this
- )
- )
- )
- -----
- <?php
- // Can't recover this yet, as the '}' for the inner_statement_list
- // is always required.
- $i = 0;
- while (true) {
- $i = 1;
- $i = 2;
- -----
- Syntax error, unexpected EOF from 8:12 to 8:12
- -----
- <?php
- $foo->
- ;
- -----
- !!positions
- Syntax error, unexpected ';', expecting T_STRING or T_VARIABLE or '{' or '$' from 3:1 to 3:1
- array(
- 0: Stmt_Expression[2:1 - 3:1](
- expr: Expr_PropertyFetch[2:1 - 2:6](
- var: Expr_Variable[2:1 - 2:4](
- name: foo
- )
- name: Expr_Error[3:1 - 2:6](
- )
- )
- )
- )
- -----
- <?php
- function foo() {
- $bar->
- }
- -----
- !!positions
- Syntax error, unexpected '}', expecting T_STRING or T_VARIABLE or '{' or '$' from 4:1 to 4:1
- array(
- 0: Stmt_Function[2:1 - 4:1](
- attrGroups: array(
- )
- byRef: false
- name: Identifier[2:10 - 2:12](
- name: foo
- )
- params: array(
- )
- returnType: null
- stmts: array(
- 0: Stmt_Expression[3:5 - 3:10](
- expr: Expr_PropertyFetch[3:5 - 3:10](
- var: Expr_Variable[3:5 - 3:8](
- name: bar
- )
- name: Expr_Error[4:1 - 3:10](
- )
- )
- )
- )
- )
- )
- -----
- <?php
- new T
- -----
- Syntax error, unexpected EOF from 2:6 to 2:6
- array(
- 0: Stmt_Expression(
- expr: Expr_New(
- class: Name(
- parts: array(
- 0: T
- )
- )
- args: array(
- )
- )
- )
- )
- -----
- <?php
- new
- -----
- !!php7,positions
- Syntax error, unexpected EOF from 2:4 to 2:4
- array(
- 0: Stmt_Expression[2:1 - 2:3](
- expr: Expr_New[2:1 - 2:3](
- class: Expr_Error[2:4 - 2:3](
- )
- args: array(
- )
- )
- )
- )
- -----
- <?php
- $foo instanceof
- -----
- !!php7
- Syntax error, unexpected EOF from 2:16 to 2:16
- array(
- 0: Stmt_Expression(
- expr: Expr_Instanceof(
- expr: Expr_Variable(
- name: foo
- )
- class: Expr_Error(
- )
- )
- )
- )
- -----
- <?php
- $
- -----
- !!php7
- Syntax error, unexpected EOF, expecting T_VARIABLE or '{' or '$' from 2:2 to 2:2
- array(
- 0: Stmt_Expression(
- expr: Expr_Variable(
- name: Expr_Error(
- )
- )
- )
- )
- -----
- <?php
- Foo::$
- -----
- !!php7
- Syntax error, unexpected EOF, expecting T_VARIABLE or '{' or '$' from 2:7 to 2:7
- array(
- 0: Stmt_Expression(
- expr: Expr_StaticPropertyFetch(
- class: Name(
- parts: array(
- 0: Foo
- )
- )
- name: Expr_Error(
- )
- )
- )
- )
- -----
- <?php
- Foo::
- -----
- !!php7
- Syntax error, unexpected EOF from 2:6 to 2:6
- array(
- 0: Stmt_Expression(
- expr: Expr_ClassConstFetch(
- class: Name(
- parts: array(
- 0: Foo
- )
- )
- name: Expr_Error(
- )
- )
- )
- )
- -----
- <?php
- namespace Foo
- use A
- use function a
- use A\{B}
- const A = 1
- break
- break 2
- continue
- continue 2
- return
- return 2
- echo $a
- unset($a)
- throw $x
- goto label
- -----
- !!php7
- Syntax error, unexpected T_USE, expecting ';' or '{' from 3:1 to 3:3
- Syntax error, unexpected T_USE, expecting ';' from 5:1 to 5:3
- Syntax error, unexpected T_CONST, expecting ';' from 6:1 to 6:5
- Syntax error, unexpected T_BREAK, expecting ';' from 7:1 to 7:5
- Syntax error, unexpected T_THROW, expecting ';' from 15:1 to 15:5
- array(
- 0: Stmt_Namespace(
- name: Name(
- parts: array(
- 0: Foo
- )
- )
- stmts: array(
- 0: Stmt_Use(
- type: TYPE_NORMAL (1)
- uses: array(
- 0: Stmt_UseUse(
- type: TYPE_UNKNOWN (0)
- name: Name(
- parts: array(
- 0: A
- )
- )
- alias: null
- )
- )
- )
- 1: Stmt_Use(
- type: TYPE_FUNCTION (2)
- uses: array(
- 0: Stmt_UseUse(
- type: TYPE_UNKNOWN (0)
- name: Name(
- parts: array(
- 0: a
- )
- )
- alias: null
- )
- )
- )
- 2: Stmt_GroupUse(
- type: TYPE_UNKNOWN (0)
- prefix: Name(
- parts: array(
- 0: A
- )
- )
- uses: array(
- 0: Stmt_UseUse(
- type: TYPE_NORMAL (1)
- name: Name(
- parts: array(
- 0: B
- )
- )
- alias: null
- )
- )
- )
- 3: Stmt_Const(
- consts: array(
- 0: Const(
- name: Identifier(
- name: A
- )
- value: Scalar_LNumber(
- value: 1
- )
- )
- )
- )
- 4: Stmt_Break(
- num: null
- )
- 5: Stmt_Break(
- num: Scalar_LNumber(
- value: 2
- )
- )
- 6: Stmt_Continue(
- num: null
- )
- 7: Stmt_Continue(
- num: Scalar_LNumber(
- value: 2
- )
- )
- 8: Stmt_Return(
- expr: null
- )
- 9: Stmt_Return(
- expr: Scalar_LNumber(
- value: 2
- )
- )
- 10: Stmt_Echo(
- exprs: array(
- 0: Expr_Variable(
- name: a
- )
- )
- )
- 11: Stmt_Unset(
- vars: array(
- 0: Expr_Variable(
- name: a
- )
- )
- )
- 12: Stmt_Throw(
- expr: Expr_Variable(
- name: x
- )
- )
- 13: Stmt_Goto(
- name: Identifier(
- name: label
- )
- )
- )
- )
- )
- -----
- <?php
- use A\{B, };
- use function A\{b, };
- use A, ;
- const A = 42, ;
- class X implements Y, {
- use A, ;
- use A, {
- A::b insteadof C, ;
- }
- const A = 42, ;
- public $x, ;
- }
- interface I extends J, {}
- unset($x, );
- isset($x, );
- declare(a=42, );
- global $a, ;
- static $a, ;
- echo $a, ;
- for ($a, ; $b, ; $c, );
- -----
- !!php7
- A trailing comma is not allowed here from 5:6 to 5:6
- A trailing comma is not allowed here from 6:13 to 6:13
- A trailing comma is not allowed here from 8:21 to 8:21
- A trailing comma is not allowed here from 9:10 to 9:10
- A trailing comma is not allowed here from 10:10 to 10:10
- A trailing comma is not allowed here from 11:25 to 11:25
- A trailing comma is not allowed here from 13:17 to 13:17
- A trailing comma is not allowed here from 14:14 to 14:14
- A trailing comma is not allowed here from 16:22 to 16:22
- A trailing comma is not allowed here from 21:13 to 21:13
- A trailing comma is not allowed here from 23:10 to 23:10
- A trailing comma is not allowed here from 24:10 to 24:10
- A trailing comma is not allowed here from 25:8 to 25:8
- A trailing comma is not allowed here from 27:8 to 27:8
- A trailing comma is not allowed here from 27:14 to 27:14
- A trailing comma is not allowed here from 27:20 to 27:20
- array(
- 0: Stmt_GroupUse(
- type: TYPE_UNKNOWN (0)
- prefix: Name(
- parts: array(
- 0: A
- )
- )
- uses: array(
- 0: Stmt_UseUse(
- type: TYPE_NORMAL (1)
- name: Name(
- parts: array(
- 0: B
- )
- )
- alias: null
- )
- )
- )
- 1: Stmt_GroupUse(
- type: TYPE_FUNCTION (2)
- prefix: Name(
- parts: array(
- 0: A
- )
- )
- uses: array(
- 0: Stmt_UseUse(
- type: TYPE_UNKNOWN (0)
- name: Name(
- parts: array(
- 0: b
- )
- )
- alias: null
- )
- )
- )
- 2: Stmt_Use(
- type: TYPE_NORMAL (1)
- uses: array(
- 0: Stmt_UseUse(
- type: TYPE_UNKNOWN (0)
- name: Name(
- parts: array(
- 0: A
- )
- )
- alias: null
- )
- )
- )
- 3: Stmt_Const(
- consts: array(
- 0: Const(
- name: Identifier(
- name: A
- )
- value: Scalar_LNumber(
- value: 42
- )
- )
- )
- )
- 4: Stmt_Class(
- attrGroups: array(
- )
- flags: 0
- name: Identifier(
- name: X
- )
- extends: null
- implements: array(
- 0: Name(
- parts: array(
- 0: Y
- )
- )
- )
- stmts: array(
- 0: Stmt_TraitUse(
- traits: array(
- 0: Name(
- parts: array(
- 0: A
- )
- )
- )
- adaptations: array(
- )
- )
- 1: Stmt_TraitUse(
- traits: array(
- 0: Name(
- parts: array(
- 0: A
- )
- )
- )
- adaptations: array(
- 0: Stmt_TraitUseAdaptation_Precedence(
- trait: Name(
- parts: array(
- 0: A
- )
- )
- method: Identifier(
- name: b
- )
- insteadof: array(
- 0: Name(
- parts: array(
- 0: C
- )
- )
- )
- )
- )
- )
- 2: Stmt_ClassConst(
- attrGroups: array(
- )
- flags: 0
- type: null
- consts: array(
- 0: Const(
- name: Identifier(
- name: A
- )
- value: Scalar_LNumber(
- value: 42
- )
- )
- )
- )
- 3: Stmt_Property(
- attrGroups: array(
- )
- flags: MODIFIER_PUBLIC (1)
- type: null
- props: array(
- 0: Stmt_PropertyProperty(
- name: VarLikeIdentifier(
- name: x
- )
- default: null
- )
- )
- )
- )
- )
- 5: Stmt_Interface(
- attrGroups: array(
- )
- name: Identifier(
- name: I
- )
- extends: array(
- 0: Name(
- parts: array(
- 0: J
- )
- )
- )
- stmts: array(
- )
- )
- 6: Stmt_Unset(
- vars: array(
- 0: Expr_Variable(
- name: x
- )
- )
- )
- 7: Stmt_Expression(
- expr: Expr_Isset(
- vars: array(
- 0: Expr_Variable(
- name: x
- )
- )
- )
- )
- 8: Stmt_Declare(
- declares: array(
- 0: Stmt_DeclareDeclare(
- key: Identifier(
- name: a
- )
- value: Scalar_LNumber(
- value: 42
- )
- )
- )
- stmts: null
- )
- 9: Stmt_Global(
- vars: array(
- 0: Expr_Variable(
- name: a
- )
- )
- )
- 10: Stmt_Static(
- vars: array(
- 0: Stmt_StaticVar(
- var: Expr_Variable(
- name: a
- )
- default: null
- )
- )
- )
- 11: Stmt_Echo(
- exprs: array(
- 0: Expr_Variable(
- name: a
- )
- )
- )
- 12: Stmt_For(
- init: array(
- 0: Expr_Variable(
- name: a
- )
- )
- cond: array(
- 0: Expr_Variable(
- name: b
- )
- )
- loop: array(
- 0: Expr_Variable(
- name: c
- )
- )
- stmts: array(
- )
- )
- )
- -----
- <?php
- foo(Bar::);
- -----
- !!php7,positions
- Syntax error, unexpected ')' from 3:10 to 3:10
- array(
- 0: Stmt_Expression[3:1 - 3:11](
- expr: Expr_FuncCall[3:1 - 3:10](
- name: Name[3:1 - 3:3](
- parts: array(
- 0: foo
- )
- )
- args: array(
- 0: Arg[3:5 - 3:9](
- name: null
- value: Expr_ClassConstFetch[3:5 - 3:9](
- class: Name[3:5 - 3:7](
- parts: array(
- 0: Bar
- )
- )
- name: Expr_Error[3:10 - 3:9](
- )
- )
- byRef: false
- unpack: false
- )
- )
- )
- )
- )
- -----
- <?php
- class Foo {
- public $bar1;
- publi $foo;
- public $bar;
- }
- -----
- !!php7
- Syntax error, unexpected T_STRING from 5:5 to 5:9
- array(
- 0: Stmt_Class(
- attrGroups: array(
- )
- flags: 0
- name: Identifier(
- name: Foo
- )
- extends: null
- implements: array(
- )
- stmts: array(
- 0: Stmt_Property(
- attrGroups: array(
- )
- flags: MODIFIER_PUBLIC (1)
- type: null
- props: array(
- 0: Stmt_PropertyProperty(
- name: VarLikeIdentifier(
- name: bar1
- )
- default: null
- )
- )
- )
- 1: Stmt_Property(
- attrGroups: array(
- )
- flags: MODIFIER_PUBLIC (1)
- type: null
- props: array(
- 0: Stmt_PropertyProperty(
- name: VarLikeIdentifier(
- name: bar
- )
- default: null
- )
- )
- )
- )
- )
- )
- -----
- <?php
- foreach ($foo) { $bar; }
- foreach ($foo as ) { $bar; }
- -----
- !!php7
- Syntax error, unexpected ')' from 3:14 to 3:14
- Syntax error, unexpected ')' from 4:18 to 4:18
- array(
- 0: Stmt_Foreach(
- expr: Expr_Variable(
- name: foo
- )
- keyVar: null
- byRef: false
- valueVar: Expr_Error(
- )
- stmts: array(
- 0: Stmt_Expression(
- expr: Expr_Variable(
- name: bar
- )
- )
- )
- )
- 1: Stmt_Foreach(
- expr: Expr_Variable(
- name: foo
- )
- keyVar: null
- byRef: false
- valueVar: Expr_Error(
- )
- stmts: array(
- 0: Stmt_Expression(
- expr: Expr_Variable(
- name: bar
- )
- )
- )
- )
- )
- -----
- <?php
- function foo(Type) {
- $foo;
- }
- function foo(Type1 $foo, Type2) {
- $bar;
- }
- function foo(...) {
- $baz;
- }
- function foo(&) {
- $qux;
- }
- function foo(Bar)
- class Bar {
- function foo(Baz)
- }
- function(Foo);
- -----
- !!php7
- Syntax error, unexpected ')', expecting T_VARIABLE from 3:18 to 3:18
- Syntax error, unexpected ')', expecting T_VARIABLE from 7:31 to 7:31
- Syntax error, unexpected ')', expecting T_VARIABLE from 11:17 to 11:17
- Syntax error, unexpected T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG, expecting T_VARIABLE from 15:14 to 15:14
- Syntax error, unexpected ')', expecting T_VARIABLE from 19:17 to 19:17
- Syntax error, unexpected ')', expecting T_VARIABLE from 22:21 to 22:21
- Syntax error, unexpected ')', expecting T_VARIABLE from 25:13 to 25:13
- array(
- 0: Stmt_Function(
- attrGroups: array(
- )
- byRef: false
- name: Identifier(
- name: foo
- )
- params: array(
- 0: Param(
- attrGroups: array(
- )
- flags: 0
- type: Name(
- parts: array(
- 0: Type
- )
- )
- byRef: false
- variadic: false
- var: Expr_Error(
- )
- default: null
- )
- )
- returnType: null
- stmts: array(
- 0: Stmt_Expression(
- expr: Expr_Variable(
- name: foo
- )
- )
- )
- )
- 1: Stmt_Function(
- attrGroups: array(
- )
- byRef: false
- name: Identifier(
- name: foo
- )
- params: array(
- 0: Param(
- attrGroups: array(
- )
- flags: 0
- type: Name(
- parts: array(
- 0: Type1
- )
- )
- byRef: false
- variadic: false
- var: Expr_Variable(
- name: foo
- )
- default: null
- )
- 1: Param(
- attrGroups: array(
- )
- flags: 0
- type: Name(
- parts: array(
- 0: Type2
- )
- )
- byRef: false
- variadic: false
- var: Expr_Error(
- )
- default: null
- )
- )
- returnType: null
- stmts: array(
- 0: Stmt_Expression(
- expr: Expr_Variable(
- name: bar
- )
- )
- )
- )
- 2: Stmt_Function(
- attrGroups: array(
- )
- byRef: false
- name: Identifier(
- name: foo
- )
- params: array(
- 0: Param(
- attrGroups: array(
- )
- flags: 0
- type: null
- byRef: false
- variadic: true
- var: Expr_Error(
- )
- default: null
- )
- )
- returnType: null
- stmts: array(
- 0: Stmt_Expression(
- expr: Expr_Variable(
- name: baz
- )
- )
- )
- )
- 3: Stmt_Function(
- attrGroups: array(
- )
- byRef: false
- name: Identifier(
- name: foo
- )
- params: array(
- 0: Param(
- attrGroups: array(
- )
- flags: 0
- type: null
- byRef: false
- variadic: false
- var: Expr_Error(
- )
- default: null
- )
- )
- returnType: null
- stmts: array(
- 0: Stmt_Expression(
- expr: Expr_Variable(
- name: qux
- )
- )
- )
- )
- 4: Stmt_Function(
- attrGroups: array(
- )
- byRef: false
- name: Identifier(
- name: foo
- )
- params: array(
- 0: Param(
- attrGroups: array(
- )
- flags: 0
- type: Name(
- parts: array(
- 0: Bar
- )
- )
- byRef: false
- variadic: false
- var: Expr_Error(
- )
- default: null
- )
- )
- returnType: null
- stmts: array(
- )
- )
- 5: Stmt_Class(
- attrGroups: array(
- )
- flags: 0
- name: Identifier(
- name: Bar
- )
- extends: null
- implements: array(
- )
- stmts: array(
- 0: Stmt_ClassMethod(
- attrGroups: array(
- )
- flags: 0
- byRef: false
- name: Identifier(
- name: foo
- )
- params: array(
- 0: Param(
- attrGroups: array(
- )
- flags: 0
- type: Name(
- parts: array(
- 0: Baz
- )
- )
- byRef: false
- variadic: false
- var: Expr_Error(
- )
- default: null
- )
- )
- returnType: null
- stmts: array(
- )
- )
- )
- )
- 6: Stmt_Expression(
- expr: Expr_Closure(
- attrGroups: array(
- )
- static: false
- byRef: false
- params: array(
- 0: Param(
- attrGroups: array(
- )
- flags: 0
- type: Name(
- parts: array(
- 0: Foo
- )
- )
- byRef: false
- variadic: false
- var: Expr_Error(
- )
- default: null
- )
- )
- uses: array(
- )
- returnType: null
- stmts: array(
- )
- )
- )
- )
- -----
- <?php
- $array = [
- $this->value $oopsAnotherValue->get()
- ];
- $array = [
- $value $oopsAnotherValue
- ];
- $array = [
- 'key' => $value $oopsAnotherValue
- ];
- -----
- !!php7
- Syntax error, unexpected T_VARIABLE, expecting ',' or ']' or ')' from 3:18 to 3:34
- Syntax error, unexpected T_VARIABLE, expecting ',' or ']' or ')' from 6:12 to 6:28
- Syntax error, unexpected T_VARIABLE, expecting ',' or ']' or ')' from 9:21 to 9:37
- array(
- 0: Stmt_Expression(
- expr: Expr_Assign(
- var: Expr_Variable(
- name: array
- )
- expr: Expr_Array(
- items: array(
- 0: Expr_ArrayItem(
- key: null
- value: Expr_PropertyFetch(
- var: Expr_Variable(
- name: this
- )
- name: Identifier(
- name: value
- )
- )
- byRef: false
- unpack: false
- )
- 1: Expr_ArrayItem(
- key: null
- value: Expr_MethodCall(
- var: Expr_Variable(
- name: oopsAnotherValue
- )
- name: Identifier(
- name: get
- )
- args: array(
- )
- )
- byRef: false
- unpack: false
- )
- )
- )
- )
- )
- 1: Stmt_Expression(
- expr: Expr_Assign(
- var: Expr_Variable(
- name: array
- )
- expr: Expr_Array(
- items: array(
- 0: Expr_ArrayItem(
- key: null
- value: Expr_Variable(
- name: value
- )
- byRef: false
- unpack: false
- )
- 1: Expr_ArrayItem(
- key: null
- value: Expr_Variable(
- name: oopsAnotherValue
- )
- byRef: false
- unpack: false
- )
- )
- )
- )
- )
- 2: Stmt_Expression(
- expr: Expr_Assign(
- var: Expr_Variable(
- name: array
- )
- expr: Expr_Array(
- items: array(
- 0: Expr_ArrayItem(
- key: Scalar_String(
- value: key
- )
- value: Expr_Variable(
- name: value
- )
- byRef: false
- unpack: false
- )
- 1: Expr_ArrayItem(
- key: null
- value: Expr_Variable(
- name: oopsAnotherValue
- )
- byRef: false
- unpack: false
- )
- )
- )
- )
- )
- )
- -----
- <?php
- function foo() :
- {
- return $a;
- }
- -----
- !!php7
- Syntax error, unexpected '{' from 3:1 to 3:1
- array(
- 0: Stmt_Function(
- attrGroups: array(
- )
- byRef: false
- name: Identifier(
- name: foo
- )
- params: array(
- )
- returnType: null
- stmts: array(
- 0: Stmt_Return(
- expr: Expr_Variable(
- name: a
- )
- )
- )
- )
- )
- -----
- <?php
- $a = ["a "thing"];
- -----
- !!php7
- Syntax error, unexpected T_STRING, expecting ',' or ']' or ')' from 2:11 to 2:15
- -----
- <?php
- class A {
- /** @var ?string */
- private $foo
- public function __construct(string $s) {
- $this->foo = $s;
- }
- }
- class B {
- const X = 1
- }
- -----
- !!php7
- Syntax error, unexpected T_PUBLIC, expecting ';' from 6:5 to 6:10
- Syntax error, unexpected '}', expecting ';' from 12:1 to 12:1
- array(
- 0: Stmt_Class(
- attrGroups: array(
- )
- flags: 0
- name: Identifier(
- name: A
- )
- extends: null
- implements: array(
- )
- stmts: array(
- 0: Stmt_Property(
- attrGroups: array(
- )
- flags: MODIFIER_PRIVATE (4)
- type: null
- props: array(
- 0: Stmt_PropertyProperty(
- name: VarLikeIdentifier(
- name: foo
- )
- default: null
- )
- )
- comments: array(
- 0: /** @var ?string */
- )
- )
- 1: Stmt_ClassMethod(
- attrGroups: array(
- )
- flags: MODIFIER_PUBLIC (1)
- byRef: false
- name: Identifier(
- name: __construct
- )
- params: array(
- 0: Param(
- attrGroups: array(
- )
- flags: 0
- type: Identifier(
- name: string
- )
- byRef: false
- variadic: false
- var: Expr_Variable(
- name: s
- )
- default: null
- )
- )
- returnType: null
- stmts: array(
- 0: Stmt_Expression(
- expr: Expr_Assign(
- var: Expr_PropertyFetch(
- var: Expr_Variable(
- name: this
- )
- name: Identifier(
- name: foo
- )
- )
- expr: Expr_Variable(
- name: s
- )
- )
- )
- )
- )
- )
- )
- 1: Stmt_Class(
- attrGroups: array(
- )
- flags: 0
- name: Identifier(
- name: B
- )
- extends: null
- implements: array(
- )
- stmts: array(
- 0: Stmt_ClassConst(
- attrGroups: array(
- )
- flags: 0
- type: null
- consts: array(
- 0: Const(
- name: Identifier(
- name: X
- )
- value: Scalar_LNumber(
- value: 1
- )
- )
- )
- )
- )
- )
- )
|