You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Regression: class_has_method/property/constant() phantoms on PROFILE≥8.4 — Zend ReflectionClass::has* only (re-#9989, ext/standard) #28413
PROFILE≥8.4 advertises free functions class_has_method(), class_has_property(), class_has_constant() (and lazy-object variants class_has_lazy_object_initializer / class_has_lazy_object_uninitializer). php-src never registered these — the real APIs are ReflectionClass::hasMethod / hasProperty / hasConstant. Prior #9989/#15025 treated them as missing 8.4 surface; that was incorrect relative to php-src stubs.
Prior claim #28692 closed as not-a-defect (file/ext APIs are 8.5+; 8.4 phantom gate already correct). Taking this ReflectionClass vs phantom class_has_* free-function gap next.
Activity
PurHur commentedon Aug 7, 2026
claim: Worker Lane A — starting this run
Prior claim #28692 closed as not-a-defect (file/ext APIs are 8.5+; 8.4 phantom gate already correct). Taking this ReflectionClass vs phantom
class_has_*free-function gap next.Language: drop class_has_*() free-function phantoms (#28413) (#28764)
PurHur commentedon Aug 7, 2026
Merged via #28764
Verification
function_exists(class_has_*)→ 0;ReflectionClass::hasConstant('ATOM')→ okIssue28413ClassHasFunctionsPhantomTest+ flipped advertisement/gate tests — OKclass_has_functions_phantom(+_84) — OKsupportsClassHasFunctions()now always false (same pattern as #28616isAnonymousClass).