From patchwork Fri May 11 09:05:32 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Nefedov X-Patchwork-Id: 911861 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=virtuozzo.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="W/WS5PiI"; dkim-atps=neutral Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40j43B5Q4gz9s15 for ; Fri, 11 May 2018 19:06:46 +1000 (AEST) Received: from localhost ([::1]:37789 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fH40i-0000cK-Bp for incoming@patchwork.ozlabs.org; Fri, 11 May 2018 05:06:44 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49354) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fH3zy-0000aO-AN for qemu-devel@nongnu.org; Fri, 11 May 2018 05:06:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fH3zu-0000ek-9E for qemu-devel@nongnu.org; Fri, 11 May 2018 05:05:58 -0400 Received: from mail-he1eur01on0724.outbound.protection.outlook.com ([2a01:111:f400:fe1e::724]:32813 helo=EUR01-HE1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fH3zt-0000WI-MY for qemu-devel@nongnu.org; Fri, 11 May 2018 05:05:54 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=2UyhBACyDo9pfdCNyEasjLOaF7qif5kbJwMKuqBK66Y=; b=W/WS5PiI37sJZfjNH3Us2uGSLq2a42wENCs6fIA+QPEElHiDtiBSVr0OpAC2krpk+SPm16PGAmFx9TEjP04ksfnXNoEqibNFs14h6+O69ntpHLCjABDo2AvR/4l+p1C5M4nBcWNO/dDpy4acxKnAvvF+39wbSG/vTBE/rQ6OnFQ= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=anton.nefedov@virtuozzo.com; Received: from xantnef-ws.sw.ru (195.214.232.6) by AM6PR08MB3352.eurprd08.prod.outlook.com (2603:10a6:209:48::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.755.16; Fri, 11 May 2018 09:05:50 +0000 From: Anton Nefedov To: qemu-devel@nongnu.org Date: Fri, 11 May 2018 12:05:32 +0300 Message-Id: <1526029534-35771-1-git-send-email-anton.nefedov@virtuozzo.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 X-Originating-IP: [195.214.232.6] X-ClientProxiedBy: HE1PR05CA0150.eurprd05.prod.outlook.com (2603:10a6:7:28::37) To AM6PR08MB3352.eurprd08.prod.outlook.com (2603:10a6:209:48::21) X-MS-PublicTrafficType: Email X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(5600026)(2017052603328)(7153060)(7193020); SRVR:AM6PR08MB3352; X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3352; 3:nAw62O6vcRtzzY/QzPxm8MsXrxzfv8Uv2QQqVelaF0YiAi9sy2ZPZSGv2cSFKiQ1ysgj4fPPWMG3ffDSGXCPJzagupC3OLZ4pgpf4lcM20mVN2Jih5CCVz39zNRxtKmwx2algeNretZDMWG6KcWSsck6BzpvO7gszl95k2xpR1TGh2jgtIZ3X8tPvqjUviwwd9meG+A/kHuD82ALkQ4jmR4RjBy+tLGfLgc4AY/qYSzbq3MZzSBZghrtqEmwLCFd; 25:2CVfwI75+Hkm0tKn6JWHD3qo8PPIWVyZFtkFbhscQ9G4LbRGzd7dznsVQsMCbwWo6JKUef3lvph6NvZloCphV0ikYfRgctJUaPnvCe43r25HQ9WJtImKnLkuDsmGoFZJDT8jRRdDRVRmqLrWNk0qIQuDnrpmCBfMrd6rhgQZvYX8kY0Cns6YX42Fq+Ld5S2Srcxt/+qXB02LcC1JZypKTkDNdas7qVA+t0Vh0QVY5vKRHPGxwsq6dQeJz3m9rslGsFjgprVZJhYjCka1DR2Xmzq+U9tPU454f7b8xORQK2YiHKjQSlsGZFzn9JMudqttilQoHlY1xmQkBjemep4U9w==; 31:W9AX78Vak2BgjLhBZ3lfo7FbPYKrwVsonjgLhUemxRulqLKzKwzCWV+qTx1Yw8DVIuQ/D8OyqOh3biwpSnBoABMZcbbrd9/B2ZIm2EpO8SvK1M63VNpuW2wJ83TIE38qAQsEbYbLNROS1FG4ai6O3DqinuQG133nXRxPH+2WIaKuR2CWh2aYRcClLIQTirE/c4qPzfnTYjBHMRTcv8QnxziZCpNZjyhjrLIwRQ/0J2Q= X-MS-TrafficTypeDiagnostic: AM6PR08MB3352: X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3352; 20:x7aI5Qt3RXjRqeRazasNivUr+9k+++lFCd7+MJ2Q17cKqNlw8pGlKCJHMyJ7jBU55lufq28aaoAObxfz9Paid1qlYZT26sTzhmL9Wiq6Pwxi1m5JRPPnp7ZuADD7rXvqZeng7Www3Qx3gopEV5fETVQCN38/53CTxt5Je0lBb0UT+pQpLAD5d3LTL45SXA9peAkLH5YpGmaJWuKiVPylmdEcemBfwQEbCecVasvXm6mkWry8gWqQGYdzX/Tq+LdZadPPmL1Kk2fcwSlE/NEmor+8w0MCoRJnXE+G9TJrjm4ZWl74VUGcIcw5+ejGDk171IDVBFFIssjWWBTokORZX1uzYb9YGsKVvLimGKL+7+xWmx0ASqG1jEevnU4hapkxIZIQ/2EYWQmk/+jvneaiplIOURdXcuEsvlLsfK5Li3T+nLFXsg9LfjwD2QIIRcZSh4JVsgxMd51J9C3By1vXvl6U8eS5FQUDswMUDgOUkwBaEmwM9D01K9fLUYvw7FyX; 4:XMSAPFeEb/dRFFp5LxZNMtjHxQBkOk1WKTHamDPmIsFE2P4KiCGi6D7QN2dWFRiHSgEtzRdQthd5QN1Qs3onLLvSgAopLnmj6Dn/PUqjEw3e9l0ohkQ0kye+BGEZx8y2mml8GY7+1Yhzc/jw3B9M5HVejiQDWiemVxTKVhuzTgdQQ1ndahLULBwJ9XqOu94dPaX3F6yIq2I3CMFxxmtjpidhZbsjUkUuY0j6wrl+f37LxBsR/CaUuvqb8bu1VomNSA46OfpC/eRZ+NRZ43Vhyg== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(5005006)(8121501046)(10201501046)(3231254)(944501410)(52105095)(93006095)(93001095)(3002001)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123564045)(20161123558120)(6072148)(201708071742011); SRVR:AM6PR08MB3352; BCL:0; PCL:0; RULEID:; SRVR:AM6PR08MB3352; X-Forefront-PRVS: 06691A4183 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(366004)(39850400004)(396003)(376002)(346002)(39380400002)(189003)(199004)(486006)(2616005)(4326008)(476003)(6512007)(44832011)(15188555005)(53936002)(6306002)(2351001)(2361001)(66066001)(86362001)(305945005)(51416003)(107886003)(47776003)(97736004)(956004)(386003)(26005)(6506007)(55236004)(52116002)(16526019)(7736002)(50226002)(966005)(36756003)(2906002)(3846002)(50466002)(6116002)(6486002)(316002)(8936002)(6916009)(186003)(8676002)(81156014)(106356001)(81166006)(53416004)(16586007)(69596002)(6666003)(48376002)(25786009)(105586002)(478600001)(68736007)(5660300001); DIR:OUT; SFP:1102; SCL:1; SRVR:AM6PR08MB3352; H:xantnef-ws.sw.ru; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: virtuozzo.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM6PR08MB3352; 23:2Irl2RHyfXnWU4oOJPxJutm/Nd+UAyLYGjtVR9a02?= jCmNX9tGaLWjKkSuN3jJUqjU3KLjjMUBp4/Ry44zQ6IXBXnLIxl+O9QmtDKEB8bCo8I3TCXI2y/GODR8hY7hCGk71yevWl3r92RGm8dFq1R5rY+lzpBehWQIQ8HyihcX6Uyj3fhIkAnQyS59wJ++xS9vplvWHb7DSFJqzkImJcacdPcVEOX9mP2O3rTuQdg8T7KpJZYe1AmWMXwYA3kR2pZ1zUltRhqZ7mvELGwK66KgOw3EUU5xG9QWGl2FJ7VxixjS9hkqnP/8/im3rQCwROUzcXoSKleiBi6+G66VGv9yw36AM+5evX8IFUonZo643Zox2362bW5HhvwmK/CIdrn7JXmIhLiNOTlEwbnN7jvbrb1kQTRPPzsv5o2kCN6fNYFc3Gv/k3Mnlvj7guEhaBT7jkFSCYSQrMZVjX/mCl4xGm+lXDvLrtN54fTEZZsvxJcS6LsTlYxae0C9oJG3Krb8lPxKkGNpNfW+/BqHpk3KAnxtrg5O4PeCDMeUPWY50G+I3YgWks7LXjrY/QBSEJcRWS95w1ngbprrf4ha+0BXU+vN92YbwhaV1uqS7Ooo4qH5uNA1qWOd5IoTGq8Ph1blLbfoBVECfNI8cwpscYLpNOHo8sQYolmTH5Z3gFJU2w/igfpE2gmaqOsnruTFwMsuHBDDOQpHN6MmfIAkLSo20g+e8gJpD/lKjXRIlhJxzJf9DteA5gZnPKuF4k/qXgrf2otKNUA1GbeKY7KyKpGhvpGVrztP5M+cis0C1r/OerYDH1sf+gYBceqi/KCMsRRUdkhHWHPUV6dYvcvvqy30wfSRV53IXDfsBfo9No9Gnh2UOhW7q52aw+0QPxVAp8eMbTIpJgpLV+0Bt0qHX8DzxA+xa0NdD6A1eAFaDcmnlWi0Ur1EcsV6lLduw93zBEc2WF//pAjrkfmh1PVBLXP5jHtHPTbPcIYbj68zTCzH1k0RyLJetYAq9YH3dCANO/SfRKEcaTTLs5VlIBXrAcf3vEsG8qg3ri6CalfphZ8Yo12rPpsQMgdF0rJwGMOJ1G0BqRMdMDWIP4ytd/soXvE+e1K998itApV959dyIAtfUWtze2jkgWamaSOebfdkogT5UXhWy24CSyeEAsHTzTn8rHBajEyzi3Z4/HlfoLkXwVDa8KGyi7C6zDZWs0/053OI+7sTJt3JWVYBdU5s6q1vqcC5B8zB3tJLzDB7zL7eW9FCVqq5gcdU34AS6TczAHCkc+fZHafaqg8crYQ1G6lkGB2UScSPeqrL0noetCpV0oS3bURdDrSD9fHlCAZ/S5P X-Microsoft-Antispam-Message-Info: 1TaPU4HpAPic93fEfClZg+3Zqr52U4ferdelYnp69wxYa4v1RqjebZqISZAoB4MjTgXJ/CBac6eM1+39Qt2KwIdV3rY1i6IDMScY5LfbbYHovauo7tcwpVlafVVuyLugO69+sYMsii5RRx8bAeIScFfd+ynb/Q2fVASjvGBcNChsQlhTFvumJuYvfPScJ6qG X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3352; 6:qSigmaowyZlHLEvzzOXltokqvSGmVBNnSsgD97ZOakiOYEcwRnl6gpwspQ8SIR8UyXAr14UrWsal1ZqF44p5LmFk2LPB0laf0D6E3pJCSWqmdaNMWOvxq2+iYr4GeqV4CAeE/vIxAQ88Q7MTairqd1bmggsvAan3ee7u941RSyk6AIlsoJ3vIC8YjalHwaZo+4HWdm6WOTCceyopmqZacfS3f6+KKzNyMP+OjWGfnoamJdJUmBHmT/PIZPDiGNEQdT8GQt/mIqCMx/X6eB4k47Uy1Fu7B9VN4jxpvlD+c1ReQzBcjPNptlPv++73gKL72rIGFsmZAIxxbhlvsbBvbDWvX9HIGWi0BvTCKKuYKEOjfDaITeK/BPZUPkq+QQXa0vrBe80JMR76OmSdos80e7IClSfbvqkNntrWQSUi6THXnjgD/mCbRoK34RRFNfwKVFBLasD14+WsP23q9dTKeQ==; 5:aFF+YSR5auqQw2qbaqIuZVPplHOZ27hqX2BslrZ1+7TKMMXrSoSiM3t8iY2kwiAm9H/aoDV9/tkfpMisGhZ/b5BL43NQCNCRORz1BGcvm3Kod3EKog2CUPWFplDUAfTXL4E23OcyIg8nzTJSL93xQWbH4ivLsRRzgCkHUXgYGGk=; 24:7lJnhLxlT15PTms07PHZerd6pSC4n9UsKlrGfeRsbyQM+Jv0TroL/9CrfVelW9HP/9QFmrYILhwT45kzvONGaZsl6i/DgYlip04b9G7TW2k= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM6PR08MB3352; 7:Dawa9dJU0gOqbmpe2ggRVsY5QJuKdA7aXn9HDXYgp54NsrOWGvEbsCgCI8vlEDO98tRKDW4qTfB8n6FGR3VQM5eQYVkwAUYWhfLvE5FLlyQaUrKqlgxLxzUT+Iq6TWiz5MIwhz1oF1umNKeoRGa663kX51nPGdOHEYqRC6aRWXrNMNkcN7/eMkPTo6alxb6eCdj5AJsl+Z9u6uWDDtxGDteUUNQV8tkgdM/nuCeY2ajPDcdrgl4ze+WFRsq/G3Yo; 20:oNEZ53Q6Vu9n1+Ppe33dP2epmrxVxiy2afRnXPHaqxPXIs8hqkiAyukcv5T3B89Tsp96waHhpuT2M1P8cIkiKYkqp8nGMmTKQ09pzvSry6jT2Kf7MuqQ8egP9dbYMIGMFDdTXvVMpXytrFKS3LC9H1tt+7J8uQPqEBfaMPU6E+A= X-MS-Office365-Filtering-Correlation-Id: 9a40e120-acc3-4634-b241-08d5b71e6476 X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2018 09:05:50.0976 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9a40e120-acc3-4634-b241-08d5b71e6476 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB3352 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 2a01:111:f400:fe1e::724 Subject: [Qemu-devel] [PATCH 0/2] qapi: allow flat unions with empty branches X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Anton Nefedov , armbru@redhat.com, mdroth@linux.vnet.ibm.com Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" hej, inspired by this thread http://lists.nongnu.org/archive/html/qemu-devel/2018-01/msg04802.html Seems that nobody got around to this since (did anybody?), so I thought I'd give a try. There's a generator patch and usage example. Anton Nefedov (2): qapi: allow flat unions with empty branches qapi: avoid empty CpuInfoOther type qapi/misc.json | 48 ++++-------------------------------------- cpus.c | 2 -- scripts/qapi/common.py | 18 ++++++++++------ scripts/qapi/doc.py | 2 +- scripts/qapi/types.py | 2 +- scripts/qapi/visit.py | 12 ++++++----- tests/qapi-schema/test-qapi.py | 2 +- 7 files changed, 26 insertions(+), 60 deletions(-)