Changeset: 93a1786bbdf0 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=93a1786bbdf0
Modified Files:
        gdk/gdk.h
        gdk/gdk_bat.c
        gdk/gdk_batop.c
        gdk/gdk_private.h
Branch: default
Log Message:

Mark some functions as legacy.
Run with -d256 to see when they are called.


diffs (130 lines):

diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -3095,4 +3095,71 @@ gdk_export BAT *BATsample(BAT *b, BUN n)
  */
 #define MAXPARAMS      32
 
+#ifndef NDEBUG
+#ifdef __GNUC__
+/* in debug builds, complain (warn) about usage of legacy functions */
+
+#define _COL_TYPE(c)   ((c)->type == TYPE_void ?                       \
+                               (c)->seq == oid_nil ? "nil" : "void" :  \
+                        (c)->type == TYPE_oid ?                        \
+                               (c)->dense ? "dense" : "oid" :          \
+                        ATOMname((c)->type))
+
+#define BATins(b, n, force)                                            \
+       ({                                                              \
+               BAT *_b = (b), *_n = (n);                               \
+               bit _force = (force);                                   \
+               HEADLESSDEBUG fprintf(stderr,                           \
+                       "#BATins([%s,%s]#"BUNFMT",[%s,%s]#"BUNFMT",%d) 
%s[%s:%d]\n", \
+                       _COL_TYPE(_b->H), _COL_TYPE(_b->T), BATcount(_b), \
+                       _COL_TYPE(_n->H), _COL_TYPE(_n->T), BATcount(_n), \
+                       _force,                                         \
+                       __func__, __FILE__, __LINE__);                  \
+               BATins(_b, _n, _force);                                 \
+       })
+
+#define BATdel(b, n, force)                                            \
+       ({                                                              \
+               BAT *_b = (b), *_n = (n);                               \
+               bit _force = (force);                                   \
+               HEADLESSDEBUG fprintf(stderr,                           \
+                       "#BATdel([%s,%s]#"BUNFMT",[%s,%s]#"BUNFMT",%d) 
%s[%s:%d]\n", \
+                       _COL_TYPE(_b->H), _COL_TYPE(_b->T), BATcount(_b), \
+                       _COL_TYPE(_n->H), _COL_TYPE(_n->T), BATcount(_n), \
+                       _force,                                         \
+                       __func__, __FILE__, __LINE__);                  \
+               BATdel(_b, _n, _force);                                 \
+       })
+
+#define BUNdel(b, x, y, force)                                         \
+       ({                                                              \
+               BAT *_b = (b);                                          \
+               const void *_x = (x), *_y = (y);                        \
+               bit _force = (force);                                   \
+               HEADLESSDEBUG fprintf(stderr,                           \
+                       "#BUNdel([%s,%s]#"BUNFMT","PTRFMT","PTRFMT",%d) 
%s[%s:%d]\n", \
+                       _COL_TYPE(_b->H), _COL_TYPE(_b->T), BATcount(_b), \
+                       PTRFMTCAST _x, PTRFMTCAST _y,                   \
+                       _force,                                         \
+                       __func__, __FILE__, __LINE__);                  \
+               BUNdel(_b, _x, _y, _force);                             \
+       })
+
+#define BUNdelete(b, p, force)                                         \
+       ({                                                              \
+               BAT *_b = (b);                                          \
+               BUN _p = (p);                                           \
+               bit _force = (force);                                   \
+               HEADLESSDEBUG fprintf(stderr,                           \
+                       "#BUNdelete([%s,%s]#"BUNFMT","BUNFMT",%d) %s[%s:%d]\n", 
\
+                       _COL_TYPE(_b->H), _COL_TYPE(_b->T), BATcount(_b), \
+                       _p,                                             \
+                       _force,                                         \
+                       __func__, __FILE__, __LINE__);                  \
+               BUNdelete(_b, _p, _force);                              \
+       })
+
+#endif
+#endif
+
 #endif /* _GDK_H_ */
diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c
--- a/gdk/gdk_bat.c
+++ b/gdk/gdk_bat.c
@@ -1453,6 +1453,7 @@ BUNdelete_(BAT *b, BUN p, bit force)
        return p;
 }
 
+#undef BUNdelete
 BUN
 BUNdelete(BAT *b, BUN p, bit force)
 {
@@ -1472,6 +1473,7 @@ BUNdelete(BAT *b, BUN p, bit force)
 
 static BUN BUNlocate(BAT *b, const void *x, const void *y);
 
+#undef BUNdel
 gdk_return
 BUNdel(BAT *b, const void *x, const void *y, bit force)
 {
diff --git a/gdk/gdk_batop.c b/gdk/gdk_batop.c
--- a/gdk/gdk_batop.c
+++ b/gdk/gdk_batop.c
@@ -387,6 +387,7 @@ insert_string_bat(BAT *b, BAT *n, int ap
  * The content of a BAT can be appended to (removed from) another
  * using BATins (BATdel).
  */
+#undef BATins
 #define bunins(b,h,t) if (BUNins(b,h,t,force) != GDK_SUCCEED) return GDK_FAIL;
 gdk_return
 BATins(BAT *b, BAT *n, bit force)
@@ -888,6 +889,8 @@ BATappend(BAT *b, BAT *n, bit force)
                }                                                       \
        } while (0)
 
+#undef BATdel
+#undef BUNdel
 #define bundel(b,h,t) do { if (BUNdel(b,h,t,force) != GDK_SUCCEED) { 
GDKerror("BATdel: BUN does not occur.\n"); return GDK_FAIL; } } while (0)
 gdk_return
 BATdel(BAT *b, BAT *n, bit force)
diff --git a/gdk/gdk_private.h b/gdk/gdk_private.h
--- a/gdk/gdk_private.h
+++ b/gdk/gdk_private.h
@@ -469,12 +469,6 @@ GDKreallocmax_debug(void *ptr, size_t si
 #ifdef __GNUC__
 /* in debug builds, complain (warn) about usage of legacy functions */
 
-#define _COL_TYPE(c)   ((c)->type == TYPE_void ?                       \
-                               (c)->seq == oid_nil ? "nil" : "void" :  \
-                        (c)->type == TYPE_oid ?                        \
-                               (c)->dense ? "dense" : "oid" :          \
-                        ATOMname((c)->type))
-
 #define BATkdiff(l, r)                                                 \
        ({                                                              \
                BAT *_l = (l), *_r = (r);                               \
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to