constants_visibility_004.phpt   [plain text]


--TEST--
Only public and protected class constants should be inherited
--FILE--
<?php
class A {
	public const X = 1;
	protected const Y = 2;
	private const Z = 3;
}
class B extends A {
	static public function checkConstants() {
		var_dump(self::X);
		var_dump(self::Y);
		var_dump(self::Z);
	}
}

B::checkConstants();
?>
--EXPECTF--
int(1)
int(2)

Fatal error: Uncaught Error: Undefined class constant 'Z' in %s:11
Stack trace:
#0 %s(15): B::checkConstants()
#1 {main}
  thrown in %s on line 11