rebase to trunk
Oct 25 2017
Oct 1 2017
Can you get more information on what GCC actually implemented and why? It's not clear to me that ignoring the namespaces is the most-useful way to do this. I don't want to emulate GCC bugs, but maybe there's a good reason why their implementation works this way.
Some cursory testing with g++ shows that only the 'test5' of 'test5(float, int, int*)' is matched. 'test5(' or 'test5 (' is not matched. It seems weird that arguments are not matched.
g++ man page shows"The function name to be matched is its user-visible name, such as "vector<int> blah(const vector<int> &)", not the internal mangled name"
but it doesn't seem to be including parameters.
Interesting. Can you tell what GCC is doing w.r.t. namespace names, class names, etc. and template parameters?
Also uncovered a bug where sub argument list containing comma needs to be surrounded by single quote, but clang seems to ignores single quote.
I'll try to dig around ArgList implementation to see if it can return argument surrounded by single-quote as a whole.
Sep 30 2017
- add more CPP tests: func overload, template special
- add comment to CPP test to explain usage
- - Address formating feedback, remove redundant inline
Addressing Hal's feedback
Sep 8 2017
renamed and moved Cache to SourceLocToFileNameMap in CodeGenModule
Forgot to hang Cache to CodeGenModule, will do that shortly
addressed code review. made doc consistent with functionality.
ok I already see a few issues -
doc - add '='