summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-rc/ResourceScriptParser.cpp
diff options
context:
space:
mode:
authorMartin Storsjo <martin@martin.st>2018-11-29 12:17:39 +0000
committerMartin Storsjo <martin@martin.st>2018-11-29 12:17:39 +0000
commita876b5c0f5d6a522ad3020149599a4e4d5330fb9 (patch)
tree57ea7bc681d6dc04ba4bdcb53c4e4ee169ba02cf /llvm/tools/llvm-rc/ResourceScriptParser.cpp
parent373a4ccf6cdd69993fbcef7384b741373374269b (diff)
downloadbcm5719-llvm-a876b5c0f5d6a522ad3020149599a4e4d5330fb9.tar.gz
bcm5719-llvm-a876b5c0f5d6a522ad3020149599a4e4d5330fb9.zip
[llvm-rc] Support EXSTYLE statement.
Patch by Jacek Caban! Differential Revision: https://reviews.llvm.org/D55020 llvm-svn: 347858
Diffstat (limited to 'llvm/tools/llvm-rc/ResourceScriptParser.cpp')
-rw-r--r--llvm/tools/llvm-rc/ResourceScriptParser.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/tools/llvm-rc/ResourceScriptParser.cpp b/llvm/tools/llvm-rc/ResourceScriptParser.cpp
index 8cc0b50933c..09c88ff879a 100644
--- a/llvm/tools/llvm-rc/ResourceScriptParser.cpp
+++ b/llvm/tools/llvm-rc/ResourceScriptParser.cpp
@@ -388,6 +388,8 @@ RCParser::parseSingleOptionalStatement(OptStmtType StmtsType) {
return parseCaptionStmt();
if (TypeToken->equals_lower("CLASS"))
return parseClassStmt();
+ if (TypeToken->equals_lower("EXSTYLE"))
+ return parseExStyleStmt();
if (TypeToken->equals_lower("FONT"))
return parseFontStmt(StmtsType);
if (TypeToken->equals_lower("STYLE"))
@@ -817,6 +819,11 @@ RCParser::ParseOptionType RCParser::parseStyleStmt() {
return llvm::make_unique<StyleStmt>(*Arg);
}
+RCParser::ParseOptionType RCParser::parseExStyleStmt() {
+ ASSIGN_OR_RETURN(Arg, readInt());
+ return llvm::make_unique<ExStyleStmt>(*Arg);
+}
+
Error RCParser::getExpectedError(const Twine &Message, bool IsAlreadyRead) {
return make_error<ParserError>(
Message, IsAlreadyRead ? std::prev(CurLoc) : CurLoc, End);
OpenPOWER on IntegriCloud