I would be interested to know whether the attached file inline_bug_2.c produces correct results when you compile it with your gcc version. I changed ieee_init to use a union. Both gcc and cc produce correct results with both -m32 and -m64 on Solaris SPARC, Solaris x86 and Red Hat Linux.