C++ indenter: Fix indentation after namespace aliases.

Task-number: QTCREATORBUG-2574
Reviewed-by: Roberto Raggi
This commit is contained in:
Christian Kamm
2010-10-19 12:49:09 +02:00
parent 3c94a89801
commit 5ac981a0ac
2 changed files with 16 additions and 0 deletions

View File

@@ -93,6 +93,7 @@ void CodeFormatter::recalculateStateAfter(const QTextBlock &block)
case namespace_start:
switch (kind) {
case T_LBRACE: enter(namespace_open); break;
case T_SEMICOLON:
case T_RBRACE: leave(); break;
} break;

View File

@@ -51,6 +51,7 @@ private Q_SLOTS:
void forStatement();
void templateSingleline();
void macrosNoSemicolon2();
void renamedNamespace();
};
struct Line {
@@ -985,6 +986,20 @@ void tst_CodeFormatter::macrosNoSemicolon2()
checkIndent(data);
}
void tst_CodeFormatter::renamedNamespace()
{
QList<Line> data;
data
<< Line("namespace X = Y;")
<< Line("void foo()")
<< Line("{")
<< Line(" return;")
<< Line("}")
<< Line("int i;")
;
checkIndent(data);
}
QTEST_APPLESS_MAIN(tst_CodeFormatter)
#include "tst_codeformatter.moc"