Skip to content

Commit 44d06db

Browse files
committed
Fix for cv-qualified arrays
gccxml places cv-qualifiers to the right of the array declarator in the decl_string. Fir instance, given the declaration 'int const[arr[42]', the decl_string from gccxml is 'int [42] const'. Change-Id: I7dad0e6fb0c25cb3879055f3aaa2f1227fd49a7f
1 parent c14b512 commit 44d06db

File tree

1 file changed

+24
-9
lines changed

1 file changed

+24
-9
lines changed

unittests/array_bug_tester.py

Lines changed: 24 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,14 @@ def test5(self):
6161
global_ns = declarations.get_global_namespace(
6262
src_reader.read_string(code))
6363
arr_type = global_ns.variable('arr').type
64-
self.assertTrue(
65-
'char const[4]' == arr_type.decl_string,
66-
arr_type.decl_string)
64+
if self.config.xml_generator == "gccxml":
65+
self.assertTrue(
66+
'char[4] const' == arr_type.decl_string,
67+
arr_type.decl_string)
68+
else:
69+
self.assertTrue(
70+
'char const[4]' == arr_type.decl_string,
71+
arr_type.decl_string)
6772
self.assertTrue(
6873
declarations.is_array(arr_type))
6974
self.assertTrue(
@@ -75,9 +80,14 @@ def test6(self):
7580
global_ns = declarations.get_global_namespace(
7681
src_reader.read_string(code))
7782
arr_type = global_ns.variable('arr').type
78-
self.assertTrue(
79-
'char volatile[4]' == arr_type.decl_string,
80-
arr_type.decl_string)
83+
if self.config.xml_generator == "gccxml":
84+
self.assertTrue(
85+
'char[4] volatile' == arr_type.decl_string,
86+
arr_type.decl_string)
87+
else:
88+
self.assertTrue(
89+
'char volatile[4]' == arr_type.decl_string,
90+
arr_type.decl_string)
8191
self.assertTrue(
8292
declarations.is_array(arr_type))
8393
self.assertTrue(
@@ -89,9 +99,14 @@ def test7(self):
8999
global_ns = declarations.get_global_namespace(
90100
src_reader.read_string(code))
91101
arr_type = global_ns.variable('arr').type
92-
self.assertTrue(
93-
'char const volatile[4]' == arr_type.decl_string,
94-
arr_type.decl_string)
102+
if self.config.xml_generator == "gccxml":
103+
self.assertTrue(
104+
'char[4] const volatile' == arr_type.decl_string,
105+
arr_type.decl_string)
106+
else:
107+
self.assertTrue(
108+
'char const volatile[4]' == arr_type.decl_string,
109+
arr_type.decl_string)
95110
self.assertTrue(
96111
declarations.is_array(arr_type))
97112
self.assertTrue(

0 commit comments

Comments
 (0)