diff --git a/bin/functionMetadata_original.php b/bin/functionMetadata_original.php index 3627f1b0ff..18922b88fb 100644 --- a/bin/functionMetadata_original.php +++ b/bin/functionMetadata_original.php @@ -117,6 +117,7 @@ 'str_decrement' => ['hasSideEffects' => false], 'str_increment' => ['hasSideEffects' => false], 'symlink' => ['hasSideEffects' => true], + 'time' => ['hasSideEffects' => true], 'tempnam' => ['hasSideEffects' => true], 'tmpfile' => ['hasSideEffects' => true], 'touch' => ['hasSideEffects' => true], diff --git a/resources/functionMetadata.php b/resources/functionMetadata.php index 79bf2a81c8..b1dea4053b 100644 --- a/resources/functionMetadata.php +++ b/resources/functionMetadata.php @@ -1737,6 +1737,7 @@ 'tan' => ['hasSideEffects' => false], 'tanh' => ['hasSideEffects' => false], 'tempnam' => ['hasSideEffects' => true], + 'time' => ['hasSideEffects' => true], 'timezone_abbreviations_list' => ['hasSideEffects' => false], 'timezone_identifiers_list' => ['hasSideEffects' => true], 'timezone_location_get' => ['hasSideEffects' => true], diff --git a/tests/PHPStan/Rules/Comparison/NumberComparisonOperatorsConstantConditionRuleTest.php b/tests/PHPStan/Rules/Comparison/NumberComparisonOperatorsConstantConditionRuleTest.php index 90bd8673de..4c18f9e01e 100644 --- a/tests/PHPStan/Rules/Comparison/NumberComparisonOperatorsConstantConditionRuleTest.php +++ b/tests/PHPStan/Rules/Comparison/NumberComparisonOperatorsConstantConditionRuleTest.php @@ -269,4 +269,9 @@ public function testBug3387(): void $this->analyse([__DIR__ . '/data/bug-3387.php'], []); } + public function testBug13874(): void + { + $this->analyse([__DIR__ . '/data/bug-13874.php'], []); + } + } diff --git a/tests/PHPStan/Rules/Comparison/data/bug-13874.php b/tests/PHPStan/Rules/Comparison/data/bug-13874.php new file mode 100644 index 0000000000..fd3c56803b --- /dev/null +++ b/tests/PHPStan/Rules/Comparison/data/bug-13874.php @@ -0,0 +1,11 @@ + 1764702390) { return; } + sleep(3); + if (time() > 1764702390) { return; } + } +}