20010518-2.c: New file.

2001-05-25  Diego Novillo  <dnovillo@redhat.com>

	* gcc.c-torture/compile/20010518-2.c: New file.
	* gcc.c-torture/execute/20010518-1.c: New file.
	* gcc.c-torture/execute/20010518-2.c: New file.

From-SVN: r42580
This commit is contained in:
Diego Novillo 2001-05-25 19:38:52 +00:00 committed by Diego Novillo
parent 827ae6cf7c
commit 47cf924739
4 changed files with 85 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2001-05-25 Diego Novillo <dnovillo@redhat.com>
* gcc.c-torture/compile/20010518-2.c: New file.
* gcc.c-torture/execute/20010518-1.c: New file.
* gcc.c-torture/execute/20010518-2.c: New file.
2001-05-25 Joseph S. Myers <jsm28@cam.ac.uk>
* gcc.dg/c90-arraydecl-1.c, gcc.dg/c99-arraydecl-1.c: New tests.

View File

@ -0,0 +1,13 @@
/* Large static storage. */
#include <limits.h>
static volatile char chars_1[INT_MAX / 2];
static volatile char chars_2[1];
int
foo (void)
{
chars_1[10] = 'y';
chars_2[0] = 'x';
}

View File

@ -0,0 +1,28 @@
/* Leaf functions with many arguments. */
int
add (int a,
int b,
int c,
int d,
int e,
int f,
int g,
int h,
int i,
int j,
int k,
int l,
int m)
{
return a+b+c+d+e+f+g+h+i+j+k+l+m;
}
int
main(void)
{
if (add (1,2,3,4,5,6,7,8,9,10,11,12,13) != 91)
abort ();
exit (0);
}

View File

@ -0,0 +1,38 @@
/* Mis-aligned packed structures. */
typedef struct
{
char b0;
char b1;
char b2;
char b3;
char b4;
char b5;
} __attribute__ ((packed)) b_struct;
typedef struct
{
short a;
long b;
short c;
short d;
b_struct e;
} __attribute__ ((packed)) a_struct;
int
main(void)
{
volatile a_struct *a;
volatile a_struct b;
a = &b;
*a = (a_struct){1,2,3,4};
a->e.b4 = 'c';
if (a->a != 1 || a->b != 2 || a->c != 3 || a->d != 4 || a->e.b4 != 'c')
abort ();
exit (0);
}