The problem isn't the number of addresses, it's the address space fragmentation. The IPv4 global routing table is already 3x the size it should be. At the point where you're just giving every device an arbitrary number, the addresses cease to function as addresses.