From a7e911985327be427d6ff96bd7548ab1b06d3103 Mon Sep 17 00:00:00 2001 From: Yong He Date: Wed, 4 Sep 2024 19:10:38 -0700 Subject: Preserve name in DeclRefExpr for correct highlighitng of `This`. (#4980) * Preserve name in DeclRefExpr for correct highlighitng of `This`. * Fix test. --- source/slang/slang-check-overload.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'source/slang/slang-check-overload.cpp') diff --git a/source/slang/slang-check-overload.cpp b/source/slang/slang-check-overload.cpp index 7318fa390..9b3d6baff 100644 --- a/source/slang/slang-check-overload.cpp +++ b/source/slang/slang-check-overload.cpp @@ -983,6 +983,7 @@ namespace Slang return ConstructDeclRefExpr( innerDeclRef, base, + innerDeclRef.getName(), originalExpr->loc, originalExpr); } @@ -1037,6 +1038,7 @@ namespace Slang baseExpr = ConstructLookupResultExpr( candidate.item, context.baseExpr, + candidate.item.declRef.getName(), context.funcLoc, context.originalExpr); break; @@ -2201,7 +2203,7 @@ namespace Slang if (lastInner) { auto baseExpr = GetBaseExpr(funcDeclRefExpr); - lastInner->baseFunction = ConstructLookupResultExpr(candidate.item, baseExpr, funcDeclRefExpr->loc, funcDeclRefExpr); + lastInner->baseFunction = ConstructLookupResultExpr(candidate.item, baseExpr, funcDeclRefExpr->name, funcDeclRefExpr->loc, funcDeclRefExpr); } candidate.exprVal = expr; expr->type.type = diffFuncType; -- cgit v1.2.3