OSDN Git Service

2008-07-01 Andrew Haley <aph@redhat.com>
authoraph <aph@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Jul 2008 12:56:08 +0000 (12:56 +0000)
committeraph <aph@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Jul 2008 12:56:08 +0000 (12:56 +0000)
        * decl.c (finish_constructor_body): Don't set the return value of
        the constructor if the constructor is that of a Java type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@137317 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/cp/ChangeLog
gcc/cp/decl.c

index dd40a29..c9b04e3 100644 (file)
@@ -1,3 +1,8 @@
+2008-07-01  Andrew Haley  <aph@redhat.com>
+
+       * 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  <jakub@redhat.com>
 
        PR c++/36662
index 32be05c..c6ae93e 100644 (file)
@@ -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));