diff --git a/dsymbol/src/dsymbol/tests.d b/dsymbol/src/dsymbol/tests.d index 0ff9d46..8e32a55 100644 --- a/dsymbol/src/dsymbol/tests.d +++ b/dsymbol/src/dsymbol/tests.d @@ -710,8 +710,7 @@ unittest // position of variable life size_t cursorPos = 82; auto pair = generateAutocompleteTreesProd(ufcsTemplateExampleCode, randomDFilename, cursorPos, cache); - assert(pair.ufcsSymbols.length > 0); - assert(pair.ufcsSymbols[0].name == "increment"); + assert(pair.ufcsSymbols.length == 0); } diff --git a/dsymbol/src/dsymbol/ufcs.d b/dsymbol/src/dsymbol/ufcs.d index 12a49c1..ff013aa 100644 --- a/dsymbol/src/dsymbol/ufcs.d +++ b/dsymbol/src/dsymbol/ufcs.d @@ -279,10 +279,6 @@ private bool matchAliasThis(const(DSymbol)* beforeDotType, const(DSymbol)* incom return isCallableWithArg(incomingSymbol, beforeDotType.aliasThisSymbols.front.type, false, recursionDepth); } -bool isNonConstrainedTemplate(const(DSymbol)* incomingSymbol){ - return incomingSymbol.functionParameters.front.type !is null && incomingSymbol.functionParameters.front.type.kind is CompletionKind.typeTmpParam; -} - /** * Params: * incomingSymbol = the function symbol to check if it is valid for UFCS with `beforeDotType`. @@ -305,7 +301,6 @@ bool isCallableWithArg(const(DSymbol)* incomingSymbol, const(DSymbol)* beforeDot if (incomingSymbol.kind is CompletionKind.functionName && !incomingSymbol.functionParameters.empty && incomingSymbol.functionParameters.front.type) { return beforeDotType is incomingSymbol.functionParameters.front.type - || isNonConstrainedTemplate(incomingSymbol) || willImplicitBeUpcasted(beforeDotType, incomingSymbol) || matchAliasThis(beforeDotType, incomingSymbol, recursionDepth);