Several of Andres' buildfarm animals have recently started to whine that "performing pointer subtraction with a null pointer has undefined behavior" for assorted places in freepage.c.
>From a mathematical standpoint, this astonishes me: "x - 0 = x" is a tautology. So I'm a bit inclined to say "you're full of it" and disable -Wnull-pointer-subtraction. On the other hand, all of the occurrences are in calls of relptr_store with a constant-NULL third argument. So we could silence them without too much pain by adjusting that macro to special-case NULL. Or maybe we should change these call sites to do something different, because this is surely abusing the intent of relptr_store. Thoughts? regards, tom lane