-
Notifications
You must be signed in to change notification settings - Fork 168
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for member specialization roadmap/workarounds #127
Comments
Basically consider these 2 files: namespace ns {
template <class T> struct Temp1 {
template <class T> struct Temp2 {};
};
} // namespace ns File2: namespace ns {
using DeepNested1 = Temp1<int>::Temp2<int>;
using DeepNested2 = ns::Temp1<int>::Temp2<int>;
} // namespace ns I can't figure out how to resolve All I need is to know which template entity @foonathan Any thoughts? |
I don't think libclang provides APIs to handle it. This might be possible to fix with #120. |
@foonathan Why not using |
It's not easy to mix the two modes, I might as well just add another "backend." Yes, progress is slow, PRs are welcome. ;) |
Yes of course PR are awesome! |
Yes, this is one of the reason I'm not using libtooling: it's not really designed for projects that live outside the clang source tree. The API is also unstable.
I'm using simdjson, which parses it on demand during navigation. It's a bit finicky at times, but otherwise works well. |
This is already mentioned:
Support for member specialization: members of a template can be specialized separately, this is not supported.
But is it a limitation from
clang
ormissing
for the time being incppast
?Consider:
Even thought
cpp_type_alias::underlying_type()::primary_template()::no_overloaded()
is1
.Any ideas if this would be implemented in the future?
Are there any workarounds?
The text was updated successfully, but these errors were encountered: