浏览代码

qapi: Drop useless gen_err_check()

Ever since commit 12f254f removed the last parameterization
of gen_err_check(), it no longer makes sense to hide the three
lines of generated C code behind a macro call. Just inline it
into the remaining users.

No change to generated code.

Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <1468468228-27827-7-git-send-email-eblake@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Eric Blake 9 年之前
父节点
当前提交
fa274ed6fb
共有 3 个文件被更改,包括 9 次插入11 次删除
  1. 3 1
      scripts/qapi-commands.py
  2. 6 2
      scripts/qapi-visit.py
  3. 0 8
      scripts/qapi.py

+ 3 - 1
scripts/qapi-commands.py

@@ -46,8 +46,10 @@ def gen_call(name, arg_type, ret_type):
 ''',
                 c_name=c_name(name), args=argstr, lhs=lhs)
     if ret_type:
-        ret += gen_err_check()
         ret += mcgen('''
+    if (err) {
+        goto out;
+    }
 
     qmp_marshal_output_%(c_name)s(retval, ret, &err);
 ''',

+ 6 - 2
scripts/qapi-visit.py

@@ -47,9 +47,11 @@ def gen_visit_object_members(name, base, members, variants):
     if base:
         ret += mcgen('''
     visit_type_%(c_type)s_members(v, (%(c_type)s *)obj, &err);
+    if (err) {
+        goto out;
+    }
 ''',
                      c_type=base.c_name())
-        ret += gen_err_check()
 
     for memb in members:
         if memb.optional:
@@ -60,10 +62,12 @@ def gen_visit_object_members(name, base, members, variants):
             push_indent()
         ret += mcgen('''
     visit_type_%(c_type)s(v, "%(name)s", &obj->%(c_name)s, &err);
+    if (err) {
+        goto out;
+    }
 ''',
                      c_type=memb.type.c_name(), name=memb.name,
                      c_name=c_name(memb.name))
-        ret += gen_err_check()
         if memb.optional:
             pop_indent()
             ret += mcgen('''

+ 0 - 8
scripts/qapi.py

@@ -1656,14 +1656,6 @@ def gen_params(arg_type, extra):
     return ret
 
 
-def gen_err_check():
-    return mcgen('''
-    if (err) {
-        goto out;
-    }
-''')
-
-
 #
 # Common command line parsing
 #