fixed minor flaws in the code
This commit is contained in:
		| @ -315,7 +315,7 @@ int hcl_inttoooi (hcl_t* hcl, hcl_oop_t x, hcl_ooi_t* i) | |||||||
| 	int n; | 	int n; | ||||||
|  |  | ||||||
| 	n = hcl_inttooow(hcl, x, &w); | 	n = hcl_inttooow(hcl, x, &w); | ||||||
| 	if (n < 0)  | 	if (n < 0) | ||||||
| 	{ | 	{ | ||||||
| 		HCL_ASSERT (hcl, HCL_TYPE_MAX(hcl_ooi_t) + HCL_TYPE_MIN(hcl_ooi_t) == -1); /* assume 2's complement */ | 		HCL_ASSERT (hcl, HCL_TYPE_MAX(hcl_ooi_t) + HCL_TYPE_MIN(hcl_ooi_t) == -1); /* assume 2's complement */ | ||||||
| 		if (w > (hcl_oow_t)HCL_TYPE_MAX(hcl_ooi_t) + 1) | 		if (w > (hcl_oow_t)HCL_TYPE_MAX(hcl_ooi_t) + 1) | ||||||
| @ -377,7 +377,7 @@ static HCL_INLINE int bigint_to_uintmax (hcl_t* hcl, hcl_oop_t num, hcl_uintmax_ | |||||||
|  |  | ||||||
| 		case 4: | 		case 4: | ||||||
| 			*w = ((hcl_uintmax_t)HCL_OBJ_GET_HALFWORD_VAL(num, 0) << HCL_LIW_BITS * 3) |  | 			*w = ((hcl_uintmax_t)HCL_OBJ_GET_HALFWORD_VAL(num, 0) << HCL_LIW_BITS * 3) |  | ||||||
| 			     ((hcl_uintmax_t)HCL_OBJ_GET_HALFWORD_VAL(num, 1) << HCL_LIW_BITS * 2) | | 				((hcl_uintmax_t)HCL_OBJ_GET_HALFWORD_VAL(num, 1) << HCL_LIW_BITS * 2) | | ||||||
| 			     ((hcl_uintmax_t)HCL_OBJ_GET_HALFWORD_VAL(num, 2) << HCL_LIW_BITS * 1) | | 			     ((hcl_uintmax_t)HCL_OBJ_GET_HALFWORD_VAL(num, 2) << HCL_LIW_BITS * 1) | | ||||||
| 			     HCL_OBJ_GET_HALFWORD_VAL(num, 3); | 			     HCL_OBJ_GET_HALFWORD_VAL(num, 3); | ||||||
| 			goto done; | 			goto done; | ||||||
| @ -640,6 +640,9 @@ hcl_oop_t hcl_ooitoint (hcl_t* hcl, hcl_ooi_t i) | |||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  |  | ||||||
|  | #if (HCL_SIZEOF_UINTMAX_T == HCL_SIZEOF_OOW_T) | ||||||
|  | 	/* do nothing. required macros are defined in hcl.h */ | ||||||
|  | #else | ||||||
| hcl_oop_t hcl_intmaxtoint (hcl_t* hcl, hcl_intmax_t i) | hcl_oop_t hcl_intmaxtoint (hcl_t* hcl, hcl_intmax_t i) | ||||||
| { | { | ||||||
| 	if (HCL_IN_SMOOI_RANGE(i)) | 	if (HCL_IN_SMOOI_RANGE(i)) | ||||||
| @ -663,6 +666,7 @@ hcl_oop_t hcl_uintmaxtoint (hcl_t* hcl, hcl_uintmax_t i) | |||||||
| 		return make_bigint_with_uintmax(hcl, i); | 		return make_bigint_with_uintmax(hcl, i); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  | #endif | ||||||
|  |  | ||||||
| static HCL_INLINE hcl_oop_t expand_bigint (hcl_t* hcl, hcl_oop_t oop, hcl_oow_t inc) | static HCL_INLINE hcl_oop_t expand_bigint (hcl_t* hcl, hcl_oop_t oop, hcl_oow_t inc) | ||||||
| { | { | ||||||
|  | |||||||
| @ -1084,7 +1084,7 @@ static void free_heap (hcl_t* hcl, void* ptr) | |||||||
| 	actual_ptr = (hcl_oow_t*)ptr - 1; | 	actual_ptr = (hcl_oow_t*)ptr - 1; | ||||||
| 	munmap (actual_ptr, *actual_ptr); | 	munmap (actual_ptr, *actual_ptr); | ||||||
| #else | #else | ||||||
| 	return HCL_MMGR_FREE(hcl->_mmgr, ptr); | 	HCL_MMGR_FREE(hcl->_mmgr, ptr); | ||||||
| #endif | #endif | ||||||
| } | } | ||||||
|  |  | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user