libstdc++: Fix 17_intro/names.cc on Solaris
commit88037d82d7646d8b04d5940f06e882b3778b7aec
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Tue, 26 Oct 2021 12:00:18 +0000 (26 14:00 +0200)
committerRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Tue, 26 Oct 2021 12:00:18 +0000 (26 14:00 +0200)
tree3e78a6cdc81afff370aa69bacd39b5188f6ca08d
parentde185d7176795b84f9d23f921442fddce8dfdd9a
libstdc++: Fix 17_intro/names.cc on Solaris

17_intro/names.cc and experimental/names.cc currently FAIL on Solaris

FAIL: 17_intro/names.cc (test for excess errors)
FAIL: experimental/names.cc (test for excess errors)

Excess errors:
/usr/include/sys/timespec_util.h:22: error: expected ')' before ';' token
/usr/include/stdlib.h:157: error: expected unqualified-id before '[' token
/usr/include/stdlib.h:157: error: expected ')' before '[' token

<sys/timespec_util.h> has

extern int timespeccompare(const struct timespec *l, const struct timespec *r);

while <stdlib.h> has

typedef struct drand48_data {
        unsigned int _initialised;
        unsigned short int x[3];
        unsigned short int a[3];
        unsigned int c;
        unsigned short lastx[3];
} drand48_data;

both of which are broken by defining r resp. x to ( in the testcase.

Fixed by undoing the defines.  Tested on i386-pc-solaris2.11,
sparc-sun-solaris2.11, and x86_64-pc-linux-gnu.

2021-10-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

libstdc++-v3:
* testsuite/17_intro/names.cc [__sun__] (r, x): Undef.
libstdc++-v3/testsuite/17_intro/names.cc