The type on the C side is `size_t`, which may not agree with the size of an int. It's technically a `UIntPtr`, but we probably won't have enough for the sign to matter.