qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [patch 1/2] machine struct - use C99 initializers


From: Andreas Färber
Subject: Re: [Qemu-devel] [patch 1/2] machine struct - use C99 initializers
Date: Tue, 7 Oct 2008 00:46:30 +0200

Jes,

Am 06.10.2008 um 17:03 schrieb Jes Sorensen:

Johannes Schindelin wrote:
This patch simply converts all the machine structs to use C99 style initializers. There is no actual code change in this.
Is it really such a good idea to do this? I mean, the only real change you make here is to break compilation on compilers that do not grok C99 (or do it badly). Sure, it does not concern _you_. You _obviously_ have a C99 compliant compiler.

Ehm, what compiler does _not_ support C99 these days?

P.S.: before somebody says that GCC is C99 compliant: search the mailing list for the Beos GCC2 issue which was mentioned not long ago.

GCC is sufficiently C99 compliant to handle this style of initializers.
Maybe it's not C99 compliant enough for other stuff, but on this front
it does just fine.

You're missing the point: GCC today is not necessarily GCC 4.3+ or whatever has just been released these days and included in your favorite Linux distro. Just like Sun continues to ship GCC 3.4.3 on their latest OpenSolaris builds, the BeOS world and therefore its successor(s) are stuck with GCC 2.95.3 due to C++ ABI breakage in between major GCC versions. GCC 2 was originally released in '98 iirc and hence not C99 compliant. I'd expect your IRIX to face a similar issue, at EOL.

Anyway, saying that GCC supports C99 is about as correct as saying that Windows supports Bluetooth (which it didn't for many years before Windows XP SP1 or sth.) - hell, many companies even still run mainframe software from the Eighties!

So while this argument for using C99 is flawed, there may be valid reasons for QEMU to use more C99 constructs. But their pure availability in the latest GCCs is not very convincing.

Andreas





reply via email to

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