The weird <##> tokens mean that currently method parameters are specified as completion placeholders. This means that a user might have to expand them manually (e.g. when their IDE treats those placeholders differently from the rest of the completion result).
I would like to change these completion results. Instead of having placeholders for parameters Clang should just specify the parameters directly. The example above would then produce the following completion results:
COMPLETION: foo : [#void#]foo(int x, int y)[# const#]
COMPLETION: foo : [#void#]foo(Const &x)[# const#]
Do you have any comments/suggestions/objections for this proposal?
PS: Please note that this change is not going to affect completions for the method calls, but just for the out-of-line method definitions.