qemu/scripts
Markus Armbruster 638c4af931 qapi: Clean up member name case checking
QAPISchemaMember.check_clash() checks for member names that map to the
same c_name().  Takes care of rejecting duplicate names.

It also checks a naming rule: no uppercase in member names.  That's a
rather odd place to do it.  Enforcing naming rules is
check_name_str()'s job.

qapi-code-gen.txt specifies the name case rule applies to the name as
it appears in the schema.  check_clash() checks c_name(name) instead.
No difference, as c_name() leaves alone case, but unclean.

Move the name case check into check_name_str(), less the c_name().
New argument @permit_upper suppresses it.  Pass permit_upper=True for
definitions (which are not members), and when the member's owner is
whitelisted with pragma name-case-whitelist.

Bonus: name-case-whitelist now applies to a union's inline base, too.
Update qapi/qapi-schema.json pragma to whitelist union CpuInfo instead
of CpuInfo's implicit base type's name q_obj_CpuInfo-base.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-Id: <20190927134639.4284-6-armbru@redhat.com>
2019-09-28 17:17:18 +02:00
..
coccinelle
kvm kvm: vmxcap: Enhance with latest features 2019-08-20 20:00:51 +02:00
modules Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
qapi qapi: Clean up member name case checking 2019-09-28 17:17:18 +02:00
qemu-guest-agent
qemugdb scripts/qemugdb: re-license timers.py to GPLv2 or later 2019-03-12 08:04:22 +01:00
qmp qmp: make qmp-shell work with python3 2019-07-01 19:02:10 -03:00
tracetool trace: Forbid event format ending with newline character 2019-09-18 10:20:15 +01:00
travis
analyse-9p-simpletrace.py
analyse-locks-simpletrace.py
analyze-inclusions
analyze-migration.py
archive-source.sh archive-source: also create a stash for submodules 2019-07-23 15:53:25 +01:00
checkpatch.pl docs: convert README, CODING_STYLE and HACKING to RST syntax 2019-09-05 14:27:06 +01:00
clean-header-guards.pl scripts/clean-header-guards: Fix handling of trailing comments 2019-06-12 13:20:20 +02:00
clean-includes
cleanup-trace-events.pl scripts/cleanup-trace-events: Update for current practice 2019-03-22 16:18:07 +00:00
cocci-macro-file.h QEMU_PACKED: Remove gcc_struct attribute in Windows non x86 targets 2019-05-07 12:55:02 +01:00
coverity-model.c
create_config create_config: remove $(CONFIG_SOFTMMU) hack 2019-07-15 20:58:37 +02:00
decodetree.py decodetree: Suppress redundant declaration warnings 2019-08-19 08:13:14 -07:00
device-crash-test python/qemu: split QEMUMachine out from underneath __init__.py 2019-07-01 19:02:10 -03:00
disas-objdump.pl
dump-guest-memory.py
extract-vsssdk-headers
feature_to_c.sh
fix-multiline-comments.sh
get_maintainer.pl
git-submodule.sh
git.orderfile scripts/git.orderfile: Match QAPI schema more precisely 2019-09-24 14:07:22 +02:00
hxtool
make-release scripts/make-release: Stop shipping u-boot source as a tarball 2019-03-18 15:40:00 +00:00
minikconf.py minikconf: don't print CONFIG_FOO=n lines 2019-08-21 16:29:57 +02:00
qapi-gen.py
qemu-binfmt-conf.sh
qemu-gdb.py qemugdb: fix licensing 2019-03-11 16:55:52 +01:00
qemu-trace-stap
qemu-trace-stap.texi
refresh-pxe-roms.sh
render_block_graph.py python/qemu: split QEMUMachine out from underneath __init__.py 2019-07-01 19:02:10 -03:00
replay-dump.py
shaderinclude.pl
show-fixed-bugs.sh
signrom.py
simpletrace.py
switch-timer-api
tap-driver.pl
tap-merge.pl
texi2pod.pl
tracetool.py
update-linux-headers.sh update-linux-headers: handle new header file 2019-05-21 16:56:30 +02:00
vmstate-static-checker.py