summaryrefslogtreecommitdiff
path: root/source/slang/slang-check-conversion.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/slang/slang-check-conversion.cpp')
-rw-r--r--source/slang/slang-check-conversion.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/source/slang/slang-check-conversion.cpp b/source/slang/slang-check-conversion.cpp
index 0a0990ede..8b60b2725 100644
--- a/source/slang/slang-check-conversion.cpp
+++ b/source/slang/slang-check-conversion.cpp
@@ -488,6 +488,14 @@ namespace Slang
// then we should start by trying to resolve the ambiguous reference
// based on prioritization of the different candidates.
//
+ // TODO: A more powerful model would be to try to coerce each
+ // of the constituent overload candidates, filtering down to
+ // those that are coercible, and then disambiguating the result.
+ // Such an approach would let us disambiguate between overloaded
+ // symbols based on their type (e.g., by casting the name of
+ // an overloaded function to the type of the overload we mean
+ // to reference).
+ //
if( auto fromOverloadedExpr = as<OverloadedExpr>(fromExpr) )
{
auto resolvedExpr = maybeResolveOverloadedExpr(fromOverloadedExpr, LookupMask::Default, nullptr);