[PATCH] D44913: [ObjC] Enable using C++ triviality type traits for non-trivial C structs

Akira Hatanaka via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Mar 26 16:28:15 PDT 2018


ahatanak created this revision.
ahatanak added reviewers: rjmccall, doug.gregor, rsmith.

r326307 and r327870 made changes that allowed C structs to have __strong and __weak fields in ARC and be non-trivial. This patch make changes that allow using the following type traits for non-trivial C structs:

__has_trivial_assign
__has_trivial_move_assign
__has_trivial_copy
__has_trivial_move_constructor
__has_trivial_constructor
__has_trivial_destructor


Repository:
  rC Clang

https://reviews.llvm.org/D44913

Files:
  include/clang/Basic/TokenKinds.def
  lib/Sema/SemaExprCXX.cpp
  test/SemaObjC/non-trivial-struct-traits.m

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D44913.139862.patch
Type: text/x-patch
Size: 5434 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20180326/da2da696/attachment-0001.bin>


More information about the cfe-commits mailing list