librb: rb_dictionary: temporary hack to shut up gcc on windows
This commit is contained in:
parent
85368a13d3
commit
e0dc28c59f
1 changed files with 18 additions and 0 deletions
|
@ -153,6 +153,8 @@ extern unsigned int rb_dictionary_size(struct Dictionary *dtree);
|
||||||
void rb_dictionary_stats(struct Dictionary *dict, void (*cb)(const char *line, void *privdata), void *privdata);
|
void rb_dictionary_stats(struct Dictionary *dict, void (*cb)(const char *line, void *privdata), void *privdata);
|
||||||
void rb_dictionary_stats_walk(void (*cb)(const char *line, void *privdata), void *privdata);
|
void rb_dictionary_stats_walk(void (*cb)(const char *line, void *privdata), void *privdata);
|
||||||
|
|
||||||
|
#ifndef _WIN32
|
||||||
|
|
||||||
#define RB_POINTER_TO_INT(x) ((int32_t) (long) (x))
|
#define RB_POINTER_TO_INT(x) ((int32_t) (long) (x))
|
||||||
#define RB_INT_TO_POINTER(x) ((void *) (long) (int32_t) (x))
|
#define RB_INT_TO_POINTER(x) ((void *) (long) (int32_t) (x))
|
||||||
|
|
||||||
|
@ -165,6 +167,22 @@ void rb_dictionary_stats_walk(void (*cb)(const char *line, void *privdata), void
|
||||||
#define RB_POINTER_TO_ULONG(x) ((uint64_t) (unsigned long long) (x))
|
#define RB_POINTER_TO_ULONG(x) ((uint64_t) (unsigned long long) (x))
|
||||||
#define RB_ULONG_TO_POINTER(x) ((void *) (unsigned long long) (uint64_t) (x))
|
#define RB_ULONG_TO_POINTER(x) ((void *) (unsigned long long) (uint64_t) (x))
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
#define RB_POINTER_TO_INT(x) ((int32_t) (unsigned long long) (x))
|
||||||
|
#define RB_INT_TO_POINTER(x) ((void *) (unsigned long long) (int32_t) (x))
|
||||||
|
|
||||||
|
#define RB_POINTER_TO_UINT(x) ((uint32_t) (unsigned long long) (x))
|
||||||
|
#define RB_UINT_TO_POINTER(x) ((void *) (unsigned long long) (uint32_t) (x))
|
||||||
|
|
||||||
|
#define RB_POINTER_TO_LONG(x) ((int64_t) (unsigned long long) (x))
|
||||||
|
#define RB_LONG_TO_POINTER(x) ((void *) (unsigned long long) (int64_t) (x))
|
||||||
|
|
||||||
|
#define RB_POINTER_TO_ULONG(x) ((uint64_t) (unsigned long long) (x))
|
||||||
|
#define RB_ULONG_TO_POINTER(x) ((void *) (unsigned long long) (uint64_t) (x))
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
static inline int rb_int32cmp(const void *a, const void *b)
|
static inline int rb_int32cmp(const void *a, const void *b)
|
||||||
{
|
{
|
||||||
return RB_POINTER_TO_INT(b) - RB_POINTER_TO_INT(a);
|
return RB_POINTER_TO_INT(b) - RB_POINTER_TO_INT(a);
|
||||||
|
|
Loading…
Reference in a new issue