Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/torture/pr39074-2.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
/* { dg-do run } */ /* { dg-require-effective-target stdint_types } */ /* { dg-options "-fdump-tree-alias" } */ /* { dg-skip-if "" { *-*-* } { "-O0" "-fno-fat-lto-objects" } { "" } } */ #include <stdint.h> int i; uintptr_t __attribute__((noinline,const)) bar(int ***p) { return (uintptr_t)p; } void __attribute__((noinline)) foo(void) { int *y; int **a = &y, **x; int ***p; uintptr_t b; b = bar(&a); p = (int ***)b; x = *p; *x = &i; /* *ANYTHING = &i has to make sure that y points to i. */ *y = 0; } extern void abort (void); int main() { i = 1; foo (); if (i != 0) abort (); return 0; } /* { dg-final { scan-tree-dump "y.._. = { i }" "alias" } } */ /* { dg-final { scan-tree-dump "y.._., points-to NULL, points-to vars: { D..... }" "alias" } } */