summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2013-10-31 13:26:01 -0700
committerMichael Roth <mdroth@linux.vnet.ibm.com>2013-12-03 16:09:50 -0600
commit0ca1774b619dc53db5eb1419d12efcd433f9fe3d (patch)
tree93df8f8a94707cb8ddc767167d25b30297cc67b5
parentbd821a9bc3cc4fc5fe8912deac883e6a4b00bc6a (diff)
downloadqemu-0ca1774b619dc53db5eb1419d12efcd433f9fe3d.tar.gz
Adjust qapi-visit for python-2.4.3
We say we support python 2.4, but python 2.4.3 does not support the "expr if test else expr" syntax used here. This allows QEMU to compile on RHEL 5.3, the last release for ia64. Signed-off-by: Richard Henderson <rth@twiddle.net> Reviewed-by: Michael Roth <mdroth@linux.vnet.ibm.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> (cherry picked from commit 7b75d9d61bf9b7b43f6df2fb2fbfc38c4eb9d2e9) Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
-rw-r--r--scripts/qapi-visit.py17
1 files changed, 14 insertions, 3 deletions
diff --git a/scripts/qapi-visit.py b/scripts/qapi-visit.py
index 597cca4b66..02e16bb1e0 100644
--- a/scripts/qapi-visit.py
+++ b/scripts/qapi-visit.py
@@ -20,7 +20,10 @@ import errno
def generate_visit_struct_fields(name, field_prefix, fn_prefix, members):
substructs = []
ret = ''
- full_name = name if not fn_prefix else "%s_%s" % (name, fn_prefix)
+ if not fn_prefix:
+ full_name = name
+ else:
+ full_name = "%s_%s" % (name, fn_prefix)
for argname, argentry, optional, structured in parse_args(members):
if structured:
@@ -84,7 +87,10 @@ if (!error_is_set(errp)) {
''')
push_indent()
- full_name = name if not field_prefix else "%s_%s" % (field_prefix, name)
+ if not field_prefix:
+ full_name = name
+ else:
+ full_name = "%s_%s" % (field_prefix, name)
if len(field_prefix):
ret += mcgen('''
@@ -265,12 +271,17 @@ void visit_type_%(name)s(Visitor *m, %(name)s ** obj, const char *name, Error **
name=name)
pop_indent()
+
+ if not discriminator:
+ desc_type = "type"
+ else:
+ desc_type = discriminator
ret += mcgen('''
visit_type_%(name)sKind(m, &(*obj)->kind, "%(type)s", &err);
if (!err) {
switch ((*obj)->kind) {
''',
- name=name, type="type" if not discriminator else discriminator)
+ name=name, type=desc_type)
for key in members:
if not discriminator: