https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88647
--- Comment #1 from joseph at codesourcery dot com <joseph at codesourcery dot com> --- 6.3.2.1#2 (conversion of lvalues to rvalues): "If the lvalue has an incomplete type and does not have array type, the behavior is undefined.". Cf. bug 36941 (noting how DR#106 confuses things by allowing dereferences of pointers to qualified void).