From: Daniel Dunbar Date: Thu, 29 Jan 2009 07:36:46 +0000 (+0000) Subject: ABITest: Fix test value generation for unions. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=900ed55727a5dd2a59412df00ea1513b851cd49a;p=clang ABITest: Fix test value generation for unions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63286 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/utils/ABITest/ABITestGen.py b/utils/ABITest/ABITestGen.py index 8f922d7e52..5b9756b545 100755 --- a/utils/ABITest/ABITestGen.py +++ b/utils/ABITest/ABITestGen.py @@ -193,9 +193,16 @@ class TypePrinter: yield '(%s) -1'%(t.name,) yield '(%s) 1'%(t.name,) elif isinstance(t, RecordType): - fieldValues = [list(self.getTestValues(f)) for f in t.fields] if not t.fields: yield '{ }' + return + # FIXME: Use designated initializers to access non-first + # fields of unions. + if t.isUnion: + for v in self.getTestValues(t.fields[0]): + yield '{ %s }' % v + return + fieldValues = [list(self.getTestValues(f)) for f in t.fields] for i,values in enumerate(fieldValues): for v in values: elements = map(random.choice,fieldValues)