http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60556
--- Comment #12 from reed kotler <reed.kotler at imgtec dot com> --- (In reply to Andrew Pinski from comment #11) > (In reply to Andrew Pinski from comment #10) > > I should note the code is undefined and has (uint64_t)&stat and that itself > > is causing the issue. If I change it to be > > (uint64_t)(unsigned long)&stat, GCC does not crash. > > But using long instead of unsigned long causes the crash. > > Reduced testcase: > int g (int); > unsigned long long f(void) { > return (unsigned long long)(long)&g; > } > > This happens with both the C and C++ front-ends. Thanks. Do you know where the original line was that made it fail in the .ii? Depending on the location, I can possibly make the source change for now until the bug gets fixed in gcc.