Preprocessor: Adjust lines also for multiline C++ comments

Change-Id: I87d6e76be3030e617603209c3a1b8b3c476cf1f6
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
This commit is contained in:
Orgad Shaneh
2014-02-04 22:23:27 +02:00
committed by Orgad Shaneh
parent 466eb0b0f8
commit 6133920bfe
2 changed files with 17 additions and 1 deletions

View File

@@ -1300,7 +1300,7 @@ void Preprocessor::trackExpansionCycles(PPToken *tk)
static void adjustForCommentOrStringNewlines(unsigned *currentLine, const PPToken &tk)
{
if (tk.is(T_COMMENT) || tk.is(T_DOXY_COMMENT) || tk.isStringLiteral())
if (tk.isComment() || tk.isStringLiteral())
(*currentLine) += tk.asByteArrayRef().count('\n');
}

View File

@@ -1368,6 +1368,22 @@ void tst_Preprocessor::comments_within_data()
" ) {}\n"
"}\n"
);
QTest::newRow("joined") << _(
"// comment \\\n"
"\n"
"int foo = 4;"
) << _(
"# 1 \"<stdin>\"\n"
"\n"
"\n"
"int foo = 4;"
) << _(
"# 1 \"<stdin>\"\n"
"// comment \\\n"
"\n"
"int foo = 4;"
);
}
void tst_Preprocessor::comments_before_args()