view gcc/testsuite/gcc.dg/torture/pr71598-3.c @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents
children
line wrap: on
line source

/* { dg-do run } */

enum e1 { A, B };
enum e2 { C, D };

__attribute__((noinline,noclone))
enum e1 f(unsigned int *p)
{
  *(enum e1 *)p = A;
  *(enum e2 *)p = D;
  return *(enum e1 *)p;
}

int main()
{
  unsigned int storage;

  if (f(&storage) != B)
    __builtin_abort();
  return 0;
}