aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Uecker <uecker@tugraz.at>2022-12-30 14:51:37 +0100
committerMartin Uecker <uecker@tugraz.at>2022-12-30 14:51:37 +0100
commitebf7dd754a95bf9680bc53331a6b70f0cf83c045 (patch)
tree39fecd1b93f78bdd81ed7cf023000e8ab717d267
parent4269a6567eb991e6838f40bda5be9e3a7972530c (diff)
downloadgcc-ebf7dd754a95bf9680bc53331a6b70f0cf83c045.zip
gcc-ebf7dd754a95bf9680bc53331a6b70f0cf83c045.tar.gz
gcc-ebf7dd754a95bf9680bc53331a6b70f0cf83c045.tar.bz2
regressions tests for PR103770
This adds tests from bugzilla for PR103770 and duplicates. gcc/testsuite/ * gcc.dg/pr103770.c: New test. * gcc.dg/pr103859.c: New test. * gcc.dg/pr105065.c: New test.
-rw-r--r--gcc/testsuite/gcc.dg/pr103770.c27
-rw-r--r--gcc/testsuite/gcc.dg/pr103859.c23
-rw-r--r--gcc/testsuite/gcc.dg/pr105065.c16
3 files changed, 66 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/pr103770.c b/gcc/testsuite/gcc.dg/pr103770.c
new file mode 100644
index 0000000..f7867d1
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr103770.c
@@ -0,0 +1,27 @@
+/* PR middle-end/103770 */
+/* { dg-do compile } */
+/* { dg-options "" } */
+
+struct struct_s {
+ void* ptr;
+ void* ptr2;
+ void* ptr3;
+};
+
+struct struct_s struct_create(int N, const long vla[N]);
+
+void fun(int N)
+{
+ long vla[N];
+ struct struct_s st = struct_create(N, vla);
+}
+
+
+extern _Complex float g(int N, int dims[N]);
+
+void f(void)
+{
+ int dims[1];
+ _Complex float val = g(1, dims);
+}
+
diff --git a/gcc/testsuite/gcc.dg/pr103859.c b/gcc/testsuite/gcc.dg/pr103859.c
new file mode 100644
index 0000000..c58be5c
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr103859.c
@@ -0,0 +1,23 @@
+/* PR middle-end/103859 */
+/* { dg-do compile } */
+/* { dg-options "" } */
+
+typedef struct dcmplx dcmplx;
+
+struct dcmplx {
+ double re;
+ double im;
+};
+
+dcmplx horner(int n, dcmplx p[n], dcmplx x);
+
+int main(void)
+{
+ int i, n;
+ dcmplx x[n + 1], f[n + 1];
+
+ horner(n + 1, f, x[i]);
+
+ return 0;
+}
+
diff --git a/gcc/testsuite/gcc.dg/pr105065.c b/gcc/testsuite/gcc.dg/pr105065.c
new file mode 100644
index 0000000..da46d2b
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr105065.c
@@ -0,0 +1,16 @@
+/* PR middle-end/105065 */
+/* { dg-do compile } */
+/* { dg-options "" } */
+
+typedef struct
+{
+ char filler[17];
+} big_struct;
+
+big_struct dummy(int size, char array[size]);
+
+int main()
+{
+ dummy(0, 0);
+}
+