[omniORB] Compiling omniORB 4.0.1 with Visual C++ .NET 2003
(7.1)
Matej Kenda
matejkenda@volja.net
Tue Apr 29 13:34:01 2003
--=-vYct5rvUT5+mZ39kBthD
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
On Tue, 2003-04-29 at 13:26, Duncan Grisby wrote:
> On Monday 28 April, Matej Kenda wrote:
>
> [...]
> > As far as I have found out, the cdrStream's operators are on the global
> > scope and the original function call should succeed. But the compiler
> > didn't list the proper operator among those that it tried to use. See
> > the output below.
> >
> > Is this a bug in the compiler?
>
> I think it's a bug. These days, cdrStream.h has an alternative version
> of the friend functions, outside the cdrStream class. You could try
> defining OMNI_NO_INLINE_FRIENDS in CORBA_sysdep.h, and see if that
> helps.
>
Duncan, thanks. It helps. Please find attached a patch that adds this
particular define for VC 7.1 only (compiler version 13.10).
Regards,
Matej
--=-vYct5rvUT5+mZ39kBthD
Content-Description: Patch to work around the VC 7.1 bug
Content-Disposition: inline; filename=omniORB4-VC-7.1.diff
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
--- CORBA_sysdep.h 2003-04-29 14:17:07.000000000 +0200
+++ omniORB4/CORBA_sysdep.h 2003-03-02 18:10:40.000000000 +0100
@@ -186,14 +186,6 @@
# define NEED_DUMMY_RETURN
//
-// VC.NET 2003 (v. 7.1) has problems
-// recognizing inline friend operators.
-//
-#if (_MSC_VER == 1310)
-# define OMNI_NO_INLINE_FRIENDS
-#endif
-
-//
// _OMNIORB_LIBRARY is defined when the omniORB library is compiled.
// _OMNIORB_DYNAMIC_LIBRARY is defined when the dynamic library is compiled.
// These are defined on the command line when compiling the libraries.
--=-vYct5rvUT5+mZ39kBthD--