]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Apply clang fix for assertion failure compiling multimedia/minitube
authorDimitry Andric <dim@FreeBSD.org>
Sat, 21 Aug 2021 21:03:37 +0000 (23:03 +0200)
committerDimitry Andric <dim@FreeBSD.org>
Thu, 26 Aug 2021 18:05:13 +0000 (20:05 +0200)
commitd7d2f810f8a9a21282803bf886705656f1af26c3
tree0400f90106a51068b2986beace5224bd5c719ad8
parent56a4e77d461e3d4ad9b95afe9bb847cb7573075e
Apply clang fix for assertion failure compiling multimedia/minitube

Merge commit 79f9cfbc21e0 from llvm git (by Yaxun (Sam) Liu):

  Do not merge LocalInstantiationScope for template specialization

  A lambda in a function template may be recursively instantiated. The recursive
  lambda will cause a lambda function instantiated multiple times, one inside another.
  The inner LocalInstantiationScope should not be marked as MergeWithParentScope
  since it already has references to locals properly substituted, otherwise it causes
  assertion due to the check for duplicate locals in merged LocalInstantiationScope.

  Reviewed by: Richard Smith

  Differential Revision: https://reviews.llvm.org/D98068

Reported by: yuri
PR: 257978

(cherry picked from commit efa485d5c390b745f53761da9159721243c48b7b)
contrib/llvm-project/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp