diff options
author | Chandler Carruth <chandlerc@gmail.com> | 2011-04-29 09:46:08 +0000 |
---|---|---|
committer | Chandler Carruth <chandlerc@gmail.com> | 2011-04-29 09:46:08 +0000 |
commit | 43fa33b4bedc28d2faa17d678ad1f40eb42817a1 (patch) | |
tree | 96f09e32e9af7cc852bb8323b7bfac0067482b77 /include/clang/AST/Type.h | |
parent | a343a415035aba553a5c21fad8fba6a6db83e0f9 (diff) |
Relax the non-POD memset warning to use the less restrictive C++11
definition of POD. Specifically, this allows certain non-aggregate
types due to their data members being private.
The representation of C++11 POD testing is pretty gross. Any suggestions
for improvements there are welcome. Especially the name
'isCXX11PODType()' seems truly unfortunate.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130492 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/AST/Type.h')
-rw-r--r-- | include/clang/AST/Type.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/clang/AST/Type.h b/include/clang/AST/Type.h index edbdaa1848..4254f32e5f 100644 --- a/include/clang/AST/Type.h +++ b/include/clang/AST/Type.h @@ -1179,6 +1179,12 @@ public: /// (C++0x [basic.types]p9) bool isTrivialType() const; + /// isCXX11PODType() - Return true if this is a POD type according to the + /// more relaxed rules of the C++11 standard, regardless of the current + /// compilation's language. + /// (C++0x [basic.types]p9) + bool isCXX11PODType() const; + /// Helper methods to distinguish type categories. All type predicates /// operate on the canonical type, ignoring typedefs and qualifiers. |