From: Eli Friedman Date: Sat, 24 Jul 2010 22:58:04 +0000 (+0000) Subject: PR7704: A function is not allowed to return a function; make sure to enforce X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=327f4e4ab2acdc0594581825b0d0a4dca45e8acc;p=oota-llvm.git PR7704: A function is not allowed to return a function; make sure to enforce this consistently. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109360 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/VMCore/Type.cpp b/lib/VMCore/Type.cpp index b0897b4ca4a..0c9b0eaf564 100644 --- a/lib/VMCore/Type.cpp +++ b/lib/VMCore/Type.cpp @@ -455,8 +455,8 @@ const PointerType *Type::getInt64PtrTy(LLVMContext &C, unsigned AS) { /// isValidReturnType - Return true if the specified type is valid as a return /// type. bool FunctionType::isValidReturnType(const Type *RetTy) { - return RetTy->getTypeID() != LabelTyID && - RetTy->getTypeID() != MetadataTyID; + return !RetTy->isFunctionTy() && !RetTy->isLabelTy() && + !RetTy->isMetadataTy(); } /// isValidArgumentType - Return true if the specified type is valid as an