From 298b7d2bc5602026656853b7ad6a8bdaa87a29a1 Mon Sep 17 00:00:00 2001 From: Andrew Haley Date: Tue, 1 Jul 2008 12:56:08 +0000 Subject: [PATCH] decl.c (finish_constructor_body): Don't set the return value of the constructor if... 2008-07-01 Andrew Haley * decl.c (finish_constructor_body): Don't set the return value of the constructor if the constructor is that of a Java type. From-SVN: r137317 --- gcc/cp/ChangeLog | 5 +++++ gcc/cp/decl.c | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index dd40a292005..c9b04e3e2f2 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2008-07-01 Andrew Haley + + * decl.c (finish_constructor_body): Don't set the return value of + the constructor if the constructor is that of a Java type. + 2008-06-30 Jakub Jelinek PR c++/36662 diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 32be05cc7c3..c6ae93e6104 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -11606,7 +11606,8 @@ finish_constructor_body (void) tree val; tree exprstmt; - if (targetm.cxx.cdtor_returns_this ()) + if (targetm.cxx.cdtor_returns_this () + && (! TYPE_FOR_JAVA (current_class_type))) { /* Any return from a constructor will end up here. */ add_stmt (build_stmt (LABEL_EXPR, cdtor_label)); -- 2.30.2