re PR c/77754 (internal compiler error : tree code 'call_expr' is not supported in LTO streams)

PR c/77754
	* gcc.c-torture/compile/pr77754-1.c: New test.
	* gcc.c-torture/compile/pr77754-2.c: New test.
	* gcc.c-torture/compile/pr77754-3.c: New test.
	* gcc.c-torture/compile/pr77754-4.c: New test.
	* gcc.c-torture/compile/pr77754-5.c: New test.
	* gcc.c-torture/compile/pr77754-6.c: New test.

From-SVN: r269197
This commit is contained in:
Jakub Jelinek 2019-02-25 23:58:45 +01:00 committed by Jakub Jelinek
parent d3a02ae53b
commit 7969545012
7 changed files with 83 additions and 0 deletions

View file

@ -1,3 +1,13 @@
2019-02-25 Jakub Jelinek <jakub@redhat.com>
PR c/77754
* gcc.c-torture/compile/pr77754-1.c: New test.
* gcc.c-torture/compile/pr77754-2.c: New test.
* gcc.c-torture/compile/pr77754-3.c: New test.
* gcc.c-torture/compile/pr77754-4.c: New test.
* gcc.c-torture/compile/pr77754-5.c: New test.
* gcc.c-torture/compile/pr77754-6.c: New test.
2019-02-25 Tamar Christina <tamar.christina@arm.com>
PR target/88530

View file

@ -0,0 +1,11 @@
/* PR c/77754 */
int fn3();
void fn4(int[][fn3 ()]);
void fn1() {
void fn2(int[][fn3 ()]);
int a[10][fn3 ()];
fn4 (a);
}

View file

@ -0,0 +1,10 @@
/* PR c/77754 */
int fn3();
void (**fn5) (int[][fn3 ()]);
void fn1 () {
int a[10][fn3 ()];
(**fn5) (a);
}

View file

@ -0,0 +1,11 @@
/* PR c/77754 */
int fn3();
typedef void (*fn6) (int[][fn3 ()]);
fn6 **fn7;
void fn1 () {
int a[10][fn3 ()];
(**fn7) (a);
}

View file

@ -0,0 +1,17 @@
/* PR c/77754 */
int fn3();
typedef void (*fn6) (int[][fn3 ()]);
struct S {
fn6 **fn7;
fn6 *fn8;
fn6 fn9;
} s;
void fn1 () {
int a[10][fn3 ()];
(**s.fn7) (a);
(*s.fn8) (a);
s.fn9 (a);
}

View file

@ -0,0 +1,14 @@
/* PR c/77754 */
int fn3();
void fn4(int[][fn3 ()]);
void fn4(int x[][fn3 ()])
{
}
void fn1() {
void fn2(int[][fn3 ()]);
int a[10][fn3 ()];
fn4 (a);
}

View file

@ -0,0 +1,10 @@
/* PR c/77754 */
int fn3();
void fn4(int (*)[fn3 ()][fn3 () + 1][fn3 () + 2], struct S { int a[fn3 ()]; } *);
void fn1() {
int a[10][fn3 ()][fn3 () + 1][fn3 () + 2];
fn4 (a, 0);
}