diff options
author | Ulrich Drepper <drepper@redhat.com> | 2005-03-06 04:51:37 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2005-03-06 04:51:37 +0000 |
commit | 3cc4a09733deb0e9313f820e148ada9a3007e6b0 (patch) | |
tree | 1a078e7f4a335f0c559cbc44317348ae611ae515 /sysdeps/unix/sysv/linux/x86_64/makecontext.c | |
parent | 103f1eb02d919d6df0a5d2d29cb58e403bf2a10a (diff) | |
download | glibc-3cc4a09733deb0e9313f820e148ada9a3007e6b0.zip glibc-3cc4a09733deb0e9313f820e148ada9a3007e6b0.tar.gz glibc-3cc4a09733deb0e9313f820e148ada9a3007e6b0.tar.bz2 |
* wcsmbs/wctob.c (wctob): Make buf array of unsigned char.
* sysdeps/generic/strchrnul.c: Add cast to avoid warning.
* libio/iofwide.c: Add casts to avoid warnings.
* stdio-common/printf-prs.c (parse_printf_format): Introduce new
variable f to avoid warnings.
* sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
Fix a few casts to avoid warnings.
* iconv/gconv_simple.c (internal_utf8_loop): Make start unsigned
to avoid warning.
Diffstat (limited to 'sysdeps/unix/sysv/linux/x86_64/makecontext.c')
-rw-r--r-- | sysdeps/unix/sysv/linux/x86_64/makecontext.c | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/sysdeps/unix/sysv/linux/x86_64/makecontext.c b/sysdeps/unix/sysv/linux/x86_64/makecontext.c index c763556..6597d89 100644 --- a/sysdeps/unix/sysv/linux/x86_64/makecontext.c +++ b/sysdeps/unix/sysv/linux/x86_64/makecontext.c @@ -1,5 +1,5 @@ /* Create new context. - Copyright (C) 2002, 2004 Free Software Foundation, Inc. + Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Andreas Jaeger <aj@suse.de>, 2002. @@ -20,6 +20,7 @@ #include <sysdep.h> #include <stdarg.h> +#include <stdint.h> #include <ucontext.h> #include "ucontext_i.h" @@ -52,28 +53,29 @@ void __makecontext (ucontext_t *ucp, void (*func) (void), int argc, ...) { extern void __start_context (void); - unsigned long *sp, idx_uc_link; + unsigned long int *sp, idx_uc_link; va_list ap; int i; /* Generate room on stack for parameter if needed and uc_link. */ - sp = (long *) ((long) ucp->uc_stack.ss_sp + ucp->uc_stack.ss_size); + sp = (unsigned long int *) ((uintptr_t) ucp->uc_stack.ss_sp + + ucp->uc_stack.ss_size); sp -= (argc > 6 ? argc - 6 : 0) + 1; /* Align stack and make space for trampoline address. */ - sp = (long *) ((((long) sp) & -16L) - 8); + sp = (unsigned long int *) ((((uintptr_t) sp) & -16L) - 8); idx_uc_link = (argc > 6 ? argc - 6 : 0) + 1; /* Setup context ucp. */ /* Address to jump to. */ - ucp->uc_mcontext.gregs[REG_RIP] = (long) func; + ucp->uc_mcontext.gregs[REG_RIP] = (long int) func; /* Setup rbx.*/ - ucp->uc_mcontext.gregs[REG_RBX] = (long) &sp[idx_uc_link]; - ucp->uc_mcontext.gregs[REG_RSP] = (long) sp; + ucp->uc_mcontext.gregs[REG_RBX] = (long int) &sp[idx_uc_link]; + ucp->uc_mcontext.gregs[REG_RSP] = (long int) sp; /* Setup stack. */ - sp[0] = (long) &__start_context; - sp[idx_uc_link] = (long) ucp->uc_link; + sp[0] = (unsigned long int) &__start_context; + sp[idx_uc_link] = (unsigned long int) ucp->uc_link; va_start (ap, argc); /* Handle arguments. */ |