GNU bug report logs - #24246
25.0.95; (c++-mode) custom/extra types not getting highlighted (as a type) after a wrapper::type argument.

Previous Next

Packages: emacs, cc-mode;

Reported by: Arash <pbqbqp <at> gmail.com>

Date: Tue, 16 Aug 2016 20:55:02 UTC

Severity: minor

Found in version 25.0.95

Done: Alan Mackenzie <acm <at> muc.de>

Bug is archived. No further changes may be made.

Full log


Message #25 received at 24246 <at> debbugs.gnu.org (full text, mbox):

From: Arash <pbqbqp <at> gmail.com>
To: Alan Mackenzie <acm <at> muc.de>
Cc: 24246 <at> debbugs.gnu.org
Subject: Re: bug#24246: 25.0.95;
 (c++-mode) custom/extra types not getting highlighted (as a type)
 after a wrapper::type argument.
Date: Thu, 08 Sep 2016 19:48:12 +0430
Alan Mackenzie wrote:

> Hello again, Arash.
>
> On Wed, Aug 17, 2016 at 01:24:17AM +0430, Arash wrote:
>> $ emacs -Q ab.cc
>
>> typedef int int32;
>
>> namespace wrapper {
>>     enum type { a, b, c };
>> }
>
>> // int32 doesn't get highlighted as a type.
>> void test(wrapper::type A, int32 B);
>
>
>> typedef wrapper::type wtype;
>
>> // here it works, so double colon is the problem?
>> void test(wtype A, int32 B);
>
> Thanks indeed for this bug report, and thanks even more for cutting it
> down to a nice, crisp, manageable file.
>
> The fontification code was not handling "::" in declarations correctly.
> I think I have corrected this, and I have committed it to our master
> branch at savannah.
>
> I see you're on the emacs-25 branch.  Could you please patch your Emacs
> with the following patch (the file is in directory .../lisp/progmodes),
> rebuild CC Mode (a single $ emacs -Q -batch -f batch-byte-compile
> .../lisp/progmodes/cc-engine.el should suffice), reload CC Mode into
> your Emacs (or restart Emacs), then try out the new system on your real
> code.
>
> Then please let me know whether the problem has been truly fixed, and
> if not, what is still wrong.  If everything is OK, I will close the bug.

Hi Alan. This is a bit late, sry.

// Here, first double colon causes the same problem.
void test(::base::string S, int32 test)
{ }

// and here, even "string" doesn't get highlighted.
void test(::base::string &S)
{ }




This bug report was last modified 8 years and 310 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.