The compiler may complain about what looks like a double definition of a
authorRichard Levitte <levitte@openssl.org>
Tue, 27 Jul 2004 13:58:25 +0000 (13:58 +0000)
committerRichard Levitte <levitte@openssl.org>
Tue, 27 Jul 2004 13:58:25 +0000 (13:58 +0000)
static variable

e_os2.h

diff --git a/e_os2.h b/e_os2.h
index a943f07d6c9aad85ddd6f87bd71aa380ae193796..db8b8e1aa4b4f33d9350f8df09841397e387379c 100644 (file)
--- a/e_os2.h
+++ b/e_os2.h
@@ -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