File tree 2 files changed +8
-3
lines changed
2 files changed +8
-3
lines changed Original file line number Diff line number Diff line change 100
100
<code ><![CDATA[ reflectClass]]> </code >
101
101
<code ><![CDATA[ reflectClass]]> </code >
102
102
<code ><![CDATA[ reflectClass]]> </code >
103
+ <code ><![CDATA[ reflectClass]]> </code >
103
104
<code ><![CDATA[ toLowerString]]> </code >
104
105
</ImpureMethodCall >
105
106
</file >
Original file line number Diff line number Diff line change @@ -1086,12 +1086,16 @@ public function getEndColumn(): int
1086
1086
*/
1087
1087
public function getParentClass (): ReflectionClass |null
1088
1088
{
1089
- $ parentClass = $ this ->getParentClasses ()[0 ] ?? null ;
1090
-
1091
- if ($ parentClass === null ) {
1089
+ $ parentClassName = $ this ->getParentClassName ();
1090
+ if ($ parentClassName === null ) {
1092
1091
return null ;
1093
1092
}
1094
1093
1094
+ if ($ this ->name === $ parentClassName ) {
1095
+ throw CircularReference::fromClassName ($ parentClassName );
1096
+ }
1097
+
1098
+ $ parentClass = $ this ->reflector ->reflectClass ($ parentClassName );
1095
1099
if ($ parentClass ->isInterface () || $ parentClass ->isTrait ()) {
1096
1100
throw NotAClassReflection::fromReflectionClass ($ parentClass );
1097
1101
}
You can’t perform that action at this time.
0 commit comments