qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 05/19] tests/qapi-schema: Demonstrate insufficie


From: Eric Blake
Subject: Re: [Qemu-devel] [PATCH 05/19] tests/qapi-schema: Demonstrate insufficient 'if' checking
Date: Mon, 23 Sep 2019 07:55:49 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0

On 9/23/19 6:55 AM, Markus Armbruster wrote:

>>> +++ b/tests/qapi-schema/union-branch-if-invalid.json
>>> @@ -0,0 +1,7 @@
>>> +# Cover branch with invalid 'if'
>>> +# FIXME not rejected, would generate '#if \n'
>>> +{ 'enum': 'Branches', 'data': ['branch1'] }
>>> +{ 'struct': 'Stru', 'data': { 'member': 'str' } }
>>> +{ 'union': 'Uni',
>>> +  'base': { 'tag': 'Branches' }, 'discriminator': 'tag',
>>> +  'data': { 'branch1': { 'type': 'Stru', 'if': [''] } } }
>>
>> So you're pointing out a difference between an empty string and a string
>> not containing a C macro name (possibly because later patches will give
>> them different error messages).
> 
> Not sure I got this comment.

I was comparing:

> +++ b/tests/qapi-schema/union-branch-if-invalid.json
> +  'data': { 'branch1': { 'type': 'Stru', 'if': [''] } } }

with:

> +++ b/tests/qapi-schema/alternate-branch-if-invalid.json
> +  'data': { 'branch': { 'type': 'int', 'if': ' ' } } }

Both of which produce invalid expansions, but because of the difference
between empty string vs. all-whitespace might be fixed differently in
later patches.  At any rate, nothing to change in those tests.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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