diff options
author | John McCall <rjmccall@apple.com> | 2010-01-26 06:04:06 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2010-01-26 06:04:06 +0000 |
commit | a113e7263c5337731c65fada9de7ff72af25423b (patch) | |
tree | 523d7fdb7af84813eb0923dc3c7b22e1a65fb244 /lib/Sema/SemaOverload.cpp | |
parent | dbdad6d9330603ab1c11bf9f2a9ea294b56babf6 (diff) |
Allow ADL to find functions imported by using decls. Leave wordy comment
about interaction between ADL and default arguments. Shrug shoulders, commit.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94524 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaOverload.cpp')
-rw-r--r-- | lib/Sema/SemaOverload.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/Sema/SemaOverload.cpp b/lib/Sema/SemaOverload.cpp index 54db885e23..a4c11b077a 100644 --- a/lib/Sema/SemaOverload.cpp +++ b/lib/Sema/SemaOverload.cpp @@ -4133,8 +4133,13 @@ Sema::AddArgumentDependentLookupCandidates(DeclarationName Name, bool PartialOverloading) { ADLFunctionSet Functions; - // FIXME: Should we be trafficking in canonical function decls throughout? - + // FIXME: This approach for uniquing ADL results (and removing + // redundant candidates from the set) relies on pointer-equality, + // which means we need to key off the canonical decl. However, + // always going back to the canonical decl might not get us the + // right set of default arguments. What default arguments are + // we supposed to consider on ADL candidates, anyway? + // FIXME: Pass in the explicit template arguments? ArgumentDependentLookup(Name, Operator, Args, NumArgs, Functions); |