This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
PATCH: Fix 3 g++.old-deja tests on Solaris 11
- From: Rainer Orth <ro at CeBiTec dot Uni-Bielefeld dot DE>
- To: gcc-patches at gcc dot gnu dot org
- Cc: Janis Johnson <janis187 at us dot ibm dot com>
- Date: Mon, 25 Jan 2010 12:39:13 +0100
- Subject: PATCH: Fix 3 g++.old-deja tests on Solaris 11
Three g++.old-deja tests fail on Solaris 11, unlike Solaris 10:
FAIL: g++.old-deja/g++.mike/eh16.C (test for excess errors)
FAIL: g++.old-deja/g++.mike/eh17.C (test for excess errors)
FAIL: g++.old-deja/g++.mike/p5571.C (test for excess errors)
This is due to linker warnings like the following:
FAIL: g++.old-deja/g++.mike/eh16.C (test for excess errors)
Excess errors:
ld: warning: symbol `err' has differing types:
(file /var/tmp//ccHpaGif.o type=OBJT; file /usr/lib/libc.so type=FUNC);
/var/tmp//ccHpaGif.o definition taken
ld: warning: symbol `err' has differing types:
(file /var/tmp//ccHpaGif.o type=OBJT; file /usr/lib/libc.so type=FUNC);
Solaris 11 introduced the BSD err(3C) function into libc, among a couple
of others, while those tests have global variables named err, too.
Fixed by renaming the variables to e instead, which is already used
throughout the testsuite without problems.
Tested on sparc-sun-solaris2.11 and i386-pc-solaris2.11.
Ok for mainline?
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
2010-01-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* g++.old-deja/g++.mike/eh16.C: Rename err to e.
* g++.old-deja/g++.mike/eh17.C: Likewise.
* g++.old-deja/g++.mike/p5571.C: Likewise.
diff -r 580de06034a2 gcc/testsuite/g++.old-deja/g++.mike/eh16.C
--- a/gcc/testsuite/g++.old-deja/g++.mike/eh16.C Wed Jan 20 14:17:00 2010 +0000
+++ b/gcc/testsuite/g++.old-deja/g++.mike/eh16.C Mon Jan 25 12:38:35 2010 +0100
@@ -1,11 +1,11 @@
// { dg-do run { xfail sparc64-*-elf arm-*-pe } }
// { dg-options "-fexceptions" }
-int err = 1;
+int e = 1;
struct A {
~A() {
- --err;
+ --e;
}
};
@@ -20,7 +20,7 @@
try {
B b;
} catch (...) {
- return err;
+ return e;
}
return 1;
}
diff -r 580de06034a2 gcc/testsuite/g++.old-deja/g++.mike/eh17.C
--- a/gcc/testsuite/g++.old-deja/g++.mike/eh17.C Wed Jan 20 14:17:00 2010 +0000
+++ b/gcc/testsuite/g++.old-deja/g++.mike/eh17.C Mon Jan 25 12:38:35 2010 +0100
@@ -1,11 +1,11 @@
// { dg-do run { xfail sparc64-*-elf arm-*-pe } }
// { dg-options "-fexceptions" }
-int err = 1;
+int e = 1;
struct A {
~A() {
- --err;
+ --e;
}
};
@@ -19,7 +19,7 @@
try {
B b;
} catch (...) {
- return err;
+ return e;
}
return 1;
}
diff -r 580de06034a2 gcc/testsuite/g++.old-deja/g++.mike/p5571.C
--- a/gcc/testsuite/g++.old-deja/g++.mike/p5571.C Wed Jan 20 14:17:00 2010 +0000
+++ b/gcc/testsuite/g++.old-deja/g++.mike/p5571.C Mon Jan 25 12:38:35 2010 +0100
@@ -1,7 +1,7 @@
// { dg-do run }
// prms-id: 5571
-int err = 0;
+int e = 0;
void *vp = 0;
class ParentOne {
@@ -36,7 +36,7 @@
else
{
if (vp != (void *)this)
- ++err;
+ ++e;
}
}
void LocalPrintThis() {
@@ -45,7 +45,7 @@
else
{
if (vp != (void *)this)
- ++err;
+ ++e;
}
PrintThis();
}
@@ -55,7 +55,7 @@
else
{
if (vp != (void *)this)
- ++err;
+ ++e;
}
Student::PrintThis();
}
@@ -67,5 +67,5 @@
o.ForcedPrintThis();
Child* pX = &o;
pX->PrintThis();
- return err;
+ return e;
}