Martijn van Oosterhout <kleptog@svana.org> writes:
> The fundamental property of a Datum is that you can pass it by value to
> a C function. This generally means it has to fit in a register. On the
> whole, the CPU register size is the same as the pointer size, so
> 2*sizeof(pointer) is unlikely to fit...
Not having it fit in a register might impact performance but it certainly
isn't a requirement. You can pass whole structs by value in modern C. (And by
modern here I don't mean C99, this has been supported since before ANSI and is
required by *C89*).
-- Gregory Stark EnterpriseDB http://www.enterprisedb.com