Displaying 8 results from an estimated 8 matches for "__is_assignable_test".
2012 Sep 29
2
[LLVMdev] Clang bug?
...at circumstances the library
can use constructs which could depend on the completeness of user-provided
types) but I suspect it is not, and even if it were, we'd want to allow
this as a QoI issue. Here's a fix (first change: avoid overloaded
'operator,', second change: avoid ADL for __is_assignable_test):
--- type_traits (revision 164877)
+++ type_traits (working copy)
@@ -1187,10 +1187,15 @@
#endif // _LIBCPP_HAS_NO_VARIADICS
+template <class _Fst, class _Snd>
+struct __select_2nd {
+ typedef _Snd type;
+};
+
// is_assignable
template <class _Tp, class _Arg>
-decltype((_VSTD...
2012 Sep 29
0
[LLVMdev] Clang bug?
...at circumstances the library can use constructs which could depend on the completeness of user-provided types) but I suspect it is not, and even if it were, we'd want to allow this as a QoI issue. Here's a fix (first change: avoid overloaded 'operator,', second change: avoid ADL for __is_assignable_test):
>
>
> --- type_traits (revision 164877)
> +++ type_traits (working copy)
> @@ -1187,10 +1187,15 @@
>
> #endif // _LIBCPP_HAS_NO_VARIADICS
>
> +template <class _Fst, class _Snd>
> +struct __select_2nd {
> + typedef _Snd type;
> +};
> +
> //...
2012 Sep 29
0
[LLVMdev] Clang bug?
On Sep 28, 2012, at 5:54 PM, Richard Smith <richard at metafoo.co.uk> wrote:
> Reduced testcase:
>
> template<typename T> struct A { typedef decltype(T() + 0) type; };
> template<typename T> struct B {
> struct C { typedef typename A<C*>::type type; };
> typedef typename A<C*>::type type;
> };
> B<int> b;
>
> ... produces ...
2012 Sep 28
4
[LLVMdev] Clang bug?
...type((_VSTD::declval<_Tp>() = _VSTD::declval<_Arg>(), true_type()))
> > ^
> > /usr/bin/../lib/c++/v1/type_traits:1186:1: note: while substituting
> > deduced template arguments into function template
> > '__is_assignable_test' [with _Tp = Templ8<int>::Member *&, _Arg = <no
> > value>]
> > __is_assignable_test(_Tp&&, _Arg&&);
> > ^
> > /usr/bin/../lib/c++/v1/type_traits:1214:14: note: in instantiation of
> > template class 'std::__1::__is_assignable_im...
2012 Sep 27
4
[LLVMdev] Clang bug?
...nt>::Member' requested here
decltype((_VSTD::declval<_Tp>() = _VSTD::declval<_Arg>(), true_type()))
^
/usr/bin/../lib/c++/v1/type_traits:1186:1: note: while substituting
deduced template arguments into function template
'__is_assignable_test' [with _Tp = Templ8<int>::Member *&, _Arg = <no
value>]
__is_assignable_test(_Tp&&, _Arg&&);
^
/usr/bin/../lib/c++/v1/type_traits:1214:14: note: in instantiation of
template class 'std::__1::__is_assignable_imp<Templ8<int>::Member *&,
Templ8<i...
2012 Sep 28
0
[LLVMdev] Clang bug?
...ested here
> decltype((_VSTD::declval<_Tp>() = _VSTD::declval<_Arg>(), true_type()))
> ^
> /usr/bin/../lib/c++/v1/type_traits:1186:1: note: while substituting
> deduced template arguments into function template
> '__is_assignable_test' [with _Tp = Templ8<int>::Member *&, _Arg = <no
> value>]
> __is_assignable_test(_Tp&&, _Arg&&);
> ^
> /usr/bin/../lib/c++/v1/type_traits:1214:14: note: in instantiation of
> template class 'std::__1::__is_assignable_imp<Templ8<int>::M...
2012 Sep 29
0
[LLVMdev] Clang bug?
...lval<_Tp>() = _VSTD::declval<_Arg>(), true_type()))
>> > ^
>> > /usr/bin/../lib/c++/v1/type_traits:1186:1: note: while substituting
>> > deduced template arguments into function template
>> > '__is_assignable_test' [with _Tp = Templ8<int>::Member *&, _Arg = <no
>> > value>]
>> > __is_assignable_test(_Tp&&, _Arg&&);
>> > ^
>> > /usr/bin/../lib/c++/v1/type_traits:1214:14: note: in instantiation of
>> > template class 'std::__1...
2012 Sep 29
1
[LLVMdev] Clang bug?
...::declval<_Arg>(),
> true_type()))
> >> > ^
> >> > /usr/bin/../lib/c++/v1/type_traits:1186:1: note: while substituting
> >> > deduced template arguments into function template
> >> > '__is_assignable_test' [with _Tp = Templ8<int>::Member *&, _Arg = <no
> >> > value>]
> >> > __is_assignable_test(_Tp&&, _Arg&&);
> >> > ^
> >> > /usr/bin/../lib/c++/v1/type_traits:1214:14: note: in instantiation of
> >> > tem...