qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 2/5] CODING_STYLE: add C type rules


From: Anthony Liguori
Subject: Re: [Qemu-devel] [PATCH 2/5] CODING_STYLE: add C type rules
Date: Tue, 17 Aug 2010 15:29:45 -0500
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.11) Gecko/20100713 Lightning/1.0b1 Thunderbird/3.0.6

On 08/17/2010 02:43 PM, Jes Sorensen wrote:
On 08/17/10 21:24, malc wrote:
On Tue, 17 Aug 2010, Jes Sorensen wrote:

On 08/17/10 20:55, malc wrote:
On Tue, 17 Aug 2010, Blue Swirl wrote:
The other thing that might be worth mentioning in the int/long section
is that long is complicated in broken development environments such as
Windows where it is only 32 bit :(
There's absolutely nothing broken about LLP64 it's as valid as any other
ABI. (That's to Jes)
Well it works if you program for it, but it still doesn't make it any
good when you can't keep a pointer in a long to apply arithmetic to it.
Anyway point with the documentation is to make it clear that we rely on
being able to do long foo = (long)ptr;
Which isn't (and never was) sanctioned by any standard, IOW not good.
Well maybe this is where the problem is. Not being able to do this means
that we need a special integer type to cover this case if we wanted to
work on win64. Switching to long long would generate bad code on 32 bit
archs so thats not an option.

FWIW, that type is intptr_t and it was introduced in C99.

Regards,

Anthony Liguori

Depending on your viewpoint it is either it not being a standard that is
bad, or the LLP64 that is bad.

Anyway this is personal preference.

Jes






reply via email to

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