Changeset: bbe2bbc1a589 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=bbe2bbc1a589 Modified Files: gdk/gdk.h gdk/gdk_posix.h sql/storage/bat/bat_table.c sql/storage/restrict/restrict_table.c sql/storage/sql_storage.h Branch: default Log Message:
Merge with Jan2014 branch. diffs (142 lines): diff --git a/gdk/gdk.h b/gdk/gdk.h --- a/gdk/gdk.h +++ b/gdk/gdk.h @@ -2236,8 +2236,7 @@ gdk_export lng IMPSimprintsize(BAT *b); #define GDK_HISTO_MAX_BIT ((int) (sizeof(size_t)<<3)) /* we prefer to use vm_alloc routines on size > GDKmmap */ -gdk_export void *GDKmmap(const char *path, int mode, size_t len) - __attribute__((__alloc_size__(3))); +gdk_export void *GDKmmap(const char *path, int mode, size_t len); gdk_export size_t GDK_mem_maxsize; /* max allowed size of committed memory */ gdk_export size_t GDK_vm_maxsize; /* max allowed size of reserved vm */ @@ -2246,12 +2245,9 @@ gdk_export int GDK_vm_trim; /* allow tr gdk_export size_t GDKmem_cursize(void); /* RAM/swapmem that MonetDB has claimed from OS */ gdk_export size_t GDKvm_cursize(void); /* current MonetDB VM address space usage */ -gdk_export void *GDKmalloc(size_t size) - __attribute__((__alloc_size__(1))); -gdk_export void *GDKzalloc(size_t size) - __attribute__((__alloc_size__(1))); -gdk_export void *GDKrealloc(void *pold, size_t size) - __attribute__((__alloc_size__(2))); +gdk_export void *GDKmalloc(size_t size); +gdk_export void *GDKzalloc(size_t size); +gdk_export void *GDKrealloc(void *pold, size_t size); gdk_export void GDKfree(void *blk); gdk_export str GDKstrdup(const char *s); @@ -3076,17 +3072,17 @@ gdk_export int ALIGNsetH(BAT *b1, BAT *b for (hb = HASHget(h, HASHprobe((h), v)); \ hb != HASHnil(h); \ hb = HASHgetlink(h,hb)) \ - if (ATOMcmp(h->type, v, BUNhead(bi, hb)) != 0); else + if (ATOMcmp(h->type, v, BUNhead(bi, hb)) == 0) #define HASHloop_str_hv(bi, h, hb, v) \ for (hb = HASHget((h),((BUN *) (v))[-1]&(h)->mask); \ hb != HASHnil(h); \ hb = HASHgetlink(h,hb)) \ - if (!GDK_STREQ(v, BUNhvar(bi, hb))); else + if (GDK_STREQ(v, BUNhvar(bi, hb))) #define HASHloop_str(bi, h, hb, v) \ for (hb = HASHget((h),strHash(v)&(h)->mask); \ hb != HASHnil(h); \ hb = HASHgetlink(h,hb)) \ - if (!GDK_STREQ(v, BUNhvar(bi, hb))); else + if (GDK_STREQ(v, BUNhvar(bi, hb))) /* * For string search, we can optimize if the string heap has @@ -3098,7 +3094,7 @@ gdk_export int ALIGNsetH(BAT *b1, BAT *b #define HASHloop_fstr(bi, h, hb, idx, v) \ for (hb = HASHget(h, strHash(v)&h->mask), idx = strLocate((bi.b)->H->vheap,v); \ hb != HASHnil(h); hb = HASHgetlink(h,hb)) \ - if (VarHeapValRaw((bi).b->H->heap.base, hb, (bi).b->H->width) != idx); else + if (VarHeapValRaw((bi).b->H->heap.base, hb, (bi).b->H->width) == idx) /* * The following example shows how the hashloop is used: * @@ -3130,18 +3126,18 @@ gdk_export int ALIGNsetH(BAT *b1, BAT *b for (hb = HASHget(h, HASHprobe(h, v)); \ hb != HASHnil(h); \ hb = HASHgetlink(h,hb)) \ - if (ATOMcmp(h->type, v, BUNhloc(bi, hb)) != 0); else + if (ATOMcmp(h->type, v, BUNhloc(bi, hb)) == 0) #define HASHloopvar(bi, h, hb, v) \ for (hb = HASHget(h,HASHprobe(h, v)); \ hb != HASHnil(h); \ hb = HASHgetlink(h,hb)) \ - if (ATOMcmp(h->type, v, BUNhvar(bi, hb)) != 0); else + if (ATOMcmp(h->type, v, BUNhvar(bi, hb)) == 0) #define HASHloop_TYPE(bi, h, hb, v, TYPE) \ for (hb = HASHget(h, hash_##TYPE(h, v)); \ hb != HASHnil(h); \ hb = HASHgetlink(h,hb)) \ - if (!simple_EQ(v, BUNhloc(bi, hb), TYPE)); else + if (simple_EQ(v, BUNhloc(bi, hb), TYPE)) #define HASHloop_bit(bi, h, hb, v) HASHloop_TYPE(bi, h, hb, v, bte) #define HASHloop_bte(bi, h, hb, v) HASHloop_TYPE(bi, h, hb, v, bte) @@ -3159,7 +3155,7 @@ gdk_export int ALIGNsetH(BAT *b1, BAT *b for (hb = HASHget(h, hash_any(h, v)); \ hb != HASHnil(h); \ hb = HASHgetlink(h,hb)) \ - if (!atom_EQ(v, BUNhead(bi, hb), (bi).b->htype)); else + if (atom_EQ(v, BUNhead(bi, hb), (bi).b->htype)) /* * @- loop over a BAT with ordered tail diff --git a/gdk/gdk_posix.h b/gdk/gdk_posix.h --- a/gdk/gdk_posix.h +++ b/gdk/gdk_posix.h @@ -189,8 +189,7 @@ gdk_export void MT_sleep_ms(unsigned int gdk_export size_t MT_getrss(void); -gdk_export void *MT_mmap(const char *path, int mode, size_t len) - __attribute__((__alloc_size__(3))); +gdk_export void *MT_mmap(const char *path, int mode, size_t len); gdk_export int MT_munmap(void *p, size_t len); gdk_export int MT_path_absolute(const char *path); diff --git a/sql/storage/bat/bat_table.c b/sql/storage/bat/bat_table.c --- a/sql/storage/bat/bat_table.c +++ b/sql/storage/bat/bat_table.c @@ -98,8 +98,7 @@ full_column(sql_trans *tr, sql_column *c return delta_full_bat(c, c->data, isTemp(c), d, s); } -static oid column_find_row(sql_trans *tr, sql_column *c, void *value, ...) - __attribute__((__sentinel__)); +static oid column_find_row(sql_trans *tr, sql_column *c, void *value, ...); static oid column_find_row(sql_trans *tr, sql_column *c, void *value, ...) { diff --git a/sql/storage/restrict/restrict_table.c b/sql/storage/restrict/restrict_table.c --- a/sql/storage/restrict/restrict_table.c +++ b/sql/storage/restrict/restrict_table.c @@ -51,8 +51,7 @@ full_column(sql_column *c, BAT *d, BAT * return full_column_( c, d, s); } -static oid column_find_row(sql_trans *tr, sql_column *c, void *value, ...) - __attribute__((__sentinel__)); +static oid column_find_row(sql_trans *tr, sql_column *c, void *value, ...); static oid column_find_row(sql_trans *tr, sql_column *c, void *value, ...) { diff --git a/sql/storage/sql_storage.h b/sql/storage/sql_storage.h --- a/sql/storage/sql_storage.h +++ b/sql/storage/sql_storage.h @@ -51,8 +51,7 @@ extern int store_readonly; extern int store_singleuser; /* relational interface */ -typedef oid (*column_find_row_fptr)(sql_trans *tr, sql_column *c, void *value, ...) - __attribute__((__sentinel__)); +typedef oid (*column_find_row_fptr)(sql_trans *tr, sql_column *c, void *value, ...); typedef void *(*column_find_value_fptr)(sql_trans *tr, sql_column *c, oid rid); typedef int (*column_update_value_fptr)(sql_trans *tr, sql_column *c, oid rid, void *value); typedef int (*table_insert_fptr)(sql_trans *tr, sql_table *t, ...); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list