X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fdoprnt.c;h=d75f6fadcae1695a059f63443ac394d5131af76a;hb=98941481ec0d6f89c375bdd83e8380cd01f758f4;hp=d9dc8c43285190afd9dc57cce9591a3eb360fa1a;hpb=b50fd71ea3c920afc5ba60af567d73940993be3f;p=chise%2Fxemacs-chise.git.1 diff --git a/src/doprnt.c b/src/doprnt.c index d9dc8c4..d75f6fa 100644 --- a/src/doprnt.c +++ b/src/doprnt.c @@ -34,7 +34,7 @@ Boston, MA 02111-1307, USA. */ static const char * const valid_flags = "-+ #0"; static const char * const valid_converters = "dic" "ouxX" "feEgG" "sS"; static const char * const int_converters = "dic"; -static const char * const unsigned_int_converters = "ouxX"; +static const char * const unsigned_int_converters = "ouxXc"; static const char * const double_converters = "feEgG"; static const char * const string_converters = "sS"; @@ -222,7 +222,7 @@ parse_doprnt_spec (const Bufbyte *format, Bytecount format_length) case ' ': spec.space_flag = 1; break; case '#': spec.number_flag = 1; break; case '0': spec.zero_flag = 1; break; - default: abort (); + default: ABORT (); } NEXT_ASCII_BYTE (ch); } @@ -383,7 +383,7 @@ get_doprnt_args (printf_spec_dynarr *specs, va_list vargs) arg.d = va_arg (vargs, double); else if (strchr (string_converters, ch)) arg.bp = va_arg (vargs, Bufbyte *); - else abort (); + else ABORT (); Dynarr_add (args, arg); } @@ -569,7 +569,7 @@ emacs_doprnt_1 (Lisp_Object stream, const Bufbyte *format_nonreloc, obj = Ftruncate (obj); if (strchr (unsigned_int_converters, ch)) - arg.ul = (unsigned long) XINT (obj); + arg.ul = (unsigned long) XUINT (obj); else arg.l = XINT (obj); } @@ -598,7 +598,8 @@ emacs_doprnt_1 (Lisp_Object stream, const Bufbyte *format_nonreloc, char *text_to_print = alloca_array (char, 32 + max (spec->minwidth, - max (sizeof (double), sizeof (long)) * 3 + + (EMACS_INT) + max (sizeof (double), sizeof (long)) * 3 + max (spec->precision, 0))); char constructed_spec[100]; char *p = constructed_spec;