changeset 1229:fafe7c8d6734

Now compiles again, and fixed type of the Interface[N] ClassInfo symbol.
author Tomas Lindquist Olsen <tomas.l.olsen gmail.com>
date Thu, 16 Apr 2009 11:01:49 +0200
parents 79758fd2f48a
children e67c85d6e680
files gen/classes.cpp ir/irclass.cpp
diffstat 2 files changed, 3 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- 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)
--- 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(