Commit Message
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.
Bye
---
2014-03-14 Stefan Liebler <stli@linux.vnet.ibm.com>
* sysdeps/s390/s390-32/Makefile
(test-xfail-ISO99/inttypes.h/conform): New Variable.
(test-xfail-ISO99/stdint.h/conform): Likewise.
(test-xfail-ISO11/inttypes.h/conform): Likewise.
(test-xfail-ISO11/stdint.h/conform): Likewise.
(test-xfail-XOPEN2K/inttypes.h/conform): Likewise.
(test-xfail-XOPEN2K/stdint.h/conform): Likewise.
(test-xfail-POSIX2008/inttypes.h/conform): Likewise.
(test-xfail-POSIX2008/stdint.h/conform): Likewise.
(test-xfail-XOPEN2K8/inttypes.h/conform): Likewise.
(test-xfail-XOPEN2K8/stdint.h/conform): Likewise.
---
\ No newline at end of file
Comments
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.)
@@ -9,3 +9,16 @@ CFLAGS-rtld.c += -Wno-uninitialized -Wno-unused
CFLAGS-dl-load.c += -Wno-unused
CFLAGS-dl-reloc.c += -Wno-unused
endif
+
+ifeq ($(subdir),conform)
+test-xfail-ISO99/inttypes.h/conform = yes
+test-xfail-ISO99/stdint.h/conform = yes
+test-xfail-ISO11/inttypes.h/conform = yes
+test-xfail-ISO11/stdint.h/conform = yes
+test-xfail-XOPEN2K/inttypes.h/conform = yes
+test-xfail-XOPEN2K/stdint.h/conform = yes
+test-xfail-POSIX2008/inttypes.h/conform = yes
+test-xfail-POSIX2008/stdint.h/conform = yes
+test-xfail-XOPEN2K8/inttypes.h/conform = yes
+test-xfail-XOPEN2K8/stdint.h/conform = yes
+endif