> I just compiled TCompactProtocol.cpp after adding #warnings to TProtocol.h > that let me know what path was taken through the header definitions. It > turns out that I got the definitions at line 134 (the "else" that goes with > "# if defined(__GNUC__) && defined(__GLIBC__)"), so I suspect that you see > the definitions starting at line 114, which do NOT define htolell or > letohll. > > This looks like a bug. It can be fixed by adding the proper definitions for > the macros. I can't seem to find anything that defines what these do, > though, so it's not a slam dunk. If I look at the little endian code, > neither of these macros do anything, so I would guess that for your case > they should be defined as: > > # define htolell(n) bswap_64(n) > # define letohll(n) bswap_64(n) > > which would agree with what's done at line 111. That gives me confidence. > You could try adding these lines after line 124, but I don't know how you > verify that they're the correct definitions. (What does htolell mean? Host > to Little Endian Long Long?)
Hi Manbert, this morning I already tried to replace the macros the way you say and ATM all is working correctly... ;-) Anyway, thanks for your response! -- Best Regards, Jonathan Stoppani
