From: Stefan Neis Date: Sun, 24 Aug 2003 16:38:02 +0000 (+0000) Subject: Fixed #pragma interface/implementation handling for old compilers. X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/e484468721a4e8e0099a363deee468e44d89294a Fixed #pragma interface/implementation handling for old compilers. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/event.h b/include/wx/event.h index be318f0619..f40381f604 100644 --- a/include/wx/event.h +++ b/include/wx/event.h @@ -12,7 +12,14 @@ #ifndef _WX_EVENT_H__ #define _WX_EVENT_H__ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) && !defined(__EMX__) +// Some older compilers (such as EMX) cannot handle +// #pragma interface/implementation correctly, iff +// #pragma implementation is used in _two_ translation +// units (as created by e.g. event.cpp compiled for +// libwx_base and event.cpp compiled for libwx_gui_core). +// So we must not use those pragmas for those compilers in +// such files. #pragma interface "event.h" #endif diff --git a/include/wx/fs_mem.h b/include/wx/fs_mem.h index be005401ed..9a46b264f4 100644 --- a/include/wx/fs_mem.h +++ b/include/wx/fs_mem.h @@ -9,7 +9,14 @@ #ifndef _WX_FS_MEM_H_ #define _WX_FS_MEM_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) && !defined(__EMX__) +// Some older compilers (such as EMX) cannot handle +// #pragma interface/implementation correctly, iff +// #pragma implementation is used in _two_ translation +// units (as created by e.g. event.cpp compiled for +// libwx_base and event.cpp compiled for libwx_gui_core). +// So we must not use those pragmas for those compilers in +// such files. #pragma interface "fs_mem.h" #endif diff --git a/include/wx/msgout.h b/include/wx/msgout.h index f5bee59ac8..cab47aa087 100755 --- a/include/wx/msgout.h +++ b/include/wx/msgout.h @@ -16,7 +16,14 @@ // headers // ---------------------------------------------------------------------------- -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) && !defined(__EMX__) +// Some older compilers (such as EMX) cannot handle +// #pragma interface/implementation correctly, iff +// #pragma implementation is used in _two_ translation +// units (as created by e.g. event.cpp compiled for +// libwx_base and event.cpp compiled for libwx_gui_core). +// So we must not use those pragmas for those compilers in +// such files. #pragma interface "msgout.h" #endif diff --git a/include/wx/utils.h b/include/wx/utils.h index abbbad94f2..7dd95c8923 100644 --- a/include/wx/utils.h +++ b/include/wx/utils.h @@ -16,7 +16,14 @@ // headers // ---------------------------------------------------------------------------- -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) && !defined(__EMX__) +// Some older compilers (such as EMX) cannot handle +// #pragma interface/implementation correctly, iff +// #pragma implementation is used in _two_ translation +// units (as created by e.g. event.cpp compiled for +// libwx_base and event.cpp compiled for libwx_gui_core). +// So we must not use those pragmas for those compilers in +// such files. #pragma interface "utils.h" #endif diff --git a/src/common/event.cpp b/src/common/event.cpp index 414390d351..e734fb9e83 100644 --- a/src/common/event.cpp +++ b/src/common/event.cpp @@ -17,7 +17,14 @@ // headers // ---------------------------------------------------------------------------- -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) && !defined(__EMX__) +// Some older compilers (such as EMX) cannot handle +// #pragma interface/implementation correctly, iff +// #pragma implementation is used in _two_ translation +// units (as created by e.g. event.cpp compiled for +// libwx_base and event.cpp compiled for libwx_gui_core). +// So we must not use those pragmas for those compilers in +// such files. #pragma implementation "event.h" #endif diff --git a/src/common/fs_mem.cpp b/src/common/fs_mem.cpp index 7fd1569990..37a272bbdc 100644 --- a/src/common/fs_mem.cpp +++ b/src/common/fs_mem.cpp @@ -7,7 +7,14 @@ ///////////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) && !defined(__EMX__) +// Some older compilers (such as EMX) cannot handle +// #pragma interface/implementation correctly, iff +// #pragma implementation is used in _two_ translation +// units (as created by e.g. event.cpp compiled for +// libwx_base and event.cpp compiled for libwx_gui_core). +// So we must not use those pragmas for those compilers in +// such files. #pragma implementation "fs_mem.h" #endif diff --git a/src/common/msgout.cpp b/src/common/msgout.cpp index 3c82430139..961e0c4614 100755 --- a/src/common/msgout.cpp +++ b/src/common/msgout.cpp @@ -17,7 +17,14 @@ // headers // --------------------------------------------------------------------------- -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) && !defined(__EMX__) +// Some older compilers (such as EMX) cannot handle +// #pragma interface/implementation correctly, iff +// #pragma implementation is used in _two_ translation +// units (as created by e.g. event.cpp compiled for +// libwx_base and event.cpp compiled for libwx_gui_core). +// So we must not use those pragmas for those compilers in +// such files. #pragma implementation "msgout.h" #endif diff --git a/src/common/utilscmn.cpp b/src/common/utilscmn.cpp index 9c60b60e45..449bafe65f 100644 --- a/src/common/utilscmn.cpp +++ b/src/common/utilscmn.cpp @@ -17,7 +17,14 @@ // headers // ---------------------------------------------------------------------------- -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) && !defined(__EMX__) +// Some older compilers (such as EMX) cannot handle +// #pragma interface/implementation correctly, iff +// #pragma implementation is used in _two_ translation +// units (as created by e.g. event.cpp compiled for +// libwx_base and event.cpp compiled for libwx_gui_core). +// So we must not use those pragmas for those compilers in +// such files. #pragma implementation "utils.h" #endif