- Timestamp:
- Aug 2, 2018, 5:15:21 PM (6 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:
- c20fafd
- Parents:
- 4285544e
- Location:
- src/SymTab
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
src/SymTab/Mangler.cc
r4285544e r7804e2a 144 144 void Mangler::postvisit( VoidType * voidType ) { 145 145 printQualifiers( voidType ); 146 mangleName << Encoding::void Type;146 mangleName << Encoding::void_t; 147 147 } 148 148 … … 195 195 inFunctionType = true; 196 196 std::list< Type* > returnTypes = getTypes( functionType->returnVals ); 197 if (returnTypes.empty()) mangleName << Encoding::void Type;197 if (returnTypes.empty()) mangleName << Encoding::void_t; 198 198 else acceptAll( returnTypes, *visitor ); 199 199 mangleName << "_"; … … 223 223 224 224 void Mangler::postvisit( StructInstType * aggregateUseType ) { 225 mangleRef( aggregateUseType, "s");225 mangleRef( aggregateUseType, Encoding::struct_t ); 226 226 } 227 227 228 228 void Mangler::postvisit( UnionInstType * aggregateUseType ) { 229 mangleRef( aggregateUseType, "u");229 mangleRef( aggregateUseType, Encoding::union_t ); 230 230 } 231 231 232 232 void Mangler::postvisit( EnumInstType * aggregateUseType ) { 233 mangleRef( aggregateUseType, "e");233 mangleRef( aggregateUseType, Encoding::enum_t ); 234 234 } 235 235 -
src/SymTab/Mangler.h
r4285544e r7804e2a 46 46 extern const std::map<int, std::string> qualifiers; 47 47 48 extern const std::string void Type;48 extern const std::string void_t; 49 49 extern const std::string zero; 50 50 extern const std::string one; … … 56 56 extern const std::string qualifiedTypeStart; 57 57 extern const std::string qualifiedTypeEnd; 58 59 extern const std::string struct_t; 60 extern const std::string union_t; 61 extern const std::string enum_t; 58 62 59 63 extern const std::string autogen; -
src/SymTab/ManglerCommon.cc
r4285544e r7804e2a 64 64 65 65 const std::map<int, std::string> qualifiers = { 66 { Type::Const, " C" },66 { Type::Const, "K" }, 67 67 { Type::Volatile, "V" }, 68 68 { Type::Atomic, "A" }, // A = Atomic, A0 = Array and forall parameter... 69 { Type::Mutex, " M" },69 { Type::Mutex, "X" }, 70 70 { Type::Lvalue, "L" }, 71 71 }; 72 72 73 const std::string void Type= "v";73 const std::string void_t = "v"; 74 74 const std::string zero = "Z"; 75 75 const std::string one = "O"; … … 82 82 const std::string qualifiedTypeEnd = "E"; 83 83 84 const std::string struct_t = "S"; 85 const std::string union_t = "U"; 86 const std::string enum_t = "M"; 87 84 88 const std::string autogen = "autogen__"; 85 89 const std::string intrinsic = "intrinsic__";
Note: See TracChangeset
for help on using the changeset viewer.