mirror of
https://github.com/php/php-src.git
synced 2024-09-29 22:06:09 +00:00
a75c195000
Squashed commit of the following: commitf11ca0e7a5
Author: Dmitry Stogov <dmitry@zend.com> Date: Tue Dec 8 12:38:42 2015 +0300 Fixed test expectation commit211f873f54
Author: Dmitry Stogov <dmitry@zend.com> Date: Tue Dec 8 12:28:38 2015 +0300 Embed zend_class_constant.flags into zend_class_constants.value.u2.access_flags commit51deab84b2
Author: Dmitry Stogov <dmitry@zend.com> Date: Mon Dec 7 11:18:55 2015 +0300 Fixed issues found by Nikita commit544dbd5b47
Author: Dmitry Stogov <dmitry@zend.com> Date: Sat Dec 5 02:41:05 2015 +0300 Refactored immplementation of https://wiki.php.net/rfc/class_const_visibility @reeze created an RFC here and I emailed internals here and didn't get any responses positive/negative.
31 lines
667 B
PHP
31 lines
667 B
PHP
--TEST--
|
|
Class protected constant visibility
|
|
--FILE--
|
|
<?php
|
|
class A {
|
|
protected const protectedConst = 'protectedConst';
|
|
static function staticConstDump() {
|
|
var_dump(self::protectedConst);
|
|
}
|
|
function constDump() {
|
|
var_dump(self::protectedConst);
|
|
}
|
|
}
|
|
|
|
A::staticConstDump();
|
|
(new A())->constDump();
|
|
constant('A::protectedConst');
|
|
|
|
?>
|
|
--EXPECTF--
|
|
string(14) "protectedConst"
|
|
string(14) "protectedConst"
|
|
|
|
Warning: constant(): Couldn't find constant A::protectedConst in %s on line 14
|
|
|
|
Fatal error: Uncaught Error: Cannot access protected const A::protectedConst in %s:14
|
|
Stack trace:
|
|
#0 %s(14): constant('A::protectedCon...')
|
|
#1 {main}
|
|
thrown in %s on line 14
|