mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-02-21 16:26:12 +08:00
libiberty/ChangeLog:
2003-05-14 Jim Blandy <jimb@redhat.com> * hex.c (_hex_value): Make this unsigned. (hex_value): Update documentation for new return type. hex_value now expands to an unsigned int expression, to avoid unexpected sign extension when we store it in a bfd_vma, which is larger than int on some platforms. * functions.texi: Regenerated. include/ChangeLog: 2003-05-14 Jim Blandy <jimb@redhat.com> * libiberty.h (hex_value): Make the value an unsigned int, to avoid unexpected sign-extension when cast to unsigned types larger than int --- like bfd_vma, on some platforms. (_hex_value): Update declaration.
This commit is contained in:
parent
f2669f5d16
commit
ac5e8cb29c
@ -1,3 +1,10 @@
|
|||||||
|
2003-05-15 Jim Blandy <jimb@redhat.com>
|
||||||
|
|
||||||
|
* libiberty.h (hex_value): Make the value an unsigned int, to
|
||||||
|
avoid unexpected sign-extension when cast to unsigned types larger
|
||||||
|
than int --- like bfd_vma, on some platforms.
|
||||||
|
(_hex_value): Update declaration.
|
||||||
|
|
||||||
2003-05-09 Alan Modra <amodra@bigpond.net.au>
|
2003-05-09 Alan Modra <amodra@bigpond.net.au>
|
||||||
|
|
||||||
* xtensa-isa-internal.h (xtensa_isa_module_struct): Remove const on
|
* xtensa-isa-internal.h (xtensa_isa_module_struct): Remove const on
|
||||||
|
@ -254,12 +254,12 @@ extern double physmem_available PARAMS ((void));
|
|||||||
|
|
||||||
#define _hex_array_size 256
|
#define _hex_array_size 256
|
||||||
#define _hex_bad 99
|
#define _hex_bad 99
|
||||||
extern const char _hex_value[_hex_array_size];
|
extern const unsigned char _hex_value[_hex_array_size];
|
||||||
extern void hex_init PARAMS ((void));
|
extern void hex_init PARAMS ((void));
|
||||||
#define hex_p(c) (hex_value (c) != _hex_bad)
|
#define hex_p(c) (hex_value (c) != _hex_bad)
|
||||||
/* If you change this, note well: Some code relies on side effects in
|
/* If you change this, note well: Some code relies on side effects in
|
||||||
the argument being performed exactly once. */
|
the argument being performed exactly once. */
|
||||||
#define hex_value(c) (_hex_value[(unsigned char) (c)])
|
#define hex_value(c) ((unsigned int) _hex_value[(unsigned char) (c)])
|
||||||
|
|
||||||
/* Definitions used by the pexecute routine. */
|
/* Definitions used by the pexecute routine. */
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user