Changeset: 3404fd663311 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/3404fd663311
Modified Files:
        clients/examples/C/bincopydata.h
        clients/examples/C/streamcat.c
        clients/mapilib/mapi.h
        clients/mapilib/mapi_intern.h
        clients/mapilib/msettings.h
        clients/mapilib/msettings_internal.h
        clients/mapilib/parseurl.c
        clients/mapilib/writeurl.c
        clients/odbc/driver/ODBCGlobal.h
        common/stream/stream.h
        common/stream/stream_internal.h
        common/utils/matomic.h
        common/utils/mcrypt.h
        common/utils/mstring.h
        common/utils/mutils.h
        common/utils/ripemd160.h
        common/utils/rmd160.h
        gdk/gdk.h
        gdk/gdk_analytic.h
        gdk/gdk_bbp.c
        gdk/gdk_calc_private.h
        gdk/gdk_group.c
        gdk/gdk_hash.c
        gdk/gdk_heap.c
        gdk/gdk_logger.h
        gdk/gdk_private.h
        gdk/gdk_string.c
        gdk/gdk_system_private.h
        gdk/gdk_time.c
        gdk/gdk_time.h
        gdk/gdk_utils.c
        geom/lib/libgeom.c
        geom/lib/libgeom.h
        geom/monetdb5/geom.h
        geom/monetdb5/geom_atoms.h
        monetdb5/mal/mal.h
        monetdb5/mal/mal_exception.c
        monetdb5/mal/mal_exception.h
        monetdb5/mal/mal_instruction.h
        monetdb5/mal/mal_internal.h
        monetdb5/mal/mal_private.h
        monetdb5/mal/mal_profiler.c
        monetdb5/mal/mal_scenario.h
        monetdb5/mal/mel.h
        monetdb5/modules/atoms/mtime.c
        monetdb5/modules/atoms/mtime.h
        monetdb5/modules/atoms/str.h
        monetdb5/modules/atoms/xml.h
        monetdb5/modules/kernel/group.h
        monetdb5/modules/kernel/mmath_private.h
        monetdb5/modules/mal/pipeline.h
        monetdb5/modules/mal/pp_sort.c
        monetdb5/optimizer/opt_commonTerms.c
        monetdb5/optimizer/opt_support.h
        monetdb_config.h.in
        sql/backends/monet5/copy.h
        sql/backends/monet5/copy_misc.c
        sql/backends/monet5/rel_bin.h
        sql/backends/monet5/sql_execute.h
        sql/backends/monet5/sql_gencode.c
        sql/backends/monet5/sql_monet_backend.h
        sql/backends/monet5/sql_result.h
        sql/backends/monet5/sql_scenario.c
        sql/backends/monet5/sql_scenario.h
        sql/backends/monet5/vaults/parquet/pqc_filemetadata.c
        sql/backends/monet5/vaults/parquet/pqc_reader.c
        sql/common/sql_string.h
        sql/server/rel_dump.c
        sql/server/rel_optimizer_private.h
        sql/server/rel_remote.h
        sql/server/rel_statistics.h
        sql/server/rel_updates.h
        sql/server/sql_mvc.h
        sql/storage/bat/bat_logger.c
        sql/storage/sql_storage.h
        sql/storage/store.c
        tools/merovingian/daemon/merovingian.h
Branch: default
Log Message:

Instead of defining attribute tokens to empty string, define new tokens for 
attributes.
This helps if other include files depend on the attribute tokens to not
be defined as empty.


diffs (truncated from 6027 to 300 lines):

diff --git a/clients/examples/C/bincopydata.h b/clients/examples/C/bincopydata.h
--- a/clients/examples/C/bincopydata.h
+++ b/clients/examples/C/bincopydata.h
@@ -13,7 +13,7 @@
 #include "copybinary_support.h"
 
 _Noreturn void croak(int status, _In_z_ _Printf_format_string_ const char 
*msg, ...)
-       __attribute__((__format__(__printf__, 2, 3)));
+       ATTR_FORMAT(__printf__, 2, 3);
 
 void gen_decimal_tinyints(FILE *f, bool byteswap, long nrecs, char *arg);
 void gen_decimal_smallints(FILE *f, bool byteswap, long nrecs, char *arg);
