EricWF added inline comments.
================
Comment at: include/__tuple:32
template <class _Tp>
-class _LIBCPP_TYPE_VIS_ONLY tuple_size<const _Tp>
- : public __tuple_size_base_type<_Tp>::type {};
+class _LIBCPP_TYPE_VIS_ONLY tuple_size<__enable_if_tuple_size_imp<const _Tp,
decltype(tuple_size<typename remove_cv<_Tp>::type>::value)>>
+ : public integral_constant<size_t, tuple_size<_Tp>::value> {};
----------------
rsmith wrote:
> remove_cv looks redundant here, deduction already stripped the cv qualifiers.
The `remove_cv` should be redundant, but without it Clang segfaults in
`clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateSpecializationType(clang::TypeLocBuilder&,
clang::TemplateSpecializationTypeLoc, clang::TemplateName)`.
I haven't had time to file a Clang bug yet.
https://reviews.llvm.org/D28222
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits