rsmith added a comment. This will still diagnose valid and reasonable programs, such as:
struct ConvertToRef { operator int&(); }; std::tuple<int&> t = {ConvertToRef()}; ... on compilers that don't provide the trait. You could maybe try to work around that by checking to see if the type has a member `.operator int&()`. But perhaps it's better to remove the non-conforming check entirely, at least in the case where you can't reasonably get it right. https://reviews.llvm.org/D41977 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits