summaryrefslogtreecommitdiffstats
path: root/clang/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
commite400cb70d4c37e8ae9c96ebf1f412eaa329d2850 (patch)
tree7be10138486595bf33dadebc57259b1125aee89e /clang/lib/AST/CommentParser.cpp
parent63474629e8f40af421ecb71baa71ba9a56c8c695 (diff)
downloadbcm5719-llvm-e400cb70d4c37e8ae9c96ebf1f412eaa329d2850.tar.gz
bcm5719-llvm-e400cb70d4c37e8ae9c96ebf1f412eaa329d2850.zip
Some refactoring in my patch on document
command source fidelity. // rdar://13066276 llvm-svn: 176401
Diffstat (limited to 'clang/lib/AST/CommentParser.cpp')
-rw-r--r--clang/lib/AST/CommentParser.cpp24
1 files changed, 13 insertions, 11 deletions
diff --git a/clang/lib/AST/CommentParser.cpp b/clang/lib/AST/CommentParser.cpp
index f5c933e7bb5..c6bd9224618 100644
--- a/clang/lib/AST/CommentParser.cpp
+++ b/clang/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();
OpenPOWER on IntegriCloud