Skip to content

FPA: no namespace when printing instantiation-dependent parameter variables #50

@hartogss

Description

@hartogss

PrintingPolicy.PrintCanonicalTypes causes instantiation-dependent types' to be printed not qualified. Example:

void func(std::vector<int> v);

template<typename T>
void func(std::vector<T> v);

The reported types of the 2 v's are
std::vector<int> and
vector<type-parameter-0-0> respectively.
This has as effect that we cannot compute any statistics about types of parameters that are instantiation-dependent used in function template decls, because they are indistinguishable due to missing namespace qualifications.
This is not a really big problem, because we can't do that always anyway, e.g. there will be many function template parameter variable of type type-parameter-0-0, which aren't indicative either.
I suspect this to be a clang bug.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions