From 42da8b98b11317adf2e173a4f3c4bad1de02a6f6 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Sat, 28 Mar 2009 20:25:59 +0100 Subject: [PATCH] Do not skip abstract function declarations if they have a function body. Fixes abstract_17_A,B. --- gen/functions.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gen/functions.cpp b/gen/functions.cpp index 3fd73dd8..c3ca4b2c 100644 --- a/gen/functions.cpp +++ b/gen/functions.cpp @@ -368,10 +368,10 @@ void DtoResolveFunction(FuncDeclaration* fdecl) Logger::println("DtoResolveFunction(%s): %s", fdecl->toPrettyChars(), fdecl->loc.toChars()); LOG_SCOPE; - // queue declaration - if (!fdecl->isAbstract()) + // queue declaration unless the function is abstract without body + if (!fdecl->isAbstract() || fdecl->fbody) { - Logger::println("Ignoring declaration of abstract function %s", fdecl->toPrettyChars()); + Logger::println("Ignoring declaration of abstract bodyless function %s", fdecl->toPrettyChars()); DtoDeclareFunction(fdecl); } }