DI: Require subprogram definitions to be distinct
[oota-llvm.git] / lib / IR / Verifier.cpp
index 7e10e4e1cee4d46107f5e6e996799812f135d2f5..c8aba14e8132e139f4dc4282d99dcb0cf3ba4b98 100644 (file)
@@ -956,6 +956,9 @@ void Verifier::visitDISubprogram(const DISubprogram &N) {
   Assert(!hasConflictingReferenceFlags(N.getFlags()), "invalid reference flags",
          &N);
 
+  if (N.isDefinition())
+    Assert(N.isDistinct(), "subprogram definitions must be distinct", &N);
+
   auto *F = N.getFunction();
   if (!F)
     return;