+2026-04-13 Bruno Haible <bruno@clisp.org>
+
+ stdbit-h: Port to Intel icpx C++ compiler.
+ * lib/stdbit.in.h: With the Intel icpx C++ compiler, include <stddef.h>
+ and <stdint.h>, and define the __STDC_ENDIAN_* macros.
+ * doc/posix-headers/stdbit.texi: Document the Intel icpx bug.
+
2026-04-13 Paul Eggert <eggert@cs.ucla.edu>
error-h: port to Intel OneAPI icx 2026.0.0
@item
This header file is missing on many non-C23 platforms:
glibc 2.38, macOS 14, FreeBSD 14.0, NetBSD 10.0, OpenBSD 7.5, AIX 7.3.1, HP-UX 11.31, Solaris 11.4, Cygwin 3.5.3, mingw, MSVC 17, Android 15.
+@item
+This header file does not define the necessary types
+with the Intel @code{icpx} C++ compiler.
@end itemize
Portability problems not fixed by Gnulib:
#error "Please include config.h first."
#endif
-#if !@HAVE_STDBIT_H@
+#if !@HAVE_STDBIT_H@ || (defined __cplusplus && defined __INTEL_CLANG_COMPILER)
/* Get size_t. */
# include <stddef.h>
#endif
|| (!defined __UINT_FAST64_TYPE__ \
&& (@GNULIB_STDC_MEMREVERSE8U@ \
|| @GNULIB_STDC_LOAD8@ || @GNULIB_STDC_LOAD8_ALIGNED@ \
- || @GNULIB_STDC_STORE8@ || @GNULIB_STDC_STORE8_ALIGNED@)))
+ || @GNULIB_STDC_STORE8@ || @GNULIB_STDC_STORE8_ALIGNED@)) \
+ || (defined __cplusplus && defined __INTEL_CLANG_COMPILER))
/* Get intN_t, uintN_t, int_leastN_t, uint_leastN_t. */
# include <stdint.h>
#endif
/* Some systems are only missing C2y features in stdbit.h. */
-#if !@HAVE_STDBIT_H@
+#if !@HAVE_STDBIT_H@ || (defined __cplusplus && defined __INTEL_CLANG_COMPILER)
/* ISO C 23 § 7.18.1 General */
# define __STDC_ENDIAN_NATIVE__ __STDC_ENDIAN_LITTLE__
#endif
+#endif
+
+
+/* Some systems are only missing C2y features in stdbit.h. */
+#if !@HAVE_STDBIT_H@
/* ISO C 23 § 7.18.3 Count Leading Zeros */