Tom Lane wrote:
> Mark Dilger <pgsql@markdilger.com> writes:
>> Tom Lane wrote:
>>> Please provide a stack trace --- AFAIK there shouldn't be any reason why
>>> a pass-by-ref 3-byte type wouldn't work.
>
>> (gdb) bt
>> #0 0xb7e01d45 in memcpy () from /lib/libc.so.6
>> #1 0x08077ece in heap_fill_tuple (tupleDesc=0x83c2ef7,
>> values=0x83c2e84, isnull=0x83c2e98 "", data=0x83c2ef4 "",
>> infomask=0x83c2ef0, bit=0x0)
>> at heaptuple.c:181
>
> Hm, are you sure you provided a valid pointer (not the integer value
> itself) as the Datum output from int3_in?
>
> (Looks at patch ... ) Um, I think you didn't, although that coding
> is far too cute to be actually readable ...
>
> regards, tom lane
I tracked this down to my implementation of Int24GetDatum. I've got
that fixed now and have hit another bug, but I'm still working on it so
I won't bother you about that yet.
As for the patch, I will eventually submit a version without the "cute"
code autogeneration stuff.
mark