aboutsummaryrefslogtreecommitdiff
path: root/lib/AST/CommentParser.cpp
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2013-03-02 02:39:57 +0000
committerFariborz Jahanian <fjahanian@apple.com>2013-03-02 02:39:57 +0000
commit8536fa14ee1048e5e2d62cb3dc11fc640c7dc00d (patch)
tree8e7f5e2534fa70dae25b32f41f52a77bb2df5ad5 /lib/AST/CommentParser.cpp
parent15e05e932ccf9ba2621394834b62684b42d6fd40 (diff)
Some refactoring in my patch on document
command source fidelity. // rdar://13066276 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176401 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AST/CommentParser.cpp')
-rw-r--r--lib/AST/CommentParser.cpp24
1 files changed, 13 insertions, 11 deletions
diff --git a/lib/AST/CommentParser.cpp b/lib/AST/CommentParser.cpp
index f5c933e7bb..c6bd922461 100644
--- a/lib/AST/CommentParser.cpp
+++ b/lib/AST/CommentParser.cpp
@@ -300,7 +300,7 @@ void Parser::parseBlockCommandArgs(BlockCommandComment *BC,
}
BlockCommandComment *Parser::parseBlockCommand() {
- assert(Tok.is(tok::command));
+ assert(Tok.is(tok::backslash_command) || Tok.is(tok::at_command));
ParamCommandComment *PC;
TParamCommandComment *TPC;
@@ -312,19 +312,19 @@ BlockCommandComment *Parser::parseBlockCommand() {
IsParam = true;
PC = S.actOnParamCommandStart(Tok.getLocation(),
Tok.getEndLocation(),
- Tok.getCommandID());
- PC->setHDCommand(Tok.getHDCommand());
+ Tok.getCommandID(),
+ Tok.is(tok::at_command));
} else if (Info->IsTParamCommand) {
IsTParam = true;
TPC = S.actOnTParamCommandStart(Tok.getLocation(),
Tok.getEndLocation(),
- Tok.getCommandID());
- TPC->setHDCommand(Tok.getHDCommand());
+ Tok.getCommandID(),
+ Tok.is(tok::at_command));
} else {
BC = S.actOnBlockCommandStart(Tok.getLocation(),
Tok.getEndLocation(),
- Tok.getCommandID());
- BC->setHDCommand(Tok.getHDCommand());
+ Tok.getCommandID(),
+ Tok.is(tok::at_command));
}
consumeToken();
@@ -395,7 +395,7 @@ BlockCommandComment *Parser::parseBlockCommand() {
}
InlineCommandComment *Parser::parseInlineCommand() {
- assert(Tok.is(tok::command));
+ assert(Tok.is(tok::backslash_command) || Tok.is(tok::at_command));
const Token CommandTok = Tok;
consumeToken();
@@ -562,7 +562,8 @@ BlockContentComment *Parser::parseParagraphOrBlockCommand() {
consumeToken();
continue;
- case tok::command: {
+ case tok::backslash_command:
+ case tok::at_command: {
const CommandInfo *Info = Traits.getCommandInfo(Tok.getCommandID());
if (Info->IsBlockCommand) {
if (Content.size() == 0)
@@ -572,7 +573,7 @@ BlockContentComment *Parser::parseParagraphOrBlockCommand() {
if (Info->IsVerbatimBlockEndCommand) {
Diag(Tok.getLocation(),
diag::warn_verbatim_block_end_without_start)
- << Tok.getHDCommand()
+ << Tok.is(tok::at_command)
<< Info->Name
<< SourceRange(Tok.getLocation(), Tok.getEndLocation());
consumeToken();
@@ -710,7 +711,8 @@ BlockContentComment *Parser::parseBlockContent() {
switch (Tok.getKind()) {
case tok::text:
case tok::unknown_command:
- case tok::command:
+ case tok::backslash_command:
+ case tok::at_command:
case tok::html_start_tag:
case tok::html_end_tag:
return parseParagraphOrBlockCommand();