summaryrefslogtreecommitdiff
path: root/tests/test_c_parser.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_c_parser.py')
-rwxr-xr-xtests/test_c_parser.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/test_c_parser.py b/tests/test_c_parser.py
index 40b53af..7e6a648 100755
--- a/tests/test_c_parser.py
+++ b/tests/test_c_parser.py
@@ -572,6 +572,20 @@ class TestCParser_fundamentals(TestCParser_base):
'bar',
['TypeDecl', ['IdentifierType', ['int']]]])
+ # typedefs with _Atomic specifiers.
+ s = 'typedef _Atomic(int) atomic_int;'
+ self.assertEqual(self.get_decl(s, 0),
+ ['Typedef', 'atomic_int', ['TypeDecl', ['IdentifierType', ['int']]]])
+
+ s = 'typedef _Atomic(_Atomic(_Atomic(int (*)(void)) *) *) t;'
+ self.assertEqual(self.get_decl(s, 0),
+ ['Typedef', 't',
+ ['PtrDecl', ['_Atomic'],
+ ['PtrDecl', ['_Atomic'],
+ ['PtrDecl', ['_Atomic'],
+ ['FuncDecl', [['Typename', ['TypeDecl', ['IdentifierType', ['void']]]]],
+ ['TypeDecl', ['IdentifierType', ['int']]]]]]]])
+
def test_sizeof(self):
e = """
void foo()