diff --git a/src/include/switch_cpp.h b/src/include/switch_cpp.h index 38c7c13fca..30c005a304 100644 --- a/src/include/switch_cpp.h +++ b/src/include/switch_cpp.h @@ -78,7 +78,7 @@ Note that the first parameter to the new operator is implicitly handled by c++.. SWITCH_DECLARE(void) consoleLog(char *level_str, char *msg); SWITCH_DECLARE(void) consoleCleanLog(char *msg); - class CoreSession; + class SWITCH_DECLARE_CLASS CoreSession; class IVRMenu { protected: @@ -185,7 +185,7 @@ SWITCH_DECLARE(void) consoleCleanLog(char *msg); SWITCH_DECLARE(Event *) pop(int block = 0); }; - class CoreSession { + class SWITCH_DECLARE_CLASS CoreSession { protected: switch_input_args_t args; // holds ptr to cb function and input_callback_state struct // which has a language specific callback function diff --git a/src/include/switch_platform.h b/src/include/switch_platform.h index b9eff657fb..4a4a1a1f30 100644 --- a/src/include/switch_platform.h +++ b/src/include/switch_platform.h @@ -162,6 +162,7 @@ typedef int gid_t; #define S_IWUSR _S_IWRITE #endif #define SWITCH_THREAD_FUNC __stdcall +#define SWITCH_DECLARE_CLASS #else //not win32 #define O_BINARY 0 #if (defined(__GNUC__) || defined(__SUNCC__)) && defined(SWITCH_API_VISIBILITY) @@ -170,12 +171,14 @@ typedef int gid_t; #define SWITCH_DECLARE_DATA __attribute__((visibility("default"))) #define SWITCH_MOD_DECLARE(type) __attribute__((visibility("default"))) type #define SWITCH_MOD_DECLARE_DATA __attribute__((visibility("default"))) +#define SWITCH_DECLARE_CLASS __attribute__((visibility("default"))) #else #define SWITCH_DECLARE(type) type #define SWITCH_DECLARE_NONSTD(type) type #define SWITCH_DECLARE_DATA #define SWITCH_MOD_DECLARE(type) type #define SWITCH_MOD_DECLARE_DATA +#define SWITCH_DECLARE_CLASS #endif #define SWITCH_THREAD_FUNC #endif