You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
// PROTOTYPE: It looks like we added a bunch of code in BindInvocationExpressionContinued at this position
1604
+
// Tracked by https://github.com/dotnet/roslyn/issues/76130: It looks like we added a bunch of code in BindInvocationExpressionContinued at this position
1605
1605
// that specifically deals with new extension methods. It adjusts analyzedArguments, etc.
// Add methods. This case can be hit for spreads and non-spread elements.
1664
1664
Debug.Assert(call.HasErrors);
1665
1665
Debug.Assert(call.Method.Name=="Add");
1666
-
returncall.Arguments[call.InvokedAsExtensionMethod?1:0];// PROTOTYPE: Add test coverage for new extensions
1666
+
returncall.Arguments[call.InvokedAsExtensionMethod?1:0];// Tracked by https://github.com/dotnet/roslyn/issues/76130: Add test coverage for new extensions
1667
1667
caseBoundBadExpressionbadExpression:
1668
1668
Debug.Assert(false);// Add test if we hit this assert.
// This prevents, for example, an unused params parameter after the out parameters.
684
684
vardeconstructMethod=((BoundCall)result).Method;
685
685
varparameters=deconstructMethod.Parameters;
686
-
for(inti=(deconstructMethod.IsExtensionMethod?1:0);i<parameters.Length;i++)// PROTOTYPE: Test this code path with new extensions
686
+
for(inti=(deconstructMethod.IsExtensionMethod?1:0);i<parameters.Length;i++)// Tracked by https://github.com/dotnet/roslyn/issues/76130: Test this code path with new extensions
// PROTOTYPE we should likely reduce (ie. do type inference and substitute) the candidates (like ToBadExpression)
8048
+
// Tracked by https://github.com/dotnet/roslyn/issues/76130 : we should likely reduce (ie. do type inference and substitute) the candidates (like ToBadExpression)
8049
8049
return new BoundBadExpression(syntax, LookupResultKind.Viable, errorTypeSymbol.CandidateSymbols!, [receiver], CreateErrorType());
// PROTOTYPE: Regarding 'acceptOnlyMethods', consider if it would be better to add a special 'LookupOptions' value to filter out properties during lookup
8632
+
// Tracked by https://github.com/dotnet/roslyn/issues/76130 : Regarding 'acceptOnlyMethods', consider if it would be better to add a special 'LookupOptions' value to filter out properties during lookup
// ambiguous between multiple applicable properties
8688
8688
propertyResult.Free();
8689
-
// PROTOTYPE consider using the property overload resolution result in the result to improve reported diagnostics
8689
+
// Tracked by https://github.com/dotnet/roslyn/issues/76130 : consider using the property overload resolution result in the result to improve reported diagnostics
8690
8690
result = makeErrorResult(left.Type, memberName, arity, lookupResult, expression, diagnostics);
// PROTOTYPE we'll want to describe what went wrong in a useful way (see OverloadResolutionResult.ReportDiagnostics)
8819
+
// Tracked by https://github.com/dotnet/roslyn/issues/76130 : we'll want to describe what went wrong in a useful way (see OverloadResolutionResult.ReportDiagnostics)
8820
8820
var errorInfo = new CSDiagnosticInfo(ErrorCode.ERR_ExtensionResolutionFailed, receiverType, memberName);
8821
8821
diagnostics.Add(errorInfo, expression.Location);
8822
8822
var resultSymbol = new ExtendedErrorTypeSymbol(containingSymbol: null, lookupResult.Symbols.ToImmutable(), LookupResultKind.OverloadResolutionFailure, errorInfo, arity);
diagnostics, queryClause: null, ignoreNormalFormIfHasValidParamsParameter: true, anyApplicableCandidates: out bool _,
10503
10503
disallowExpandedNonArrayParams: false,
10504
-
acceptOnlyMethods: true).MakeCompilerGenerated(); // PROTOTYPE: Test effect of acceptOnlyMethods value
10504
+
acceptOnlyMethods: true).MakeCompilerGenerated(); // Tracked by https://github.com/dotnet/roslyn/issues/76130 : Test effect of acceptOnlyMethods value
acceptOnlyMethods: true, // PROTOTYPE: Confirm this value is appropriate for all consumers of the enclosing method and test effect of this value for all of them
10633
+
acceptOnlyMethods: true, // Tracked by https://github.com/dotnet/roslyn/issues/76130 : Confirm this value is appropriate for all consumers of the enclosing method and test effect of this value for all of them
// PROTOTYPE we should be able to remove this method once all the callers are updated to account for new extension members
526
+
// Tracked by https://github.com/dotnet/roslyn/issues/76130 : we should be able to remove this method once all the callers are updated to account for new extension members
527
527
/// <summary>
528
528
/// Lookup extension methods by name and arity in the given binder and
529
529
/// check viability in this binder. The lookup is performed on a single
Copy file name to clipboardExpand all lines: src/Compilers/CSharp/Portable/Binder/Binder_Patterns.cs
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -1058,7 +1058,7 @@ deconstructMethod is null &&
1058
1058
if(deconstructMethodisnull)
1059
1059
hasErrors=true;
1060
1060
1061
-
intskippedExtensionParameters=deconstructMethod?.IsExtensionMethod==true?1:0;// PROTOTYPE: Test this code path with new extensions
1061
+
intskippedExtensionParameters=deconstructMethod?.IsExtensionMethod==true?1:0;// Tracked by https://github.com/dotnet/roslyn/issues/76130: Test this code path with new extensions
// Estimate the return type of Select's lambda argument
218
-
BoundExpressionarg=arguments.Argument(arguments.IncludesReceiverAsArgument?1:0);// PROTOTYPE test this code path for new extensions
218
+
BoundExpressionarg=arguments.Argument(arguments.IncludesReceiverAsArgument?1:0);// Tracked by https://github.com/dotnet/roslyn/issues/76130 : test this code path for new extensions
LookupExtensionMethods(lookupResult,scope,plainName,arity,refuseSiteInfo);// PROTOTYPE account for new extension members
1548
+
LookupExtensionMethods(lookupResult,scope,plainName,arity,refuseSiteInfo);// Tracked by https://github.com/dotnet/roslyn/issues/76130 : account for new extension members
0 commit comments