]> rtime.felk.cvut.cz Git - ulut.git/blobdiff - ulut/ul_gavl.h
Silent some GCC warnings.
[ulut.git] / ulut / ul_gavl.h
index d21d07653a73f6ca627d50feee30e0fce55cf766..9962bb57335e1f0f7ce54c07fe1120d3f5376fbd 100644 (file)
@@ -101,7 +101,7 @@ gavl_next_node(const gavl_node_t *node);
 gavl_node_t *
 gavl_prev_node(const gavl_node_t *node);
 
-#ifndef SDCC
+#if !defined(SDCC) && !defined(__SDCC)
 
 int
 gavl_is_empty(const gavl_root_t *root);
@@ -251,7 +251,7 @@ gavl_delete_and_next_node(gavl_root_t *root, gavl_node_t *node);
 /*===========================================================*/
 /* iterators for generic GAVL type */
 
-#ifndef SDCC
+#if !defined(SDCC) && !defined(__SDCC)
 
 typedef struct {
   gavl_root_t *container;
@@ -425,7 +425,10 @@ typedef struct{
 \
 static inline cust_item_t * \
 cust_prefix##_node2item(const cust_root_t *root, const gavl_node_t *node) \
-  {return (cust_item_t*)((char*)node-(long)&((cust_item_t*)0)->cust_item_node);}\
+{\
+  (void)root;\
+  return UL_CONTAINEROF(node, cust_item_t, cust_item_node);\
+}\
 \
 static inline cust_key_t *\
 cust_prefix##_node2key(const cust_root_t *root, gavl_node_t *node)\