summaryrefslogtreecommitdiff
path: root/Zend/zend_compile.c
diff options
context:
space:
mode:
authorNikita Popov <nikic@php.net>2016-03-26 22:43:58 +0100
committerNikita Popov <nikic@php.net>2016-03-26 22:45:23 +0100
commitb867bd1c8d00701c0952fca4ea5ef9af39f9bb07 (patch)
treec612b4010f40d610884d34dec858adfc42cc51af /Zend/zend_compile.c
parent556827dec93d9b9247999ddfa5da70e9593c5a74 (diff)
downloadphp-git-b867bd1c8d00701c0952fca4ea5ef9af39f9bb07.tar.gz
Fix FETCH_CLASS_SELF comparisons
Turns out those don't form a bitfield.
Diffstat (limited to 'Zend/zend_compile.c')
-rw-r--r--Zend/zend_compile.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c
index 521cd08f36..64e0e0d1e3 100644
--- a/Zend/zend_compile.c
+++ b/Zend/zend_compile.c
@@ -3738,7 +3738,8 @@ void zend_compile_static_call(znode *result, zend_ast *ast, uint32_t type) /* {{
&& zend_string_equals_ci(CG(active_class_entry)->name, lcname)) {
ce = CG(active_class_entry);
}
- } else if (opline->op1_type == IS_UNUSED && (opline->op1.num & ZEND_FETCH_CLASS_SELF)
+ } else if (opline->op1_type == IS_UNUSED
+ && (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF
&& zend_is_scope_known()) {
ce = CG(active_class_entry);
}