X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;ds=sidebyside;f=src%2Fcommon%2Fmacros.h;h=90849ed30ae5e543a577f9214bc33152864751f8;hb=2fc6b1ab74fcff341b8c55260b4b0bea1efd1d7a;hp=0e11d3c7ac2f8179ea98bda74293c91158d6b2c2;hpb=639082d2871a0cd0cca3d77fd72fb51002f0c4bf;p=lttng-tools.git diff --git a/src/common/macros.h b/src/common/macros.h index 0e11d3c7a..90849ed30 100644 --- a/src/common/macros.h +++ b/src/common/macros.h @@ -74,10 +74,19 @@ void *zmalloc(size_t len) #define LTTNG_PACKED __attribute__((__packed__)) #endif -#ifndef LTTNG_HIDDEN +/* + * LTTNG_HIDDEN: set the hidden attribute for internal functions + * On Windows, symbols are local unless explicitly exported, + * see https://gcc.gnu.org/wiki/Visibility + */ +#if defined(_WIN32) || defined(__CYGWIN__) +#define LTTNG_HIDDEN +#else #define LTTNG_HIDDEN __attribute__((visibility("hidden"))) #endif +#define member_sizeof(type, field) sizeof(((type *) 0)->field) + /* * lttng_strncpy returns 0 on success, or nonzero on failure. * It checks that the @src string fits into @dst_len before performing