my patch is wrong. see my follow-up in http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53285 and choose one of the implementations (the glibc implementation should be ok, as any C compiler in Debian supports anonymous unions).