fixed a gc bug in bigint.c
This commit is contained in:
		| @ -1845,7 +1845,10 @@ hcl_oop_t hcl_mulints (hcl_t* hcl, hcl_oop_t x, hcl_oop_t y) | |||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 	normal: | 	normal: | ||||||
|  | 		hcl_pushtmp (hcl, &x); | ||||||
|  | 		hcl_pushtmp (hcl, &y); | ||||||
| 		z = multiply_unsigned_integers (hcl, x, y); | 		z = multiply_unsigned_integers (hcl, x, y); | ||||||
|  | 		hcl_poptmps (hcl, 2); | ||||||
| 		if (!z) return HCL_NULL; | 		if (!z) return HCL_NULL; | ||||||
| 		if (HCL_OBJ_GET_FLAGS_BRAND(x) != HCL_OBJ_GET_FLAGS_BRAND(y)) | 		if (HCL_OBJ_GET_FLAGS_BRAND(x) != HCL_OBJ_GET_FLAGS_BRAND(y)) | ||||||
| 			HCL_OBJ_SET_FLAGS_BRAND (z, HCL_BRAND_NBIGINT); | 			HCL_OBJ_SET_FLAGS_BRAND (z, HCL_BRAND_NBIGINT); | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user