[Lsb-messages] /var/www/bzr/lsb/devel/lsbspec r3814: add errata for bug 3267

Mats Wichmann mats at linuxfoundation.org
Fri May 25 13:58:02 UTC 2012


------------------------------------------------------------
revno: 3814
committer: Mats Wichmann <mats at linuxfoundation.org>
branch nick: lsbspec
timestamp: Fri 2012-05-25 07:58:02 -0600
message:
  add errata for bug 3267
added:
  errata/errata_41/3267-libc.txt
-------------- next part --------------
=== added file 'errata/errata_41/3267-libc.txt'
--- a/errata/errata_41/3267-libc.txt	1970-01-01 00:00:00 +0000
+++ b/errata/errata_41/3267-libc.txt	2012-05-25 13:58:02 +0000
@@ -0,0 +1,232 @@
+Specification: LSB Core generic
+Specification: LSB Core IA32, IA64, PPC32, PPC64, S390, S390X, AMD64
+Edition of Specification: 4.1
+Type: Error
+Status: Unapproved
+Bug reference: http://bugs.linuxbase.org/show_bug.cgi?id=3267
+
+Rationale: The macros for determining print and scan widths specified
+in ISO C99 were omitted.  In addition, the typedef for imaxdiv_t was
+definied unconditionally, when it is architecture word-side dependent.
+
+
+In LSB Core generic:
+
+In 12.4. Data Definitions for libc
+12.4.20. inttypes.h
+
+Delete:
+
+typedef lldiv_t imaxdiv_t;
+
+Add:
+
+#if !defined __cplusplus || defined __STDC_FORMAT_MACROS
+#define PRId16  "d"
+#define PRId32  "d"
+#define PRId8   "d"
+#define PRIdFAST8       "d"
+#define PRIdLEAST16     "d"
+#define PRIdLEAST32     "d"
+#define PRIdLEAST8      "d"
+#define SCNd32  "d"
+#define SCNdLEAST32     "d"
+#define SCNd16  "hd"
+#define SCNdLEAST16     "hd"
+#define SCNd8   "hhd"
+#define SCNdFAST8       "hhd"
+#define SCNdLEAST8      "hhd"
+#define SCNi8   "hhi"
+#define SCNiFAST8       "hhi"
+#define SCNiLEAST8      "hhi"
+#define SCNo8   "hho"
+#define SCNoFAST8       "hho"
+#define SCNoLEAST8      "hho"
+#define SCNu8   "hhu"
+#define SCNuFAST8       "hhu"
+#define SCNuLEAST8      "hhu"
+#define SCNx8   "hhx"
+#define SCNxFAST8       "hhx"
+#define SCNxLEAST8      "hhx"
+#define SCNi16  "hi"
+#define SCNiLEAST16     "hi"
+#define SCNo16  "ho"
+#define SCNoLEAST16     "ho"
+#define SCNu16  "hu"
+#define SCNuLEAST16     "hu"
+#define SCNx16  "hx"
+#define SCNxLEAST16     "hx"
+#define PRIi16  "i"
+#define PRIi32  "i"
+#define PRIi8   "i"
+#define PRIiFAST8       "i"
+#define PRIiLEAST16     "i"
+#define PRIiLEAST32     "i"
+#define PRIiLEAST8      "i"
+#define SCNi32  "i"
+#define SCNiLEAST32     "i"
+#define PRIo16  "o"
+#define PRIo32  "o"
+#define PRIo8   "o"
+#define PRIoFAST8       "o"
+#define PRIoLEAST16     "o"
+#define PRIoLEAST32     "o"
+#define PRIoLEAST8      "o"
+#define SCNo32  "o"
+#define SCNoLEAST32     "o"
+#define PRIu16  "u"
+#define PRIu32  "u"
+#define PRIu8   "u"
+#define PRIuFAST8       "u"
+#define PRIuLEAST16     "u"
+#define PRIuLEAST32     "u"
+#define PRIuLEAST8      "u"
+#define SCNu32  "u"
+#define SCNuLEAST32     "u"
+#define PRIX16  "X"
+#define PRIX32  "X"
+#define PRIX8   "X"
+#define PRIXFAST8       "X"
+#define PRIXLEAST16     "X"
+#define PRIXLEAST32     "X"
+#define PRIXLEAST8      "X"
+#define PRIx16  "x"
+#define PRIx32  "x"
+#define PRIx8   "x"
+#define PRIxFAST8       "x"
+#define PRIxLEAST16     "x"
+#define PRIxLEAST32     "x"
+#define PRIxLEAST8      "x"
+#define SCNx32  "x"
+#define SCNxLEAST32     "x"
+#define PRId64  __PRI64_PREFIX"d"
+#define PRIdFAST64      __PRI64_PREFIX"d"
+#define PRIdLEAST64     __PRI64_PREFIX"d"
+#define PRIdMAX __PRI64_PREFIX"d"
+#define SCNd64  __PRI64_PREFIX"d"
+#define SCNdFAST64      __PRI64_PREFIX"d"
+#define SCNdLEAST64     __PRI64_PREFIX"d"
+#define SCNdMAX __PRI64_PREFIX"d"
+#define PRIi64  __PRI64_PREFIX"i"
+#define PRIiFAST64      __PRI64_PREFIX"i"
+#define PRIiLEAST64     __PRI64_PREFIX"i"
+#define PRIiMAX __PRI64_PREFIX"i"
+#define SCNi64  __PRI64_PREFIX"i"
+#define SCNiFAST64      __PRI64_PREFIX"i"
+#define SCNiLEAST64     __PRI64_PREFIX"i"
+#define SCNiMAX __PRI64_PREFIX"i"
+#define PRIo64  __PRI64_PREFIX"o"
+#define PRIoFAST64      __PRI64_PREFIX"o"
+#define PRIoLEAST64     __PRI64_PREFIX"o"
+#define PRIoMAX __PRI64_PREFIX"o"
+#define SCNo64  __PRI64_PREFIX"o"
+#define SCNoFAST64      __PRI64_PREFIX"o"
+#define SCNoLEAST64     __PRI64_PREFIX"o"
+#define SCNoMAX __PRI64_PREFIX"o"
+#define PRIu64  __PRI64_PREFIX"u"
+#define PRIuFAST64      __PRI64_PREFIX"u"
+#define PRIuLEAST64     __PRI64_PREFIX"u"
+#define PRIuMAX __PRI64_PREFIX"u"
+#define SCNu64  __PRI64_PREFIX"u"
+#define SCNuFAST64      __PRI64_PREFIX"u"
+#define SCNuLEAST64     __PRI64_PREFIX"u"
+#define SCNuMAX __PRI64_PREFIX"u"
+#define PRIX64  __PRI64_PREFIX"X"
+#define PRIXFAST64      __PRI64_PREFIX"X"
+#define PRIXLEAST64     __PRI64_PREFIX"X"
+#define PRIXMAX __PRI64_PREFIX"X"
+#define PRIx64  __PRI64_PREFIX"x"
+#define PRIxFAST64      __PRI64_PREFIX"x"
+#define PRIxLEAST64     __PRI64_PREFIX"x"
+#define PRIxMAX __PRI64_PREFIX"x"
+#define SCNx64  __PRI64_PREFIX"x"
+#define SCNxFAST64      __PRI64_PREFIX"x"
+#define SCNxLEAST64     __PRI64_PREFIX"x"
+#define SCNxMAX __PRI64_PREFIX"x"
+#define PRIdFAST16      __PRIPTR_PREFIX"d"
+#define PRIdFAST32      __PRIPTR_PREFIX"d"
+#define PRIdPTR __PRIPTR_PREFIX"d"
+#define SCNdFAST16      __PRIPTR_PREFIX"d"
+#define SCNdFAST32      __PRIPTR_PREFIX"d"
+#define SCNdPTR __PRIPTR_PREFIX"d"
+#define PRIiFAST16      __PRIPTR_PREFIX"i"
+#define PRIiFAST32      __PRIPTR_PREFIX"i"
+#define PRIiPTR __PRIPTR_PREFIX"i"
+#define SCNiFAST16      __PRIPTR_PREFIX"i"
+#define SCNiFAST32      __PRIPTR_PREFIX"i"
+#define SCNiPTR __PRIPTR_PREFIX"i"
+#define PRIoFAST16      __PRIPTR_PREFIX"o"
+#define PRIoFAST32      __PRIPTR_PREFIX"o"
+#define PRIoPTR __PRIPTR_PREFIX"o"
+#define SCNoFAST16      __PRIPTR_PREFIX"o"
+#define SCNoFAST32      __PRIPTR_PREFIX"o"
+#define SCNoPTR __PRIPTR_PREFIX"o"
+#define PRIuFAST16      __PRIPTR_PREFIX"u"
+#define PRIuFAST32      __PRIPTR_PREFIX"u"
+#define PRIuPTR __PRIPTR_PREFIX"u"
+#define SCNuFAST16      __PRIPTR_PREFIX"u"
+#define SCNuFAST32      __PRIPTR_PREFIX"u"
+#define SCNuPTR __PRIPTR_PREFIX"u"
+#define PRIXFAST16      __PRIPTR_PREFIX"X"
+#define PRIXFAST32      __PRIPTR_PREFIX"X"
+#define PRIXPTR __PRIPTR_PREFIX"X"
+#define PRIxFAST16      __PRIPTR_PREFIX"x"
+#define PRIxFAST32      __PRIPTR_PREFIX"x"
+#define PRIxPTR __PRIPTR_PREFIX"x"
+#define SCNxFAST16      __PRIPTR_PREFIX"x"
+#define SCNxFAST32      __PRIPTR_PREFIX"x"
+#define SCNxPTR __PRIPTR_PREFIX"x"
+#endif
+
+===
+
+In LSB Core IA32, PPC32, S390:
+
+III. Base Libraries
+   Table of Contents
+   10. Libraries
+        10.3. Data Definitions for libc
+
+Add, renumbering subsequent headers:
+
+              10.3.15. inttypes.h
+
+
+In 10.3. Data Definitions for libc
+Add, renumbering subsequent headers:
+
+10.3.15. inttypes.h
+
+#define __PRIPTR_PREFIX
+#define __PRI64_PREFIX  "ll"
+
+typedef lldiv_t imaxdiv_t;
+     __________________________________________________________
+
+
+===
+
+In LSB Core IA64, PPC64, S390X, AMD64:
+
+III. Base Libraries
+   Table of Contents
+   10. Libraries
+        10.3. Data Definitions for libc
+
+Add, renumbering subsequent headers:
+
+              10.3.15. inttypes.h
+
+
+In 10.3. Data Definitions for libc
+Add, renumbering subsequent headers:
+
+10.3.15. inttypes.h
+
+#define __PRI64_PREFIX  "l"
+#define __PRIPTR_PREFIX "l"
+
+typedef ldiv_t imaxdiv_t;
+     __________________________________________________________
+
+



More information about the lsb-messages mailing list