bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#6066: Incorrect C++ indentation in emacs 23.1.96


From: Bob
Subject: bug#6066: Incorrect C++ indentation in emacs 23.1.96
Date: Fri, 30 Apr 2010 09:44:04 -0700

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.

Attachment: bug.H
Description: Text document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]