[Ace-users] Re: [ace-bugs] ACE compilation - Many warnings with Windows VS2005 x64

Steve Huston shuston at riverace.com
Thu Aug 9 17:01:57 CDT 2007


Hi Nathan,

Good to hear from you.

Yes, there are plenty of Win64 warnings. We're working through them as
time permits. If you have patches for these, please send them to the
list. Funding to resolve the warnngs would greatly raise the priority
of fixes as well.

The good news is that I've yet to see code that will actually break
under normal use - usually there's code that checks for values in
range, but the types don't always match in size so the compiler warns
of it.

--
Steve Huston, Riverace Corporation
Would you like ACE to run great on your platform?
See http://www.riverace.com/sponsor.htm


> -----Original Message-----
> From: ace-bugs-bounces at cse.wustl.edu 
> [mailto:ace-bugs-bounces at cse.wustl.edu] On Behalf Of Glasser, Nathan
> Sent: Thursday, August 09, 2007 5:01 PM
> To: ace-bugs at cs.wustl.edu
> Subject: [ace-bugs] ACE compilation - Many warnings with 
> Windows VS2005 x64
> 
> 
>     ACE VERSION: 5.5.10
> 
>     HOST MACHINE and OPERATING SYSTEM:
>         Windows 2000.
> 
>     TARGET MACHINE and OPERATING SYSTEM, if different from HOST:
> 	  Windows 2000, 2003, etc.
> 
>     COMPILER NAME AND VERSION (AND PATCHLEVEL):
>         Visual Studio 2005 8.0.50727.762 (SP.050727-7600) with SP1.
>         Building for Release|x64.
> 
>     THE $ACE_ROOT/ace/config.h FILE [if you use a link to a
platform-
>     specific file, simply state which one]:
> 
> --------------------
> /* There is supposed to be another way to turn this on,
>    but I can't find it, and this should suffice. */
> /* Tag the ACE symbols with version info to avoid name collisions.
*/
> #define ACE_HAS_VERSIONED_NAMESPACE 1
> 
> #define ACE_HAS_STANDARD_CPP_LIBRARY 1
> #define ACE_NTRACE 1
> #define ACE_NLOGGING 1
> #define ACE_DEFINES_DEFAULT_WIN32_SECURITY_ATTRIBUTES 1
> 
> #ifdef _WIN32
> #include "config_win32.h"
> #endif
> 
> #ifdef __linux__
> #include "config_linux.h"
> #endif
> 
> #if defined (__SUNPRO_CC)
> //#include "config_sunos5.7.h"
> #include "config_sunos5.8.h"
> //#include "config_sunos5.9.h"
> #endif
> 
> /* Get around bug for VS.NET 2003 */
> #if (_MSC_VER >= 1300 && _MSC_VER < 1400)
> #undef ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT
> #endif
> --------------------
> 
>     THE $ACE_ROOT/include/makeinclude/platform_macros.GNU FILE [if
you
>     use a link to a platform-specific file, simply state which one
>     (unless this isn't used in this case, e.g., with Microsoft
Visual
>     C++)]:
> 
>     CONTENTS OF 
> $ACE_ROOT/bin/MakeProjectCreator/config/default.features
>     (used by MPC when you generate your own makefiles):
> 
>     AREA/CLASS/EXAMPLE AFFECTED:
> 
>     Compiling main ACE project and applications.
> 
>     DOES THE PROBLEM AFFECT:
>         COMPILATION? Yes
>         LINKING? No
>         EXECUTION? No
>         OTHER (please specify)?
> 
>     Compiling main ACE project and applications.
> 
>     SYNOPSIS:
> 
>     Lots of warnings are produced when compiling the main ACE
project.
> 
>     DESCRIPTION:
> 
> When compiling Ace using Visual Studio 2005 for Release|x64, I see
> the following.
> 
> Hundreds of instances of the following warning for different source
> files (also
> when compiling applications):
> 
> ..\ace/OS_NS_unistd.inl(955) : warning C4244: 'argument' :
conversion
> from 'ssize_t' to 'int', possible loss of data
> 
> And these other warnings:
> 
> .\SOCK_Dgram.cpp(114) : warning C4267: '=' : conversion from 
> 'size_t' to
> 'u_long', possible loss of data
> .\FILE_IO.cpp(135) : warning C4244: '=' : conversion from 'ssize_t'
to
> 'u_long', possible loss of data
> .\CDR_Stream.cpp(353) : warning C4267: 'argument' : conversion from
> 'size_t' to 'ACE_5_5_10::ACE_CDR::ULong', possible loss of data
> .\CDR_Stream.cpp(1228) : warning C4267: '/=' : conversion 
> from 'size_t'
> to 'ACE_5_5_10::ACE_CDR::ULong', possible loss of data
> .\CDR_Size.cpp(128) : warning C4267: 'argument' : conversion from
> 'size_t' to 'ACE_5_5_10::ACE_CDR::ULong', possible loss of data
> .\ACE.cpp(1037) : warning C4244: '=' : conversion from 'ssize_t' to
> 'u_long', possible loss of data
> .\ACE.cpp(1110) : warning C4244: '=' : conversion from 'ssize_t' to
> 'u_long', possible loss of data
> .\ACE.cpp(1814) : warning C4244: '=' : conversion from 'ssize_t' to
> 'u_long', possible loss of data
> .\ACE.cpp(1889) : warning C4244: '=' : conversion from 'ssize_t' to
> 'u_long', possible loss of data
> .\ACE.cpp(2129) : warning C4244: '=' : conversion from 'ssize_t' to
> 'u_long', possible loss of data
> .\ACE.cpp(2168) : warning C4244: '=' : conversion from 'ssize_t' to
> 'u_long', possible loss of data
> 
> 
> When compiling an application source file, I got these warnings.
> (The reference to "ecc_timer.h" refers to one of our 
> application files.)
> 
> ..\..\..\..\ace\ace/Atomic_Op_T.cpp(63) : warning C4355: 'this' :
used
> in base member initializer list
>         ..\..\..\..\ace\ace/Atomic_Op_T.cpp(63) : while 
> compiling class
> template member function
> 'ACE_5_5_10::ACE_Atomic_Op<ACE_LOCK,TYPE>::ACE_Atomic_Op(void)'
>         with
>         [
>             ACE_LOCK=ACE_5_5_10::ACE_Recursive_Thread_Mutex,
>             TYPE=unsigned int
>         ]
>         ..\..\..\..\bfv.api\api.src\ecc.src\inc\ecc_timer.h(107) :
see
> reference to class template instantiation
> 'ACE_5_5_10::ACE_Atomic_Op<ACE_LOCK,TYPE>' being compiled
>         with
>         [
>             ACE_LOCK=ACE_5_5_10::ACE_Recursive_Thread_Mutex,
>             TYPE=unsigned int
>         ]
> 
> 
>     REPEAT BY:
> 
>     SAMPLE FIX/WORKAROUND:
> 
> _______________________________________________
> ace-bugs mailing list
> ace-bugs at mail.cse.wustl.edu
> http://mail.cse.wustl.edu/mailman/listinfo/ace-bugs
> 




More information about the Ace-users mailing list