XEmacs 21.2.28 "Hermes".
[chise/xemacs-chise.git.1] / src / doprnt.c
index 5dac446..8b5744c 100644 (file)
@@ -386,7 +386,7 @@ get_doprnt_args (printf_spec_dynarr *specs, va_list vargs)
       if (strchr (int_converters, ch))
        {
          if (spec->h_flag)
-           arg.i = va_arg (vargs, short);
+           arg.i = va_arg (vargs, int /* short */);
          else if (spec->l_flag)
            arg.l = va_arg (vargs, long);
          else
@@ -395,7 +395,7 @@ get_doprnt_args (printf_spec_dynarr *specs, va_list vargs)
       else if (strchr (unsigned_int_converters, ch))
        {
          if (spec->h_flag)
-           arg.ui = va_arg (vargs, unsigned short);
+           arg.ui = va_arg (vargs, unsigned int /* unsigned short */);
          else if (spec->l_flag)
            arg.ul = va_arg (vargs, unsigned long);
          else
@@ -538,7 +538,7 @@ emacs_doprnt_1 (Lisp_Object stream, CONST Bufbyte *format_nonreloc,
          else
            {
              Lisp_Object obj = largs[spec->argnum - 1];
-             struct Lisp_String *ls;
+             Lisp_String *ls;
 
              if (ch == 'S')
                {
@@ -576,7 +576,7 @@ emacs_doprnt_1 (Lisp_Object stream, CONST Bufbyte *format_nonreloc,
            {
              Lisp_Object obj = largs[spec->argnum - 1];
              if (CHARP (obj))
-               CHECK_INT_COERCE_CHAR (obj);
+               obj = make_int (XCHAR (obj));
              if (!INT_OR_FLOATP (obj))
                {
                  error ("format specifier %%%c doesn't match argument type",