diff options
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/method.c | 2 |
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)) |