Store front-end D function type in IrFuncTy

As we do for IrFuncTyArg. We'll need access to the front-end linkage for
the Posix ABIs too in order to implement indirect-by-value passing of
non-PODs for `extern(C++)`.
This commit is contained in:
Martin Kinkelin 2018-05-29 21:32:58 +02:00
parent c01dfc3db8
commit 92913d4c08
16 changed files with 51 additions and 38 deletions

View file

@ -16,12 +16,15 @@
#include "gen/tollvm.h"
#include "ir/irdsymbol.h"
IrFunction::IrFunction(FuncDeclaration *fd) : FMF(opts::defaultFMF) {
IrFunction::IrFunction(FuncDeclaration *fd)
: FMF(opts::defaultFMF), irFty(nullptr /*set immediately below*/) {
decl = fd;
Type *t = fd->type->toBasetype();
assert(t->ty == Tfunction);
type = static_cast<TypeFunction *>(t);
irFty.type = type;
}
void IrFunction::setNeverInline() {