[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#7579: cc-mode c++ template-typed variable decl regression
From: |
Daniel Colascione |
Subject: |
bug#7579: cc-mode c++ template-typed variable decl regression |
Date: |
Tue, 14 Feb 2012 09:16:25 -0800 |
User-agent: |
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:10.0.1) Gecko/20120208 Thunderbird/10.0.1 |
Hi Alan,
On 2/14/12 8:11 AM, Alan Mackenzie wrote:
>>>> /* In Emacs 23, adffdfa below is fontified as a variable. In Emacs HEAD,
>>>> it is not. */
>
>>>> void foo()
>>>> {
>>>> mumble x(5);
>>>> std::vector<int> adffdfa(1,2,3);
>>>> };
>
>> Are there any syntactic clues here that a variable rather than a function
>> is being declared? All I can see is that numeric literals take the place
>> of "parameters".
>
> Please ignore this request. Obviously, for a function, there must be
> either nothing in the parentheses or [<type> <value>]*.
Or just types:
std::vector <int> blah(int);
typedef int foo;
std::vector <int> blah(foo);
Still, unless we're absolutely sure we're looking at a function
declaration, we should fontify a declaration as a variables
declaration. Function-scope function declarations are extremely
uncommon, and at least in my experience, almost always offset by
keywords like "extern". Even if something like int bar(); could be a
function, fontifying it as a variable would be the right thing to do
in function scope for C++.
signature.asc
Description: OpenPGP digital signature