mirror of
https://github.com/danog/psalm.git
synced 2024-11-27 04:45:20 +01:00
Make sure to record class references even when we don’t know whether the class exists
This commit is contained in:
parent
81534bbe18
commit
003212fa15
@ -308,28 +308,6 @@ class ClassLikes
|
|||||||
$fq_class_name_lc = strtolower($this->classlike_aliases[$fq_class_name_lc]);
|
$fq_class_name_lc = strtolower($this->classlike_aliases[$fq_class_name_lc]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isset($this->existing_classes_lc[$fq_class_name_lc])
|
|
||||||
|| !$this->existing_classes_lc[$fq_class_name_lc]
|
|
||||||
|| !$this->classlike_storage_provider->has($fq_class_name_lc)
|
|
||||||
) {
|
|
||||||
if ((
|
|
||||||
!isset($this->existing_classes_lc[$fq_class_name_lc])
|
|
||||||
|| $this->existing_classes_lc[$fq_class_name_lc] === true
|
|
||||||
)
|
|
||||||
&& !$this->classlike_storage_provider->has($fq_class_name_lc)
|
|
||||||
) {
|
|
||||||
if (!isset($this->existing_classes_lc[$fq_class_name_lc])) {
|
|
||||||
$this->existing_classes_lc[$fq_class_name_lc] = false;
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $this->existing_classes_lc[$fq_class_name_lc];
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($code_location) {
|
if ($code_location) {
|
||||||
if ($calling_method_id) {
|
if ($calling_method_id) {
|
||||||
$this->file_reference_provider->addMethodReferenceToClass(
|
$this->file_reference_provider->addMethodReferenceToClass(
|
||||||
@ -357,6 +335,28 @@ class ClassLikes
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!isset($this->existing_classes_lc[$fq_class_name_lc])
|
||||||
|
|| !$this->existing_classes_lc[$fq_class_name_lc]
|
||||||
|
|| !$this->classlike_storage_provider->has($fq_class_name_lc)
|
||||||
|
) {
|
||||||
|
if ((
|
||||||
|
!isset($this->existing_classes_lc[$fq_class_name_lc])
|
||||||
|
|| $this->existing_classes_lc[$fq_class_name_lc] === true
|
||||||
|
)
|
||||||
|
&& !$this->classlike_storage_provider->has($fq_class_name_lc)
|
||||||
|
) {
|
||||||
|
if (!isset($this->existing_classes_lc[$fq_class_name_lc])) {
|
||||||
|
$this->existing_classes_lc[$fq_class_name_lc] = false;
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this->existing_classes_lc[$fq_class_name_lc];
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
if ($this->collect_locations && $code_location) {
|
if ($this->collect_locations && $code_location) {
|
||||||
$this->file_reference_provider->addCallingLocationForClass(
|
$this->file_reference_provider->addCallingLocationForClass(
|
||||||
$code_location,
|
$code_location,
|
||||||
|
Loading…
Reference in New Issue
Block a user