1/* { dg-do compile } */ 2/* { dg-options "-O -fipa-pta -fdump-ipa-pta-details" } */ 3 4int (*fn)(int *); 5 6static int __attribute__((noinline,noclone)) 7foo (int *p) 8{ 9 return *p; 10} 11 12extern void bar (void); 13 14int main() 15{ 16 fn = foo; 17 bar (); 18 return 0; 19} 20 21/* Make sure that when a local function escapes its argument points-to sets 22 are properly adjusted. */ 23 24/* { dg-final { scan-ipa-dump "foo.arg0 = { ESCAPED NONLOCAL }" "pta" } } */ 25/* { dg-final { cleanup-ipa-dump "pta" } } */ 26