[all-commits] [llvm/llvm-project] f466f0: Disallow trivial_abi on a class if all copy and mo...

Akira Hatanaka via All-commits all-commits at lists.llvm.org
Wed Jun 10 14:12:44 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: f466f0beda59af1af182deb3cc8c006093d5a169
      https://github.com/llvm/llvm-project/commit/f466f0beda59af1af182deb3cc8c006093d5a169
  Author: Akira Hatanaka <ahatanaka at apple.com>
  Date:   2020-06-10 (Wed, 10 Jun 2020)

  Changed paths:
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/SemaObjCXX/attr-trivial-abi.mm

  Log Message:
  -----------
  Disallow trivial_abi on a class if all copy and move constructors are
deleted

Instead of forcing the class to be passed in registers, which was what
r350920 did, issue a warning and inform the user that the attribute
cannot be used.

For more background, see this discussion:
http://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20190128/259907.html

This fixes PR39683.

rdar://problem/47308221

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




More information about the All-commits mailing list