[PATCH] D22797: Fix for compiling with clang <= 3.7 and g++6 headers.
Frederich Munch via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 2 09:47:11 PDT 2016
marsupial added a comment.
Found one:
In file included from ../../lib/CodeGen/LexicalScopes.cpp:17:
In file included from ../../include/llvm/CodeGen/LexicalScopes.h:20:
In file included from ../../include/llvm/ADT/ArrayRef.h:13:
In file included from ../../include/llvm/ADT/Hashing.h:49:
In file included from ../../include/llvm/Support/Host.h:17:
In file included from ../../include/llvm/ADT/StringMap.h:18:
In file included from ../../include/llvm/Support/Allocator.h:24:
In file included from ../../include/llvm/ADT/SmallVector.h:29:
In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/memory:79:
In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/functional:55:
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:1400:14: error:
no matching constructor for initialization of 'tuple<llvm::LexicalScope
*&&, const llvm::DILocalScope *&&, nullptr_t &&, bool &&>'
{ return tuple<_Elements&&...>(std::forward<_Elements>(__args)...); }
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../lib/CodeGen/LexicalScopes.cpp:155:36: note: in instantiation of function
template specialization 'std::forward_as_tuple<llvm::LexicalScope *&,
const llvm::DILocalScope *&, nullptr_t, bool>' requested here
std::forward_as_tuple(Parent, Scope, nullptr,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:600:18: note:
candidate template ignored: disabled by 'enable_if' [with _Dummy = void]
_TCC<_Dummy>::template
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:611:18: note:
candidate template ignored: disabled by 'enable_if' [with _Dummy = void]
_TCC<_Dummy>::template
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:628:5: note:
candidate template ignored: disabled by 'enable_if' [with _UElements =
<llvm::LexicalScope *&, const llvm::DILocalScope *&, nullptr_t, bool>]
_TC<sizeof...(_UElements) == 1, _Elements...>::template
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:641:5: note:
candidate template ignored: disabled by 'enable_if' [with _UElements =
<llvm::LexicalScope *&, const llvm::DILocalScope *&, nullptr_t, bool>]
_TC<sizeof...(_UElements) == 1, _Elements...>::template
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:737:19: note:
candidate template ignored: disabled by 'enable_if' [with _Alloc = const
llvm::DILocalScope *, _UElements = <nullptr_t, bool>]
enable_if<_TMC<_UElements...>::template
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:748:19: note:
candidate template ignored: disabled by 'enable_if' [with _Alloc = const
llvm::DILocalScope *, _UElements = <nullptr_t, bool>]
enable_if<_TMC<_UElements...>::template
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:579:17: note:
candidate constructor template not viable: requires 0 arguments, but 4
were provided
constexpr tuple()
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:589:26: note:
candidate constructor template not viable: requires 0 arguments, but 4
were provided
explicit constexpr tuple()
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:670:19: note:
candidate constructor template not viable: requires single argument
'__in', but 4 arguments were provided
constexpr tuple(const tuple<_UElements...>& __in)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:682:28: note:
candidate constructor template not viable: requires single argument
'__in', but 4 arguments were provided
explicit constexpr tuple(const tuple<_UElements...>& __in)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:694:19: note:
candidate constructor template not viable: requires single argument
'__in', but 4 arguments were provided
constexpr tuple(tuple<_UElements...>&& __in)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:705:28: note:
candidate constructor template not viable: requires single argument
'__in', but 4 arguments were provided
explicit constexpr tuple(tuple<_UElements...>&& __in)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:721:2: note:
candidate constructor template not viable: requires 6 arguments, but 4
were provided
tuple(allocator_arg_t __tag, const _Alloc& __a,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:732:11: note:
candidate constructor template not viable: requires 6 arguments, but 4
were provided
explicit tuple(allocator_arg_t __tag, const _Alloc& __a,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:711:2: note:
candidate constructor template not viable: requires 2 arguments, but 4
were provided
tuple(allocator_arg_t __tag, const _Alloc& __a)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:759:2: note:
candidate constructor template not viable: requires 3 arguments, but 4
were provided
tuple(allocator_arg_t __tag, const _Alloc& __a, const tuple& __in)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:763:2: note:
candidate constructor template not viable: requires 3 arguments, but 4
were provided
tuple(allocator_arg_t __tag, const _Alloc& __a, tuple&& __in)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:772:2: note:
candidate constructor template not viable: requires 3 arguments, but 4
were provided
tuple(allocator_arg_t __tag, const _Alloc& __a,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:784:11: note:
candidate constructor template not viable: requires 3 arguments, but 4
were provided
explicit tuple(allocator_arg_t __tag, const _Alloc& __a,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:796:2: note:
candidate constructor template not viable: requires 3 arguments, but 4
were provided
tuple(allocator_arg_t __tag, const _Alloc& __a,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:808:11: note:
candidate constructor template not viable: requires 3 arguments, but 4
were provided
explicit tuple(allocator_arg_t __tag, const _Alloc& __a,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:654:17: note:
candidate constructor not viable: requires 1 argument, but 4 were provided
constexpr tuple(tuple&&) = default;
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:652:17: note:
candidate constructor not viable: requires 1 argument, but 4 were provided
constexpr tuple(const tuple&) = default;
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:1400:14: error:
no matching constructor for initialization of 'tuple<llvm::LexicalScope
*&&, const llvm::DILocalScope *&&, const llvm::DILocation *&&, bool &&>'
{ return tuple<_Elements&&...>(std::forward<_Elements>(__args)...); }
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../lib/CodeGen/LexicalScopes.cpp:186:43: note: in instantiation of function
template specialization 'std::forward_as_tuple<llvm::LexicalScope *&,
const llvm::DILocalScope *&, const llvm::DILocation *&, bool>' requested
here
std::forward_as_tuple(Parent, Scope,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:600:18: note:
candidate template ignored: disabled by 'enable_if' [with _Dummy = void]
_TCC<_Dummy>::template
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:611:18: note:
candidate template ignored: disabled by 'enable_if' [with _Dummy = void]
_TCC<_Dummy>::template
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:628:5: note:
candidate template ignored: disabled by 'enable_if' [with _UElements =
<llvm::LexicalScope *&, const llvm::DILocalScope *&, const
llvm::DILocation *&, bool>]
_TC<sizeof...(_UElements) == 1, _Elements...>::template
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:641:5: note:
candidate template ignored: disabled by 'enable_if' [with _UElements =
<llvm::LexicalScope *&, const llvm::DILocalScope *&, const
llvm::DILocation *&, bool>]
_TC<sizeof...(_UElements) == 1, _Elements...>::template
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:737:19: note:
candidate template ignored: disabled by 'enable_if' [with _Alloc = const
llvm::DILocalScope *, _UElements = <const llvm::DILocation *&, bool>]
enable_if<_TMC<_UElements...>::template
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:748:19: note:
candidate template ignored: disabled by 'enable_if' [with _Alloc = const
llvm::DILocalScope *, _UElements = <const llvm::DILocation *&, bool>]
enable_if<_TMC<_UElements...>::template
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:579:17: note:
candidate constructor template not viable: requires 0 arguments, but 4
were provided
constexpr tuple()
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:589:26: note:
candidate constructor template not viable: requires 0 arguments, but 4
were provided
explicit constexpr tuple()
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:670:19: note:
candidate constructor template not viable: requires single argument
'__in', but 4 arguments were provided
constexpr tuple(const tuple<_UElements...>& __in)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:682:28: note:
candidate constructor template not viable: requires single argument
'__in', but 4 arguments were provided
explicit constexpr tuple(const tuple<_UElements...>& __in)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:694:19: note:
candidate constructor template not viable: requires single argument
'__in', but 4 arguments were provided
constexpr tuple(tuple<_UElements...>&& __in)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:705:28: note:
candidate constructor template not viable: requires single argument
'__in', but 4 arguments were provided
explicit constexpr tuple(tuple<_UElements...>&& __in)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:721:2: note:
candidate constructor template not viable: requires 6 arguments, but 4
were provided
tuple(allocator_arg_t __tag, const _Alloc& __a,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:732:11: note:
candidate constructor template not viable: requires 6 arguments, but 4
were provided
explicit tuple(allocator_arg_t __tag, const _Alloc& __a,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:711:2: note:
candidate constructor template not viable: requires 2 arguments, but 4
were provided
tuple(allocator_arg_t __tag, const _Alloc& __a)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:759:2: note:
candidate constructor template not viable: requires 3 arguments, but 4
were provided
tuple(allocator_arg_t __tag, const _Alloc& __a, const tuple& __in)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:763:2: note:
candidate constructor template not viable: requires 3 arguments, but 4
were provided
tuple(allocator_arg_t __tag, const _Alloc& __a, tuple&& __in)
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:772:2: note:
candidate constructor template not viable: requires 3 arguments, but 4
were provided
tuple(allocator_arg_t __tag, const _Alloc& __a,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:784:11: note:
candidate constructor template not viable: requires 3 arguments, but 4
were provided
explicit tuple(allocator_arg_t __tag, const _Alloc& __a,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:796:2: note:
candidate constructor template not viable: requires 3 arguments, but 4
were provided
tuple(allocator_arg_t __tag, const _Alloc& __a,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:808:11: note:
candidate constructor template not viable: requires 3 arguments, but 4
were provided
explicit tuple(allocator_arg_t __tag, const _Alloc& __a,
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:654:17: note:
candidate constructor not viable: requires 1 argument, but 4 were provided
constexpr tuple(tuple&&) = default;
^
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:652:17: note:
candidate constructor not viable: requires 1 argument, but 4 were provided
constexpr tuple(const tuple&) = default;
^
../../lib/CodeGen/LexicalScopes.cpp:208:32: error: no matching function for call
to 'forward_as_tuple'
std::forward_as_tuple(Parent, Scope,
^~~~~~~~~~~~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:1399:5: note:
candidate template ignored: substitution failure [with _Elements =
<llvm::LexicalScope *&, const llvm::DILocalScope *&, nullptr_t, bool>]
forward_as_tuple(_Elements&&... __args) noexcept
Repository:
rL LLVM
https://reviews.llvm.org/D22797
More information about the llvm-commits
mailing list