On Apr 14, 2009, at 3:18 AM, Kukosa, Tomas wrote:
Do you have any proposal for solutuion?
G_GINT4_CONSTANT() *isn't* 2.10-and-later, and we've been using it for
a while:
$ egrep '64.*CONST' epan/*.c
tvbuff.c: G_GINT64_CONSTANT(0xffffffffffffffffU),
tvbuff.c: G_GINT64_CONSTANT(0x7fffffffffffffffU),
tvbuff.c: G_GINT64_CONSTANT(0x3fffffffffffffffU),
tvbuff.c: G_GINT64_CONSTANT(0x1fffffffffffffffU),
tvbuff.c: G_GINT64_CONSTANT(0x0fffffffffffffffU),
tvbuff.c: G_GINT64_CONSTANT(0x07ffffffffffffffU),
tvbuff.c: G_GINT64_CONSTANT(0x03ffffffffffffffU),
tvbuff.c: G_GINT64_CONSTANT(0x01ffffffffffffffU)
Unless 2.10 changes G_GINT64_CONSTANT() *not* to work if you put a U
at the end of the constant, we can just use G_GINT64_CONSTANT();
alternatively, we could perhaps do
#ifndef G_GUINT4_CONSTANT
#define G_GUINT64_CONSTANT(c) something that sticks a "U" immediately
after the constant and passes it to G_GINT64_CONSTANT()
#endif
in some appropriate header file if there's a way to do that with the C
preprocessor.