[committed] libstdc++: Implement C++23 <print> header [PR107760]

David Edelsohn dje.gcc@gmail.com
Sat Dec 16 21:24:13 GMT 2023


Hi, Jonathan

Unfortunately this patch broke bootstrap on AIX.

In file included from /tmp/GCC/gcc/include-fixed/wchar.h:64,

                 from
/tmp/GCC/powerpc-ibm-aix7.2.5.0/libstdc++-v3/include/cwchar:44,

                 from
/tmp/GCC/powerpc-ibm-aix7.2.5.0/libstdc++-v3/include/bits/postypes.h:40,

                 from
/tmp/GCC/powerpc-ibm-aix7.2.5.0/libstdc++-v3/include/bits/char_traits.h:42,

                 from
/tmp/GCC/powerpc-ibm-aix7.2.5.0/libstdc++-v3/include/string:42,

                 from
/nasfarm/edelsohn/src/src/libstdc++-v3/src/c++23/print.cc:26:

/nasfarm/edelsohn/src/src/libstdc++-v3/src/c++23/print.cc: In function
'void* std::__open_terminal(FILE*)':

/nasfarm/edelsohn/src/src/libstdc++-v3/src/c++23/print.cc:78:24: error:
expected id-expression before '(' token

   78 |         if (int fd = ::fileno(f); fd >= 0 && ::isatty(fd))

      |                        ^~~~~~

make[6]: *** [Makefile:747: print.lo] Error 1


AIX stdio.h defines fileno as a macro although there is a symbol in libc.

I think that print.cc at least needs to


#undef fileno


before the usage.


Thanks, David
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://gcc.gnu.org/pipermail/libstdc++/attachments/20231216/5ab4c1cb/attachment.htm>


More information about the Libstdc++ mailing list