In tagmanager/ctags/c.c:

>  	for (i = 0; i < st->tokenIndex; i++)
>  	{
> +		const tokenInfo *const t = st->token[i];
> +
> +		/* stop if we find the token used to generate the tag name, or
> +		 * a name token in the middle yet not preceded by a scope separator */
> +		if ((t == nameToken ||
> +		     (t->type == nameToken->type &&
> +		      t->keyword == nameToken->keyword &&
> +		      t->lineNumber == nameToken->lineNumber &&
> +		      strcmp(vStringValue(t->name), vStringValue(nameToken->name)) == 0)) ||
> +		    (t->type == TOKEN_NAME && seenType &&
> +		     (i > 0 && st->token[i - 1]->type != TOKEN_DOUBLE_COLON)))

To summarise our IRC discussion while github was down.

@b4n is concerned about the template params in autocompletion, I'm concerned about them in the tooltips. Maybe those need to be separate things, with the tooltip being just a copy of the relevant part of the source as suggested above.

BTW I am not suggesting parsing the parameters, I don't want compiler like situations where std::string is expanded to std::basic_string<char, traits blah blah>.

The decltype example fails as expected.


Reply to this email directly or view it on GitHub.