It's been used in the real world, on the Cambridge Z88, ca. 1987:
https://www.cl.cam.ac.uk/~jrh13/devnotes/all.html#sec218
This XOR-list trick was mentioned by Joel Spolsky in "The Duct Tape Programmer" (2009), discussed recently here.
> They have to be good enough programmers to ship code, and we’ll forgive them if they never write a unit test, or if they xor the “next” and “prev” pointers of their linked list into a single DWORD to save 32 bits, because they’re pretty enough, and smart enough, to pull it off.
https://news.ycombinator.com/item?id=25715414
and this comment pointed out the real world usage: