Re: [PATCH 3/4] diffcore-delta.c: LLP64 compatibility, upcast unity for left shift

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/26/2021 6:36 AM, Philip Oakley wrote:
> Visual Studio reports C4334 "was 64-bit shift intended" warning
> because of size miss-match.
> 
> Promote unity to the matching type to fit with its subsequent operation.
> 
> Signed-off-by: Philip Oakley <philipoakley@iee.email>
> ---
>  diffcore-delta.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/diffcore-delta.c b/diffcore-delta.c
> index 5668ace60d..a4e86dfa38 100644
> --- a/diffcore-delta.c
> +++ b/diffcore-delta.c
> @@ -133,10 +133,10 @@ static struct spanhash_top *hash_chars(struct repository *r,
>  
>  	i = INITIAL_HASH_SIZE;
>  	hash = xmalloc(st_add(sizeof(*hash),
> -			      st_mult(sizeof(struct spanhash), 1<<i)));
> +			      st_mult(sizeof(struct spanhash), (size_t)1<<i)));

This could use spaces around "<<"

>  	hash->alloc_log2 = i;
>  	hash->free = INITIAL_FREE(i);
> -	memset(hash->data, 0, sizeof(struct spanhash) * (1<<i));
> +	memset(hash->data, 0, sizeof(struct spanhash) * ((size_t)1 << i));

Especially because you correctly add them here.

Thanks,
-Stolee



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux