# HG changeset patch # User Tomas Lindquist Olsen # Date 1239872509 -7200 # Node ID fafe7c8d67349e89d4c385673e3db0d3fdc7005d # Parent 79758fd2f48ad75fa2f6a2a521d108d749f0cf11 Now compiles again, and fixed type of the Interface[N] ClassInfo symbol. diff -r 79758fd2f48a -r fafe7c8d6734 gen/classes.cpp --- a/gen/classes.cpp Wed Apr 15 20:06:25 2009 +0200 +++ b/gen/classes.cpp Thu Apr 16 11:01:49 2009 +0200 @@ -60,7 +60,7 @@ // emit the interfaceInfosZ symbol if necessary if (cd->vtblInterfaces && cd->vtblInterfaces->dim > 0) - getInterfaceArraySymbol(); // initializer is applied when it's built + irstruct->getInterfaceArraySymbol(); // initializer is applied when it's built // perform definition if (needs_def) diff -r 79758fd2f48a -r fafe7c8d6734 ir/irclass.cpp --- a/ir/irclass.cpp Wed Apr 15 20:06:25 2009 +0200 +++ b/ir/irclass.cpp Thu Apr 16 11:01:49 2009 +0200 @@ -83,10 +83,10 @@ assert(cd->vtblInterfaces && cd->vtblInterfaces->dim > 0 && "should not create interface info array for class with no explicit " - "interface implementations") + "interface implementations"); VarDeclarationIter idx(ClassDeclaration::classinfo->fields, 3); - const llvm::Type* InterfaceTy = DtoType(idx->type); + const llvm::Type* InterfaceTy = DtoType(idx->type->next); // create Interface[N] const llvm::ArrayType* array_type = llvm::ArrayType::get(