GNU bug report logs - #6066
Incorrect C++ indentation in emacs 23.1.96

Previous Next

Packages: emacs, cc-mode;

Reported by: "Bob" <purchasebyemail1 <at> comcast.net>

Date: Fri, 30 Apr 2010 16:45:02 UTC

Severity: normal

Fixed in version 24.1

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 6066 in the body.
You can then email your comments to 6066 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#6066; Package emacs. (Fri, 30 Apr 2010 16:45:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to "Bob" <purchasebyemail1 <at> comcast.net>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Fri, 30 Apr 2010 16:45:02 GMT) Full text and rfc822 format available.

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

From: "Bob" <purchasebyemail1 <at> comcast.net>
To: "'Emacs bug Tracking System'" <bug-gnu-emacs <at> gnu.org>
Subject: Incorrect C++ indentation in emacs 23.1.96
Date: Fri, 30 Apr 2010 09:44:04 -0700
[Message part 1 (text/plain, inline)]
Emacs 23.1.96 incorrectly indents C++ line.

 

To reproduce:

 

Visit the attached "bug.H" file and do the following:

 

1. go-to-line 2   ( the "{")

2. C-e (end of line)

3. C-j (new line)

 

4. type in:

 

typedef TypeList<[C-j]

 

5. go-to-line 6       (Statement<Assign<EAsgn::Variable> >,)

6. C-k C-y (kill then yank)

7. go-to-line 4

8. C-y                       (you have just copied line 6)

 

Text now looks like:

namespace PT

{

  typedef TypeList<

    Statement<Assign<EAsgn::Variable> >,

  typedef TypeList<

    Statement<Assign<EAsgn::Variable> >,

    Statement<Symbol<Parameter<EParm::Overload> > >,

    Statement<Symbol<Parameter<EParm::Local> > >,

    Statement<Instance>

    >::Result
TStmtKindSet;

}

 

9. C-e (end of line 4)

10. [Backspace]        (to delete ',')

11. C-j (new-line)

 

12. type in:

 

>::Result[TAB]TFoo;

 

13. go-to-line 7       (at beginning of line "typedef TypeList<")

14. [TAB] to indent        <<<<<<<<<<<<< Incorrect indentation happens here
<<<<<<<<<<<<<<<<<<<

 

Text now looks like:

 

namespace PT

{

  typedef TypeList<

    Statement<Assign<EAsgn::Variable> >

    >::Result          TFoo;

 

typedef TypeList<

    Statement<Assign<EAsgn::Variable> >,

    Statement<Symbol<Parameter<EParm::Overload> > >,

    Statement<Symbol<Parameter<EParm::Local> > >,

    Statement<Instance>

    >::Result
TStmtKindSet;

}

 

Observe line 7 indents incorrectly to column 0.

 

Saving the buffer, starting a new emacs 23.1.96, visit "bug.H", [TAB] on
line

7 re-indents correctly.

[Message part 2 (text/html, inline)]
[bug.H (text/plain, attachment)]

Reply sent to Glenn Morris <rgm <at> gnu.org>:
You have taken responsibility. (Mon, 03 Oct 2011 22:37:02 GMT) Full text and rfc822 format available.

Notification sent to "Bob" <purchasebyemail1 <at> comcast.net>:
bug acknowledged by developer. (Mon, 03 Oct 2011 22:37:02 GMT) Full text and rfc822 format available.

Message #10 received at 6066-done <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: 6066-done <at> debbugs.gnu.org
Subject: Re: bug#6066: Incorrect C++ indentation in emacs 23.1.96
Date: Mon, 03 Oct 2011 18:35:26 -0400
Version: 24.1

I can reproduce this in Emacs 23.3, but not in the current trunk, so it
looks like it has been fixed.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 01 Nov 2011 11:24:03 GMT) Full text and rfc822 format available.

This bug report was last modified 13 years and 231 days ago.

Previous Next


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