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

Glasser, Nathan nglasser at cantata.com
Thu Aug 9 16:00:38 CDT 2007


    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:



More information about the Ace-users mailing list