Mercurial > projects > ldc
comparison gen/functions.cpp @ 137:ce7b81fb957f trunk
[svn r141] fixed more problems with classinfo
moved more IR state out of the AST classes
author | lindquist |
---|---|
date | Fri, 18 Jan 2008 16:42:16 +0100 |
parents | 0e28624814e8 |
children | 0ab29b838084 |
comparison
equal
deleted
inserted
replaced
136:0e28624814e8 | 137:ce7b81fb957f |
---|---|
72 | 72 |
73 if (typesafeVararg) { | 73 if (typesafeVararg) { |
74 ClassDeclaration* ti = Type::typeinfo; | 74 ClassDeclaration* ti = Type::typeinfo; |
75 ti->toObjFile(); | 75 ti->toObjFile(); |
76 DtoForceConstInitDsymbol(ti); | 76 DtoForceConstInitDsymbol(ti); |
77 assert(ti->llvmConstInit); | 77 assert(ti->irStruct->constInit); |
78 std::vector<const llvm::Type*> types; | 78 std::vector<const llvm::Type*> types; |
79 types.push_back(DtoSize_t()); | 79 types.push_back(DtoSize_t()); |
80 types.push_back(getPtrToType(getPtrToType(ti->llvmConstInit->getType()))); | 80 types.push_back(getPtrToType(getPtrToType(ti->irStruct->constInit->getType()))); |
81 const llvm::Type* t1 = llvm::StructType::get(types); | 81 const llvm::Type* t1 = llvm::StructType::get(types); |
82 paramvec.push_back(getPtrToType(t1)); | 82 paramvec.push_back(getPtrToType(t1)); |
83 paramvec.push_back(getPtrToType(llvm::Type::Int8Ty)); | 83 paramvec.push_back(getPtrToType(llvm::Type::Int8Ty)); |
84 } | 84 } |
85 | 85 |