diff options
author | Dmitri Gribenko <gribozavr@gmail.com> | 2012-09-11 19:22:03 +0000 |
---|---|---|
committer | Dmitri Gribenko <gribozavr@gmail.com> | 2012-09-11 19:22:03 +0000 |
commit | b0b8a96df25660cbdbf35d23c3ff5887c33f82f9 (patch) | |
tree | b936890d845c62646b71b250e1fa405f215b8b40 /lib/AST/CommentParser.cpp | |
parent | 19d5886d1704e24282c86217b09d5c6d35ba604d (diff) |
Comment parsing: handle non-builtin commands correctly. After semantic
analysis registers a command, it becomes a "known" command for the lexer, since
it has an ID. Having this freedom of choice to register a command is a good
thing since BriefParser does not need this.
But the parser should still invoke the correct semantic analysis method
(actOnUnknownCommand) in this case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163646 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AST/CommentParser.cpp')
-rw-r--r-- | lib/AST/CommentParser.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/AST/CommentParser.cpp b/lib/AST/CommentParser.cpp index f6acd9645f..d053dc0f18 100644 --- a/lib/AST/CommentParser.cpp +++ b/lib/AST/CommentParser.cpp @@ -554,6 +554,13 @@ BlockContentComment *Parser::parseParagraphOrBlockCommand() { return parseBlockCommand(); break; // Block command ahead, finish this parapgaph. } + if (Info->IsUnknownCommand) { + Content.push_back(S.actOnUnknownCommand(Tok.getLocation(), + Tok.getEndLocation(), + Info->getID())); + consumeToken(); + continue; + } assert(Info->IsInlineCommand); Content.push_back(parseInlineCommand()); continue; |