[LLVMdev] MSVC 8 Build

Hartmut Kaiser hartmut.kaiser at gmail.com
Mon Nov 12 13:37:04 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.

What didn't work before you added this?

> 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. 

Compilation of what files produces these warnings?

> 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? 

I didn't suppress these warnings because I'm working on fixing them instead.
This is a tedious process, though, and it probably will take me some time to

Regards Hartmut

More information about the llvm-dev mailing list