And it's not like Apple isn't aware of the dangers, either; they used top-byte tagging on the 68000, and it took them a lot of time and effort to migrate away from that to support 16+ MB systems.
IIRC the issue was that 68000 would transparently mask the top bits, so code could get away with avoiding the explicit masking, which of course breaks when you move to a larger address space.
More modern cpus enforce specific bit patterns for the MSBs, so broken code would be caught immediately.
More modern cpus enforce specific bit patterns for the MSBs, so broken code would be caught immediately.