Changes in src/SymTab/Mangler.cc [4ee3b0c1:96812c0]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/SymTab/Mangler.cc
r4ee3b0c1 r96812c0 171 171 "w", // SignedInt128 172 172 "Uw", // UnsignedInt128 173 "a", // Float80174 "A", // Float128175 173 }; 176 static_assert(177 sizeof(btLetter)/sizeof(btLetter[0]) == BasicType::NUMBER_OF_BASIC_TYPES,178 "Each basic type kind should have a corresponding mangler letter"179 );180 174 181 175 printQualifiers( basicType ); 182 assert( basicType->get_kind() < sizeof(btLetter)/sizeof(btLetter[0]) );183 176 mangleName << btLetter[ basicType->get_kind() ]; 184 177 } … … 225 218 GuardValue( inFunctionType ); 226 219 inFunctionType = true; 227 std::list< Type* > returnTypes = getTypes( functionType-> get_returnVals());220 std::list< Type* > returnTypes = getTypes( functionType->returnVals ); 228 221 acceptAll( returnTypes, *visitor ); 229 222 mangleName << "_"; 230 std::list< Type* > paramTypes = getTypes( functionType-> get_parameters());223 std::list< Type* > paramTypes = getTypes( functionType->parameters ); 231 224 acceptAll( paramTypes, *visitor ); 232 225 mangleName << "_"; … … 236 229 printQualifiers( refType ); 237 230 238 mangleName << ( refType-> get_name().length() + prefix.length() ) << prefix << refType->get_name();231 mangleName << ( refType->name.length() + prefix.length() ) << prefix << refType->name; 239 232 240 233 if ( mangleGenericParams ) { 241 std::list< Expression* >& params = refType-> get_parameters();234 std::list< Expression* >& params = refType->parameters; 242 235 if ( ! params.empty() ) { 243 236 mangleName << "_"; 244 237 for ( std::list< Expression* >::const_iterator param = params.begin(); param != params.end(); ++param ) { 245 238 TypeExpr *paramType = dynamic_cast< TypeExpr* >( *param ); 246 assertf(paramType, "Aggregate parameters should be type expressions: %s", to String(*param).c_str());247 maybeAccept( paramType-> get_type(), *visitor );239 assertf(paramType, "Aggregate parameters should be type expressions: %s", toCString(*param)); 240 maybeAccept( paramType->type, *visitor ); 248 241 } 249 242 mangleName << "_";
Note:
See TracChangeset
for help on using the changeset viewer.