Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/torture/pr57359-2.c @ 152:2b5abeee2509
update gcc11
author | anatofuz |
---|---|
date | Mon, 25 May 2020 07:50:57 +0900 |
parents | |
children |
line wrap: on
line source
/* { dg-do run } */ /* { dg-additional-options "-fstrict-aliasing" } */ extern void abort(); typedef int A; typedef float B; void __attribute__((noipa)) foo(A * p, B *r, long unk, long oh) { for (long i = 0; i < unk; ++i) { *p = 1; *r = 2; if (oh & i) break; *r = 3; *p = 4; } } int main(void) { union { A x; B f; } u; foo(&u.x, &u.f, 1, 1); if (u.x != 4) abort(); foo(&u.x, &u.f, 2, 1); if (u.f != 2) abort (); return 0; }