View Issue Details

IDProjectCategoryView StatusLast Update
0002354XdebugStacktracespublic2025-06-12 11:46
Reporterderick Assigned Toderick  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Product Version3.4.3 
Target Version3.4devFixed in Version3.4.4 
Summary0002354: The __invoke frame in call stacks don't have the argument name in the trace
Description

Run:

<?php
class RedisProxy {
    function __construct(public Closure $c)
    {
    }

    function __call($method, $args)
    {
        $this->c->__invoke($args);
    }
}

$c = function(array $args)
{
    throw new Exception();
};

$rp = new RedisProxy($c);
$rp->isConnected();

And the stack trace contains:

    0.0003     386088   1. {main}() /tmp/2352/test2.php:0
    0.0004     386632   2. RedisProxy->__call($method = 'isConnected', $args = []) /tmp/2352/test2.php:19
    0.0004     386952   3. Closure->__invoke($ = []) /tmp/2352/test2.php:9
    0.0004     387016   4. {closure:/tmp/2352/test2.php:13-16}($args = []) /tmp/2352/test2.php:9

The argument name for invoke is missing.

TagsNo tags attached.
Operating System
PHP Version8.3.5-8.3.9

Activities

Issue History

Date Modified Username Field Change
2025-06-11 17:37 derick New Issue
2025-06-11 18:08 derick Assigned To => derick
2025-06-11 18:08 derick Status new => assigned
2025-06-11 18:08 derick Note Added: 0007315
2025-06-12 00:33 derick Status assigned => closed
2025-06-12 00:33 derick Resolution open => fixed
2025-06-12 00:33 derick Fixed in Version => 3.4dev
2025-06-12 11:46 derick Fixed in Version 3.4dev => 3.4.4