The size of a memory object is a bounded variable, yes (an example of a domain specific bound). However, even without "very odd configure options", the bound is not Pike.NATIVE_MAX, but more likely Pike.NATIVE_MAX*2, due to the sizes being unsigned. On a 64-bit system the difference is rather academic, but not so on a 32-bit system. Creating an object larger than 2GB is possible on many 32-bit systems.