On Thu, Aug 30, 2012 at 3:10 PM, Nicolas Cellier < nicolas.cellier.aka.nice@gmail.com> wrote:
strange test in line 73: if (!(size = sizeField(arg))) size = argByteSize = sizeof(void *); else argByteSize = abs(size);
for me, it means
if (sizeField(arg) != 0) size = argByteSize = sizeof(void *); else size = argByteSize = 0;
you have it the wrong way round. It is equivalent to
size = sizeField(arg); if (!size) size = argByteSize = sizeof(void *); else argByteSize = abs(size);
which is equivalent to
size = sizeField(arg); if (size == 0) size = argByteSize = sizeof(void *); else argByteSize = abs(size);
is it intentional ?
yes.
Nicolas