Skip to content

Commit 017ee02

Browse files
committed
add support for lexical scope
1 parent cf60230 commit 017ee02

File tree

2 files changed

+2
-0
lines changed

2 files changed

+2
-0
lines changed

Zend/zend.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@ struct _zend_class_entry {
165165
HashTable constants_table;
166166

167167
zend_class_entry *required_scope;
168+
zend_class_entry *lexical_scope;
168169
char required_scope_absolute;
169170

170171
ZEND_MAP_PTR_DEF(zend_class_mutable_data*, mutable_data);

Zend/zend_compile.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9215,6 +9215,7 @@ static void zend_compile_class_decl(znode *result, zend_ast *ast, bool toplevel)
92159215
// if a class is private or protected, we need to require the correct scope
92169216
ce->required_scope = propFlags & (ZEND_ACC_PRIVATE|ZEND_ACC_PROTECTED) ? CG(active_class_entry) : NULL;
92179217
ce->required_scope_absolute = propFlags & ZEND_ACC_PRIVATE ? true : false;
9218+
ce->lexical_scope = CG(active_class_entry);
92189219

92199220
// ensure the class is treated as a top-level class and not an anon class
92209221
toplevel = true;

0 commit comments

Comments
 (0)