qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] exec-all: Fix void pointer arithmetic


From: Blue Swirl
Subject: Re: [Qemu-devel] [PATCH] exec-all: Fix void pointer arithmetic
Date: Sun, 30 Oct 2011 11:00:27 +0000

Thanks, applied.

On Sun, Oct 23, 2011 at 06:19, Stefan Weil <address@hidden> wrote:
> Adding an offset to a void pointer works with gcc but is not allowed
> by the current C standards. With -pedantic, gcc complains:
>
> exec-all.h:344: error: pointer of type ‘void *’ used in arithmetic
>
> Fix this, and also replace (unsigned int) by (uintptr_t) in the same
> statement.
>
> Signed-off-by: Stefan Weil <address@hidden>
> ---
>  exec-all.h |    3 +--
>  1 files changed, 1 insertions(+), 2 deletions(-)
>
> diff --git a/exec-all.h b/exec-all.h
> index 69fd5e4..0f10393 100644
> --- a/exec-all.h
> +++ b/exec-all.h
> @@ -358,8 +358,7 @@ static inline tb_page_addr_t get_page_addr_code(CPUState 
> *env1, target_ulong add
>         cpu_abort(env1, "Trying to execute code outside RAM or ROM at 0x" 
> TARGET_FMT_lx "\n", addr);
>  #endif
>     }
> -    p = (void *)(unsigned long)addr
> -        + env1->tlb_table[mmu_idx][page_index].addend;
> +    p = (void *)((uintptr_t)addr + 
> env1->tlb_table[mmu_idx][page_index].addend);
>     return qemu_ram_addr_from_host_nofail(p);
>  }
>  #endif
> --
> 1.7.2.5
>
>
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]