[all-commits] [llvm/llvm-project] 84bf4a: [C++20] [Modules] Allow ADL in dependent context f...
Chuanqi Xu via All-commits
all-commits at lists.llvm.org
Mon Feb 6 22:16:48 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 84bf4ab087b105e0c72da9ec26ad45e9468fa7be
https://github.com/llvm/llvm-project/commit/84bf4ab087b105e0c72da9ec26ad45e9468fa7be
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2023-02-07 (Tue, 07 Feb 2023)
Changed paths:
M clang/lib/Sema/SemaLookup.cpp
A clang/test/Modules/named-modules-adl-2.cppm
A clang/test/Modules/named-modules-adl.cppm
Log Message:
-----------
[C++20] [Modules] Allow ADL in dependent context for modules
Close https://github.com/llvm/llvm-project/issues/60488.
Previously, when we instantiate a template, the argument dependent
lookup is performed in the context of the instantiation, which implies that the
functions not visible in the context can't be found by the argument
dependent lookup.
But this is not true, according to [module.context]p3, the instantiation
context for the implicit instantiation of a template should contain the
context of the primary module interface if the template is defined in
the module interface unit.
Note that the fix didn't implemnet [module.context]p3 precisely, see the
comments for example.
More information about the All-commits
mailing list