The compiler may complain about what looks like a double definition of a

static variable
This commit is contained in:
Richard Levitte 2004-07-27 13:58:25 +00:00
parent d2033156c5
commit e81ef01a0a

View File

@ -258,9 +258,10 @@ extern "C" {
#define foobar OPENSSL_GLOBAL_REF(foobar)
*/
#ifdef OPENSSL_EXPORT_VAR_AS_FUNCTION
# define OPENSSL_IMPLEMENT_GLOBAL(type,name) static type _hide_##name; \
type *_shadow_##name(void) { return &_hide_##name; } \
static type _hide_##name
# define OPENSSL_IMPLEMENT_GLOBAL(type,name) \
extern static type _hide_##name; \
type *_shadow_##name(void) { return &_hide_##name; } \
static type _hide_##name
# define OPENSSL_DECLARE_GLOBAL(type,name) type *_shadow_##name(void)
# define OPENSSL_GLOBAL_REF(name) (*(_shadow_##name()))
#else