[all-commits] [llvm/llvm-project] 9f9373: Distinguish between template parameter substitutio...

Richard Smith via All-commits all-commits at lists.llvm.org
Mon Jun 22 19:35:18 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 9f9373f86d2d13b8c9f106863ce70ace69abf388
      https://github.com/llvm/llvm-project/commit/9f9373f86d2d13b8c9f106863ce70ace69abf388
  Author: Richard Smith <richard at metafoo.co.uk>
  Date:   2020-06-22 (Mon, 22 Jun 2020)

  Changed paths:
    M clang/include/clang/Sema/Template.h
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/SemaTemplate/deduction-guide.cpp

  Log Message:
  -----------
  Distinguish between template parameter substitutions that are forming
specializations and those that are done as part of rewrites.

Do not create Subst* nodes in the latter. We previously had a hybrid of
these two behaviors where we would only create some Subst* nodes but not
others during deduction guide rewrites.

No functional change intended, but the resulting ASTs are more
principled.




More information about the All-commits mailing list