diff options
author | Martin Uecker <uecker@tugraz.at> | 2022-12-30 14:51:37 +0100 |
---|---|---|
committer | Martin Uecker <uecker@tugraz.at> | 2022-12-30 14:51:37 +0100 |
commit | ebf7dd754a95bf9680bc53331a6b70f0cf83c045 (patch) | |
tree | 39fecd1b93f78bdd81ed7cf023000e8ab717d267 | |
parent | 4269a6567eb991e6838f40bda5be9e3a7972530c (diff) | |
download | gcc-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.c | 27 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr103859.c | 23 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr105065.c | 16 |
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); +} + |