Fold constant expression into constant.

This is clearly wrong. What is the purpose of this assert in the first place? add_property takes a size_t (aka uintptr_t aka uint64_t on most 64 bit systems) as a length, (attempts to) makes sure it fits in an int32_t, then stores it. Is there any reason the function can't just take a uint32_t?