Andrew Miller
2006-09-22 09:22:49 UTC
Hi,
I have noticed that when pragma hh is used (e.g. as in COS), it comes
after the NOT_DEFINED_* defines...
#ifndef USE_core_stub_in_nt_dll
# define USE_core_stub_in_nt_dll_NOT_DEFINED_CosEventComm
#endif
#ifndef USE_dyn_stub_in_nt_dll
# define USE_dyn_stub_in_nt_dll_NOT_DEFINED_CosEventComm
#endif
#include "COS_sysdep.h"
(I had to apply the patch which fixes pragmas from CVS to get a standard
4.0.7 tree to even get that far).
Because USE_core_stub_in_nt_dll only gets defined by the pragma hh
output after the NOT_DEFINED_* macro is set, it doesn't get cleared at
the end of the header, and so all the data symbols in the including
header end up getting imported too, even if they should be exported
rather than imported.
I can submit a patch to reverse this order, but given that it presumably
works for everyone else, perhaps I am missing something? I am trying to
follow the instructions in case 4 listed in 12.2.2 of the omniORB manual
(the version generated in omniORB-4.0.7/doc/omniORB.pdf).
Thanks and Best regards,
Andrew Miller
I have noticed that when pragma hh is used (e.g. as in COS), it comes
after the NOT_DEFINED_* defines...
#ifndef USE_core_stub_in_nt_dll
# define USE_core_stub_in_nt_dll_NOT_DEFINED_CosEventComm
#endif
#ifndef USE_dyn_stub_in_nt_dll
# define USE_dyn_stub_in_nt_dll_NOT_DEFINED_CosEventComm
#endif
#include "COS_sysdep.h"
(I had to apply the patch which fixes pragmas from CVS to get a standard
4.0.7 tree to even get that far).
Because USE_core_stub_in_nt_dll only gets defined by the pragma hh
output after the NOT_DEFINED_* macro is set, it doesn't get cleared at
the end of the header, and so all the data symbols in the including
header end up getting imported too, even if they should be exported
rather than imported.
I can submit a patch to reverse this order, but given that it presumably
works for everyone else, perhaps I am missing something? I am trying to
follow the instructions in case 4 listed in 12.2.2 of the omniORB manual
(the version generated in omniORB-4.0.7/doc/omniORB.pdf).
Thanks and Best regards,
Andrew Miller