mirror of
https://github.com/python/cpython.git
synced 2025-10-28 01:00:34 +00:00
Lots of changes, most minor (fatal() instead of abort(), use of
err_fetch/err_restore and so on). But... NOTE: import.c has been rewritten and all the DL stuff is now in the new file importdl.c.
This commit is contained in:
parent
824de25fe2
commit
1ae940a587
15 changed files with 1871 additions and 1089 deletions
|
|
@ -38,7 +38,7 @@ int vgetargs PROTO((object *, char *, va_list));
|
|||
|
||||
|
||||
/* Forward */
|
||||
static int vgetargs1 PROTO((object *, char *, va_list, int));
|
||||
static int vgetargs1 PROTO((object *, char *, va_list *, int));
|
||||
static void seterror PROTO((int, char *, int *, char *, char *));
|
||||
static char *convertitem PROTO((object *, char **, va_list *, int *, char *));
|
||||
static char *converttuple PROTO((object *, char **, va_list *,
|
||||
|
|
@ -68,7 +68,7 @@ int getargs(va_alist) va_dcl
|
|||
args = va_arg(va, object *);
|
||||
format = va_arg(va, char *);
|
||||
#endif
|
||||
retval = vgetargs1(args, format, va, 1);
|
||||
retval = vgetargs1(args, format, &va, 1);
|
||||
va_end(va);
|
||||
return retval;
|
||||
}
|
||||
|
|
@ -95,7 +95,7 @@ int newgetargs(va_alist) va_dcl
|
|||
args = va_arg(va, object *);
|
||||
format = va_arg(va, char *);
|
||||
#endif
|
||||
retval = vgetargs1(args, format, va, 0);
|
||||
retval = vgetargs1(args, format, &va, 0);
|
||||
va_end(va);
|
||||
return retval;
|
||||
}
|
||||
|
|
@ -107,15 +107,23 @@ vgetargs(args, format, va)
|
|||
char *format;
|
||||
va_list va;
|
||||
{
|
||||
return vgetargs1(args, format, va, 0);
|
||||
va_list lva;
|
||||
|
||||
#ifdef VA_LIST_IS_ARRAY
|
||||
memcpy(lva, va, sizeof(va_list));
|
||||
#else
|
||||
lva = va;
|
||||
#endif
|
||||
|
||||
return vgetargs1(args, format, &lva, 0);
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
vgetargs1(args, format, va, compat)
|
||||
vgetargs1(args, format, p_va, compat)
|
||||
object *args;
|
||||
char *format;
|
||||
va_list va;
|
||||
va_list *p_va;
|
||||
int compat;
|
||||
{
|
||||
char msgbuf[256];
|
||||
|
|
@ -186,7 +194,7 @@ vgetargs1(args, format, va, compat)
|
|||
err_setstr(TypeError, msgbuf);
|
||||
return 0;
|
||||
}
|
||||
msg = convertitem(args, &format, &va, levels, msgbuf);
|
||||
msg = convertitem(args, &format, p_va, levels, msgbuf);
|
||||
if (msg == NULL)
|
||||
return 1;
|
||||
seterror(levels[0], msg, levels+1, fname, message);
|
||||
|
|
@ -226,7 +234,7 @@ vgetargs1(args, format, va, compat)
|
|||
for (i = 0; i < len; i++) {
|
||||
if (*format == '|')
|
||||
format++;
|
||||
msg = convertitem(gettupleitem(args, i), &format, &va,
|
||||
msg = convertitem(gettupleitem(args, i), &format, p_va,
|
||||
levels, msgbuf);
|
||||
if (msg) {
|
||||
seterror(i+1, msg, levels, fname, message);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue