Skip to content

Overloaded functions are merged into their un-mangled name, causing loops in "Averages|ChildCalls" when one overload calls another #123

@BrianWeed

Description

@BrianWeed

When a function is overloaded, and calls another version of itself, like this:

void foo(int, bool)
{
// ...
}

void foo(int n)
{
foo(n, true);
}

If 'foo' is selected in the left pane, and the right pane is Averages tab.
In "Child Calls", double clicking on the child "foo" will NOT jump to foo(int, bool). Presumably it's jumping to the same outer 'foo'.

Seems like this is because overloaded functions are merged into their "pretty" name, so there's no distinction between the overloads.

This make navigating in the Child Calls pane impossible when the overloads call each other.

I'm pretty sure recursive functions have the same problem.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions