aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenModule.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2017-06-01 00:28:16 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2017-06-01 00:28:16 +0000
commitf03e9084c195fe9a495b3de0761710d47e9dfe99 (patch)
treef592550f798201bc78beb9dd111f58079d1d9fad /clang/lib/CodeGen/CodeGenModule.cpp
parent32c5e809beae6c184c644abfd205d43f6bdd8b0d (diff)
downloadllvm-f03e9084c195fe9a495b3de0761710d47e9dfe99.zip
llvm-f03e9084c195fe9a495b3de0761710d47e9dfe99.tar.gz
llvm-f03e9084c195fe9a495b3de0761710d47e9dfe99.tar.bz2
PR33232: implement support for MSVC's __is_trivially_destructible trait.
Unlike the GCC-compatible __has_trivial_destructor trait, this one computes the right answer rather than performing the quirky set of checks described in GCC's documentation (https://gcc.gnu.org/onlinedocs/gcc/Type-Traits.html). MSVC also has a __has_trivial_destructor trait which is the same as its (and now Clang's) __is_trivially_destructible trait; we might want to consider changing the behavior of __has_trivial_destructor if we're targeting an MSVC platform, but I'm not doing so for now. While implementing this I found that we were incorrectly rejecting __is_destructible queries on arrays of unknown bound of incomplete types; that too is fixed, and I've added similar tests for other traits for good measure. llvm-svn: 304376
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions