[llvm-commits] Transforms/Scalar/SROA build issue with MSVC2008

Axel Naumann Axel.Naumann at cern.ch
Mon Sep 17 08:01:24 PDT 2012


Hi,

<http://llvm.org/docs/GettingStartedVS.html> says I should expect
lib/Transforms/Scalar/SROA.cpp to build with MS Visual Studio 2008
(version number 15.00.30729.01) + CMake in Debug. But it doesn't for me:

94>c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xutility(285) : error C2784: 'bool std::operator <(const
std::_Tree<_Traits> &,const std::_Tree<_Traits> &)' : could not deduce
template argument for 'const std::_Tree<_Traits> &' from 'const uint64_t'

94>        c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xtree(1466) : see declaration of 'std::operator <'

94>        c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\algorithm(2264) : see reference to function template
instantiation 'bool std::_Debug_lt<T,_Ty>(_Ty1 &,const _Ty2 &,const
wchar_t *,unsigned int)' being compiled

94>        with

94>        [

94>            T=`anonymous-namespace'::AllocaPartitioning::Partition,

94>            _Ty=uint64_t,

94>            _Ty1=`anonymous-namespace'::AllocaPartitioning::Partition,

94>            _Ty2=uint64_t

94>        ]

94>        c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\algorithm(2276) : see reference to function template
instantiation '_FwdIt
std::_Lower_bound<`anonymous-namespace'::AllocaPartitioning::Partition*,_Ty,std::iterator_traits<_Iter>::difference_type>(_FwdIt,_FwdIt,const
_Ty &,_Diff *)' being compiled

94>        with

94>        [

94>
_FwdIt=`anonymous-namespace'::AllocaPartitioning::Partition *,

94>            _Ty=uint64_t,

94>            _Iter=`anonymous-namespace'::AllocaPartitioning::Partition *,

94>
_Diff=std::iterator_traits<`anonymous-namespace'::AllocaPartitioning::Partition
*>::difference_type

94>        ]

94>
..\..\..\..\cling-src-r45920\lib\Transforms\Scalar\SROA.cpp(790) : see
reference to function template instantiation '_FwdIt
std::lower_bound<`anonymous-namespace'::AllocaPartitioning::iterator,uint64_t>(_FwdIt,_FwdIt,const
_Ty &)' being compiled

94>        with

94>        [

94>            _FwdIt=`anonymous-namespace'::AllocaPartitioning::iterator,

94>            _Ty=uint64_t

94>        ]

94>c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xutility(285) : error C2784: 'bool std::operator <(const
std::list<_Ty,_Ax> &,const std::list<_Ty,_Ax> &)' : could not deduce
template argument for 'const std::list<_Ty,_Ax> &' from 'const uint64_t'

94>        c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\list(1310) : see declaration of 'std::operator <'

94>c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xutility(285) : error C2784: 'bool std::operator <(const
std::vector<_Ty,_Alloc> &,const std::vector<_Ty,_Alloc> &)' : could not
deduce template argument for 'const std::vector<_Ty,_Alloc> &' from
'const uint64_t'

94>        c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\vector(1322) : see declaration of 'std::operator <'

94>c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xutility(285) : error C2784: 'bool std::operator <(const
std::basic_string<_Elem,_Traits,_Alloc> &,const _Elem *)' : could not
deduce template argument for 'const
std::basic_string<_Elem,_Traits,_Alloc> &' from 'const uint64_t'

94>        c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\string(150) : see declaration of 'std::operator <'

94>c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xutility(285) : error C2784: 'bool std::operator <(const
_Elem *,const std::basic_string<_Elem,_Traits,_Alloc> &)' : could not
deduce template argument for 'const _Elem *' from 'const uint64_t'

94>        c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\string(140) : see declaration of 'std::operator <'

94>c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xutility(285) : error C2784: 'bool std::operator <(const
std::basic_string<_Elem,_Traits,_Alloc> &,const
std::basic_string<_Elem,_Traits,_Alloc> &)' : could not deduce template
argument for 'const std::basic_string<_Elem,_Traits,_Alloc> &' from
'const uint64_t'

94>        c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\string(130) : see declaration of 'std::operator <'

94>c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xutility(285) : error C2784: 'bool std::operator <(const
std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)'
: could not deduce template argument for 'const
std::reverse_iterator<_RanIt> &' from 'const uint64_t'

94>        c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xutility(2262) : see declaration of 'std::operator <'

94>c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xutility(285) : error C2784: 'bool std::operator <(const
std::_Revranit<_RanIt,_Base> &,const std::_Revranit<_RanIt2,_Base2> &)'
: could not deduce template argument for 'const
std::_Revranit<_RanIt,_Base> &' from 'const uint64_t'

94>        c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xutility(2072) : see declaration of 'std::operator <'

94>c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xutility(285) : error C2784: 'bool std::operator <(const
std::pair<_Ty1,_Ty2> &,const std::pair<_Ty1,_Ty2> &)' : could not deduce
template argument for 'const std::pair<_Ty1,_Ty2> &' from 'const uint64_t'

94>        c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\utility(99) : see declaration of 'std::operator <'

94>c:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\include\xutility(285) : error C2677: binary '<' : no global
operator found which takes type
'`anonymous-namespace'::AllocaPartitioning::Partition' (or there is no
acceptable conversion)

I'm surprised nobody else is seeing it? If that is actually not
surprising then I'll try to come up with a patch...

Cheers, Axel.



More information about the llvm-commits mailing list