On Sun, 28 Apr 2013, Stefan Fritsch wrote:

> On Sun, 21 Apr 2013, Stefan Fritsch wrote:
> > On Sunday 21 April 2013, Philip Guenther wrote:
> > > Maybe this should be handled the bool bits in <sys/types.h>,
> > > wrapping them in #ifdef _KERNEL ?
> > 
> > #ifdef _KERNEL is fine with me.
> 
> OK for the patch below?

FWIW, re-sending with unbroken MUA settings.

--- a/gnu/gcc/gcc/c-format.c
+++ b/gnu/gcc/gcc/c-format.c
@@ -325,6 +325,7 @@ static const format_length_info kprintf_length_specs[] =
   { "l", FMT_LEN_l, STD_C89, "ll", FMT_LEN_ll, STD_C9L },
   { "q", FMT_LEN_ll, STD_EXT, NULL, 0, 0 },
   { "z", FMT_LEN_z, STD_C99, NULL, 0, 0 },
+  { "t", FMT_LEN_t, STD_C99, NULL, 0, 0 },
   { NULL, 0, 0, NULL, 0, 0 }
 };
 
@@ -552,9 +553,9 @@ static const format_char_info asm_fprintf_char_table[] =
 static const format_char_info kprint_char_table[] = 
 { 
   /* C89 conversion specifiers.  */ 
-  { "di",  0, STD_C89, { T89_I,   BADLEN, T89_S,   T89_L,   T9L_LL,  BADLEN,  
T99_SST, BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp0 +'I", "i", NULL }, 
-  { "oxX", 0, STD_C89, { T89_UI,  BADLEN, T89_US,  T89_UL,  T9L_ULL, BADLEN,  
T99_ST,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp0#",    "i", NULL }, 
-  { "u",   0, STD_C89, { T89_UI,  BADLEN, T89_US,  T89_UL,  T9L_ULL, BADLEN,  
T99_ST,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp0'I",   "i", NULL }, 
+  { "di",  0, STD_C89, { T89_I,   BADLEN, T89_S,   T89_L,   T9L_LL,  BADLEN,  
T99_SST, T99_PD,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp0 +'I", "i", NULL }, 
+  { "oxX", 0, STD_C89, { T89_UI,  BADLEN, T89_US,  T89_UL,  T9L_ULL, BADLEN,  
T99_ST,  T99_UPD,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp0#",    "i", NULL 
}, 
+  { "u",   0, STD_C89, { T89_UI,  BADLEN, T89_US,  T89_UL,  T9L_ULL, BADLEN,  
T99_ST,  T99_UPD,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp0'I",   "i", NULL 
}, 
   { "c",   0, STD_C89, { T89_I,   BADLEN, BADLEN,  BADLEN,  BADLEN,  BADLEN,  
BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-w",       "", NULL }, 
   { "s",   1, STD_C89, { T89_C,   BADLEN, BADLEN,  BADLEN,  BADLEN,  BADLEN,  
BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp",      "cR", NULL 
}, 
   { "p",   1, STD_C89, { T89_V,   BADLEN, BADLEN,  T89_UL,  T9L_LL,  BADLEN,  
BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp0",     "c", NULL }, 
--- a/sys/kern/subr_prf.c
+++ b/sys/kern/subr_prf.c
@@ -842,6 +842,9 @@ reswitch:   switch (ch) {
                        size = 1;
                        sign = '\0';
                        break;
+               case 't':
+                       /* assume ptrdiff_t is long */
+                       /* FALLTHROUGH */
                case 'D':
                        flags |= LONGINT;
                        /*FALLTHROUGH*/
--- a/sys/sys/types.h
+++ b/sys/sys/types.h
@@ -177,6 +177,13 @@ typedef    __clockid_t     clockid_t;
 typedef        __size_t        size_t;
 #endif
 
+#ifdef _KERNEL
+#ifndef        _PTRDIFF_T_DEFINED_
+#define        _PTRDIFF_T_DEFINED_
+typedef        __ptrdiff_t     ptrdiff_t;
+#endif
+#endif
+
 #ifndef        _SSIZE_T_DEFINED_
 #define        _SSIZE_T_DEFINED_
 typedef        __ssize_t       ssize_t;

Reply via email to