summaryrefslogtreecommitdiff
path: root/src/emscripten-optimizer/parser.cpp
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2016-04-27 13:24:09 -0700
committerAlon Zakai <alonzakai@gmail.com>2016-04-27 16:59:18 -0700
commit90bdf763537815a523d0dbe75a67e7f0b14b0d9e (patch)
tree2fe32e380cabbc3f7e1c5916a8d2ceec90f44fd3 /src/emscripten-optimizer/parser.cpp
parent2c8e64a91197beed1792e65a9d409ca50e12697c (diff)
downloadbinaryen-90bdf763537815a523d0dbe75a67e7f0b14b0d9e.tar.gz
binaryen-90bdf763537815a523d0dbe75a67e7f0b14b0d9e.tar.bz2
binaryen-90bdf763537815a523d0dbe75a67e7f0b14b0d9e.zip
do not leak in IStringSet
Diffstat (limited to 'src/emscripten-optimizer/parser.cpp')
-rw-r--r--src/emscripten-optimizer/parser.cpp26
1 files changed, 13 insertions, 13 deletions
diff --git a/src/emscripten-optimizer/parser.cpp b/src/emscripten-optimizer/parser.cpp
index b8297fc29..ef2891941 100644
--- a/src/emscripten-optimizer/parser.cpp
+++ b/src/emscripten-optimizer/parser.cpp
@@ -121,19 +121,19 @@ static std::vector<std::unordered_map<IString, int>> precedences; // op, type =>
struct Init {
Init() {
// operators, rtl, type
- operatorClasses.push_back(OperatorClass(".", false, OperatorClass::Binary));
- operatorClasses.push_back(OperatorClass("! ~ + -", true, OperatorClass::Prefix));
- operatorClasses.push_back(OperatorClass("* / %", false, OperatorClass::Binary));
- operatorClasses.push_back(OperatorClass("+ -", false, OperatorClass::Binary));
- operatorClasses.push_back(OperatorClass("<< >> >>>", false, OperatorClass::Binary));
- operatorClasses.push_back(OperatorClass("< <= > >=", false, OperatorClass::Binary));
- operatorClasses.push_back(OperatorClass("== !=", false, OperatorClass::Binary));
- operatorClasses.push_back(OperatorClass("&", false, OperatorClass::Binary));
- operatorClasses.push_back(OperatorClass("^", false, OperatorClass::Binary));
- operatorClasses.push_back(OperatorClass("|", false, OperatorClass::Binary));
- operatorClasses.push_back(OperatorClass("? :", true, OperatorClass::Tertiary));
- operatorClasses.push_back(OperatorClass("=", true, OperatorClass::Binary));
- operatorClasses.push_back(OperatorClass(",", true, OperatorClass::Binary));
+ operatorClasses.emplace_back(".", false, OperatorClass::Binary);
+ operatorClasses.emplace_back("! ~ + -", true, OperatorClass::Prefix);
+ operatorClasses.emplace_back("* / %", false, OperatorClass::Binary);
+ operatorClasses.emplace_back("+ -", false, OperatorClass::Binary);
+ operatorClasses.emplace_back("<< >> >>>", false, OperatorClass::Binary);
+ operatorClasses.emplace_back("< <= > >=", false, OperatorClass::Binary);
+ operatorClasses.emplace_back("== !=", false, OperatorClass::Binary);
+ operatorClasses.emplace_back("&", false, OperatorClass::Binary);
+ operatorClasses.emplace_back("^", false, OperatorClass::Binary);
+ operatorClasses.emplace_back("|", false, OperatorClass::Binary);
+ operatorClasses.emplace_back("? :", true, OperatorClass::Tertiary);
+ operatorClasses.emplace_back("=", true, OperatorClass::Binary);
+ operatorClasses.emplace_back(",", true, OperatorClass::Binary);
precedences.resize(OperatorClass::Tertiary + 1);