aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2012-07-18 21:36:41 -0400
committerJason Merrill <jason@gcc.gnu.org>2012-07-18 21:36:41 -0400
commit1936ace05cdfab4a25242e03c2d70921f00576cb (patch)
treeccf6f1cb8da3271037b9d020c70c079fd01e863e /gcc/cp
parent6968ffa4b7600bff74bd47ef8b2ddd26d46e3daf (diff)
downloadgcc-1936ace05cdfab4a25242e03c2d70921f00576cb.zip
gcc-1936ace05cdfab4a25242e03c2d70921f00576cb.tar.gz
gcc-1936ace05cdfab4a25242e03c2d70921f00576cb.tar.bz2
method.c (process_subob_fn): Make sure no_implicit_p is non-null before trying to store through it.
* method.c (process_subob_fn): Make sure no_implicit_p is non-null before trying to store through it. From-SVN: r189638
Diffstat (limited to 'gcc/cp')
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/method.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index ef4e8ac..8865db3 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2012-07-18 Jason Merrill <jason@redhat.com>
+
+ * method.c (process_subob_fn): Make sure no_implicit_p is non-null
+ before trying to store through it.
+
2012-07-17 Jason Merrill <jason@redhat.com>
PR c++/53995
diff --git a/gcc/cp/method.c b/gcc/cp/method.c
index b0e9ece..20a6c87 100644
--- a/gcc/cp/method.c
+++ b/gcc/cp/method.c
@@ -949,7 +949,7 @@ process_subob_fn (tree fn, bool move_p, tree *spec_p, bool *trivial_p,
/* Core 1402: A non-trivial copy op suppresses the implicit
declaration of the move ctor/op=. */
- if (move_p && !move_fn_p (fn) && !trivial_fn_p (fn))
+ if (no_implicit_p && move_p && !move_fn_p (fn) && !trivial_fn_p (fn))
*no_implicit_p = true;
if (constexpr_p && !DECL_DECLARED_CONSTEXPR_P (fn))