[llvm-bugs] [Bug 32716] New: LLVM fails to build with GCC 7
via llvm-bugs
llvm-bugs at lists.llvm.org
Wed Apr 19 15:28:52 PDT 2017
https://bugs.llvm.org/show_bug.cgi?id=32716
Bug ID: 32716
Summary: LLVM fails to build with GCC 7
Product: libraries
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: release blocker
Priority: P
Component: Support Libraries
Assignee: unassignedbugs at nondot.org
Reporter: vedran at miletic.net
CC: llvm-bugs at lists.llvm.org
[ 35%] Building CXX object lib/Option/CMakeFiles/LLVMOption.dir/Arg.cpp.o
In file included from /home/vedranm/workspace/llvm/lib/Option/Arg.cpp:13:0:
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h: In member function
„llvm::opt::ArgList::iterator llvm::opt::ArgList::begin()”:
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h:184:54: greška:
invalid initialization of reference of type „const llvm::opt::OptSpecifier
(&)[1]” from expression of type „const llvm::opt::OptSpecifier [1]”
iterator begin() { return {Args.begin(), Args.end()}; }
^
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h:71:3: napomena: in
passing argument 3 of „llvm::opt::arg_iterator<BaseIter,
NumOptSpecifiers>::arg_iterator(BaseIter, BaseIter, const
llvm::opt::OptSpecifier (&)[(NumOptSpecifiers ? NumOptSpecifiers : 1)]) [with
BaseIter = llvm::opt::Arg**; unsigned int NumOptSpecifiers = 0]”
arg_iterator(
^~~~~~~~~~~~
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h: In member function
„llvm::opt::ArgList::iterator llvm::opt::ArgList::end()”:
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h:185:50: greška:
invalid initialization of reference of type „const llvm::opt::OptSpecifier
(&)[1]” from expression of type „const llvm::opt::OptSpecifier [1]”
iterator end() { return {Args.end(), Args.end()}; }
^
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h:71:3: napomena: in
passing argument 3 of „llvm::opt::arg_iterator<BaseIter,
NumOptSpecifiers>::arg_iterator(BaseIter, BaseIter, const
llvm::opt::OptSpecifier (&)[(NumOptSpecifiers ? NumOptSpecifiers : 1)]) [with
BaseIter = llvm::opt::Arg**; unsigned int NumOptSpecifiers = 0]”
arg_iterator(
^~~~~~~~~~~~
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h: In member function
„llvm::opt::ArgList::reverse_iterator llvm::opt::ArgList::rbegin()”:
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h:187:49: greška:
could not convert „llvm::SmallVectorTemplateCommon<T, <template-parameter-1-2>
>::rbegin() [with T = llvm::opt::Arg*; <template-parameter-1-2> = void;
llvm::SmallVectorTemplateCommon<T, <template-parameter-1-2> >::reverse_iterator
= std::reverse_iterator<llvm::opt::Arg**>]()” from
„llvm::SmallVectorTemplateCommon<llvm::opt::Arg*, void>::reverse_iterator {aka
std::reverse_iterator<llvm::opt::Arg**>}” to
„llvm::opt::ArgList::reverse_iterator {aka
llvm::opt::arg_iterator<std::reverse_iterator<llvm::opt::Arg**> >}”
reverse_iterator rbegin() { return Args.rbegin(); }
~~~~~~~~~~~^~
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h: In member function
„llvm::opt::ArgList::reverse_iterator llvm::opt::ArgList::rend()”:
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h:188:45: greška:
could not convert „llvm::SmallVectorTemplateCommon<T, <template-parameter-1-2>
>::rend() [with T = llvm::opt::Arg*; <template-parameter-1-2> = void;
llvm::SmallVectorTemplateCommon<T, <template-parameter-1-2> >::reverse_iterator
= std::reverse_iterator<llvm::opt::Arg**>]()” from
„llvm::SmallVectorTemplateCommon<llvm::opt::Arg*, void>::reverse_iterator {aka
std::reverse_iterator<llvm::opt::Arg**>}” to
„llvm::opt::ArgList::reverse_iterator {aka
llvm::opt::arg_iterator<std::reverse_iterator<llvm::opt::Arg**> >}”
reverse_iterator rend() { return Args.rend(); }
~~~~~~~~~^~
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h: In member function
„llvm::opt::ArgList::const_iterator llvm::opt::ArgList::begin() const”:
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h:190:51: greška:
could not convert „((const
llvm::opt::ArgList*)this)->llvm::opt::ArgList::Args.llvm::SmallVector<llvm::opt::Arg*,
16>::<anonymous>.llvm::SmallVectorImpl<llvm::opt::Arg*>::<anonymous>.llvm::SmallVectorTemplateBase<llvm::opt::Arg*,
true>::<anonymous>.llvm::SmallVectorTemplateCommon<llvm::opt::Arg*,
void>::begin()” from „llvm::SmallVectorTemplateCommon<llvm::opt::Arg*,
void>::const_iterator {aka llvm::opt::Arg* const*}” to
„llvm::opt::ArgList::const_iterator {aka
llvm::opt::arg_iterator<llvm::opt::Arg* const*>}”
const_iterator begin() const { return Args.begin(); }
~~~~~~~~~~^~
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h: In member function
„llvm::opt::ArgList::const_iterator llvm::opt::ArgList::end() const”:
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h:191:47: greška:
could not convert „((const
llvm::opt::ArgList*)this)->llvm::opt::ArgList::Args.llvm::SmallVector<llvm::opt::Arg*,
16>::<anonymous>.llvm::SmallVectorImpl<llvm::opt::Arg*>::<anonymous>.llvm::SmallVectorTemplateBase<llvm::opt::Arg*,
true>::<anonymous>.llvm::SmallVectorTemplateCommon<llvm::opt::Arg*,
void>::end()” from „llvm::SmallVectorTemplateCommon<llvm::opt::Arg*,
void>::const_iterator {aka llvm::opt::Arg* const*}” to
„llvm::opt::ArgList::const_iterator {aka
llvm::opt::arg_iterator<llvm::opt::Arg* const*>}”
const_iterator end() const { return Args.end(); }
~~~~~~~~^~
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h: In member function
„llvm::opt::ArgList::const_reverse_iterator llvm::opt::ArgList::rbegin()
const”:
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h:193:61: greška:
could not convert „llvm::SmallVectorTemplateCommon<T, <template-parameter-1-2>
>::rbegin() const [with T = llvm::opt::Arg*; <template-parameter-1-2> = void;
llvm::SmallVectorTemplateCommon<T, <template-parameter-1-2>
>::const_reverse_iterator = std::reverse_iterator<llvm::opt::Arg* const*>]()”
from „llvm::SmallVectorTemplateCommon<llvm::opt::Arg*,
void>::const_reverse_iterator {aka std::reverse_iterator<llvm::opt::Arg*
const*>}” to „llvm::opt::ArgList::const_reverse_iterator {aka
llvm::opt::arg_iterator<std::reverse_iterator<llvm::opt::Arg* const*> >}”
const_reverse_iterator rbegin() const { return Args.rbegin(); }
~~~~~~~~~~~^~
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h: In member function
„llvm::opt::ArgList::const_reverse_iterator llvm::opt::ArgList::rend() const”:
/home/vedranm/workspace/llvm/include/llvm/Option/ArgList.h:194:57: greška:
could not convert „llvm::SmallVectorTemplateCommon<T, <template-parameter-1-2>
>::rend() const [with T = llvm::opt::Arg*; <template-parameter-1-2> = void;
llvm::SmallVectorTemplateCommon<T, <template-parameter-1-2>
>::const_reverse_iterator = std::reverse_iterator<llvm::opt::Arg* const*>]()”
from „llvm::SmallVectorTemplateCommon<llvm::opt::Arg*,
void>::const_reverse_iterator {aka std::reverse_iterator<llvm::opt::Arg*
const*>}” to „llvm::opt::ArgList::const_reverse_iterator {aka
llvm::opt::arg_iterator<std::reverse_iterator<llvm::opt::Arg* const*> >}”
const_reverse_iterator rend() const { return Args.rend(); }
~~~~~~~~~^~
make[2]: *** [lib/Option/CMakeFiles/LLVMOption.dir/build.make:63:
lib/Option/CMakeFiles/LLVMOption.dir/Arg.cpp.o] Greška 1
make[1]: *** [CMakeFiles/Makefile2:3525:
lib/Option/CMakeFiles/LLVMOption.dir/all] Greška 2
make: *** [Makefile:152: all] Greška 2
GCC 6 works fine. GCC 7 bug?
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20170419/3cd6d766/attachment.html>
More information about the llvm-bugs
mailing list