[all-commits] [llvm/llvm-project] 4544c2: Recover more gracefully from stack exhaustion duri...

Richard Smith via All-commits all-commits at lists.llvm.org
Wed Jul 8 13:09:06 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 4544c2d95ad0217e1f28ddd84253cd09a91148c0
      https://github.com/llvm/llvm-project/commit/4544c2d95ad0217e1f28ddd84253cd09a91148c0
  Author: Richard Smith <richard at metafoo.co.uk>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/test/SemaTemplate/stack-exhaustion.cpp

  Log Message:
  -----------
  Recover more gracefully from stack exhaustion during template argument
deduction.

Template argument deduction can trigger substitution, both with
explicitly-specified template arguments and with deduced template
arguments in various ways. We previously had no check for stack
exhaustion along some of those codepaths, making it fairly easy to crash
clang with a template resulting in a substitution that referred back to
that same template. We should now produce a proper diagnostic for such
cases rather than crashing.




More information about the All-commits mailing list