aboutsummaryrefslogtreecommitdiff
path: root/gold/testsuite/initpri1.c
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2009-09-27 05:20:03 +0000
committerIan Lance Taylor <ian@airs.com>2009-09-27 05:20:03 +0000
commita6a22b839b6c48b1328b0471e12fc164ce07a446 (patch)
tree4fdc845cc628a888b712d57d9055542835c4d911 /gold/testsuite/initpri1.c
parent5d40bb85448aeaf7aaa5f9c13e0aafc6d506c296 (diff)
downloadgdb-a6a22b839b6c48b1328b0471e12fc164ce07a446.zip
gdb-a6a22b839b6c48b1328b0471e12fc164ce07a446.tar.gz
gdb-a6a22b839b6c48b1328b0471e12fc164ce07a446.tar.bz2
* testsuite/initpri1.c: Don't try to use constructor priorities if
compiling with gcc before 4.3.
Diffstat (limited to 'gold/testsuite/initpri1.c')
-rw-r--r--gold/testsuite/initpri1.c20
1 files changed, 15 insertions, 5 deletions
diff --git a/gold/testsuite/initpri1.c b/gold/testsuite/initpri1.c
index 28c6c91..1c5252d 100644
--- a/gold/testsuite/initpri1.c
+++ b/gold/testsuite/initpri1.c
@@ -1,6 +1,6 @@
/* initpri1.c -- test constructor priorities.
- Copyright 2007, 2008 Free Software Foundation, Inc.
+ Copyright 2007, 2008, 2009 Free Software Foundation, Inc.
Copied from the gcc testsuite, where the test was contributed by
Mark Mitchell <mark@codesourcery.com>.
@@ -19,14 +19,16 @@
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
- MA 02110-1301, USA.
+ MA 02110-1301, USA. */
- This is a test of a common symbol in the main program and a
- versioned symbol in a shared library. The common symbol in the
- main program should override the shared library symbol. */
+/* This tests that the linker handles constructor and destructor
+ priorities correctly. */
#include <stdlib.h>
+/* Constructor priorities in attributes were added in gcc 4.3. */
+#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 2)
+
int i;
int j;
@@ -93,3 +95,11 @@ int main (void) {
abort ();
return 0;
}
+
+#else /* !(__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 2)) */
+
+int main (void) {
+ exit (0);
+}
+
+#endif /* !(__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 2)) */