martong added a comment.

@rsmith I have moved the check into `TransformTypedefType`. We do not add the 
typedef to the `MaterializedTypedefs` list if it's context is dependent because 
later we set the deduction guide as the DC for all typedefs in the list:

  for (auto *TD : MaterializedTypedefs)
    TD->setDeclContext(Guide);

Also, we have to push the original TypedefDecl to the `TypeLocBuilder`, 
otherwise an assertion would fire:

  llvm-project/clang/lib/Sema/TypeLocBuilder.h:103: clang::TypeSourceInfo* 
clang::TypeLocBuilder::getTypeSourceInfo(clang::ASTContext&, clang::QualType): 
Assertion `T == LastTy && "type doesn't match last type pushed!"' failed.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D92101/new/

https://reviews.llvm.org/D92101

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to