Anssi Hannula wrote: > Klaus Schmidinger wrote: > >>Reinhard Nissl wrote: >> >> >>>I've got a report of a similar warning in vdr-xine. I suggest this >>>solution: >>> >>>esyslog("ERROR: can't allocate %ld bytes for index '%s'", (long)(size >>>* sizeof(tIndex)), fileName); >> >> >>To be honest, I don't like this. >>Shouldn't this work on both 32- and 64bit systems without the need of >>typecasting? > > > The return type of sizeof() is size_t. The size of size_t is > implementation-defined. With GCC that's unsigned int on ix86 and > unsigned long on x86_64. Does this mean that one would have to use different conversion specifiers on 32- and 64bit systems? Sounds like a compiler bug to me, because the source code should compile corretcly on both systems... Klaus