[all-commits] [llvm/llvm-project] e704aa: DR2303: Prefer 'nearer' base classes during templa...
Erich Keane via All-commits
all-commits at lists.llvm.org
Fri Jul 31 05:40:26 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: e704aa4f254a26505d4bb9dc38bdee0ff4efa4ba
https://github.com/llvm/llvm-project/commit/e704aa4f254a26505d4bb9dc38bdee0ff4efa4ba
Author: Erich Keane <erich.keane at intel.com>
Date: 2020-07-31 (Fri, 31 Jul 2020)
Changed paths:
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/test/CXX/drs/dr23xx.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
DR2303: Prefer 'nearer' base classes during template deduction.
DR2303 fixes the case where the derived-base match for template
deduction is ambiguous if a base-of-base ALSO matches. The canonical
example (as shown in the test) is just like the MSVC implementation of
std::tuple.
This fixes a fairly sizable issue, where if a user inherits from
std::tuple on Windows (with the MS STL), they cannot use that type to
call a function that takes std::tuple.
Differential Revision: https://reviews.llvm.org/D84048
More information about the All-commits
mailing list