summaryrefslogtreecommitdiff
path: root/Zend/zend_compile.c
diff options
context:
space:
mode:
authorZeev Suraski <zeev@php.net>2003-03-18 16:30:23 +0000
committerZeev Suraski <zeev@php.net>2003-03-18 16:30:23 +0000
commit40326f6adf7110bd6676bf7445cff7483cf173fb (patch)
treed4329286d2fd1817ff7892bb263713ced31a64b7 /Zend/zend_compile.c
parentb21fdb762a7d98241b8070e3b22a7310cfb014da (diff)
downloadphp-git-40326f6adf7110bd6676bf7445cff7483cf173fb.tar.gz
- Fix situation where a derived class declares a public (or implicit public)
with the same name as a private in the parent - Optimize 'static binding' of private properties a bit
Diffstat (limited to 'Zend/zend_compile.c')
-rw-r--r--Zend/zend_compile.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c
index 749d8f4935..a86a565ed0 100644
--- a/Zend/zend_compile.c
+++ b/Zend/zend_compile.c
@@ -1682,6 +1682,9 @@ static zend_bool do_inherit_property_access_check(HashTable *target_ht, zend_pro
zend_class_entry *parent_ce = ce->parent;
if (parent_info->flags & ZEND_ACC_PRIVATE) {
+ if (zend_hash_quick_find(&ce->properties_info, hash_key->arKey, hash_key->nKeyLength, hash_key->h, (void **) &child_info)==SUCCESS) {
+ child_info->flags |= ZEND_ACC_CHANGED;
+ }
return 0; /* don't copy access information to child */
}