31 lines
470 B
C
31 lines
470 B
C
/* { dg-do run } */
|
|
/* { dg-options "-O2 -foptimize-sibling-calls" } */
|
|
|
|
typedef struct {
|
|
int data[4];
|
|
} arr16_t;
|
|
|
|
int result = 0;
|
|
|
|
void func2(int i, int j, arr16_t arr)
|
|
{
|
|
result = (arr.data[0] != 1
|
|
|| arr.data[1] != 2
|
|
|| arr.data[2] != 3
|
|
|| arr.data[3] != 4);
|
|
}
|
|
|
|
void func1(int i, int j, int k, arr16_t a)
|
|
{
|
|
func2(i, j, a);
|
|
}
|
|
|
|
int main(int argc, const char *argv[])
|
|
{
|
|
arr16_t arr = {{1, 2, 3, 4}};
|
|
|
|
func1(0, 0, 0, arr);
|
|
return result;
|
|
}
|
|
|