Files
ldc/ir/irtypefunction.h
Tomas Lindquist Olsen c0f2af5afd Added IrTypeFunction and IrTypeDelegate and eliminated IrDType. This means the Type::ir field can be removed. It's the final part needed for the move to a slightly more sane type system. Now the whole thing just needs to be cleaned up :P
Added -v-cg switch, which right now just prints "codegen: module.name (module/name.d)" to stdout, this can really help figuring out where, in some complex build command, things go wrong.
2009-05-16 18:19:52 +02:00

43 lines
597 B
C++

#ifndef __LDC_IR_IRTYPEFUNCTION_H__
#define __LDC_IR_IRTYPEFUNCTION_H__
#include "ir/irtype.h"
class IrFuncTy;
///
class IrTypeFunction : public IrType
{
public:
///
IrTypeFunction(Type* dt);
///
IrTypeFunction* isFunction() { return this; }
///
const llvm::Type* buildType();
IrFuncTy* fty() { return irfty; }
protected:
///
IrFuncTy* irfty;
};
///
class IrTypeDelegate : public IrType
{
public:
///
IrTypeDelegate(Type* dt);
///
IrTypeDelegate* isDelegate() { return this; }
///
const llvm::Type* buildType();
};
#endif