From de21704ba96fa80d3e9402f12c6505917a3885f4 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Thu, 19 Dec 2019 11:15:47 -0800 Subject: CWG2352: Allow qualification conversions during reference binding. The language wording change forgot to update overload resolution to rank implicit conversion sequences based on qualification conversions in reference bindings. The anticipated resolution for that oversight is implemented here -- we order candidates based on qualification conversion, not only on top-level cv-qualifiers. For OpenCL/C++, this allows reference binding between pointers with differing (nested) address spaces. This makes the behavior of reference binding consistent with that of implicit pointer conversions, as is the purpose of this change, but that pre-existing behavior for pointer conversions is itself probably not correct. In any case, it's now consistently the same behavior and implemented in only one place. --- clang/www/cxx_dr_status.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'clang/www/cxx_dr_status.html') diff --git a/clang/www/cxx_dr_status.html b/clang/www/cxx_dr_status.html index 23a7218e897..c4ec4573652 100755 --- a/clang/www/cxx_dr_status.html +++ b/clang/www/cxx_dr_status.html @@ -2645,7 +2645,7 @@ of class templates 434 NAD Unclear suppression of standard conversions while binding reference to lvalue - Yes + Superseded by 2352 435 @@ -13927,7 +13927,7 @@ and POD class 2352 DR Similar types and reference binding - Unknown + SVN 2353 -- cgit v1.2.3