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

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
       choose an index scan if your joining column's datatypes do not
       match

Reply via email to