Binder\Binder.cs (10)
572internal static void Error(BindingDiagnosticBag diagnostics, ErrorCode code, CSharpSyntaxNode syntax)
577internal static void Error(BindingDiagnosticBag diagnostics, ErrorCode code, CSharpSyntaxNode syntax, params object[] args)
582internal static void Error(BindingDiagnosticBag diagnostics, ErrorCode code, SyntaxToken token)
587internal static void Error(BindingDiagnosticBag diagnostics, ErrorCode code, SyntaxToken token, params object[] args)
592internal static void Error(BindingDiagnosticBag diagnostics, ErrorCode code, SyntaxNodeOrToken syntax)
599internal static void Error(BindingDiagnosticBag diagnostics, ErrorCode code, SyntaxNodeOrToken syntax, params object[] args)
606internal static void Error(BindingDiagnosticBag diagnostics, ErrorCode code, Location location)
611internal static void Error(BindingDiagnosticBag diagnostics, ErrorCode code, Location location, params object[] args)
810? ErrorCode.ERR_UnmanagedCallersOnlyMethodsCannotBeConvertedToDelegate
811: ErrorCode.ERR_UnmanagedCallersOnlyMethodsCannotBeCalledDirectly,
Binder\Binder.OperatorResolutionForReporting.cs (3)
135Error(diagnostics, ErrorCode.ERR_SingleInapplicableUnaryOperator, toReport, leftDisplay, inapplicableMember);
140Error(diagnostics, ErrorCode.ERR_SingleInapplicableBinaryOperator, toReport, leftDisplay, rightDisplay, inapplicableMember);
228Error(diagnostics, ErrorCode.ERR_AmbigOperator, nodeToReport(node), first, second);
Binder\Binder.ValueChecks.cs (147)
982Error(diagnostics, ErrorCode.ERR_BadSKknown, node, ns.NamespaceSymbol, MessageID.IDS_SK_NAMESPACE.Localize(), MessageID.IDS_SK_VARIABLE.Localize());
987Error(diagnostics, ErrorCode.ERR_BadSKknown, node, type.Type, MessageID.IDS_SK_TYPE.Localize(), MessageID.IDS_SK_VARIABLE.Localize());
1016var errorCode = GetRangeLvalueError(valueKind);
1017if (errorCode is ErrorCode.ERR_InvalidAddrOp or ErrorCode.ERR_RefLocalOrParamExpected)
1033Error(diagnostics, ErrorCode.ERR_UnboxNotLValue, node);
1053Error(diagnostics, ErrorCode.ERR_RefLocalOrParamExpected, node);
1065Error(diagnostics, ErrorCode.ERR_RefLocalOrParamExpected, node);
1090Error(diagnostics, ErrorCode.ERR_RefLocalOrParamExpected, node);
1176Error(diagnostics, ErrorCode.ERR_RefLocalOrParamExpected, node);
1203Error(diagnostics, ErrorCode.ERR_RefLocalOrParamExpected, node);
1228Error(diagnostics, ErrorCode.ERR_RefLocalOrParamExpected, node);
1248var errorCode = GetThisLvalueError(valueKind, isValueType, isPrimaryConstructorParameter);
1249if (errorCode is ErrorCode.ERR_InvalidAddrOp or ErrorCode.ERR_IncrementLvalueExpected or ErrorCode.ERR_RefReturnThis or ErrorCode.ERR_RefLocalOrParamExpected or ErrorCode.ERR_RefLvalueExpected)
1264Error(diagnostics, ErrorCode.ERR_BadSKknown, expr.Syntax, ((BoundNamespaceExpression)expr).NamespaceSymbol, MessageID.IDS_SK_NAMESPACE.Localize(), MessageID.IDS_SK_VARIABLE.Localize());
1272Error(diagnostics, ErrorCode.ERR_BadSKunknown, expr.Syntax, expr.Type, MessageID.IDS_SK_TYPE.Localize());
1307Error(diagnostics, ErrorCode.WRN_AddressOfInAsync, node);
1311Error(diagnostics, ErrorCode.ERR_AddressOfInIterator, node);
1329diagnostics.Add(ErrorCode.WRN_AssignmentToLockOrDispose, local.Syntax.Location, localSymbol);
1345diagnostics.Add(ErrorCode.ERR_RefLocalOrParamExpected, node.Location);
1379Error(diagnostics, inUnsafeRegion ? ErrorCode.WRN_RefReturnLocal2 : ErrorCode.ERR_RefReturnLocal2, local.Syntax, localSymbol);
1383Error(diagnostics, inUnsafeRegion ? ErrorCode.WRN_RefReturnLocal : ErrorCode.ERR_RefReturnLocal, node, localSymbol);
1390Error(diagnostics, inUnsafeRegion ? ErrorCode.WRN_RefReturnNonreturnableLocal2 : ErrorCode.ERR_RefReturnNonreturnableLocal2, local.Syntax, localSymbol);
1394Error(diagnostics, inUnsafeRegion ? ErrorCode.WRN_RefReturnNonreturnableLocal : ErrorCode.ERR_RefReturnNonreturnableLocal, node, localSymbol);
1399Error(diagnostics, inUnsafeRegion ? ErrorCode.WRN_EscapeVariable : ErrorCode.ERR_EscapeVariable, node, localSymbol);
1423Error(diagnostics, ErrorCode.ERR_RefLocalOrParamExpected, node);
1463diagnostics.Add(ErrorCode.WRN_AssignmentToLockOrDispose, parameter.Syntax.Location, parameterSymbol.Name);
1477ErrorCode errorCode;
1481errorCode = ErrorCode.ERR_RefReturnReadonlyPrimaryConstructorParameter2;
1485errorCode = ErrorCode.ERR_RefReadonlyPrimaryConstructorParameter2;
1489errorCode = ErrorCode.ERR_AssgReadonlyPrimaryConstructorParameter2;
1496ErrorCode errorCode;
1500errorCode = ErrorCode.ERR_RefReturnReadonlyPrimaryConstructorParameter;
1504errorCode = ErrorCode.ERR_RefReadonlyPrimaryConstructorParameter;
1508errorCode = ErrorCode.ERR_AssgReadonlyPrimaryConstructorParameter;
1559Error(diagnostics, _inUnsafeRegion ? ErrorCode.WRN_EscapeVariable : ErrorCode.ERR_EscapeVariable, node, parameter);
1582Error(diagnostics, inUnsafeRegion ? ErrorCode.WRN_RefReturnStructThis : ErrorCode.ERR_RefReturnStructThis, node);
1589(checkingReceiver: true, isRefScoped: true, inUnsafeRegion: false, _) => (ErrorCode.ERR_RefReturnScopedParameter2, parameter.Syntax),
1590(checkingReceiver: true, isRefScoped: true, inUnsafeRegion: true, _) => (ErrorCode.WRN_RefReturnScopedParameter2, parameter.Syntax),
1591(checkingReceiver: true, isRefScoped: false, inUnsafeRegion: false, { IsReturnOnly: true }) => (ErrorCode.ERR_RefReturnOnlyParameter2, parameter.Syntax),
1592(checkingReceiver: true, isRefScoped: false, inUnsafeRegion: true, { IsReturnOnly: true }) => (ErrorCode.WRN_RefReturnOnlyParameter2, parameter.Syntax),
1593(checkingReceiver: true, isRefScoped: false, inUnsafeRegion: false, _) => (ErrorCode.ERR_RefReturnParameter2, parameter.Syntax),
1594(checkingReceiver: true, isRefScoped: false, inUnsafeRegion: true, _) => (ErrorCode.WRN_RefReturnParameter2, parameter.Syntax),
1595(checkingReceiver: false, isRefScoped: true, inUnsafeRegion: false, _) => (ErrorCode.ERR_RefReturnScopedParameter, node),
1596(checkingReceiver: false, isRefScoped: true, inUnsafeRegion: true, _) => (ErrorCode.WRN_RefReturnScopedParameter, node),
1597(checkingReceiver: false, isRefScoped: false, inUnsafeRegion: false, { IsReturnOnly: true }) => (ErrorCode.ERR_RefReturnOnlyParameter, node),
1598(checkingReceiver: false, isRefScoped: false, inUnsafeRegion: true, { IsReturnOnly: true }) => (ErrorCode.WRN_RefReturnOnlyParameter, node),
1599(checkingReceiver: false, isRefScoped: false, inUnsafeRegion: false, _) => (ErrorCode.ERR_RefReturnParameter, node),
1600(checkingReceiver: false, isRefScoped: false, inUnsafeRegion: true, _) => (ErrorCode.WRN_RefReturnParameter, node)
1664Error(diagnostics, ErrorCode.ERR_RefLocalOrParamExpected, node);
1894Error(diagnostics, ErrorCode.ERR_WinRtEventPassedByRef, eventSyntax);
1963Error(diagnostics, ErrorCode.ERR_ReturnNotLValue, callSyntaxOpt, methodSymbol);
1981Error(diagnostics, ErrorCode.ERR_RefLocalOrParamExpected, node);
2014Error(diagnostics, ErrorCode.ERR_ReturnNotLValue, expr.Syntax, propertySymbol);
2018Error(diagnostics, ErrorCode.ERR_RefProperty, node);
2045Error(diagnostics, ErrorCode.ERR_AssgReadonlyProp, node, propertySymbol);
2055Error(diagnostics, ErrorCode.ERR_AssignmentInitOnly, node, propertySymbol);
2076Error(diagnostics, ErrorCode.ERR_BadProtectedAccess, node, propertySymbol, accessThroughType, this.ContainingType);
2080Error(diagnostics, ErrorCode.ERR_InaccessibleSetter, node, propertySymbol);
2111Error(diagnostics, ErrorCode.ERR_PropertyLacksGet, node, propertySymbol);
2126Error(diagnostics, ErrorCode.ERR_BadProtectedAccess, node, propertySymbol, accessThroughType, this.ContainingType);
2130Error(diagnostics, ErrorCode.ERR_InaccessibleGetter, node, propertySymbol);
2151Error(diagnostics, ErrorCode.ERR_RefLocalOrParamExpected, node);
2222Error(diagnostics, ErrorCode.ERR_AbstractBaseCall, node, propertyOrEventSymbolOpt ?? member);
3148ErrorCode errorCode = GetStandardCallEscapeError(checkingReceiver);
3254Error(diagnostics, ErrorCode.ERR_CallArgMixing, syntax, symbolForReporting, parameterName);
3311Error(diagnostics, ErrorCode.ERR_CallArgMixing, syntax, symbolForReporting, parameterName);
3375private static ErrorCode GetStandardCallEscapeError(bool checkingReceiver)
3377return checkingReceiver ? ErrorCode.ERR_EscapeCall2 : ErrorCode.ERR_EscapeCall;
3486ErrorCode[] ReadOnlyLocalErrors =
3488ErrorCode.ERR_RefReadonlyLocalCause,
3489ErrorCode.ERR_AssgReadonlyLocalCause,
3491ErrorCode.ERR_RefReadonlyLocal2Cause,
3492ErrorCode.ERR_AssgReadonlyLocal2Cause
3500private static ErrorCode GetThisLvalueError(BindValueKind kind, bool isValueType, bool isPrimaryConstructorParameter)
3506return ErrorCode.ERR_AssgReadonlyLocal;
3509return ErrorCode.ERR_RefReadonlyLocal;
3512return ErrorCode.ERR_InvalidAddrOp;
3515return isValueType ? ErrorCode.ERR_AssgReadonlyLocal : ErrorCode.ERR_IncrementLvalueExpected;
3519return isPrimaryConstructorParameter ? ErrorCode.ERR_RefReturnPrimaryConstructorParameter : ErrorCode.ERR_RefReturnThis;
3522return ErrorCode.ERR_RefLocalOrParamExpected;
3527return ErrorCode.ERR_RefLvalueExpected;
3533private static ErrorCode GetRangeLvalueError(BindValueKind kind)
3540return ErrorCode.ERR_QueryRangeVariableReadOnly;
3543return ErrorCode.ERR_InvalidAddrOp;
3547return ErrorCode.ERR_RefReturnRangeVariable;
3550return ErrorCode.ERR_RefLocalOrParamExpected;
3555return ErrorCode.ERR_QueryOutRefRangeVariable;
3561private static ErrorCode GetMethodGroupOrFunctionPointerLvalueError(BindValueKind valueKind)
3565return ErrorCode.ERR_RefReadonlyLocalCause;
3569return ErrorCode.ERR_AssgReadonlyLocalCause;
3572private static ErrorCode GetStandardLvalueError(BindValueKind kind)
3578return ErrorCode.ERR_AssgLvalueExpected;
3581return ErrorCode.ERR_InvalidAddrOp;
3584return ErrorCode.ERR_IncrementLvalueExpected;
3587return ErrorCode.ERR_FixedNeedsLvalue;
3591return ErrorCode.ERR_RefReturnLvalueExpected;
3594return ErrorCode.ERR_RefLocalOrParamExpected;
3599return ErrorCode.ERR_RefLvalueExpected;
3608private static ErrorCode GetStandardRValueRefEscapeError(SafeContext escapeTo)
3612return ErrorCode.ERR_RefReturnLvalueExpected;
3615return ErrorCode.ERR_EscapeOther;
3631ErrorCode[] ReadOnlyErrors =
3633ErrorCode.ERR_RefReturnReadonly,
3634ErrorCode.ERR_RefReadonly,
3635ErrorCode.ERR_AssgReadonly,
3636ErrorCode.ERR_RefReturnReadonlyStatic,
3637ErrorCode.ERR_RefReadonlyStatic,
3638ErrorCode.ERR_AssgReadonlyStatic,
3639ErrorCode.ERR_RefReturnReadonly2,
3640ErrorCode.ERR_RefReadonly2,
3641ErrorCode.ERR_AssgReadonly2,
3642ErrorCode.ERR_RefReturnReadonlyStatic2,
3643ErrorCode.ERR_RefReadonlyStatic2,
3644ErrorCode.ERR_AssgReadonlyStatic2
3666Error(diagnostics, ErrorCode.ERR_InvalidAddrOp, node);
3672ErrorCode[] ReadOnlyErrors =
3674ErrorCode.ERR_RefReturnReadonlyNotField,
3675ErrorCode.ERR_RefReadonlyNotField,
3676ErrorCode.ERR_AssignReadonlyNotField,
3677ErrorCode.ERR_RefReturnReadonlyNotField2,
3678ErrorCode.ERR_RefReadonlyNotField2,
3679ErrorCode.ERR_AssignReadonlyNotField2,
5116Error(diagnostics, inUnsafeRegion ? ErrorCode.WRN_EscapeVariable : ErrorCode.ERR_EscapeVariable, node, expr.Syntax);
5125Error(diagnostics, inUnsafeRegion ? ErrorCode.WRN_EscapeVariable : ErrorCode.ERR_EscapeVariable, node, localSymbol);
5139Error(diagnostics, inUnsafeRegion ? ErrorCode.WRN_EscapeStackAlloc : ErrorCode.ERR_EscapeStackAlloc, node, expr.Type);
5394Error(diagnostics, ErrorCode.ERR_CollectionExpressionEscape, node, expr.Type);
5581diagnostics.Add(ErrorCode.ERR_InternalError, node.Location);
5858Error(diagnostics, _inUnsafeRegion ? ErrorCode.WRN_EscapeVariable : ErrorCode.ERR_EscapeVariable, initExpr.Syntax, expr.Syntax);
Binder\Binder_Attributes.cs (10)
254Error(diagnostics, ErrorCode.ERR_AttributeCtorInParameter, node, attributeConstructor.ToDisplayString(SymbolDisplayFormat.CSharpErrorMessageFormat));
407Error(diagnostics, ErrorCode.ERR_BadAttributeParamType, syntax, parameter.Name, paramType.Type);
475diagnostics.Add(ErrorCode.ERR_NamedArgumentExpected, argument.Expression.GetLocation());
503Error(diagnostics, ErrorCode.ERR_DuplicateNamedAttributeArgument, argument, argumentName);
670diagnostics.Add(ErrorCode.ERR_BadNamedAttributeArgument,
683diagnostics.Add(ErrorCode.ERR_BadNamedAttributeArgumentType,
741diagnostics.Add(ErrorCode.ERR_BadAttributeArgument, syntax.Location);
899Binder.Error(diagnostics, ErrorCode.ERR_BadAttributeArgument, node.Syntax);
970Binder.Error(diagnostics, ErrorCode.ERR_AttrArgWithTypeVars, node.Syntax, typeOfArgument.ToDisplayString(SymbolDisplayFormat.CSharpErrorMessageFormat));
1054Binder.Error(diagnostics, ErrorCode.ERR_BadAttributeArgument, node.Syntax);
Binder\Binder_Await.cs (22)
165info = new CSDiagnosticInfo(ErrorCode.ERR_BadAwaitInStaticVariableInitializer);
183new CSDiagnosticInfo(ErrorCode.ERR_BadAwaitInQuery) :
184new CSDiagnosticInfo(ErrorCode.ERR_BadAwaitWithoutAsyncLambda, ((LambdaSymbol)method).MessageID.Localize());
190info = new CSDiagnosticInfo(ErrorCode.ERR_BadAwaitWithoutVoidAsyncMethod);
201info = new CSDiagnosticInfo(ErrorCode.ERR_BadAwaitWithoutAsyncMethod, method.ReturnType);
209info = new CSDiagnosticInfo(ErrorCode.ERR_BadAwaitWithoutAsync);
223Error(diagnostics, ErrorCode.ERR_AwaitInUnsafeContext, nodeOrToken.GetLocation()!);
228Error(diagnostics, ErrorCode.ERR_BadAwaitInLock, nodeOrToken.GetLocation()!);
233Error(diagnostics, ErrorCode.ERR_BadAwaitInCatchFilter, nodeOrToken.GetLocation()!);
239Error(diagnostics, ErrorCode.ERR_BadAwaitInFinally, nodeOrToken.GetLocation()!);
245Error(diagnostics, ErrorCode.ERR_BadAwaitInCatch, nodeOrToken.GetLocation()!);
565Error(diagnostics, ErrorCode.ERR_BadAwaitArgIntrinsic, node, expression.Display);
588Error(diagnostics, ErrorCode.ERR_BadAwaitArgVoidCall, node);
602Error(diagnostics, ErrorCode.ERR_BadAwaitArg, node, expression.Type);
615Error(diagnostics, ErrorCode.ERR_BadAwaitArg, node, expression.Type);
643Error(diagnostics, ErrorCode.ERR_NoSuchMember, node, awaiterType, WellKnownMemberNames.IsCompleted);
658Error(diagnostics, ErrorCode.ERR_PropertyLacksGet, node, isCompletedProperty);
665Error(diagnostics, ErrorCode.ERR_BadAwaiterPattern, node, awaiterType, awaitedExpressionType);
689Error(diagnostics, ErrorCode.ERR_DoesntImplementAwaitInterface, node, awaiterType, INotifyCompletion);
718Error(diagnostics, ErrorCode.ERR_NoSuchMember, node, awaiterType, WellKnownMemberNames.GetResult);
730Error(diagnostics, ErrorCode.ERR_NoSuchMember, node, awaiterType, WellKnownMemberNames.GetResult);
738Error(diagnostics, ErrorCode.ERR_BadAwaiterPattern, node, awaiterType, awaitedExpressionType);
Binder\Binder_Constraints.cs (24)
78diagnostics.Add(ErrorCode.ERR_DuplicateConstraintClause, clause.Name.Location, name);
90diagnostics.Add(ErrorCode.ERR_TyVarNotFoundInConstraint, clause.Name.Location, name, containingSymbol.ConstructedFrom());
202diagnostics.Add(ErrorCode.ERR_NewBoundWithVal, syntax.GetFirstToken().GetLocation());
206diagnostics.Add(ErrorCode.ERR_NewBoundWithUnmanaged, syntax.GetFirstToken().GetLocation());
211diagnostics.Add(ErrorCode.ERR_NewBoundMustBeLast, syntax.GetFirstToken().GetLocation());
221diagnostics.Add(ErrorCode.ERR_DefaultConstraintOverrideOnly, syntax.GetLocation());
305diagnostics.Add(ErrorCode.ERR_AllowsClauseMustBeLast, syntax.GetFirstToken().GetLocation());
316diagnostics.Add(ErrorCode.ERR_RefStructConstraintAlreadySpecified, allowsConstraint);
324Error(diagnostics, ErrorCode.ERR_RuntimeDoesNotSupportByRefLikeGenerics, allowsConstraint);
354diagnostics.Add(ErrorCode.ERR_OverrideWithConstraints, syntax.GetLocation());
361diagnostics.Add(ErrorCode.ERR_TypeConstraintsMustBeUniqueAndFirst, syntax.GetLocation());
456diagnostics.Add(ErrorCode.ERR_BadVisBound, location, containingSymbol, constraintType.Type);
472diagnostics.Add(ErrorCode.ERR_FileTypeDisallowedInSignature, location, constraintType.Type, containingSymbol);
500Error(diagnostics, ErrorCode.ERR_DuplicateBound, syntax, type.Type.SetUnknownNullabilityForReferenceTypes(), typeParameter.Name);
514Error(diagnostics, ErrorCode.ERR_ClassBoundNotFirst, syntax, type.Type);
529Error(diagnostics, ErrorCode.ERR_RefValBoundWithClass, syntax, type.Type);
538Error(diagnostics, ErrorCode.ERR_RefValBoundWithClass, syntax, type.Type);
544Error(diagnostics, ErrorCode.ERR_UnmanagedBoundWithClass, syntax, type.Type);
579Error(diagnostics, ErrorCode.ERR_SpecialTypeAsBound, syntax, type);
594Error(diagnostics, ErrorCode.ERR_DynamicTypeAsBound, syntax);
605Error(diagnostics, ErrorCode.ERR_ConstraintIsStaticClass, syntax, type);
614Error(diagnostics, ErrorCode.ERR_BadBoundType, syntax, type);
621Error(diagnostics, ErrorCode.ERR_BadConstraintType, syntax.GetLocation());
634Error(diagnostics, ErrorCode.ERR_ConstructedDynamicTypeAsBound, syntax, type);
Binder\Binder_Conversions.cs (63)
337diagnostics.Add(ErrorCode.WRN_ConvertingLock, source.Syntax);
490Error(diagnostics, ErrorCode.ERR_RuntimeDoesNotSupportStaticAbstractMembersInInterfaces, syntax);
511Error(diagnostics, ErrorCode.ERR_RuntimeDoesNotSupportStaticAbstractMembersInInterfaces, syntax);
518Error(diagnostics, ErrorCode.ERR_RuntimeDoesNotSupportInlineArrayTypes, syntax);
540Error(diagnostics, ErrorCode.ERR_InlineArrayConversionToReadOnlySpanNotSupported, syntax, destination);
554Error(diagnostics, ErrorCode.ERR_InlineArrayConversionToSpanNotSupported, syntax, destination);
642ErrorCode.ERR_MissingPredefinedMember,
810Error(diagnostics, ErrorCode.ERR_BadTypeArgument, syntax, elementType);
814Error(diagnostics, ErrorCode.ERR_BadTypeArgument, syntax, inlineArrayType);
871Error(diagnostics, ErrorCode.ERR_ImplicitObjectCreationIllegalTargetType, syntax, type);
875Error(diagnostics, ErrorCode.ERR_UnsafeTypeInObjectCreation, syntax, type);
954_diagnostics.Add(ErrorCode.ERR_CollectionRefLikeElementType, _node.Syntax);
979? ErrorCode.WRN_CollectionExpressionRefStructSpreadMayAllocate
980: ErrorCode.WRN_CollectionExpressionRefStructMayAllocate,
1031_diagnostics.Add(ErrorCode.ERR_CollectionExpressionImmutableArray, syntax, _targetType.OriginalDefinition);
1040_diagnostics.Add(ErrorCode.ERR_ParamsCollectionInfiniteChainOfConstructorCalls, syntax, inProgress, inProgressConstructor.OriginalDefinition);
1056_diagnostics.Add(ErrorCode.ERR_CollectionInitializerInfiniteChainOfAddCalls, syntax, _targetType);
1237ErrorCode.ERR_CollectionArgumentsNotSupportedForType,
1253_diagnostics.Add(ErrorCode.ERR_CollectionArgumentsMustBeEmpty, _node.WithElement.Syntax.GetFirstToken().GetLocation());
1516diagnostics.Add(ErrorCode.ERR_CollectionBuilderAttributeMethodNotFound, syntax, methodName ?? "", elementTypeOriginalDefinition, targetTypeOriginalDefinition);
1684diagnostics.Add(ErrorCode.ERR_NoNewAbstract, syntax.Location, namedType);
1789ErrorCode.ERR_ParamsCollectionConstructorDoesntInitializeRequiredMember,
2025diagnostics.Add(ErrorCode.ERR_CollectionExpressionMissingAdd, syntax, methodGroup.ReceiverOpt.Type);
2370ErrorCode.ERR_CollectionBuilderNoElementType :
2371ErrorCode.ERR_CollectionExpressionTargetNoElementType,
2411Error(diagnostics, ErrorCode.ERR_NoImplicitConv, spreadElement.Expression.Syntax, spreadElement.Expression.Display, elementType);
2439Error(diagnostics, ErrorCode.ERR_CollectionExpressionTargetTypeNotConstructible, node.Syntax, targetType);
2476ErrorCode.ERR_NoImplicitConvTargetTypedConditional,
2774diagnostics.Add(ErrorCode.ERR_NoNewAbstract, syntax.Location, instantiatedType);
2889Error(diagnostics, ErrorCode.WRN_MethGrpToNonDel, syntax, ((BoundMethodGroup)source).Name, destination);
2979ErrorCode.ERR_ScopedMismatchInParameterOfTarget :
2980ErrorCode.WRN_ScopedMismatchInParameterOfTarget,
2995diagnostics.Add(ErrorCode.WRN_TargetDifferentRefness, location, lambdaOrMethodParameter, delegateParameter);
3063Error(diagnostics, ErrorCode.WRN_OptionalParamValueMismatch, lambdaParameter.GetFirstLocation(), p + 1, lambdaParamDefault, delegateParamDefault ?? ((object)MessageID.IDS_Missing.Localize()));
3070Error(diagnostics, ErrorCode.WRN_ParamsArrayInLambdaOnly, lambdaParameter.GetFirstLocation(), p + 1);
3114ReportUnsafeIfNotAllowed(syntax, diagnostics, disallowedUnder: MemorySafetyRules.Updated, customErrorCode: ErrorCode.ERR_UnsafeUninitializedStackAlloc);
3397diagnostics.Add(ErrorCode.ERR_QueryNoProvider, node.Location, receiverOpt.Type, memberSymbol.Name);
3402diagnostics.Add(ErrorCode.ERR_ObjectRequired, node.Location, memberSymbol);
3411diagnostics.Add(ErrorCode.ERR_InitializerAddHasWrongSignature, node.Location, memberSymbol);
3416diagnostics.Add(ErrorCode.ERR_BadAwaitArg, node.Location, receiverOpt.Type);
3420diagnostics.Add(ErrorCode.ERR_ObjectProhibited, node.Location, memberSymbol);
3427diagnostics.Add(ErrorCode.ERR_ObjectRequired, node.Location, memberSymbol);
3440ErrorCode code = InFieldInitializer ? ErrorCode.ERR_FieldInitRefNonstatic : ErrorCode.ERR_ObjectRequired;
3449Error(diagnostics, ErrorCode.ERR_ObjectRequired, node, memberSymbol);
3470Error(diagnostics, ErrorCode.ERR_BadAccess, node, memberSymbol);
3614Error(diagnostics, ErrorCode.ERR_BadRetType, errorLocation, method, method.ReturnType);
3623Error(diagnostics, ErrorCode.ERR_CannotUseReducedExtensionMethodInAddressOf, errorLocation);
3634Error(diagnostics, ErrorCode.ERR_FuncPtrMethMustBeStatic, errorLocation, method);
3669static ErrorCode getMethodMismatchErrorCode(TypeKind type)
3672TypeKind.Delegate => ErrorCode.ERR_MethDelegateMismatch,
3673TypeKind.FunctionPointer => ErrorCode.ERR_MethFuncPtrMismatch,
3677static ErrorCode getRefMismatchErrorCode(TypeKind type)
3680TypeKind.Delegate => ErrorCode.ERR_DelegateRefMismatch,
3681TypeKind.FunctionPointer => ErrorCode.ERR_FuncPtrRefMismatch,
3733Error(diagnostics, ErrorCode.ERR_DelegateOnConditional, syntax.Location, selectedMethod);
3741Error(diagnostics, ErrorCode.ERR_PartialMethodToDelegate, syntax.Location, selectedMethod);
3793diagnostics.Add(ErrorCode.ERR_MethDelegateMismatch, delegateMismatchLocation, boundMethodGroup.Name, delegateType);
3940Error(diagnostics, ErrorCode.ERR_ConstOutOfRange, syntax, sourceValue.Value + "M", destination!);
3948Error(diagnostics, ErrorCode.ERR_ConstOutOfRange, syntax, sourceValue.Value!, destination!);
3959Error(diagnostics, ErrorCode.WRN_ConstOutOfRangeChecked, syntax, sourceValue.Value!, destination!);
3964Error(diagnostics, ErrorCode.ERR_ConstOutOfRangeChecked, syntax, sourceValue.Value!, destination!);
Binder\Binder_Crefs.cs (13)
56diagnostics.Add(ErrorCode.WRN_BadXMLRef, syntax.Location, noTrivia.ToFullString());
109diagnostics.Add(ErrorCode.WRN_BadXMLRef, crefSyntax.Location, noTrivia.ToFullString());
141diagnostics.Add(ErrorCode.WRN_BadXMLRef, crefSyntax.Location, noTrivia.ToFullString());
742diagnostics.Add(ErrorCode.WRN_UnqualifiedNestedTypeInCref, parameterListSyntax.Parameters[i].Location);
905diagnostics.Add(ErrorCode.WRN_BadXMLRefTypeVar, crefSyntax.Location, crefSyntax.ToString());
911diagnostics.Add(ErrorCode.WRN_AmbiguousXMLReference, crefSyntax.Location, crefSyntax.ToString(),
922diagnostics.Add(ErrorCode.WRN_BadXMLRefTypeVar, crefSyntax.Location, crefSyntax.ToString());
1069diagnostics.Add(ErrorCode.WRN_AmbiguousXMLReference, crefSyntax.Location, crefSyntax.ToString(), ambiguityWinner, viable[1]);
1185diagnostics.Add(ErrorCode.WRN_BadXMLRefReturnType, typeSyntax.Location);
1189diagnostics.Add(ErrorCode.WRN_BadXMLRefParamType, typeSyntax.Location, typeSyntax.ToString(), crefSyntax.ToString());
1210switch ((ErrorCode)diag.Code)
1212case ErrorCode.ERR_DeprecatedSymbolStr:
1213case ErrorCode.ERR_DeprecatedCollectionInitAddStr:
Binder\Binder_Deconstruct.cs (18)
60Error(diagnostics, ErrorCode.ERR_DeclarationExpressionNotPermitted, declaration);
64Error(diagnostics, ErrorCode.ERR_DeclarationExpressionNotPermitted, declaration);
229Error(diagnostics, ErrorCode.ERR_DeconstructRequiresExpression, boundRHS.Syntax);
265Error(diagnostics, ErrorCode.ERR_DeconstructWrongCardinality, syntax, tupleOrDeconstructedTypes.Length, variables.Count);
273Error(diagnostics, ErrorCode.ERR_DeconstructTooFewElements, syntax);
416Error(diagnostics, ErrorCode.ERR_TypeInferenceFailedForImplicitlyTypedDeconstructionVariable, pending.Syntax, "_");
498Error(diagnostics, ErrorCode.ERR_DeconstructRequiresExpression, element.Syntax);
516Error(diagnostics, ErrorCode.ERR_DeconstructRequiresExpression, element.Syntax);
626Error(diagnostics, ErrorCode.ERR_CannotDeconstructDynamic, rightSyntax);
722Error(diagnostics, ErrorCode.ERR_MissingDeconstruct, rightSyntax, receiver.Type, numParameters);
761Error(diagnostics, ErrorCode.ERR_DeconstructionVarFormDisallowsSpecificType, component.Designation);
784Error(diagnostics, ErrorCode.ERR_TupleElementNamesInDeconstruction, arg.NameColon);
827diagnostics.Add(ErrorCode.ERR_ScopedDiscard, scopedType.ScopedKeyword.GetLocation());
833diagnostics.Add(ErrorCode.ERR_DeconstructVariableCannotBeByRef, refType.RefKeyword.GetLocation());
893diagnostics.Add(ErrorCode.ERR_DeconstructVariableCannotBeByRef, refType.RefKeyword.GetLocation());
904diagnostics.Add(ErrorCode.ERR_ScopedRefAndRefStructOnly, typeSyntax.Location);
937diagnostics.Add(ErrorCode.ERR_UnexpectedToken, scopedType.ScopedKeyword.GetLocation(), scopedType.ScopedKeyword.ValueText);
943diagnostics.Add(ErrorCode.ERR_UnexpectedToken, refType.RefKeyword.GetLocation(), refType.RefKeyword.ValueText);
Binder\Binder_Expressions.cs (217)
328diagnostics.Add(ErrorCode.ERR_SwitchExpressionNoBestType, exprSyntax.SwitchKeyword.GetLocation());
351if (op.NoCommonTypeError == ErrorCode.ERR_InvalidQM && trueArg is Symbol trueSymbol && falseArg is Symbol falseSymbol)
390diagnostics.Add(ErrorCode.ERR_DefaultLiteralNoTargetType, defaultExpr.Syntax.GetLocation());
413diagnostics.Add(ErrorCode.ERR_ImplicitObjectCreationNoTargetType, expr.Syntax.GetLocation(), expr.Display);
433diagnostics.Add(ErrorCode.ERR_CollectionExpressionNoTargetType, expr.Syntax.GetLocation());
459diagnostics.Add(ErrorCode.ERR_CannotInferDelegateType, syntax.GetLocation());
495diagnostics.Add(ErrorCode.WRN_CapturedPrimaryConstructorParameterInFieldInitializer, syntax.Location, parameter);
581Error(diagnostics, ErrorCode.ERR_IllegalArglist, node);
645return BindUnexpectedArrayInitializer((InitializerExpressionSyntax)node, diagnostics, ErrorCode.ERR_ArrayInitInBadPlace);
875diagnostics.Add(ErrorCode.ERR_InternalError, node.Location);
891diagnostics.Add(ErrorCode.ERR_UnexpectedToken, firstToken.GetLocation(), firstToken.ValueText);
900diagnostics.Add(ErrorCode.ERR_UnexpectedToken, firstToken.GetLocation(), firstToken.ValueText);
907diagnostics.Add(ErrorCode.ERR_UnexpectedToken, firstToken.GetLocation(), firstToken.ValueText);
918diagnostics.Add(ErrorCode.ERR_ThrowMisplaced, node.ThrowKeyword.GetLocation());
971Error(diagnostics, ErrorCode.ERR_DeclarationExpressionNotPermitted, node);
1078diagnostics.Add(ErrorCode.ERR_VoidInTuple, argumentSyntax.Location);
1288Error(diagnostics, ErrorCode.ERR_MethodArgCantBeRefAny, node, argument.Type);
1358Error(diagnostics, ErrorCode.ERR_ArgsInvalid, node);
1372Error(diagnostics, ErrorCode.ERR_SpecialByRefInLambda, node, runtimeArgumentHandleType);
1421diagnostics.Add(ErrorCode.ERR_BadDynamicTypeof, node.Location);
1427diagnostics.Add(ErrorCode.ERR_BadNullableTypeof, node.Location);
1447diagnostics.Add(ErrorCode.ERR_AttrDependentTypeNotAllowed, attributeName, type);
1453diagnostics.Add(ErrorCode.ERR_AttrTypeArgCannotBeTypeVar, attributeName, type);
1484diagnostics.Add(ErrorCode.WRN_FieldIsAmbiguous, node, Compilation.LanguageVersion.ToDisplayString());
1517diagnostics.Add(ErrorCode.ERR_NoSuchMember, node, ContainingMember(), "field");
1572diagnostics.Add(ErrorCode.ERR_VariableDeclarationNamedField, syntax, requiredVersion.ToDisplayString());
1605diagnostics.Add(ErrorCode.ERR_ManagedAddr, location, type);
1609diagnostics.Add(ErrorCode.WRN_ManagedAddr, location, type);
1750diagnostics.Add(ErrorCode.WRN_PrimaryConstructorParameterIsShadowedAndNotPassedToBase, node.Location, shadowedParameter);
1781Error(diagnostics, ErrorCode.ERR_QueryOuterKey, node, name);
1785Error(diagnostics, ErrorCode.ERR_QueryInnerKey, node, name);
1789Error(diagnostics, ErrorCode.ERR_NameNotInContext, node, name);
2090Error(diagnostics, ErrorCode.ERR_InvalidPrimaryConstructorParameterReference, node, parameter);
2102Error(diagnostics, ErrorCode.ERR_ExtensionParameterInStaticContext, node, parameter.Name);
2107Error(diagnostics, ErrorCode.ERR_InvalidExtensionParameterReference, node, parameter);
2124Error(diagnostics, ErrorCode.ERR_AnonDelegateCantUse, node, parameter.Name);
2128Error(diagnostics, ErrorCode.ERR_SpecialByRefInLambda, node, parameter.Type);
2133Error(diagnostics, ErrorCode.ERR_AnonDelegateCantUseRefLike, node, parameter.Name);
2147Error(diagnostics, ErrorCode.ERR_UnsupportedPrimaryConstructorParameterCapturingRef, node, parameter.Name);
2151Error(diagnostics, ErrorCode.ERR_UnsupportedPrimaryConstructorParameterCapturingRefAny, node, parameter.Type);
2156Error(diagnostics, ErrorCode.ERR_UnsupportedPrimaryConstructorParameterCapturingRefLike, node, parameter.Name);
2168Error(diagnostics, ErrorCode.ERR_AnonDelegateCantUseStructPrimaryConstructorParameterInMember, node);
2172Error(diagnostics, ErrorCode.ERR_AnonDelegateCantUseStructPrimaryConstructorParameterCaptured, node);
2293Error(diagnostics, ErrorCode.ERR_VariableUsedBeforeDeclarationAndHidesField, node, node, possibleField);
2297Error(diagnostics, ErrorCode.ERR_VariableUsedBeforeDeclaration, node, node);
2314Error(diagnostics, ErrorCode.ERR_SpecialByRefInLambda, node, type);
2318Error(diagnostics, ErrorCode.ERR_AnonDelegateCantUseLocal, node, localSymbol);
2354Error(diagnostics, ErrorCode.ERR_SimpleProgramLocalIsReferencedOutsideOfTopLevelStatement, node, node);
2392diagnosticInfoOpt = new CSDiagnosticInfo(ErrorCode.ERR_FieldInitRefNonstatic, member);
2397diagnosticInfoOpt = new CSDiagnosticInfo(ErrorCode.ERR_ObjectRequired, member);
2409diagnosticInfoOpt = new CSDiagnosticInfo(ErrorCode.ERR_ObjectRequired, member);
2527Error(diagnostics, ErrorCode.ERR_LabelNotFound, node, labelName);
2583Error(diagnostics, inStaticContext ? ErrorCode.ERR_ThisInStaticMeth : ErrorCode.ERR_ThisInBadContext, node);
2620return new CSDiagnosticInfo(ErrorCode.ERR_ThisStructNotInAnonMeth);
2636Error(diagnostics, inStaticContext ? ErrorCode.ERR_BaseInStaticMeth : ErrorCode.ERR_BaseInBadContext, node.Token);
2641Error(diagnostics, ErrorCode.ERR_NoBaseClass, node);
2646Error(diagnostics, ErrorCode.ERR_BaseIllegal, node.Token);
2697Error(diagnostics, ErrorCode.ERR_ValConstraintNotSatisfied, node, nullableType, nullableType.TypeParameters.Single(), indexType);
2777Error(diagnostics, ErrorCode.ERR_ValConstraintNotSatisfied, node, nullableType, nullableType.TypeParameters.Single(), rangeType);
2804Error(diagnostics, ErrorCode.ERR_ValConstraintNotSatisfied, operand, nullableType, nullableType.TypeParameters.Single(), indexType);
2865diagnostics.Add(ErrorCode.ERR_ConvertToStaticClass, syntax.Location, targetType);
2871diagnostics.Add(ErrorCode.ERR_ValueCantBeNull, syntax.Location, targetType);
2882diagnostics.Add(ErrorCode.ERR_AmbigUDConv, syntax.Location, originalUserDefinedConversions[0], originalUserDefinedConversions[1], operand.Display, targetType);
2889diagnostics.Add(ErrorCode.ERR_NoExplicitConv, syntax.Location, distinguisher1.First, distinguisher1.Second);
2902diagnostics.Add(ErrorCode.ERR_NoExplicitConv, syntax.Location, MessageID.IDS_SK_METHOD.Localize(), targetType);
2924Error(diagnostics, ErrorCode.ERR_ConversionNotTupleCompatible, syntax, tuple.Arguments.Length, targetType);
2934Error(diagnostics, ErrorCode.ERR_StackAllocConversionNotPossible, syntax, stackAllocExpression.ElementType, targetType);
2950var errorCode = targetType.TypeKind switch
2952TypeKind.FunctionPointer => ErrorCode.ERR_MethFuncPtrMismatch,
2953TypeKind.Delegate => ErrorCode.ERR_CannotConvertAddressOfToDelegate,
2954_ => ErrorCode.ERR_AddressOfToNonFunctionPointer
2964diagnostics.Add(ErrorCode.ERR_NoExplicitConv, syntax.Location, distinguisher.First, distinguisher.Second);
3239diagnostics.Add(ErrorCode.ERR_ScopedDiscard, scopedType.ScopedKeyword.GetLocation());
3245diagnostics.Add(ErrorCode.ERR_OutVariableCannotBeByRef, refType.Location);
3289diagnostics.Add(ErrorCode.ERR_OutVariableCannotBeByRef, refType.Location);
3314diagnostics.Add(ErrorCode.ERR_ScopedRefAndRefStructOnly, typeSyntax.Location);
3334diagnostics.Add(ErrorCode.ERR_UnexpectedToken, scopedType.ScopedKeyword.GetLocation(), scopedType.ScopedKeyword.ValueText);
3340diagnostics.Add(ErrorCode.ERR_UnexpectedToken, refType.RefKeyword.GetLocation(), refType.RefKeyword.ValueText);
3460Error(diagnostics, ErrorCode.ERR_NamedArgumentSpecificationBeforeFixedArgument, argumentSyntax,
3779diagnostics.Add(ErrorCode.ERR_InterpolatedStringHandlerArgumentAttributeMalformed, unconvertedString.Syntax.Location, correspondingParameter, handlerType);
3888ErrorCode.ERR_InterpolatedStringHandlerArgumentOptionalNotSpecified,
3907ErrorCode.ERR_InterpolatedStringHandlerArgumentLocatedAfterInterpolatedString,
4008ErrorCode.WRN_BadArgRef,
4020ErrorCode.WRN_RefReadonlyNotVariable,
4031ErrorCode.WRN_ArgExpectedRefOrIn,
4039ErrorCode.WRN_ArgExpectedIn,
4145Error(diagnostics, ErrorCode.ERR_MissingArraySize, firstRankSpecifier);
4160Error(diagnostics, ErrorCode.ERR_InvalidArray, arg);
4186Error(diagnostics, ErrorCode.ERR_NegativeArraySize, dimension);
4216Error(diagnostics, ErrorCode.ERR_ImplicitlyTypedArrayNoBestType, node);
4223Error(diagnostics, ErrorCode.ERR_ArrayElementCantBeRefAny, node, bestType);
4243Error(diagnostics, ErrorCode.ERR_ImplicitlyTypedArrayNoBestType, node);
4318Error(diagnostics, ErrorCode.ERR_ArrayInitializerExpected, expression);
4421Error(diagnostics, ErrorCode.ERR_ArrayInitializerIncorrectLength, node, knownSizeOpt.Value);
4455ErrorCode errorCode,
4535Error(diagnostics, ErrorCode.ERR_ConstantExpected, size.Syntax);
4569Error(diagnostics, ErrorCode.ERR_BadIndexCount, nonNullSyntax, type.Rank);
4589Error(diagnostics, ErrorCode.ERR_BadStackAllocExpr, typeSyntax);
4616Error(diagnostics, ErrorCode.ERR_BadStackAllocExpr, typeSyntax);
4646Error(diagnostics, ErrorCode.ERR_NegativeStackAllocSize, countSyntax);
4652Error(diagnostics, ErrorCode.ERR_MissingArraySize, rankSpecifiers[0]);
4681Error(diagnostics, ErrorCode.ERR_StackallocInCatchFinally, node);
4772Error(diagnostics, ErrorCode.ERR_ConstantExpected, sizeOpt.Syntax);
4777Error(diagnostics, ErrorCode.ERR_ArrayInitializerIncorrectLength, node, constantSizeOpt.Value);
4961diagnostics.Add(ErrorCode.ERR_ObjectCallingBaseConstructor, constructor.GetFirstLocation(), containingType);
4972diagnostics.Add(ErrorCode.ERR_StructWithBaseConstructorCall, constructor.GetFirstLocation(), containingType);
5014diagnostics.Add(ErrorCode.ERR_NoDynamicPhantomOnBaseCtor, errorLocation);
5091diagnostics.Add(ErrorCode.ERR_RecursiveConstructorCall,
5141diagnostics.Add(ErrorCode.WRN_CapturedPrimaryConstructorParameterPassedToBase, syntax.Location, parameter);
5160diagnostics.Add(ErrorCode.ERR_ChainingToSetsRequiredMembersRequiresSetsRequiredMembers, errorLocation);
5207diagnostics.Add(ErrorCode.ERR_CopyConstructorMustInvokeBaseCopyConstructor, errorLocation);
5216diagnostics.Add(ErrorCode.ERR_CopyConstructorMustInvokeBaseCopyConstructor, errorLocation);
5291diagnostics.Add(ErrorCode.ERR_AnnotationDisallowedInObjectCreation, node.Location);
5314diagnostics.Add(ErrorCode.ERR_UnsafeTypeInObjectCreation, node.Location, type));
5324diagnostics.Add(ErrorCode.ERR_InvalidObjectCreation, node.Type.Location));
5340diagnostics.Add(ErrorCode.ERR_InsufficientStack, syntax.Location);
5384Error(diagnostics, ErrorCode.ERR_BadSpreadInCatchFilter, syntax);
5465diagnostics.Add(ErrorCode.ERR_CollectionArgumentsDynamicBinding, arg.Syntax);
5492diagnostics.Add(ErrorCode.ERR_CollectionArgumentsMustBeFirst, withElementSyntax.WithKeyword);
5524diagnostics.Add(ErrorCode.ERR_BadCtorArgCount, node.Location, type, 0);
5537diagnostics.Add(ErrorCode.ERR_MethodNameExpected, loc);
5543Error(diagnostics, ErrorCode.ERR_ObjectOrCollectionInitializerWithDelegateCreation, node);
5613diagnostics.Add(ErrorCode.ERR_MethodNameExpected, argument.Syntax.Location);
5648diagnostics.Add(ErrorCode.ERR_MethDelegateMismatch, node.Location,
5674diagnostics.Add(ErrorCode.ERR_MethodNameExpected, argument.Syntax.Location);
5695diagnostics.Add(ErrorCode.ERR_InstantiatingStaticClass, node.Location, type);
5700diagnostics.Add(ErrorCode.ERR_NewWithTupleTypeSyntax, node.Type.GetLocation());
5733diagnostics.Add(ErrorCode.ERR_InstantiatingStaticClass, node.Location, type);
5915Error(diagnostics, ErrorCode.ERR_InvalidInitializerElementInitializer, memberInitializer);
5941Error(diagnostics, ErrorCode.ERR_InvalidInitializerElementInitializer, memberInitializer);
6079Error(diagnostics, ErrorCode.ERR_ReadonlyValueTypeInObjectInitializer, leftSyntax, fieldSymbol, fieldSymbol.Type);
6120diagnostics.Add(ErrorCode.ERR_InterpolatedStringsReferencingInstanceCannotBeInObjectInitializers, argument.Syntax.Location);
6201Error(diagnostics, ErrorCode.ERR_ValueTypePropertyInObjectInitializer, memberNameSyntax, propertySymbol, propertySymbol.Type);
6236Error(diagnostics, ErrorCode.ERR_NoSuchMember, memberNameSyntax, implicitReceiver.Type, member);
6245Error(diagnostics, ErrorCode.ERR_MemberCannotBeInitialized, memberNameSyntax, member);
6275Error(diagnostics, ErrorCode.ERR_MemberAlreadyInitialized, memberNameSyntax, memberName);
6352diagnostics.Add(ErrorCode.ERR_RequiredMembersMustBeAssignedValue, initializerExpression.Syntax.Location, requiredMember);
6378diagnostics.Add(ErrorCode.ERR_RequiredMemberMustBeSet, location, member);
6413Error(diagnostics, ErrorCode.ERR_CollectionInitRequiresIEnumerable, initializerSyntax, initializerType);
6501Error(diagnostics, ErrorCode.ERR_InvalidInitializerElementInitializer, elementInitializer);
6546Error(diagnostics, ErrorCode.ERR_EmptyElementInitializer, elementInitializer);
6700if (!((ErrorCode)diagnostic.Code is ErrorCode.WRN_ArgExpectedRefOrIn or ErrorCode.WRN_ArgExpectedIn))
6841diagnostics.Add(ErrorCode.ERR_NoNewAbstract, node.Location, type);
7106diagnostics.Add(ErrorCode.ERR_NoNewAbstract, node.Location, type);
7120Error(diagnostics, ErrorCode.ERR_MissingCoClass, node, coClassType, interfaceType);
7138Error(diagnostics, ErrorCode.ERR_BadCoClassSig, node, coClassType, interfaceType);
7164Error(diagnostics, ErrorCode.ERR_NoExplicitConv, node, distinguisher.First, distinguisher.Second);
7218diagnostics.Add(ErrorCode.ERR_BadCtorArgCount, typeNode.Location, interfaceType, analyzedArguments.Arguments.Count);
7247diagnostics.Add(ErrorCode.ERR_NoNewTyvar, node.Location, typeParameter);
7262diagnostics.Add(ErrorCode.ERR_NewTyvarWithArgs, node.Location, typeParameter);
7425diagnostics.Add(ErrorCode.ERR_BadAccess, errorLocation, result.ValidResult.Member);
7450if ((ErrorCode)diagnostic.Code == ErrorCode.ERR_RequiredMembersInvalid)
7536diagnostics.Add(new CSDiagnosticInfo(ErrorCode.WRN_LowercaseEllSuffix), Location.Create(node.SyntaxTree, new TextSpan(token.Span.End - 1, 1)));
7540diagnostics.Add(new CSDiagnosticInfo(ErrorCode.WRN_LowercaseEllSuffix), Location.Create(node.SyntaxTree, new TextSpan(token.Span.End - 2, 1)));
7820Error(diagnostics, ErrorCode.ERR_TypeArgsNotAllowed, right, right.Identifier.Text, SymbolKind.Property.Localize());
7832Error(diagnostics, ErrorCode.ERR_BadTypeArgument, typeArgumentsSyntax[i], typeArgument.Type);
7840Error(diagnostics, ErrorCode.ERR_OmittedTypeArgument, node);
7904diagnostics.Add(ErrorCode.ERR_BadUnaryOp, operatorToken.GetLocation(), SyntaxFacts.GetText(operatorToken.Kind()), leftType);
7911DiagnosticInfo diagnosticInfo = new CSDiagnosticInfo(ErrorCode.ERR_BadOpOnNullOrDefaultOrNew, SyntaxFacts.GetText(operatorToken.Kind()), boundLeft.Display);
7921diagnostics.Add(ErrorCode.ERR_BadUnaryOp, node.Location, SyntaxFacts.GetText(operatorToken.Kind()), msgId.Localize());
7997Error(diagnostics, ErrorCode.ERR_BadUnaryOp, node, operatorToken.Text, boundLeft.Display);
8126Error(diagnostics, ErrorCode.ERR_LookupInTypeVariable, boundLeft.Syntax, leftType);
8170Error(diagnostics, ErrorCode.WRN_DotOnDefault, node, boundLeft.Type);
8198Error(diagnostics, ErrorCode.ERR_BadSKunknown, methodGroup.NameSyntax, method, MessageID.IDS_SK_METHOD.Localize());
8374Error(diagnostics, ErrorCode.ERR_OmittedTypeArgument, node);
8434Error(diagnostics, ErrorCode.ERR_NoSuchMember, name, boundLeft.Display, plainName);
8441Error(diagnostics, ErrorCode.ERR_NoSuchMember, name, boundLeft.Type, plainName);
8445Error(diagnostics, ErrorCode.ERR_NoSuchMemberOrExtensionNeedUsing, name, boundLeft.Type, plainName, "System");
8449Error(diagnostics, ErrorCode.ERR_NoAwaitOnAsyncEnumerable, name, boundLeft.Type, plainName);
8453Error(diagnostics, ErrorCode.ERR_NoSuchMemberOrExtension, name, boundLeft.Type, plainName);
8689Error(diagnostics, ErrorCode.ERR_BadTypeReference, right, plainName, symbol);
9101errorInfo = new CSDiagnosticInfo(ErrorCode.ERR_ExtensionResolutionFailed, left.Type, memberName);
9133Error(diagnostics, ErrorCode.ERR_BindToBogus, node, fieldSymbol);
9173Error(diagnostics, isFixedStatementExpression ? ErrorCode.ERR_FixedNotNeeded : ErrorCode.ERR_FixedBufferNotFixed, node);
9218diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportRefFields, node.Location);
9339Error(diagnostics, ErrorCode.ERR_BadAbstractStaticMemberAccess, node);
9345Error(diagnostics, ErrorCode.ERR_RuntimeDoesNotSupportStaticAbstractMembersInInterfaces, node);
9353Error(diagnostics, ErrorCode.ERR_BadNonVirtualInterfaceMemberAccessOnAllowsRefLike, node);
9359Error(diagnostics, ErrorCode.ERR_RuntimeDoesNotSupportDefaultInterfaceImplementation, node);
9369Error(diagnostics, ErrorCode.ERR_RuntimeDoesNotSupportProtectedAccessForInterfaceMember, node);
9454ErrorCode errorCode = IsObjectInitializerMemberTarget(node) ?
9455ErrorCode.ERR_StaticMemberInObjectInitializer :
9456ErrorCode.ERR_ObjectProhibited;
9471Error(diagnostics, ErrorCode.ERR_ObjectRequired, node, symbol);
9703{ Code: (int)ErrorCode.ERR_BadIndexLHS, Arguments: [TypeSymbol type] } && type.Equals(expr.Type, TypeCompareKind.ConsiderEverything))
9706Error(diagnosticsForBindElementAccessCore, ErrorCode.ERR_InlineArrayBadIndex, node.Location);
9758Error(diagnostics, ErrorCode.ERR_NamedArgumentForInlineArray, node);
9795Error(diagnostics, ErrorCode.ERR_RefReturnLvalueExpected, location);
9834Error(diagnostics, ErrorCode.ERR_RuntimeDoesNotSupportInlineArrayTypes, node);
9861Error(diagnostics, ErrorCode.ERR_InlineArrayIndexOutOfRange, location);
9914diagnostics.Add(errorOpt ?? new CSDiagnosticInfo(ErrorCode.ERR_BadIndexLHS, expr.Display), node.Location);
9971Error(diagnostics, ErrorCode.ERR_NamedArgumentForArray, node);
9986Error(diagnostics, ErrorCode.ERR_BadIndexCount, node, rank);
10008Error(diagnostics, ErrorCode.WRN_NegativeArrayIndex, index.Syntax);
10180Error(diagnostics, ErrorCode.ERR_NamedArgumentForArray, node);
10195Error(diagnostics, ErrorCode.ERR_PtrIndexSingle, node);
10203Error(diagnostics, ErrorCode.ERR_VoidError, expr.Syntax);
10221Error(diagnostics, ErrorCode.ERR_BadArgExtraRef, analyzedArguments.Argument(i).Syntax, i + 1, refKind.ToArgumentDisplayString());
10309mustHaveAllOptionalParameters ? ErrorCode.ERR_IndexedPropertyMustHaveAllOptionalParams : ErrorCode.ERR_IndexedPropertyRequiresParams,
10354Error(diagnostics, ErrorCode.ERR_NoDynamicPhantomOnBaseIndexer, syntax);
10602? ErrorCode.ERR_ImplicitIndexIndexerWithName
10603: ErrorCode.ERR_ImplicitRangeIndexerWithName,
11610diagnostics.Add(new CSDiagnosticInfo(ErrorCode.ERR_InvalidDelegateType, possibleDelegateType), getErrorLocation());
11623if (diagnosticInfo.Code == (int)ErrorCode.ERR_InvalidDelegateType)
11625diagnostics.Add(new CSDiagnostic(new CSDiagnosticInfo(ErrorCode.ERR_InvalidDelegateType, possibleDelegateType), getErrorLocation()));
11748DiagnosticInfo diagnosticInfo = new CSDiagnosticInfo(ErrorCode.ERR_CannotBeMadeNullable, access.Display);
11827DiagnosticInfo diagnosticInfo = new CSDiagnosticInfo(ErrorCode.ERR_BadUnaryOp, SyntaxFacts.GetText(operatorToken.Kind()), msgId.Localize());
11837Error(diagnostics, ErrorCode.ERR_BadUnaryOp, operatorToken.GetLocation(), operatorToken.Text, receiver.Display);
11844Error(diagnostics, ErrorCode.ERR_BadUnaryOp, operatorToken.GetLocation(), operatorToken.Text, receiverType);
11851Error(diagnostics, ErrorCode.ERR_BadUnaryOp, operatorToken.GetLocation(), operatorToken.Text, receiverType);
Binder\Binder_InterpolatedString.cs (18)
35ErrorCode.ERR_AltInterpolatedVerbatimStringsNotAvailable,
83ErrorCode.ERR_NewlinesAreNotAllowedInsideANonVerbatimInterpolatedString,
112diagnostics.Add(ErrorCode.WRN_AlignmentMagnitude, alignment.Syntax.Location, alignmentConstant.Int32Value, magnitudeLimit);
117diagnostics.Add(ErrorCode.ERR_ConstantExpected, interpolation.AlignmentClause.Value.Location);
128diagnostics.Add(ErrorCode.ERR_EmptyFormatSpecifier, interpolation.FormatClause.Location);
133diagnostics.Add(ErrorCode.ERR_TrailingWhitespaceInFormatSpecifier, interpolation.FormatClause.Location);
763var nonOutConstructorHasArityError = nonOutConstructorDiagnostics.DiagnosticBag?.AsEnumerableWithoutResolution().Any(d => (ErrorCode)d.Code == ErrorCode.ERR_BadCtorArgCount) ?? false;
764var outConstructorHasArityError = outConstructorDiagnostics.DiagnosticBag?.AsEnumerableWithoutResolution().Any(d => (ErrorCode)d.Code == ErrorCode.ERR_BadCtorArgCount) ?? false;
804diagnostics.Add(ErrorCode.ERR_InterpolatedStringHandlerCreationCannotUseDynamic, syntax.Location, interpolatedStringHandlerType.Name);
836if (!((ErrorCode)diagnostic.Code is ErrorCode.WRN_BadArgRef
837or ErrorCode.WRN_RefReadonlyNotVariable
838or ErrorCode.WRN_ArgExpectedRefOrIn
839or ErrorCode.WRN_ArgExpectedIn))
989diagnostics.Add(ErrorCode.ERR_InterpolatedStringHandlerMethodReturnMalformed, part.Syntax.Location, method);
999diagnostics.Add(ErrorCode.ERR_InterpolatedStringHandlerMethodReturnInconsistent, part.Syntax.Location, method, expected);
Binder\Binder_Invocation.cs (37)
172ErrorCode.ERR_BadSKknown,
272diagnostics.Add(ErrorCode.ERR_UnsupportedFeatureInRuntimeAsync, node, ContainingMemberOrLambda);
298Error(diagnostics, ErrorCode.ERR_CantUseVoidInArglist, argument.Syntax);
313Error(diagnostics, ErrorCode.ERR_CantUseInOrOutInArglist, argument.Syntax);
387diagnostics.Add(new CSDiagnosticInfo(ErrorCode.ERR_MethodNameExpected), expression.Location);
422Error(diagnostics, ErrorCode.ERR_NoDynamicPhantomOnBase, node, methodGroup.Name);
526Error(diagnostics, ErrorCode.ERR_NamedArgumentSpecificationBeforeFixedArgumentInDynamicInvocation, arguments.Arguments[i].Syntax);
566Error(diagnostics, ErrorCode.ERR_CannotDynamicInvokeOnExpression, receiver.Syntax, receiver.Type);
576Error(diagnostics, ErrorCode.ERR_InDynamicMethodArg, arguments[argIndex].Syntax);
589Error(diagnostics, ErrorCode.ERR_BadDynamicQuery, node);
597Error(diagnostics, ErrorCode.ERR_BadDynamicMethodArgLambda, arg.Syntax);
603Error(diagnostics, ErrorCode.ERR_BadDynamicMethodArgMemgrp, arg.Syntax);
611Error(diagnostics, ErrorCode.ERR_BadDynamicMethodArg, arg.Syntax, "__arglist");
620Error(diagnostics, ErrorCode.ERR_BadDynamicMethodArg, arg.Syntax, arg.Type);
693ErrorCode.ERR_DynamicDispatchToParamsCollection,
858Error(diagnostics, ErrorCode.ERR_BadArgTypeDynamicExtension, syntax, methodGroup.ReceiverOpt.Type, methodGroup.Name);
891Error(diagnostics, ErrorCode.WRN_DynamicDispatchToConditionalMethod, syntax, methodGroup.Name);
949ErrorCode.ERR_DynamicLocalFunctionTypeParameter,
964ErrorCode.ERR_DynamicLocalFunctionParamsParameter,
1093Error(diagnostics, ErrorCode.ERR_NoImplicitConv, call.ReceiverOpt.Syntax, distinguisher.First, distinguisher.Second);
1099Error(diagnostics, ErrorCode.ERR_NoImplicitConv, call.ReceiverOpt.Syntax, distinguisher.First, distinguisher.Second);
1113Error(diagnostics, ErrorCode.ERR_BadDynamicMethodArg, dynInvoke.Expression.Syntax, dynInvoke.Expression.Type);
1343ErrorCode code = hasBaseReceiver
1344? ErrorCode.ERR_CallingBaseFinalizeDeprecated
1345: ErrorCode.ERR_CallingFinalizeDeprecated;
1449diagnostics.Add(ErrorCode.ERR_BadAttributeParamDefaultArgument, syntax.Location, parameter.Name);
1678diagnostics.Add(ErrorCode.ERR_BadAttributeArgument, syntax.Location);
1742diagnostics.Add(ErrorCode.ERR_NotNullRefDefaultParameter, syntax.Location, parameter.Name, parameterType);
1920Error(diagnostics, ErrorCode.WRN_ImplicitCopyInReadOnlyMember, receiver.Syntax, method, ThisParameterSymbol.SymbolName);
1974diagnostics.Add(ErrorCode.WRN_PrimaryConstructorParameterIsShadowedAndNotPassedToBase, identifier.Location, shadowedParameter);
2390diagnostics.Add(ErrorCode.ERR_NameofMethodGroupWithTypeParameters, argument.Location);
2413diagnostics.Add(ErrorCode.ERR_NameofExtensionMember, boundArgument.Syntax);
2448diagnostics.Add(ErrorCode.ERR_NameofExtensionMethod, methodGroup.Syntax.Location);
2495diagnostics.Add(ErrorCode.ERR_AliasQualifiedNameNotAnExpression, argument.Location);
2509var code = top ? ErrorCode.ERR_ExpressionHasNoName : ErrorCode.ERR_SubexpressionNotInNameof;
Binder\Binder_Lambda.cs (10)
166Error(diagnostics, ErrorCode.ERR_DefaultValueNotAllowed, p.Default.EqualsToken);
176Error(diagnostics, ErrorCode.ERR_IllegalVarArgs, p);
285Error(diagnostics, syntax.Kind() == SyntaxKind.SimpleLambdaExpression ? ErrorCode.ERR_AttributesRequireParenthesizedLambdaExpression : ErrorCode.ERR_AttributesNotAllowed, attributeList);
300diagnostics.Add(ErrorCode.ERR_LambdaExplicitReturnTypeVar, syntax.Location);
312diagnostics.Add(ErrorCode.ERR_MethodReturnCantBeRefAny, syntax.Location, type);
342diagnostics.Add(ErrorCode.ERR_InconsistentLambdaParameterUsage,
350diagnostics.Add(ErrorCode.ERR_ImplicitlyTypedDefaultParameter,
412diagnostics.Add(ErrorCode.ERR_DuplicateParamName, lambda.ParameterLocation(i), name);
455diagnostics.Add(ErrorCode.INF_TooManyBoundLambdas, GetAnonymousFunctionLocation(pair.Key), truncatedToHundreds);
Binder\Binder_Lookup.cs (20)
350CSDiagnosticInfo diagInfo = new CSDiagnosticInfo(ErrorCode.ERR_ConflictingAliasAndDefinition, name, existingDefinition.GetKindText());
728diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_AbstractAttributeClass, symbol) : null;
759diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_NotAnAttributeClass, symbol) : null;
885var diagInfo = new CSDiagnosticInfo(ErrorCode.ERR_CircularBase, type, other);
1477diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_CantCallSpecialMethod, unwrappedSymbol) : null;
1492diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_BadAccess, new[] { unwrappedSymbol }, unwrappedSymbols, additionalLocations: ImmutableArray<Location>.Empty) : null;
1508diagInfo = new CSDiagnosticInfo(ErrorCode.ERR_BadProtectedAccess, unwrappedSymbol, accessThroughType, this.ContainingType);
1512diagInfo = new CSDiagnosticInfo(ErrorCode.ERR_FriendRefNotEqualToThis, unwrappedSymbol.ContainingAssembly.Identity.ToString(), AssemblyIdentity.PublicKeyToString(this.Compilation.Assembly.PublicKey));
1516diagInfo = new CSDiagnosticInfo(ErrorCode.ERR_BadAccess, new[] { unwrappedSymbol }, ImmutableArray.Create<Symbol>(unwrappedSymbol), additionalLocations: ImmutableArray<Location>.Empty);
1528diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_ObjectRequired, unwrappedSymbol) : null;
1533diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_ObjectProhibited, unwrappedSymbol) : null;
1538diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_BadSKunknown, unwrappedSymbol, unwrappedSymbol.GetKindText()) : null;
1543diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_LabelNotFound, unwrappedSymbol.Name) : null;
1618new CSDiagnosticInfo(ErrorCode.ERR_BindToBogusProp2, symbol, method1, method2) :
1619new CSDiagnosticInfo(ErrorCode.ERR_BindToBogusProp1, symbol, method1 ?? method2);
1830diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_HasNoTypeVars, namedType, MessageID.IDS_SK_TYPE.Localize()) : null;
1835diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_BadArity, namedType, MessageID.IDS_SK_TYPE.Localize(), namedType.Arity) : null;
1851diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_HasNoTypeVars, method, MessageID.IDS_SK_METHOD.Localize()) : null;
1856diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_BadArity, method, MessageID.IDS_SK_METHOD.Localize(), method.Arity) : null;
1866diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_TypeArgsNotAllowed, symbol, symbol.Kind.Localize()) : null;
Binder\Binder_NameConflicts.cs (5)
74diagnostics.Add(ErrorCode.ERR_LocalSameNameAsExtensionTypeParameter, GetLocation(p), name);
79diagnostics.Add(ErrorCode.ERR_TypeParameterSameNameAsExtensionParameter, tp.GetFirstLocationOrNone(), name);
84diagnostics.Add(ErrorCode.ERR_LocalSameNameAsTypeParam, GetLocation(p), name);
92diagnostics.Add(ErrorCode.ERR_LocalSameNameAsExtensionParameter, GetLocation(p), name);
97diagnostics.Add(ErrorCode.ERR_DuplicateParamName, GetLocation(p), name);
Binder\Binder_Operators.cs (83)
101Error(diagnostics, ErrorCode.ERR_BadBinaryOps, node, node.OperatorToken.Text, left.Display, right.Display);
306Error(diagnostics, ErrorCode.ERR_VoidError, node);
727Error(diagnostics, ErrorCode.ERR_MissingPredefinedMember, node, delegateType, SourceEventSymbol.GetAccessorName(eventSymbol.Name, isAddition));
737Error(diagnostics, ErrorCode.ERR_BadAccess, node, method);
817Error(diagnostics, ErrorCode.ERR_BadBinaryOps, node, node.OperatorToken.Text, left.Display, right.Display);
832Error(diagnostics, ErrorCode.ERR_InvalidDynamicCondition, node.Left, left.Type, kind == BinaryOperatorKind.LogicalAnd ? "false" : "true");
910Error(diagnostics, ErrorCode.ERR_PossibleBadNegCast, node);
917Error(diagnostics, ErrorCode.ERR_PossibleBadNegCast, node);
1045Error(diagnostics, ErrorCode.WRN_DoNotCompareFunctionPointers, node.OperatorToken);
1053Error(diagnostics, ErrorCode.ERR_VoidError, node);
1098if ((ErrorCode)code is not ErrorCode.WRN_ConvertingLock)
1297ErrorCode errorCode = resultKind == LookupResultKind.Ambiguous ?
1298ErrorCode.ERR_AmbigUnaryOp : // Operator '{0}' is ambiguous on an operand of type '{1}'
1299ErrorCode.ERR_BadUnaryOp; // Operator '{0}' cannot be applied to operand of type '{1}'
1338Error(diagnostics, ErrorCode.ERR_BadOpOnNullOrDefaultOrNew, node, operatorToken.Text, "default");
1341Error(diagnostics, ErrorCode.ERR_AmbigBinaryOpsOnDefault, node, operatorToken.Text, left.Display, right.Display);
1345Error(diagnostics, ErrorCode.ERR_AmbigBinaryOpsOnUnconstrainedDefault, node, operatorToken.Text, right.Type);
1349Error(diagnostics, ErrorCode.ERR_AmbigBinaryOpsOnUnconstrainedDefault, node, operatorToken.Text, left.Type);
1352Error(diagnostics, ErrorCode.ERR_BadOpOnNullOrDefaultOrNew, node, operatorToken.Text, left.Display);
1355Error(diagnostics, ErrorCode.ERR_BadOpOnNullOrDefaultOrNew, node, operatorToken.Text, right.Display);
1359ErrorCode errorCode;
1364errorCode = ErrorCode.ERR_AmbigBinaryOps; // Operator '{0}' is ambiguous on operands of type '{1}' and '{2}'
1368errorCode = ErrorCode.ERR_BadBinaryReadOnlySpanConcatenation; // Operator '{0}' cannot be applied to operands of type '{1}' and '{2}' that are not UTF-8 byte representations
1372errorCode = ErrorCode.ERR_BadBinaryOps; // Operator '{0}' cannot be applied to operands of type '{1}' and '{2}'
1774Error(diagnostics, ErrorCode.ERR_BadBoolOp, syntax, signature.Method);
1813Error(diagnostics, ErrorCode.ERR_MustHaveOpTF, syntax, signature.Method, t);
1935Error(diagnostics, ErrorCode.ERR_BadBoolOp, syntax, signature.Method);
1965Error(diagnostics, ErrorCode.ERR_MustHaveOpTF, syntax, signature.Method, extensionContainingType);
2796Error(diagnostics, ErrorCode.ERR_IntDivByZero, syntax);
2820Error(diagnostics, ErrorCode.ERR_ConstantStringTooLong, right.Syntax);
2835Error(diagnostics, ErrorCode.ERR_DecConstError, syntax);
2852Error(diagnostics, ErrorCode.WRN_CompileTimeCheckedOverflow, syntax, resultTypeSymbol);
2871Error(diagnostics, ErrorCode.ERR_CheckedOverflow, syntax);
3420Error(diagnostics, ErrorCode.ERR_VoidError, node);
4002Error(diagnostics, ErrorCode.ERR_BadAbstractStaticMemberAccess, node);
4012Error(diagnostics, ErrorCode.ERR_RuntimeDoesNotSupportStaticAbstractMembersInInterfaces, node);
4064Error(diagnostics, ErrorCode.ERR_IllegalSuppression, expr.Syntax);
4070Error(diagnostics, ErrorCode.ERR_DuplicateNullSuppression, expr.Syntax);
4111Error(diagnostics, ErrorCode.ERR_PtrExpected, node);
4125Error(diagnostics, ErrorCode.ERR_VoidError, node);
4171Error(diagnostics, isFixedStatementAddressOfExpression ? ErrorCode.ERR_FixedNotNeeded : ErrorCode.ERR_FixedNeeded, node);
4341Error(diagnostics, ErrorCode.ERR_IllegalSuppression, expr.Syntax);
4355Error(diagnostics, ErrorCode.ERR_BadOpOnNullOrDefaultOrNew, node, operatorText, operand.Display);
4511Error(diagnostics, ErrorCode.WRN_CompileTimeCheckedOverflow, syntax, resultTypeSymbol);
4530Error(diagnostics, ErrorCode.ERR_CheckedOverflow, syntax);
4793Error(diagnostics, ErrorCode.ERR_LambdaInIsAs, node);
4805Error(diagnostics, ErrorCode.ERR_BadUnaryOp, node, SyntaxFacts.GetText(SyntaxKind.IsKeyword), operand.Display);
4829Error(diagnostics, ErrorCode.WRN_StaticInAsOrIs, node, targetType);
4835Error(diagnostics, ErrorCode.ERR_PointerInAsOrIs, node);
4867isPatternDiagnostics.Add(ErrorCode.ERR_BadPatternExpression, node.Left.Location, operand.Display);
4903diagnostics.Add(ErrorCode.ERR_ConstantValueOfTypeExpected, node.Right.Location, unionMatchingInputType.StrippedType());
4944Error(diagnostics, ErrorCode.ERR_IsNullableType, node.Right, targetType);
4956diagnostics.Add(ErrorCode.WRN_IsTypeNamedUnderscore, node.Right.Location, typeExpression.AliasOpt ?? (Symbol)targetType);
4985Error(diagnostics, ErrorCode.WRN_IsAlwaysFalse, node, targetType);
4994Error(diagnostics, ErrorCode.WRN_IsDynamicIsConfusing,
5045Error(diagnostics, ErrorCode.ERR_BadBinaryOps, syntax, "is", operandType, targetType);
5051ErrorCode errorCode = constantValue == ConstantValue.True ? ErrorCode.WRN_IsAlwaysTrue : ErrorCode.WRN_IsAlwaysFalse;
5393Error(diagnostics, ErrorCode.ERR_LambdaInIsAs, node);
5402Error(diagnostics, ErrorCode.ERR_TypelessTupleInAs, node);
5416Error(diagnostics, ErrorCode.ERR_AsNullableType, node.Right, targetType);
5426Error(diagnostics, ErrorCode.ERR_AsWithTypeVar, node, targetType);
5430Error(diagnostics, ErrorCode.ERR_PointerInAsOrIs, node);
5434Error(diagnostics, ErrorCode.ERR_AsMustHaveReferenceType, node, targetType);
5451Error(diagnostics, ErrorCode.WRN_StaticInAsOrIs, node, targetType);
5485Error(diagnostics, ErrorCode.ERR_PointerInAsOrIs, node);
5572Error(diagnostics, ErrorCode.ERR_NoExplicitBuiltinConv, node, distinguisher.First, distinguisher.Second);
5605Error(diagnostics, ErrorCode.ERR_BadBinaryOps, node, "as", operandType, targetType);
5610Error(diagnostics, ErrorCode.WRN_AlwaysNull, node, targetType);
5652Error(diagnostics, ErrorCode.ERR_BadBinaryOps, node, SyntaxFacts.GetText(node.OperatorToken.Kind()), leftOperand.Display, rightOperand.Display);
5678Error(diagnostics, ErrorCode.ERR_BadOpOnNullOrDefaultOrNew, node, node.OperatorToken.Text, "default");
5908Error(diagnostics, ErrorCode.ERR_BadBinaryOps, node, SyntaxFacts.GetText(node.OperatorToken.Kind()), leftOperand.Display, rightOperand.Display);
5958diagnostics.Add(ErrorCode.ERR_RefConditionalNeedsTwoRefs, whenFalse.GetFirstToken().GetLocation());
5963diagnostics.Add(ErrorCode.ERR_RefConditionalNeedsTwoRefs, whenTrue.GetFirstToken().GetLocation());
5987ErrorCode noCommonTypeError = hadMultipleCandidates ? ErrorCode.ERR_AmbigQM : ErrorCode.ERR_InvalidQM;
6029diagnostics.Add(ErrorCode.ERR_RefConditionalDifferentTypes, falseExpr.Syntax.Location, trueType);
6067diagnostics.Add(_inUnsafeRegion ? ErrorCode.WRN_MismatchedRefEscapeInTernary : ErrorCode.ERR_MismatchedRefEscapeInTernary, node.Location);
Binder\Binder_Patterns.cs (49)
73useSiteInfo.AddDiagnosticInfo(new CSDiagnosticInfo(ErrorCode.ERR_MissingPredefinedMember, memberProvider.OriginalDefinition, WellKnownMemberNames.ValuePropertyName));
454diagnostics.Add(ErrorCode.ERR_BadPatternExpression, node.Expression.Location, expression.Display);
493diagnostics.Add(ErrorCode.ERR_IsPatternImpossible, node.Location, expression.Type);
511diagnostics.Add(ErrorCode.WRN_IsPatternAlways, node.Location, expression.Type);
532diagnostics.Add(ErrorCode.WRN_GivenExpressionNeverMatchesPattern, node.Location);
540diagnostics.Add(ErrorCode.WRN_GivenExpressionAlwaysMatchesConstant, node.Location);
548diagnostics.Add(ErrorCode.WRN_GivenExpressionAlwaysMatchesPattern, node.Location);
654diagnostics.Add(ErrorCode.ERR_MisplacedSlicePattern, node.Location);
764Error(diagnostics, ErrorCode.ERR_UnsupportedTypeForListPattern, node, inputType);
838Error(diagnostics, ErrorCode.ERR_ListPatternRequiresLength, node, inputType);
904diagnostics.Add(ErrorCode.ERR_CannotMatchOnINumberBase, node.Location, inputType);
918diagnostics.Add(ErrorCode.ERR_ConstantValueOfTypeExpected, innerExpression.Location, unionMatchingInputType.StrippedType());
969diagnostics.Add(ErrorCode.ERR_DefaultPattern, e.Location);
976diagnostics.Add(ErrorCode.ERR_IllegalSuppression, e.Location);
1062diagnostics.Add(ErrorCode.ERR_ConstantValueOfTypeExpected, patternExpression.Location, strippedInputType);
1066diagnostics.Add(ErrorCode.ERR_ConstantExpected, patternExpression.Location);
1112diagnostics.Add(ErrorCode.ERR_ValueCantBeNull, expression.Syntax.Location, inputType);
1122diagnostics.Add(ErrorCode.ERR_PatternWrongType, expression.Syntax.Location, inputType, expression.Display);
1133diagnostics.Add(ErrorCode.ERR_ConstantPatternVsOpenType,
1172diagnostics.Add(ErrorCode.ERR_PatternSpanCharCannotBeStringNull, convertedExpression.Syntax.Location, inputType);
1242diagnostics.Add(ErrorCode.ERR_PatternWrongType, expression.Syntax.Location, caseType, expression.Display);
1252diagnostics.Add(ErrorCode.ERR_UnionMatchingWrongPattern, expression.Syntax.Location, unionType);
1283diagnostics.Add(ErrorCode.ERR_PointerTypeInPatternMatching, typeSyntax.Location);
1289Error(diagnostics, ErrorCode.ERR_PatternNullableType, typeSyntax, patternType.GetNullableUnderlyingType());
1294Error(diagnostics, ErrorCode.ERR_PatternNullableType, typeSyntax, patternType);
1299Error(diagnostics, ErrorCode.ERR_VarDeclIsStaticClass, typeSyntax, patternType);
1306Error(diagnostics, ErrorCode.ERR_PatternDynamicType, typeSyntax);
1349Error(diagnostics, ErrorCode.ERR_PatternWrongGenericTypeInVersion, typeSyntax,
1359Error(diagnostics, ErrorCode.ERR_PatternWrongType, typeSyntax, inputType, patternType);
1488diagnostics.Add(ErrorCode.ERR_DesignatorBeneathPatternCombinator, identifier.GetLocation());
1580diagnostics.Add(ErrorCode.ERR_PointerTypeInPatternMatching, node.Location);
1705diagnostics.Add(ErrorCode.ERR_DeconstructParameterNameMismatch, subPattern.NameColon.Name.Location, name, parameterName);
1713diagnostics.Add(ErrorCode.ERR_IdentifierExpected, subPattern.ExpressionColon.Expression.Location);
1744diagnostics.Add(ErrorCode.ERR_ArgumentNameInITuplePattern, subpatternSyntax.NameColon.Location);
1748diagnostics.Add(ErrorCode.ERR_IdentifierExpected, subpatternSyntax.ExpressionColon.Expression.Location);
1773diagnostics.Add(ErrorCode.ERR_WrongNumberOfSubpatterns, node.Location, declType, elementTypesWithAnnotations.Length, node.Subpatterns.Count);
1793diagnostics.Add(ErrorCode.ERR_IdentifierExpected, subpatternSyntax.ExpressionColon.Expression.Location);
1926diagnostics.Add(ErrorCode.ERR_TupleElementNameMismatch, node.Location, name, $"Item{tupleIndex + 1}");
1944diagnostics.Add(ErrorCode.ERR_PointerTypeInPatternMatching, node.Location);
1953diagnostics.Add(ErrorCode.ERR_VarMayNotBindToType, node.VarKeyword.GetLocation(), foundSymbol.ToDisplayString());
2077diagnostics.Add(ErrorCode.ERR_WrongNumberOfSubpatterns, tupleDesignation.Location,
2140diagnostics.Add(ErrorCode.ERR_PropertyPatternNameMissing, pattern.Location, pattern);
2199Error(diagnostics, ErrorCode.ERR_InvalidNameInSubpattern, expr);
2259Error(diagnostics, ErrorCode.ERR_NoSuchMember, memberName, implicitReceiver.Type, name);
2268Error(diagnostics, ErrorCode.ERR_PropertyLacksGet, memberName, name);
2323diagnostics.Add(ErrorCode.ERR_InvalidExprTerm, node.OperatorToken.GetLocation(), node.OperatorToken.Text);
2334diagnostics.Add(ErrorCode.ERR_RelationalPatternWithNaN, node.Expression.Location);
2343diagnostics.Add(ErrorCode.ERR_UnsupportedTypeForRelationalPattern, node.Location, type.ToDisplayString());
2358diagnostics.Add(ErrorCode.ERR_CannotMatchOnINumberBase, node.Location, inputType);
Binder\Binder_Query.cs (11)
35diagnostics.Add(ErrorCode.ERR_BadDynamicQuery, fromClause.Expression.Location);
386diagnostics.Add(ErrorCode.ERR_BadDynamicQuery, join.InExpression.Location);
740Error(d, ErrorCode.ERR_QueryRangeVariableAssignedBadValue, errorLocation, yExpression.Display);
745Error(d, ErrorCode.ERR_QueryRangeVariableAssignedBadValue, errorLocation, yExpression.Type!);
944diagnostics.Add(ErrorCode.ERR_NullNotValid, node.Location);
948diagnostics.Add(ErrorCode.ERR_DefaultLiteralNotValid, node.Location);
952diagnostics.Add(ErrorCode.ERR_ImplicitObjectCreationNotValid, node.Location);
956diagnostics.Add(ErrorCode.ERR_BadSKunknown, ultimateReceiver.Syntax.Location, ((BoundNamespaceExpression)ultimateReceiver).NamespaceSymbol, MessageID.IDS_SK_NAMESPACE.Localize());
961diagnostics.Add(ErrorCode.ERR_QueryNoProvider, node.Location, MessageID.IDS_AnonMethod.Localize(), methodName);
971Error(diagnostics, ErrorCode.ERR_BadSKunknown, ultimateReceiver.Syntax, ultimateReceiver.Type, MessageID.IDS_SK_TYVAR.Localize());
983diagnostics.Add(ErrorCode.ERR_QueryNoProvider, node.Location, "void", methodName);
Binder\Binder_Statements.cs (133)
55Error(diagnostics, ErrorCode.ERR_AttributesNotAllowed, attributeList);
176Error(diagnostics, ErrorCode.ERR_IllegalUnsafe, node.UnsafeKeyword);
256Error(diagnostics, ErrorCode.ERR_BadYieldInFinally, node.YieldKeyword);
260Error(diagnostics, ErrorCode.ERR_BadYieldInTryOfCatch, node.YieldKeyword);
264Error(diagnostics, ErrorCode.ERR_BadYieldInCatch, node.YieldKeyword);
268Error(diagnostics, ErrorCode.ERR_YieldNotAllowedInScript, node.YieldKeyword);
272Error(diagnostics, ErrorCode.ERR_BadYieldInUnsafe, node.YieldKeyword);
283Error(diagnostics, ErrorCode.ERR_BadYieldInFinally, node.YieldKeyword);
287Error(diagnostics, ErrorCode.ERR_YieldNotAllowedInScript, node.YieldKeyword);
327diagnostics.Add(ErrorCode.ERR_BadEmbeddedStmt, node.GetLocation());
345diagnostics.Add(ErrorCode.ERR_BadEmbeddedStmt, node.GetLocation());
380diagnostics.Add(ErrorCode.WRN_PossibleMistakenNullStatement, node.GetLocation());
415diagnostics.Add(ErrorCode.ERR_BadExceptionType, exprSyntax.Location);
446diagnostics.Add(ErrorCode.ERR_BadEmptyThrow, node.ThrowKeyword.GetLocation());
457diagnostics.Add(ErrorCode.ERR_BadEmptyThrowInFinally, node.ThrowKeyword.GetLocation());
486Error(diagnostics, ErrorCode.ERR_DuplicateLabel, node.Identifier, node.Identifier.ValueText);
498Error(diagnostics, ErrorCode.ERR_LabelShadow, node.Identifier, node.Identifier.ValueText);
534Error(diagnostics, ErrorCode.ERR_InvalidGotoCase, node);
584diagnostics.Add(ErrorCode.ERR_LocalFunctionMissingBody, localSymbol.GetFirstLocation(), localSymbol);
590diagnostics.Add(ErrorCode.ERR_ExternHasBody, localSymbol.GetFirstLocation(), localSymbol);
630blockDiagnostics.Add(ErrorCode.ERR_ReturnExpected, localSymbol.GetFirstLocation(), localSymbol);
659Error(diagnostics, ErrorCode.ERR_IllegalStatement, syntax);
684Error(diagnostics, ErrorCode.WRN_UnobservedAwaitableExpression, expression.Syntax);
814Error(diagnostics, ErrorCode.ERR_ImplicitlyTypedVariableCannotBeConst, declarationNode);
838Error(diagnostics, ErrorCode.ERR_ImplicitlyTypedVariableMultipleDeclarator, declarationNode);
854Error(diagnostics, ErrorCode.ERR_VarDeclIsStaticClass, typeSyntax, declType.Type);
859Error(diagnostics, ErrorCode.ERR_BadConstType, typeSyntax, declType.Type);
884Error(diagnostics, ErrorCode.ERR_ImplicitlyTypedVariableWithNoInitializer, errorSyntax);
893diagnostics, ErrorCode.ERR_ImplicitlyTypedVariableAssignedArrayInitializer, errorSyntax);
908Error(diagnostics, ErrorCode.ERR_ImplicitlyTypedVariableAssignedBadValue, errorSyntax, expression.Display);
929Error(diagnostics, ErrorCode.ERR_InitializeByValueVariableWithReference, node);
941Error(diagnostics, ErrorCode.ERR_ByReferenceVariableMustBeInitialized, node);
946Error(diagnostics, ErrorCode.ERR_InitializeByReferenceVariableWithValue, node);
1034Error(localDiagnostics, ErrorCode.ERR_ImplicitlyTypedVariableAssignedBadValue, declarator, declTypeOpt.Type);
1043Error(localDiagnostics, ErrorCode.ERR_VarDeclIsStaticClass, typeSyntax, initializerType);
1085Error(localDiagnostics, ErrorCode.ERR_ImplicitlyTypedLocalCannotBeFixed, declarator);
1094Error(localDiagnostics, declTypeOpt.Type.IsFunctionPointer() ? ErrorCode.ERR_CannotUseFunctionPointerAsFixedLocal : ErrorCode.ERR_BadFixedInitType, declarator);
1108localDiagnostics.Add(ErrorCode.ERR_ScopedRefAndRefStructOnly, typeSyntax.Location);
1124Error(localDiagnostics, ErrorCode.ERR_FixedMustInit, declarator);
1242Error(diagnostics, ErrorCode.ERR_ExprCannotBeFixed, initializerSyntax);
1310Error(diagnostics, ErrorCode.ERR_ExprCannotBeFixed, initializerSyntax);
1347additionalDiagnostics.Add(ErrorCode.WRN_PatternBadSignature, initializer.Syntax.Location, initializer.Type, "fixed", patternMethodSymbol);
1473diagnostics.Add(ErrorCode.ERR_VoidAssignment, op1.Syntax.Location);
1574var errorCode = (rightEscape, _inUnsafeRegion) switch
1576({ IsReturnOnly: true }, false) => ErrorCode.ERR_RefAssignReturnOnly,
1577({ IsReturnOnly: true }, true) => ErrorCode.WRN_RefAssignReturnOnly,
1578(_, false) => ErrorCode.ERR_RefAssignNarrower,
1579(_, true) => ErrorCode.WRN_RefAssignNarrower
1603var errorCode = _inUnsafeRegion ? ErrorCode.WRN_RefAssignValEscapeWider : ErrorCode.ERR_RefAssignValEscapeWider;
1794new CSDiagnosticInfo(ErrorCode.ERR_BadEventUsage, leastOverridden, leastOverridden.ContainingType) :
1795new CSDiagnosticInfo(ErrorCode.ERR_BadEventUsageNoField, leastOverridden);
1887result = BindUnexpectedArrayInitializer((InitializerExpressionSyntax)node, diagnostics, ErrorCode.ERR_ArrayInitToNonArrayType);
1912Error(diagnostics, ErrorCode.ERR_AttributesNotAllowed, node.AttributeLists[0]);
1995Error(diagnostics, ErrorCode.ERR_RefAssignmentMustHaveIdentityConversion, expression.Syntax, targetType);
2017ErrorCode.ERR_NoImplicitConv,
2090conversionError(diagnostics, ErrorCode.ERR_CannotInferDelegateType);
2098conversionError(diagnostics, ErrorCode.ERR_AnonMethToNonDel, id, targetType);
2105conversionError(diagnostics, ErrorCode.ERR_ExpressionTreeMustHaveDelegate, ((NamedTypeSymbol)targetType).TypeArgumentsWithAnnotationsNoUseSiteDiagnostics[0].Type);
2112conversionError(diagnostics, ErrorCode.ERR_AnonymousMethodToExpressionTree);
2118conversionError(diagnostics, ErrorCode.ERR_CantConvAnonMethReturnType, id, targetType);
2144conversionError(diagnostics, ErrorCode.ERR_CantConvAnonMethNoParams, targetType);
2156conversionError(diagnostics, ErrorCode.ERR_BadDelArgCount, delegateType, anonymousFunction.ParameterCount);
2197Error(diagnostics, ErrorCode.ERR_BadParamExtraRef, lambdaParameterLocation, i + 1, lambdaRefKind.ToParameterDisplayString());
2202Error(diagnostics, ErrorCode.ERR_BadParamRef, lambdaParameterLocation, i + 1, delegateRefKind.ToParameterDisplayString());
2233conversionError(diagnostics, ErrorCode.ERR_CantConvAnonMethParams, id, targetType);
2252Error(diagnostics, ErrorCode.ERR_BadParamType, lambdaParameterLocation,
2270diagnostics.Add(ErrorCode.ERR_InternalError, syntax.Location);
2272void conversionError(BindingDiagnosticBag diagnostics, ErrorCode code, params object[] args)
2293Error(diagnostics, ErrorCode.ERR_LiteralDoubleCast, syntax, (targetType.SpecialType == SpecialType.System_Single) ? "F" : "M", targetType);
2304Error(diagnostics, ErrorCode.ERR_ConstOutOfRange, syntax, sourceConstantValueOpt.Value, targetType);
2309Error(diagnostics, ErrorCode.ERR_NoImplicitConvCast, syntax, distinguisher.First, distinguisher.Second);
2319Error(diagnostics, ErrorCode.ERR_AmbigUDConv, syntax, originalUserDefinedConversions[0], originalUserDefinedConversions[1], sourceType, targetType);
2326Error(diagnostics, ErrorCode.ERR_NoImplicitConv, syntax, distinguisher.First, distinguisher.Second);
2335Error(diagnostics, ErrorCode.ERR_NoImplicitConv, syntax, sourceType, targetType);
2340Error(diagnostics, ErrorCode.ERR_NoImplicitConv, syntax, distinguisher.First, distinguisher.Second);
2362Error(diagnostics, ErrorCode.ERR_NoImplicitConv, syntax, operand.Display, targetType);
2394Error(diagnostics, ErrorCode.ERR_ConversionNotTupleCompatible, syntax, tuple.Arguments.Length, targetType);
2417Error(diagnostics, ErrorCode.ERR_TypeVarCantBeNull, syntax, targetType);
2422Error(diagnostics, ErrorCode.ERR_ValueCantBeNull, syntax, targetType);
2431Error(diagnostics, ErrorCode.ERR_StackAllocConversionNotPossible, syntax, stackAllocExpression.ElementType, targetType);
2454Error(diagnostics, ErrorCode.ERR_InvalidAddrOp, ((BoundAddressOfOperator)operand).Operand.Syntax);
2510ErrorCode errorCode;
2515errorCode = ErrorCode.ERR_MethFuncPtrMismatch;
2518Error(diagnostics, ErrorCode.ERR_MissingAddressOf, location);
2521errorCode = ErrorCode.ERR_CannotConvertAddressOfToDelegate;
2524errorCode = ErrorCode.ERR_MethDelegateMismatch;
2530errorCode = ErrorCode.ERR_AddressOfToNonFunctionPointer;
2536Error(diagnostics, ErrorCode.ERR_CannotInferDelegateType, location);
2541errorCode = ErrorCode.ERR_MethGrpToNonDel;
2734Error(diagnostics, ErrorCode.WRN_IncorrectBooleanAssg, assignment.Syntax);
2883Error(diagnostics, ErrorCode.ERR_ImplicitlyTypedVariableMultipleDeclarator, nodeOpt);
2953Error(diagnostics, ErrorCode.ERR_NoBreakOrCont, node);
2964Error(diagnostics, ErrorCode.ERR_NoBreakOrCont, node);
3062diagnostics.Add(ErrorCode.ERR_ReturnInIterator, syntax.ReturnKeyword.GetLocation());
3070diagnostics.Add(ErrorCode.ERR_MustNotHaveRefReturn, syntax.ReturnKeyword.GetLocation());
3075diagnostics.Add(ErrorCode.ERR_ReturnInIterator, syntax.ReturnKeyword.GetLocation());
3081var errorCode = refKind != RefKind.None
3082? ErrorCode.ERR_MustNotHaveRefReturn
3083: ErrorCode.ERR_MustHaveRefReturn;
3113Error(diagnostics, ErrorCode.ERR_RetNoObjectRequiredLambda, syntax.ReturnKeyword);
3117Error(diagnostics, ErrorCode.ERR_TaskRetNoObjectRequiredLambda, syntax.ReturnKeyword, retType);
3133Error(diagnostics, ErrorCode.ERR_RetNoObjectRequired, syntax.ReturnKeyword, container);
3137Error(diagnostics, ErrorCode.ERR_TaskRetNoObjectRequired, syntax.ReturnKeyword, container, retType);
3153Error(diagnostics, ErrorCode.ERR_RetObjectRequired, syntax.ReturnKeyword, requiredType);
3167Error(diagnostics, ErrorCode.ERR_CantReturnVoid, expressionSyntax);
3216Error(diagnostics, ErrorCode.ERR_RefReturnMustHaveIdentityConversion, argument.Syntax, returnType);
3233Error(diagnostics, ErrorCode.ERR_BadAsyncReturnExpression, argument.Syntax, returnType, argument.Type);
3290diagnostics.Add(ErrorCode.ERR_TooManyCatches, catchSyntax.CatchKeyword.GetLocation());
3328Error(diagnostics, ErrorCode.ERR_BadExceptionType, declaration.Type);
3370Error(diagnostics, ErrorCode.ERR_UnreachableCatch, declaration.Type, previousType);
3385Error(diagnostics, ErrorCode.WRN_UnreachableGeneralCatch, node.CatchKeyword);
3425var errorCode = boundFilter.ConstantValueOpt.BooleanValue
3426? ErrorCode.WRN_FilterIsConstantTrue
3428? ErrorCode.WRN_FilterIsConstantFalseRedundantTryCatch
3429: ErrorCode.WRN_FilterIsConstantFalse;
3452Error(diagnostics, ErrorCode.ERR_CantConvAsyncAnonFuncReturns,
3459Error(diagnostics, ErrorCode.ERR_CantConvAnonMethReturns,
3523Error(diagnostics, ErrorCode.ERR_MustNotHaveRefReturn, syntax);
3531var errorCode = refKind != RefKind.None
3532? ErrorCode.ERR_MustNotHaveRefReturn
3533: ErrorCode.ERR_MustHaveRefReturn;
3549Error(diagnostics, ErrorCode.ERR_IllegalStatement, syntax);
3565Error(diagnostics, ErrorCode.ERR_ReturnInIterator, syntax);
3799Error(diagnostics, ErrorCode.ERR_UnexpectedOrMissingConstructorInitializerInRecord, initializer?.ThisOrBaseKeyword ?? constructor.Identifier);
3804Error(diagnostics, ErrorCode.ERR_UnionConstructorCallsDefaultConstructor, initializer?.ThisOrBaseKeyword ?? constructor.Identifier);
3816Error(diagnostics, ErrorCode.ERR_RecordStructConstructorCallsDefaultConstructor, initializer.ThisOrBaseKeyword);
3820Error(diagnostics, ErrorCode.ERR_UnionConstructorCallsDefaultConstructor, initializer.ThisOrBaseKeyword);
4010diagnostics.Add(ErrorCode.ERR_BadCtorArgCount, diagnosticsLocation, baseType, /*desired param count*/ 0);
4024diagnostics.Add(ErrorCode.ERR_BadAccess, diagnosticsLocation, baseConstructor);
4068diagnostics.Add(ErrorCode.ERR_NoCopyConstructorInBaseType, diagnosticsLocation, baseType);
Binder\Binder_Symbols.cs (55)
344var diagnosticInfo = diagnostics.Add(ErrorCode.ERR_BadSKknown, syntax.Location, syntax, symbol.Symbol.GetKindText(), MessageID.IDS_SK_TYPE.Localize());
501diagnostics.Add(ErrorCode.ERR_BadRefInUsingAlias, refToken.GetLocation());
505diagnostics.Add(ErrorCode.ERR_UnexpectedToken, refToken.GetLocation(), refToken.ToString());
519diagnostics.Add(ErrorCode.ERR_UnexpectedToken, scopedToken.GetLocation(), scopedToken.ToString());
596return TypeWithAnnotations.Create(new ExtendedErrorTypeSymbol(left, LookupResultKind.NotATypeOrNamespace, diagnostics.Add(ErrorCode.ERR_ColColWithTypeAlias, node.Alias.Location, node.Alias.Identifier.Text)));
618diagnostics.Add(ErrorCode.ERR_TypeExpected, syntax.GetLocation());
632return new CSDiagnosticInfo(ErrorCode.ERR_NullableUnconstrainedTypeParameter, new CSharpRequiredLanguageVersion(requiredVersion));
650Error(diagnostics, ErrorCode.ERR_ArrayOfStaticClass, node.ElementType, type.Type);
661Error(diagnostics, ErrorCode.ERR_ArrayElementCantBeRefAny, node.ElementType, type.Type);
678Error(diagnostics, ErrorCode.ERR_ArraySizeInDeclaration, rankSpecifier);
765var info = new CSDiagnosticInfo(ErrorCode.ERR_TupleElementNamesAttributeMissing,
805Error(diagnostics, ErrorCode.ERR_TupleReservedElementNameAnyPosition, syntax, name);
810Error(diagnostics, ErrorCode.ERR_TupleReservedElementName, syntax, name, reserved);
815Error(diagnostics, ErrorCode.ERR_TupleDuplicateElementName, syntax);
874new CSDiagnosticInfo(ErrorCode.ERR_SingleTypeNameNotFound, identifierValueText)));
1062var info = new CSDiagnosticInfo(ErrorCode.ERR_DynamicAttributeMissing, AttributeDescription.DynamicAttribute.FullName);
1234diagnostics.Add(ErrorCode.ERR_UnexpectedUnboundGenericName, node.Location);
1342var diagnosticInfo = new CSDiagnosticInfo(ErrorCode.ERR_LookupInTypeVariable, qualifierOpt);
1422Error(diagnostics, ErrorCode.ERR_BadArity, typeSyntax, type, MessageID.IDS_SK_TYPE.Localize(), typeArgumentsSyntax.Count);
1454Error(diagnostics, ErrorCode.ERR_BadArity, syntax, plainName, MessageID.IDS_MethodGroup.Localize(), typeArgumentsSyntax.Count);
1512Error(diagnostics, ErrorCode.ERR_AmbiguousPrimaryConstructorParameterAsColorColorReceiver, receiver.Syntax, parameter.Name, parameter.Type, parameter);
1531Error(diagnostics, ErrorCode.ERR_NoSuchMemberOrExtension, right, receiver.Type, plainName);
1760diagnostics.Add(ErrorCode.ERR_MissingPredefinedMember, syntax.Location, descriptor.DeclaringTypeMetadataName, descriptor.Name);
1951useSiteInfo = new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_MissingPredefinedMember, memberDescriptor.DeclaringTypeMetadataName, memberDescriptor.Name));
2076diagnostics.Add(ErrorCode.WRN_SameFullNameThisNsAgg, where.Location, originalSymbols,
2087diagnostics.Add(ErrorCode.WRN_SameFullNameThisAggNs, where.Location, originalSymbols,
2098diagnostics.Add(ErrorCode.WRN_SameFullNameThisAggAgg, where.Location, originalSymbols,
2153info = new CSDiagnosticInfo(ErrorCode.ERR_AmbigContext, originalSymbols,
2164info = new CSDiagnosticInfo(ErrorCode.ERR_SameFullNameAggAgg, originalSymbols,
2189info = new CSDiagnosticInfo(ErrorCode.ERR_SameFullNameNsAgg, originalSymbols,
2204info = new CSDiagnosticInfo(ErrorCode.ERR_SameFullNameNsAgg, originalSymbols,
2246info = new CSDiagnosticInfo(ErrorCode.ERR_SameFullNameThisAggThisNs, originalSymbols,
2253info = new CSDiagnosticInfo(ErrorCode.ERR_AmbigMember, originalSymbols,
2267info = new CSDiagnosticInfo(ErrorCode.ERR_AmbigMember, originalSymbols,
2293info = new CSDiagnosticInfo(ErrorCode.ERR_AmbiguousAttribute, originalSymbols,
2299info = new CSDiagnosticInfo(ErrorCode.ERR_AmbigContext, originalSymbols,
2309info = new CSDiagnosticInfo(ErrorCode.ERR_AmbigMember, originalSymbols,
2338var errorInfo = new CSDiagnosticInfo(ErrorCode.ERR_SystemVoid);
2369if (errorInfo != null && errorInfo.Code == (int)ErrorCode.ERR_CircularBase)
2657return diagnostics.Add(ErrorCode.ERR_DottedTypeNameNotFoundInAgg, location, whereText, qualifierOpt);
2669? diagnostics.Add(ErrorCode.ERR_GlobalSingleTypeNameNotFound, location, whereText)
2670: diagnostics.Add(ErrorCode.ERR_GlobalSingleTypeNameNotFoundFwd, location, whereText, forwardedToAssembly);
2684? diagnostics.Add(ErrorCode.ERR_DottedTypeNameNotFoundInNS, location, whereText, container)
2685: diagnostics.Add(ErrorCode.ERR_DottedTypeNameNotFoundInNSFwd, location, whereText, container, forwardedToAssembly);
2692return diagnostics.Add(ErrorCode.ERR_AliasNotFound, location, whereText);
2697var code = (where.Parent is QueryClauseSyntax) ? ErrorCode.ERR_TypeVarNotFoundRangeVariable : ErrorCode.ERR_TypeVarNotFound;
2706? diagnostics.Add(ErrorCode.ERR_SingleTypeNameNotFoundFwd, location, whereText, forwardedToAssembly)
2707: diagnostics.Add(ErrorCode.ERR_DottedTypeNameNotFoundInNSFwd, location, whereText, qualifierOpt, forwardedToAssembly);
2710return diagnostics.Add(ErrorCode.ERR_SingleTypeNameNotFound, location, whereText);
2731if (diagInfo.Code == (int)ErrorCode.ERR_CycleInTypeForwarder)
2734diagnostics.Add(ErrorCode.ERR_CycleInTypeForwarder, location, metadataName.FullName, forwardedType.ContainingAssembly.Name);
2736else if (diagInfo.Code == (int)ErrorCode.ERR_TypeForwardedToMultipleAssemblies)
2850diagnostics?.Add(ErrorCode.WRN_ErrorOverride, getLocation(data), diagInfo, (int)diagInfo.Code);
Binder\Binder_TupleOperators.cs (3)
193Error(diagnostics, ErrorCode.ERR_BadBinaryOps, node, node.OperatorToken.Text, left.Display, right.Display);
232Error(diagnostics, ErrorCode.ERR_TupleSizesMismatchForBinOps, node, leftCardinality, rightCardinality);
328diagnostics.Add(ErrorCode.WRN_TupleBinopLiteralNameMismatch, location, complaintName);
Binder\Binder_Unsafe.cs (12)
114CallerUnsafeMode.Explicit => forConstructorConstraint ? ErrorCode.ERR_UnsafeConstructorConstraint : ErrorCode.ERR_UnsafeMemberOperation,
115CallerUnsafeMode.Implicit => ErrorCode.ERR_UnsafeMemberOperationCompat,
160ErrorCode? customErrorCode = null,
172ErrorCode? customErrorCode = null,
190ErrorCode? customErrorCode = null,
201ErrorCode? customErrorCode = null,
224ErrorCode? customErrorCode = null,
240ErrorCode? customErrorCode = null,
271? new CSDiagnosticInfo(ErrorCode.ERR_UnsafeNeeded)
272: new CSDiagnosticInfo(ErrorCode.ERR_SizeofUnsafe, sizeOfTypeOpt);
280return new CSDiagnosticInfo(customErrorCode ?? ErrorCode.ERR_UnsafeOperation, customArgs ?? []);
Binder\BindingDiagnosticBag.cs (5)
154internal CSDiagnosticInfo Add(ErrorCode code, Location location)
161internal CSDiagnosticInfo Add(ErrorCode code, SyntaxNode syntax, params object[] args)
164internal CSDiagnosticInfo Add(ErrorCode code, SyntaxToken syntax, params object[] args)
167internal CSDiagnosticInfo Add(ErrorCode code, Location location, params object[] args)
174internal CSDiagnosticInfo Add(ErrorCode code, Location location, ImmutableArray<Symbol> symbols, params object[] args)
Binder\ExecutableCodeBinder.cs (7)
118diagnostics.Add(ErrorCode.ERR_BadIteratorArgType, location);
123diagnostics.Add(ErrorCode.ERR_UnsafeIteratorArgType, parameter.GetFirstLocation());
131diagnostics.Add(ErrorCode.ERR_VarargsIterator, errorLocation);
148Error(diagnostics, ErrorCode.ERR_BadIteratorReturnRef, errorLocation, iterator);
152Error(diagnostics, ErrorCode.ERR_BadIteratorReturn, errorLocation, iterator, returnType);
157Error(diagnostics, ErrorCode.ERR_IteratorRefLikeElementType, errorLocation);
163diagnostics.Add(ErrorCode.ERR_IteratorMustBeAsync, errorLocation, iterator, returnType);
Binder\ForEachLoopBinder.cs (33)
248Error(diagnostics, ErrorCode.ERR_RefLvalueExpected, collectionExpr.Syntax);
254Error(diagnostics, ErrorCode.ERR_RefLvalueExpected, collectionExpr.Syntax);
268diagnostics.Add(ErrorCode.ERR_BadGetAsyncEnumerator, expr.Location, getEnumeratorMethod.ReturnTypeWithAnnotations, getEnumeratorMethod);
330diagnostics.Add(ErrorCode.ERR_ScopedRefAndRefStructOnly, typeSyntax.Location);
400Error(diagnostics, ErrorCode.ERR_MustDeclareForeachIteration, variables);
418Error(diagnostics, ErrorCode.ERR_MustDeclareForeachIteration, variables);
488Error(diagnostics, ErrorCode.ERR_RefAssignmentMustHaveIdentityConversion, collectionExpr.Syntax, iterationVariableType.Type);
500diagnostics.Add(ErrorCode.ERR_AmbigUDConv, foreachKeyword.GetLocation(), originalUserDefinedConversions[0], originalUserDefinedConversions[1], inferredType.Type, iterationVariableType);
505diagnostics.Add(ErrorCode.ERR_NoExplicitConv, foreachKeyword.GetLocation(), distinguisher.First, distinguisher.Second);
814ErrorCode errorCode = (wrongAsync, isAsync, isSpread) switch
816(true, true, _) => ErrorCode.ERR_AwaitForEachMissingMemberWrongAsync,
817(true, false, _) => ErrorCode.ERR_ForEachMissingMemberWrongAsync,
818(false, true, _) => ErrorCode.ERR_AwaitForEachMissingMember,
819(false, false, true) => ErrorCode.ERR_SpreadMissingMember,
820(false, false, false) => ErrorCode.ERR_ForEachMissingMember,
870diagnostics.Add(ErrorCode.ERR_InlineArrayForEachNotSupported, collectionExpr.Syntax.GetLocation(), collectionExpr.Type);
918diagnostics.Add(ErrorCode.ERR_InlineArrayForEachNotSupported, collectionExpr.Syntax.GetLocation(), collectionExpr.Type);
948diagnostics.Add(ErrorCode.ERR_NullNotValid, collectionExpr.Syntax.Location);
953diagnostics.Add(ErrorCode.ERR_AnonMethGrpInForEach, collectionSyntax.Location, collectionExpr.Display);
970diagnostics.Add(ErrorCode.ERR_BadDynamicAwaitForEach, collectionSyntax.Location);
994diagnostics.Add(ErrorCode.ERR_ForEachMissingMember, collectionSyntax.Location, unwrappedCollectionExprType, WellKnownMemberNames.GetEnumeratorMethodName);
1001diagnostics.Add(ErrorCode.ERR_AwaitForEachMissingMember, collectionSyntax.Location, unwrappedCollectionExprType, WellKnownMemberNames.GetAsyncEnumeratorMethodName);
1065diagnostics.Add(isAsync ? ErrorCode.ERR_BadGetAsyncEnumerator : ErrorCode.ERR_BadGetEnumerator, collectionSyntax.Location, getEnumeratorMethod.ReturnType, getEnumeratorMethod);
1081diagnostics.Add(isAsync ? ErrorCode.ERR_MultipleIAsyncEnumOfT : ErrorCode.ERR_MultipleIEnumOfT, errorLocationSyntax.Location, unwrappedCollectionExprType,
1116diagnostics.Add(ErrorCode.ERR_AwaitForEachMissingMember, collectionSyntax.Location, unwrappedCollectionExprType, WellKnownMemberNames.GetAsyncEnumeratorMethodName);
1266Error(diagnostics, ErrorCode.ERR_BadAllowByRefLikeEnumerator, expr.Syntax, enumeratorType);
1471diagnostics.Add(ErrorCode.WRN_PatternNotPublicOrNotInstance, collectionSyntax.Location, patternType, patternName.Localize(), result);
1507diagnostics.Add(ErrorCode.WRN_PatternIsAmbiguous, collectionSyntax.Location, patternType, MessageID.IDS_Collection.Localize(),
1605diagnostics.Add(ErrorCode.WRN_PatternIsAmbiguous, collectionSyntax.Location, collectionExpr.Type, MessageID.IDS_Collection.Localize(),
1764diagnostics.Add(ErrorCode.WRN_PatternBadSignature, collectionSyntax.Location, enumeratorType, MessageID.IDS_Collection.Localize(), patternMemberCandidate);
1942diagnostics.Add(ErrorCode.ERR_NoSuchMember, collectionSyntax.Location, patternType, memberName);
Binder\InMethodBinder.cs (6)
269diagnostics.Add(ErrorCode.ERR_LocalIllegallyOverrides, newLocation, name);
285diagnostics.Add(ErrorCode.ERR_QueryRangeVariableOverrides, newLocation, name);
298diagnostics.Add(ErrorCode.ERR_LocalSameNameAsExtensionTypeParameter, newLocation, name);
303diagnostics.Add(ErrorCode.ERR_LocalSameNameAsTypeParam, newLocation, name);
321diagnostics.Add(ErrorCode.ERR_QueryRangeVariableSameAsTypeParam, newLocation, name);
327diagnostics.Add(ErrorCode.ERR_InternalError, newLocation);
Binder\LockBinder.cs (5)
48Error(diagnostics, ErrorCode.ERR_LockNeedsReference, exprSyntax, expr.Display);
54Error(diagnostics, ErrorCode.ERR_LockNeedsReference, exprSyntax, exprType);
86Error(diagnostics, ErrorCode.ERR_MissingPredefinedMember, syntax, LockTypeFullName, WellKnownMemberNames.EnterScopeMethodName);
94Error(diagnostics, ErrorCode.ERR_MissingPredefinedMember, syntax, LockTypeFullName, WellKnownMemberNames.EnterScopeMethodName);
101Error(diagnostics, ErrorCode.ERR_MissingPredefinedMember, syntax, $"{LockTypeFullName}+{WellKnownMemberNames.LockScopeTypeName}", WellKnownMemberNames.DisposeMethodName);
Binder\RefSafetyAnalysis.cs (3)
1034Error(_diagnostics, ErrorCode.ERR_CallArgMixing, argument.Syntax, node.Constructor, parameter.Name);
1428private static void Error(BindingDiagnosticBag diagnostics, ErrorCode code, SyntaxNodeOrToken syntax, params object[] args)
1435private static void Error(BindingDiagnosticBag diagnostics, ErrorCode code, Location location, params object[] args)
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (51)
497diagnostics.Add(ErrorCode.ERR_FunctionPointersCannotBeCalledWithNamedArguments, badName);
538ErrorCode.ERR_ParamsCollectionMissingConstructor :
539ErrorCode.ERR_CollectionExpressionMissingConstructor,
545diagnostics.Add(ErrorCode.ERR_CollectionExpressionMissingAdd, location, receiver.Type);
611(ErrorCode)diagInfo.Code,
622ErrorCode.ERR_WrongFuncPtrCallingConvention,
656ErrorCode.ERR_BadAccess,
685diagnostics.Add(ErrorCode.ERR_QueryNoProvider, location, receiverOpt.Type, symbol.Name);
689diagnostics.Add(ErrorCode.ERR_InitializerAddHasWrongSignature, location, symbol);
693diagnostics.Add(ErrorCode.ERR_BadAwaitArg, location, receiverOpt.Type);
697diagnostics.Add(ErrorCode.ERR_FuncPtrMethMustBeStatic, location, symbol);
701ErrorCode errorCode =
704? ErrorCode.ERR_FieldInitRefNonstatic
705: ErrorCode.ERR_ObjectRequired
706: ErrorCode.ERR_ObjectProhibited;
725diagnostics.Add(delegateOrFunctionPointerType.IsFunctionPointer() ? ErrorCode.ERR_FuncPtrRefMismatch : ErrorCode.ERR_DelegateRefMismatch,
734diagnostics.Add(ErrorCode.ERR_BadRetType, location, method, method.ReturnType);
781ErrorCode.ERR_CantInferMethTypeArgs,
805ErrorCode.ERR_CantInferMethTypeArgs,
812ErrorCode.ERR_NoSuchMemberOrExtension,
839ErrorCode.ERR_NamedArgumentUsedInPositional,
859ErrorCode.ERR_BadNonTrailingNamedArgument,
872diagnostics.Add(new CSDiagnosticInfo(ErrorCode.ERR_DuplicateNamedArgument, name), location);
900ErrorCode code = (object)delegateTypeBeingInvoked != null ?
901ErrorCode.ERR_BadNamedArgumentForDelegateInvoke :
902ErrorCode.ERR_BadNamedArgument;
952ErrorCode.ERR_NoCorrespondingArgument,
978(ErrorCode code, object target) = (typeContainingConstructor, delegateTypeBeingInvoked, functionPointerMethodBeingInvoked, isWithElementValidation) switch
980(object t, _, _, _) => (ErrorCode.ERR_BadCtorArgCount, t),
981(_, object t, _, _) => (ErrorCode.ERR_BadDelArgCount, t),
982(_, _, object t, _) => (ErrorCode.ERR_BadFuncPointerArgCount, t),
983(_, _, _, true) => (ErrorCode.ERR_BadCollectionArgumentsArgCount, name),
984_ => (ErrorCode.ERR_BadArgCount, name)
1164diagnostics.Add(ErrorCode.ERR_InitializerAddHasParamModifiers, location, symbols, method);
1171diagnostics.Add(ErrorCode.ERR_CollectionExpressionMissingAdd, location, receiver.Type);
1176diagnostics.Add(ErrorCode.ERR_BadArgTypesForCollectionAdd, location, symbols, method);
1219ErrorCode.ERR_BadArgType,
1268diagnostics.Add(ErrorCode.ERR_MissingAddressOf, sourceLocation);
1285ErrorCode.ERR_BadArgType,
1304diagnostics.Add(ErrorCode.ERR_ExpectedInterpolatedString, sourceLocation);
1310ErrorCode.ERR_BadArgExtraRefLangVersion,
1321ErrorCode.ERR_BadArgExtraRef,
1331ErrorCode.ERR_BadArgRef,
1352ErrorCode.ERR_BadInstanceArgType,
1373diagnostics.Add(ErrorCode.ERR_ExpectedInterpolatedString, sourceLocation);
1388ErrorCode.ERR_BadArgType,
1399ErrorCode.ERR_BadArgType,
1449diagnostics.Add(ErrorCode.ERR_QueryMultipleProviders, location, receiver.Type, name);
1558return new DiagnosticInfoWithSymbols(isExtension ? ErrorCode.ERR_AmbigExtension : ErrorCode.ERR_AmbigCall, [distinguisher.First, distinguisher.Second], symbols);
CommandLine\CSharpCommandLineParser.cs (104)
156AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<text>", name.ToString());
211AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "/langversion:");
217AddDiagnostic(diagnostics, ErrorCode.ERR_LanguageVersionCannotHaveLeadingZeroes, value);
225AddDiagnostic(diagnostics, ErrorCode.ERR_BadCompatMode, value);
238AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsNumber, nameMemory.ToString());
244AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsNumber, nameMemory.ToString());
324AddDiagnostic(diagnostics, ErrorCode.ERR_StdInOptionProvidedButConsoleInputIsNotRedirected);
366AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<text>", arg);
379AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<text>", name);
386AddDiagnostic(diagnostics, ErrorCode.FTL_BadCodepage, value);
397AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<text>", name);
403AddDiagnostic(diagnostics, ErrorCode.FTL_BadChecksumAlgorithm, value);
434AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), name);
458AddDiagnostic(diagnostics, ErrorCode.ERR_BadNullableContextOption, value);
488AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<text>", name);
513AddDiagnostic(diagnostics, ErrorCode.ERR_MissingGuidForOption, "<text>", name);
520AddDiagnostic(diagnostics, ErrorCode.ERR_InvalidFormatForGuidForOption, value, name);
530AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<text>", arg);
549AddDiagnostic(diagnostics, ErrorCode.WRN_BadUILang, value);
564AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<path>", name);
576AddDiagnostic(diagnostics, ErrorCode.ERR_NoFileSpec, arg);
589AddDiagnostic(diagnostics, ErrorCode.ERR_NoFileSpec, arg);
615AddDiagnostic(diagnostics, ErrorCode.FTL_InvalidTarget);
630AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<text>", arg);
635AddDiagnostic(diagnostics, ErrorCode.ERR_InvalidAssemblyName, "<text>", arg);
648AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "modulename");
662AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<string>", arg);
679AddDiagnostic(diagnostics, ErrorCode.ERR_NoFileSpec, arg);
696AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), arg);
709AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), arg);
717AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "/doc:"); // Different argument.
729AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "/addmodule:");
733AddDiagnostic(diagnostics, ErrorCode.ERR_NoFileSpec, arg);
802AddDiagnostic(diagnostics, ErrorCode.ERR_NoFileSpec, arg);
819AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), name);
835AddDiagnostic(diagnostics, ErrorCode.ERR_BadDebugType, value);
930AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsNumber, name);
951AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsNumber, name);
978AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsNumber, name);
986AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsNumber, name);
990AddDiagnostic(diagnostics, ErrorCode.ERR_BadWarningLevel);
1055AddDiagnostic(diagnostics, ErrorCode.ERR_NoFileSpec, "keyfile");
1076AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "keycontainer");
1120AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsNumber, name);
1124AddDiagnostic(diagnostics, ErrorCode.ERR_BadBaseNumber, value);
1138AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "subsystemversion");
1150AddDiagnostic(diagnostics, ErrorCode.ERR_InvalidSubsystemVersion, value);
1159AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "touchedfiles");
1187AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<text>", name);
1221AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsNumber, name);
1225AddDiagnostic(diagnostics, ErrorCode.ERR_InvalidFileAlignment, value);
1229AddDiagnostic(diagnostics, ErrorCode.ERR_InvalidFileAlignment, value);
1241AddDiagnostic(diagnostics, ErrorCode.ERR_NoFileSpec, arg);
1294AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, ErrorLogOptionFormat, RemoveQuotesAndSlashes(arg));
1301AddDiagnostic(diagnostics, ErrorCode.ERR_BadSwitchValue, valueMemory.Value.ToString(), "/errorlog:", ErrorLogOptionFormat);
1310AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, ":<text>", RemoveQuotesAndSlashes(arg));
1322AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<text>", name);
1336AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<file list>", name);
1351AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, "<file list>", name);
1386AddDiagnostic(diagnostics, ErrorCode.ERR_StdInOptionProvidedButConsoleInputIsNotRedirected);
1403AddDiagnostic(diagnostics, ErrorCode.ERR_BadSwitch, arg);
1419AddDiagnostic(diagnostics, diagnosticOptions, ErrorCode.ERR_NoRefOutWhenRefOnly);
1424AddDiagnostic(diagnostics, diagnosticOptions, ErrorCode.ERR_NoNetModuleOutputWhenRefOutOrRefOnly);
1429AddDiagnostic(diagnostics, diagnosticOptions, ErrorCode.WRN_NoSources);
1446AddDiagnostic(diagnostics, ErrorCode.ERR_BadBaseNumber, string.Format("0x{0:X}", baseAddress));
1470AddDiagnostic(diagnostics, ErrorCode.ERR_NoOutputDirectory);
1485AddDiagnostic(diagnostics, ErrorCode.ERR_SourceLinkRequiresPdb);
1495AddDiagnostic(diagnostics, ErrorCode.ERR_CannotEmbedWithoutPdb);
1571diagnostics.Add(new CSDiagnostic(new CSDiagnosticInfo(ErrorCode.ERR_CompilationOptionNotAvailable,
1637AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_PathList.Localize(), switchName);
1646AddDiagnostic(diagnostics, ErrorCode.WRN_InvalidSearchPathDir, path, origin.Localize(), MessageID.IDS_DirectoryHasInvalidPath.Localize());
1650AddDiagnostic(diagnostics, ErrorCode.WRN_InvalidSearchPathDir, path, origin.Localize(), MessageID.IDS_DirectoryDoesNotExist.Localize());
1663AddDiagnostic(diagnostics, ErrorCode.ERR_NoFileSpec, arg);
1670AddDiagnostic(diagnostics, ErrorCode.ERR_NoFileSpec, arg);
1700AddDiagnostic(diagnostics, ErrorCode.ERR_OutputNeedsName);
1714AddDiagnostic(diagnostics, ErrorCode.FTL_InvalidInputFileName, outputFileName);
1725AddDiagnostic(diagnostics, ErrorCode.FTL_InvalidInputFileName, outputFileName);
1740AddDiagnostic(diagnostics, ErrorCode.ERR_AssemblyNameOnNonModule);
1794outputDiagnostics.Add(Diagnostic.Create(CSharp.MessageProvider.Instance, (int)ErrorCode.WRN_DefineIdentifierRequired, valueMemory.ToString()));
1826outputDiagnostics.Add(Diagnostic.Create(CSharp.MessageProvider.Instance, (int)ErrorCode.WRN_DefineIdentifierRequired, id));
1854AddDiagnostic(diagnostics, ErrorCode.ERR_BadPlatformType, value);
1882AddDiagnostic(diagnostics, ErrorCode.FTL_InvalidTarget);
1891AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Namespace1.Localize(), arg);
1905AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), arg);
1910AddDiagnostic(diagnostics, ErrorCode.ERR_NoFileSpec, arg);
1932AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), arg);
1939AddDiagnostic(diagnostics, ErrorCode.ERR_NoFileSpec, arg);
1964AddDiagnostic(diagnostics, ErrorCode.ERR_BadExternIdentifier, alias);
2000AddDiagnostic(diagnostics, ErrorCode.ERR_OneAliasPerReference);
2006AddDiagnostic(diagnostics, ErrorCode.ERR_AliasMissingFile, alias);
2018AddDiagnostic(diagnostics, ErrorCode.ERR_CantHaveWin32ResAndIcon);
2023AddDiagnostic(diagnostics, ErrorCode.ERR_CantHaveWin32ResAndManifest);
2029AddDiagnostic(diagnostics, ErrorCode.WRN_CantHaveManifestForModule);
2045AddDiagnostic(diagnostics, ErrorCode.ERR_InvalidInstrumentationKind, kind);
2073AddDiagnostic(diagnostics, ErrorCode.ERR_BadResourceVis, rawAccessibility ?? "");
2077AddDiagnostic(diagnostics, ErrorCode.ERR_NoFileSpec, argName);
2082AddDiagnostic(diagnostics, ErrorCode.FTL_InvalidInputFileName, filePath);
2114ids.Add(CSharp.MessageProvider.Instance.GetIdForErrorCode((int)ErrorCode.WRN_MissingNonNullTypesContextForAnnotation));
2115ids.Add(CSharp.MessageProvider.Instance.GetIdForErrorCode((int)ErrorCode.WRN_MissingNonNullTypesContextForAnnotationInGeneratedCode));
2121ErrorFacts.IsWarning((ErrorCode)number))
2163AddDiagnostic(diagnostics, ErrorCode.WRN_UnimplementedCommandLineSwitch, "/" + switchName);
2171private static void AddDiagnostic(IList<Diagnostic> diagnostics, ErrorCode errorCode)
2176private static void AddDiagnostic(IList<Diagnostic> diagnostics, ErrorCode errorCode, params object[] arguments)
2184private static void AddDiagnostic(IList<Diagnostic> diagnostics, Dictionary<string, ReportDiagnostic> warningOptions, ErrorCode errorCode, params object[] arguments)
CommandLine\CSharpCompiler.cs (8)
109diagnostics.Add(new DiagnosticInfo(MessageProvider, (int)ErrorCode.WRN_FileAlreadyIncluded,
143diagnostics.Add(new DiagnosticInfo(MessageProvider, (int)ErrorCode.ERR_CantReadConfigFile, appConfigPath, ex.Message));
364(int)ErrorCode.ERR_NoSourceFile,
388{ Code: (int)ErrorCode.ERR_BadAccess, Arguments: [Symbol s] } => s,
389{ Code: (int)ErrorCode.ERR_InaccessibleGetter, Arguments: [Symbol s] } => s,
390{ Code: (int)ErrorCode.ERR_InaccessibleSetter, Arguments: [Symbol s] } => s,
391{ Code: (int)ErrorCode.ERR_ImplicitImplementationOfInaccessibleInterfaceMember, Arguments: [_, Symbol s, _] } => s,
403new CSDiagnosticInfo(ErrorCode.ERR_SymbolDefinedInAssembly, symbol, symbol.ContainingAssembly),
Compilation\CSharpCompilation.cs (31)
613diagnostics.Add(ErrorCode.ERR_DebugEntryPointNotSourceMethodDefinition, Location.None);
1859ErrorCode.ERR_GlobalSingleTypeNameNotFound,
1961diagnostics.Add(ErrorCode.ERR_SimpleProgramNotAnExecutable, simpleProgramEntryPointSymbol.ReturnTypeSyntax.Location);
2013diagnostics.Add(ErrorCode.WRN_MainIgnored, NoLocation.Singleton, mainTypeName);
2020diagnostics.Add(ErrorCode.ERR_BadCompilationOptionValue, NoLocation.Singleton, nameof(CSharpCompilationOptions.MainTypeName), mainTypeName);
2027diagnostics.Add(ErrorCode.ERR_MainClassNotFound, NoLocation.Singleton, mainTypeName);
2034diagnostics.Add(ErrorCode.ERR_MainClassNotClass, mainTypeOrNamespace.GetFirstLocation(), mainTypeOrNamespace);
2055diagnostics.Add(ErrorCode.WRN_MainIgnored, main.GetFirstLocation(), main);
2083noMainFoundDiagnostics.Add(ErrorCode.WRN_InvalidMainSig, candidate.GetFirstLocation(), candidate);
2091noMainFoundDiagnostics.Add(ErrorCode.WRN_MainCantBeGeneric, candidate.GetFirstLocation(), candidate);
2114diagnostics.Add(ErrorCode.ERR_NonTaskMainCantBeAsync, candidate.GetFirstLocation());
2147ErrorCode.WRN_SyncAndAsyncEntryPoints,
2175if (diagnostic.Code == (int)ErrorCode.WRN_InvalidMainSig || diagnostic.Code == (int)ErrorCode.WRN_MainCantBeGeneric)
2189diagnostics.Add(ErrorCode.ERR_NoEntryPoint, NoLocation.Singleton);
2193diagnostics.Add(ErrorCode.ERR_NoMainInClass, mainType.GetFirstLocation(), mainType);
2204diagnostics.Add(ErrorCode.ERR_EntryPointCannotBeUnmanagedCallersOnly, viableEntryPoint.GetFirstLocation());
2212ErrorCode.ERR_MultipleEntryPoints,
2360=> code == (int)ErrorCode.ERR_NoTypeDef;
2769ErrorCode code = info.Kind == SyntaxKind.ExternAliasDirective
2770? ErrorCode.HDN_UnusedExternAlias
2771: ErrorCode.HDN_UnusedUsingDirective;
3097builder.Add(new CSDiagnostic(new CSDiagnosticInfo(ErrorCode.ERR_CompilationOptionNotAvailable,
3104builder.Add(new CSDiagnostic(new CSDiagnosticInfo(ErrorCode.ERR_CompilationOptionNotAvailable,
3655excludeDiagnostics.Add((int)ErrorCode.ERR_ConcreteMissingBody);
3675diagnostics.Add(ErrorCode.ERR_ModuleEmitFailure, NoLocation.Singleton, ((Cci.INamedEntity)moduleBeingBuilt).Name,
3826_diagnostics.Add(ErrorCode.ERR_FileTypeNonUniquePath, location, symbol, filePath);
3860diagnostics.Add(ErrorCode.ERR_DuplicateInterceptor, attributeLocation);
3950diagnostics.Add(new CSDiagnosticInfo(ErrorCode.ERR_BindToBogus, m), NoLocation.Singleton);
3994runtimeMDVersionDiagnostics.Add(ErrorCode.WRN_NoRuntimeMetadataVersion, NoLocation.Singleton);
4058diagnostics.Add(ErrorCode.WRN_ConflictingChecksum, new SourceLocation(checksumDirective), path);
Compiler\ClsComplianceChecker.cs (41)
132this.AddDiagnostic(ErrorCode.WRN_CLS_NotOnModules, warningLocation);
136this.AddDiagnostic(ErrorCode.WRN_CLS_NotOnModules2, warningLocation);
155this.AddDiagnostic(ErrorCode.WRN_CLS_ModuleMissingCLS, warningLocation);
260this.AddDiagnostic(ErrorCode.WRN_CLS_BadAttributeType, symbol.GetFirstLocation(), symbol);
335this.AddDiagnostic(ErrorCode.WRN_CLS_NoVarArgs, symbol.GetFirstLocation());
350this.AddDiagnostic(ErrorCode.ERR_AttributeNotOnAccessor, attributeLocation, attribute.AttributeClass.Name, attributeUsage.GetValidTargetsErrorArgument());
414this.AddDiagnostic(ErrorCode.WRN_CLS_VolatileField, symbol.GetFirstLocation(), symbol);
460this.AddDiagnostic(ErrorCode.WRN_CLS_MeaninglessOnPrivateType, symbol.GetFirstLocation(), symbol);
504this.AddDiagnostic(ErrorCode.WRN_CLS_BadInterfaceMember, symbol.GetFirstLocation(), symbol);
508this.AddDiagnostic(ErrorCode.WRN_CLS_NoAbstractMembers, symbol.GetFirstLocation(), symbol);
525this.AddDiagnostic(ErrorCode.WRN_CLS_BadInterface, symbol.GetFirstLocation(), symbol, interfaceType);
536this.AddDiagnostic(ErrorCode.WRN_CLS_BadBase, symbol.GetFirstLocation(), symbol, baseType);
549this.AddDiagnostic(ErrorCode.WRN_CLS_IllegalTrueInFalse, symbol.GetFirstLocation(), symbol, containingType);
566this.AddDiagnostic(ErrorCode.WRN_CLS_BadTypeVar, typeParameter.GetFirstLocation(), constraintType.Type);
580this.AddDiagnostic(ErrorCode.WRN_CLS_BadArgType, parameter.GetFirstLocation(), parameter.Type);
612this.AddDiagnostic(ErrorCode.WRN_CLS_ArrayArgumentToAttribute, warningLocation);
628this.AddDiagnostic(ErrorCode.WRN_CLS_ArrayArgumentToAttribute, warningLocation);
646this.AddDiagnostic(ErrorCode.WRN_CLS_ArrayArgumentToAttribute, warningLocation);
697this.AddDiagnostic(ErrorCode.WRN_CLS_MeaninglessOnParam, attributeLocation);
707this.AddDiagnostic(ErrorCode.WRN_CLS_MeaninglessOnReturn, attributeLocation);
715ErrorCode code;
720code = ErrorCode.WRN_CLS_BadFieldPropType;
724code = ErrorCode.WRN_CLS_BadFieldPropType;
728code = ErrorCode.WRN_CLS_BadFieldPropType;
732code = ErrorCode.WRN_CLS_BadReturnType;
792ErrorCode code = IsTrue(compliance)
793? ErrorCode.WRN_CLS_AssemblyNotCLS
794: ErrorCode.WRN_CLS_AssemblyNotCLS2;
896this.AddDiagnostic(ErrorCode.WRN_CLS_BadIdentifierCase, symbol.GetFirstLocation(), symbol);
909ErrorCode code;
921this.AddDiagnostic(ErrorCode.WRN_CLS_BadIdentifierCase, symbol.GetFirstLocation(), symbol);
956this.AddDiagnostic(ErrorCode.WRN_CLS_BadIdentifier, symbol.GetFirstLocation(), name);
1253private void AddDiagnostic(ErrorCode code, Location location)
1260private void AddDiagnostic(ErrorCode code, Location location, params object[] args)
1316private static bool TryGetCollisionErrorCode(Symbol x, Symbol y, out ErrorCode code)
1323code = ErrorCode.Void;
1410sawArrayOfArraysDifference ? ErrorCode.WRN_CLS_OverloadUnnamed :
1411sawArrayRankDifference ? ErrorCode.WRN_CLS_OverloadRefOut : // Lumping rank difference with refkind is odd, but matches dev11.
1412sawRefKindDifference ? ErrorCode.WRN_CLS_OverloadRefOut :
1413ErrorCode.Void;
1415return code != ErrorCode.Void;
Compiler\DocumentationCommentCompiler.cs (13)
111diagnostics.Add(ErrorCode.ERR_DocFileGen, Location.None, e.Message);
451_diagnostics.Add(ErrorCode.WRN_MissingXMLComment, location, symbol);
591_diagnostics.Add(ErrorCode.WRN_MissingParamTag, location, parameter.Name, symbol);
611_diagnostics.Add(ErrorCode.WRN_MissingTypeParamTag, location, typeParameter, symbol);
700_diagnostics.Add(ErrorCode.WRN_XMLParseError, location, GetDescription(e));
889if ((ErrorCode)diag.Code == ErrorCode.WRN_XMLParseError)
1311diagnostics.Add(ErrorCode.WRN_UnmatchedParamTag, identifier.Location, identifier);
1314diagnostics.Add(ErrorCode.WRN_UnmatchedParamRefTag, identifier.Location, identifier, memberSymbol);
1317diagnostics.Add(ErrorCode.WRN_UnmatchedTypeParamTag, identifier.Location, identifier);
1320diagnostics.Add(ErrorCode.WRN_UnmatchedTypeParamRefTag, identifier.Location, identifier, memberSymbol);
1341diagnostics.Add(ErrorCode.WRN_DuplicateParamTag, syntax.Location, identifier);
1351diagnostics.Add(ErrorCode.WRN_DuplicateTypeParamTag, syntax.Location, identifier);
Compiler\DocumentationCommentCompiler.IncludeElementExpander.cs (7)
283_diagnostics.Add(ErrorCode.WRN_FailedInclude, location, filePathValue, xpathValue, new LocalizableErrorArgument(MessageID.IDS_OperationCausedStackOverflow));
304includeDiagnostics.Add(ErrorCode.WRN_InvalidInclude, location, subMessage);
315includeDiagnostics.Add(ErrorCode.WRN_FailedInclude, location, filePathValue, xpathValue, new CodeAnalysisResourcesLocalizableErrorArgument(nameof(CodeAnalysisResources.XmlReferencesNotSupported)));
325includeDiagnostics.Add(ErrorCode.WRN_FailedInclude, location, filePathValue, xpathValue, new CodeAnalysisResourcesLocalizableErrorArgument(nameof(CodeAnalysisResources.FileNotFound)));
346includeDiagnostics.Add(ErrorCode.WRN_FailedInclude, location, filePathValue, xpathValue, e.Message);
358includeDiagnostics.Add(ErrorCode.WRN_FailedInclude, location, filePathValue, xpathValue, errorMessage);
405includeDiagnostics.Add(ErrorCode.WRN_XMLParseIncludeError, errorLocation, GetDescription(e)); //NOTE: location is in included file.
CSharpCompilationOptions.cs (11)
701builder.Add(Diagnostic.Create(MessageProvider.Instance, (int)ErrorCode.ERR_NoMainOnDLL));
706builder.Add(Diagnostic.Create(MessageProvider.Instance, (int)ErrorCode.ERR_BadCompilationOptionValue, nameof(MainTypeName), MainTypeName));
712builder.Add(Diagnostic.Create(MessageProvider.Instance, (int)ErrorCode.ERR_BadPlatformType, Platform.ToString()));
717MetadataHelpers.CheckAssemblyOrModuleName(ModuleName, MessageProvider.Instance, (int)ErrorCode.ERR_BadModuleName, builder);
722builder.Add(Diagnostic.Create(MessageProvider.Instance, (int)ErrorCode.ERR_BadCompilationOptionValue, nameof(OutputKind), OutputKind.ToString()));
727builder.Add(Diagnostic.Create(MessageProvider.Instance, (int)ErrorCode.ERR_BadCompilationOptionValue, nameof(OptimizationLevel), OptimizationLevel.ToString()));
732builder.Add(Diagnostic.Create(MessageProvider.Instance, (int)ErrorCode.ERR_BadCompilationOptionValue, nameof(ScriptClassName), ScriptClassName ?? "null"));
737builder.Add(Diagnostic.Create(MessageProvider.Instance, (int)ErrorCode.ERR_BadCompilationOptionValue, nameof(WarningLevel), WarningLevel));
742builder.Add(Diagnostic.Create(MessageProvider.Instance, (int)ErrorCode.ERR_BadCompilationOptionValue, nameof(Usings), Usings.Where(u => !u.IsValidClrNamespaceName()).First() ?? "null"));
747builder.Add(Diagnostic.Create(MessageProvider.Instance, (int)ErrorCode.ERR_BadPrefer32OnLib));
752builder.Add(Diagnostic.Create(MessageProvider.Instance, (int)ErrorCode.ERR_BadCompilationOptionValue, nameof(MetadataImportOptions), MetadataImportOptions.ToString()));
Declarations\DeclarationTreeBuilder.cs (12)
197bag.Add(ErrorCode.ERR_SimpleProgramIsEmpty, ((EmptyStatementSyntax)firstGlobalStatement.Statement).SemicolonToken.GetLocation());
451diagnostics.Add(ErrorCode.ERR_GlobalUsingOutOfOrder, directive.GlobalKeyword.GetLocation());
537diagnostics.Add(ErrorCode.ERR_MultipleFileScopedNamespace, node.Name.GetLocation());
546diagnostics.Add(ErrorCode.ERR_FileScopedAndNormalNamespace, node.Name.GetLocation());
564diagnostics.Add(ErrorCode.ERR_FileScopedNamespaceNotBeforeAllMembers, node.Name.GetLocation());
576diagnostics.Add(ErrorCode.ERR_FileScopedAndNormalNamespace, node.Name.GetLocation());
583diagnostics.Add(ErrorCode.ERR_UnexpectedGenericName, node.Name.GetLocation());
588diagnostics.Add(ErrorCode.ERR_UnexpectedAliasedName, node.Name.GetLocation());
593diagnostics.Add(ErrorCode.ERR_BadModifiersOnNamespace, node.AttributeLists[0].GetLocation());
598diagnostics.Add(ErrorCode.ERR_BadModifiersOnNamespace, node.Modifiers[0].GetLocation());
605diagnostics.Add(ErrorCode.ERR_GlobalUsingInNamespace, directive.GlobalKeyword.GetLocation());
760diagnostics.Add(ErrorCode.ERR_UnexpectedParameterList, node.ParameterList.GetLocation());
Emitter\Model\PEModuleBuilder.cs (10)
179diagnostics.Add(new CSDiagnosticInfo(ErrorCode.WRN_ReferencedAssemblyDoesNotHaveStrongName, assembly), NoLocation.Singleton);
186diagnostics.Add(new CSDiagnosticInfo(ErrorCode.WRN_RefCultureMismatch, assembly, refIdentity.CultureName), NoLocation.Singleton);
205diagnostics.Add(new CSDiagnosticInfo(ErrorCode.WRN_ConflictingMachineAssembly, assembly), NoLocation.Singleton);
748diagnostics.Add(ErrorCode.ERR_ExportedTypeConflictsWithDeclaration, NoLocation.Singleton, type, type.ContainingModule);
752diagnostics.Add(ErrorCode.ERR_ForwardedTypeConflictsWithDeclaration, NoLocation.Singleton, type);
768diagnostics.Add(ErrorCode.ERR_ExportedTypesConflict, NoLocation.Singleton, type, type.ContainingModule, contender, contender.ContainingModule);
773diagnostics.Add(ErrorCode.ERR_ForwardedTypeConflictsWithExportedType, NoLocation.Singleton, type, type.ContainingAssembly, contender, contender.ContainingModule);
778diagnostics.Add(ErrorCode.ERR_ForwardedTypesConflict, NoLocation.Singleton, type, type.ContainingAssembly, contender, contender.ContainingAssembly);
1143diagnostics.Add(new CSDiagnostic(diagInfo ?? new CSDiagnosticInfo(ErrorCode.ERR_BogusType, string.Empty), syntaxNodeOpt == null ? NoLocation.Singleton : syntaxNodeOpt.Location));
1260new CSDiagnosticInfo(ErrorCode.ERR_PredefinedValueTupleTypeMustBeStruct, namedTypeSymbol.MetadataName),
Emitter\NoPia\EmbeddedTypesManager.cs (17)
259Error(diagnostics, ErrorCode.ERR_InteropTypesWithSameNameAndGuid, null,
268Error(diagnostics, ErrorCode.ERR_LocalTypeNameClash, null,
291Error(diagnostics, ErrorCode.WRN_ReferencedAssemblyReferencesLinkedPIA, null,
317ErrorCode error = ErrorCode.Unknown;
328error = ErrorCode.ERR_DefaultInterfaceImplementationInNoPIAType;
333error = ErrorCode.ERR_ReAbstractionInNoPIAType;
339if (error != ErrorCode.Unknown)
353error = ErrorCode.ERR_NoPIANestedType;
361error = ErrorCode.ERR_GenericsUsedInNoPIAType;
368error = ErrorCode.ERR_NewCoClassOnLink;
372if (error != ErrorCode.Unknown)
381private static void ReportNotEmbeddableSymbol(ErrorCode error, Symbol symbol, SyntaxNode syntaxNodeOpt, DiagnosticBag diagnostics, EmbeddedTypesManager optTypeManager)
390internal static void Error(DiagnosticBag diagnostics, ErrorCode code, SyntaxNode syntaxOpt, params object[] args)
513ReportNotEmbeddableSymbol(ErrorCode.ERR_InteropStructContainsMethods, field.AdaptedFieldSymbol.ContainingType, syntaxNodeOpt, diagnostics, this);
548ReportNotEmbeddableSymbol(ErrorCode.ERR_InteropStructContainsMethods, type.UnderlyingNamedType.AdaptedNamedTypeSymbol, syntaxNodeOpt, diagnostics, this);
555Error(diagnostics, ErrorCode.ERR_InteropMethodWithBody, syntaxNodeOpt, method.AdaptedMethodSymbol.ToDisplayString(SymbolDisplayFormat.MinimallyQualifiedFormat));
Errors\MessageProvider.cs (105)
27return ErrorFacts.GetSeverity((ErrorCode)code);
32return ErrorFacts.GetMessage((ErrorCode)code, language);
37return ErrorFacts.GetMessageFormat((ErrorCode)code);
42return ErrorFacts.GetDescription((ErrorCode)code);
47return ErrorFacts.GetTitle((ErrorCode)code);
52return ErrorFacts.GetHelpLink((ErrorCode)code);
57return ErrorFacts.GetCategory((ErrorCode)code);
79return ErrorFacts.GetWarningLevel((ErrorCode)code);
84get { return typeof(ErrorCode); }
89var info = new CSDiagnosticInfo((ErrorCode)code, args, ImmutableArray<Symbol>.Empty, ImmutableArray<Location>.Empty);
110(ErrorCode)code is not (
111ErrorCode.WRN_UseDefViolationPropertySupportedVersion
112or ErrorCode.WRN_UseDefViolationFieldSupportedVersion
113or ErrorCode.WRN_UseDefViolationThisSupportedVersion
114or ErrorCode.WRN_UnassignedThisAutoPropertySupportedVersion
115or ErrorCode.WRN_UnassignedThisSupportedVersion
116or ErrorCode.WRN_CollectionExpressionRefStructMayAllocate
117or ErrorCode.WRN_CollectionExpressionRefStructSpreadMayAllocate
142return (ErrorCode)errorCode switch
145ErrorCode.Unknown => false,
146ErrorCode.Void => false,
147ErrorCode.ERR_IdentifierExpectedKW => false, // message uses {1} rather than {0}
148ErrorCode.WRN_XMLParseError => false, // XmlSyntaxDiagnosticInfo.GetMessage() uses distinct error code
154public override int ERR_FailedToCreateTempFile => (int)ErrorCode.ERR_CantMakeTempFile;
155public override int ERR_MultipleAnalyzerConfigsInSameDir => (int)ErrorCode.ERR_MultipleAnalyzerConfigsInSameDir;
158public override int ERR_ExpectedSingleScript => (int)ErrorCode.ERR_ExpectedSingleScript;
159public override int ERR_OpenResponseFile => (int)ErrorCode.ERR_OpenResponseFile;
160public override int ERR_InvalidPathMap => (int)ErrorCode.ERR_InvalidPathMap;
161public override int FTL_InvalidInputFileName => (int)ErrorCode.FTL_InvalidInputFileName;
162public override int ERR_FileNotFound => (int)ErrorCode.ERR_FileNotFound;
163public override int ERR_NoSourceFile => (int)ErrorCode.ERR_NoSourceFile;
164public override int ERR_CantOpenFileWrite => (int)ErrorCode.ERR_CantOpenFileWrite;
165public override int ERR_OutputWriteFailed => (int)ErrorCode.ERR_OutputWriteFailed;
166public override int WRN_NoConfigNotOnCommandLine => (int)ErrorCode.WRN_NoConfigNotOnCommandLine;
167public override int ERR_BinaryFile => (int)ErrorCode.ERR_BinaryFile;
168public override int WRN_AnalyzerCannotBeCreated => (int)ErrorCode.WRN_AnalyzerCannotBeCreated;
169public override int WRN_NoAnalyzerInAssembly => (int)ErrorCode.WRN_NoAnalyzerInAssembly;
170public override int WRN_UnableToLoadAnalyzer => (int)ErrorCode.WRN_UnableToLoadAnalyzer;
171public override int WRN_AnalyzerReferencesFramework => (int)ErrorCode.WRN_AnalyzerReferencesFramework;
172public override int WRN_AnalyzerReferencesNewerCompiler => (int)ErrorCode.WRN_AnalyzerReferencesNewerCompiler;
173public override int WRN_DuplicateAnalyzerReference => (int)ErrorCode.WRN_DuplicateAnalyzerReference;
174public override int INF_UnableToLoadSomeTypesInAnalyzer => (int)ErrorCode.INF_UnableToLoadSomeTypesInAnalyzer;
175public override int ERR_CantReadRulesetFile => (int)ErrorCode.ERR_CantReadRulesetFile;
176public override int ERR_CompileCancelled => (int)ErrorCode.ERR_CompileCancelled;
179public override int ERR_BadSourceCodeKind => (int)ErrorCode.ERR_BadSourceCodeKind;
180public override int ERR_BadDocumentationMode => (int)ErrorCode.ERR_BadDocumentationMode;
183public override int ERR_BadCompilationOptionValue => (int)ErrorCode.ERR_BadCompilationOptionValue;
184public override int ERR_MutuallyExclusiveOptions => (int)ErrorCode.ERR_MutuallyExclusiveOptions;
187public override int ERR_InvalidDebugInformationFormat => (int)ErrorCode.ERR_InvalidDebugInformationFormat;
188public override int ERR_InvalidOutputName => (int)ErrorCode.ERR_InvalidOutputName;
189public override int ERR_InvalidFileAlignment => (int)ErrorCode.ERR_InvalidFileAlignment;
190public override int ERR_InvalidSubsystemVersion => (int)ErrorCode.ERR_InvalidSubsystemVersion;
191public override int ERR_InvalidInstrumentationKind => (int)ErrorCode.ERR_InvalidInstrumentationKind;
192public override int ERR_InvalidHashAlgorithmName => (int)ErrorCode.ERR_InvalidHashAlgorithmName;
195public override int ERR_MetadataFileNotAssembly => (int)ErrorCode.ERR_ImportNonAssembly;
196public override int ERR_MetadataFileNotModule => (int)ErrorCode.ERR_AddModuleAssembly;
197public override int ERR_InvalidAssemblyMetadata => (int)ErrorCode.FTL_MetadataCantOpenFile;
198public override int ERR_InvalidModuleMetadata => (int)ErrorCode.FTL_MetadataCantOpenFile;
199public override int ERR_ErrorOpeningAssemblyFile => (int)ErrorCode.FTL_MetadataCantOpenFile;
200public override int ERR_ErrorOpeningModuleFile => (int)ErrorCode.FTL_MetadataCantOpenFile;
201public override int ERR_MetadataFileNotFound => (int)ErrorCode.ERR_NoMetadataFile;
202public override int ERR_MetadataReferencesNotSupported => (int)ErrorCode.ERR_MetadataReferencesNotSupported;
203public override int ERR_LinkedNetmoduleMetadataMustProvideFullPEImage => (int)ErrorCode.ERR_LinkedNetmoduleMetadataMustProvideFullPEImage;
207diagnostics.Add(ErrorCode.ERR_DuplicateImport, location,
214diagnostics.Add(ErrorCode.ERR_DuplicateImportSimple, location,
220public override int ERR_PublicKeyFileFailure => (int)ErrorCode.ERR_PublicKeyFileFailure;
221public override int ERR_PublicKeyContainerFailure => (int)ErrorCode.ERR_PublicKeyContainerFailure;
222public override int ERR_OptionMustBeAbsolutePath => (int)ErrorCode.ERR_OptionMustBeAbsolutePath;
225public override int ERR_CantReadResource => (int)ErrorCode.ERR_CantReadResource;
226public override int ERR_CantOpenWin32Resource => (int)ErrorCode.ERR_CantOpenWin32Res;
227public override int ERR_CantOpenWin32Manifest => (int)ErrorCode.ERR_CantOpenWin32Manifest;
228public override int ERR_CantOpenWin32Icon => (int)ErrorCode.ERR_CantOpenIcon;
229public override int ERR_ErrorBuildingWin32Resource => (int)ErrorCode.ERR_ErrorBuildingWin32Resources;
230public override int ERR_BadWin32Resource => (int)ErrorCode.ERR_BadWin32Res;
231public override int ERR_ResourceFileNameNotUnique => (int)ErrorCode.ERR_ResourceFileNameNotUnique;
232public override int ERR_ResourceNotUnique => (int)ErrorCode.ERR_ResourceNotUnique;
233public override int ERR_ResourceInModule => (int)ErrorCode.ERR_CantRefResource;
236public override int ERR_PermissionSetAttributeFileReadError => (int)ErrorCode.ERR_PermissionSetAttributeFileReadError;
237public override int ERR_MethodImplAttributeAsyncCannotBeUsed => (int)ErrorCode.ERR_MethodImplAttributeAsyncCannotBeUsed;
240public override int ERR_EncodinglessSyntaxTree => (int)ErrorCode.ERR_EncodinglessSyntaxTree;
241public override int WRN_PdbUsingNameTooLong => (int)ErrorCode.WRN_DebugFullNameTooLong;
242public override int WRN_PdbLocalNameTooLong => (int)ErrorCode.WRN_PdbLocalNameTooLong;
243public override int ERR_PdbWritingFailed => (int)ErrorCode.FTL_DebugEmitFailure;
246public override int ERR_MetadataNameTooLong => (int)ErrorCode.ERR_MetadataNameTooLong;
247public override int ERR_EncReferenceToAddedMember => (int)ErrorCode.ERR_EncReferenceToAddedMember;
248public override int ERR_TooManyUserStrings => (int)ErrorCode.ERR_TooManyUserStrings;
249public override int ERR_TooManyUserStrings_RestartRequired => (int)ErrorCode.ERR_TooManyUserStrings_RestartRequired;
250public override int ERR_PeWritingFailure => (int)ErrorCode.ERR_PeWritingFailure;
251public override int ERR_ModuleEmitFailure => (int)ErrorCode.ERR_ModuleEmitFailure;
252public override int ERR_EncUpdateFailedMissingSymbol => (int)ErrorCode.ERR_EncUpdateFailedMissingSymbol;
253public override int ERR_InvalidDebugInfo => (int)ErrorCode.ERR_InvalidDebugInfo;
254public override int ERR_FunctionPointerTypesInAttributeNotSupported => (int)ErrorCode.ERR_FunctionPointerTypesInAttributeNotSupported;
255public override int ERR_DataSectionStringLiteralHashCollision => (int)ErrorCode.ERR_DataSectionStringLiteralHashCollision;
256public override int ERR_EncUpdateRequiresEmittingExplicitInterfaceImplementationNotSupportedByTheRuntime => (int)ErrorCode.ERR_EncUpdateRequiresEmittingExplicitInterfaceImplementationNotSupportedByTheRuntime;
259public override int WRN_GeneratorFailedDuringInitialization => (int)ErrorCode.WRN_GeneratorFailedDuringInitialization;
260public override int WRN_GeneratorFailedDuringGeneration => (int)ErrorCode.WRN_GeneratorFailedDuringGeneration;
265diagnostics.Add(ErrorCode.ERR_InvalidAttributeArgument, ((CSharpAttributeData)attribute).GetAttributeArgumentLocation(parameterIndex), node.GetErrorDisplayName());
271diagnostics.Add(ErrorCode.ERR_InvalidNamedArgument, node.ArgumentList.Arguments[namedArgumentIndex].Location, parameterName);
277diagnostics.Add(ErrorCode.ERR_ParameterNotValidForType, node.ArgumentList.Arguments[namedArgumentIndex].Location);
282diagnostics.Add(ErrorCode.ERR_MarshalUnmanagedTypeNotValidForFields, ((CSharpAttributeData)attribute).GetAttributeArgumentLocation(parameterIndex), unmanagedTypeName);
287diagnostics.Add(ErrorCode.ERR_MarshalUnmanagedTypeOnlyValidForFields, ((CSharpAttributeData)attribute).GetAttributeArgumentLocation(parameterIndex), unmanagedTypeName);
293diagnostics.Add(ErrorCode.ERR_AttributeParameterRequired1, node.Name.Location, parameterName);
299diagnostics.Add(ErrorCode.ERR_AttributeParameterRequired2, node.Name.Location, parameterName1, parameterName2);
302public override int ERR_BadAssemblyName => (int)ErrorCode.ERR_BadAssemblyName;
304public override int? WRN_ByValArraySizeConstRequired => (int)ErrorCode.WRN_ByValArraySizeConstRequired;
FlowAnalysis\DefiniteAssignment.cs (52)
450hasAssociatedProperty ? ErrorCode.WRN_UnassignedThisAutoPropertySupportedVersion : ErrorCode.WRN_UnassignedThisSupportedVersion,
457hasAssociatedProperty ? ErrorCode.ERR_UnassignedThisAutoPropertyUnsupportedVersion : ErrorCode.ERR_UnassignedThisUnsupportedVersion,
474Diagnostics.Add(ErrorCode.ERR_ParamUnassigned, location, parameter.Name);
493Diagnostics.Add(ErrorCode.ERR_ParamUnassigned, location, parameter.Name);
527if (compatDiagnostics.AsEnumerable().Any(d => (ErrorCode)d.Code == ErrorCode.ERR_InsufficientStack))
556ErrorCode oldCode = (ErrorCode)diagnostic.Code;
557ErrorCode newCode = oldCode switch
560ErrorCode.ERR_UnassignedThisAutoPropertyUnsupportedVersion => ErrorCode.WRN_UnassignedThisAutoPropertyUnsupportedVersion,
561ErrorCode.ERR_UnassignedThisUnsupportedVersion => ErrorCode.WRN_UnassignedThisUnsupportedVersion,
562ErrorCode.ERR_ParamUnassigned => ErrorCode.WRN_ParamUnassigned,
563ErrorCode.ERR_UseDefViolationProperty => ErrorCode.WRN_UseDefViolationProperty,
564ErrorCode.ERR_UseDefViolationField => ErrorCode.WRN_UseDefViolationField,
565ErrorCode.ERR_UseDefViolationThisUnsupportedVersion => ErrorCode.WRN_UseDefViolationThisUnsupportedVersion,
566ErrorCode.ERR_UseDefViolationPropertyUnsupportedVersion => ErrorCode.WRN_UseDefViolationPropertyUnsupportedVersion,
567ErrorCode.ERR_UseDefViolationFieldUnsupportedVersion => ErrorCode.WRN_UseDefViolationFieldUnsupportedVersion,
568ErrorCode.ERR_UseDefViolationOut => ErrorCode.WRN_UseDefViolationOut,
569ErrorCode.ERR_UseDefViolation => ErrorCode.WRN_UseDefViolation,
575Debug.Assert(newCode != oldCode || oldCode == ErrorCode.ERR_InsufficientStack, oldCode.ToString());
645diagnostics.Add(ErrorCode.ERR_LocalCantBeFixedAndHoisted, location, captured.Name);
1195Diagnostics.Add(ErrorCode.ERR_UseDefViolationOut, node.Location, symbolName);
1200Diagnostics.Add(ErrorCode.ERR_UseDefViolation, node.Location, symbolName);
1248Diagnostics.Add(ErrorCode.WRN_UseDefViolationThisSupportedVersion, node.Location);
1253ErrorCode.ERR_UseDefViolationThisUnsupportedVersion,
1266Diagnostics.Add(hasAssociatedProperty ? ErrorCode.ERR_UseDefViolationProperty : ErrorCode.ERR_UseDefViolationField, node.Location, symbolName);
1276Diagnostics.Add(hasAssociatedProperty ? ErrorCode.ERR_UseDefViolationProperty : ErrorCode.ERR_UseDefViolationField, node.Location, symbolName);
1293ErrorCode.WRN_UseDefViolationRefField,
1301hasAssociatedProperty ? ErrorCode.WRN_UseDefViolationPropertySupportedVersion : ErrorCode.WRN_UseDefViolationFieldSupportedVersion,
1308hasAssociatedProperty ? ErrorCode.ERR_UseDefViolationPropertyUnsupportedVersion : ErrorCode.ERR_UseDefViolationFieldUnsupportedVersion,
1916ErrorCode.WRN_UnreadRecordParameter :
1917ErrorCode.WRN_UnreadPrimaryConstructorParameter,
2284Diagnostics.Add(assigned && _writtenVariables.Contains(symbol) ? ErrorCode.WRN_UnreferencedVarAssg : ErrorCode.WRN_UnreferencedVar, symbol.GetFirstLocationOrNone(), symbol.Name);
2303Diagnostics.Add(ErrorCode.WRN_UnreferencedLocalFunction, symbol.GetFirstLocationOrNone(), symbol.Name);
2332Diagnostics.Add(ErrorCode.ERR_FixedLocalInLambda, new SourceLocation(node.Syntax), localSymbol);
FlowAnalysis\NullableWalker.cs (36)
844var errorCode = usesFieldKeyword ? ErrorCode.WRN_UninitializedNonNullableBackingField : ErrorCode.WRN_UninitializedNonNullableField;
1110Diagnostics.Add(ErrorCode.WRN_MemberNotNull, syntax.GetLocation(), member.Name);
1179Diagnostics.Add(ErrorCode.WRN_MemberNotNullWhen, syntaxOpt?.GetLocation() ?? methodMainNode.Syntax.GetLastToken().GetLocation(), member.Name, sense ? "true" : "false");
1351Diagnostics.Add(ErrorCode.WRN_ParameterDisallowsNull, location, parameter.Name);
1378Diagnostics.Add(ErrorCode.WRN_ParameterConditionallyDisallowsNull, syntax.Location, parameter.Name, sense ? "true" : "false");
1437Diagnostics.Add(ErrorCode.WRN_ParameterNotNullIfNotNull, location, outputParam.Name, inputParam.Name);
1442Diagnostics.Add(ErrorCode.WRN_ReturnNotNullIfNotNull, location, inputParam.Name);
1456ReportDiagnostic(ErrorCode.WRN_ShouldNotReturn, syntaxOpt?.GetLocation() ?? methodMainNode.Syntax.GetLastToken().GetLocation());
2488ReportDiagnostic(assignmentKind == AssignmentKind.Return ? ErrorCode.WRN_NullReferenceReturn : ErrorCode.WRN_NullAsNonNullable, location);
2492ReportDiagnostic(ErrorCode.WRN_NullReferenceArgument, location,
2510ReportDiagnostic(assignmentKind == AssignmentKind.Return ? ErrorCode.WRN_NullReferenceReturn : ErrorCode.WRN_NullReferenceAssignment, location);
2666ReportDiagnostic(ErrorCode.WRN_NullabilityMismatchInAssignment, syntaxNode, sourceType, destinationType);
2671ReportDiagnostic(ErrorCode.WRN_NullabilityMismatchInAssignment, location, sourceType, destinationType);
2728ReportDiagnostic(ErrorCode.WRN_ConvertingNullableToNonNullable, location);
2731private void ReportDiagnostic(ErrorCode errorCode, SyntaxNode syntaxNode, params object[] arguments)
2736private void ReportDiagnostic(ErrorCode errorCode, Location location, params object[] arguments)
4775ReportDiagnostic(ErrorCode.WRN_NullReferenceInitializer, initializer.Syntax, symbol);
8291ReportDiagnostic(ErrorCode.WRN_DisallowNullAttributeForbidsMaybeNullAssignment, node.Location);
9677ReportDiagnostic(ErrorCode.WRN_NullabilityMismatchInReturnTypeOfTargetDelegate, arg.location,
9684ReportDiagnostic(ErrorCode.WRN_NullabilityMismatchInParameterTypeOfTargetDelegate, arg.location,
9748ReportDiagnostic(ErrorCode.WRN_NullabilityMismatchInReturnTypeOfTargetDelegate, location,
9758ReportDiagnostic(ErrorCode.WRN_NullabilityMismatchInParameterTypeOfTargetDelegate, location,
9795/// If <see langword="true"/>, indicates that the "non-safety" diagnostic <see cref="ErrorCode.WRN_ConvertingNullableToNonNullable"/>
9971ReportDiagnostic(ErrorCode.WRN_UnboxPossibleNull, getDiagnosticLocation());
10080ReportDiagnostic(ErrorCode.WRN_NullableValueTypeMayBeNull, getDiagnosticLocation());
12055ReportDiagnostic(ErrorCode.WRN_NullabilityMismatchInArgument,
12072ReportDiagnostic(forOutput ? ErrorCode.WRN_NullabilityMismatchInArgumentForOutput : ErrorCode.WRN_NullabilityMismatchInArgument,
12529ReportDiagnostic(ErrorCode.WRN_NullReferenceReceiver, expr.Syntax.GetLocation());
13438ReportDiagnostic(isValueType ? ErrorCode.WRN_NullableValueTypeMayBeNull : ErrorCode.WRN_NullReferenceReceiver, syntax);
13592ReportDiagnostic(ErrorCode.WRN_ThrowPossibleNull, expr.Syntax);
Generated\BoundNodes.xml.Generated.cs (3)
2005public BoundUnconvertedConditionalOperator(SyntaxNode syntax, BoundExpression condition, BoundExpression consequence, BoundExpression alternative, ConstantValue? constantValueOpt, ErrorCode noCommonTypeError, bool hasErrors = false)
2025public ErrorCode NoCommonTypeError { get; }
2030public BoundUnconvertedConditionalOperator Update(BoundExpression condition, BoundExpression consequence, BoundExpression alternative, ConstantValue? constantValueOpt, ErrorCode noCommonTypeError)
Lowering\AsyncRewriter\AsyncMethodBuilderMemberCollection.cs (6)
356F.Diagnostics.Add(ErrorCode.ERR_WrongArityAsyncReturn, F.Syntax.Location, builderType);
367F.Diagnostics.Add(ErrorCode.ERR_BadAsyncReturn, F.Syntax.Location);
461new CSDiagnosticInfo(ErrorCode.ERR_MissingPredefinedMember, (customBuilder ? (object)builderType : descriptor.DeclaringTypeMetadataName), descriptor.Name),
494F.Diagnostics.Add(ErrorCode.ERR_MissingPredefinedMember, F.Syntax.Location, builderType, methodName);
519new CSDiagnosticInfo(ErrorCode.ERR_BadAsyncMethodBuilderTaskProperty, builderType, returnType, property.Type),
529new CSDiagnosticInfo(ErrorCode.ERR_MissingPredefinedMember, builderType, propertyName),
Lowering\DiagnosticsPass_ExpressionTrees.cs (85)
59private void Error(ErrorCode code, BoundNode node, params object[] args)
73Error(ErrorCode.ERR_ExpressionTreeContainsPointerOp, node);
83Error(ErrorCode.ERR_ExpressionTreeContainsMultiDimensionalArrayInitializer, node);
95Error(ErrorCode.ERR_ExpressionTreeContainsPatternImplicitIndexer, node);
105Error(ErrorCode.ERR_ExpressionTreeContainsPatternImplicitIndexer, node);
115Error(ErrorCode.ERR_ExpressionTreeContainsInlineArrayOperation, node);
125Error(ErrorCode.ERR_ExpressionTreeContainsFromEndIndexExpression, node);
135Error(ErrorCode.ERR_ExpressionTreeContainsRangeExpression, node);
145Error(ErrorCode.ERR_ExpressionTreeContainsPointerOp, node);
175Error(ErrorCode.ERR_ExpressionTreeContainsBaseAccess, node);
197var diagnostic = _staticLocalOrAnonymousFunction.MethodKind == MethodKind.LocalFunction
198? ErrorCode.ERR_StaticLocalFunctionCannotCaptureThis
199: ErrorCode.ERR_StaticAnonymousFunctionCannotCaptureThis;
212var diagnostic = _staticLocalOrAnonymousFunction.MethodKind == MethodKind.LocalFunction
213? ErrorCode.ERR_StaticLocalFunctionCannotCaptureVariable
214: ErrorCode.ERR_StaticAnonymousFunctionCannotCaptureVariable;
233Error(ErrorCode.ERR_ExpressionTreeContainsSwitchExpression, node);
255Error(ErrorCode.ERR_ExpressionTreeContainsAssignment, node);
265Error(ErrorCode.ERR_ExpressionTreeContainsDynamicOperation, node);
289Error(ErrorCode.ERR_ExpressionTreeContainsAssignment, node);
328Error(ErrorCode.ERR_PartialMethodInExpressionTree, node);
332Error(ErrorCode.ERR_ExpressionTreeContainsIndexedProperty, node);
337Error(ErrorCode.ERR_ExpressionTreeContainsOptionalArgument, node);
342Error(ErrorCode.ERR_ExpressionTreeContainsNamedArgument, node);
348Error(ErrorCode.ERR_ExpressionTreeContainsNamedArgumentOutOfPosition, node);
352Error(ErrorCode.ERR_ComRefCallInExpressionTree, node);
356Error(ErrorCode.ERR_ExpressionTreeContainsLocalFunction, node);
360Error(ErrorCode.ERR_RefReturningCallInExpressionTree, node);
364Error(ErrorCode.ERR_ExpressionTreeContainsAbstractStaticMemberAccess, node);
407Error(ErrorCode.ERR_ExpressionTreeCantContainRefStruct, node, type.Name);
416Error(ErrorCode.ERR_FeatureNotValidInExpressionTree, node, "__reftype");
426Error(ErrorCode.ERR_FeatureNotValidInExpressionTree, node, "__refvalue");
436Error(ErrorCode.ERR_FeatureNotValidInExpressionTree, node, "__makeref");
446Error(ErrorCode.ERR_VarArgsInExpressionTree, node);
456Error(ErrorCode.ERR_NullPropagatingOpInExpressionTree, node);
466Error(ErrorCode.ERR_DictionaryInitializerInExpressionTree, node);
473Error(ErrorCode.ERR_ExpressionTreeContainsExtensionPropertyAccess, node);
536Error(ErrorCode.ERR_ExpressionTreeContainsOutVariable, local);
544Error(ErrorCode.ERR_ExpressionTreeContainsDiscard, argument);
552Error(ErrorCode.ERR_ExtensionCollectionElementInitializerInExpressionTree, node);
581Error(ErrorCode.ERR_RefReturningCallInExpressionTree, node);
595Error(ErrorCode.ERR_ExpressionTreeContainsAbstractStaticMemberAccess, node);
599Error(ErrorCode.ERR_ExpressionTreeContainsExtensionPropertyAccess, node);
615Error(ErrorCode.ERR_LambdaWithAttributesToExpressionTree, node);
623_diagnostics.Add(ErrorCode.ERR_ByRefParameterInExpressionTree, location);
627_diagnostics.Add(ErrorCode.ERR_ExpressionTreeCantContainRefStruct, p.GetFirstLocation(), p.Type.Name);
632_diagnostics.Add(ErrorCode.ERR_LambdaWithAttributesToExpressionTree, p.GetFirstLocation());
644Error(ErrorCode.ERR_BadAsyncExpressionTree, node);
648Error(ErrorCode.ERR_StatementLambdaToExpressionTree, node);
652Error(ErrorCode.ERR_BadRefReturnExpressionTree, node);
662Error(ErrorCode.ERR_BadAsyncExpressionTree, node);
666Error(ErrorCode.ERR_StatementLambdaToExpressionTree, node);
670Error(ErrorCode.ERR_BadRefReturnExpressionTree, node);
676Error(ErrorCode.ERR_ExpressionTreeContainsAnonymousMethod, node);
758Error(ErrorCode.ERR_ExpressionTreeContainsAbstractStaticMemberAccess, node);
769Error(ErrorCode.ERR_ExpressionTreeContainsExtensionBasedConditionalLogicalOperator, node);
785Error(ErrorCode.ERR_ExpressionTreeContainsDynamicOperation, node);
793Error(ErrorCode.ERR_ExpressionTreeContainsDynamicOperation, node);
805Error(ErrorCode.ERR_ExpressionTreeContainsAbstractStaticMemberAccess, node);
826Error(ErrorCode.ERR_ExpressionTreeContainsAssignment, node);
870Error(ErrorCode.ERR_ExpressionTreeContainsDynamicOperation, node);
880Error(ErrorCode.ERR_ExpressionTreeContainsTupleConversion, node);
887Error(ErrorCode.ERR_ExpressionTreeContainsInlineArrayOperation, node);
894Error(ErrorCode.ERR_ExpressionTreeContainsInterpolatedStringHandlerConversion, node);
901Error(ErrorCode.ERR_ExpressionTreeContainsUnionConversion, node);
909Error(ErrorCode.ERR_ExpressionTreeContainsAbstractStaticMemberAccess, node);
951Error(ErrorCode.ERR_ExpressionTreeContainsLocalFunction, node);
955Error(ErrorCode.ERR_AddressOfMethodGroupInExpressionTree, node);
959Error(ErrorCode.ERR_ExpressionTreeContainsAbstractStaticMemberAccess, node);
983Error(ErrorCode.ERR_ExpressionTreeContainsBadCoalesce, node.LeftOperand);
993Error(ErrorCode.ERR_ExpressionTreeCantContainNullCoalescingAssignment, node);
1003Error(ErrorCode.ERR_ExpressionTreeContainsDynamicOperation, node);
1019Error(ErrorCode.ERR_ExpressionTreeContainsDynamicOperation, node);
1030Error(ErrorCode.ERR_ExpressionTreeContainsDynamicOperation, node);
1040Error(ErrorCode.ERR_ExpressionTreeContainsDynamicOperation, node);
1050Error(ErrorCode.ERR_ExpressionTreeContainsDynamicOperation, node);
1060Error(ErrorCode.ERR_ExpressionTreeContainsIsMatch, node);
1070Error(ErrorCode.ERR_ExpressionTreeContainsTupleLiteral, node);
1080Error(ErrorCode.ERR_ExpressionTreeContainsTupleLiteral, node);
1090Error(ErrorCode.ERR_ExpressionTreeContainsTupleBinOp, node);
1100Error(ErrorCode.ERR_ExpressionTreeContainsThrowExpression, node);
1110Error(ErrorCode.ERR_ExpressionTreeContainsWithExpression, node);
1120Error(ErrorCode.ERR_ExpressionTreeContainsPointerOp, node);
1132ErrorCode.ERR_ParamsCollectionExpressionTree :
1133ErrorCode.ERR_ExpressionTreeContainsCollectionExpression,
Lowering\DiagnosticsPass_Warnings.cs (27)
63Error(ErrorCode.WRN_VolatileByRef, fieldAccess, fieldSymbol);
68Error(ErrorCode.WRN_ByRefNonAgileField, fieldAccess, fieldSymbol);
91Error(ErrorCode.WRN_CallOnNonAgileField, fieldAccess, fieldSymbol);
258Error(ErrorCode.ERR_FeatureNotValidInExpressionTree, node, method);
262Error(ErrorCode.ERR_ExpressionTreeContainsAbstractStaticMemberAccess, node);
280Error(ErrorCode.ERR_FeatureNotValidInExpressionTree, node, ">>>");
299Error(ErrorCode.ERR_ExpressionTreeContainsAssignment, node);
332_diagnostics.Add(ErrorCode.WRN_BadRefCompareLeft, node.Syntax.Location, t);
337_diagnostics.Add(ErrorCode.WRN_BadRefCompareRight, node.Syntax.Location, t);
387Error(ErrorCode.WRN_ComparisonToSelf, node);
453Error(ErrorCode.WRN_VacuousIntegralComp, tree, conversion.Operand.Type);
568Error(ErrorCode.WRN_BitwiseOrSignExtend, node);
728Error(ErrorCode.WRN_AlwaysNull, node, node.Type);
744Error(ErrorCode.WRN_AlwaysNull, node, node.Type);
769Error(ErrorCode.WRN_NubExprIsConstBool, node, always, node.Left.Type.GetNullableUnderlyingType(), node.Left.Type);
773Error(ErrorCode.WRN_NubExprIsConstBool, node, always, node.Right.Type.GetNullableUnderlyingType(), node.Right.Type);
799Error(ErrorCode.WRN_CmpAlwaysFalse, node, GetTypeForLiftedComparisonWarning(node.Right));
803Error(ErrorCode.WRN_CmpAlwaysFalse, node, GetTypeForLiftedComparisonWarning(node.Left));
817Error(node.OperatorKind.IsUserDefined() ? ErrorCode.WRN_NubExprIsConstBool2 : ErrorCode.WRN_NubExprIsConstBool, node, always, node.Left.Type.GetNullableUnderlyingType(), GetTypeForLiftedComparisonWarning(node.Right));
821Error(node.OperatorKind.IsUserDefined() ? ErrorCode.WRN_NubExprIsConstBool2 : ErrorCode.WRN_NubExprIsConstBool, node, always, node.Right.Type.GetNullableUnderlyingType(), GetTypeForLiftedComparisonWarning(node.Left));
829Error(ErrorCode.WRN_AlwaysNull, node, node.Type);
835Error(ErrorCode.WRN_AlwaysNull, node, node.Type);
846Error(ErrorCode.WRN_AlwaysNull, node, node.Type);
880Error(ErrorCode.WRN_AssignmentToSelf, node);
924Error(ErrorCode.WRN_AssignmentToSelf, leftArgument);
Lowering\LocalRewriter\LocalRewriter_Call.cs (12)
176this._diagnostics.Add(ErrorCode.ERR_InterceptorCannotBeGeneric, attributeLocation, interceptor, method);
182this._diagnostics.Add(ErrorCode.ERR_InterceptorArityNotCompatible, attributeLocation, interceptor, netArity, method);
196this._diagnostics.Add(ErrorCode.ERR_InterceptableMethodMustBeOrdinary, attributeLocation, nameSyntax.Identifier.ValueText);
208this._diagnostics.Add(ErrorCode.ERR_InterceptorNotAccessible, attributeLocation, interceptor, containingMethod);
220this._diagnostics.Add(ErrorCode.ERR_InterceptorSignatureMismatch, attributeLocation, method, interceptor);
231diagnostics.Add(ErrorCode.WRN_NullabilityMismatchInReturnTypeOnInterceptor, attributeLocation, method);
235diagnostics.Add(ErrorCode.WRN_NullabilityMismatchInParameterTypeOnInterceptor, attributeLocation, new FormattedSymbol(implementingParameter, SymbolDisplayFormat.ShortFormat), method);
241this._diagnostics.Add(ErrorCode.WRN_InterceptorSignatureMismatch, attributeLocation, method, interceptor);
255this._diagnostics.Add(ErrorCode.ERR_InterceptorMustHaveMatchingThisParameter, attributeLocation, methodThisParameter, method);
258this._diagnostics.Add(ErrorCode.ERR_InterceptorMustNotHaveThisParameter, attributeLocation, method);
267this._diagnostics.Add(ErrorCode.ERR_InterceptorMustHaveMatchingThisParameter, attributeLocation, method.Parameters[0], method);
277diagnostics.Add(ErrorCode.ERR_InterceptorScopedMismatch, attributeLocation, method, symbolForCompare);
Parser\AbstractLexer.cs (8)
48protected void AddError(int position, int width, ErrorCode code)
53protected void AddError(int position, int width, ErrorCode code, params object[] args)
58protected void AddError(ErrorCode code)
63protected void AddError(ErrorCode code, params object[] args)
91protected SyntaxDiagnosticInfo MakeError(int position, int width, ErrorCode code)
97protected SyntaxDiagnosticInfo MakeError(int position, int width, ErrorCode code, params object[] args)
117protected static SyntaxDiagnosticInfo MakeError(ErrorCode code)
122protected static SyntaxDiagnosticInfo MakeError(ErrorCode code, params object[] args)
Parser\DirectiveParser.cs (55)
116hash = this.AddError(hash, ErrorCode.ERR_PPShebangNotOnFirstLine);
131id = this.AddError(id, ErrorCode.ERR_PPDirectiveExpected);
135hash = this.AddError(hash, ErrorCode.ERR_PPDirectiveExpected);
171return this.AddError(SyntaxFactory.BadDirectiveTrivia(hash, keyword, eod, isActive), ErrorCode.ERR_EndRegionDirectiveExpected);
175return this.AddError(SyntaxFactory.BadDirectiveTrivia(hash, keyword, eod, isActive), ErrorCode.ERR_EndifDirectiveExpected);
179return this.AddError(SyntaxFactory.BadDirectiveTrivia(hash, keyword, eod, isActive), ErrorCode.ERR_UnexpectedDirective);
194return this.AddError(SyntaxFactory.BadDirectiveTrivia(hash, keyword, eod, isActive), ErrorCode.ERR_EndRegionDirectiveExpected);
198return this.AddError(SyntaxFactory.BadDirectiveTrivia(hash, keyword, eod, isActive), ErrorCode.ERR_EndifDirectiveExpected);
202return this.AddError(SyntaxFactory.BadDirectiveTrivia(hash, keyword, eod, isActive), ErrorCode.ERR_UnexpectedDirective);
217return this.AddError(SyntaxFactory.BadDirectiveTrivia(hash, keyword, eod, isActive), ErrorCode.ERR_EndRegionDirectiveExpected);
221return this.AddError(SyntaxFactory.BadDirectiveTrivia(hash, keyword, eod, isActive), ErrorCode.ERR_UnexpectedDirective);
239return this.AddError(SyntaxFactory.BadDirectiveTrivia(hash, keyword, eod, isActive), ErrorCode.ERR_EndifDirectiveExpected);
243return this.AddError(SyntaxFactory.BadDirectiveTrivia(hash, keyword, eod, isActive), ErrorCode.ERR_UnexpectedDirective);
251keyword = this.AddError(keyword, ErrorCode.ERR_PPDefFollowsToken);
254var name = this.EatToken(SyntaxKind.IdentifierToken, ErrorCode.ERR_IdentifierExpected);
329eod = this.AddError(eod, offset: triviaOffset, triviaWidth, isError ? ErrorCode.ERR_ErrorDirective : ErrorCode.WRN_WarningDirective, errorText);
342eod = this.AddError(eod, triviaOffset, triviaWidth, ErrorCode.ERR_CompilerAndLanguageVersion, version,
352ErrorCode error = this.Options.LanguageVersion.GetErrorCode();
384line = this.EatToken(SyntaxKind.NumericLiteralToken, ErrorCode.ERR_InvalidLineNumber, reportError: isActive);
390line = this.AddError(line, ErrorCode.ERR_InvalidLineNumber);
394line = this.AddError(line, ErrorCode.WRN_TooManyLinesForDebugger);
420start = this.AddError(start, ErrorCode.ERR_LineSpanDirectiveRequiresSpace);
430end = this.AddError(end, ErrorCode.ERR_LineSpanDirectiveEndLessThanStart);
439characterOffset = this.AddError(characterOffset, ErrorCode.ERR_LineSpanDirectiveRequiresSpace);
442var file = EatToken(SyntaxKind.StringLiteralToken, ErrorCode.ERR_MissingPPFile, reportError: reportError);
447file = this.AddError(file, ErrorCode.ERR_LineSpanDirectiveRequiresSpace);
481var token = this.EatToken(SyntaxKind.NumericLiteralToken, ErrorCode.ERR_LineSpanDirectiveInvalidValue, reportError: reportError);
492token = this.AddError(token, ErrorCode.ERR_LineSpanDirectiveInvalidValue);
505keyword = this.AddError(keyword, ErrorCode.ERR_ReferenceDirectiveOnlyAllowedInScripts);
509keyword = this.AddError(keyword, ErrorCode.ERR_PPReferenceFollowsToken);
513SyntaxToken file = this.EatToken(SyntaxKind.StringLiteralToken, ErrorCode.ERR_ExpectedPPFile, reportError: isActive);
525keyword = this.AddError(keyword, ErrorCode.ERR_LoadDirectiveOnlyAllowedInScripts);
529keyword = this.AddError(keyword, ErrorCode.ERR_PPLoadFollowsToken);
533SyntaxToken file = this.EatToken(SyntaxKind.StringLiteralToken, ErrorCode.ERR_ExpectedPPFile, reportError: isActive);
551_ => EatToken(SyntaxKind.DisableKeyword, ErrorCode.ERR_NullableDirectiveQualifierExpected, reportError: isActive)
560_ => EatToken(SyntaxKind.WarningsKeyword, ErrorCode.ERR_NullableDirectiveTargetExpected, reportError: !setting.IsMissing && isActive)
615id = this.EatToken(SyntaxKind.NumericLiteralToken, ErrorCode.WRN_IdentifierOrNumericLiteralExpected, reportError: isActive);
635style = this.EatToken(SyntaxKind.DisableKeyword, ErrorCode.WRN_IllegalPPWarning, reportError: isActive);
643var file = this.EatToken(SyntaxKind.StringLiteralToken, ErrorCode.WRN_IllegalPPChecksum, reportError: isActive);
644var guid = this.EatToken(SyntaxKind.StringLiteralToken, ErrorCode.WRN_IllegalPPChecksum, reportError: isActive && !file.IsMissing);
650guid = this.AddError(guid, ErrorCode.WRN_IllegalPPChecksum);
654var bytes = this.EatToken(SyntaxKind.StringLiteralToken, ErrorCode.WRN_IllegalPPChecksum, reportError: isActive && !guid.IsMissing);
659bytes = this.AddError(bytes, ErrorCode.WRN_IllegalPPChecksum);
667bytes = this.AddError(bytes, ErrorCode.WRN_IllegalPPChecksum);
680var warning = this.EatToken(SyntaxKind.WarningKeyword, ErrorCode.WRN_IllegalPragma, reportError: isActive);
691exclamation = this.AddError(exclamation, ErrorCode.ERR_PPShebangInProjectBasedProgram);
703colon = this.AddError(colon, ErrorCode.ERR_PPIgnoredNeedsFileBasedProgram);
708colon = this.AddError(colon, ErrorCode.ERR_PPIgnoredFollowsToken);
713colon = this.AddError(colon, ErrorCode.ERR_PPIgnoredFollowsIf);
736var errorCode = ErrorCode.ERR_EndOfPPLineExpected;
739errorCode = ErrorCode.WRN_EndOfPPLineExpected;
743errorCode = ErrorCode.ERR_MissingPPFile;
842return SyntaxFactory.IdentifierName(this.EatToken(SyntaxKind.IdentifierToken, ErrorCode.ERR_InvalidPreprocExpr));
Parser\DocumentationCommentParser.cs (10)
796SyntaxDiagnosticInfo crefInfo = new SyntaxDiagnosticInfo(rawInfo.Offset, rawInfo.Width, ErrorCode.WRN_ErrorOverride, rawInfo, rawInfo.Code);
928result = this.AddError(result, ErrorCode.WRN_BadXMLRefSyntax, result.ToFullString());
1006member = AddErrorAsWarning(member, ErrorCode.ERR_MisplacedExtension);
1040SyntaxDiagnosticInfo rawInfo = new SyntaxDiagnosticInfo(offset, width, ErrorCode.ERR_OvlOperatorExpected);
1041SyntaxDiagnosticInfo crefInfo = new SyntaxDiagnosticInfo(offset, width, ErrorCode.WRN_ErrorOverride, rawInfo, rawInfo.Code);
1193var misplacedToken = AddErrorAsWarning(EatToken(), ErrorCode.ERR_MisplacedUnchecked);
1332var misplacedToken = AddErrorAsWarning(EatToken(), ErrorCode.ERR_RefReadOnlyWrongOrdering);
1376typeSyntax = this.AddError(typeSyntax, ErrorCode.WRN_ErrorOverride,
1377new SyntaxDiagnosticInfo(ErrorCode.ERR_TypeParamMustBeIdentifier), $"{(int)ErrorCode.ERR_TypeParamMustBeIdentifier:d4}");
Parser\LanguageParser.cs (147)
233return AddError(node, position, 0, ErrorCode.ERR_InsufficientStack);
256namespaceToken = this.AddError(namespaceToken, ErrorCode.ERR_NamespaceNotAllowedInScript);
514AddError(typeDeclaration.CloseBraceToken, ErrorCode.ERR_InvalidMemberDecl, "}"));
528SyntaxFactory.MissingToken(SyntaxKind.CloseBraceToken), ErrorCode.ERR_RbraceExpected);
617IsScript ? ErrorCode.ERR_GlobalDefinitionOrStatementExpected : ErrorCode.ERR_EOFExpected);
647@extern = this.AddErrorToFirstToken(@extern, ErrorCode.ERR_ExternAfterElements);
706this.AddError(attribute.Target.Identifier, ErrorCode.ERR_GlobalAttributesNotFirst),
742IsScript ? ErrorCode.ERR_GlobalDefinitionOrStatementExpected : ErrorCode.ERR_EOFExpected);
791memberOrStatement = this.AddError(memberOrStatement, ErrorCode.ERR_TopLevelStatementAfterNamespaceOrType);
837@using = this.AddError(@using, ErrorCode.ERR_UsingAfterElements);
980unsafeToken = AddTrailingSkippedSyntax(unsafeToken, AddError(this.EatToken(), ErrorCode.ERR_BadStaticAfterUnsafe));
1252literalToken.GetDiagnostics().Contains(d => d.Code == (int)ErrorCode.ERR_NewlineInConst))
1792keyword = AddTrailingSkippedSyntax(keyword, this.AddError(this.EatToken(), ErrorCode.ERR_ExtensionDisallowsName));
1928this.AddError(ConvertToKeyword(this.EatToken()), ErrorCode.ERR_MisplacedRecord),
2070token = this.AddError(token, ErrorCode.ERR_InvalidMemberDecl, token.Text);
2221? this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_IdentifierExpected)
2231bounds.Add(_syntaxFactory.TypeConstraint(this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_TypeExpected)));
2256AddTrailingSkippedSyntax(bounds, this.AddError(separatorToken, ErrorCode.ERR_UnexpectedToken, SyntaxFacts.GetText(SyntaxKind.CommaToken)));
2263bounds.Add(_syntaxFactory.TypeConstraint(this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_TypeExpected)));
2328? this.AddError(this.EatToken(), ErrorCode.ERR_UnexpectedToken, SyntaxFacts.GetText(SyntaxKind.QuestionToken))
2342this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_NoEnumConstraint),
2351this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_NoDelegateConstraint),
2668this.AddError(SyntaxFactory.MissingToken(SyntaxKind.VoidKeyword), ErrorCode.ERR_MemberNeedsType));
3015ErrorCode.ERR_BadModifierLocation,
3059result = this.AddErrorToLastToken(incompleteMember, ErrorCode.ERR_NamespaceUnexpected);
3072ErrorCode.ERR_InvalidMemberDecl,
3171identifierOrThisOpt ??= this.AddError(CreateMissingIdentifierToken(), ErrorCode.ERR_IdentifierExpected);
3532: this.EatToken(SyntaxKind.ThisKeyword, ErrorCode.ERR_ThisOrBaseExpected);
3603semicolon = this.EatTokenWithPrejudice(ErrorCode.ERR_UnexpectedSemicolon);
3683initializer = this.AddErrorToFirstToken(initializer, ErrorCode.ERR_UnexpectedToken, colonToken.Text);
3841type = this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_IdentifierExpected);
3938separator = this.AddError(separator, ErrorCode.ERR_AliasQualAsExpression);
3971var misplacedToken = this.AddError(this.EatToken(), ErrorCode.ERR_MisplacedUnchecked);
3998AddError(type, ErrorCode.ERR_BadOperatorSyntax, firstToken.Text));
4040SyntaxDiagnosticInfo diagInfo = MakeError(opTokenErrorOffset, opTokenErrorWidth, ErrorCode.ERR_BadOperatorSyntax, SyntaxFacts.GetText(SyntaxKind.PlusToken));
4046type = this.AddError(type, ErrorCode.ERR_BadOperatorSyntax, SyntaxFacts.GetText(SyntaxKind.PlusToken));
4111SyntaxDiagnosticInfo diagInfo = MakeError(opTokenErrorOffset, opTokenErrorWidth, ErrorCode.ERR_OvlUnaryOperatorExpected);
4119SyntaxDiagnosticInfo diagInfo = MakeError(opTokenErrorOffset, opTokenErrorWidth, ErrorCode.ERR_OvlBinaryOperatorExpected);
4127SyntaxDiagnosticInfo diagInfo = MakeError(opTokenErrorOffset, opTokenErrorWidth, ErrorCode.ERR_OvlOperatorExpected);
4132opToken = this.AddError(opToken, ErrorCode.ERR_BadBinOpArgs, SyntaxFacts.GetText(opKind));
4138opToken = this.AddError(opToken, ErrorCode.ERR_BadUnOpArgs, SyntaxFacts.GetText(opKind));
4143opToken = this.AddError(opToken, ErrorCode.ERR_BadCompoundAssignmentOpArgs, SyntaxFacts.GetText(opKind));
4147opToken = this.AddError(opToken, ErrorCode.ERR_OvlOperatorExpected);
4193thisKeyword = this.AddError(thisKeyword, ErrorCode.ERR_UnexpectedGenericName);
4213semicolon = this.EatTokenWithPrejudice(ErrorCode.ERR_UnexpectedSemicolon);
4251identifier = this.AddError(identifier, ErrorCode.ERR_UnexpectedGenericName);
4291semicolon = this.EatTokenWithPrejudice(ErrorCode.ERR_UnexpectedSemicolon);
4384declaringKind == AccessorDeclaringKind.Event ? ErrorCode.ERR_AddOrRemoveExpected : ErrorCode.ERR_GetOrSetExpected) == PostSkipAction.Abort)
4417private PostSkipAction SkipBadAccessorListTokens(ref SyntaxToken openBrace, SyntaxListBuilder<AccessorDeclarationSyntax> list, ErrorCode error)
4517ErrorCode error)
4563ErrorCode error,
4613ErrorCode errorCode,
4651declaringKind == AccessorDeclaringKind.Event ? ErrorCode.ERR_AddOrRemoveExpected : ErrorCode.ERR_GetOrSetExpected);
4667declaringKind == AccessorDeclaringKind.Event ? ErrorCode.ERR_AddOrRemoveExpected : ErrorCode.ERR_GetOrSetExpected);
4738? ErrorCode.ERR_SemiOrLBraceOrArrowExpected
4739: ErrorCode.ERR_SemiOrLBraceExpected);
4967identifier = identifierIsOptional ? null : this.AddError(CreateMissingIdentifierToken(), ErrorCode.ERR_IdentifierExpected);
4981this.AddError(this.EatToken(), ErrorCode.ERR_BadArraySyntax),
5155identifier = this.AddError(identifier, ErrorCode.ERR_IdentifierExpected);
5161identifier = this.AddError(identifier, ErrorCode.ERR_UnexpectedGenericName);
5197semi = this.AddError(semi, ErrorCode.ERR_UnexpectedSemicolon);
5250eventToken = this.AddError(eventToken, ErrorCode.ERR_ExplicitEventFieldImpl);
5567missingIdentifier = this.AddError(missingIdentifier, offset, width, ErrorCode.ERR_IdentifierExpected);
5600name = this.AddError(name, ErrorCode.ERR_MultiTypeInDeclaration);
5650argumentList = this.AddError(argumentList, ErrorCode.ERR_BadVarDecl);
5663close = this.AddError(close, ErrorCode.ERR_ValueExpected);
5675expression = this.AddError(expression, ErrorCode.ERR_ArraySizeInDeclaration);
5689argumentList = this.AddError(argumentList, ErrorCode.ERR_CStyleArray);
5722name = this.AddError(name, ErrorCode.ERR_ConstValueRequired); // Error here for missing constant initializers
5729name = this.AddError(name, ErrorCode.ERR_FixedDimsRequired);
5889name = this.AddError(name, ErrorCode.ERR_UnexpectedGenericName);
5976? this.ParseIdentifierName(ErrorCode.ERR_ConstantExpected)
6053private IdentifierNameSyntax ParseIdentifierName(ErrorCode code = ErrorCode.ERR_IdentifierExpected)
6067private SyntaxToken ParseIdentifierToken(ErrorCode code = ErrorCode.ERR_IdentifierExpected)
6081result = this.AddError(result, ErrorCode.ERR_InvalidExprTerm, this.CurrentToken.Text);
6089identifierToken = this.AddError(identifierToken, ErrorCode.ERR_BadAwaitAsIdentifier);
6193this.AddError(CreateMissingIdentifierToken(), ErrorCode.ERR_IdentifierExpected));
6722? this.AddError(this.EatToken(), ErrorCode.ERR_IllegalVarianceSyntax)
6763result = this.AddError(result, ErrorCode.ERR_TypeExpected);
6840separator = this.AddError(separator, ErrorCode.ERR_AliasQualAsExpression);
6894AddError(separator, ErrorCode.ERR_ExplicitEventFieldImpl));
6950separator = this.AddError(separator, ErrorCode.ERR_UnexpectedAliasedName);
7014separator = this.AddError(separator, ErrorCode.ERR_AliasQualAsExpression);
7092separator = this.AddError(separator, ErrorCode.ERR_UnexpectedAliasedName);
7936list[i] = this.AddError(this.CreateMissingIdentifierName(), offset: 0, list[i].Width, ErrorCode.ERR_ValueExpected);
7970var missing = this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_TupleTooFewElements);
8003token = this.AddError(token, mode == ParseTypeMode.Parameter ? ErrorCode.ERR_NoVoidParameter : ErrorCode.ERR_NoVoidHere);
8026mode == ParseTypeMode.NewExpression ? ErrorCode.ERR_BadNewExpr : ErrorCode.ERR_TypeExpected);
8180unmanagedCallingConventions = AddError(unmanagedCallingConventions, ErrorCode.ERR_CannotSpecifyManagedWithUnmanagedSpecifiers);
9084? ErrorCode.ERR_SemiOrLBraceOrArrowExpected
9085: ErrorCode.ERR_SemiOrLBraceExpected)
9329!semicolonToken.GetDiagnostics().Contains(diagnosticInfo => (ErrorCode)diagnosticInfo.Code == ErrorCode.ERR_SemicolonExpected))
9331semicolonToken = this.AddError(semicolonToken, ErrorCode.ERR_SemicolonExpected);
9404tryBlock = this.AddErrorToLastToken(tryBlock, ErrorCode.ERR_ExpectedEndTry);
9754skippedForToken = this.AddError(skippedForToken, ErrorCode.ERR_SyntaxError, SyntaxFacts.GetText(SyntaxKind.ForEachKeyword));
9765var @in = this.EatToken(SyntaxKind.InKeyword, ErrorCode.ERR_InExpected);
9768@in = this.AddError(@in, ErrorCode.ERR_BadForeachDecl);
10010AddErrorToFirstToken(nextExpression, ErrorCode.ERR_UnexpectedToken, nextExpression.GetFirstToken().Text));
10092this.EatToken(SyntaxKind.IfKeyword, ErrorCode.ERR_ElseCannotStartStatement),
10151returnOrBreak = this.AddError(returnOrBreak, ErrorCode.ERR_EmptyYield);
10229expression = this.AddError(expression, ErrorCode.ERR_SwitchGoverningExpressionRequiresParens);
10263ParseIdentifierName(ErrorCode.ERR_ConstantExpected),
10275node = this.AddError(node, ErrorCode.ERR_DiscardPatternInSwitchStatement);
10571mods[i] = this.AddError(mod, ErrorCode.ERR_BadMemberFlag, mod.Text);
10790type = this.AddError(type, ErrorCode.ERR_NoVoidHere);
10831mod = this.AddError(mod, ErrorCode.ERR_NoModifiersOnUsing);
10835mod = this.AddError(mod, ErrorCode.ERR_BadMemberFlag, mod.Text);
10972modifier = this.AddError(modifier, ErrorCode.ERR_BadMemberFlag, modifier.Text);
11460return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, SyntaxFacts.GetText(tk));
11507this.AddError(this.EatToken(), ErrorCode.ERR_InvalidExprTerm, this.CurrentToken.Text));
11516: this.AddError(result, ErrorCode.ERR_InvalidExprTerm, SyntaxFacts.GetText(tk));
11600leftOperand.Kind == SyntaxKind.IsPatternExpression ? ErrorCode.ERR_UnexpectedToken : ErrorCode.WRN_PrecedenceInversion,
11694return this.AddError(conditionalExpression, ErrorCode.ERR_ConditionalInInterpolation);
11894ErrorCode.ERR_TripleDotNotAllowed);
11991return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, this.CurrentToken.Text);
12020return this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_InvalidExprTerm, this.CurrentToken.Text);
12076return this.AddError(_syntaxFactory.RefExpression(refKeyword, this.ParseExpressionCore()), ErrorCode.ERR_InvalidExprTerm, SyntaxFacts.GetText(tk));
12090expr = this.AddError(expr, ErrorCode.ERR_InvalidExprTerm, SyntaxFacts.GetText(tk));
12101expr = this.AddError(expr, ErrorCode.ERR_ExpressionExpected);
12115ErrorCode.ERR_InvalidExprTerm,
12120expr = this.AddError(expr, ErrorCode.ERR_InvalidExprTerm, SyntaxFacts.GetText(tk));
12160this.ConvertToMissingWithTrailingTrivia(this.AddError(this.EatToken(), ErrorCode.ERR_UnexpectedAliasedName), SyntaxKind.DotToken),
12191this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_IdentifierExpected));
12602expression = this.ParseIdentifierName(ErrorCode.ERR_ValueExpected);
12606expression = this.ParseIdentifierName(ErrorCode.ERR_MissingArgument);
12898this.AddError(this.CreateMissingIdentifierName(), ErrorCode.ERR_TupleTooFewElements)));
13408this.EatToken(SyntaxKind.OpenParenToken, ErrorCode.ERR_BadNewExpr, reportError: type?.ContainsDiagnostics == false),
13619var size = this.AddError(this.ParseExpressionCore(), ErrorCode.ERR_InvalidArray);
13693var size = this.AddError(this.ParseExpressionCore(), ErrorCode.ERR_InvalidStackAllocArray);
13699var comma = this.AddError(this.EatToken(), ErrorCode.ERR_InvalidStackAllocArray);
14135: this.AddError(fromClause, ErrorCode.WRN_PrecedenceInversion, SyntaxFacts.GetText(SyntaxKind.FromKeyword)),
14174this.EatToken(SyntaxKind.SelectKeyword, ErrorCode.ERR_ExpectedSelectOrGroup),
14230onKeyword: this.EatContextualToken(SyntaxKind.OnKeyword, ErrorCode.ERR_ExpectedContextualKeywordOn),
14232equalsKeyword: this.EatContextualToken(SyntaxKind.EqualsKeyword, ErrorCode.ERR_ExpectedContextualKeywordEquals),
14337this.EatContextualToken(SyntaxKind.ByKeyword, ErrorCode.ERR_ExpectedContextualKeywordBy),
14648node = this.AddError(node, ErrorCode.ERR_UnexpectedToken, trailingTrash[0].ToString());
Parser\Lexer.cs (28)
621this.AddError(TextWindow.Position + 1, width: 1, ErrorCode.ERR_ExpectedVerbatimLiteral);
630this.AddError(ErrorCode.ERR_ExpectedVerbatimLiteral);
677this.AddError(ErrorCode.ERR_EndifDirectiveExpected);
682this.AddError(ErrorCode.ERR_EndRegionDirectiveExpected);
731this.AddError(ErrorCode.ERR_UnexpectedCharacter, messageText);
915this.AddError(MakeError(ErrorCode.ERR_LegacyObjectIdSyntax));
952this.AddError(MakeError(ErrorCode.ERR_InvalidReal));
1024this.AddError(MakeError(start, TextWindow.Position - start, ErrorCode.ERR_InvalidNumber));
1056this.AddError(MakeError(ErrorCode.ERR_InvalidNumber));
1184this.AddError(MakeError(ErrorCode.ERR_IntOverflow));
1198this.AddError(MakeError(ErrorCode.ERR_IntOverflow));
1204this.AddError(MakeError(ErrorCode.ERR_IntOverflow));
1216this.AddError(MakeError(ErrorCode.ERR_FloatOverflow, "double"));
1228this.AddError(MakeError(ErrorCode.ERR_FloatOverflow, "float"));
1263this.AddError(this.MakeError(start, end - start, ErrorCode.ERR_FloatOverflow, "decimal"));
1613this.AddError(start, atCount, ErrorCode.ERR_IllegalAtSequence);
1954this.AddError(TextWindow.Position, width: 1, ErrorCode.ERR_UnexpectedCharacter, '@');
1993var error = new SyntaxDiagnosticInfo(offset: 0, width: 1, code: ErrorCode.ERR_BadDirectivePlacement);
2051this.AddError(ErrorCode.ERR_OpenEndedComment);
2100ErrorCode.ERR_Merge_conflict_marker_encountered);
2816this.AddError(this.LexemeStartPosition, this.CurrentLexemeWidth, ErrorCode.ERR_OpenEndedComment);
3719this.AddCrefError(ErrorCode.ERR_UnexpectedCharacter, ".");
3858this.AddError(ErrorCode.ERR_ExpectedVerbatimLiteral);
3865this.AddCrefError(ErrorCode.ERR_UnexpectedCharacter, info.Text);
3876this.AddCrefError(ErrorCode.ERR_UnexpectedCharacter, info.Text);
3969private void AddCrefError(ErrorCode code, params object[] args)
3982this.AddError(ErrorCode.WRN_ErrorOverride, info, info.Code);
4843ErrorCode.ERR_IllegalEscape);
Parser\Lexer_StringLiteral.cs (28)
30this.AddError(ErrorCode.ERR_RawStringNotInDirectives);
64this.AddError(ErrorCode.ERR_NewlineInConst);
80this.AddError((_builder.Length != 0) ? ErrorCode.ERR_TooManyCharsInConst : ErrorCode.ERR_EmptyCharConst);
185this.AddError(start, TextWindow.Position - start, ErrorCode.ERR_IllegalEscape);
205this.AddError(start, width: TextWindow.Position - start, ErrorCode.ERR_IllegalAtSequence);
233this.AddError(ErrorCode.ERR_UnterminatedStringLit);
480TrySetError(_lexer.MakeError(start, window.Position - start, ErrorCode.ERR_StringMustStartWithQuoteCharacter));
491TrySetError(_lexer.MakeError(start, window.Position - start, ErrorCode.ERR_IllegalAtSequence));
497TrySetError(_lexer.MakeError(window.Position - startingQuoteCount, startingQuoteCount, ErrorCode.ERR_NotEnoughQuotesForRawString));
558width: 1, ErrorCode.ERR_UnterminatedStringLit));
581width: SyntaxFacts.IsNewLine(_lexer.TextWindow.PeekChar()) ? 1 : 0, ErrorCode.ERR_UnterminatedRawString));
600ErrorCode.ERR_TooManyQuotesForRawString));
615_lexer.TextWindow.Position, width: 0, ErrorCode.ERR_UnterminatedRawString));
628ErrorCode.ERR_RawStringDelimiterOnOwnLine));
647ErrorCode.ERR_TooManyQuotesForRawString));
701TrySetError(_lexer.MakeError(escapeStart, _lexer.TextWindow.Position - escapeStart, ErrorCode.ERR_EscapedCurly, ch));
732_lexer.TextWindow.Position - closeQuoteCount, closeQuoteCount, ErrorCode.ERR_RawStringMustContainContent));
832TrySetError(_lexer.MakeError(pos, 1, ErrorCode.ERR_UnescapedCurly, "}"));
850ErrorCode.ERR_TooManyCloseBracesForRawString));
886TrySetError(_lexer.MakeError(openBracePosition - 1, 2, ErrorCode.ERR_UnclosedExpressionHole));
921ErrorCode.ERR_TooManyOpenBracesForRawString));
936ErrorCode.ERR_UnclosedExpressionHole));
944ErrorCode.ERR_NotEnoughCloseBracesForRawString));
984TrySetError(_lexer.MakeError(pos, 1, ErrorCode.ERR_EscapedCurly, ch));
1001_lexer.TextWindow.Position, 1, ErrorCode.ERR_UnexpectedCharacter, ch));
1041TrySetError(_lexer.MakeError(_lexer.TextWindow.Position, 1, ErrorCode.ERR_SyntaxError, endingChar.ToString()));
1073TrySetError(_lexer.MakeError(_lexer.TextWindow.Position, 1, ErrorCode.ERR_SyntaxError, endingChar.ToString()));
Parser\SyntaxParser.cs (29)
558private SyntaxToken CreateMissingToken(SyntaxKind expected, ErrorCode code, bool reportError)
589protected SyntaxToken EatToken(SyntaxKind kind, ErrorCode code, bool reportError = true)
638protected SyntaxToken EatTokenWithPrejudice(ErrorCode errorCode, params object[] args)
645protected SyntaxToken EatContextualToken(SyntaxKind kind, ErrorCode code)
676var code = GetExpectedTokenErrorCode(expected, actual);
677if (code == ErrorCode.ERR_SyntaxError)
681else if (code == ErrorCode.ERR_IdentifierExpectedKW)
700private static ErrorCode GetExpectedTokenErrorCode(SyntaxKind expected, SyntaxKind actual)
707return ErrorCode.ERR_IdentifierExpectedKW; // A keyword -- use special message.
711return ErrorCode.ERR_IdentifierExpected;
715return ErrorCode.ERR_SemicolonExpected;
720return ErrorCode.ERR_CloseParenExpected;
722return ErrorCode.ERR_LbraceExpected;
724return ErrorCode.ERR_RbraceExpected;
728return ErrorCode.ERR_SyntaxError;
749protected TNode AddError<TNode>(TNode node, ErrorCode code) where TNode : GreenNode
754protected TNode AddErrorAsWarning<TNode>(TNode node, ErrorCode code, params object[] args) where TNode : GreenNode
757return AddError(node, ErrorCode.WRN_ErrorOverride, MakeError(node, code, args), (int)code);
760protected TNode AddError<TNode>(TNode nodeOrToken, ErrorCode code, params object[] args) where TNode : GreenNode
898protected TNode AddError<TNode>(TNode node, int offset, int length, ErrorCode code, params object[] args) where TNode : CSharpSyntaxNode
903protected TNode AddErrorToFirstToken<TNode>(TNode node, ErrorCode code) where TNode : CSharpSyntaxNode
909protected TNode AddErrorToFirstToken<TNode>(TNode node, ErrorCode code, params object[] args) where TNode : CSharpSyntaxNode
915protected TNode AddErrorToLastToken<TNode>(TNode node, ErrorCode code) where TNode : CSharpSyntaxNode
936protected static SyntaxDiagnosticInfo MakeError(int offset, int width, ErrorCode code)
941protected static SyntaxDiagnosticInfo MakeError(int offset, int width, ErrorCode code, params object[] args)
946protected static SyntaxDiagnosticInfo MakeError(GreenNode node, ErrorCode code, params object[] args)
951protected static SyntaxDiagnosticInfo MakeError(ErrorCode code, params object[] args)
1094new SyntaxDiagnosticInfo(finalDiagnosticOffset, diagnostic.Width, (ErrorCode)diagnostic.Code, diagnostic.Arguments));
1155return AddError(node, ErrorCode.WRN_ErrorOverride, info, (int)info.Code);
Symbols\AssemblySymbol.cs (3)
369DiagnosticInfo diagnosticInfo = new CSDiagnosticInfo(ErrorCode.ERR_CycleInTypeForwarder, emittedName.FullName, this.Name);
375var diagnosticInfo = new CSDiagnosticInfo(ErrorCode.ERR_TypeForwardedToMultipleAssemblies, forwardingModule, this, emittedName.FullName, destination1, destination2);
1027warnings.Add(ErrorCode.WRN_MultiplePredefTypes, NoLocation.Singleton, result, result.ContainingAssembly);
Symbols\Attributes\AttributeData.cs (11)
246((BindingDiagnosticBag)arguments.Diagnostics).Add(ErrorCode.ERR_IllegalUnsafe, arguments.AttributeSyntaxOpt.Location);
297((BindingDiagnosticBag)arguments.Diagnostics).Add(ErrorCode.WRN_MemberNotNullBadMember, arguments.AttributeSyntaxOpt.Location, memberName);
375diagnostics.Add(ErrorCode.ERR_SecurityAttributeMissingAction, nodeOpt != null ? nodeOpt.Name.Location : NoLocation.Singleton);
398diagnostics.Add(ErrorCode.ERR_PrincipalPermissionInvalidAction, syntaxLocation, displayString);
428diagnostics.Add(ErrorCode.ERR_SecurityAttributeInvalidAction, syntaxLocation, nodeOpt != null ? nodeOpt.GetErrorDisplayName() : "", displayString);
444diagnostics.Add(ErrorCode.ERR_SecurityAttributeInvalidActionTypeOrMethod, syntaxLocation, displayString);
458diagnostics.Add(ErrorCode.ERR_SecurityAttributeInvalidActionAssembly, syntaxLocation, displayString);
534diagnostics.Add(ErrorCode.ERR_PermissionSetAttributeInvalidFile, argSyntaxLocation, fileName ?? "<null>", filePropName);
590diagnostics.Add(ErrorCode.ERR_InvalidAttributeArgument, this.GetAttributeArgumentLocation(0), nodeOpt != null ? nodeOpt.GetErrorDisplayName() : "");
616diagnostics.Add(ErrorCode.ERR_InvalidAttributeArgument, this.GetAttributeArgumentLocation(0), node.GetErrorDisplayName());
633diagnostics.Add(ErrorCode.ERR_InvalidAttributeArgument, attributeArgumentSyntaxLocation, nodeOpt != null ? nodeOpt.GetErrorDisplayName() : "");
Symbols\ConstraintsHelper.cs (30)
106diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportByRefLikeGenerics, location);
118diagnostics.Add(ErrorCode.ERR_ClassIsCombinedWithRefStruct, typeParameter.GetFirstLocation());
179diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(constraintTypeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_CircularConstraint, constraintTypeParameter, typeParameter))));
198ErrorCode errorCode;
201errorCode = ErrorCode.ERR_ConWithUnmanagedCon;
205errorCode = ErrorCode.ERR_ConWithValCon;
251diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(underlyingTypeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_CircularConstraint, underlyingTypeParameter, typeParameter))));
303diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BaseConstraintConflict, typeParameter, constraintDeducedBase, deducedBaseType))));
712args.Diagnostics.Add(ErrorCode.ERR_BogusType, args.Location, type);
749args.Diagnostics.Add(ErrorCode.ERR_BogusType, args.Location, type);
959diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BadTypeArgument, typeArgument.Type))));
977diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_RuntimeDoesNotSupportByRefLikeGenerics))));
984diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_NotRefStructConstraintNotSatisfied, containingSymbol.ConstructedFrom(), typeParameter, typeArgument.Type))));
992diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_GenericArgIsStaticClass, typeArgument.Type))));
1001diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_RefConstraintNotSatisfied, containingSymbol.ConstructedFrom(), typeParameter, typeArgument.Type))));
1017diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_UnmanagedConstraintNotSatisfied, containingSymbol.ConstructedFrom(), typeParameter, typeArgument.Type))));
1043diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_ValConstraintNotSatisfied, containingSymbol.ConstructedFrom(), typeParameter, typeArgument.Type))));
1094new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_GenericConstraintNotSatisfiedInterfaceWithStaticAbstractMembers, iface, member))));
1128diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_NewConstraintNotSatisfied, containingSymbol.ConstructedFrom(), typeParameter, typeArgument.Type))));
1132diagnosticsBuilder.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_NewConstraintCannotHaveRequiredMembers, containingSymbol.ConstructedFrom(), typeParameter, typeArgument.Type))));
1151nullabilityDiagnosticsBuilderOpt.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.WRN_NullabilityMismatchInTypeParameterNotNullConstraint, containingSymbol.ConstructedFrom(), typeParameter, typeArgument))));
1158nullabilityDiagnosticsBuilderOpt.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.WRN_NullabilityMismatchInTypeParameterReferenceTypeConstraint, containingSymbol.ConstructedFrom(), typeParameter, typeArgument))));
1182nullabilityDiagnosticsBuilderOpt.Add(new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.WRN_NullabilityMismatchInTypeParameterConstraint, containingSymbol.ConstructedFrom(), constraintType, typeParameter, typeArgument))));
1188ErrorCode errorCode;
1191errorCode = ErrorCode.ERR_GenericConstraintNotSatisfiedRefType;
1195errorCode = constraintType.Type.IsInterfaceType() ? ErrorCode.ERR_GenericConstraintNotSatisfiedNullableInterface : ErrorCode.ERR_GenericConstraintNotSatisfiedNullableEnum;
1199errorCode = ErrorCode.ERR_GenericConstraintNotSatisfiedTyVar;
1203errorCode = ErrorCode.ERR_GenericConstraintNotSatisfiedValType;
1452return new TypeParameterDiagnosticInfo(typeParameter, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BaseConstraintConflict, typeParameter, deducedBase, classConflict ? "class" : "struct")));
Symbols\FunctionPointers\FunctionPointerMethodSymbol.cs (11)
61diagnostics.Add(ErrorCode.ERR_DupReturnTypeMod, modifier.GetLocation(), modifier.Text);
66diagnostics.Add(ErrorCode.ERR_InvalidFuncPointerReturnTypeModifier, modifier.GetLocation(), modifier.Text);
75diagnostics.Add(ErrorCode.ERR_NoVoidHere, returnTypeParameter.Location);
83diagnostics.Add(ErrorCode.ERR_MethodReturnCantBeRefAny, returnTypeParameter.Location, returnType);
119diagnostics.Add(ErrorCode.ERR_CannotSpecifyManagedWithUnmanagedSpecifiers, callingConventionSyntax.UnmanagedCallingConventionList.GetLocation());
166diagnostics.Add(ErrorCode.ERR_InvalidFunctionPointerCallingConvention, unmanagedList.OpenBracketToken.GetLocation(), "");
217specifierType = new MissingMetadataTypeSymbol.TopLevel(compilation.Assembly.CorLibrary.Modules[0], ref metadataName, new CSDiagnosticInfo(ErrorCode.ERR_TypeNotFound, typeName));
221diagnostics.Add(ErrorCode.ERR_TypeMustBePublic, specifier.GetLocation(), specifierType);
233diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportUnmanagedDefaultCallConv, errorLocation);
781MergeUseSiteInfo(ref info, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_UnsupportedCallingConvention, this)));
792MergeUseSiteInfo(ref info, new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BindToBogus, this)));
Symbols\MissingMetadataTypeSymbol.cs (6)
80return new CSDiagnosticInfo(ErrorCode.ERR_NoTypeDef, this, containingAssembly.Identity);
89return new CSDiagnosticInfo(ErrorCode.ERR_NoTypeDefFromModule, this, containingModule.Name);
112return new CSDiagnosticInfo(ErrorCode.ERR_MissingTypeInSource, this);
121return new CSDiagnosticInfo(ErrorCode.ERR_MissingTypeInAssembly, this, containingAssembly.Name);
131return new CSDiagnosticInfo(ErrorCode.ERR_BogusType, string.Empty);
324new CSDiagnosticInfo(ErrorCode.ERR_PredefinedTypeNotFound, MetadataHelpers.BuildQualifiedName(_namespaceName, MetadataName)) :
Symbols\ObsoleteAttributeHelpers.cs (20)
183return new CSDiagnosticInfo(ErrorCode.WRN_WindowsExperimental,
194return new CustomObsoleteDiagnosticInfo(MessageProvider.Instance, (int)ErrorCode.WRN_Experimental, data,
199return new CustomObsoleteDiagnosticInfo(MessageProvider.Instance, (int)ErrorCode.WRN_ExperimentalWithMessage, data,
207var errorCode = (message: data.Message, isError: data.IsError, isColInit) switch
210(message: null, isError: _, isColInit: true) => ErrorCode.WRN_DeprecatedCollectionInitAdd,
211(message: null, isError: _, isColInit: false) => ErrorCode.WRN_DeprecatedSymbol,
212(message: { }, isError: true, isColInit: true) => ErrorCode.ERR_DeprecatedCollectionInitAddStr,
213(message: { }, isError: true, isColInit: false) => ErrorCode.ERR_DeprecatedSymbolStr,
214(message: { }, isError: false, isColInit: true) => ErrorCode.WRN_DeprecatedCollectionInitAddStr,
215(message: { }, isError: false, isColInit: false) => ErrorCode.WRN_DeprecatedSymbolStr
228return (ErrorCode)diagnosticInfo.Code is
229(ErrorCode.WRN_Experimental or ErrorCode.WRN_ExperimentalWithMessage or ErrorCode.WRN_WindowsExperimental or ErrorCode.WRN_DeprecatedCollectionInitAdd or
230ErrorCode.WRN_DeprecatedSymbol or ErrorCode.ERR_DeprecatedCollectionInitAddStr or
231ErrorCode.ERR_DeprecatedSymbolStr or ErrorCode.WRN_DeprecatedCollectionInitAddStr or
232ErrorCode.WRN_DeprecatedSymbolStr);
Symbols\Source\ExplicitInterfaceHelpers.cs (18)
203diagnostics.Add(ErrorCode.ERR_ExplicitInterfaceImplementationInNonClassOrStruct, memberLocation, implementingMember);
213diagnostics.Add(ErrorCode.ERR_ExplicitInterfaceImplementationNotInterface, location, explicitInterfaceType);
231diagnostics.Add(ErrorCode.WRN_NullabilityMismatchInExplicitlyImplementedInterface, location);
235diagnostics.Add(ErrorCode.ERR_ClassDoesntImplementInterface, location, implementingMember, explicitInterfaceNamedType);
294diagnostics.Add(ErrorCode.ERR_ExplicitMethodImplAccessor, memberLocation, implementingMember, interfaceMember);
300diagnostics.Add(ErrorCode.ERR_BogusExplicitImpl, memberLocation, implementingMember, interfaceMember);
306diagnostics.Add(ErrorCode.ERR_ExplicitImplParams, memberLocation, implementingMember, interfaceMember);
327var errorType = implementingMember.Kind is SymbolKind.Method
328? ErrorCode.ERR_ExplicitInterfaceMemberReturnTypeMismatch
329: ErrorCode.ERR_ExplicitInterfaceMemberTypeMismatch;
335diagnostics.Add(ErrorCode.ERR_InterfaceMemberNotFound, memberLocation, implementingMember);
346diagnostics.Add(ErrorCode.ERR_BadAccess, memberLocation, implementedMember);
370diagnostics.Add(ErrorCode.ERR_BadAccess, memberLocation, accessor);
395diagnostics.Add(ErrorCode.ERR_ImplBadTupleNames, memberLocation, implementingMember, implementedMember);
406diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportStaticAbstractMembersInInterfaces, implementingMember.GetFirstLocation());
447diagnostics.Add(ErrorCode.ERR_ExplicitImplCollisionOnRefOut, explicitInterfaceType.GetFirstLocation(), explicitInterfaceType, implementedMember);
452diagnostics.Add(ErrorCode.WRN_ExplicitImplCollision, implementingMember.GetFirstLocation(), implementingMember);
464diagnostics.Add(ErrorCode.WRN_ExplicitImplCollision, implementingMember.GetFirstLocation(), implementingMember);
Symbols\Source\FieldSymbolWithAttributesAndModifiers.cs (8)
185diagnostics.Add(ErrorCode.ERR_StructOffsetOnBadField, arguments.AttributeSyntaxOpt.Name.Location);
193diagnostics.Add(ErrorCode.ERR_InvalidAttributeArgument, attribute.GetAttributeArgumentLocation(0), arguments.AttributeSyntaxOpt.GetErrorDisplayName());
208diagnostics.Add(ErrorCode.ERR_RequiresUnsafeAttributeInSource, arguments.AttributeSyntaxOpt.Location);
281diagnostics.Add(ErrorCode.ERR_FieldHasMultipleDistinctConstantValues, arguments.AttributeSyntaxOpt.Location);
286diagnostics.Add(ErrorCode.ERR_FieldHasMultipleDistinctConstantValues, arguments.AttributeSyntaxOpt.Location);
302diagnostics.Add(ErrorCode.ERR_FieldHasMultipleDistinctConstantValues, arguments.AttributeSyntaxOpt.Location);
333diagnostics.Add(ErrorCode.ERR_StructOffsetOnBadStruct, allAttributeSyntaxNodes[i].Name.Location);
341diagnostics.Add(ErrorCode.ERR_MissingStructOffset, this.ErrorLocation, this.AttributeOwner);
Symbols\Source\ModifierUtils.cs (12)
97diagnostics.Add(ErrorCode.ERR_StaticNotVirtual, errorLocation, ModifierUtils.ConvertSingleModifierToSyntaxText(oneError));
101diagnostics.Add(ErrorCode.ERR_BadMemberFlag, errorLocation, ConvertSingleModifierToSyntaxText(oneError));
139diagnostics.Add(ErrorCode.ERR_PartialMisplaced, partialToken.GetLocation());
144diagnostics.Add(ErrorCode.ERR_PartialMisplaced, errorLocation);
166diagnostics.Add(ErrorCode.ERR_BadMemberFlag, errorLocation, ConvertSingleModifierToSyntaxText(DeclarationModifiers.Sealed));
207diagnostics.Add(ErrorCode.ERR_InvalidModifierForLanguageVersion, errorLocation,
466ErrorCode.ERR_PartialMisplaced,
501ErrorCode.ERR_DuplicateModifier,
514diagnostics.Add(ErrorCode.ERR_BadMemberProtection, errorLocation);
530diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportProtectedAccessForInterfaceMember, errorLocation);
547diagnostics.Add(ErrorCode.ERR_RequiredMemberCannotBeLessVisibleThanContainingType, errorLocation, symbol, symbol.ContainingType);
553diagnostics.Add(ErrorCode.ERR_RequiredMemberMustBeSettable, errorLocation, symbol);
Symbols\Source\ParameterHelpers.cs (33)
152diagnostics.Add(ErrorCode.ERR_NoVoidParameter, syntax.Type.Location);
273diagnostics.Add(ErrorCode.ERR_ThisInBadContext, thisKeyword.GetLocation());
289diagnostics.Add(ErrorCode.ERR_IllegalVarArgs, arglistToken.GetLocation());
295diagnostics.Add(ErrorCode.ERR_VarargsLast, concreteParam.GetLocation());
315diagnostics.Add(ErrorCode.ERR_IllegalRefParam, refnessKeyword.GetLocation());
579diagnostics.Add(ErrorCode.ERR_UnderspecifiedExtension, extensionMember.GetFirstLocation(), typeParameter);
617diagnostics.Add(ErrorCode.ERR_ThisInBadContext, modifier.GetLocation());
629diagnostics.Add(ErrorCode.ERR_BadParamModThis, modifier.GetLocation());
699diagnostics.Add(ErrorCode.ERR_IllegalParams, modifier.GetLocation());
707diagnostics.Add(ErrorCode.ERR_BadParamModThis, modifier.GetLocation());
732diagnostics.Add(ErrorCode.ERR_ImplicitlyTypedParamsParameter, modifier, parameterIdentifier);
777diagnostics.Add(ErrorCode.ERR_ScopedAfterInOutRefReadonly, modifier.GetLocation());
788diagnostics.Add(ErrorCode.ERR_InvalidModifierAfterScoped, nextModifier.GetLocation(), nextModifier.Text);
801diagnostics.Add(ErrorCode.ERR_RefReadOnlyWrongOrdering, modifier);
812diagnostics.Add(ErrorCode.ERR_BadFuncPointerParamModifier, modifier.GetLocation(), SyntaxFacts.GetText(modifier.Kind()));
824diagnostics.Add(ErrorCode.ERR_DupParamMod, modifier.GetLocation(), SyntaxFacts.GetText(modifier.Kind()));
829diagnostics.Add(ErrorCode.ERR_BadParameterModifiers, modifier.GetLocation(), SyntaxFacts.GetText(modifier.Kind()), SyntaxFacts.GetText(otherModifierKind));
834diagnostics.Add(ErrorCode.ERR_ParamsCantBeWithModifier, modifier.GetLocation(), SyntaxFacts.GetText(otherModifierKind));
863diagnostics.Add(ErrorCode.ERR_BadThisParam, thisKeyword.GetLocation(), owner?.Name ?? "");
868diagnostics.Add(ErrorCode.ERR_IllegalParams, paramsKeyword.GetLocation());
892diagnostics.Add(ErrorCode.ERR_DefaultValueBeforeRequiredValue, loc);
899diagnostics.Add(ErrorCode.ERR_MethodArgCantBeRefAny, syntax.Location, typeWithAnnotations.Type);
905diagnostics.Add(ErrorCode.ERR_ParamsLast, syntax.GetLocation());
942diagnostics.Add(ErrorCode.ERR_ExtensionParameterDisallowsDefaultValue, parameterSyntax.GetLocation());
960diagnostics.Add(ErrorCode.ERR_RefOutDefaultValue, refnessKeyword.GetLocation());
966diagnostics.Add(ErrorCode.ERR_DefaultValueForParamsParameter, paramsKeyword.GetLocation());
976diagnostics.Add(ErrorCode.ERR_DefaultValueForExtensionParameter, thisKeyword.GetLocation());
985diagnostics.Add(ErrorCode.ERR_DefaultValueMustBeConstant, parameterSyntax.Default.Value.Location, parameterSyntax.Identifier.ValueText);
999diagnostics.Add(ErrorCode.ERR_NoConversionForDefaultParam, parameterSyntax.Identifier.GetLocation(),
1011diagnostics.Add(ErrorCode.ERR_NotNullRefDefaultParameter, parameterSyntax.Identifier.GetLocation(),
1033diagnostics.Add(ErrorCode.ERR_NoConversionForNubDefaultParam, parameterSyntax.Identifier.GetLocation(),
1062diagnostics.Add(ErrorCode.WRN_DefaultValueForUnconsumedLocation,
1070diagnostics.Add(ErrorCode.WRN_RefReadonlyParameterDefaultValue, parameterSyntax.Default.Value, parameterSyntax.Identifier.ValueText);
Symbols\Source\SourceAssemblySymbol.cs (47)
599diagnostics.Add(ErrorCode.WRN_DelaySignButNoKey, NoLocation.Singleton);
606diagnostics.Add(ErrorCode.ERR_PublicSignNetModule, NoLocation.Singleton);
610diagnostics.Add(ErrorCode.ERR_PublicSignButNoKey, NoLocation.Singleton);
628diagnostics.Add(ErrorCode.ERR_SignButNoPrivateKey, NoLocation.Singleton, StrongNameKeys.KeyFilePath);
744diagnostics.Add(ErrorCode.ERR_FriendAssemblySNReq, oneKey.Value.Item1, oneKey.Value.Item2);
775diagnostics.Add(ErrorCode.WRN_CmdOptionConflictsSource, NoLocation.Singleton, "DelaySign", AttributeDescription.AssemblyDelaySignAttribute.FullName);
780diagnostics.Add(ErrorCode.WRN_CmdOptionConflictsSource, NoLocation.Singleton,
816diagnostics.Add(ErrorCode.ERR_CmdOptionConflictsSource, NoLocation.Singleton, AttributeDescription.AssemblyKeyNameAttribute.FullName, "CryptoKeyContainer");
820diagnostics.Add(ErrorCode.WRN_CmdOptionConflictsSource, NoLocation.Singleton, "CryptoKeyContainer", AttributeDescription.AssemblyKeyNameAttribute.FullName);
829diagnostics.Add(ErrorCode.WRN_AttributeIgnoredWhenPublicSigning, NoLocation.Singleton, AttributeDescription.AssemblyKeyNameAttribute.FullName);
853diagnostics.Add(ErrorCode.ERR_CmdOptionConflictsSource, NoLocation.Singleton, AttributeDescription.AssemblyKeyFileAttribute.FullName, "CryptoKeyFile");
857diagnostics.Add(ErrorCode.WRN_CmdOptionConflictsSource, NoLocation.Singleton, "CryptoKeyFile", AttributeDescription.AssemblyKeyFileAttribute.FullName);
866diagnostics.Add(ErrorCode.WRN_AttributeIgnoredWhenPublicSigning, NoLocation.Singleton, AttributeDescription.AssemblyKeyFileAttribute.FullName);
983diagnostics.Add(ErrorCode.ERR_NetModuleNameMismatch, NoLocation.Singleton, moduleName, fileName);
1000diagnostics.Add(ErrorCode.ERR_NetModuleNameMustBeUnique, NoLocation.Singleton, m.Name);
1014diagnostics.Add(ErrorCode.ERR_AgnosticToMachineModule, NoLocation.Singleton, m);
1020diagnostics.Add(ErrorCode.ERR_ConflictingMachineModule, NoLocation.Singleton, m);
1038diagnostics.Add(ErrorCode.ERR_MissingNetModuleReference, NoLocation.Singleton, referencedModuleName);
1044diagnostics.Add(new CSDiagnosticInfo(ErrorCode.ERR_BindToBogus, m), NoLocation.Singleton);
1095diagnostics.Add(ErrorCode.ERR_DuplicateNameInNS, y.GetFirstLocationOrNone(),
1259diagnostics.Add(ErrorCode.WRN_AssemblyAttributeFromModuleIsOverridden, NoLocation.Singleton, attribute.AttributeClass, netModuleName);
1265diagnostics.Add(ErrorCode.ERR_DuplicateAttributeInNetModule, NoLocation.Singleton, attribute.AttributeClass.Name, netModuleName);
2113bag.Add(ErrorCode.ERR_FriendRefNotEqualToThis, NoLocation.Singleton,
2116bag.Add(ErrorCode.ERR_FriendRefSigningMismatch, NoLocation.Singleton,
2215diagnostics.Add(ErrorCode.ERR_InvalidFwdType, GetAssemblyAttributeLocationForDiagnostic(arguments.AttributeSyntaxOpt));
2220if (useSiteInfo.DiagnosticInfo?.Code != (int)ErrorCode.ERR_UnexpectedUnboundGenericName &&
2230diagnostics.Add(ErrorCode.ERR_ForwardedTypeInThisAssembly, GetAssemblyAttributeLocationForDiagnostic(arguments.AttributeSyntaxOpt), forwardedType);
2236diagnostics.Add(ErrorCode.ERR_ForwardedTypeIsNested, GetAssemblyAttributeLocationForDiagnostic(arguments.AttributeSyntaxOpt), forwardedType, forwardedType.ContainingType);
2246diagnostics.Add(ErrorCode.ERR_InvalidFwdType, GetAssemblyAttributeLocationForDiagnostic(arguments.AttributeSyntaxOpt));
2266diagnostics.Add(ErrorCode.ERR_DuplicateTypeForwarder, GetAssemblyAttributeLocationForDiagnostic(arguments.AttributeSyntaxOpt), forwardedType);
2284diagnostics.Add(ErrorCode.ERR_CannotPassNullForFriendAssembly, GetAssemblyAttributeLocationForDiagnostic(nodeOpt));
2292diagnostics.Add(ErrorCode.WRN_InvalidAssemblyName, GetAssemblyAttributeLocationForDiagnostic(nodeOpt), displayName);
2302diagnostics.Add(ErrorCode.ERR_FriendAssemblyBadArgs, GetAssemblyAttributeLocationForDiagnostic(nodeOpt), displayName);
2403diagnostics.Add(ErrorCode.ERR_InvalidSignaturePublicKey, attribute.GetAttributeArgumentLocation(0));
2426diagnostics.Add(foundBadWildcard ? ErrorCode.ERR_InvalidVersionFormatDeterministic : ErrorCode.ERR_InvalidVersionFormat, attributeArgumentSyntaxLocation, verString ?? "<null>");
2438diagnostics.Add(ErrorCode.WRN_InvalidVersionFormat, attributeArgumentSyntaxLocation, verString ?? "<null>");
2458diagnostics.Add(ErrorCode.ERR_InvalidAssemblyCultureForExe, attribute.GetAttributeArgumentLocation(0));
2462diagnostics.Add(ErrorCode.ERR_InvalidAssemblyCulture, attribute.GetAttributeArgumentLocation(0));
2489diagnostics.Add(ErrorCode.ERR_InvalidVersionFormat2, attribute.GetAttributeArgumentLocation(0), verString ?? "<null>");
2588diagnostics.Add(ErrorCode.ERR_ExplicitExtension, arguments.AttributeSyntaxOpt.Location);
2626diagnostics.Add(ErrorCode.ERR_InvalidAttributeArgument, attribute.GetAttributeArgumentLocation(i), (object)nodeOpt != null ? nodeOpt.GetErrorDisplayName() : "");
2758diagnostics.Add(ErrorCode.WRN_UnreferencedEvent, associatedPropertyOrEvent.GetFirstLocationOrNone(), associatedPropertyOrEvent);
2763diagnostics.Add(ErrorCode.WRN_UnreferencedField, field.GetFirstLocationOrNone(), field);
2767diagnostics.Add(ErrorCode.WRN_UnassignedInternalRefField, field.GetFirstLocationOrNone(), field);
2771diagnostics.Add(ErrorCode.WRN_UnassignedInternalField, field.GetFirstLocationOrNone(), field, DefaultValue(field.Type));
2791diagnostics.Add(ErrorCode.WRN_UnreferencedFieldAssg, field.GetFirstLocationOrNone(), field);
Symbols\Source\SourceComplexParameterSymbol.cs (51)
792diagnostics.Add(ErrorCode.ERR_DefaultValueUsedWithAttributes, arguments.AttributeSyntaxOpt.Name.Location);
798diagnostics.Add(ErrorCode.ERR_ExplicitParamArrayOrCollection, arguments.AttributeSyntaxOpt.Name.Location);
889diagnostics.Add(ErrorCode.WRN_UnscopedRefAttributeOldRules, arguments.AttributeSyntaxOpt.Location);
894diagnostics.Add(ErrorCode.ERR_UnscopedRefAttributeUnsupportedTarget, arguments.AttributeSyntaxOpt.Location);
898diagnostics.Add(ErrorCode.ERR_UnscopedScoped, arguments.AttributeSyntaxOpt.Location);
933diagnostics.Add(ErrorCode.WRN_RefReadonlyParameterDefaultValue, syntax, this.Name);
953diagnostics.Add(ErrorCode.ERR_ParamDefaultValueDiffersFromAttribute, syntax.Location);
986diagnosticsOpt.Add(ErrorCode.ERR_DefaultValueUsedWithAttributes, node.Name.Location);
1024diagnosticsOpt.Add(ErrorCode.ERR_DefaultValueTypeMustMatch, node.Name.Location);
1034diagnosticsOpt.Add(ErrorCode.ERR_DefaultValueBadValueType, node.Name.Location, arg.TypeInternal);
1044diagnosticsOpt.Add(ErrorCode.ERR_DefaultValueTypeMustMatch, node.Name.Location);
1092diagnostics.Add(ErrorCode.WRN_CallerLineNumberParamForUnconsumedLocation, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1098diagnostics.Add(ErrorCode.ERR_NoConversionForCallerLineNumberParam, node.Name.Location, intType, TypeWithAnnotations.Type);
1105diagnostics.Add(ErrorCode.ERR_BadCallerLineNumberParamWithoutDefaultValue, node.Name.Location);
1120diagnostics.Add(ErrorCode.WRN_CallerFilePathParamForUnconsumedLocation, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1126diagnostics.Add(ErrorCode.ERR_NoConversionForCallerFilePathParam, node.Name.Location, stringType, TypeWithAnnotations.Type);
1133diagnostics.Add(ErrorCode.ERR_BadCallerFilePathParamWithoutDefaultValue, node.Name.Location);
1138diagnostics.Add(ErrorCode.WRN_CallerLineNumberPreferredOverCallerFilePath, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1153diagnostics.Add(ErrorCode.WRN_CallerMemberNameParamForUnconsumedLocation, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1159diagnostics.Add(ErrorCode.ERR_NoConversionForCallerMemberNameParam, node.Name.Location, stringType, TypeWithAnnotations.Type);
1166diagnostics.Add(ErrorCode.ERR_BadCallerMemberNameParamWithoutDefaultValue, node.Name.Location);
1171diagnostics.Add(ErrorCode.WRN_CallerLineNumberPreferredOverCallerMemberName, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1176diagnostics.Add(ErrorCode.WRN_CallerFilePathPreferredOverCallerMemberName, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1194diagnostics.Add(ErrorCode.WRN_CallerArgumentExpressionParamForUnconsumedLocation, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1200diagnostics.Add(ErrorCode.ERR_NoConversionForCallerArgumentExpressionParam, node.Name.Location, stringType, TypeWithAnnotations.Type);
1207diagnostics.Add(ErrorCode.ERR_BadCallerArgumentExpressionParamWithoutDefaultValue, node.Name.Location);
1212diagnostics.Add(ErrorCode.WRN_CallerLineNumberPreferredOverCallerArgumentExpression, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1217diagnostics.Add(ErrorCode.WRN_CallerFilePathPreferredOverCallerArgumentExpression, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1222diagnostics.Add(ErrorCode.WRN_CallerMemberNamePreferredOverCallerArgumentExpression, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1228diagnostics.Add(ErrorCode.WRN_CallerArgumentExpressionAttributeHasInvalidParameterName, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1233diagnostics.Add(ErrorCode.WRN_CallerArgumentExpressionAttributeSelfReferential, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1259diagnostics.Add(ErrorCode.WRN_UnconsumedEnumeratorCancellationAttributeUsage, node.Name.Location, ParameterSyntax.Identifier.ValueText);
1290diagnostics.Add(ErrorCode.ERR_TypeIsNotAnInterpolatedStringHandlerType, arguments.AttributeSyntaxOpt.Location, Type);
1298diagnostics.Add(ErrorCode.WRN_InterpolatedStringHandlerArgumentAttributeIgnoredOnLambdaParameters, arguments.AttributeSyntaxOpt.Location);
1304diagnostics.Add(ErrorCode.ERR_InterpolatedStringHandlerArgumentDisallowed, arguments.AttributeSyntaxOpt.Location);
1332diagnostics.Add(ErrorCode.ERR_NullInvalidInterpolatedStringHandlerArgumentName, arguments.AttributeSyntaxOpt!.Location);
1373diagnostics.Add(ErrorCode.ERR_NullInvalidInterpolatedStringHandlerArgumentName, arguments.AttributeSyntaxOpt.Location);
1393diagnostics.Add(ErrorCode.ERR_NotInstanceInvalidInterpolatedStringHandlerArgumentName, arguments.AttributeSyntaxOpt.Location, ContainingSymbol);
1405diagnostics.Add(ErrorCode.ERR_NotInstanceInvalidInterpolatedStringHandlerArgumentName, arguments.AttributeSyntaxOpt.Location, ContainingSymbol);
1416diagnostics.Add(ErrorCode.ERR_InvalidInterpolatedStringHandlerArgumentName, arguments.AttributeSyntaxOpt.Location, name, ContainingSymbol);
1423diagnostics.Add(ErrorCode.ERR_CannotUseSelfAsInterpolatedStringHandlerArgument, arguments.AttributeSyntaxOpt.Location);
1432diagnostics.Add(ErrorCode.WRN_ParameterOccursAfterInterpolatedStringHandlerParameter, arguments.AttributeSyntaxOpt.Location, parameter.Name, this.Name);
1463diagnostics.Add(ErrorCode.ERR_OutAttrOnRefParam, this.GetFirstLocation());
1470diagnostics.Add(ErrorCode.ERR_InAttrOnOutParam, this.GetFirstLocation());
1477diagnostics.Add(ErrorCode.ERR_OutAttrOnInParam, this.GetFirstLocation());
1484diagnostics.Add(ErrorCode.ERR_OutAttrOnRefReadonlyParam, this.GetFirstLocation());
1599diagnostics.Add(ErrorCode.ERR_ScopedRefAndRefStructOnly, ParameterSyntax);
1655diagnostics.Add(ErrorCode.ERR_ParamsCollectionExtensionAddMethod, syntax, Type);
1676diagnostics.Add(ErrorCode.ERR_ParamsMemberCannotBeLessVisibleThanDeclaringMember, syntax, reportAsLessVisible, ContainingSymbol);
1737diagnostics.Add(ErrorCode.ERR_ParamsMemberCannotBeLessVisibleThanDeclaringMember, syntax, method, ContainingSymbol);
1743diagnostics.Add(ErrorCode.ERR_ParamsMustBeCollection, ParameterSyntax.Modifiers.First(static m => m.IsKind(SyntaxKind.ParamsKeyword)).GetLocation());
Symbols\Source\SourceConstructorSymbol.cs (14)
45diagnostics.Add(ErrorCode.ERR_StaticConstructorWithAccessModifiers, location, this);
58diagnostics.Add(ErrorCode.ERR_MemberNeedsType, location);
68diagnostics.Add(ErrorCode.ERR_ExternHasConstructorInitializer, location, this);
73diagnostics.Add(ErrorCode.ERR_ExternHasBody, location, this);
79diagnostics.Add(ErrorCode.ERR_PartialConstructorInitializer, initializer, this);
193diagnostics.Add(ErrorCode.ERR_ConcreteMissingBody, location, this);
201diagnostics.Add(ErrorCode.ERR_ConstructorInStaticClass, location);
205diagnostics.Add(ErrorCode.ERR_PartialMemberOnlyInPartialClass, location);
299diagnostics.Add(ErrorCode.ERR_PartialMemberInconsistentTupleNames, implementation.GetFirstLocation(), this, implementation);
304diagnostics.Add(ErrorCode.WRN_PartialMemberSignatureDifference, implementation.GetFirstLocation(),
311diagnostics.Add(ErrorCode.ERR_PartialMemberUnsafeDifference, implementation.GetFirstLocation());
316diagnostics.Add(ErrorCode.ERR_PartialMemberParamsDifference, implementation.GetFirstLocation());
322diagnostics.Add(ErrorCode.ERR_PartialMemberAccessibilityDifference, implementation.GetFirstLocation());
334diagnostics.Add(ErrorCode.ERR_ScopedMismatchInParameterOfPartial, implementation.GetFirstLocation(), new FormattedSymbol(implementation.Parameters[i], SymbolDisplayFormat.ShortFormat));
Symbols\Source\SourceCustomEventSymbol.cs (8)
95diagnostics.Add(ErrorCode.ERR_DuplicateAccessor, accessor.Keyword.GetLocation());
106diagnostics.Add(ErrorCode.ERR_DuplicateAccessor, accessor.Keyword.GetLocation());
112diagnostics.Add(ErrorCode.ERR_AddOrRemoveExpected, accessor.Keyword.GetLocation());
126diagnostics.Add(ErrorCode.ERR_AddRemoveMustHaveBody, accessor.SemicolonToken.GetLocation());
134diagnostics.Add(ErrorCode.ERR_AbstractEventHasAccessors, syntax.AccessorList.OpenBraceToken.GetLocation(), this);
139diagnostics.Add(ErrorCode.ERR_EventNeedsBothAccessors, this.GetFirstLocation(), this);
144diagnostics.Add(ErrorCode.ERR_ExplicitEventFieldImpl, this.GetFirstLocation());
155diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportDefaultInterfaceImplementation, this.GetFirstLocation());
Symbols\Source\SourceDelegateMethodSymbol.cs (6)
68diagnostics.Add(ErrorCode.ERR_MethodReturnCantBeRefAny, returnTypeSyntax.Location, returnType.Type);
105diagnostics.Add(ErrorCode.ERR_BadVisDelegateReturn, delegateType.GetFirstLocation(), delegateType, invoke.ReturnType);
111diagnostics.Add(ErrorCode.ERR_FileTypeDisallowedInSignature, delegateType.GetFirstLocation(), invoke.ReturnType, delegateType);
120diagnostics.Add(ErrorCode.ERR_BadVisDelegateParam, delegateType.GetFirstLocation(), delegateType, parameterSymbol.Type);
124diagnostics.Add(ErrorCode.ERR_FileTypeDisallowedInSignature, delegateType.GetFirstLocation(), parameterSymbol.Type, delegateType);
283diagnostics.Add(ErrorCode.ERR_IllegalVarArgs, new SourceLocation(arglistToken));
Symbols\Source\SourceEventSymbol.cs (28)
378diagnostics.Add(ErrorCode.ERR_UnscopedRefAttributeUnsupportedMemberTarget, arguments.AttributeSyntaxOpt!.Location);
382diagnostics.Add(ErrorCode.ERR_RequiresUnsafeAttributeInSource, arguments.AttributeSyntaxOpt!.Location);
627diagnostics.Add(ErrorCode.ERR_VirtualPrivate, location, this);
632diagnostics.Add(ErrorCode.ERR_StaticMemberCantBeReadOnly, location, this);
637diagnostics.Add(ErrorCode.ERR_FieldLikeEventCantBeReadOnly, location, this);
642diagnostics.Add(ErrorCode.ERR_OverrideNotNew, location, this);
647diagnostics.Add(ErrorCode.ERR_SealedNonOverride, location, this);
651diagnostics.Add(ErrorCode.ERR_PartialMemberOnlyInPartialClass, location);
655diagnostics.Add(ErrorCode.ERR_PartialMemberNotExplicit, location);
659diagnostics.Add(ErrorCode.ERR_PartialMemberCannotBeAbstract, location);
664diagnostics.Add(ErrorCode.ERR_BadMemberFlag, location, SyntaxFacts.GetText(SyntaxKind.AbstractKeyword));
669diagnostics.Add(ErrorCode.ERR_BadMemberFlag, location, SyntaxFacts.GetText(SyntaxKind.VirtualKeyword));
673diagnostics.Add(ErrorCode.ERR_AbstractAndExtern, location, this);
677diagnostics.Add(ErrorCode.ERR_AbstractAndSealed, location, this);
681diagnostics.Add(ErrorCode.ERR_AbstractNotVirtual, location, this.Kind.Localize(), this);
689diagnostics.Add(ErrorCode.ERR_InstanceMemberInStaticClass, location, Name);
700diagnostics.Add(ErrorCode.ERR_BadVisEventType, location, this, this.Type);
705diagnostics.Add(ErrorCode.ERR_EventNotDelegate, location, this);
710diagnostics.Add(ErrorCode.ERR_AbstractInConcreteClass, location, this, ContainingType);
715diagnostics.Add(ErrorCode.ERR_NewVirtualInSealed, location, this, ContainingType);
906diagnostics.Add(ErrorCode.ERR_ExplicitPropertyAddingAccessor, thisAccessor.GetFirstLocation(), thisAccessor, explicitlyImplementedEvent);
918diagnostics.Add(ErrorCode.ERR_PartialMemberTypeDifference, implementation.GetFirstLocation());
922diagnostics.Add(ErrorCode.ERR_PartialMemberInconsistentTupleNames, implementation.GetFirstLocation(), this, implementation);
926diagnostics.Add(ErrorCode.WRN_PartialMemberSignatureDifference, implementation.GetFirstLocation(),
933diagnostics.Add(ErrorCode.ERR_PartialMemberStaticDifference, implementation.GetFirstLocation());
938diagnostics.Add(ErrorCode.ERR_PartialMemberUnsafeDifference, implementation.GetFirstLocation());
944diagnostics.Add(ErrorCode.ERR_PartialMemberAccessibilityDifference, implementation.GetFirstLocation());
952diagnostics.Add(ErrorCode.ERR_PartialMemberExtendedModDifference, implementation.GetFirstLocation());
Symbols\Source\SourceFieldLikeEventSymbol.cs (8)
73diagnostics.Add(ErrorCode.ERR_InterfaceEventInitializer, this.GetFirstLocation(), this);
77diagnostics.Add(ErrorCode.ERR_AbstractEventInitializer, this.GetFirstLocation(), this);
81diagnostics.Add(ErrorCode.ERR_ExternEventInitializer, this.GetFirstLocation(), this);
85diagnostics.Add(ErrorCode.ERR_PartialEventInitializer, this.GetFirstLocation(), this);
99diagnostics.Add(ErrorCode.ERR_FieldlikeEventsInRoStruct, this.GetFirstLocation());
108diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportStaticAbstractMembersInInterfaces, this.GetFirstLocation());
121diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportDefaultInterfaceImplementation, this.GetFirstLocation());
127diagnostics.Add(ErrorCode.ERR_EventNeedsBothAccessors, this.GetFirstLocation(), this);
Symbols\Source\SourceMemberContainerSymbol.cs (120)
252diagnostics.Add(ErrorCode.ERR_PartialModifierConflict, GetFirstLocation(), this);
371diagnostics.Add(ErrorCode.ERR_AbstractSealedStatic, GetFirstLocation(), this);
378diagnostics.Add(ErrorCode.ERR_ClosedSealedStatic, GetFirstLocation(), this);
381diagnostics.Add(ErrorCode.ERR_ClosedExplicitlyAbstract, GetFirstLocation(), this);
387diagnostics.Add(ErrorCode.ERR_SealedStaticClass, GetFirstLocation(), this);
394diagnostics.Add(ErrorCode.WRN_UnsafeMeaningless, GetFirstLocation());
471diagnostics.Add(ErrorCode.ERR_FileTypeNoExplicitAccessibility, GetFirstLocation(), this);
486? ErrorCode.ERR_FileLocalDuplicateNameInNS
487: ErrorCode.ERR_DuplicateNameInNS, declaration.Declarations[i].NameLocation, this.Name, this.ContainingSymbol);
496diagnostics.Add(ErrorCode.ERR_DuplicateNameInClass, declaration.Declarations[i].NameLocation, this.ContainingSymbol, this.Name);
510diagnostics.Add(ErrorCode.ERR_MissingPartial, singleDeclaration.NameLocation, this.Name);
532if (reportIfContextual(SyntaxKind.RecordKeyword, MessageID.IDS_FeatureRecords, ErrorCode.WRN_RecordNamedDisallowed)
533|| reportIfContextual(SyntaxKind.RequiredKeyword, MessageID.IDS_FeatureRequiredMembers, ErrorCode.ERR_RequiredNameDisallowed)
534|| reportIfContextual(SyntaxKind.FileKeyword, MessageID.IDS_FeatureFileTypes, ErrorCode.ERR_FileTypeNameDisallowed)
535|| reportIfContextual(SyntaxKind.ClosedKeyword, MessageID.IDS_FeatureClosedClasses, ErrorCode.ERR_ClosedTypeNameDisallowed)
536|| reportIfContextual(SyntaxKind.ScopedKeyword, MessageID.IDS_FeatureRefFields, ErrorCode.ERR_ScopedTypeNameDisallowed)
537|| reportIfContextual(SyntaxKind.ExtensionKeyword, MessageID.IDS_FeatureExtensions, ErrorCode.ERR_ExtensionTypeNameDisallowed))
543diagnostics.Add(ErrorCode.WRN_LowerCaseTypeName, location, name);
546bool reportIfContextual(SyntaxKind contextualKind, MessageID featureId, ErrorCode error)
1460diagnostics.Add(ErrorCode.ERR_PartialTypeKindConflict, t.GetFirstLocation(), t);
1464diagnostics.Add(ErrorCode.ERR_DuplicateNameInClass, t.GetFirstLocation(), this, t.Name);
1530diagnostics.Add(ErrorCode.ERR_MemberNameSameAsType, member.GetFirstLocation(), typeName);
1538diagnostics.Add(ErrorCode.ERR_MemberNameSameAsExtendedType, member.GetFirstLocation(), typeName);
2044diagnostics.Add(ErrorCode.ERR_FilePathCannotBeConvertedToUtf8, location, this, errorMessage);
2049diagnostics.Add(ErrorCode.ERR_FileTypeNested, location, this);
2066diagnostics.Add(ErrorCode.ERR_InstanceFieldInUnion, field.GetFirstLocation());
2074diagnostics.Add(ErrorCode.ERR_InstanceCtorWithOneParameterInUnion, ctor.GetFirstLocation());
2080diagnostics.Add(ErrorCode.ERR_MemberProviderInUnionDeclaration, location);
2087diagnostics.Add(ErrorCode.ERR_MissingUnionCaseTypes, location);
2092diagnostics.Add(ErrorCode.ERR_MissingUnionValueProperty, location);
2140diagnostics.Add(ErrorCode.ERR_CloneDisallowedInRecord, member.GetFirstLocation());
2253diagnostics.Add(ErrorCode.ERR_DuplicateNameInClass, symbol.GetFirstLocation(), containerForDiagnostics, symbol.Name);
2280diagnostics.Add(ErrorCode.ERR_DuplicateConversionInClass, conversion.GetFirstLocation(), containerForDiagnostics);
2362(d.Code is (int)ErrorCode.ERR_OverloadRefKind or (int)ErrorCode.ERR_MemberAlreadyExists or
2363(int)ErrorCode.ERR_DuplicateNameInClass or (int)ErrorCode.ERR_MemberReserved) &&
2382diagnostics.Add(ErrorCode.ERR_OverloadRefKind, method1.GetFirstLocation(), containerForDiagnostics, methodKind.Localize(), refKind1.ToParameterDisplayString(), refKind2.ToParameterDisplayString());
2399diagnostics.Add(ErrorCode.ERR_MemberAlreadyExists, method1.GetFirstLocation(), methodName, containerForDiagnostics);
2458diagnostics.Add(ErrorCode.ERR_DuplicateNameInClass, indexer.GetFirstLocation(), containerForDiagnostics, indexerName);
2491diagnostics.Add(ErrorCode.ERR_InconsistentIndexerNames, indexer.GetFirstLocation());
2504diagnostics.Add(ErrorCode.ERR_DuplicateNameInClass, indexer.GetFirstLocation(), containerForDiagnostics, indexerName);
2513diagnostics.Add(ErrorCode.ERR_MemberAlreadyExists, indexer.GetFirstLocation(), SyntaxFacts.GetText(SyntaxKind.ThisKeyword), containerForDiagnostics);
2693diagnostics.Add(ErrorCode.ERR_DuplicateNameInClass, dup.GetFirstLocation(), this, tp.Name);
2807diagnostics.Add(ErrorCode.ERR_StructLayoutCyclePrimaryConstructorParameter, parameterSymbol.GetFirstLocation(), parameterSymbol, type);
2815diagnostics.Add(ErrorCode.ERR_StructLayoutCycle, symbol.GetFirstLocation(), symbol, type);
2846diagnostics.Add(ErrorCode.ERR_ProtectedInStatic, member.GetFirstLocation(), member);
2925diagnostics.Add(ErrorCode.ERR_OperatorNeedsMatch, op1.GetFirstLocation(), op1,
2931diagnostics.Add(ErrorCode.ERR_CheckedOperatorNeedsMatch, op1.GetFirstLocation(), op1);
3029diagnostics.Add(ErrorCode.WRN_EqualsWithoutGetHashCode, this.GetFirstLocation(), this);
3035diagnostics.Add(ErrorCode.WRN_EqualityOpWithoutEquals, this.GetFirstLocation(), this);
3041diagnostics.Add(ErrorCode.WRN_EqualityOpWithoutGetHashCode, this.GetFirstLocation(), this);
3077diagnostics.Add(ErrorCode.ERR_RequiredMembersBaseTypeInvalid, method.GetFirstLocation(), BaseTypeNoUseSiteDiagnostics);
3091diagnostics.Add(ErrorCode.ERR_ScriptsAndSubmissionsCannotHaveRequiredMembers, member.GetFirstLocation());
3137diagnostics.Add(ErrorCode.ERR_StructLayoutCycle, f.GetFirstLocation(), f, type);
3201diagnostics.Add(ErrorCode.WRN_SequentialOnPartialClass, GetFirstLocation(), this);
3214diagnostics.Add(ErrorCode.WRN_SequentialOnPartialClass, GetFirstLocation(), this);
3811Binder.Error(diagnostics, ErrorCode.ERR_SimpleProgramMultipleUnitsWithTopLevelStatements, singleDecl.NameLocation);
4107diagnostics.Add(ErrorCode.ERR_ConstructorInStaticClass, syntax.Identifier.GetLocation());
4122diagnostics.Add(ErrorCode.ERR_MultipleRecordParameterLists, parameterList.Location);
4214diagnostics.Add(ErrorCode.ERR_PartialMethodMustHaveLatent, method.GetFirstLocation(), method);
4218diagnostics.Add(ErrorCode.ERR_PartialMethodWithAccessibilityModsMustHaveImplementation, method.GetFirstLocation(), method);
4226property.IsPartialDefinition ? ErrorCode.ERR_PartialPropertyMissingImplementation : ErrorCode.ERR_PartialPropertyMissingDefinition,
4236constructor.IsPartialDefinition ? ErrorCode.ERR_PartialMemberMissingImplementation : ErrorCode.ERR_PartialMemberMissingDefinition,
4246ev.IsPartialDefinition ? ErrorCode.ERR_PartialMemberMissingImplementation : ErrorCode.ERR_PartialMemberMissingDefinition,
4288diagnostics.Add(ErrorCode.ERR_PartialMethodOnlyOneActual, currentMethod.GetFirstLocation());
4294diagnostics.Add(ErrorCode.ERR_PartialMethodOnlyOneLatent, currentMethod.GetFirstLocation());
4307diagnostics.Add(ErrorCode.ERR_PartialPropertyDuplicateImplementation, currentProperty.GetFirstLocation());
4312diagnostics.Add(ErrorCode.ERR_PartialPropertyDuplicateDefinition, currentProperty.GetFirstLocation());
4318diagnostics.Add(ErrorCode.ERR_PartialPropertyDuplicateInitializer, currentProperty.GetFirstLocation());
4339? (ErrorCode.ERR_PartialPropertyMissingAccessor, otherProperty)
4340: (ErrorCode.ERR_PartialPropertyUnexpectedAccessor, containingProperty);
4357diagnostics.Add(ErrorCode.ERR_PartialMemberDuplicateImplementation, currentConstructor.GetFirstLocation(), currentConstructor);
4363diagnostics.Add(ErrorCode.ERR_PartialMemberDuplicateDefinition, currentConstructor.GetFirstLocation(), currentConstructor);
4377diagnostics.Add(ErrorCode.ERR_PartialMemberDuplicateImplementation, currentEvent.GetFirstLocation(), currentEvent);
4383diagnostics.Add(ErrorCode.ERR_PartialMemberDuplicateDefinition, currentEvent.GetFirstLocation(), currentEvent);
4549diagnostics.Add(ErrorCode.ERR_DuplicateNameInClass, GetAccessorOrPropertyLocation(propertySymbol, getNotSet), containerForDiagnostics, accessorName);
4559diagnostics.Add(ErrorCode.ERR_MemberReserved, GetAccessorOrPropertyLocation(propertySymbol, getNotSet), accessorName, containerForDiagnostics);
4588diagnostics.Add(ErrorCode.ERR_DuplicateNameInClass, GetAccessorOrEventLocation(eventSymbol, isAdder), containerForDiagnostics, accessorName);
4598diagnostics.Add(ErrorCode.ERR_MemberReserved, GetAccessorOrEventLocation(eventSymbol, isAdder), accessorName, containerForDiagnostics);
4750diagnostics.Add(ErrorCode.ERR_InterfacesCantContainConstructors, member.GetFirstLocation());
4757diagnostics.Add(ErrorCode.ERR_OnlyClassesCanContainDestructors, member.GetFirstLocation());
4798diagnostics.Add(ErrorCode.ERR_ExtensionDisallowsMember, member.GetFirstLocation());
4863diagnostics.Add(ErrorCode.ERR_EnumsCantContainDefaultConstructor, location);
4870diagnostics.Add(ErrorCode.ERR_NonPublicParameterlessStructConstructor, location);
4902diagnostics.Add(ErrorCode.ERR_StructHasInitializersAndNoDeclaredConstructor, GetFirstLocation());
4976diagnostics.Add(ErrorCode.ERR_IllegalVarArgs, parameterSyntax.Identifier.GetLocation());
4987diagnostics.Add(ErrorCode.ERR_UnexpectedToken, syntaxToken.GetLocation(), syntaxToken.Text);
4994diagnostics.Add(ErrorCode.ERR_UnexpectedToken, nextToken.GetLocation(), nextToken.Text);
5011diagnostics.Add(ErrorCode.ERR_NoImplicitConversionToObject, typeSyntax, parameterType.Type);
5025diagnostics.Add(ErrorCode.ERR_UnionDeclarationNeedsCaseTypes, valuePropertySyntax.Identifier.GetLocation());
5113diagnostics.Add(ErrorCode.WRN_RecordEqualsWithoutGetHashCode, thisEquals.GetFirstLocation(), declaration.Name);
5166diagnostics.Add(ErrorCode.ERR_NonPublicAPIInRecord, deconstruct.GetFirstLocation(), deconstruct);
5171diagnostics.Add(ErrorCode.ERR_SignatureMismatchInRecord, deconstruct.GetFirstLocation(), deconstruct, targetMethod.ReturnType);
5176diagnostics.Add(ErrorCode.ERR_StaticAPIInRecord, deconstruct.GetFirstLocation(), deconstruct);
5211diagnostics.Add(ErrorCode.ERR_RecordAmbigCtor, copyCtor.GetFirstLocation());
5220diagnostics.Add(ErrorCode.ERR_RecordAmbigCtor, this.GetFirstLocation());
5224diagnostics.Add(ErrorCode.ERR_CopyConstructorWrongAccessibility, constructor.GetFirstLocation(), constructor);
5269diagnostics.Add(ErrorCode.ERR_NonPrivateAPIInRecord, printMembersMethod.GetFirstLocation(), printMembersMethod);
5274diagnostics.Add(ErrorCode.ERR_NonProtectedAPIInRecord, printMembersMethod.GetFirstLocation(), printMembersMethod);
5281diagnostics.Add(ErrorCode.ERR_SignatureMismatchInRecord, printMembersMethod.GetFirstLocation(), printMembersMethod, targetMethod.ReturnType);
5320ErrorCode.ERR_InheritingFromRecordWithSealedToString,
5427diagnostics.Add(ErrorCode.ERR_BadRecordMemberForPositionalParameter,
5457diagnostics.Add(ErrorCode.ERR_HiddenPositionalMember, param.GetFirstLocation(), symbol);
5497diagnostics.Add(ErrorCode.ERR_SealedAPIInRecord, getHashCode.GetFirstLocation(), getHashCode);
5531diagnostics.Add(ErrorCode.ERR_NonPrivateAPIInRecord, equalityContract.GetFirstLocation(), equalityContract);
5536diagnostics.Add(ErrorCode.ERR_NonProtectedAPIInRecord, equalityContract.GetFirstLocation(), equalityContract);
5543diagnostics.Add(ErrorCode.ERR_SignatureMismatchInRecord, equalityContract.GetFirstLocation(), equalityContract, targetProperty.Type);
5553diagnostics.Add(ErrorCode.ERR_EqualityContractRequiresGetter, equalityContract.GetFirstLocation(), equalityContract);
5597diagnostics.Add(ErrorCode.ERR_NonPublicAPIInRecord, thisEquals.GetFirstLocation(), thisEquals);
5602diagnostics.Add(ErrorCode.ERR_SignatureMismatchInRecord, thisEquals.GetFirstLocation(), thisEquals, targetMethod.ReturnType);
5617diagnostics.Add(ErrorCode.ERR_NotOverridableAPIInRecord, symbol.GetFirstLocation(), symbol);
5621diagnostics.Add(ErrorCode.ERR_StaticAPIInRecord, symbol.GetFirstLocation(), symbol);
6083diagnostics.Add(ErrorCode.ERR_GlobalStatement, new SourceLocation(globalStatement));
6106var errorCode = parentSyntax.IsKind(SyntaxKind.CompilationUnit)
6107? ErrorCode.ERR_CompilationUnitUnexpected
6108: ErrorCode.ERR_NamespaceUnexpected;
Symbols\Source\SourceMemberContainerSymbol_ImplementationChecks.cs (63)
105diagnostics.Add(ErrorCode.ERR_UnimplementedAbstractMethod, this.GetFirstLocation(), this, abstractMember);
168Diagnostic diag = new CSDiagnostic(new CSDiagnosticInfo(ErrorCode.ERR_DuplicateExplicitImpl, interfaceMember), this.GetFirstLocation());
188ErrorCode.ERR_InterfaceImplementedImplicitlyByVariadic,
229var info = new CSDiagnosticInfo(ErrorCode.ERR_MixingWinRTEventWithRegular, args, ImmutableArray<Symbol>.Empty, ImmutableArray.Create<Location>(this.GetFirstLocation()));
294diagnostics.Add(ErrorCode.ERR_UnimplementedInterfaceMember, GetImplementsLocationOrFallback(@interface), this, interfaceMember);
304diagnostics.Add(ErrorCode.WRN_NullabilityMismatchInInterfaceImplementedByBase, GetImplementsLocationOrFallback(@interface), this, interfaceMember);
581diagnostics.Add(ErrorCode.ERR_CantOverrideSealed, method.GetFirstLocation(), method, overridden);
732diagnostics.Add(ErrorCode.WRN_NewRequired, symbolLocation, symbol, hiddenMember);
740diagnostics.Add(ErrorCode.ERR_RequiredMemberCannotBeHidden, symbolLocation, hiddenMember, symbol);
752diagnostics.Add(ErrorCode.WRN_NewNotRequired, symbolLocation, symbol);
785ErrorCode errorCode =
786overridingMemberIsMethod ? ErrorCode.ERR_CantOverrideNonFunction :
787overridingMemberIsProperty ? ErrorCode.ERR_CantOverrideNonProperty :
788ErrorCode.ERR_CantOverrideNonEvent;
821diagnostics.Add(ErrorCode.ERR_OverrideNotExpected, overridingMemberLocation, overridingMember);
835diagnostics.Add(ErrorCode.ERR_NoGetToOverride, overridingMemberLocation, overridingMember, overriddenProperty);
839diagnostics.Add(ErrorCode.ERR_NoSetToOverride, overridingMemberLocation, overridingMember, overriddenProperty);
843diagnostics.Add(ErrorCode.ERR_OverrideNotExpected, overridingMemberLocation, overridingMember);
853diagnostics.Add(ErrorCode.ERR_AmbigOverride, overridingMemberLocation,
876diagnostics.Add(ErrorCode.WRN_MultipleRuntimeOverrideMatches, ambiguousMethod.GetFirstLocation(), ambiguousMethod, overridingMember);
903diagnostics.Add(ErrorCode.ERR_CantOverrideBogusMethod, overridingMemberLocation, overridingMember, overriddenMember);
910diagnostics.Add(ErrorCode.ERR_CantOverrideNonVirtual, overridingMemberLocation, overridingMember, overriddenMember);
916diagnostics.Add(ErrorCode.ERR_CantOverrideSealed, overridingMemberLocation, overridingMember, overriddenMember);
922diagnostics.Add(ErrorCode.ERR_CantChangeAccessOnOverride, overridingMemberLocation, overridingMember, accessibility, overriddenMember);
929diagnostics.Add(ErrorCode.ERR_CantChangeTupleNamesOnOverride, overridingMemberLocation, overridingMember, overriddenMember);
934diagnostics.Add(ErrorCode.ERR_OverrideMustHaveRequired, overridingMemberLocation, overridingMember, overriddenMember);
938diagnostics.Add(ErrorCode.ERR_OperatorMismatchOnOverride, overridingMemberLocation, overridingMember, overriddenMember);
957ErrorCode code = overridingMemberIsObsolete
958? ErrorCode.WRN_ObsoleteOverridingNonObsolete
959: ErrorCode.WRN_NonObsoleteOverridingObsolete;
982diagnostics.Add(ErrorCode.ERR_CantChangeTypeOnOverride, overridingMemberLocation, overridingMember, overriddenMember, overriddenMemberType.Type);
990(diagnostics, overriddenEvent, overridingEvent, location) => diagnostics.Add(ErrorCode.WRN_NullabilityMismatchInTypeOnOverride, location),
996ErrorCode.ERR_CallerUnsafeOverridingSafe,
1017diagnostics.Add(ErrorCode.ERR_CantChangeRefReturnOnOverride, overridingMemberLocation, overridingMember, overriddenMember);
1030diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportCovariantReturnsOfClasses, overridingMemberLocation, overridingMember, overriddenMember, overriddenMethod.ReturnType);
1044diagnostics.Add(ErrorCode.ERR_CantChangeReturnTypeOnOverride, overridingMemberLocation, overridingMember, overriddenMember, overriddenMethod.ReturnType);
1050diagnostics.Add(ErrorCode.ERR_OverrideFinalizeDeprecated, overridingMemberLocation);
1083diagnostics.Add(ErrorCode.ERR_CantChangeRefReturnOnOverride, overridingMemberLocation, overridingProperty, overriddenProperty);
1100diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportCovariantPropertiesOfClasses, overridingMemberLocation, overridingMember, overriddenMember, overriddenMemberType.Type);
1112diagnostics.Add(ErrorCode.ERR_CantChangeTypeOnOverride, overridingMemberLocation, overridingMember, overriddenMember, overriddenMemberType.Type);
1145diagnostics.Add(ErrorCode.ERR_CantChangeInitOnlyOnOverride, overridingMemberLocation, overridingProperty, overriddenProperty);
1160diagnostics.Add(ErrorCode.ERR_NoGetToOverride, overridingMemberLocation, overridingProperty, overriddenProperty);
1166diagnostics.Add(ErrorCode.ERR_NoSetToOverride, overridingMemberLocation, overridingProperty, overriddenProperty);
1190ErrorCode.ERR_ScopedMismatchInParameterOfOverrideOrImplementation :
1191ErrorCode.WRN_ScopedMismatchInParameterOfOverrideOrImplementation,
1211diagnostics.Add(ErrorCode.WRN_OverridingDifferentRefness, location, overridingParameter, overriddenParameter);
1219ErrorCode.ERR_CallerUnsafeOverridingSafe,
1255ErrorCode.WRN_TopLevelNullabilityMismatchInReturnTypeOnOverride :
1256ErrorCode.WRN_NullabilityMismatchInReturnTypeOnOverride,
1262topLevel ? ErrorCode.WRN_TopLevelNullabilityMismatchInParameterTypeOnOverride : ErrorCode.WRN_NullabilityMismatchInParameterTypeOnOverride,
1289diagnostics.Add(ErrorCode.WRN_DoesNotReturnMismatch, overrideMethod.GetFirstLocation(), new FormattedSymbol(overrideMethod, SymbolDisplayFormat.MinimallyQualifiedFormat));
1568ErrorCode errorCode,
1641diagnostics.Add(ErrorCode.WRN_NewNotRequired, hidingMemberLocation, hidingMember);
1662diagnostics.Add(ErrorCode.WRN_NewOrOverrideExpected, hidingMemberLocation, hidingMember, hiddenMember);
1669diagnostics.Add(ErrorCode.ERR_RequiredMemberCannotBeHidden, hidingMemberLocation, hiddenMember, hidingMember);
1683diagnostics.Add(ErrorCode.WRN_NewRequired, hidingMemberLocation, hidingMember, hiddenMembers[0]);
1694diagnostics.Add(ErrorCode.WRN_HidingDifferentRefness, location, hidingParameter, hiddenParameter);
1750diagnostics.Add(ErrorCode.ERR_HidingAbstractMethod, associatedPropertyOrEvent.GetFirstLocation(), associatedPropertyOrEvent, hiddenMember);
1765diagnostics.Add(ErrorCode.ERR_HidingAbstractMethod, hidingMemberLocation, hidingMember, hiddenMember);
1844diagnostics.Add(ErrorCode.ERR_UnifyingInterfaceInstantiations, this.GetFirstLocation(), this, interface1, interface2);
1869if (diagnostic.Severity == DiagnosticSeverity.Error && diagnostic.Code is not ((int)ErrorCode.ERR_ImplicitImplementationOfNonPublicInterfaceMember or (int)ErrorCode.ERR_ImplicitImplementationOfInaccessibleInterfaceMember))
Symbols\Source\SourceMemberFieldSymbol.cs (24)
52diagnostics.Add(ErrorCode.ERR_FileTypeDisallowedInSignature, this.ErrorLocation, type, ContainingType);
57diagnostics.Add(ErrorCode.ERR_VarDeclIsStaticClass, this.ErrorLocation, type);
61diagnostics.Add(ErrorCode.ERR_FieldCantHaveVoidType, getTypeErrorLocation());
65diagnostics.Add(ErrorCode.ERR_FieldCantBeRefAny, getTypeErrorLocation(), type);
69diagnostics.Add(ErrorCode.ERR_FieldAutoPropCantBeByRefLike, getTypeErrorLocation(), type);
74diagnostics.Add(ErrorCode.ERR_BadFieldTypeInRecord, getTypeErrorLocation(), type);
89diagnostics.Add(ErrorCode.ERR_BadConstType, constToken.GetLocation(), type);
94diagnostics.Add(ErrorCode.ERR_VolatileStruct, this.ErrorLocation, this, type);
101diagnostics.Add(ErrorCode.ERR_BadVisFieldType, this.ErrorLocation, this, type);
234diagnostics.Add(ErrorCode.ERR_AbstractField, errorLocation);
261diagnostics.Add(ErrorCode.ERR_StaticConstant, errorLocation, firstIdentifier.ValueText);
280diagnostics.Add(ErrorCode.ERR_BadMemberFlag, errorLocation, SyntaxFacts.GetText(SyntaxKind.RequiredKeyword));
306diagnostics.Add(ErrorCode.ERR_BadMemberFlag, errorLocation, ModifierUtils.ConvertSingleModifierToSyntaxText(modifier));
416diagnostics.Add(ErrorCode.ERR_InterfacesCantContainFields, ErrorLocation);
500diagnostics.Add(ErrorCode.ERR_BadMemberFlag, ErrorLocation, SyntaxFacts.GetText(SyntaxKind.ScopedKeyword));
539diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportRefFields, ErrorLocation);
542diagnostics.Add(ErrorCode.ERR_RefFieldInNonRefStruct, ErrorLocation);
545diagnostics.Add(ErrorCode.ERR_RefFieldCannotReferToRefStruct, typeSyntax.SkipScoped(out _).Location);
559diagnosticsForFirstDeclarator.Add(ErrorCode.ERR_ImplicitlyTypedVariableCannotBeConst, typeSyntax.Location);
564diagnostics.Add(ErrorCode.ERR_RecursivelyTypedVariable, this.ErrorLocation, this);
569diagnosticsForFirstDeclarator.Add(ErrorCode.ERR_ImplicitlyTypedVariableMultipleDeclarator, typeSyntax.Location);
609diagnostics.Add(ErrorCode.ERR_FixedNotInStruct, ErrorLocation);
614diagnostics.Add(ErrorCode.ERR_FixedFieldMustNotBeRef, ErrorLocation);
622diagnostics.Add(ErrorCode.ERR_IllegalFixedType, loc);
Symbols\Source\SourceMemberMethodSymbol.cs (12)
357ErrorCode code = (this.MethodKind == MethodKind.Conversion || this.MethodKind == MethodKind.UserDefinedOperator) ?
358ErrorCode.ERR_BadVisOpReturn :
359ErrorCode.ERR_BadVisReturnType;
369ErrorCode.ERR_BadVisOpParam :
370ErrorCode.ERR_BadVisParamType;
409diagnostics.Add(ErrorCode.ERR_FileTypeDisallowedInSignature, GetFirstLocation(), returnType.Type, containingType);
416diagnostics.Add(ErrorCode.ERR_FileTypeDisallowedInSignature, GetFirstLocation(), param.Type, containingType);
1038diagnostics.Add(ErrorCode.ERR_ExternHasBody, location, this);
1042diagnostics.Add(ErrorCode.ERR_AbstractHasBody, location, this);
1066diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportDefaultInterfaceImplementation, location);
1072diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportStaticAbstractMembersInInterfaces, location);
1085diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportProtectedAccessForInterfaceMember, location);
Symbols\Source\SourceMethodSymbol.cs (4)
37diagnostics.Add(ErrorCode.ERR_UnexpectedToken, refKeyword.GetLocation(), refKeyword.ToString());
71diagnostics.Add(ErrorCode.ERR_BadAsyncArgType, getLocation(parameter, location, isExtensionParameter));
76diagnostics.Add(ErrorCode.ERR_UnsafeAsyncArgType, getLocation(parameter, location, isExtensionParameter));
80diagnostics.Add(ErrorCode.ERR_BadSpecialByRefParameter, getLocation(parameter, location, isExtensionParameter), parameter.Type);
Symbols\Source\SourceMethodSymbolWithAttributes.cs (63)
587diagnostics.Add(ErrorCode.ERR_SecurityCriticalOrSecuritySafeCriticalOnAsync, arguments.AttributeSyntaxOpt.Location, arguments.AttributeSyntaxOpt.GetErrorDisplayName());
621diagnostics.Add(ErrorCode.WRN_UnscopedRefAttributeOldRules, arguments.AttributeSyntaxOpt.Location);
635diagnostics.Add(ErrorCode.ERR_UnscopedRefAttributeUnsupportedMemberTarget, arguments.AttributeSyntaxOpt.Location);
640diagnostics.Add(ErrorCode.ERR_RequiresUnsafeAttributeInSource, arguments.AttributeSyntaxOpt.Location);
654? ErrorCode.ERR_CannotApplyOverloadResolutionPriorityToOverride
656: ErrorCode.ERR_CannotApplyOverloadResolutionPriorityToMember,
716diagnostics.Add(ErrorCode.ERR_AttributeNotOnEventAccessor, arguments.AttributeSyntaxOpt.Name.Location, description.FullName, attributeUsage.GetValidTargetsErrorArgument());
738diagnostics.Add(ErrorCode.ERR_AttributeNotOnAccessor, node.Name.Location, node.GetErrorDisplayName(), attributeUsage.GetValidTargetsErrorArgument());
743diagnostics.Add(ErrorCode.ERR_ConditionalOnInterfaceMethod, node.Location);
748diagnostics.Add(ErrorCode.ERR_ConditionalOnOverride, node.Location, this);
753diagnostics.Add(ErrorCode.ERR_ConditionalOnSpecialMethod, node.Location, this);
758diagnostics.Add(ErrorCode.ERR_ConditionalMustReturnVoid, node.Location, this);
763diagnostics.Add(ErrorCode.ERR_ConditionalWithOutParam, node.Location, this);
767diagnostics.Add(ErrorCode.ERR_ConditionalOnLocalFunction, node.Location, this);
776diagnostics.Add(ErrorCode.ERR_BadArgumentToAttribute, attribute.GetAttributeArgumentLocation(0), node.GetErrorDisplayName());
844diagnostics.Add(ErrorCode.ERR_DllImportOnInvalidMethod, arguments.AttributeSyntaxOpt.Name.Location);
860diagnostics.Add(ErrorCode.ERR_DllImportOnGenericMethod, arguments.AttributeSyntaxOpt.Name.Location);
868diagnostics.Add(ErrorCode.ERR_InvalidAttributeArgument, attribute.GetAttributeArgumentLocation(0), arguments.AttributeSyntaxOpt.GetErrorDisplayName());
897diagnostics.Add(ErrorCode.ERR_InvalidNamedArgument, arguments.AttributeSyntaxOpt.ArgumentList.Arguments[position].Location, namedArg.Key);
964diagnostics.Add(ErrorCode.ERR_ModuleInitializerMethodMustBeOrdinary, arguments.AttributeSyntaxOpt.Location);
974diagnostics.Add(ErrorCode.ERR_ModuleInitializerMethodMustBeAccessibleOutsideTopLevelType, arguments.AttributeSyntaxOpt.Location, Name);
982diagnostics.Add(ErrorCode.ERR_ModuleInitializerMethodMustBeStaticParameterlessVoid, arguments.AttributeSyntaxOpt.Location, Name);
988diagnostics.Add(ErrorCode.ERR_ModuleInitializerMethodAndContainingTypesMustNotBeGeneric, arguments.AttributeSyntaxOpt.Location, Name);
996diagnostics.Add(ErrorCode.ERR_ModuleInitializerCannotBeUnmanagedCallersOnly, arguments.AttributeSyntaxOpt.Location);
1033diagnostics.Add(ErrorCode.ERR_InterceptsLocationUnsupportedVersion, attributeLocation, version);
1039diagnostics.Add(ErrorCode.ERR_InterceptsLocationDataInvalidFormat, attributeLocation);
1063diagnostics.Add(ErrorCode.ERR_InterceptsLocationDuplicateFile, attributeLocation, displayFileName);
1069diagnostics.Add(ErrorCode.ERR_InterceptsLocationFileNotFound, attributeLocation, displayFileName);
1079diagnostics.Add(ErrorCode.ERR_InterceptsLocationDataInvalidPosition, attributeLocation, displayFileName);
1099diagnostics.Add(ErrorCode.ERR_InterceptorNameNotInvoked, attributeLocation, referencedToken.Text);
1102diagnostics.Add(ErrorCode.ERR_InterceptorPositionBadToken, attributeLocation, referencedToken.Text);
1108diagnostics.Add(ErrorCode.ERR_InterceptsLocationDataInvalidPosition, attributeLocation, displayFileName);
1154diagnostics.Add(ErrorCode.ERR_InterceptorGlobalNamespace, attributeLocation);
1159diagnostics.Add(ErrorCode.ERR_InterceptorsFeatureNotEnabled, attributeLocation, recommendedProperty);
1174diagnostics.Add(ErrorCode.WRN_InterceptsLocationAttributeUnsupportedSignature, attributeLocation);
1194diagnostics.Add(ErrorCode.ERR_InterceptorFilePathCannotBeNull, attributeData.GetAttributeArgumentLocation(filePathParameterIndex));
1208diagnostics.Add(ErrorCode.ERR_InterceptorNonUniquePath, attributeData.GetAttributeArgumentLocation(filePathParameterIndex), normalizedPath);
1219diagnostics.Add(ErrorCode.ERR_InterceptorNonUniquePath, attributeData.GetAttributeArgumentLocation(filePathParameterIndex), attributeFilePath);
1241ErrorCode.ERR_InterceptorPathNotInCompilationWithCandidate,
1248diagnostics.Add(ErrorCode.ERR_InterceptorPathNotInCompilation, attributeData.GetAttributeArgumentLocation(filePathParameterIndex), normalizedPath);
1262diagnostics.Add(ErrorCode.ERR_InterceptorLineCharacterMustBePositive, location);
1271diagnostics.Add(ErrorCode.ERR_InterceptorLineOutOfRange, attributeData.GetAttributeArgumentLocation(lineNumberParameterIndex), referencedLineCount, lineNumberOneBased);
1279diagnostics.Add(ErrorCode.ERR_InterceptorCharacterOutOfRange, attributeData.GetAttributeArgumentLocation(characterNumberParameterIndex), lineLength, characterNumberOneBased);
1296diagnostics.Add(ErrorCode.ERR_InterceptorNameNotInvoked, attributeLocation, referencedToken.Text);
1299diagnostics.Add(ErrorCode.ERR_InterceptorPositionBadToken, attributeLocation, referencedToken.Text);
1308diagnostics.Add(ErrorCode.ERR_InterceptorMustReferToStartOfTokenPosition, attributeLocation, referencedToken.Text, linePositionZeroBased.Line + 1, linePositionZeroBased.Character + 1);
1354diagnostics.Add(ErrorCode.ERR_InterceptorGlobalNamespace, attributeSyntax);
1359diagnostics.Add(ErrorCode.ERR_InterceptorsFeatureNotEnabled, attributeSyntax, recommendedProperty);
1368diagnostics.Add(ErrorCode.ERR_InterceptorContainingTypeCannotBeGeneric, attributeLocation, this);
1374diagnostics.Add(ErrorCode.ERR_InterceptorMethodMustBeOrdinary, attributeLocation);
1382diagnostics.Add(ErrorCode.ERR_InterceptorCannotUseUnmanagedCallersOnly, attributeLocation);
1421diagnostics.Add(ErrorCode.ERR_CannotUseRefInUnmanagedCallersOnly, syntax.Location);
1437diagnostics.Add(ErrorCode.ERR_CannotUseManagedTypeInUnmanagedCallersOnly, syntax.Location, type, (isParam ? MessageID.IDS_Parameter : MessageID.IDS_Return).Localize());
1496diagnostics.Add(ErrorCode.ERR_ComImportWithUserCtor, this.GetFirstLocation());
1505diagnostics.Add(ErrorCode.ERR_ComImportWithImpl, this.GetFirstLocation(), this, ContainingType);
1519var errorCode = (this.MethodKind == MethodKind.Constructor || this.MethodKind == MethodKind.StaticConstructor) ?
1520ErrorCode.WRN_ExternCtorNoImplementation :
1521ErrorCode.WRN_ExternMethodNoImplementation;
1557diagnostics.Add(ErrorCode.ERR_BadAsyncReturn, errorLocation);
1577diagnostics.Add(ErrorCode.ERR_SecurityCriticalOrSecuritySafeCriticalOnAsyncInClassOrStruct, errorLocation);
1586diagnostics.Add(ErrorCode.ERR_SynchronizedAsyncMethod, errorLocation);
1606diagnostics.Add(ErrorCode.WRN_UndecoratedCancellationTokenParameter, errorLocation, this);
1612diagnostics.Add(ErrorCode.ERR_MultipleEnumeratorCancellationAttributes, errorLocation);
Symbols\Source\SourceNamedTypeSymbol.cs (36)
197diagnostics.Add(ErrorCode.ERR_IllegalVarianceSyntax, tp.VarianceKeyword.GetLocation());
220diagnostics.Add(ErrorCode.ERR_DuplicateTypeParameter, location, name);
231diagnostics.Add(ErrorCode.WRN_TypeParameterSameAsOuterTypeParameter, location, name, tpEnclosing.ContainingType);
247ErrorCode.ERR_PartialWrongTypeParamsVariance,
255ErrorCode.ERR_PartialWrongTypeParams,
535diagnostics.Add(ErrorCode.ERR_PartialWrongConstraints, GetFirstLocation(), this, typeParameters[i]);
1180diagnostics.Add(ErrorCode.ERR_CantUseRequiredAttribute, arguments.AttributeSyntaxOpt.Name.Location);
1202diagnostics.Add(ErrorCode.ERR_CollectionBuilderAttributeInvalidType, arguments.AttributeSyntaxOpt.Name.Location);
1212diagnostics.Add(ErrorCode.ERR_CollectionBuilderAttributeInvalidMethodName, arguments.AttributeSyntaxOpt.Name.Location);
1225diagnostics.Add(ErrorCode.ERR_InvalidInlineArrayLength, attribute.GetAttributeArgumentLocation(0));
1230diagnostics.Add(ErrorCode.ERR_AttributeOnBadSymbolType, arguments.AttributeSyntaxOpt.Name.Location, arguments.AttributeSyntaxOpt.GetErrorDisplayName(), "struct");
1234diagnostics.Add(ErrorCode.ERR_InlineArrayAttributeOnRecord, arguments.AttributeSyntaxOpt.Name.Location);
1328diagnosticsOpt.Add(ErrorCode.ERR_AttributeUsageOnNonAttributeClass, node.Name.Location, node.GetErrorDisplayName());
1343diagnosticsOpt.Add(ErrorCode.ERR_InvalidAttributeArgument, attribute.GetAttributeArgumentLocation(0), node.GetErrorDisplayName());
1414diagnostics.Add(ErrorCode.ERR_ConditionalOnNonAttributeClass, node.Location, node.GetErrorDisplayName());
1423diagnostics.Add(ErrorCode.ERR_BadArgumentToAttribute, attribute.GetAttributeArgumentLocation(0), node.GetErrorDisplayName());
1655diagnostics.Add(ErrorCode.ERR_ComImportWithoutUuidAttribute, allAttributeSyntaxNodes[index].Name.Location);
1664diagnostics.Add(ErrorCode.ERR_ComImportWithBase, this.GetFirstLocation(), this.Name);
1677diagnostics.Add(ErrorCode.ERR_ComImportWithInitializers, singleInitializer.Syntax.GetLocation(), this.Name);
1691diagnostics.Add(ErrorCode.ERR_ComImportWithInitializers, singleInitializer.Syntax.GetLocation(), this.Name);
1703diagnostics.Add(ErrorCode.WRN_CoClassWithoutComImport, allAttributeSyntaxNodes[index].Location, this.Name);
1712diagnostics.Add(ErrorCode.ERR_DefaultMemberOnIndexedType, allAttributeSyntaxNodes[index].Name.Location);
1954diagnostics.Add(ErrorCode.WRN_ObsoleteMembersShouldNotBeRequired, member.GetFirstLocation(), member);
1967diagnostics.Add(ErrorCode.ERR_StructLayoutAndExtendedLayout, GetFirstLocation());
1974diagnostics.Add(ErrorCode.ERR_InvalidInlineArrayLayout, GetFirstLocation());
1983diagnostics.Add(ErrorCode.ERR_InlineArrayUnsupportedElementFieldModifier, elementField.TryGetFirstLocation() ?? GetFirstLocation());
1997diagnostics.Add(ErrorCode.WRN_InlineArrayIndexerNotUsed, indexer.TryGetFirstLocation() ?? GetFirstLocation());
2005diagnostics.Add(ErrorCode.WRN_InlineArraySliceNotUsed, slice.TryGetFirstLocation() ?? GetFirstLocation());
2028diagnostics.Add(ErrorCode.WRN_InlineArrayConversionOperatorNotUsed, conversion.TryGetFirstLocation() ?? GetFirstLocation());
2037diagnostics.Add(ErrorCode.WRN_InlineArrayNotSupportedByLanguage, elementField.TryGetFirstLocation() ?? GetFirstLocation());
2041diagnostics.Add(ErrorCode.WRN_InlineArrayNotSupportedByLanguage, GetFirstLocation());
2047diagnostics.Add(ErrorCode.ERR_InvalidInlineArrayFields, GetFirstLocation());
2052diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportInlineArrayTypes, GetFirstLocation());
2060diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportExtendedLayoutTypes, GetFirstLocation());
2089diagnostics.Add(ErrorCode.ERR_EmbeddedAttributeMustFollowPattern, GetFirstLocation());
2100diagnostics.Add(ErrorCode.ERR_BadExtensionContainingType, syntax.Keyword);
Symbols\Source\SourceNamedTypeSymbol_Bases.cs (32)
132diagnostics.Add(ErrorCode.ERR_BadRecordBase, baseLocation);
137diagnostics.Add(ErrorCode.ERR_BadInheritanceFromRecord, baseLocation);
193diagnostics.Add(ErrorCode.WRN_DuplicateInterfaceWithNullabilityMismatchInBaseList, location, @interface, this);
198diagnostics.Add(ErrorCode.ERR_DuplicateInterfaceWithTupleNamesInBaseList, location, @interface, other, this);
202diagnostics.Add(ErrorCode.ERR_DuplicateInterfaceWithDifferencesInBaseList, location, @interface, other, this);
341var info = diagnostics.Add(ErrorCode.ERR_PartialMultipleBases, GetFirstLocation(), this);
392diagnostics.Add(ErrorCode.ERR_StaticBaseClass, baseTypeLocation, baseType, this);
400diagnostics.Add(ErrorCode.ERR_BadVisBaseClass, baseTypeLocation, this, lessVisibleType);
405diagnostics.Add(ErrorCode.ERR_BadVisBaseType, baseTypeLocation, this, lessVisibleType);
411diagnostics.Add(ErrorCode.ERR_FileTypeBase, baseTypeLocation, baseType, this);
422diagnostics.Add(ErrorCode.ERR_ClosedBaseTypeBaseFromOtherAssembly, baseTypeLocation, this, baseType);
438diagnostics.Add(ErrorCode.ERR_UnderspecifiedClosedSubtype, baseTypeLocation, this, typeParameter, baseType);
456diagnostics.Add(ErrorCode.ERR_BadVisBaseInterface, interfaceLocations[i], this, i);
461diagnostics.Add(ErrorCode.ERR_FileTypeBase, interfaceLocations[i], i, this);
517diagnostics.Add(ErrorCode.ERR_BadBaseType, typeSyntax.GetLocation());
545diagnostics.Add(ErrorCode.ERR_DeriveFromEnumOrValueType, location, this, baseType);
552diagnostics.Add(ErrorCode.ERR_CantDeriveFromSealedType, location, this, baseType);
586var info = diagnostics.Add(ErrorCode.ERR_StaticDerivedFromNonObject, location, this, localBase);
610diagnostics.Add(ErrorCode.ERR_DuplicateInterfaceInBaseList, location, baseType);
615diagnostics.Add(ErrorCode.WRN_DuplicateInterfaceWithNullabilityMismatchInBaseList, location, baseType, this);
622diagnostics.Add(ErrorCode.ERR_StaticClassInterfaceImpl, location, this);
632diagnostics.Add(ErrorCode.ERR_DeriveFromConstructedDynamic, location, this, baseType);
644diagnostics.Add(ErrorCode.ERR_BaseClassMustBeFirst, location, baseType);
649diagnostics.Add(ErrorCode.ERR_NoMultipleInheritance, location, this, localBase, baseType);
656diagnostics.Add(ErrorCode.ERR_DerivingFromATyVar, location, baseType);
665diagnostics.Add(ErrorCode.ERR_DeriveFromDynamic, location, this);
672diagnostics.Add(ErrorCode.ERR_NonInterfaceInInterfaceList, location, baseType);
680diagnostics.Add(ErrorCode.ERR_ObjectCantHaveBases, new SourceLocation(name));
691diagnostics.Add(ErrorCode.ERR_UnexpectedArgumentList, primaryConstructorBaseType.ArgumentList.Location);
695diagnostics.Add(ErrorCode.ERR_UnexpectedArgumentListInBaseTypeWithoutParameterList, primaryConstructorBaseType.ArgumentList.Location);
740diagnostics.Add(ErrorCode.ERR_CycleInInterfaceInheritance, GetFirstLocation(), this, t)));
828diagnostics.Add(ErrorCode.ERR_CircularBase, GetFirstLocation(), declaredBase, this));
Symbols\Source\SourceNamespaceSymbol.AliasesAndUsings.cs (20)
301diagnostics.Add(ErrorCode.ERR_DuplicateAlias, pair.Value.Alias.GetFirstLocation(), pair.Key);
334diagnostics.Add(ErrorCode.HDN_DuplicateWithGlobalUsing, namespaceOrType.UsingDirective!.NamespaceOrType.Location, namespaceOrType.NamespaceOrType);
370diagnostics.Add(ErrorCode.ERR_DuplicateAlias, externAlias.Alias.GetFirstLocation(), externAlias.Alias.Name);
482diagnostics.Add(ErrorCode.ERR_ExternAliasNotAllowed, aliasSyntax.Location);
492diagnostics.Add(ErrorCode.ERR_DuplicateAlias, existingAlias.Alias.GetFirstLocation(), existingAlias.Alias.Name);
499diagnostics.Add(ErrorCode.ERR_GlobalExternAlias, aliasSyntax.Identifier.GetLocation());
668diagnostics.Add(ErrorCode.WRN_GlobalAliasDefn, location);
673diagnostics.Add(ErrorCode.ERR_NoAliasHere, location);
689diagnostics.Add(ErrorCode.ERR_DuplicateAlias, location, identifierValueText);
700diagnostics.Add(ErrorCode.ERR_DuplicateAlias, usingDirective.Location, identifierValueText);
742diagnostics.Add(ErrorCode.ERR_BadUnsafeInUsingDirective, unsafeKeywordLocation);
788diagnostics.Add(ErrorCode.ERR_BadUsingType, usingDirective.NamespaceOrType.Location, imported);
793ErrorCode.HDN_DuplicateWithGlobalUsing :
794ErrorCode.WRN_DuplicateUsing,
806diagnostics.Add(ErrorCode.ERR_BadUsingNamespace, usingDirective.NamespaceOrType.Location, imported);
813diagnostics.Add(ErrorCode.ERR_GlobalUsingStaticFileType, usingDirective.NamespaceOrType.Location, imported);
819ErrorCode.HDN_DuplicateWithGlobalUsing :
820ErrorCode.WRN_DuplicateUsing,
834diagnostics.Add(ErrorCode.ERR_BadUsingStaticType, usingDirective.NamespaceOrType.Location, imported.GetKindText());
846diagnostics.Add(ErrorCode.ERR_BadSKknown, usingDirective.NamespaceOrType.Location,
Symbols\Source\SourceOrdinaryMethodSymbol.cs (54)
151diagnostics.Add(ErrorCode.ERR_MethodReturnCantBeRefAny, syntax.ReturnType.Location, returnType.Type);
219diagnostics.Add(ErrorCode.ERR_BadTypeforThis, loc, parameter0Type.Type);
223diagnostics.Add(ErrorCode.ERR_RefExtensionMustBeValueTypeOrConstrainedToOne, _location, Name);
228diagnostics.Add(ErrorCode.ERR_InExtensionMustBeValueType, _location, Name);
232diagnostics.Add(ErrorCode.ERR_ExtensionMethodsDecl, _location, ContainingType.Name);
241diagnostics.Add(ErrorCode.ERR_BadExtensionAgg, loc);
245diagnostics.Add(ErrorCode.ERR_BadExtensionMeth, _location);
255diagnostics.Add(ErrorCode.ERR_InstanceMemberWithUnnamedExtensionsParameter, _location, Name);
268ErrorCode.ERR_ExtensionAttrNotFound,
494diagnostics.Add(ErrorCode.ERR_PartialMethodReturnTypeDifference, implementation.GetFirstLocation());
499diagnostics.Add(ErrorCode.ERR_PartialMemberInconsistentTupleNames, implementation.GetFirstLocation(), definition, implementation);
504diagnostics.Add(ErrorCode.ERR_PartialMemberRefReturnDifference, implementation.GetFirstLocation());
509diagnostics.Add(ErrorCode.ERR_PartialMemberStaticDifference, implementation.GetFirstLocation());
514diagnostics.Add(ErrorCode.ERR_PartialMemberReadOnlyDifference, implementation.GetFirstLocation());
519diagnostics.Add(ErrorCode.ERR_PartialMethodExtensionDifference, implementation.GetFirstLocation());
524diagnostics.Add(ErrorCode.ERR_PartialMemberUnsafeDifference, implementation.GetFirstLocation());
529diagnostics.Add(ErrorCode.ERR_PartialMemberParamsDifference, implementation.GetFirstLocation());
535diagnostics.Add(ErrorCode.ERR_PartialMemberAccessibilityDifference, implementation.GetFirstLocation());
543diagnostics.Add(ErrorCode.ERR_PartialMemberExtendedModDifference, implementation.GetFirstLocation());
554diagnostics.Add(ErrorCode.ERR_ScopedMismatchInParameterOfPartial, implementingMethod.GetFirstLocation(), new FormattedSymbol(implementingParameter, SymbolDisplayFormat.ShortFormat));
571diagnostics.Add(ErrorCode.WRN_NullabilityMismatchInReturnTypeOnPartial, implementingMethod.GetFirstLocation());
575diagnostics.Add(ErrorCode.WRN_NullabilityMismatchInParameterTypeOnPartial, implementingMethod.GetFirstLocation(), new FormattedSymbol(implementingParameter, SymbolDisplayFormat.ShortFormat));
585diagnostics.Add(ErrorCode.WRN_PartialMethodTypeDifference, implementation.GetFirstLocation(),
624diagnostics.Add(ErrorCode.ERR_PartialMethodInconsistentConstraints, implementation.GetFirstLocation(), implementation, typeParameter2.Name);
628diagnostics.Add(ErrorCode.WRN_NullabilityMismatchInConstraintsOnPartialImplementation, implementation.GetFirstLocation(), implementation, typeParameter2.Name);
676ErrorCode report;
683report = ErrorCode.ERR_OverrideRefConstraintNotSatisfied;
690report = ErrorCode.ERR_OverrideValConstraintNotSatisfied;
697report = ErrorCode.ERR_OverrideDefaultConstraintNotSatisfied;
855diagnostics.Add(ErrorCode.ERR_PartialMemberCannotBeAbstract, location);
859diagnostics.Add(ErrorCode.ERR_PartialMethodWithNonVoidReturnMustHaveAccessMods, location, this);
863diagnostics.Add(ErrorCode.ERR_PartialMethodWithExtendedModMustHaveAccessMods, location, this);
867diagnostics.Add(ErrorCode.ERR_PartialMethodWithOutParamMustHaveAccessMods, location, this);
871diagnostics.Add(ErrorCode.ERR_VirtualPrivate, location, this);
876diagnostics.Add(ErrorCode.ERR_OverrideNotNew, location, this);
881diagnostics.Add(ErrorCode.ERR_SealedNonOverride, location, this);
886diagnostics.Add(ErrorCode.ERR_BadMemberFlag, location, SyntaxFacts.GetText(SyntaxKind.SealedKeyword));
895diagnostics.Add(ErrorCode.ERR_AbstractAndExtern, location, this);
899diagnostics.Add(ErrorCode.ERR_AbstractAndSealed, location, this);
903diagnostics.Add(ErrorCode.ERR_AbstractNotVirtual, location, this.Kind.Localize(), this);
908diagnostics.Add(ErrorCode.ERR_BadMemberFlag, location, SyntaxFacts.GetText(SyntaxKind.AbstractKeyword));
913diagnostics.Add(ErrorCode.ERR_BadMemberFlag, location, SyntaxFacts.GetText(SyntaxKind.VirtualKeyword));
918diagnostics.Add(ErrorCode.ERR_StaticMemberCantBeReadOnly, location, this);
923diagnostics.Add(ErrorCode.ERR_AbstractInConcreteClass, location, this, ContainingType);
928diagnostics.Add(ErrorCode.ERR_NewVirtualInSealed, location, this, ContainingType);
932diagnostics.Add(ErrorCode.ERR_BadAsyncLacksBody, location);
936diagnostics.Add(ErrorCode.ERR_ConcreteMissingBody, location, this);
944diagnostics.Add(ErrorCode.ERR_InstanceMemberInStaticClass, location, Name);
948diagnostics.Add(ErrorCode.ERR_BadVarargs, location);
952diagnostics.Add(ErrorCode.ERR_VarargsAsync, location);
1166diagnostics.Add(ErrorCode.ERR_IllegalVarianceSyntax, parameter.VarianceKeyword.GetLocation());
1182diagnostics.Add(ErrorCode.ERR_TypeParameterSameNameAsExtensionTypeParameter, location, name);
1188diagnostics.Add(ErrorCode.WRN_TypeParameterSameAsOuterTypeParameter, location, name, tpEnclosing.ContainingType);
1198diagnostics.Add(ErrorCode.ERR_DuplicateTypeParameter, location, name);
Symbols\Source\SourcePropertyAccessorSymbol.cs (13)
582diagnostics.Add(ErrorCode.ERR_AbstractInConcreteClass, location, this, ContainingType);
587diagnostics.Add(ErrorCode.ERR_NewVirtualInSealed, location, this, ContainingType);
591diagnostics.Add(ErrorCode.ERR_ConcreteMissingBody, location, this);
600diagnostics.Add(ErrorCode.ERR_InvalidPropertyReadOnlyMods, location, _property);
605diagnostics.Add(ErrorCode.ERR_StaticMemberCantBeReadOnly, location, this);
609diagnostics.Add(ErrorCode.ERR_InitInExtension, location, _property);
614diagnostics.Add(ErrorCode.ERR_InitCannotBeReadonly, location, _property);
619diagnostics.Add(ErrorCode.ERR_AutoSetterCantBeReadOnly, location, this);
624diagnostics.Add(ErrorCode.ERR_BadInitAccessor, location);
887diagnostics.Add(ErrorCode.ERR_PartialMemberAccessibilityDifference, implementationAccessor.GetFirstLocation());
892diagnostics.Add(ErrorCode.ERR_PartialMemberReadOnlyDifference, implementationAccessor.GetFirstLocation());
897diagnostics.Add(ErrorCode.ERR_PartialMemberUnsafeDifference, implementationAccessor.GetFirstLocation());
903diagnostics.Add(ErrorCode.ERR_PartialPropertyInitMismatch, implementationAccessor.GetFirstLocation(), implementationAccessor, accessorName);
Symbols\Source\SourcePropertySymbol.cs (30)
263diagnostics.Add(ErrorCode.ERR_DuplicateAccessor, accessor.Keyword.GetLocation());
276diagnostics.Add(ErrorCode.ERR_DuplicateAccessor, accessor.Keyword.GetLocation());
281diagnostics.Add(ErrorCode.ERR_GetOrSetExpected, accessor.Keyword.GetLocation());
493diagnostics.Add(ErrorCode.ERR_BadMemberFlag, location, SyntaxFacts.GetText(SyntaxKind.RequiredKeyword));
584diagnostics.Add((this.IsIndexer ? ErrorCode.ERR_BadVisIndexerReturn : ErrorCode.ERR_BadVisPropertyType), Location, this, type.Type);
597diagnostics.Add(ErrorCode.ERR_FileTypeDisallowedInSignature, Location, type.Type, containingType);
607diagnostics.Add(ErrorCode.ERR_IndexerCantHaveVoidType, Location);
611diagnostics.Add(ErrorCode.ERR_PropertyCantHaveVoidType, Location, this);
628diagnostics.Add(ErrorCode.ERR_IndexerNeedsParam, parameterSyntaxOpt.GetLastToken().GetLocation());
641diagnostics.Add(ErrorCode.ERR_IllegalVarArgs, arglistToken.GetLocation());
652diagnostics.Add(ErrorCode.WRN_DefaultValueForUnconsumedLocation, paramNameToken.GetLocation(), paramNameToken.ValueText);
682diagnostics.Add(ErrorCode.ERR_BadVisIndexerParam, Location, this, param.Type);
686diagnostics.Add(ErrorCode.ERR_FileTypeDisallowedInSignature, Location, param.Type, containingTypeForFileTypeCheck);
690diagnostics.Add(ErrorCode.ERR_DuplicateGeneratedName, param.TryGetFirstLocation() ?? Location, param.Name);
698diagnostics.Add(ErrorCode.ERR_ValueParameterSameNameAsExtensionTypeParameter, setter.GetFirstLocationOrNone());
703diagnostics.Add(ErrorCode.ERR_ValueParameterSameNameAsExtensionParameter, setter.GetFirstLocationOrNone());
710diagnostics.Add(ErrorCode.ERR_BadVisIndexerParam, Location, this, extensionParameter.Type);
737diagnostics.Add(ErrorCode.ERR_PartialMemberTypeDifference, implementation.GetFirstLocation());
742diagnostics.Add(ErrorCode.ERR_PartialMemberInconsistentTupleNames, implementation.GetFirstLocation(), this, implementation);
748diagnostics.Add(ErrorCode.ERR_PartialMemberRefReturnDifference, implementation.GetFirstLocation());
754diagnostics.Add(ErrorCode.WRN_PartialMemberSignatureDifference, implementation.GetFirstLocation(),
761diagnostics.Add(ErrorCode.ERR_PartialPropertyRequiredDifference, implementation.GetFirstLocation());
766diagnostics.Add(ErrorCode.ERR_PartialMemberStaticDifference, implementation.GetFirstLocation());
771diagnostics.Add(ErrorCode.ERR_PartialMemberReadOnlyDifference, implementation.GetFirstLocation());
776diagnostics.Add(ErrorCode.ERR_PartialMemberUnsafeDifference, implementation.GetFirstLocation());
781diagnostics.Add(ErrorCode.ERR_PartialMemberParamsDifference, implementation.GetFirstLocation());
787diagnostics.Add(ErrorCode.ERR_PartialMemberAccessibilityDifference, implementation.GetFirstLocation());
795diagnostics.Add(ErrorCode.ERR_PartialMemberExtendedModDifference, implementation.GetFirstLocation());
807diagnostics.Add(ErrorCode.ERR_ScopedMismatchInParameterOfPartial, implementation.GetFirstLocation(), new FormattedSymbol(implementation.Parameters[i], SymbolDisplayFormat.ShortFormat));
Symbols\Source\SourcePropertySymbolBase.cs (50)
309diagnostics.Add(ErrorCode.ERR_InstancePropertyInitializerInInterface, Location);
313diagnostics.Add(ErrorCode.ERR_InitializerOnNonAutoProperty, Location);
354diagnostics.Add(ErrorCode.WRN_AccessorDoesNotUseBackingField, accessorToBlame.GetFirstLocation(), accessorName, property);
886diagnostics.Add(ErrorCode.ERR_RefReturningPropertiesCannotBeRequired, Location);
895diagnostics.Add(ErrorCode.ERR_AutoPropsInRoStruct, Location);
899diagnostics.Add(ErrorCode.ERR_AutoPropertyWithSetterCantBeReadOnly, Location, this);
909diagnostics.Add(ErrorCode.ERR_AutoPropertyCannotBeRefReturning, Location);
919diagnostics.Add(ErrorCode.ERR_AutoPropertyMustOverrideSet, Location);
931diagnostics.Add(ErrorCode.ERR_InterfacesCantContainFields, Location);
946diagnostics.Add(ErrorCode.ERR_RefPropertyCannotHaveSetAccessor, _setMethod.GetFirstLocation());
952diagnostics.Add(ErrorCode.ERR_DuplicatePropertyAccessMods, Location, this);
956diagnostics.Add(ErrorCode.ERR_DuplicatePropertyReadOnlyMods, Location, this);
969diagnostics.Add(ErrorCode.ERR_PropertyWithNoAccessors, Location, this);
975diagnostics.Add(ErrorCode.ERR_RefPropertyMustHaveGetAccessor, Location);
983diagnostics.Add(ErrorCode.ERR_AutoPropertyMustHaveGetAccessor, _setMethod!.GetFirstLocation());
994diagnostics.Add(ErrorCode.ERR_AccessModMissingAccessor, Location, this);
1000diagnostics.Add(ErrorCode.ERR_ReadOnlyModMissingAccessor, Location, this);
1097diagnostics.Add(ErrorCode.ERR_VirtualPrivate, location, this);
1102diagnostics.Add(ErrorCode.ERR_StaticMemberCantBeReadOnly, location, this);
1107diagnostics.Add(ErrorCode.ERR_OverrideNotNew, location, this);
1112diagnostics.Add(ErrorCode.ERR_SealedNonOverride, location, this);
1116diagnostics.Add(ErrorCode.ERR_PartialMemberOnlyInPartialClass, location);
1120diagnostics.Add(ErrorCode.ERR_PartialMemberNotExplicit, location);
1124diagnostics.Add(ErrorCode.ERR_PartialMemberCannotBeAbstract, location);
1129diagnostics.Add(ErrorCode.ERR_BadMemberFlag, location, SyntaxFacts.GetText(SyntaxKind.AbstractKeyword));
1134diagnostics.Add(ErrorCode.ERR_BadMemberFlag, location, SyntaxFacts.GetText(SyntaxKind.VirtualKeyword));
1138diagnostics.Add(ErrorCode.ERR_AbstractAndExtern, location, this);
1142diagnostics.Add(ErrorCode.ERR_AbstractAndSealed, location, this);
1146diagnostics.Add(ErrorCode.ERR_AbstractNotVirtual, location, this.Kind.Localize(), this);
1154diagnostics.Add(ErrorCode.ERR_InstanceMemberWithUnnamedExtensionsParameter, location, Name);
1158ErrorCode errorCode = isIndexer ? ErrorCode.ERR_IndexerInStaticClass : ErrorCode.ERR_InstanceMemberInStaticClass;
1168diagnostics.Add(ErrorCode.ERR_InvalidPropertyAccessMod, accessor.GetFirstLocation(), accessor, this);
1190diagnostics.Add(ErrorCode.ERR_PrivateAbstractAccessor, accessor.GetFirstLocation(), accessor);
1209diagnostics.Add(ErrorCode.ERR_ExplicitPropertyMissingAccessor, this.Location, this, otherAccessor);
1213diagnostics.Add(ErrorCode.ERR_ExplicitPropertyAddingAccessor, thisAccessor.GetFirstLocation(), thisAccessor, explicitlyImplementedProperty);
1218diagnostics.Add(ErrorCode.ERR_ExplicitPropertyMismatchInitOnly, thisAccessor.GetFirstLocation(), thisAccessor, otherAccessor);
1575diagnostics.Add(ErrorCode.ERR_ExplicitDynamicAttr, arguments.AttributeSyntaxOpt.Location);
1615diagnostics.Add(ErrorCode.WRN_UnscopedRefAttributeOldRules, arguments.AttributeSyntaxOpt.Location);
1629diagnostics.Add(ErrorCode.ERR_UnscopedRefAttributeUnsupportedMemberTarget, arguments.AttributeSyntaxOpt.Location);
1634diagnostics.Add(ErrorCode.ERR_RequiresUnsafeAttributeInSource, arguments.AttributeSyntaxOpt.Location);
1644? ErrorCode.ERR_CannotApplyOverloadResolutionPriorityToOverride
1646: ErrorCode.ERR_CannotApplyOverloadResolutionPriorityToMember,
1743diagnostics.Add(ErrorCode.ERR_BadIndexerNameAttr, node.Name.Location, node.GetErrorDisplayName());
1750diagnostics.Add(ErrorCode.ERR_BadArgumentToAttribute, node.ArgumentList.Arguments[0].Location, node.GetErrorDisplayName());
1756diagnostics.Add(ErrorCode.ERR_InsufficientStack, node.ArgumentList.Arguments[0].Location);
1892diagnostics.Add(ErrorCode.ERR_FieldCantBeRefAny, TypeLocation, type);
1899diagnostics.Add(ErrorCode.ERR_BadFieldTypeInRecord, TypeLocation, type);
1903diagnostics.Add(ErrorCode.ERR_FieldAutoPropCantBeByRefLike, TypeLocation, type);
Symbols\Source\SourceUserDefinedOperatorSymbolBase.cs (50)
67diagnostics.Add(ErrorCode.ERR_InterfacesCantContainConversionOrEqualityOperators, this.GetFirstLocation());
77diagnostics.Add(ErrorCode.ERR_OperatorInStaticClass, location, this);
83diagnostics.Add(ErrorCode.ERR_OperatorInExtensionOfStaticClass, location);
93diagnostics.Add(ErrorCode.ERR_ExplicitImplementationOfOperatorsMustBeStatic, this.GetFirstLocation(), this);
100diagnostics.Add(ErrorCode.ERR_OperatorsMustBePublic, this.GetFirstLocation(), this);
106diagnostics.Add(ErrorCode.ERR_OperatorsMustBeStaticAndPublic, this.GetFirstLocation(), this);
115diagnostics.Add(ErrorCode.ERR_AbstractAndExtern, location, this);
119diagnostics.Add(ErrorCode.ERR_AbstractNotVirtual, location, this.Kind.Localize(), this);
126diagnostics.Add(ErrorCode.ERR_ExternHasBody, location, this);
130diagnostics.Add(ErrorCode.ERR_AbstractHasBody, location, this);
138diagnostics.Add(ErrorCode.ERR_ConcreteMissingBody, location, this);
143diagnostics.Add(ErrorCode.ERR_OverrideNotNew, location, this);
148diagnostics.Add(ErrorCode.ERR_SealedNonOverride, location, this);
152diagnostics.Add(ErrorCode.ERR_AbstractAndSealed, location, this);
157diagnostics.Add(ErrorCode.ERR_AbstractInConcreteClass, location, this, ContainingType);
162diagnostics.Add(ErrorCode.ERR_NewVirtualInSealed, location, this, ContainingType);
242diagnostics.Add(ErrorCode.ERR_BadMemberFlag, location, ModifierUtils.ConvertSingleModifierToSyntaxText(DeclarationModifiers.Sealed));
302diagnostics.Add(ErrorCode.ERR_InvalidModifierForLanguageVersion, location,
337diagnostics.Add(ErrorCode.ERR_IllegalVarArgs, new SourceLocation(arglistToken));
350diagnostics.Add(ErrorCode.ERR_MethodReturnCantBeRefAny, returnTypeSyntax.Location, returnType.Type);
390diagnostics.Add(ErrorCode.ERR_InstanceMemberWithUnnamedExtensionsParameter, _location, new FormattedSymbol(this, SymbolDisplayFormat.ShortFormat));
410diagnostics.Add(ErrorCode.ERR_InstanceOperatorStructExtensionWrongReceiverRefKind, _location);
419diagnostics.Add(ErrorCode.ERR_InstanceOperatorStructExtensionWrongReceiverRefKind, _location);
423diagnostics.Add(ErrorCode.ERR_InstanceOperatorExtensionWrongReceiverType, _location);
475diagnostics.Add(ErrorCode.ERR_IllegalRefParam, this.GetFirstLocation());
565diagnostics.Add(ErrorCode.ERR_OperatorMustReturnVoid, this.GetFirstLocation());
648diagnostics.Add(ErrorCode.ERR_ConversionWithInterface, this.GetFirstLocation(), this);
662diagnostics.Add(IsInInterfaceAndAbstractOrVirtual() ? ErrorCode.ERR_AbstractConversionNotInvolvingContainedType : ErrorCode.ERR_ConversionNotInvolvingContainedType, this.GetFirstLocation());
673diagnostics.Add(ErrorCode.ERR_IdentityConversion, this.GetFirstLocation());
741diagnostics.Add(ErrorCode.ERR_BadDynamicConversion, this.GetFirstLocation(), this);
769diagnostics.Add(ErrorCode.ERR_ConversionWithBase, this.GetFirstLocation(), this);
774diagnostics.Add(ErrorCode.ERR_ConversionWithDerived, this.GetFirstLocation(), this);
786diagnostics.Add(ErrorCode.ERR_OperatorCantReturnVoid, this.GetFirstLocation());
805ErrorCode.ERR_BadAbstractUnaryOperatorSignature :
807ErrorCode.ERR_BadExtensionUnaryOperatorSignature :
808ErrorCode.ERR_BadUnaryOperatorSignature),
821diagnostics.Add(ErrorCode.ERR_OpTFRetType, this.GetFirstLocation());
874ErrorCode.ERR_BadAbstractIncDecSignature :
876ErrorCode.ERR_BadExtensionIncDecSignature :
877ErrorCode.ERR_BadIncDecSignature),
887diagnostics.Add(IsInInterfaceAndAbstractOrVirtual() ? ErrorCode.ERR_BadAbstractIncDecRetType : ErrorCode.ERR_BadIncDecRetType, this.GetFirstLocation());
949ErrorCode.ERR_BadAbstractShiftOperatorSignature :
950(ContainingType.IsExtension ? ErrorCode.ERR_BadExtensionShiftOperatorSignature : ErrorCode.ERR_BadShiftOperatorSignature),
971ErrorCode.ERR_BadAbstractBinaryOperatorSignature :
972(ContainingType.IsExtension ? ErrorCode.ERR_BadExtensionBinaryOperatorSignature : ErrorCode.ERR_BadBinaryOperatorSignature),
984diagnostics.Add(ErrorCode.ERR_BadAbstractEqualityOperatorSignature, this.GetFirstLocation(), this.ContainingType);
Symbols\Symbol.cs (15)
1195if (info.Code == (int)ErrorCode.WRN_UnifyReferenceBldRev ||
1196info.Code == (int)ErrorCode.WRN_UnifyReferenceMajMin ||
1197info.Code == (int)ErrorCode.ERR_AssemblyMatchBadVersion)
1217if (info.DiagnosticInfo?.Code == (int)ErrorCode.ERR_BogusType)
1233info = info.AdjustDiagnosticInfo(new CSDiagnosticInfo(ErrorCode.ERR_BindToBogus, this));
1240var useSiteInfo = new UseSiteInfo<AssemblySymbol>(new CSDiagnosticInfo(ErrorCode.ERR_BogusType, string.Empty));
1505ErrorCode.ERR_ConstraintOnlyAllowedOnGenericDecl,
1518diagnostics.Add(ErrorCode.ERR_BlockBodyAndExpressionBody, syntax.GetLocation());
1556diagnostics.Add(ErrorCode.ERR_ExplicitDynamicAttr, arguments.AttributeSyntaxOpt.Location);
1577diagnostics.Add(ErrorCode.ERR_ExplicitTupleElementNamesAttribute, arguments.AttributeSyntaxOpt.Location);
1583diagnostics.Add(ErrorCode.ERR_ExplicitNullableAttribute, arguments.AttributeSyntaxOpt.Location);
1601diagnostics.Add(ErrorCode.ERR_ExplicitExtension, arguments.AttributeSyntaxOpt.Location);
1607diagnostics.Add(ErrorCode.ERR_ExplicitRequiredMember, arguments.AttributeSyntaxOpt.Location);
1613diagnostics.Add(ErrorCode.ERR_ExplicitScopedRef, arguments.AttributeSyntaxOpt.Location);
1642diagnostics.Add(ErrorCode.ERR_ExplicitReservedAttr, arguments.AttributeSyntaxOpt.Location, attributeDescription.FullName);
Symbols\Symbol_Attributes.cs (12)
223arguments.Diagnostics.DiagnosticBag.Add(ErrorCode.ERR_ExplicitReservedAttr, arguments.AttributeSyntaxOpt.Location, AttributeDescription.CompilerFeatureRequiredAttribute.FullName);
230arguments.Diagnostics.DiagnosticBag.Add(ErrorCode.ERR_InvalidExperimentalDiagID, attrArgumentLocation);
235arguments.Diagnostics.DiagnosticBag.Add(ErrorCode.ERR_AttributeCannotBeAppliedManually, arguments.AttributeSyntaxOpt!.Location, args: [AttributeDescription.MetadataUpdateDeletedAttribute.FullName]);
688diagnostics.Add(ErrorCode.ERR_AttributesNotAllowed, attributeList);
711diagnostics.Add(ErrorCode.WRN_NonECMAFeature, targetOpt.GetLocation(), MessageID.IDS_FeatureModuleAttrLoc);
722diagnostics.Add(ErrorCode.WRN_InvalidAttributeLocation,
741diagnostics.Add(ErrorCode.ERR_GlobalAttributesNotAllowed, targetOpt.Identifier.GetLocation());
751diagnostics.Add(ErrorCode.WRN_AttributeLocationOnBadDeclaration,
913diagnostics.Add(ErrorCode.ERR_AttributesNotAllowed, node.Name.Location);
920diagnostics.Add(ErrorCode.ERR_DuplicateAttribute, node.Name.Location, node.GetErrorDisplayName());
940diagnostics.Add(ErrorCode.ERR_AttributeOnBadSymbolType, node.Name.Location, node.GetErrorDisplayName(), attributeUsageInfo.GetValidTargetsErrorArgument());
955diagnostics.Add(ErrorCode.ERR_SecurityAttributeInvalidTarget, node.Name.Location, node.GetErrorDisplayName());
Symbols\TypeSymbol.cs (50)
522=> code is (int)ErrorCode.ERR_UnsupportedCompilerFeature or (int)ErrorCode.ERR_BogusType;
529return (object)info != null && info.Code is (int)ErrorCode.ERR_UnsupportedCompilerFeature or (int)ErrorCode.ERR_BogusType;
860diagnostics.Add(ErrorCode.ERR_DuplicateExplicitImpl, implementingType.GetFirstLocation(), interfaceMember);
1020diagnostics.Add(ErrorCode.ERR_ImplicitImplementationOfInaccessibleInterfaceMember, GetImplicitImplementationDiagnosticLocation(interfaceMember, implementingType, implicitImpl), implementingType, interfaceMember, implicitImpl);
1029diagnostics.Add(ErrorCode.ERR_ImplicitImplementationOfNonPublicInterfaceMember, GetImplicitImplementationDiagnosticLocation(interfaceMember, implementingType, implicitImpl),
1081diagnostics.Add(ErrorCode.ERR_MostSpecificImplementationIsNotFound, GetInterfaceLocation(interfaceMember, implementingType),
1107return !symbolAndDiagnostics.Diagnostics.Diagnostics.Any(static d => d.Code == (int)ErrorCode.ERR_MostSpecificImplementationIsNotFound);
1639diagnostics.Add(ErrorCode.ERR_RefStructDoesNotSupportDefaultInterfaceImplementationForMember,
1653diagnostics.Add(ErrorCode.ERR_LanguageVersionDoesNotSupportInterfaceImplementationForMember,
1666ErrorCode.ERR_RuntimeDoesNotSupportStaticAbstractMembersInInterfacesForMember :
1667ErrorCode.ERR_RuntimeDoesNotSupportDefaultInterfaceImplementationForMember,
1691diagnostics.Add(ErrorCode.ERR_MethodImplementingAccessor, GetImplicitImplementationDiagnosticLocation(interfaceMember, implementingType, implicitImpl), implicitImpl, interfaceMethod, implementingType);
1695diagnostics.Add(ErrorCode.ERR_AccessorImplementingMethod, GetImplicitImplementationDiagnosticLocation(interfaceMember, implementingType, implicitImpl), implicitImpl, interfaceMethod, implementingType);
1704diagnostics.Add(ErrorCode.ERR_InterfaceImplementedByConditional, GetImplicitImplementationDiagnosticLocation(interfaceMember, implementingType, implicitImpl), implicitImpl, interfaceMethod, implementingType);
1708diagnostics.Add(ErrorCode.ERR_InterfaceImplementedByUnmanagedCallersOnlyMethod, GetImplicitImplementationDiagnosticLocation(interfaceMember, implementingType, implicitImpl), implicitImpl, interfaceMethod, implementingType);
1720diagnostics.Add(ErrorCode.ERR_ImplBadTupleNames, GetImplicitImplementationDiagnosticLocation(interfaceMember, implementingType, implicitImpl), implicitImpl, interfaceMember);
1743diagnostics.Add(ErrorCode.WRN_MultipleRuntimeImplementationMatches, GetImplicitImplementationDiagnosticLocation(interfaceMember, implementingType, member), member, interfaceMember, implementingType);
1754diagnostics.Add(ErrorCode.ERR_LanguageVersionDoesNotSupportInterfaceImplementationForMember,
1764diagnostics.Add(ErrorCode.ERR_RuntimeDoesNotSupportStaticAbstractMembersInInterfacesForMember,
1789diagnostics.Add(ErrorCode.WRN_NullabilityMismatchInTypeOnExplicitImplementation,
1794diagnostics.Add(ErrorCode.WRN_NullabilityMismatchInTypeOnImplicitImplementation,
1805isExplicit ? ErrorCode.ERR_CallerUnsafeExplicitlyImplementingSafe : ErrorCode.ERR_CallerUnsafeImplicitlyImplementingSafe,
1827ErrorCode.WRN_TopLevelNullabilityMismatchInReturnTypeOnExplicitImplementation :
1828ErrorCode.WRN_NullabilityMismatchInReturnTypeOnExplicitImplementation,
1834ErrorCode.WRN_TopLevelNullabilityMismatchInReturnTypeOnImplicitImplementation :
1835ErrorCode.WRN_NullabilityMismatchInReturnTypeOnImplicitImplementation,
1848ErrorCode.WRN_TopLevelNullabilityMismatchInParameterTypeOnExplicitImplementation :
1849ErrorCode.WRN_NullabilityMismatchInParameterTypeOnExplicitImplementation,
1857ErrorCode.WRN_TopLevelNullabilityMismatchInParameterTypeOnImplicitImplementation :
1858ErrorCode.WRN_NullabilityMismatchInParameterTypeOnImplicitImplementation,
1886ErrorCode.ERR_ScopedMismatchInParameterOfOverrideOrImplementation :
1887ErrorCode.WRN_ScopedMismatchInParameterOfOverrideOrImplementation,
1903diagnostics.Add(ErrorCode.WRN_OverridingDifferentRefness, location, implementingParameter, implementedParameter);
1911isExplicit ? ErrorCode.ERR_CallerUnsafeExplicitlyImplementingSafe : ErrorCode.ERR_CallerUnsafeImplicitlyImplementingSafe,
1929ErrorCode.ERR_UnscopedRefAttributeInterfaceImplementation,
2015diagnostics.Add(closestMismatch.IsStatic ? ErrorCode.ERR_CloseUnimplementedInterfaceMemberStatic : ErrorCode.ERR_CloseUnimplementedInterfaceMemberNotStatic,
2020ErrorCode errorCode = interfaceMember.IsAccessor() ? ErrorCode.ERR_UnimplementedInterfaceAccessor : ErrorCode.ERR_CloseUnimplementedInterfaceMemberNotPublic;
2025diagnostics.Add(ErrorCode.ERR_CloseUnimplementedInterfaceMemberWrongInitOnly, interfaceLocation, implementingType, interfaceMember, closestMismatch);
2071diagnostics.Add(ErrorCode.ERR_CloseUnimplementedInterfaceMemberWrongRefReturn, interfaceLocation, implementingType, interfaceMember, closestMismatch);
2076diagnostics.Add(ErrorCode.ERR_CloseUnimplementedInterfaceMemberOperatorMismatch, interfaceLocation, implementingType, interfaceMember, closestMismatch);
2080diagnostics.Add(ErrorCode.ERR_CloseUnimplementedInterfaceMemberWrongReturnType, interfaceLocation, implementingType, interfaceMember, closestMismatch, interfaceMemberReturnType);
2150diagnostics.Add(ErrorCode.ERR_ImplBadConstraints, GetImplicitImplementationDiagnosticLocation(interfaceMethod, implementingType, implicitImpl), typeParameter2.Name, implicitImpl, typeParameter1.Name, interfaceMethod);
2154diagnostics.Add(ErrorCode.WRN_NullabilityMismatchInConstraintsOnImplicitImplementation, GetImplicitImplementationDiagnosticLocation(interfaceMethod, implementingType, implicitImpl),
Symbols\VarianceSafety.cs (3)
95diagnostics.Add(ErrorCode.ERR_VarianceInterfaceNesting, member.GetFirstLocation());
477diagnostics.Add(ErrorCode.ERR_UnexpectedVarianceStaticMember, location, context, unsafeTypeParameter, actualVariance.Localize(), expectedVariance.Localize(),
482diagnostics.Add(ErrorCode.ERR_UnexpectedVariance, location, context, unsafeTypeParameter, actualVariance.Localize(), expectedVariance.Localize());