changeset 10:c0f2c47e5034 trunk

[svn r14] Forgot something stupid...y
author lindquist
date Mon, 01 Oct 2007 23:32:29 +0200
parents dafae18f9c08
children d3ee9efe20e2
files gen/toobj.c
diffstat 1 files changed, 1 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/gen/toobj.c	Mon Oct 01 21:19:53 2007 +0200
+++ b/gen/toobj.c	Mon Oct 01 23:32:29 2007 +0200
@@ -619,12 +619,9 @@
         Logger::println("queueing %s", toChars());
         assert(!gIR->classmethods.empty());
         gIR->classmethods.back().push_back(this);
-        return; // will be generated later when the this parameter has a type
+        return; // we wait with the definition as they might invoke a virtual method and the vtable is not yet complete
     }
 
-    if (llvmNeedsDefinition)
-    {
-
     TypeFunction* f = (TypeFunction*)type;
     llvm::FunctionType* functype = llvm::cast<llvm::FunctionType>(f->llvmType);
 
@@ -714,8 +711,6 @@
         }
     }
 
-    }
-
     llvmDModule = gIR->dmodule;
 
     Logger::println("FuncDeclaration done\n");