[all-commits] [llvm/llvm-project] c9b771: Keep inherited dllimport/export attrs for explicit...

Hans via All-commits all-commits at lists.llvm.org
Fri Oct 7 03:24:48 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c9b771b9fc2f17cccd9ccbf8f1d52e2642679b8a
      https://github.com/llvm/llvm-project/commit/c9b771b9fc2f17cccd9ccbf8f1d52e2642679b8a
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2022-10-07 (Fri, 07 Oct 2022)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/CodeGenCXX/dllexport-members.cpp
    M clang/test/CodeGenCXX/dllimport-members.cpp
    M clang/test/SemaCXX/dllexport.cpp
    M clang/test/SemaCXX/dllimport.cpp

  Log Message:
  -----------
  Keep inherited dllimport/export attrs for explicit specialization of class template member functions

Previously we were stripping these normally inherited attributes during
explicit specialization. However for class template member functions
(but not function templates), MSVC keeps the attribute.

This makes Clang match that behavior, and fixes GitHub issue #54717

Differential revision: https://reviews.llvm.org/D135154




More information about the All-commits mailing list