This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 03/14/2014 03:18 PM, Joseph S. Myers wrote:
On Fri, 14 Mar 2014, Stefan Liebler wrote:Hi, The conformance tests for ISO99, ISO11, XOPEN2K, POSIX2008 and XOPEN2K8 are failing on S390 for the inttypes.h and stdint.h headers. The problem is that on S390 size_t / __SIZE_TYPE__ are defined as long unsigned int, which has the same size as unsigned int (on S390). SIZE_MAX is defined in sysdeps/generic/stdint.h as 4294967295U. The conformance-test checks the type of SIZE_MAX, which should be promoted to __SIZE_TYPE__, but it is unsigned int.You should fix the header rather than marking these tests as expected to fail. (Of course, file a bug in Bugzilla before fixing it, as usual.) To avoid duplicating the whole header, maybe add a macro <bits/wordsize.h> can define such as __WORDSIZE32_SIZE_ULONG, and then test that macro in <stdint.h>. (You have two identical bits/wordsize.h files for S/390. Just one should suffice.)
I fixed the header as mentioned. The tests pass on s390/s390x.Unifying s390/s390-32/bits/wordsize.h and s390/s390-64/wordsize.h to s390/bits/wordsize.h leads to a build error:
gcc -shared -static-libgcc -Wl,-O1 -Wl,-z,defs -Wl,-dynamic-linker=/lib/ld.so.1 -Bglibc-build/csu/ -Wl,--version-script=glibc-build/libm.map -Wl,-soname=libm.so.6 -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both -Lglibc-build -Lglibc-build/math -Lglibc-build/elf -Lglibc-build/dlfcn -Lglibc-build/nss -Lglibc-build/nis -Lglibc-build/rt -Lglibc-build/resolv -Lglibc-build/crypt -Lglibc-build/nptl -Wl,-rpath-link=glibc-build:glibc-build/math:glibc-build/elf:glibc-build/dlfcn:glibc-build/nss:glibc-build/nis:glibc-build/rt:glibc-build/resolv:glibc-build/crypt:glibc-build/nptl -o glibc-build/math/libm.so -T glibc-build/shlib.lds glibc-build/csu/abi-note.o -Wl,--whole-archive glibc-build/math/libm_pic.a -Wl,--no-whole-archive glibc-build/elf/interp.os -Wl,--start-group glibc-build/libc.so glibc-build/libc_nonshared.a -Wl,--as-needed glibc-build/elf/ld.so -Wl,--no-as-needed -Wl,--end-group
glibc-build/math/libm_pic.a(s_nanl.os): In function `nanl@@GLIBC_2.4': s_nanl.c:(.text+0xb4): undefined reference to `strtold' collect2: error: ld returned 1 exit status make[2]: *** [glibc-build/math/libm.so] Error 1 Bye. --- 2014-03-18 Stefan Liebler <stli@linux.vnet.ibm.com> [BZ #16712] * sysdeps/s390/s390-32/bits/wordsize.h (__WORDSIZE32_SIZE_ULONG): New define. * sysdeps/s390/s390-64/bits/wordsize.h (__WORDSIZE32_SIZE_ULONG): Likewise. * sysdeps/generic/stdint.h (SIZE_MAX): Define as UL if __WORDSIZE32_SIZE_ULONG. ---
Attachment:
patchglibcSIZE_MAX_ASUL
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |