File tree 3 files changed +22
-2
lines changed
3 files changed +22
-2
lines changed Original file line number Diff line number Diff line change 2
2
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3
3
?? ??? ????, PHP 8.1.2
4
4
5
+ - Reflection:
6
+ . Fixed bug #81681 (ReflectionEnum throwing exceptions). (cmb)
5
7
6
8
02 Dec 2021, PHP 8.1.1
7
9
Original file line number Diff line number Diff line change @@ -4751,7 +4751,7 @@ ZEND_METHOD(ReflectionClass, isInstantiable)
4751
4751
RETURN_THROWS ();
4752
4752
}
4753
4753
GET_REFLECTION_OBJECT_PTR (ce );
4754
- if (ce -> ce_flags & (ZEND_ACC_INTERFACE | ZEND_ACC_TRAIT | ZEND_ACC_EXPLICIT_ABSTRACT_CLASS | ZEND_ACC_IMPLICIT_ABSTRACT_CLASS )) {
4754
+ if (ce -> ce_flags & (ZEND_ACC_INTERFACE | ZEND_ACC_TRAIT | ZEND_ACC_EXPLICIT_ABSTRACT_CLASS | ZEND_ACC_IMPLICIT_ABSTRACT_CLASS | ZEND_ACC_ENUM )) {
4755
4755
RETURN_FALSE ;
4756
4756
}
4757
4757
@@ -4776,7 +4776,7 @@ ZEND_METHOD(ReflectionClass, isCloneable)
4776
4776
RETURN_THROWS ();
4777
4777
}
4778
4778
GET_REFLECTION_OBJECT_PTR (ce );
4779
- if (ce -> ce_flags & (ZEND_ACC_INTERFACE | ZEND_ACC_TRAIT | ZEND_ACC_EXPLICIT_ABSTRACT_CLASS | ZEND_ACC_IMPLICIT_ABSTRACT_CLASS )) {
4779
+ if (ce -> ce_flags & (ZEND_ACC_INTERFACE | ZEND_ACC_TRAIT | ZEND_ACC_EXPLICIT_ABSTRACT_CLASS | ZEND_ACC_IMPLICIT_ABSTRACT_CLASS | ZEND_ACC_ENUM )) {
4780
4780
RETURN_FALSE ;
4781
4781
}
4782
4782
if (!Z_ISUNDEF (intern -> obj )) {
Original file line number Diff line number Diff line change
1
+ --TEST--
2
+ Bug #81681 (ReflectionEnum throwing exceptions)
3
+ --FILE--
4
+ <?php
5
+ enum Status
6
+ {
7
+ case Draft;
8
+ case Published;
9
+ case Archived;
10
+ }
11
+
12
+ $ reflectionEnum = new \ReflectionEnum ('\Status ' );
13
+ var_dump ($ reflectionEnum ->isInstantiable ());
14
+ var_dump ($ reflectionEnum ->isCloneable ());
15
+ ?>
16
+ --EXPECT--
17
+ bool(false)
18
+ bool(false)
You can’t perform that action at this time.
0 commit comments