https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96594
--- Comment #4 from Dmitry Shachnev <mitya57 at gmail dot com> --- Thanks a lot for the fast response! Indeed, your suggestion works. It is counter-intuitive that you need a 64-bit variable to store a 32-bit value, but I can see the rationale (long is the only standard type that is guaranteed to be 32-bits).