libstdc++: Fix names.cc test failures on Windows
authorJonathan Wakely <jwakely@redhat.com>
Wed, 25 Aug 2021 21:27:22 +0000 (22:27 +0100)
committerJonathan Wakely <jwakely@redhat.com>
Wed, 25 Aug 2021 21:29:27 +0000 (22:29 +0100)
The Windows CRT headers define structs with members called f, x, y etc
so don't check those. There are also lots of unnecessary function
parameters in mingw headers using non-reserved names, e.g.

<time.h> uses p and z as parameters of mingw_gettimeofday
<inttypes.h> uses j as a parameter of imaxabs
<pthread.h> uses l, o and func as parameter names

Those should be fixed in the headers instead.

Signed-off-by: Jonathan Wakely <jwakely@redhat.com>
libstdc++-v3/ChangeLog:

* testsuite/17_intro/names.cc: Adjust for Windows.

libstdc++-v3/testsuite/17_intro/names.cc

index 3cbe0d2..b0cc21d 100644 (file)
 
 #endif // __VXWORKS__
 
+#ifdef _WIN32
+#undef Value
+// <stdlib.h> defines _CRT_FLOAT::f
+#undef f
+// <stdlib.h> defines _CRT_DOUBLE::x and _LONGDOUBLE::x
+#undef x
+// <math.h> defines _complex::x and _complex::y
+#undef y
+#endif
+
 #include <bits/stdc++.h>