https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111028
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution|--- |INVALID
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
Yeah, if you subtract two pointers like
(char*)&node - (char*)_node_offset
then both have to point to the same object (otherwise the behavior is
undefined) and you get a difference in the number of elements.
That difference isn't a pointer. The correct fix is as suggested, this isn't
a bug in GCC.