GNU bug report logs - #64322
CC Mode 5.35.2 (C/*l); More incorrect type recognition

Previous Next

Package: cc-mode;

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

Date: Wed, 28 Jun 2023 07:06:02 UTC

Severity: normal

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

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: Po Lu <luangruo <at> yahoo.com>
Cc: acm <at> muc.de, 64322 <at> debbugs.gnu.org
Subject: bug#64322: CC Mode 5.35.2 (C/*l); More incorrect type recognition
Date: Sat, 01 Jul 2023 10:10:45 +0300
> From: Po Lu <luangruo <at> yahoo.com>
> Cc: 64322 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org>
> Date: Sat, 01 Jul 2023 08:22:41 +0800
> 
> Alan Mackenzie <acm <at> muc.de> writes:
> 
> > Yes.  The problem was a confusion between C++ and C regarding type
> > definition.  In C++, "class Foo" or "struct Foo" defines a type "Foo".
> > In C, in "struct Foo", there is no such type defined, "Foo" is merely a
> > struct tag.
> >
> > This involves a one line fix in cc-langs.el, to remove items from the
> > lang const c-typeless-decl-kwds.  Additionally, I've corrected an
> > unrelated typo in cc-fonts.el.
> >
> > Would you please try out the attached patch in your real code
> > thoroughly, and either confirm the bug is fixed, or tell me what's still
> > wrong.  Thanks!
> >
> >> Thanks in advance.
> >
> >> Emacs  : GNU Emacs 29.0.92 (build 1, x86_64-pc-linux-gnu)
> >>  of 2023-06-25
> >> Package: CC Mode 5.35.2 (C/*l)
> >> Buffer Style: gnu
> >> c-emacs-features: (pps-extended-state col-0-paren posix-char-classes gen-string-delim gen-comment-delim syntax-properties category-properties 1-bit)
> 
> Seems to work here, thanks.  Eli, could we have this on the emacs-29
> branch?

Yes, if Alan is okay with making this change on the release branch.




This bug report was last modified 1 year and 331 days ago.

Previous Next


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