Skip to content

Doxygen omits closing '>' in method returning std::function< void(A *) > #10544

@hennigfr

Description

@hennigfr

Doxygen version: 1.10.0

When generating documentation for a higher-order function that returns an std::function with a pointer argument (e.g. std::function< void(A *) >), the closing > is omitted in both HTML and XML output. Instead, a spurious ) is produced.
Turning the A * into A however makes the issue disappear.

Minimal Example

Source:
demo.zip

#include <functional>

/**
 * Some struct
 */
struct A {

/**
 * Some higher-level function.
 */
std::function< void(A *) > func();

};

yields the following XML output:

<type>
std::function< void(
<ref refid="structA" kindref="compound">A</ref>
*)
</type>
<definition>std::function< void(A *) A::func) ()</definition>
<argsstring>)()</argsstring>

and HTML:

output

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions