X-Git-Url: https://git.draconx.ca/gitweb/cdecl99.git/blobdiff_plain/0ffa3da080900dee7626815e913a4f4822891bda..032fe50c0297846a8d03eda505c9726f60a46501:/tests/decl-good.at diff --git a/tests/decl-good.at b/tests/decl-good.at index 4d709d5..e06fb76 100644 --- a/tests/decl-good.at +++ b/tests/decl-good.at @@ -84,3 +84,31 @@ SIMPLE_DECLS( SIMPLE_DECLS( [[int (x*)], [type function (pointer to x) returning int], [int (x *)]]) + +SIMPLE_DECLS( + [[int (x)()], [declare x as function returning int], [int x()]]) + +dnl Check that function reduction does not occur in english parses +SIMPLE_DECLS( + [[int (x)], [type function (x) returning int], [], [declare x as int]]) + +SIMPLE_DECLS( + [[int x@<:@@:>@], [declare x as array of int]], + [[int @<:@@:>@], [type array of int]]) + +SIMPLE_DECLS_EXPLAIN( + [[int ((int))], [type function (int) returning int], [int (int)]], + [[int (x(int))], [declare x as function (int) returning int], [int x(int)]], + [[int (())], [type function returning int], [int ()]]) + +SIMPLE_DECLS_EXPLAIN( + [[int (x())], [declare x as function returning int], [int x()]], + [[int ((x)())], [declare x as function returning int], [int x()]]) + +dnl Test that english-only keywords are not rejected as idenfitiers in C mode. +SIMPLE_DECLS_EXPLAIN( + [[of array@<:@@:>@], [declare array as array of of]], + [[returning as(function)], + [declare as as function (function) returning returning]], + [[pointer *declare], [declare declare as pointer to pointer]], + [[type to], [declare to as type]])