php-parser/test/code/parser/stmt/class/modifier.test

55 lines
1.3 KiB
Plaintext
Raw Normal View History

Invalid modifier combination
-----
<?php class A { public public $a; }
-----
Multiple access type modifiers are not allowed on line 1
-----
<?php class A { public protected $a; }
-----
Multiple access type modifiers are not allowed on line 1
-----
<?php class A { abstract abstract a(); }
-----
Multiple abstract modifiers are not allowed on line 1
-----
<?php class A { static static $a; }
-----
Multiple static modifiers are not allowed on line 1
-----
<?php class A { final final a() {} }
-----
Multiple final modifiers are not allowed on line 1
-----
<?php class A { abstract final a(); }
-----
Cannot use the final modifier on an abstract class member on line 1
2012-03-10 23:25:26 +01:00
-----
<?php abstract final class A { }
// Type in the partial parse could conceivably be any of 0, 16 or 32
2012-03-10 23:25:26 +01:00
-----
2015-04-18 21:20:45 +02:00
Syntax error, unexpected T_FINAL, expecting T_CLASS from 1:16 to 1:20
array(
0: Stmt_Class(
2016-07-25 13:53:49 +02:00
flags: MODIFIER_FINAL (32)
name: A
extends: null
implements: array(
)
stmts: array(
)
)
1: Stmt_Nop(
comments: array(
0: // Type in the partial parse could conceivably be any of 0, 16 or 32
)
)
)
2014-11-13 20:25:52 +01:00
-----
<?php class A { abstract $a; }
-----
Properties cannot be declared abstract on line 1
-----
<?php class A { final $a; }
-----
Properties cannot be declared final on line 1