aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/VMCore/Type.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/VMCore/Type.cpp b/lib/VMCore/Type.cpp
index 32b783b0d1..c6ce34701c 100644
--- a/lib/VMCore/Type.cpp
+++ b/lib/VMCore/Type.cpp
@@ -364,6 +364,9 @@ FunctionType::FunctionType(const Type *Result,
ContainedTys.push_back(PATypeHandle(Result, this));
for (unsigned i = 0; i != Params.size(); ++i) {
+ assert((Params[i]->isFirstClassType() || isa<OpaqueType>(Params[i])) &&
+ "Function arguments must be value types!");
+
ContainedTys.push_back(PATypeHandle(Params[i], this));
isAbstract |= Params[i]->isAbstract();
}