qapi: Improve reporting of missing / unknown definition keys

Have check_exprs() call check_keys() later, so its error messages gain
an "in definition" line.

Both check_keys() and check_name_is_str() check the definition's name
is a string.  Since check_keys() now runs after check_name_is_str()
rather than before, its check is dead.  Bury it.  Checking values in
check_keys() is unclean anyway.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-Id: <20190927134639.4284-21-armbru@redhat.com>
This commit is contained in:
Markus Armbruster 2019-09-27 15:46:33 +02:00
parent a6735a5743
commit 3f58cc29a8
7 changed files with 25 additions and 23 deletions

View file

@ -1,2 +1,3 @@
tests/qapi-schema/unknown-expr-key.json: In struct 'bar':
tests/qapi-schema/unknown-expr-key.json:2: unknown keys 'bogus', 'phony' in struct 'bar'
Valid keys are 'base', 'data', 'features', 'if', 'struct'.