[LLVMdev] Unable to build latest with Visual Studio 2008
John Wiegley
johnw at boostpro.com
Wed Mar 9 11:27:21 PST 2011
Hello,
I've been building Clang under Windows 7 and Visual Studio 2008 for a while
now, but had not touched it in a few months. Last night I wiped my build tree
to do a full rebuild with the latest version, and got the identical error as
David Shipman was seeing last September. Are others able to build under VS9
right now?
Thanks,
John
> Subject: Re: [LLVMdev] MS VS2008 build fails - X86AsmParser
> From: Chris Lattner ("cla... at apple.com)
> Date: Sep 6, 2010 11:11:46 pm
>
> On Sep 6, 2010, at 10:50 PM, David Shipman wrote:
>
> > Hi all,
> >
> > Just tried to build from svn sources with Visual Studio 2008, mostly
> > OK but fails
> > building the X86AsmParser lib -
> >
> > I see a few commits from yesterday that may have something to do with it, but no
> > idea what the solution is.
>
> Wow, that's a pretty terrible diagnostic. Does r113198 help?
>
> -Chris
>
> > See MSVC's beautiful and concise output below;
> >
> > Compiling...
> > X86AsmParser.cpp
> > C:\dev\MSVisualStudio\VC\include\xutility(313) : error C2664: 'bool
> > `anonymous-namespace'::LessOpcode::operator ()(llvm::StringRef,const
> > `anonymous-namespace'::MatchEntry &)' : cannot convert parameter 1
> > from 'const `anonymous-namespace'::MatchEntry' to 'llvm::StringRef'
> > No user-defined-conversion operator available that can perform
> > this conversion, or the operator cannot be called
> > C:\dev\MSVisualStudio\VC\include\xutility(1699) : see
> > reference to function template instantiation 'bool
> > std::_Debug_lt_pred<_Pr,`anonymous-namespace'::MatchEntry,`anonymous-namespace'::MatchEntry>(_Pr,const
> > _Ty1 &,const _Ty2 &,const wchar_t *,unsigned int)' being compiled
> > with
> > [
> > _Pr=`anonymous-namespace'::LessOpcode,
> > _Ty1=`anonymous-namespace'::MatchEntry,
> > _Ty2=`anonymous-namespace'::MatchEntry
> > ]
> > C:\dev\MSVisualStudio\VC\include\xutility(1709) : see
> > reference to function template instantiation 'void
> > std::_Debug_order_single2<_InIt,_Pr>(_FwdIt,_FwdIt,_Pr,bool,const
> > wchar_t *,unsigned int,std::forward_iterator_tag)' being compiled
> > with
> > [
> > _InIt=const `anonymous-namespace'::MatchEntry *,
> > _Pr=`anonymous-namespace'::LessOpcode,
> > _FwdIt=const `anonymous-namespace'::MatchEntry *
> > ]
> > C:\dev\MSVisualStudio\VC\include\algorithm(2444) : see
> > reference to function template instantiation 'void
> > std::_Debug_order_single<_FwdIt,_Pr>(_InIt,_InIt,_Pr,bool,const
> > wchar_t *,unsigned int)' being compiled
> > with
> > [
> > _FwdIt=const `anonymous-namespace'::MatchEntry *,
> > _Pr=`anonymous-namespace'::LessOpcode,
> > _InIt=const `anonymous-namespace'::MatchEntry *
> > ]
> > C:\dev\MSVisualStudio\VC\include\algorithm(2480) : see
> > reference to function template instantiation 'std::pair<_Ty1,_Ty2>
> > std::_Equal_range<_FwdIt,_Ty,std::iterator_traits<_Iter>::difference_type,_Pr>(_FwdIt,_FwdIt,const
> > _Ty &,_Pr,_Diff *)' being compiled
> > with
> > [
> > _Ty1=const `anonymous-namespace'::MatchEntry *,
> > _Ty2=const `anonymous-namespace'::MatchEntry *,
> > _FwdIt=const `anonymous-namespace'::MatchEntry *,
> > _Ty=llvm::StringRef,
> > _Iter=const `anonymous-namespace'::MatchEntry *,
> > _Pr=`anonymous-namespace'::LessOpcode,
> > _Diff=std::iterator_traits::difference_type
> > ]
> > C:\dev\src\llvm\lib\Target\X86\X86GenAsmMatcher.inc(4583) :
> > see reference to function template instantiation 'std::pair<_Ty1,_Ty2>
> > std::equal_range(_FwdIt,_FwdIt,const _Ty &,_Pr)' being compiled
> > with
> > [
> > _Ty1=const `anonymous-namespace'::MatchEntry *,
> > _Ty2=const `anonymous-namespace'::MatchEntry *,
> > _FwdIt=const `anonymous-namespace'::MatchEntry *,
> > _Ty=llvm::StringRef,
> > _Pr=`anonymous-namespace'::LessOpcode
> > ]
> > C:\dev\MSVisualStudio\VC\include\xutility(315) : error C2664: 'bool
> > `anonymous-namespace'::LessOpcode::operator ()(llvm::StringRef,const
> > `anonymous-namespace'::MatchEntry &)' : cannot convert parameter 1
> > from 'const `anonymous-namespace'::MatchEntry' to 'llvm::StringRef'
> > No user-defined-conversion operator available that can perform
> > this conversion, or the operator cannot be called
More information about the llvm-dev
mailing list