[all-commits] [llvm/llvm-project] c2cb61: Fix mangling of substitutions for template-prefixes.

Richard Smith via All-commits all-commits at lists.llvm.org
Tue Nov 24 16:30:01 PST 2020


  Branch: refs/heads/temp-test-main
  Home:   https://github.com/llvm/llvm-project
  Commit: c2cb61bed3652126278b4a738e367f524e040ccc
      https://github.com/llvm/llvm-project/commit/c2cb61bed3652126278b4a738e367f524e040ccc
  Author: Richard Smith <richard at metafoo.co.uk>
  Date:   2020-11-24 (Tue, 24 Nov 2020)

  Changed paths:
    M clang/include/clang/Basic/LangOptions.h
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/test/CodeGenCXX/clang-abi-compat.cpp
    M clang/test/CodeGenCXX/mangle-template.cpp

  Log Message:
  -----------
  Fix mangling of substitutions for template-prefixes.

Previously we only considered using a substitution for a template-name
after already having mangled its prefix, so we'd produce nonsense
manglings like NS3_S4_IiEE where we should simply produce NS4_IiEE.

This is not ABI-compatible with previous Clang versions, and the old
behavior is restored by -fclang-abi-compat=11.0 or earlier.




More information about the All-commits mailing list