testsuite: Filter unaligned pointer value warning

Targets which pack structures by default will not get warnings about
unaligned access to structure members.

gcc/testsuite/ChangeLog:

	* c-c++-common/Waddress-of-packed-member-1.c: Filter dg-warning
	for targets who pack by default.
	* c-c++-common/Waddress-of-packed-member-2.c: Ditto.
	* c-c++-common/pr51628-13.c: Ditto.
	* c-c++-common/pr51628-15.c: Ditto.
	* c-c++-common/pr51628-16.c: Ditto.
	* c-c++-common/pr51628-26.c: Ditto.
	* c-c++-common/pr51628-27.c: Ditto.
	* c-c++-common/pr51628-28.c: Ditto.
	* c-c++-common/pr51628-29.c: Ditto.
	* c-c++-common/pr51628-3.c: Ditto.
	* c-c++-common/pr51628-30.c: Ditto.
	* c-c++-common/pr51628-31.c: Ditto.
	* c-c++-common/pr51628-32.c: Ditto.
	* c-c++-common/pr51628-33.c: Ditto.
	* c-c++-common/pr51628-35.c: Ditto.
	* c-c++-common/pr51628-4.c: Ditto.
	* c-c++-common/pr51628-5.c: Ditto.
	* c-c++-common/pr51628-6.c: Ditto.
	* c-c++-common/pr51628-8.c: Ditto.
	* c-c++-common/pr51628-9.c: Ditto.
	* c-c++-common/pr88664-2.c: Ditto.
	* gcc.dg/pr51628-17.c: Ditto.
	* gcc.dg/pr51628-19.c: Ditto.
	* gcc.dg/pr51628-20.c: Ditto.
	* gcc.dg/pr51628-21.c: Ditto.
	* gcc.dg/pr51628-22.c: Ditto.
	* gcc.dg/pr51628-24.c: Ditto.
	* gcc.dg/pr51628-25.c: Ditto.
	* gcc.dg/pr51628-34.c: Ditto.
	* gcc.dg/pr88928.c: Ditto.

Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
This commit is contained in:
Dimitar Dimitrov 2020-07-09 22:00:46 +03:00
parent c850a642e1
commit 6741411b03
30 changed files with 117 additions and 117 deletions

View file

@ -52,28 +52,28 @@ void foo (void)
f0 = *&__real__ t0.f; /* { dg-bogus "may result in an unaligned pointer value" } */
f0 = *&__imag__ t0.f; /* { dg-bogus "may result in an unaligned pointer value" } */
i1 = (&t0.c, (int*) 0); /* { dg-bogus "may result in an unaligned pointer value" } */
t2 = (struct t**) t10; /* { dg-warning "may result in an unaligned pointer value" } */
t2 = (struct t**) t100; /* { dg-warning "may result in an unaligned pointer value" } */
t2 = (struct t**) t1; /* { dg-warning "may result in an unaligned pointer value" } */
t2 = (struct t**) bar(); /* { dg-warning "may result in an unaligned pointer value" } */
t2 = (struct t**) baz(); /* { dg-warning "may result in an unaligned pointer value" } */
t2 = (struct t**) bazz(); /* { dg-warning "may result in an unaligned pointer value" } */
i1 = &t0.b; /* { dg-warning "may result in an unaligned pointer value" } */
i1 = &t1->b; /* { dg-warning "may result in an unaligned pointer value" } */
i1 = &t10[0].b; /* { dg-warning "may result in an unaligned pointer value" } */
i1 = t0.d; /* { dg-warning "may result in an unaligned pointer value" } */
i1 = t1->d; /* { dg-warning "may result in an unaligned pointer value" } */
i1 = t10[0].d; /* { dg-warning "may result in an unaligned pointer value" } */
i1 = (int*) &t10[0].e[0]; /* { dg-warning "may result in an unaligned pointer value" } */
i1 = (int*) t10[0].e; /* { dg-warning "may result in an unaligned pointer value" } */
i2 = &t10[0].e[0]; /* { dg-warning "may result in an unaligned pointer value" } */
i2 = t10[0].e; /* { dg-warning "may result in an unaligned pointer value" } */
i2 = &*&t0.c; /* { dg-warning "may result in an unaligned pointer value" } */
i2 = &*&*&t0.c; /* { dg-warning "may result in an unaligned pointer value" } */
f1 = &__real__ t0.f; /* { dg-warning "may result in an unaligned pointer value" } */
f1 = &__imag__ t0.f; /* { dg-warning "may result in an unaligned pointer value" } */
i1 = (0, (int*) &t0.c); /* { dg-warning "may result in an unaligned pointer value" } */
i1 = (int*) (0, &t0.c); /* { dg-warning "may result in an unaligned pointer value" } */
i1 = (0, (int*)(0, &t0.c));/* { dg-warning "may result in an unaligned pointer value" } */
i1 = (int*)(0, 1, (void*)(2, 3, (int*)(4, 5, &t0.c)));/* { dg-warning "may result in an unaligned pointer value" } */
t2 = (struct t**) t10; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
t2 = (struct t**) t100; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
t2 = (struct t**) t1; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
t2 = (struct t**) bar(); /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
t2 = (struct t**) baz(); /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
t2 = (struct t**) bazz(); /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i1 = &t0.b; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i1 = &t1->b; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i1 = &t10[0].b; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i1 = t0.d; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i1 = t1->d; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i1 = t10[0].d; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i1 = (int*) &t10[0].e[0]; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i1 = (int*) t10[0].e; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i2 = &t10[0].e[0]; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i2 = t10[0].e; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i2 = &*&t0.c; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i2 = &*&*&t0.c; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
f1 = &__real__ t0.f; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
f1 = &__imag__ t0.f; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i1 = (0, (int*) &t0.c); /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i1 = (int*) (0, &t0.c); /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i1 = (0, (int*)(0, &t0.c));/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i1 = (int*)(0, 1, (void*)(2, 3, (int*)(4, 5, &t0.c)));/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
}

