[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 04/12] qapi: add "unix" to the set of reserved w
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH 04/12] qapi: add "unix" to the set of reserved words |
Date: |
Wed, 19 Sep 2012 18:02:51 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20120828 Thunderbird/15.0 |
Il 19/09/2012 17:58, Paolo Bonzini ha scritto:
> Il 19/09/2012 17:46, Peter Maydell ha scritto:
>> On 19 September 2012 15:31, Paolo Bonzini <address@hidden> wrote:
>>> It is #defined to 1.
>>>
>>> Signed-off-by: Paolo Bonzini <address@hidden>
>>> ---
>>> scripts/qapi.py | 4 +++-
>>> 1 file modificato, 3 inserzioni(+). 1 rimozione(-)
>>>
>>> diff --git a/scripts/qapi.py b/scripts/qapi.py
>>> index 057332e..afc5f32 100644
>>> --- a/scripts/qapi.py
>>> +++ b/scripts/qapi.py
>>> @@ -156,7 +156,9 @@ def c_var(name, protect=True):
>>> # GCC http://gcc.gnu.org/onlinedocs/gcc-4.7.1/gcc/C-Extensions.html
>>> # excluding _.*
>>> gcc_words = set(['asm', 'typeof'])
>>> - if protect and (name in c89_words | c99_words | c11_words | gcc_words):
>>> + # namespace pollution:
>>> + polluted_words = set(['unix'])
>>> + if protect and (name in c89_words | c99_words | c11_words | gcc_words
>>> | polluted_words):
>>> return "q_" + name
>>> return name.replace('-', '_').lstrip("*")
>>>
>>
>> I can't help thinking this is fighting a losing battle, and we should just
>> always prefix everything to avoid clashes.
>
> That would be so ugly that it would be almost useless. Plus there would
> be a huge amount of code to convert.
Also, not really that bad:
$ gcc -dM -x c /dev/null -E|grep define\ [^_]
#define unix 1
#define linux 1
I don't expect other OSes to be significantly worse. Remember this
breakage is not limited to QAPI-generated code, it would happen in
normal code as well. I learnt today that a variable named "unix" is not
kosher.
Paolo
- Re: [Qemu-devel] [PATCH 01/12] monitor: use monitor_handle_fd_param for non-Error-friendly users of named fds, (continued)
[Qemu-devel] [PATCH 03/12] qapi: do not protect enum values from namespace pollution, Paolo Bonzini, 2012/09/19
[Qemu-devel] [PATCH 02/12] monitor: add Error * argument to monitor_get_fd, Paolo Bonzini, 2012/09/19
[Qemu-devel] [PATCH 05/12] build: add QAPI files to the tools, Paolo Bonzini, 2012/09/19
[Qemu-devel] [PATCH 04/12] qapi: add "unix" to the set of reserved words, Paolo Bonzini, 2012/09/19
Re: [Qemu-devel] [PATCH 04/12] qapi: add "unix" to the set of reserved words, Luiz Capitulino, 2012/09/20
[Qemu-devel] [PATCH 06/12] qapi: add socket address types, Paolo Bonzini, 2012/09/19
[Qemu-devel] [PATCH 07/12] qemu-sockets: add error propagation to inet_parse, Paolo Bonzini, 2012/09/19
[Qemu-devel] [PATCH 08/12] qemu-sockets: add error propagation to Unix socket functions, Paolo Bonzini, 2012/09/19
[Qemu-devel] [PATCH 12/12] qemu-sockets: add socket_listen, socket_connect, socket_parse, Paolo Bonzini, 2012/09/19
[Qemu-devel] [PATCH 13/12] block: add close notifiers, Paolo Bonzini, 2012/09/19
[Qemu-devel] [PATCH 14/12] qmp: add NBD server commands, Paolo Bonzini, 2012/09/19