[LLVMdev] MSVC 8 Build

George Russell grrussel at googlemail.com
Mon Nov 12 13:29:57 PST 2007


I had to add an include statement for the math header to
LiveIntervalAnalysis.h to get it to compile today e.g

#include <math.h>

It seems then to work without failures; odd.

However, the deprecation warnings are not suppressed for std::_Uninit_Copy
and std::_Copy_Opt (warning 4996) in xutility and memory headers
respectively e.g.

>C:\Program Files\Microsoft Visual Studio 8\VC\include\memory(93) : warning
C4996: 'std::_Uninit_copy' was declared deprecated
5>        C:\Program Files\Microsoft Visual Studio 8\VC\include\memory(82) :
see declaration of 'std::_Uninit_copy'
5>        Message: 'You have used a std:: construct that is not safe. See
documentation on how to use the Safe Standard C++ Library'
5>        c:\llvm\include\llvm/ADT/SmallVector.h(427) : see reference to
function template instantiation '_FwdIt
std::uninitialized_copy<T*,T*>(_InIt,_InIt,_FwdIt)' being compiled
5>        with
5>        [
5>            _FwdIt=llvm::TargetAlignElem *,
5>            T=llvm::TargetAlignElem,
5>            _InIt=llvm::TargetAlignElem *
5>        ]

The project would appear to have the right pre-processor definitions to
suppress such warnings, but they still occur.

The compiler issues _many_ warnings about conversions between uint64_t and
uint, which seems to be a very common occurance. Is there any point in LLVM
to having such conversions present implicitly vs explicitly (suppressing the
warnings?) other than syntactic clarity?

George Russell
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20071112/c7ba7ed7/attachment.html>

More information about the llvm-dev mailing list