GNU bug report logs - #63328
CC Mode 5.35.2 (Java//l); Constructor function not fontified as such

Previous Next

Package: cc-mode;

Reported by: Po Lu <luangruo <at> yahoo.com>

Date: Sat, 6 May 2023 11:24:01 UTC

Severity: normal

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

Bug is archived. No further changes may be made.

Full log


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

From: Po Lu <luangruo <at> yahoo.com>
To: Alan Mackenzie <acm <at> muc.de>
Cc: 63328 <at> debbugs.gnu.org
Subject: Re: bug#63328: CC Mode 5.35.2 (Java//l); Constructor function not
 fontified as such
Date: Fri, 26 May 2023 19:52:09 +0800
Alan Mackenzie <acm <at> muc.de> writes:

> Hello, Po.
>
> On Fri, May 12, 2023 at 10:42:21 +0800, Po Lu wrote:
>> Alan Mackenzie <acm <at> muc.de> writes:
>
> [ .... ]
>
>> > To fix this reuired some tweaking of the low level syntactic analysis
>> > code.  Could I ask you, please, to test the enclosed patch (which should
>> > apply cleanly to either master or the emacs-29 branch).  Then please let
>> > me know how the test went.
>
>> It seems to work, but perhaps it would be safer to change that code only
>> in Java mode, and not in the rest of the CC modes?
>
> Sorry it's taken me so long.  I wasn't really happy with that last patch
> I sent you - it slowed Java Mode's fontification by around 15%, because
> it was testing every function call for being a constructor.  I've settled
> on a scheme where the code checks for an argument list and the opening
> brace of the statement block before fontifying as a constructor.  So, on
> typing a new constructor, the fontification gets delayed until the brace
> gets typed.  This isn't ideal, though I think it's better than the 15%
> slowdown.
>
> After consideration, I think it's better to leave the check in for all
> modes, not just Java Mode.  I don't think there's any valid syntax in any
> CC Mode mode which could accidentally trigger the mechanism, and the
> problem with the lack of fontification might well occur in some derived
> mode, too.
>
> Anyhow, I have attached a patch, so would you please test it on your real
> code and let me know how well it works.  Thanks!

I don't have time to try this right now.  Would you quickly run it over
the code in `java' on Emacs's feature/android branch, and install it if
it seems to work?

TIA.




This bug report was last modified 2 years and 51 days ago.

Previous Next


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