* optimize.c (maybe_thunk_body): Build a RETURN_EXPR for
cdtor_returns_this case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207271
138bc75d-0d04-0410-961f-
82ee72b054a4
2014-01-29 Jason Merrill <jason@redhat.com>
+ PR c++/59916
+ * optimize.c (maybe_thunk_body): Build a RETURN_EXPR for
+ cdtor_returns_this case.
+
PR c++/59315
* decl.c (cxx_maybe_build_cleanup): Call mark_used.
clone_result = DECL_RESULT (clone);
modify = build2 (MODIFY_EXPR, TREE_TYPE (clone_result),
clone_result, call);
+ modify = build1 (RETURN_EXPR, void_type_node, modify);
add_stmt (modify);
- BLOCK_VARS (block) = clone_result;
}
else
{
--- /dev/null
+// PR c++/59916
+// { dg-options "-Os -Wreturn-type" }
+
+class A {};
+
+struct B : virtual public A
+{
+ B();
+ virtual ~B();
+};
+
+B::B() {}
+B::~B() {}