diff options
author | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-06-29 14:34:39 +0000 |
---|---|---|
committer | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-06-29 14:34:39 +0000 |
commit | 614af25c9673877fc019eacc088bafe256fc2891 (patch) | |
tree | eddc02ef3cf46bce04652e8616df117283a29d25 /gcc/cp/class.c | |
parent | 09426ab689b8dc34c447ee952496c2f60b710d80 (diff) | |
download | gcc-614af25c9673877fc019eacc088bafe256fc2891.tar.gz |
* class.c (finalize_literal_type_property): Update conditions.
* method.c (defaulted_late_check): Set TYPE_HAS_CONSTEXPR_CTOR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175644 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/class.c')
-rw-r--r-- | gcc/cp/class.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/gcc/cp/class.c b/gcc/cp/class.c index 9e387a6923e..9054b5caa18 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -4566,12 +4566,10 @@ finalize_literal_type_property (tree t) tree fn; if (cxx_dialect < cxx0x - || TYPE_HAS_NONTRIVIAL_DESTRUCTOR (t) - /* FIXME These constraints seem unnecessary; remove from standard. - || !TYPE_HAS_TRIVIAL_COPY_CTOR (t) - || TYPE_HAS_COMPLEX_MOVE_CTOR (t)*/ ) + || TYPE_HAS_NONTRIVIAL_DESTRUCTOR (t)) CLASSTYPE_LITERAL_P (t) = false; else if (CLASSTYPE_LITERAL_P (t) && !TYPE_HAS_TRIVIAL_DFLT (t) + && CLASSTYPE_NON_AGGREGATE (t) && !TYPE_HAS_CONSTEXPR_CTOR (t)) CLASSTYPE_LITERAL_P (t) = false; |