]> granicus.if.org Git - clang/commitdiff
Fix a minor thinko that leads to a crash if PatternDecl is null but
authorSean Hunt <scshunt@csclub.uwaterloo.ca>
Wed, 25 May 2011 22:02:25 +0000 (22:02 +0000)
committerSean Hunt <scshunt@csclub.uwaterloo.ca>
Wed, 25 May 2011 22:02:25 +0000 (22:02 +0000)
Pattern is not. Thanks Nick for catching this!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132089 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Sema/SemaTemplateInstantiateDecl.cpp

index 701493cf988b69088e402162c8e273501f43e192..3c0d34bd0d8bf20ab2bdb8c95a25284172c01918 100644 (file)
@@ -2318,11 +2318,12 @@ void Sema::InstantiateFunctionDefinition(SourceLocation PointOfInstantiation,
   // Find the function body that we'll be substituting.
   const FunctionDecl *PatternDecl = Function->getTemplateInstantiationPattern();
   Stmt *Pattern = 0;
-  if (PatternDecl)
+  if (PatternDecl) {
     Pattern = PatternDecl->getBody(PatternDecl);
-  if (!Pattern)
-    // Try to find a defaulted definition
-    PatternDecl->isDefined(PatternDecl);
+    if (!Pattern)
+      // Try to find a defaulted definition
+      PatternDecl->isDefined(PatternDecl);
+  }
 
   // Postpone late parsed template instantiations.
   if (PatternDecl && PatternDecl->isLateTemplateParsed() &&