File tree Expand file tree Collapse file tree 2 files changed +10
-1
lines changed
Expand file tree Collapse file tree 2 files changed +10
-1
lines changed Original file line number Diff line number Diff line change 3939# define strcasecmp _stricmp
4040#endif
4141
42+ #ifdef _MSC_VER
43+ # define CEMU_TYPEOF __typeof__
44+ #else
45+ # define CEMU_TYPEOF typeof
46+ #endif
47+
4248#ifdef __EMSCRIPTEN__
4349# include <emscripten.h>
4450#else
Original file line number Diff line number Diff line change 1818
1919#define NODE_EMPTY (head ) \
2020 ((head)->next == (head))
21+
2122#define NODE_ITEM (type , item ) \
2223 ((type *)((uint8_t *)(item) - \
2324 offsetof(type, node)))
25+
2426#define NODE_FIRST (type , head ) \
2527 (NODE_EMPTY(head) ? NULL : NODE_ITEM(type, (head)->next))
28+
2629#define NODE_FOREACH (current , head ) \
2730 for (node_t *next = (head)->next; \
2831 ((current) = next != (head) \
29- ? NODE_ITEM(typeof (*(current)), next) \
32+ ? NODE_ITEM(CEMU_TYPEOF (*(current)), next) \
3033 : NULL), next = next->next, (current); )
3134
3235#define UPDATE_STATUS_CHANGE (pointer , field , value ) do { \
You can’t perform that action at this time.
0 commit comments