[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH V3 2/9] qapi script: add check for duplicated key
From: |
Wenchao Xia |
Subject: |
[Qemu-devel] [PATCH V3 2/9] qapi script: add check for duplicated key |
Date: |
Fri, 29 Nov 2013 16:41:06 +0800 |
It is bad that same key was specified twice, especially when a union have
two branches with same condition. This patch can prevent it.
Signed-off-by: Wenchao Xia <address@hidden>
---
scripts/qapi.py | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/scripts/qapi.py b/scripts/qapi.py
index 82f586e..aa91edc 100644
--- a/scripts/qapi.py
+++ b/scripts/qapi.py
@@ -116,6 +116,8 @@ class QAPISchema:
if self.tok != ':':
raise QAPISchemaError(self, 'Expected ":"')
self.accept()
+ if key in expr:
+ raise QAPISchemaError(self, 'Duplicated key "%s"' % key)
expr[key] = self.get_expr(True)
if self.tok == '}':
self.accept()
--
1.7.1
- [Qemu-devel] [PATCH Resend V3 0/9] qapi script: support enum as discriminator and better enum name, Wenchao Xia, 2013/11/29
- [Qemu-devel] [PATCH V3 4/9] qapi script: code move for generate_enum_name(), Wenchao Xia, 2013/11/29
- [Qemu-devel] [PATCH V3 6/9] qapi script: support pre-defined enum type as discriminator in union, Wenchao Xia, 2013/11/29
- [Qemu-devel] [PATCH V3 3/9] qapi script: check correctness of discriminator values in union, Wenchao Xia, 2013/11/29
- [Qemu-devel] [PATCH V3 2/9] qapi script: add check for duplicated key,
Wenchao Xia <=
- [Qemu-devel] [PATCH V3 1/9] qapi script: remember enum values, Wenchao Xia, 2013/11/29
- [Qemu-devel] [PATCH V3 9/9] qapi script: do not add "_" for every capitalized char in enum, Wenchao Xia, 2013/11/29
- [Qemu-devel] [PATCH V3 5/9] qapi script: use same function to generate enum string, Wenchao Xia, 2013/11/29
- [Qemu-devel] [PATCH V3 7/9] tests: add cases for inherited struct and union with discriminator, Wenchao Xia, 2013/11/29
- [Qemu-devel] [PATCH V3 8/9] qapi: convert BlockdevOptions to use enum discriminator, Wenchao Xia, 2013/11/29