GNU bug report logs -
#6066
Incorrect C++ indentation in emacs 23.1.96
Previous Next
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.
Full log
View this message in rfc822 format
[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)]
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.