[Kurt Roeckx]
> Your package is failing to build on 64 bit arches with the following
> error:

Heh, I guess it always was broken, but no-one used it on 64-bit archs. :)

> It's trying to print the address.  In C, with printf, you'd use a %p
> for it.  I have no idea if std::cout has something simular.

Is this the only place this is happening?  Did it compile when this
line is fixed?  Is this the only 64-bit problem in this code?

> I think the easiest way to fix it would be cast it to an intptr_t.

The code in question is debug output.  I guess it is trying to print
out a pointer, yes.  Why not just drop the cast completely?

   FaceAttr* faceattr = new FaceAttr(vertex_num, vertexlist_wc,
                                     0 /*normal_num*/, normallist_wc);
   [...]
   std::cout << "addr of light_: " << faceattr->light() << std::endl;
 * std::cout << int (*(faceattr->light())) << std::endl;
   faceattr->print();

faceattr->light() returns 'AnyLight**', and thus this line try to
print 'AnyLight*'.  If it can porint 'AnyLight**', it should be
capable of printing 'AnyLight*' too.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to