summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoriains <iains@138bc75d-0d04-0410-961f-82ee72b054a4>2010-04-07 16:20:08 +0000
committeriains <iains@138bc75d-0d04-0410-961f-82ee72b054a4>2010-04-07 16:20:08 +0000
commit1ecc1105cbfe526cf44c6f393e588ba0d7418cd7 (patch)
treefdbf6b522864c72c3e2c50dfa1d1d23362658f66
parent8b25863e71a1ac1600d931290fb3d36c7c30671a (diff)
downloadppe42-gcc-1ecc1105cbfe526cf44c6f393e588ba0d7418cd7.tar.gz
ppe42-gcc-1ecc1105cbfe526cf44c6f393e588ba0d7418cd7.zip
fix PR23716
2010-04-07 Iain Sandoe <iains@gcc.gnu.org> PR objc++/23716 * objc-act.c (build_module_initializer_routine): Make the argument to objc_start_function NULL_TREE when compiling ObjC++. 2010-04-07 Iain Sandoe <iains@gcc.gnu.org> PR objc++/23716 * obj-c++.dg/comp-types-10.mm: Remove XFAIL. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158076 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/objc/ChangeLog6
-rw-r--r--gcc/objc/objc-act.c8
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/obj-c++.dg/comp-types-10.mm1
4 files changed, 18 insertions, 2 deletions
diff --git a/gcc/objc/ChangeLog b/gcc/objc/ChangeLog
index 35fed822796..472d4aa7ac6 100644
--- a/gcc/objc/ChangeLog
+++ b/gcc/objc/ChangeLog
@@ -1,3 +1,9 @@
+2010-04-07 Iain Sandoe <iains@gcc.gnu.org>
+
+ PR objc++/23716
+ * objc-act.c (build_module_initializer_routine): Make the argument
+ to objc_start_function NULL_TREE when compiling ObjC++.
+
2010-02-18 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
Mike Stump <mikestump@comcast.net>
diff --git a/gcc/objc/objc-act.c b/gcc/objc/objc-act.c
index 10cc9bce306..7e3a2d86115 100644
--- a/gcc/objc/objc-act.c
+++ b/gcc/objc/objc-act.c
@@ -2391,11 +2391,17 @@ build_module_initializer_routine (void)
objc_push_parm (build_decl (input_location,
PARM_DECL, NULL_TREE, void_type_node));
+#ifdef OBJCPLUS
+ objc_start_function (get_identifier (TAG_GNUINIT),
+ build_function_type (void_type_node,
+ OBJC_VOID_AT_END),
+ NULL_TREE, NULL_TREE);
+#else
objc_start_function (get_identifier (TAG_GNUINIT),
build_function_type (void_type_node,
OBJC_VOID_AT_END),
NULL_TREE, objc_get_parm_info (0));
-
+#endif
body = c_begin_compound_stmt (true);
add_stmt (build_function_call
(input_location,
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 32c64b329e3..a074ef23d7c 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2010-04-07 Iain Sandoe <iains@gcc.gnu.org>
+
+ PR objc++/23716
+ * obj-c++.dg/comp-types-10.mm: Remove XFAIL.
+
2010-04-07 Jason Merrill <jason@redhat.com>
* g++.dg/template/dr408.C: New.
diff --git a/gcc/testsuite/obj-c++.dg/comp-types-10.mm b/gcc/testsuite/obj-c++.dg/comp-types-10.mm
index b4da5ddd643..c7f0cb635c7 100644
--- a/gcc/testsuite/obj-c++.dg/comp-types-10.mm
+++ b/gcc/testsuite/obj-c++.dg/comp-types-10.mm
@@ -1,6 +1,5 @@
/* Yet another mysterious gimplifier crasher. */
/* { dg-do compile } */
-/* { dg-xfail-if "PR23716" { ! *-*-darwin* } { "*" } { "" } } */
/* { dg-prune-output ".*internal compiler error.*" } */
/* { dg-options "-O3" } */
OpenPOWER on IntegriCloud