View file

@ -24,24 +24,24 @@ int *i0;
void foo (void)
{
i0 = s0.p.a; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = t0.p.a; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = s0.p.b[0]; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = t0.p.b[0]; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = &s0.p.a[0]; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = &t0.p.a[0]; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = &s0.p.b[0][0]; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = &t0.p.b[0][0]; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = *s0.p.b; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = *t0.p.b; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = &**s0.p.b; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = &**t0.p.b; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = **&s0.p.b; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = **&t0.p.b; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = &*s0.p.a; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = &*t0.p.a; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = *&s0.p.a; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = *&t0.p.a; /* { dg-warning "may result in an unaligned pointer value" } */
i0 = s0.p.a; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = t0.p.a; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = s0.p.b[0]; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = t0.p.b[0]; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = &s0.p.a[0]; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = &t0.p.a[0]; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = &s0.p.b[0][0]; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = &t0.p.b[0][0]; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = *s0.p.b; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = *t0.p.b; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = &**s0.p.b; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = &**t0.p.b; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = **&s0.p.b; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = **&t0.p.b; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = &*s0.p.a; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = &*t0.p.a; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = *&s0.p.a; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = *&t0.p.a; /* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } } */
i0 = t0.u.a; /* { dg-bogus "may result in an unaligned pointer value" } */
i0 = t0.u.b[0]; /* { dg-bogus "may result in an unaligned pointer value" } */
i0 = &t0.u.a[0]; /* { dg-bogus "may result in an unaligned pointer value" } */

View file

@ -6,4 +6,4 @@ struct B { int i; };
struct C { struct B b; } __attribute__ ((packed));
int* h4 (struct C *p) { return &p->b.i; }
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */

View file

@ -10,5 +10,5 @@ int*
f (struct A *p, int *q)
{
return q ? q : &p->i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -8,6 +8,6 @@ struct B {
} b;
int *p = (int*)&b.a.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
int *q = (int*)&b.a;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */

View file

@ -15,19 +15,19 @@ void
foo1 (void)
{
addr = (i = -1, &p.i);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}
void
foo2 (void)
{
addr = (i = -1, j = -2, &p.i);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}
void
foo3 (void)
{
addr = (i = -1, (j = -2, &p.i));
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -9,4 +9,4 @@ struct C { struct B b; };
extern struct C *p;
int* g8 (void) { return &p->b.a.i; }
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */

View file

@ -11,9 +11,9 @@ foo3 (struct A *p1, int *q1, int *q2, struct A *p2)
{
return (q1
? &p1->i
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
: (q2 ? &p2->i : q2));
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}
int*
@ -21,11 +21,11 @@ foo4 (struct A *p1, int **q1, int *q2, int *q3, struct A *p2)
{
return (q1
? (*q1 = q2, &p1->i)
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
: (q2
? (*q1 = &p1->i,
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
*q2 = 2, &p2->i)
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
: q2));
}

View file

@ -12,5 +12,5 @@ int*
g8 (void)
{
return &p->b.a.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -13,7 +13,7 @@ extern int *x;
extern void bar (int *);
int *addr = &p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
int *
foo (void)
@ -21,15 +21,15 @@ foo (void)
struct pair_t arr[2] = { { 1, 10 }, { 2, 20 } };
int *p0, *p1;
p0 = &arr[0].i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (p0);
p1 = &arr[1].i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (p1);
bar (&p.i);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
x = &p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
return &p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -12,12 +12,12 @@ int*
foo1 (void)
{
return &__real(p->b.a.i);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}
int*
foo2 (void)
{
return &__imag(p->b.a.i);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -12,5 +12,5 @@ int *
foo()
{
return &x.x[1];
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -16,4 +16,4 @@ struct B
struct B b;
int *p = &b.ar[1].i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */

View file

@ -15,5 +15,5 @@ void
foo (struct pair_t *p)
{
bar (p ? p->i : (int *) 0);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -12,12 +12,12 @@ long *
foo1 (void)
{
return (long *) p;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}
long *
foo2 (void)
{
return (long *) bar ();
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -13,7 +13,7 @@ extern int *x;
extern void bar (int *);
int *addr = &p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
int *
foo (void)
@ -21,15 +21,15 @@ foo (void)
struct pair_t arr[2] = { { 1, 10 }, { 2, 20 } };
int *p0, *p1;
p0 = &arr[0].i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (p0);
p1 = &arr[1].i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (p1);
bar (&p.i);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
x = &p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
return &p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -13,7 +13,7 @@ extern int *x;
extern void bar (int *);
int *addr = &p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
int *
foo (void)
@ -21,15 +21,15 @@ foo (void)
struct pair_t arr[2] = { { 1, 10 }, { 2, 20 } };
int *p0, *p1;
p0 = &arr[0].i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (p0);
p1 = &arr[1].i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (p1);
bar (&p.i);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
x = &p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
return &p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -13,7 +13,7 @@ extern int *x;
extern void bar (int *);
int *addr = &p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
int *
foo (void)
@ -21,15 +21,15 @@ foo (void)
struct pair_t arr[2] = { { 1, 10 }, { 2, 20 } };
int *p0, *p1;
p0 = &arr[0].i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (p0);
p1 = &arr[1].i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (p1);
bar (&p.i);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
x = &p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
return &p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -13,24 +13,24 @@ extern int *x;
extern void bar (int *);
int *addr = p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
int *
foo (struct pair_t *p)
{
int *p0, *p1;
p0 = p->i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (p0);
p1 = &p->i[1];
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (p1);
bar (p->i);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (&p->i[2]);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
x = p->i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
return &p->i[3];
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -13,24 +13,24 @@ extern int *x;
extern void bar (int *);
int *addr = p.i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
int *
foo (struct pair_t *p)
{
int *p0, *p1;
p0 = p->i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (p0);
p1 = &p->i[1];
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (p1);
bar (p->i);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
bar (&p->i[2]);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
x = p->i;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
return &p->i[3];
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -11,12 +11,12 @@ void **
fun1 (struct data *p)
{
return &p->ptr;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}
int *
fun2 (struct data *p, int *x)
{
return p ? (*x = 1, (int *) &p->ptr) : (int *) 0;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -7,4 +7,4 @@ struct A {
} __attribute__ ((packed));
long* f8 (struct A *p) { return &p->i; }
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */

View file

@ -16,11 +16,11 @@ bar (int n, int k, void *ptr)
int *p0, *p1;
p0 = p->x;
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
foo (p0);
p1 = &p->x[1];
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
foo (p1);
return &p->x[1];
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -8,4 +8,4 @@ struct C { struct B b; } __attribute__ ((packed));
extern struct C *p;
long* g8 (void) { return p; }
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */

View file

@ -8,4 +8,4 @@ struct C { struct B b; } __attribute__ ((packed));
extern struct C p[];
long* g8 (void) { return p; }
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */

View file

@ -6,4 +6,4 @@ struct B { int i; };
struct C { struct B b; } __attribute__ ((packed));
int* g4 (struct C *p) { return &p->b; }
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */

View file

@ -7,4 +7,4 @@ struct A {
} __attribute__ ((packed));
short* f2 (struct A *p) { return &p->i; }
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */

View file

@ -6,4 +6,4 @@ struct B { int i; };
struct C { struct B b; } __attribute__ ((packed));
long* g8 (struct C *p) { return p; }
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */

View file

@ -9,9 +9,9 @@ baz (int x, struct S *p)
{
return (x
? &p->a
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
: &p->b);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}
short *
@ -19,7 +19,7 @@ qux (int x, struct S *p)
{
return (short *) (x
? &p->a
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
: &p->b);
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */
}

View file

@ -3,4 +3,4 @@
struct a { } __attribute__((__packed__));
void c (struct a **);
void d (const struct a *b) { c ((struct a **) b); }
/* { dg-warning "may result in an unaligned pointer value" "" { target *-*-* } .-1 } */
/* { dg-warning "may result in an unaligned pointer value" "" { target { ! default_packed } } .-1 } */