diff --git a/clients/examples/C/streamcat.c b/clients/examples/C/streamcat.c
--- a/clients/examples/C/streamcat.c
+++ b/clients/examples/C/streamcat.c
@@ -78,7 +78,7 @@ static void copy_file_to_stream(FILE *in
 /* Format the message and write it to stderr. Then exit with the given status.
  * If status is 1, include USAGE in the message.
  */
-__attribute__((__format__(__printf__, 2, 3)))
+ATTR_FORMAT(__printf__, 2, 3)
 _Noreturn static void
 croak(int status, _In_z_ _Printf_format_string_ const char *msg, ...)
 {
diff --git a/clients/mapilib/mapi.h b/clients/mapilib/mapi.h
--- a/clients/mapilib/mapi.h
+++ b/clients/mapilib/mapi.h
@@ -68,29 +68,35 @@ extern "C" {
 #endif
 
 /* Does your compiler support `__attribute__' extension? */
-#if !defined(__has_attribute)
-#ifndef __attribute__
-#define __attribute__(...)
+#if defined(__has_attribute)
+#if __has_attribute(__const__)
+#define ATTR_CONST                     __attribute__((__const__))
+#endif
+#if __has_attribute(__nonnull__)
+#define ATTR_NONNULL(...)              
__attribute__((__nonnull__(__VA_ARGS__)))
 #endif
-#else
-#if !__has_attribute(__nonnull__)
-#define __nonnull__(...)
 #endif
+
+#ifndef ATTR_CONST
+#define ATTR_CONST
+#endif
+#ifndef ATTR_NONNULL
+#define ATTR_NONNULL(...)
 #endif
 
 /* connection-oriented functions */
 mapi_export Mapi mapi_mapi(const char *host, int port, const char *username, 
const char *password, const char *lang, const char *dbname);
 mapi_export Mapi mapi_mapiuri(const char *url, const char *user, const char 
*pass, const char *lang);
 mapi_export MapiMsg mapi_destroy(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export Mapi mapi_connect(const char *host, int port, const char 
*username, const char *password, const char *lang, const char *dbname);
 mapi_export char **mapi_resolve(const char *host, int port, const char 
*pattern);
 mapi_export MapiMsg mapi_disconnect(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_reconnect(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_ping(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export void mapi_setfilecallback2(
        Mapi mid,
        char *(*getfunc)(void *priv, const char *filename,
@@ -98,7 +104,7 @@ mapi_export void mapi_setfilecallback2(
        char *(*putfunc)(void *priv, const char *filename, bool binary,
                         const void *data, size_t size),
        void *priv)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export void mapi_setfilecallback(
        Mapi mid,
        char *(*getfunc)(void *priv, const char *filename,
@@ -106,187 +112,187 @@ mapi_export void mapi_setfilecallback(
        char *(*putfunc)(void *priv, const char *filename,
                         const void *data, size_t size),
        void *priv)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export void mapi_setclientprefix(Mapi mid, const char *prefix);
 
 mapi_export MapiMsg mapi_error(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export const char *mapi_error_str(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export void mapi_noexplain(Mapi mid, const char *errorprefix)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export void mapi_explain(Mapi mid, FILE *fd)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export void mapi_explain_query(MapiHdl hdl, FILE *fd)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export void mapi_explain_result(MapiHdl hdl, FILE *fd);
 mapi_export void mapi_trace(Mapi mid, bool flag)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 #ifdef _STREAM_H_              /* if stream.h was included */
 mapi_export stream *mapi_get_from(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export stream *mapi_get_to(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 #endif
 mapi_export bool mapi_get_trace(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export int mapi_get_time_zone(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export bool mapi_get_autocommit(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export bool mapi_get_columnar_protocol(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_log(Mapi mid, const char *nme)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_set_time_zone(Mapi mid, int seconds_east_of_utc)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_setAutocommit(Mapi mid, bool autocommit)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_set_columnar_protocol(Mapi mid, bool 
columnar_protocol)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_set_size_header(Mapi mid, bool value)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_release_id(Mapi mid, int id)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export const char *mapi_result_error(MapiHdl hdl);
 mapi_export const char *mapi_result_errorcode(MapiHdl hdl);
 mapi_export MapiMsg mapi_next_result(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_needmore(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export bool mapi_more_results(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiHdl mapi_new_handle(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_close_handle(MapiHdl hdl);
 mapi_export MapiMsg mapi_bind(MapiHdl hdl, int fnr, char **ptr)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_bind_var(MapiHdl hdl, int fnr, int type, void *ptr)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_bind_numeric(MapiHdl hdl, int fnr, int scale, int 
precision, void *ptr)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_clear_bindings(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_param_type(MapiHdl hdl, int fnr, int ctype, int 
sqltype, void *ptr)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_param_string(MapiHdl hdl, int fnr, int sqltype, char 
*ptr, int *sizeptr)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_param(MapiHdl hdl, int fnr, char **ptr)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_param_numeric(MapiHdl hdl, int fnr, int scale, int 
precision, void *ptr)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_clear_params(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiHdl mapi_prepare(Mapi mid, const char *cmd)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_prepare_handle(MapiHdl hdl, const char *cmd)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_execute(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_fetch_reset(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_finish(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiHdl mapi_query(Mapi mid, const char *cmd)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_query_handle(MapiHdl hdl, const char *cmd)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiHdl mapi_query_prep(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_query_part(MapiHdl hdl, const char *cmd, size_t size)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_query_done(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_query_abort(MapiHdl hdl, int reason)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiHdl mapi_send(Mapi mid, const char *cmd)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_read_response(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_cache_limit(Mapi mid, int limit)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_cache_freeup(MapiHdl hdl, int percentage)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_seek_row(MapiHdl hdl, int64_t rowne, int whence)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 
 mapi_export MapiMsg mapi_set_rtimeout(Mapi mid, unsigned int timeout, bool 
(*callback)(void *), void *callback_data)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_set_timeout(Mapi mid, unsigned int timeout, bool 
(*callback)(void *), void *callback_data)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_timeout(Mapi mid, unsigned int time)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export int mapi_fetch_row(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export int64_t mapi_fetch_all_rows(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export int mapi_get_field_count(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export int64_t mapi_get_row_count(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export int64_t mapi_get_last_id(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export int64_t mapi_rows_affected(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export int64_t mapi_get_querytime(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export int64_t mapi_get_maloptimizertime(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export int64_t mapi_get_sqloptimizertime(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 
 mapi_export char *mapi_fetch_field(MapiHdl hdl, int fnr)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export size_t mapi_fetch_field_len(MapiHdl hdl, int fnr)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export MapiMsg mapi_store_field(MapiHdl hdl, int fnr, int outtype, void 
*outparam)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export char *mapi_fetch_line(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export int mapi_split_line(MapiHdl hdl)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export const char *mapi_get_lang(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export const char *mapi_get_uri(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export const char *mapi_get_dbname(Mapi mid)
-       __attribute__((__nonnull__(1)));
+       ATTR_NONNULL(1);
 mapi_export const char *mapi_get_host(Mapi mid)
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to