3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php interface I { const C = 12; public static function test(array $a); } abstract class A { const C = 14; protected static $var = 17; } class B extends A implements I { const C = 15; public static function test(array $a){ return self::C; } } var_dump(B::test(array()), A::C, B::C);
based on OTFor
Output for 5.2.12 - 5.2.17, 5.3.2 - 5.6.28, 7.0.0 - 7.1.0
Fatal error: Cannot inherit previously-inherited or override constant C from interface I in /in/umDOj on line 12
Process exited with code 255.
Output for hhvm-3.10.0 - 3.12.0
Fatal error: B cannot inherit the constant C from I, because it was previously inherited from A in /in/umDOj on line 12
Process exited with code 255.
Output for 5.1.0 - 5.2.11, 5.3.0 - 5.3.1
Fatal error: Cannot inherit previously-inherited constant C from interface I in /in/umDOj on line 12
Process exited with code 255.
Output for 5.0.0 - 5.0.5
Parse error: parse error, unexpected T_ARRAY, expecting '&' or T_VARIABLE in /in/umDOj on line 4
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING in /in/umDOj on line 2
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1
Parse error: parse error, unexpected T_STRING in /in/umDOj on line 2
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/umDOj on line 2
Process exited with code 255.