73c40b07c6
Member name 'u' and names starting with 'has-' or 'has_' are reserved for the generator. check_type() enforces this, covered by tests reserved-member-u and reserved-member-has. These tests neglect to cover optional members, where the name starts with '*'. Tweak reserved-member-u to fix that. Test reserved-member-has still covers non-optional members. This demonstrates the reserved member name check is broken for optional members. The next commit will fix it. Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20210323094025.3569441-7-armbru@redhat.com> Reviewed-by: John Snow <jsnow@redhat.com> [Commit message improved slightly]
9 lines
460 B
JSON
9 lines
460 B
JSON
# Potential C member name collision
|
|
# We reject use of 'u' as a member name, to allow it for internal use in
|
|
# putting union branch members in a separate namespace from QMP members.
|
|
# This is true even for non-unions, because it is possible to convert a
|
|
# struct to flat union while remaining backwards compatible in QMP.
|
|
# TODO - we could munge the member name to 'q_u' to avoid the collision
|
|
# BUG: not rejected
|
|
{ 'struct': 'Oops', 'data': { '*u': 'str' } }
|