Re: another compiler bug?
Adding pointers together is meaningless.
Even if you did cast them to integers and add them, the result would be meaningless.
Let's say that your first pointer is allocated at 0x1000000 and the second at 0x1000010.
So if you add them up you will get 0x2000010. Firstly that might not even be a valid memory address, perhaps your memory space is limited to 0x1FFFFFF. And if 0x2000010 is a valid address what is its significance to you? You have not been allocated that memory space to use for anything.
Adding two pointers in some ways is like adding two coordinates on a map. Like trying to add together London and Amsterdam.