I found following internal compiler error in gcc trunk rev. 142038, maybe a regression of bug 38051 fix.
$ gcc-4.4 -O2 -c tst.c tst.c: In function bar2: tst.c:20: internal compiler error: in find_func_aliases, at tree-ssa-structalias.c:3905 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. Exit 1 int foo ( void **x ) { return 0; } int (* foo_ptr) ( void **x ) = foo; typedef int ( CALL)(void); typedef CALL *ADR; int foo2 ( ADR * adr ); static int bar ( void ) { int rc; void *ptr; rc = foo2 ( (ADR *)&ptr ); *( (void **) &foo_ptr ) = ptr;; return 0; } void bar2( void ) { int rc = bar(); } -- Summary: internal compiler error: in find_func_aliases, at tree- ssa-structalias.c:3905 Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: regression AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: holger dot hopp at sap dot com GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38200