The code from the attachment causes arm-rtems-gcc/arm-elf-gcc to ICE at -O3:
# arm-rtems4.7-gcc -msoft-float -O3 -c clnt_tcp.i ../../../../../../../rtems.orig/c/src/../../cpukit/librpc/src/rpc/clnt_tcp.c: In function `clnttcp_call': ../../../../../../../rtems.orig/c/src/../../cpukit/librpc/src/rpc/clnt_tcp.c:291: warning: assignment from incompatible pointer type ../../../../../../../rtems.orig/c/src/../../cpukit/librpc/src/rpc/clnt_tcp.c:328: internal compiler error: in verify_local_live_at_start, at flow.c:546 Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://gcc.gnu.org/bugs.html> for instructions. It does not ice with optimization levels < 3. # arm-rtems4.7-gcc --version arm-rtems4.7-gcc (GCC) 3.4.3 20041103 (prerelease) This is a regression against gcc-3.2.3 which compiles the code without error. -- Summary: ICE Product: gcc Version: 3.4.3 Status: UNCONFIRMED Severity: normal Priority: P2 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ralf_corsepius at rtems dot org CC: gcc-bugs at gcc dot gnu dot org,joel at oarcorp dot com GCC target triplet: arm-elf* arm-rtems* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18295