aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/validation
diff options
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2020-07-31 01:06:09 +0200
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2020-07-31 01:06:09 +0200
commit5fc204f2ec2d3ec038848db3f3bdb9fead782b4c (patch)
tree129c519e457d389e7bf17407183d8e93a28d906a /validation
parent9d3aa4b96b853c82da6940c1fed3a4e5801c5d90 (diff)
parent7cdd65dd26cc523b3ff6d4acfc19488a47be8d7b (diff)
downloadsparse-dev-5fc204f2ec2d3ec038848db3f3bdb9fead782b4c.tar.gz
Merge branch 'array-decl'
Diffstat (limited to 'validation')
-rw-r--r--validation/abstract-array-declarator-quals.c21
-rw-r--r--validation/abstract-array-declarator-star.c8
-rw-r--r--validation/abstract-array-declarator.c11
3 files changed, 40 insertions, 0 deletions
diff --git a/validation/abstract-array-declarator-quals.c b/validation/abstract-array-declarator-quals.c
new file mode 100644
index 00000000..e69df902
--- /dev/null
+++ b/validation/abstract-array-declarator-quals.c
@@ -0,0 +1,21 @@
+#define N 2
+
+void ok1(int []);
+void ok2(int [N]);
+void ok3(int [const volatile restrict]);
+void ok4(int [const volatile restrict N]);
+void ok5(int [static N]);
+void ok6(int [static const volatile restrict N]);
+void ok7(int [const volatile restrict static N]);
+
+void ok1(int a[]);
+void ok2(int a[N]);
+void ok3(int a[const volatile restrict]);
+void ok4(int a[const volatile restrict N]);
+void ok5(int a[static N]);
+void ok6(int a[static const volatile restrict N]);
+void ok7(int a[const volatile restrict static N]);
+
+/*
+ * check-name: abstract-array-declarator-quals
+ */
diff --git a/validation/abstract-array-declarator-star.c b/validation/abstract-array-declarator-star.c
new file mode 100644
index 00000000..fc42da3a
--- /dev/null
+++ b/validation/abstract-array-declarator-star.c
@@ -0,0 +1,8 @@
+void ok8(int [*]);
+
+void ok8(int a[*]);
+void ok9(int a[const volatile restrict *]);
+
+/*
+ * check-name: abstract-array-declarator-star
+ */
diff --git a/validation/abstract-array-declarator.c b/validation/abstract-array-declarator.c
new file mode 100644
index 00000000..ca182373
--- /dev/null
+++ b/validation/abstract-array-declarator.c
@@ -0,0 +1,11 @@
+void f77(int a[1, 2]);
+void c99(int a[(1, 2)]);
+
+/*
+ * check-name: abstract-array-declarator
+ *
+ * check-error-start
+abstract-array-declarator.c:1:17: error: Expected ] in abstract_array_declarator
+abstract-array-declarator.c:1:17: error: got ,
+ * check-error-end
+ */