Debug info: name mangling for composite types containing Archetypes.

Among other things this enables mangled names for tuples.
This adds a pointer to the DeclContext to SILFunction and which is used
to provide the necessary context to the Mangler.
Fixes rdar://problem/14808764 and rdar://problem/14813658.

Swift SVN r8070
This commit is contained in:
Adrian Prantl
2013-09-10 17:04:33 +00:00
parent b400879485
commit af562d1696
12 changed files with 147 additions and 64 deletions

View File

@@ -315,6 +315,7 @@ void SILGenModule::emitFunction(SILDeclRef::Loc decl, FuncExpr *fe) {
SILFunction *f = preEmitFunction(constant, fe, fe);
SILGenFunction(*this, *f).emitFunction(fe);
postEmitFunction(constant, f);
f->setDeclContext(fe);
// If the function is a standalone function and is curried, emit the thunks
// for the intermediate curry levels.