To the reviewers, I tried doing the following for the other cases:

    @@ -1888,7 +1893,11 @@ Decl 
*TemplateDeclInstantiator::VisitNonTypeTemplateParmDecl(
       if (Invalid)
         Param->setInvalidDecl();

    -  Param->setDefaultArgument(D->getDefaultArgument(), false);
    +  if (D->hasDefaultArgument()) {
    +    ExprResult Value = SemaRef.SubstExpr(D->getDefaultArgument(), 
TemplateArgs);
    +    if (!Value.isInvalid())
    +      Param->setDefaultArgument(Value.get(), false);
    +  }

       // Introduce this template parameter's instantiation into the 
instantiation

  However, doing this resulted in crashes as it seemed like we would be looking 
at arguments from the wrong depth.

http://llvm-reviews.chandlerc.com/D1507
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to