limited_allocator must grant friendship in order to be rebindable. Found by MSVC, which rebinds allocators in more situations than libc++ does.
This raises an interesting question as to whether libc++ should be validating user-defined allocators more aggressively.