Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit e279010

Browse filesBrowse files
Merge branch '4.4' into 5.3
* 4.4: [VarDumper] Fix handling of "new" in initializers on PHP 8.1
2 parents fb8d537 + 57f5df5 commit e279010
Copy full SHA for e279010

File tree

Expand file treeCollapse file tree

2 files changed

+23
-0
lines changed
Filter options
Expand file treeCollapse file tree

2 files changed

+23
-0
lines changed

‎src/Symfony/Component/VarDumper/Caster/ReflectionCaster.php

Copy file name to clipboardExpand all lines: src/Symfony/Component/VarDumper/Caster/ReflectionCaster.php
+2Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -384,6 +384,8 @@ public static function getSignature(array $a)
384384
$signature .= 10 > \strlen($v) && !str_contains($v, '\\') ? "'{$v}'" : "'…".\strlen($v)."'";
385385
} elseif (\is_bool($v)) {
386386
$signature .= $v ? 'true' : 'false';
387+
} elseif (\is_object($v)) {
388+
$signature .= 'new '.substr(strrchr('\\'.get_debug_type($v), '\\'), 1);
387389
} else {
388390
$signature .= $v;
389391
}

‎src/Symfony/Component/VarDumper/Tests/Caster/ReflectionCasterTest.php

Copy file name to clipboardExpand all lines: src/Symfony/Component/VarDumper/Tests/Caster/ReflectionCasterTest.php
+21Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -602,6 +602,27 @@ public function testGenerator()
602602
$this->assertDumpMatchesFormat($expectedDump, $generator);
603603
}
604604

605+
/**
606+
* @requires PHP 8.1
607+
*/
608+
public function testNewInInitializer()
609+
{
610+
$f = eval('return function ($a = new stdClass()) {};');
611+
$line = __LINE__ - 1;
612+
613+
$this->assertDumpMatchesFormat(
614+
<<<EOTXT
615+
Closure(\$a = new stdClass) {
616+
class: "Symfony\Component\VarDumper\Tests\Caster\ReflectionCasterTest"
617+
this: Symfony\Component\VarDumper\Tests\Caster\ReflectionCasterTest { …}
618+
file: "%sReflectionCasterTest.php($line) : eval()'d code"
619+
line: "1 to 1"
620+
}
621+
EOTXT
622+
, $f
623+
);
624+
}
625+
605626
/**
606627
* @requires PHP 8
607628
*/

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.