[omniORB] Ordering of #pragma hh relative to USE_core_stub_in_nt_dll_NOT_DEFINED_*

Andrew Miller ak.miller at auckland.ac.nz
Fri Sep 22 16:22:22 BST 2006


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




More information about the omniORB-list mailing list