HCoop
/
bpt
/
emacs.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
(CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument `i' in macros.
[bpt/emacs.git]
/
src
/
doprnt.c
diff --git
a/src/doprnt.c
b/src/doprnt.c
index
7734f9b
..
3fd6222
100644
(file)
--- a/
src/doprnt.c
+++ b/
src/doprnt.c
@@
-29,6
+29,14
@@
Boston, MA 02111-1307, USA. */
#include <float.h>
#endif
#include <float.h>
#endif
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+
#include "lisp.h"
#ifndef DBL_MAX_10_EXP
#include "lisp.h"
#ifndef DBL_MAX_10_EXP
@@
-40,8
+48,6
@@
Boston, MA 02111-1307, USA. */
another macro. */
#include "charset.h"
another macro. */
#include "charset.h"
-extern long *xmalloc (), *xrealloc ();
-
static int doprnt1 ();
/* Generate output from a format-spec FORMAT,
static int doprnt1 ();
/* Generate output from a format-spec FORMAT,
@@
-54,6
+60,7
@@
static int doprnt1 ();
String arguments are passed as C strings.
Integers are passed as C integers. */
String arguments are passed as C strings.
Integers are passed as C integers. */
+int
doprnt (buffer, bufsize, format, format_end, nargs, args)
char *buffer;
register int bufsize;
doprnt (buffer, bufsize, format, format_end, nargs, args)
char *buffer;
register int bufsize;
@@
-68,6
+75,7
@@
doprnt (buffer, bufsize, format, format_end, nargs, args)
/* Like doprnt except that strings in ARGS are passed
as Lisp_Object. */
/* Like doprnt except that strings in ARGS are passed
as Lisp_Object. */
+int
doprnt_lisp (buffer, bufsize, format, format_end, nargs, args)
char *buffer;
register int bufsize;
doprnt_lisp (buffer, bufsize, format, format_end, nargs, args)
char *buffer;
register int bufsize;
@@
-106,11
+114,10
@@
doprnt1 (lispstrings, buffer, bufsize, format, format_end, nargs, args)
char *big_buffer = 0;
register int tem;
char *big_buffer = 0;
register int tem;
- char *string;
+
unsigned
char *string;
char fixed_buffer[20]; /* Default buffer for small formatting. */
char *fmtcpy;
int minlen;
char fixed_buffer[20]; /* Default buffer for small formatting. */
char *fmtcpy;
int minlen;
- int size; /* Field width factor; e.g., %90d */
unsigned char charbuf[5]; /* Used for %c. */
if (format_end == 0)
unsigned char charbuf[5]; /* Used for %c. */
if (format_end == 0)
@@
-133,7
+140,7
@@
doprnt1 (lispstrings, buffer, bufsize, format, format_end, nargs, args)
fmt++;
/* Copy this one %-spec into fmtcpy. */
fmt++;
/* Copy this one %-spec into fmtcpy. */
- string = fmtcpy;
+ string =
(unsigned char *)
fmtcpy;
*string++ = '%';
while (1)
{
*string++ = '%';
while (1)
{
@@
-205,7
+212,7
@@
doprnt1 (lispstrings, buffer, bufsize, format, format_end, nargs, args)
abort ();
sprintf (sprintf_buffer, fmtcpy, args[cnt++]);
/* Now copy into final output, truncating as nec. */
abort ();
sprintf (sprintf_buffer, fmtcpy, args[cnt++]);
/* Now copy into final output, truncating as nec. */
- string = sprintf_buffer;
+ string =
(unsigned char *)
sprintf_buffer;
goto doit;
case 'f':
goto doit;
case 'f':
@@
-219,7
+226,7
@@
doprnt1 (lispstrings, buffer, bufsize, format, format_end, nargs, args)
u.half[1] = args[cnt++];
sprintf (sprintf_buffer, fmtcpy, u.d);
/* Now copy into final output, truncating as nec. */
u.half[1] = args[cnt++];
sprintf (sprintf_buffer, fmtcpy, u.d);
/* Now copy into final output, truncating as nec. */
- string = sprintf_buffer;
+ string =
(unsigned char *)
sprintf_buffer;
goto doit;
}
goto doit;
}
@@
-232,13
+239,13
@@
doprnt1 (lispstrings, buffer, bufsize, format, format_end, nargs, args)
minlen = atoi (&fmtcpy[1]);
if (lispstrings)
{
minlen = atoi (&fmtcpy[1]);
if (lispstrings)
{
- string = (
char *) (
(struct Lisp_String *)args[cnt])->data;
- tem =
((struct Lisp_String *)args[cnt])->size
;
+ string = ((struct Lisp_String *)args[cnt])->data;
+ tem =
STRING_BYTES ((struct Lisp_String *)args[cnt])
;
cnt++;
}
else
{
cnt++;
}
else
{
- string = args[cnt++];
+ string =
(unsigned char *)
args[cnt++];
tem = strlen (string);
}
width = strwidth (string, tem);
tem = strlen (string);
}
width = strwidth (string, tem);
@@
-291,7
+298,8
@@
doprnt1 (lispstrings, buffer, bufsize, format, format_end, nargs, args)
case 'c':
if (cnt == nargs)
error ("not enough arguments for format string");
case 'c':
if (cnt == nargs)
error ("not enough arguments for format string");
- tem = CHAR_STRING ((EMACS_INT) args[cnt], charbuf, string);
+ tem = CHAR_STRING ((int) (EMACS_INT) args[cnt], charbuf);
+ string = charbuf;
cnt++;
string[tem] = 0;
width = strwidth (string, tem);
cnt++;
string[tem] = 0;
width = strwidth (string, tem);