* hpread.c (hpread_type_translate): Handle T_UNS_LONG types with

lengths other than 32bits (HP C 9.69 represents an "unsigned char"
	as an T_UNS_LONG with length 8).
This commit is contained in:
Jeff Law 1994-09-29 04:26:50 +00:00
parent 3a4b4b1ec0
commit 510ceea939
2 changed files with 11 additions and 1 deletions

View File

@ -1,5 +1,9 @@
Wed Sep 28 00:35:23 1994 Jeff Law (law@snake.cs.utah.edu)
* hpread.c (hpread_type_translate): Handle T_UNS_LONG types with
lengths other than 32bits (HP C 9.69 represents an "unsigned char"
as an T_UNS_LONG with length 8).
* hpread.c (struct hpread_symfile_info): Delete have_module field
and accessor macro. Minor indentation fix.
(hpread_build_psymtabs, case K_MODULE): Only start a new psymtab

View File

@ -1137,7 +1137,13 @@ hpread_type_translate (typep)
case T_LONG:
return FT_LONG;
case T_UNS_LONG:
return FT_UNSIGNED_LONG;
if (typep.dntti.bitlength <= 8)
return FT_UNSIGNED_CHAR;
if (typep.dntti.bitlength <= 16)
return FT_UNSIGNED_SHORT;
if (typep.dntti.bitlength <= 32)
return FT_UNSIGNED_LONG;
return FT_UNSIGNED_LONG_LONG;
case T_UNS_INT:
if (typep.dntti.bitlength <= 8)
return FT_UNSIGNED_CHAR;