Changeset 38587bc
- Timestamp:
- Aug 19, 2018, 11:15:47 AM (7 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, no_list, persistent-indexer, pthread-emulation, qualifiedEnum
- Children:
- 0e73845
- Parents:
- 2f9768f
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified src/SymTab/Demangle.cc ¶
r2f9768f r38587bc 352 352 Type * parseArray(Type::Qualifiers tq); 353 353 Type * parseStruct(Type::Qualifiers tq); 354 Type * parseUnion(Type::Qualifiers tq); 355 Type * parseEnum(Type::Qualifiers tq); 354 356 355 357 Type * parseType(); … … 372 374 parsers.emplace_back(Encoding::tuple, [this](Type::Qualifiers tq) { return parseTuple(tq); }); 373 375 parsers.emplace_back(Encoding::struct_t, [this](Type::Qualifiers tq) { return parseStruct(tq); }); 376 parsers.emplace_back(Encoding::union_t, [this](Type::Qualifiers tq) { return parseUnion(tq); }); 377 parsers.emplace_back(Encoding::enum_t, [this](Type::Qualifiers tq) { return parseEnum(tq); }); 378 parsers.emplace_back(Encoding::zero, [this](Type::Qualifiers tq) { return new ZeroType(tq); }); 379 parsers.emplace_back(Encoding::one, [this](Type::Qualifiers tq) { return new OneType(tq); }); 374 380 } 375 381 … … 493 499 } 494 500 501 Type * StringView::parseUnion(Type::Qualifiers tq) { 502 PRINT( std::cerr << "union..." << std::endl; ) 503 std::string name; 504 if (! extractName(name)) return nullptr; 505 return new UnionInstType(tq, name); 506 } 507 508 Type * StringView::parseEnum(Type::Qualifiers tq) { 509 PRINT( std::cerr << "enum..." << std::endl; ) 510 std::string name; 511 if (! extractName(name)) return nullptr; 512 return new EnumInstType(tq, name); 513 } 514 495 515 Type * StringView::parseType() { 496 516 if (done()) return nullptr;
Note: See TracChangeset
for help on using the changeset viewer.