Fix mn10200 build failure on redhat 5.0 linux.
* c-exp.y (parse_number): Check TARGET_LONG_LONG_BIT when setting high_bit to avoid undefined negative shift.
This commit is contained in:
parent
29e9c76053
commit
66393f0e7c
2 changed files with 13 additions and 4 deletions
|
@ -1,3 +1,8 @@
|
|||
1998-11-03 Jim Wilson <wilson@cygnus.com>
|
||||
|
||||
* c-exp.y (parse_number): Check TARGET_LONG_LONG_BIT when setting
|
||||
high_bit to avoid undefined negative shift.
|
||||
|
||||
Mon Nov 2 15:26:33 1998 Geoffrey Noer <noer@cygnus.com>
|
||||
|
||||
* configure.in: Check cygwin* instead of cygwin32*.
|
||||
|
|
12
gdb/c-exp.y
12
gdb/c-exp.y
|
@ -1085,10 +1085,14 @@ parse_number (p, len, parsed_float, putithere)
|
|||
}
|
||||
else
|
||||
{
|
||||
high_bit = (((ULONGEST)1)
|
||||
<< (TARGET_LONG_LONG_BIT - 32 - 1)
|
||||
<< 16
|
||||
<< 16);
|
||||
/* Avoid negative shift. */
|
||||
if (TARGET_LONG_LONG_BIT <= 32)
|
||||
high_bit = ((ULONGEST)1 << TARGET_LONG_LONG_BIT - 1);
|
||||
else
|
||||
high_bit = (((ULONGEST)1)
|
||||
<< (TARGET_LONG_LONG_BIT - 32 - 1)
|
||||
<< 16
|
||||
<< 16);
|
||||
if (high_bit == 0)
|
||||
/* A long long does not fit in a LONGEST. */
|
||||
high_bit =
|
||||
|
|
Loading…
Add table
Reference in a new issue