763 references to MessageID
Microsoft.CodeAnalysis.CSharp (763)
Binder\Binder.cs (1)
794MessageID.IDS_FeatureExtensions.CheckFeatureAvailability(diagnostics, syntax);
Binder\Binder.QueryUnboundLambdaState.cs (2)
52public override MessageID MessageID { get { return MessageID.IDS_FeatureQueryExpression; } } // TODO: what is the correct ID here?
Binder\Binder.ValueChecks.cs (15)
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()); 998Error(diagnostics, GetMethodGroupOrFunctionPointerLvalueError(valueKind), node, unconvertedAddressOf.Operand.Name, MessageID.IDS_AddressOfMethodGroup.Localize()); 1009Error(diagnostics, GetMethodGroupOrFunctionPointerLvalueError(valueKind), node, methodGroup.Name, MessageID.IDS_MethodGroup.Localize()); 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()); 1309else if (this.IsDirectlyInIterator && Compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefUnsafeInIteratorAsync)) 2062CheckFeatureAvailability(node, MessageID.IDS_FeatureInitOnlySetters, diagnostics); 3467MessageID cause; 3470cause = MessageID.IDS_FOREACHLOCAL; 3474cause = MessageID.IDS_USINGLOCAL; 3478cause = MessageID.IDS_FIXEDLOCAL;
Binder\Binder_AnonymousTypes.cs (1)
23MessageID.IDS_FeatureAnonymousTypes.CheckFeatureAvailability(diagnostics, node.NewKeyword);
Binder\Binder_Attributes.cs (1)
546CheckFeatureAvailability(namedArgument, MessageID.IDS_FeatureInitOnlySetters, diagnostics);
Binder\Binder_Await.cs (3)
22MessageID.IDS_FeatureAsync.CheckFeatureAvailability(diagnostics, node.AwaitKeyword); 237(nodeOrToken.SyntaxTree as CSharpSyntaxTree)?.Options?.IsFeatureEnabled(MessageID.IDS_AwaitInCatchAndFinally) == false) 243(nodeOrToken.SyntaxTree as CSharpSyntaxTree)?.Options?.IsFeatureEnabled(MessageID.IDS_AwaitInCatchAndFinally) == false)
Binder\Binder_Constraints.cs (4)
217CheckFeatureAvailability(syntax, MessageID.IDS_FeatureDefaultTypeParameterConstraint, diagnostics); 320CheckFeatureAvailability(allowsConstraint, MessageID.IDS_FeatureAllowsRefStructConstraint, diagnostics); 567CheckFeatureAvailability(syntax, MessageID.IDS_FeatureEnumGenericTypeConstraint, diagnostics); 572CheckFeatureAvailability(syntax, MessageID.IDS_FeatureDelegateGenericTypeConstraint, diagnostics);
Binder\Binder_Conversions.cs (11)
486CheckFeatureAvailability(syntax, MessageID.IDS_FeatureStaticAbstractMembersInInterfaces, diagnostics); 498CheckFeatureAvailability(syntax, MessageID.IDS_FeatureCheckedUserDefinedOperators, diagnostics); 504CheckFeatureAvailability(syntax, MessageID.IDS_FeatureUnions, diagnostics); 521CheckFeatureAvailability(syntax, MessageID.IDS_FeatureInlineArrays, diagnostics); 565CheckFeatureAvailability(syntax, MessageID.IDS_FeatureFirstClassSpan, diagnostics); 2473if (targetTyped && !destination.IsErrorType() && !Compilation.IsFeatureEnabled(MessageID.IDS_FeatureTargetTypedConditional)) 2481new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion())); 2843Debug.Assert(syntax.IsFeatureEnabled(MessageID.IDS_FeatureInferredDelegateType)); 3063Error(diagnostics, ErrorCode.WRN_OptionalParamValueMismatch, lambdaParameter.GetFirstLocation(), p + 1, lambdaParamDefault, delegateParamDefault ?? ((object)MessageID.IDS_Missing.Localize())); 3117CheckFeatureAvailability(syntax, MessageID.IDS_FeatureRefStructs, diagnostics); 3430else if (WasImplicitReceiver(receiverOpt) && !(IsInsideNameof && Compilation.IsFeatureEnabled(MessageID.IDS_FeatureInstanceMemberInNameof)))
Binder\Binder_Crefs.cs (3)
226CheckFeatureAvailability(syntax, MessageID.IDS_FeatureExtensions, diagnostics); 570CheckFeatureAvailability(syntax, MessageID.IDS_FeatureNativeInt, diagnostics); 1139CheckFeatureAvailability(parameter.ReadOnlyKeyword, MessageID.IDS_FeatureRefReadonlyParameters, diagnostics, forceWarning: true);
Binder\Binder_Deconstruct.cs (4)
45MessageID.IDS_FeatureMixedDeclarationsAndExpressionsInDeconstruction 54MessageID.IDS_FeatureMixedDeclarationsAndExpressionsInDeconstruction 768MessageID.IDS_FeatureTuples.CheckFeatureAvailability(diagnostics, component.Designation); 776MessageID.IDS_FeatureTuples.CheckFeatureAvailability(diagnostics, node);
Binder\Binder_Expressions.cs (52)
38if (!isExplicit && IsInsideNameof && Compilation.IsFeatureEnabled(MessageID.IDS_FeatureInstanceMemberInNameof)) 457if (CheckFeatureAvailability(syntax, MessageID.IDS_FeatureInferredDelegateType, diagnostics)) 753MessageID.IDS_FeatureDefaultLiteral.CheckFeatureAvailability(diagnostics, node); 913MessageID.IDS_FeatureThrowExpression.CheckFeatureAvailability(diagnostics, node.ThrowKeyword); 1036MessageID.IDS_FeatureTuples.CheckFeatureAvailability(diagnostics, node); 1569var requiredVersion = MessageID.IDS_FeatureFieldKeyword.RequiredVersion(); 1611case ManagedKind.UnmanagedWithGenerics when MessageID.IDS_FeatureUnmanagedConstructedTypes.GetFeatureAvailabilityDiagnosticInfo(compilation) is CSDiagnosticInfo diagnosticInfo: 1629MessageID.IDS_FeatureDefault.CheckFeatureAvailability(diagnostics, node.Keyword); 1930CheckFeatureAvailability(node, MessageID.IDS_FeatureDiscards, diagnostics); 2386if (!IsInsideNameof || (EnclosingNameofArgument != node && !node.IsFeatureEnabled(MessageID.IDS_FeatureInstanceMemberInNameof))) 2420CheckFeatureAvailability(node, MessageID.IDS_FeatureInstanceMemberInNameof, diagnostics); 2680CheckFeatureAvailability(node, MessageID.IDS_FeatureIndexOperator, diagnostics); 2721CheckFeatureAvailability(node, MessageID.IDS_FeatureRangeOperator, diagnostics); 2902diagnostics.Add(ErrorCode.ERR_NoExplicitConv, syntax.Location, MessageID.IDS_SK_METHOD.Localize(), targetType); 3076nameString = MessageID.IDS_Lambda.Localize().ToString(); 3211MessageID.IDS_FeatureReadOnlyReferences.CheckFeatureAvailability(diagnostics, argumentSyntax.RefKindKeyword); 3216MessageID.IDS_FeatureOutVar.CheckFeatureAvailability(diagnostics, argumentSyntax.RefKindKeyword); 3296CheckFeatureAvailability(declarationExpression, MessageID.IDS_FeatureExpressionVariablesInQueriesAndInitializers, diagnostics); 3374CheckFeatureAvailability(syntax, MessageID.IDS_FeatureRefUnsafeInIteratorAsync, diagnostics); 3414CheckFeatureAvailability(nameColonSyntax, MessageID.IDS_FeatureNamedArgument, diagnostics); 3461new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureNonTrailingNamedArguments.RequiredVersion())); 3985if (!Compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefReadonlyParameters)) 3991var available = CheckFeatureAvailability(argument.Syntax, MessageID.IDS_FeatureRefReadonlyParameters, diagnostics); 4203MessageID.IDS_FeatureImplicitArray.CheckFeatureAvailability(diagnostics, node.NewKeyword); 4668LanguageVersion requiredVersion = MessageID.IDS_FeatureNestedStackalloc.RequiredVersion(); 4674MessageID.IDS_FeatureNestedStackalloc.CheckFeatureAvailability(diagnostics, node.GetFirstToken()); 4693CheckFeatureAvailability(node, MessageID.IDS_FeatureRefStructs, diagnostics); 4756MessageID.IDS_FeatureStackAllocInitializer.CheckFeatureAvailability(diagnostics, stackAllocKeyword); 5259MessageID.IDS_FeatureImplicitObjectCreation.CheckFeatureAvailability(diagnostics, node.NewKeyword); 5344MessageID.IDS_FeatureCollectionExpressions.CheckFeatureAvailability(diagnostics, syntax, syntax.OpenBracketToken.GetLocation()); 5353MessageID.IDS_FeatureCollectionExpressionArguments.CheckFeatureAvailability(diagnostics, syntax, withElementSyntax.WithKeyword.GetLocation()); 5849MessageID.IDS_FeatureObjectInitializer.CheckFeatureAvailability(diagnostics, initializerSyntax.OpenBraceToken); 6033MessageID.IDS_FeatureDictionaryInitializer.CheckFeatureAvailability(diagnostics, implicitIndexing.ArgumentList.OpenBracketToken); 6130MessageID.IDS_FeatureImplicitIndexerInitializer.CheckFeatureAvailability(diagnostics, implicitIndexer.Syntax); 6403MessageID.IDS_FeatureCollectionInitializer.CheckFeatureAvailability(diagnostics, initializerSyntax.OpenBraceToken); 6463CheckFeatureAvailability(node, MessageID.IDS_FeatureRefStructInterfaces, diagnostics); 7573MessageID.IDS_FeatureRawStringLiterals.CheckFeatureAvailability(diagnostics, node); 7586CheckFeatureAvailability(node, MessageID.IDS_FeatureRawStringLiterals, diagnostics); 7589CheckFeatureAvailability(node, MessageID.IDS_FeatureUtf8StringLiterals, diagnostics); 7920var msgId = ((UnboundLambda)boundLeft).MessageID; 8121CheckFeatureAvailability(boundLeft.Syntax, MessageID.IDS_FeatureStaticAbstractMembersInInterfaces, diagnostics); 8168Compilation.LanguageVersion < MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion()) 8198Error(diagnostics, ErrorCode.ERR_BadSKunknown, methodGroup.NameSyntax, method, MessageID.IDS_SK_METHOD.Localize()); 8258MessageID.IDS_FeatureExtensions.CheckFeatureAvailability(diagnostics, syntax); 9169CheckFeatureAvailability(node, MessageID.IDS_FeatureIndexingMovableFixedBuffers, diagnostics); 9215CheckFeatureAvailability(node, MessageID.IDS_FeatureRefFields, diagnostics); 9459else if (CheckFeatureAvailability(node, MessageID.IDS_FeatureInstanceMemberInNameof, diagnostics)) 9837CheckFeatureAvailability(node, MessageID.IDS_FeatureInlineArrays, diagnostics); 10597_ = MessageID.IDS_FeatureIndexOperator.CheckFeatureAvailability(diagnostics, syntax); 11637MessageID.IDS_FeatureNullPropagatingOperator.CheckFeatureAvailability(diagnostics, node.OperatorToken); 11645MessageID.IDS_FeatureNullConditionalAssignment.CheckFeatureAvailability(diagnostics, assignment.OperatorToken); 11826var msgId = ((UnboundLambda)receiver).MessageID;
Binder\Binder_Flags.cs (1)
100var withoutUnsafe = isIteratorBody && this.Compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefUnsafeInIteratorAsync);
Binder\Binder_InterpolatedString.cs (10)
21if (CheckFeatureAvailability(node, MessageID.IDS_FeatureInterpolatedStrings, diagnostics)) 27CheckFeatureAvailability(node, MessageID.IDS_FeatureRawStringLiterals, diagnostics); 32if (startText.StartsWith("@$\"") && !Compilation.IsFeatureEnabled(MessageID.IDS_FeatureAltInterpolatedVerbatimStrings)) 37new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureAltInterpolatedVerbatimStrings.RequiredVersion())); 53var newLinesInInterpolationsAllowed = this.Compilation.IsFeatureEnabled(MessageID.IDS_FeatureNewLinesInInterpolations); 86new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureNewLinesInInterpolations.RequiredVersion())); 662CheckFeatureAvailability(syntax, MessageID.IDS_FeatureImprovedInterpolatedStrings, diagnostics); 664else if (!Compilation.IsFeatureEnabled(MessageID.IDS_FeatureImprovedInterpolatedStrings) && diagnostics.AccumulatesDiagnostics) 689CheckFeatureAvailability(value.Syntax, MessageID.IDS_FeatureImprovedInterpolatedStrings, diagnostics); 699CheckFeatureAvailability(value.Syntax, MessageID.IDS_FeatureImprovedInterpolatedStrings, diagnostics);
Binder\Binder_Invocation.cs (8)
161MessageID msgId; 164msgId = MessageID.IDS_SK_FIELD; 168msgId = MessageID.IDS_SK_PROPERTY; 176MessageID.IDS_SK_METHOD.Localize()); 1285CheckFeatureAvailability(receiverArgument.Syntax, MessageID.IDS_FeatureRefExtensionMethods, diagnostics); 1291CheckFeatureAvailability(receiverArgument.Syntax, MessageID.IDS_FeatureRefExtensionMethods, diagnostics); 1857MessageID.IDS_FeatureParamsCollections.CheckFeatureAvailability(diagnostics, node); 2378CheckFeatureAvailability(node, MessageID.IDS_FeatureNameof, diagnostics);
Binder\Binder_Lambda.cs (10)
63MessageID.IDS_FeatureLambda.CheckFeatureAvailability(diagnostics, lambdaSyntax.ArrowToken); 95MessageID.IDS_FeatureAnonDelegates.CheckFeatureAvailability(diagnostics, anon.DelegateKeyword); 113MessageID.IDS_FeatureAsync.CheckFeatureAvailability(diagnostics, modifier); 118MessageID.IDS_FeatureStaticAnonymousFunction.CheckFeatureAvailability(diagnostics, modifier); 170MessageID.IDS_FeatureLambdaOptionalParameters.CheckFeatureAvailability(diagnostics, p.Default.EqualsToken); 281MessageID.IDS_FeatureLambdaAttributes.CheckFeatureAvailability(diagnostics, attributeList); 294MessageID.IDS_FeatureLambdaReturnType.CheckFeatureAvailability(diagnostics, syntax); 358CheckFeatureAvailability(parameter, MessageID.IDS_FeatureSimpleLambdaParameterModifiers, diagnostics); 381bool allowShadowingNames = binder.Compilation.IsFeatureEnabled(MessageID.IDS_FeatureNameShadowingInNestedFunctions); 399MessageID.IDS_FeatureLambdaDiscardParameters.CheckFeatureAvailability(
Binder\Binder_Lookup.cs (4)
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;
Binder\Binder_NameConflicts.cs (1)
121bool allowShadowing = Compilation.IsFeatureEnabled(MessageID.IDS_FeatureNameShadowingInNestedFunctions);
Binder\Binder_Operators.cs (20)
348!node.IsFeatureEnabled(MessageID.IDS_FeatureUserDefinedCompoundAssignmentOperators)) 495CheckFeatureAvailability(node, MessageID.IDS_FeatureExtensions, diagnostics); 979CheckFeatureAvailability(node, MessageID.IDS_FeatureTupleEquality, diagnostics); 2226Binder.CheckFeatureAvailability(node, MessageID.IDS_DefaultInterfaceImplementation, diagnostics); 3461!node.IsFeatureEnabled(MessageID.IDS_FeatureUserDefinedCompoundAssignmentOperators)) 3601CheckFeatureAvailability(node, MessageID.IDS_FeatureExtensions, diagnostics); 4008result = CheckFeatureAvailability(node, MessageID.IDS_FeatureStaticAbstractMembersInInterfaces, diagnostics); 4019result = CheckFeatureAvailability(node, MessageID.IDS_FeatureStaticAbstractMembersInInterfaces, diagnostics); 4027result &= CheckFeatureAvailability(node, MessageID.IDS_FeatureUnsignedRightShift, diagnostics); 4038result &= CheckFeatureAvailability(node, MessageID.IDS_FeatureExtensions, diagnostics); 4042result &= CheckFeatureAvailability(node, MessageID.IDS_FeatureCheckedUserDefinedOperators, diagnostics); 4046result &= CheckFeatureAvailability(node, MessageID.IDS_FeatureUnsignedRightShift, diagnostics); 4057MessageID.IDS_FeatureNullableReferenceTypes.CheckFeatureAvailability(diagnostics, node.OperatorToken); 4859((CSharpParseOptions)node.SyntaxTree.Options).IsFeatureEnabled(MessageID.IDS_FeaturePatternMatching)) 4954if (wasUnderscore && ((CSharpParseOptions)node.SyntaxTree.Options).IsFeatureEnabled(MessageID.IDS_FeatureRecursivePatterns)) 5711CheckFeatureAvailability(node, MessageID.IDS_FeatureUnconstrainedTypeParameterInNullCoalescingOperator, diagnostics); 5849MessageID.IDS_FeatureCoalesceAssignmentExpression.CheckFeatureAvailability(diagnostics, node.OperatorToken); 5968CheckFeatureAvailability(node, MessageID.IDS_FeatureRefConditional, diagnostics); 6121CheckFeatureAvailability(syntax, MessageID.IDS_FeatureNativeInt, diagnostics); 6137CheckFeatureAvailability(syntax, MessageID.IDS_FeatureNativeInt, diagnostics);
Binder\Binder_Patterns.cs (24)
23MessageID.IDS_FeatureUnions.CheckFeatureAvailability(diagnostics, node); 444MessageID.IDS_FeaturePatternMatching.CheckFeatureAvailability(diagnostics, node.IsKeyword); 584MessageID.IDS_FeatureRecursivePatterns.CheckFeatureAvailability(diagnostics, node.SwitchKeyword); 639MessageID.IDS_FeatureParenthesizedPattern.CheckFeatureAvailability(diagnostics, node.OpenParenToken); 753CheckFeatureAvailability(node, MessageID.IDS_FeatureListPattern, diagnostics); 863MessageID.IDS_FeatureRecursivePatterns.CheckFeatureAvailability(diagnostics, node); 932CheckFeatureAvailability(innerExpression, MessageID.IDS_FeatureTypePattern, diagnostics); 1072CheckFeatureAvailability(patternExpression, MessageID.IDS_FeatureNullPointerConstantPattern, diagnostics); 1129var requiredVersion = MessageID.IDS_FeatureRecursivePatterns.RequiredVersion(); 1153if (MessageID.IDS_FeatureSpanCharConstantPattern.CheckFeatureAvailability(diagnostics, Compilation, node.Location)) 1346LanguageVersion requiredVersion = MessageID.IDS_FeatureGenericPatternMatching.RequiredVersion(); 1494CheckFeatureAvailability(designation, MessageID.IDS_FeatureExpressionVariablesInQueriesAndInitializers, diagnostics); 1576MessageID.IDS_FeatureRecursivePatterns.CheckFeatureAvailability(diagnostics, node); 1711MessageID.IDS_FeatureExtendedPropertyPatterns.CheckFeatureAvailability(diagnostics, subPattern.ExpressionColon.ColonToken); 1858if (Compilation.LanguageVersion < MessageID.IDS_FeatureRecursivePatterns.RequiredVersion()) 1942|| (inputType.IsPointerType() && Compilation.LanguageVersion < MessageID.IDS_FeatureRecursivePatterns.RequiredVersion())) 2009MessageID.IDS_FeatureRecursivePatterns.CheckFeatureAvailability(diagnostics, node); 2130MessageID.IDS_FeatureExtendedPropertyPatterns.CheckFeatureAvailability(diagnostics, p.ExpressionColon.ColonToken); 2170MessageID.IDS_FeatureUnions.CheckFeatureAvailability(diagnostics, expr is MemberAccessExpressionSyntax memberAccess ? memberAccess.Name : expr); // Since new exhaustiveness rules will be used by DecisionDagBuilder. 2313MessageID.IDS_FeatureTypePattern.CheckFeatureAvailability(diagnostics, node); 2331MessageID.IDS_FeatureRelationalPattern.CheckFeatureAvailability(diagnostics, node.OperatorToken); 2441MessageID.IDS_FeatureNotPattern.CheckFeatureAvailability(diagnostics, node.OperatorToken); 2517MessageID.IDS_FeatureOrPattern.CheckFeatureAvailability(diagnostics, node.OperatorToken); 2537MessageID.IDS_FeatureAndPattern.CheckFeatureAvailability(diagnostics, node.OperatorToken);
Binder\Binder_Query.cs (5)
26MessageID.IDS_FeatureQueryExpression.CheckFeatureAvailability(diagnostics, node.FromClause.FromKeyword); 778CheckFeatureAvailability(expression, MessageID.IDS_FeatureExpressionVariablesInQueriesAndInitializers, diagnostics, locals[0].GetFirstLocation()); 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());
Binder\Binder_Statements.cs (24)
49CheckFeatureAvailability(attributeList, MessageID.IDS_FeatureLocalFunctionAttributes, diagnostics); 180CheckFeatureAvailability(node.UnsafeKeyword, MessageID.IDS_FeatureRefUnsafeInIteratorAsync, diagnostics); 217MessageID.IDS_FeatureIterators.CheckFeatureAvailability(diagnostics, statement.YieldKeyword); 222MessageID.IDS_FeatureAsyncStreams.CheckFeatureAvailability( 270else if (InUnsafeRegion && Compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefUnsafeInIteratorAsync)) 396if (Compilation.LanguageVersion < MessageID.IDS_FeatureSwitchExpression.RequiredVersion()) 556MessageID.IDS_FeatureLocalFunctions.CheckFeatureAvailability(diagnostics, node.Identifier); 603MessageID.IDS_FeatureStaticLocalFunctions.CheckFeatureAvailability(diagnostics, modifier); 605MessageID.IDS_FeatureExternLocalFunctions.CheckFeatureAvailability(diagnostics, modifier); 1173return !CheckFeatureAvailability(identifierToken, MessageID.IDS_FeatureRefUnsafeInIteratorAsync, diagnostics); 1294bool extensibleFixedEnabled = ((CSharpParseOptions)initializerOpt.SyntaxTree.Options)?.IsFeatureEnabled(MessageID.IDS_FeatureExtensibleFixedStatement) != false; 1305CheckFeatureAvailability(initializerOpt.Syntax, MessageID.IDS_FeatureExtensibleFixedStatement, diagnostics); 1426MessageID.IDS_FeatureRefReassignment.CheckFeatureAvailability(diagnostics, node.Right.GetFirstToken()); 1643return MessageID.IDS_ArrayAccess.Localize(); 1647return MessageID.IDS_PointerElementAccess.Localize(); 2534syntax.IsFeatureEnabled(MessageID.IDS_FeatureInferredDelegateType)) 3418MessageID.IDS_FeatureExceptionFilter.CheckFeatureAvailability(diagnostics, filter.WhenKeyword); 3616ConstructorDeclarationSyntax or DestructorDeclarationSyntax => MessageID.IDS_FeatureExpressionBodiedDeOrConstructor, 3617AccessorDeclarationSyntax => MessageID.IDS_FeatureExpressionBodiedAccessor, 3618BaseMethodDeclarationSyntax => MessageID.IDS_FeatureExpressionBodiedMethod, 3619IndexerDeclarationSyntax => MessageID.IDS_FeatureExpressionBodiedIndexer, 3620PropertyDeclarationSyntax => MessageID.IDS_FeatureExpressionBodiedProperty, 3624LocalFunctionStatementSyntax => (MessageID?)null, 3731MessageID.IDS_TopLevelStatements.CheckFeatureAvailability(diagnostics, topLevelStatement);
Binder\Binder_Symbols.cs (24)
117CheckFeatureAvailability(syntax, MessageID.IDS_FeatureImplicitLocal, diagnostics); 161CheckFeatureAvailability(syntax, MessageID.IDS_FeatureUnmanagedGenericTypeConstraint, diagnostics); 164CheckFeatureAvailability(identifierSyntax, MessageID.IDS_FeatureNotNullGenericTypeConstraint, diagnostics); 344var diagnosticInfo = diagnostics.Add(ErrorCode.ERR_BadSKknown, syntax.Location, syntax, symbol.Symbol.GetKindText(), MessageID.IDS_SK_TYPE.Localize()); 461MessageID.IDS_FeatureFunctionPointers.CheckFeatureAvailability(diagnostics, functionPointerTypeSyntax.DelegateKeyword); 552MessageID.IDS_FeatureNullable.CheckFeatureAvailability(diagnostics, nullableSyntax.QuestionToken); 589MessageID.IDS_FeatureGlobalNamespace.CheckFeatureAvailability(diagnostics, node.Alias); 629var requiredVersion = MessageID.IDS_FeatureDefaultTypeParameterConstraint.RequiredVersion(); 690MessageID.IDS_FeatureTuples.CheckFeatureAvailability(diagnostics, syntax); 745bool includeNullability = Compilation.IsFeatureEnabled(MessageID.IDS_FeatureNullableReferenceTypes); 943if (Compilation.LanguageVersion < MessageID.IDS_FeatureDynamic.RequiredVersion()) 1034CheckFeatureAvailability(node, MessageID.IDS_FeatureNativeInt, diagnostics); 1381var binder = !Compilation.IsFeatureEnabled(MessageID.IDS_FeatureUsingTypeAlias) 1402CheckFeatureAvailability(typeSyntax, MessageID.IDS_FeatureUnboundGenericTypesInNameof, diagnostics); 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); 1644bool includeNullability = Compilation.IsFeatureEnabled(MessageID.IDS_FeatureNullableReferenceTypes); 2823internal static bool CheckFeatureAvailability(SyntaxNode syntax, MessageID feature, BindingDiagnosticBag diagnostics, Location? location = null) 2826internal static bool CheckFeatureAvailability(SyntaxToken syntax, MessageID feature, BindingDiagnosticBag diagnostics, bool forceWarning = false) 2829internal static bool CheckFeatureAvailability(SyntaxTree tree, MessageID feature, BindingDiagnosticBag diagnostics, Location location) 2832private static bool CheckFeatureAvailability(SyntaxNode syntax, MessageID feature, DiagnosticBag? diagnostics, Location? location = null) 2835private static bool CheckFeatureAvailability(SyntaxToken syntax, MessageID feature, DiagnosticBag? diagnostics, bool forceWarning = false) 2838private static bool CheckFeatureAvailability(SyntaxTree tree, MessageID feature, DiagnosticBag? diagnostics, Location location) 2844private static bool CheckFeatureAvailability<TData>(SyntaxTree tree, MessageID feature, DiagnosticBag? diagnostics, TData data, Func<TData, Location> getLocation, bool forceWarning = false)
Binder\Binder_Unsafe.cs (2)
251var featureDiag = MessageID.IDS_FeatureUnsafeEvolution.GetFeatureAvailabilityDiagnosticInfo(this.Compilation); 294else if (this.IsIndirectlyInIterator && MessageID.IDS_FeatureRefUnsafeInIteratorAsync.GetFeatureAvailabilityDiagnosticInfo(Compilation) is { } unsafeInIteratorDiagnosticInfo)
Binder\Binder_WithExpression.cs (3)
17MessageID.IDS_FeatureRecords.CheckFeatureAvailability(diagnostics, syntax.WithKeyword); 32CheckFeatureAvailability(syntax, MessageID.IDS_FeatureWithOnStructs, diagnostics); 36CheckFeatureAvailability(syntax, MessageID.IDS_FeatureWithOnAnonymousTypes, diagnostics);
Binder\ExecutableCodeBinder.cs (1)
137MessageID.IDS_FeatureRefUnsafeInIteratorAsync.CheckFeatureAvailability(diagnostics, compilation, errorLocation);
Binder\ForEachLoopBinder.cs (16)
220CheckFeatureAvailability(_syntax.AwaitKeyword, MessageID.IDS_FeatureAsyncStreams, diagnostics); 243var messageId = IsAsync ? MessageID.IDS_FeatureExtensionGetAsyncEnumerator : MessageID.IDS_FeatureExtensionGetEnumerator; 301MessageID.IDS_FeatureRefForEach.CheckFeatureAvailability(diagnostics, typeSyntax); 545CheckFeatureAvailability(foreachKeyword, MessageID.IDS_FeatureRefUnsafeInIteratorAsync, diagnostics); 898CheckFeatureAvailability(collectionExpr.Syntax, MessageID.IDS_FeatureInlineArrays, diagnostics); 1243CheckFeatureAvailability(expr.Syntax, MessageID.IDS_FeatureDisposalPattern, diagnostics); 1291CheckFeatureAvailability(syntax, MessageID.IDS_FeatureRefStructInterfaces, diagnostics); 1470MessageID patternName = isAsync ? MessageID.IDS_FeatureAsyncStreams : MessageID.IDS_Collection; 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); 1828CheckFeatureAvailability(collectionSyntax, MessageID.IDS_FeatureRefStructInterfaces, diagnostics);
Binder\ForLoopBinder.cs (1)
81MessageID.IDS_FeatureRefFor.CheckFeatureAvailability(diagnostics, type);
Binder\LockBinder.cs (1)
61CheckFeatureAvailability(exprSyntax, MessageID.IDS_FeatureLockObject, diagnostics);
Binder\LookupResult.cs (1)
204var diagInfo = diagnose ? new CSDiagnosticInfo(ErrorCode.ERR_BadSKknown, unwrappedSymbol.Name, unwrappedSymbol.GetKindText(), MessageID.IDS_SK_TYPE.Localize()) : null;
Binder\Semantics\Conversions\ConversionsBase.cs (1)
3969return Compilation?.IsFeatureEnabled(MessageID.IDS_FeatureFirstClassSpan) != false;
Binder\Semantics\OverloadResolution\MethodTypeInference.cs (1)
1735return _compilation?.IsFeatureEnabled(MessageID.IDS_FeatureFirstClassSpan) != false;
Binder\Semantics\OverloadResolution\OverloadResolution.cs (5)
1862if (!Compilation.IsFeatureEnabled(MessageID.IDS_FeatureOverloadResolutionPriority)) 2976if (_binder.Compilation.IsFeatureEnabled(MessageID.IDS_FeatureImprovedInterpolatedStrings) && 3499if (Compilation.IsFeatureEnabled(MessageID.IDS_FeatureFirstClassSpan)) 3985if (argRefKind == RefKind.Ref && binder.Compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefReadonlyParameters)) 4032if (compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefReadonlyParameters) &&
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (3)
1295!(refArg == RefKind.Ref && refParameter == RefKind.In && binder.Compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefReadonlyParameters)) && 1306else if (refArg == RefKind.Ref && refParameter == RefKind.In && !binder.Compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefReadonlyParameters)) 1315new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureRefReadonlyParameters.RequiredVersion()));
Binder\SwitchBinder.cs (2)
36((CSharpParseOptions)SwitchSyntax.SyntaxTree.Options)?.IsFeatureEnabled(MessageID.IDS_FeaturePatternMatching) != false; 425CheckFeatureAvailability(node, MessageID.IDS_FeatureSwitchOnBool, diagnostics);
Binder\SwitchBinder_Patterns.cs (1)
281MessageID.IDS_FeaturePatternMatching.CheckFeatureAvailability(diagnostics, node.Keyword);
Binder\UsingStatementBinder.cs (4)
98CheckFeatureAvailability(usingKeyword, MessageID.IDS_FeatureUsingDeclarations, diagnostics); 102CheckFeatureAvailability(awaitKeyword, MessageID.IDS_FeatureAsyncUsing, diagnostics); 207MessageID.IDS_FeatureDisposalPattern.CheckFeatureAvailability(diagnostics, originalBinder.Compilation, syntax.Location); 304CheckFeatureAvailability(syntax, MessageID.IDS_FeatureRefStructInterfaces, diagnostics);
BoundTree\Formatting.cs (6)
39get { return ConstantValueOpt?.IsNull == true ? MessageID.IDS_NULL.Localize() : base.Display; } 63get { return MessageID.IDS_MethodGroup.Localize(); } 71get { return MessageID.IDS_ThrowExpression.Localize(); } 161=> (Type is null) ? MessageID.IDS_FeatureSwitchExpression.Localize() : base.Display; 167=> (Type is null) ? MessageID.IDS_FeatureTargetTypedConditional.Localize() : base.Display; 173=> (Type is null) ? MessageID.IDS_CollectionExpression.Localize() : base.Display;
BoundTree\UnboundLambda.cs (8)
75public MessageID MessageID { get { return Syntax.Kind() == SyntaxKind.AnonymousMethodExpression ? MessageID.IDS_AnonMethod : MessageID.IDS_Lambda; } } 465public MessageID MessageID { get { return Data.MessageID; } } 590public abstract MessageID MessageID { get; } 1561public override MessageID MessageID { get { return this.UnboundLambda.Syntax.Kind() == SyntaxKind.AnonymousMethodExpression ? MessageID.IDS_AnonMethod : MessageID.IDS_Lambda; } }
CommandLine\CSharpCommandLineParser.cs (23)
211AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "/langversion:"); 283ParseAndResolveReferencePaths(name, valueMemory, baseDirectory, libPaths, MessageID.IDS_LIB_OPTION, diagnostics); 346ParseAndResolveReferencePaths(name, valueMemory, baseDirectory, sourcePaths, MessageID.IDS_REFERENCEPATH_OPTION, diagnostics); 434AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), name); 648AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "modulename"); 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:"); 819AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), name); 1076AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "keycontainer"); 1138AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "subsystemversion"); 1159AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "touchedfiles"); 1454ParseAndResolveReferencePaths(null, additionalReferenceDirectories.AsMemory(), baseDirectory, libPaths, MessageID.IDS_LIB_ENV, diagnostics); 1569if (nullableContextOptions != NullableContextOptions.Disable && parseOptions.LanguageVersion < MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion()) 1573new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion())), Location.None)); 1632private static void ParseAndResolveReferencePaths(string? switchName, ReadOnlyMemory<char>? switchValue, string? baseDirectory, List<string> builder, MessageID origin, List<Diagnostic> diagnostics) 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()); 1891AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Namespace1.Localize(), arg); 1905AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), arg); 1932AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), arg);
CommandLine\CSharpCompiler.cs (5)
277consoleOutput.WriteLine(ErrorFacts.GetMessage(MessageID.IDS_LogoLine1, Culture), GetToolName(), GetCompilerVersion()); 278consoleOutput.WriteLine(ErrorFacts.GetMessage(MessageID.IDS_LogoLine2, Culture)); 284consoleOutput.WriteLine(ErrorFacts.GetMessage(MessageID.IDS_LangVersions, Culture)); 316return ErrorFacts.GetMessage(MessageID.IDS_ToolName, Culture); 325consoleOutput.WriteLine(ErrorFacts.GetMessage(MessageID.IDS_CSCHelp, Culture));
Compilation\CSharpCompilation.cs (6)
2131CheckFeatureAvailability(Candidate.ExtractReturnTypeSyntax(), MessageID.IDS_FeatureAsyncMain, diagnostics)) 2138else if (LanguageVersion >= MessageID.IDS_FeatureAsyncMain.RequiredVersion() && taskEntryPoints.Count > 0) 3094if (Options.NullableContextOptions != NullableContextOptions.Disable && LanguageVersion < MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion() && 3099new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion())), Location.None)); 3102if (Options.UseUpdatedMemorySafetyRules && !this.IsFeatureEnabled(MessageID.IDS_FeatureUnsafeEvolution)) 3106new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureUnsafeEvolution.RequiredVersion())), Location.None));
Compilation\CSharpCompilationExtensions.cs (2)
12internal static bool IsFeatureEnabled(this CSharpCompilation compilation, MessageID feature) 17internal static bool IsFeatureEnabled(this SyntaxNode? syntax, MessageID feature)
Compiler\DocumentationCommentCompiler.cs (3)
322string message = ErrorFacts.GetMessage(MessageID.IDS_XMLIGNORED, CultureInfo.CurrentUICulture); 431string message = ErrorFacts.GetMessage(MessageID.IDS_XMLIGNORED, CultureInfo.CurrentUICulture); 550string message = ErrorFacts.GetMessage(MessageID.IDS_XMLIGNORED, CultureInfo.CurrentUICulture);
Compiler\DocumentationCommentCompiler.IncludeElementExpander.cs (12)
283_diagnostics.Add(ErrorCode.WRN_FailedInclude, location, filePathValue, xpathValue, new LocalizableErrorArgument(MessageID.IDS_OperationCausedStackOverflow)); 286commentMessage = ErrorFacts.GetMessage(MessageID.IDS_XMLNOINCLUDE, CultureInfo.CurrentUICulture); 303var subMessage = hasFileAttribute ? MessageID.IDS_XMLMISSINGINCLUDEPATH.Localize() : MessageID.IDS_XMLMISSINGINCLUDEFILE.Localize(); 305commentMessage = MakeCommentMessage(location, MessageID.IDS_XMLBADINCLUDE); 316commentMessage = MakeCommentMessage(location, MessageID.IDS_XMLFAILEDINCLUDE); 326commentMessage = MakeCommentMessage(location, MessageID.IDS_XMLFAILEDINCLUDE); 347commentMessage = MakeCommentMessage(location, MessageID.IDS_XMLFAILEDINCLUDE); 360commentMessage = MakeCommentMessage(location, MessageID.IDS_XMLFAILEDINCLUDE); 396commentMessage = MakeCommentMessage(location, MessageID.IDS_XMLNOINCLUDE); 409commentMessage = string.Format(ErrorFacts.GetMessage(MessageID.IDS_XMLIGNORED2, CultureInfo.CurrentUICulture), resolvedFilePath); 434private static string MakeCommentMessage(Location location, MessageID messageId)
Compiler\MethodCompiler.cs (2)
642_compilation.LanguageVersion >= MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion() && 1960var isSufficientLangVersion = compilation.LanguageVersion >= MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion();
CSharpParseOptions.cs (1)
273internal bool IsFeatureEnabled(MessageID feature)
Declarations\DeclarationTreeBuilder.cs (12)
482MessageID.IDS_FeatureUsingStatic.CheckFeatureAvailability(diagnostics, usingDirective, usingDirective.StaticKeyword.GetLocation()); 485MessageID.IDS_FeatureGlobalUsing.CheckFeatureAvailability(diagnostics, usingDirective, usingDirective.GlobalKeyword.GetLocation()); 492MessageID.IDS_FeatureExternAlias.CheckFeatureAvailability(diagnostics, externAlias, externAlias.ExternKeyword.GetLocation()); 530MessageID.IDS_FeatureFileScopedNamespace.CheckFeatureAvailability(diagnostics, node, node.NamespaceKeyword.GetLocation()); 761MessageID.IDS_FeatureRecordStructs.CheckFeatureAvailability(diagnostics, record, record.ClassOrStructKeyword.GetLocation()); 774MessageID.IDS_FeaturePrimaryConstructors.CheckFeatureAvailability(diagnostics, node.ParameterList); 779MessageID.IDS_FeaturePrimaryConstructors.CheckFeatureAvailability(diagnostics, node, node.SemicolonToken.GetLocation()); 784MessageID.IDS_FeatureUnions.CheckFeatureAvailability(diagnostics, node, node.Keyword.GetLocation()); 794MessageID.IDS_FeatureStaticClasses.CheckFeatureAvailability(diagnostics, node, modifier.GetLocation()); 798MessageID.IDS_FeatureReadOnlyStructs.CheckFeatureAvailability(diagnostics, node, modifier.GetLocation()); 802MessageID.IDS_FeatureRefStructs.CheckFeatureAvailability(diagnostics, node, modifier.GetLocation()); 890MessageID.IDS_FeaturePrimaryConstructors.CheckFeatureAvailability(diagnostics, node, node.SemicolonToken.GetLocation());
Errors\ErrorFacts.cs (1)
135public static string GetMessage(MessageID code, CultureInfo culture)
Errors\LazyMissingNonNullTypesContextDiagnosticInfo.cs (2)
66const MessageID featureId = MessageID.IDS_FeatureNullableReferenceTypes;
Errors\MessageID.cs (203)
322private readonly MessageID _id; 324internal LocalizableErrorArgument(MessageID id) 344public static LocalizableErrorArgument Localize(this MessageID id) 355internal static string? RequiredFeature(this MessageID feature) 366this MessageID feature, 380this MessageID feature, 394this MessageID feature, 408this MessageID feature, 422this MessageID feature, 437this MessageID feature, 452this MessageID feature, 465internal static CSDiagnosticInfo? GetFeatureAvailabilityDiagnosticInfo(this MessageID feature, CSharpParseOptions options) 468internal static CSDiagnosticInfo? GetFeatureAvailabilityDiagnosticInfo(this MessageID feature, CSharpCompilation compilation) 471private static CSDiagnosticInfo GetDisabledFeatureDiagnosticInfo(MessageID feature, LanguageVersion availableVersion) 485internal static LanguageVersion RequiredVersion(this MessageID feature) 496case MessageID.IDS_FeatureCollectionExpressionArguments: 497case MessageID.IDS_FeatureUnsafeEvolution: // https://github.com/dotnet/roslyn/issues/82546: keep this in preview until C# 16 498case MessageID.IDS_FeatureUnions: 499case MessageID.IDS_FeatureStaticMembersInInterfaces: 500case MessageID.IDS_FeatureClosedClasses: // semantic check 504case MessageID.IDS_FeatureFieldKeyword: 505case MessageID.IDS_FeatureFirstClassSpan: 506case MessageID.IDS_FeatureUnboundGenericTypesInNameof: 507case MessageID.IDS_FeatureSimpleLambdaParameterModifiers: 508case MessageID.IDS_FeaturePartialEventsAndConstructors: 509case MessageID.IDS_FeatureExtensions: 510case MessageID.IDS_FeatureNullConditionalAssignment: 511case MessageID.IDS_FeatureExpressionOptionalAndNamedArguments: 512case MessageID.IDS_FeatureUserDefinedCompoundAssignmentOperators: 516case MessageID.IDS_FeatureStringEscapeCharacter: // lexer check 517case MessageID.IDS_FeatureImplicitIndexerInitializer: 518case MessageID.IDS_FeatureLockObject: 519case MessageID.IDS_FeatureParamsCollections: 520case MessageID.IDS_FeatureRefUnsafeInIteratorAsync: 521case MessageID.IDS_FeatureRefStructInterfaces: 522case MessageID.IDS_FeatureAllowsRefStructConstraint: 523case MessageID.IDS_FeaturePartialProperties: 524case MessageID.IDS_FeatureOverloadResolutionPriority: 528case MessageID.IDS_FeatureLambdaOptionalParameters: // semantic check 529case MessageID.IDS_FeatureLambdaParamsArray: // semantic check 530case MessageID.IDS_FeaturePrimaryConstructors: // declaration table check 531case MessageID.IDS_FeatureUsingTypeAlias: // semantic check 532case MessageID.IDS_FeatureInstanceMemberInNameof: // semantic check 533case MessageID.IDS_FeatureInlineArrays: // semantic check 534case MessageID.IDS_FeatureCollectionExpressions: // semantic check 535case MessageID.IDS_FeatureRefReadonlyParameters: // semantic check 539case MessageID.IDS_FeatureRawStringLiterals: 540case MessageID.IDS_FeatureStaticAbstractMembersInInterfaces: // semantic check 541case MessageID.IDS_FeatureNewLinesInInterpolations: // semantic check 542case MessageID.IDS_FeatureListPattern: // semantic check 543case MessageID.IDS_FeatureRequiredMembers: // semantic check 544case MessageID.IDS_FeatureCacheStaticMethodGroupConversion: // lowering check 545case MessageID.IDS_FeatureSpanCharConstantPattern: 546case MessageID.IDS_FeatureAutoDefaultStructs: // semantic check 547case MessageID.IDS_FeatureCheckedUserDefinedOperators: // semantic check for declarations, parsing check for doc comments 548case MessageID.IDS_FeatureUtf8StringLiterals: // semantic check 549case MessageID.IDS_FeatureUnsignedRightShift: // semantic check for declarations and consumption, parsing check for doc comments 550case MessageID.IDS_FeatureRelaxedShiftOperator: // semantic check 551case MessageID.IDS_FeatureRefFields: // semantic check 552case MessageID.IDS_FeatureFileTypes: // semantic check 553case MessageID.IDS_FeatureGenericAttributes: // semantic check 557case MessageID.IDS_FeatureMixedDeclarationsAndExpressionsInDeconstruction: // semantic check 558case MessageID.IDS_FeatureSealedToStringInRecord: // semantic check 559case MessageID.IDS_FeatureImprovedInterpolatedStrings: // semantic check 560case MessageID.IDS_FeatureRecordStructs: 561case MessageID.IDS_FeatureWithOnStructs: // semantic check 562case MessageID.IDS_FeatureWithOnAnonymousTypes: // semantic check 563case MessageID.IDS_FeaturePositionalFieldsInRecords: // semantic check 564case MessageID.IDS_FeatureGlobalUsing: 565case MessageID.IDS_FeatureInferredDelegateType: // semantic check 566case MessageID.IDS_FeatureLambdaAttributes: // semantic check 567case MessageID.IDS_FeatureExtendedPropertyPatterns: // semantic check 568case MessageID.IDS_FeatureLambdaReturnType: // semantic check 569case MessageID.IDS_AsyncMethodBuilderOverride: // semantic check 570case MessageID.IDS_FeatureConstantInterpolatedStrings: // semantic check 571case MessageID.IDS_FeatureImplicitImplementationOfNonPublicMembers: // semantic check 572case MessageID.IDS_FeatureFileScopedNamespace: // semantic check 573case MessageID.IDS_FeatureParameterlessStructConstructors: // semantic check 574case MessageID.IDS_FeatureStructFieldInitializers: // semantic check 578case MessageID.IDS_FeatureLambdaDiscardParameters: // semantic check 579case MessageID.IDS_FeatureFunctionPointers: // semantic check 580case MessageID.IDS_FeatureLocalFunctionAttributes: // syntax check 581case MessageID.IDS_FeatureExternLocalFunctions: // semantic check 582case MessageID.IDS_FeatureImplicitObjectCreation: // semantic check 583case MessageID.IDS_FeatureMemberNotNull: 584case MessageID.IDS_FeatureAndPattern: // semantic check 585case MessageID.IDS_FeatureNotPattern: // semantic check 586case MessageID.IDS_FeatureOrPattern: // semantic check 587case MessageID.IDS_FeatureParenthesizedPattern: // semantic check 588case MessageID.IDS_FeatureTypePattern: // semantic check 589case MessageID.IDS_FeatureRelationalPattern: // semantic check 590case MessageID.IDS_FeatureExtensionGetEnumerator: // semantic check 591case MessageID.IDS_FeatureExtensionGetAsyncEnumerator: // semantic check 592case MessageID.IDS_FeatureNativeInt: 593case MessageID.IDS_FeatureExtendedPartialMethods: // semantic check 594case MessageID.IDS_TopLevelStatements: 595case MessageID.IDS_FeatureInitOnlySetters: // semantic check 596case MessageID.IDS_FeatureRecords: // semantic check 597case MessageID.IDS_FeatureTargetTypedConditional: // semantic check 598case MessageID.IDS_FeatureCovariantReturnsForOverrides: // semantic check 599case MessageID.IDS_FeatureStaticAnonymousFunction: // semantic check 600case MessageID.IDS_FeatureModuleInitializers: // semantic check on method attribute 601case MessageID.IDS_FeatureDefaultTypeParameterConstraint: // semantic check 602case MessageID.IDS_FeatureVarianceSafetyForStaticInterfaceMembers: // semantic check 606case MessageID.IDS_FeatureAltInterpolatedVerbatimStrings: // semantic check 607case MessageID.IDS_FeatureCoalesceAssignmentExpression: // semantic check 608case MessageID.IDS_FeatureUnconstrainedTypeParameterInNullCoalescingOperator: 609case MessageID.IDS_FeatureNullableReferenceTypes: // syntax and semantic check 610case MessageID.IDS_FeatureIndexOperator: // semantic check 611case MessageID.IDS_FeatureRangeOperator: // semantic check 612case MessageID.IDS_FeatureAsyncStreams: // semantic check 613case MessageID.IDS_FeatureRecursivePatterns: // semantic check 614case MessageID.IDS_FeatureUsingDeclarations: // semantic check 615case MessageID.IDS_FeatureDisposalPattern: //semantic check 616case MessageID.IDS_FeatureStaticLocalFunctions: // semantic check 617case MessageID.IDS_FeatureNameShadowingInNestedFunctions: 618case MessageID.IDS_FeatureUnmanagedConstructedTypes: // semantic check 619case MessageID.IDS_FeatureObsoleteOnPropertyAccessor: 620case MessageID.IDS_FeatureReadOnlyMembers: 621case MessageID.IDS_DefaultInterfaceImplementation: // semantic check 622case MessageID.IDS_OverrideWithConstraints: // semantic check 623case MessageID.IDS_FeatureNestedStackalloc: // semantic check 624case MessageID.IDS_FeatureNotNullGenericTypeConstraint:// semantic check 625case MessageID.IDS_FeatureSwitchExpression: 626case MessageID.IDS_FeatureAsyncUsing: 627case MessageID.IDS_FeatureNullPointerConstantPattern: //semantic check 631case MessageID.IDS_FeatureAttributesOnBackingFields: // semantic check 632case MessageID.IDS_FeatureImprovedOverloadCandidates: // semantic check 633case MessageID.IDS_FeatureTupleEquality: // semantic check 634case MessageID.IDS_FeatureRefReassignment: // semantic check 635case MessageID.IDS_FeatureRefFor: 636case MessageID.IDS_FeatureRefForEach: // semantic check 637case MessageID.IDS_FeatureEnumGenericTypeConstraint: // semantic check 638case MessageID.IDS_FeatureDelegateGenericTypeConstraint: // semantic check 639case MessageID.IDS_FeatureUnmanagedGenericTypeConstraint: // semantic check 640case MessageID.IDS_FeatureStackAllocInitializer: // semantic check 641case MessageID.IDS_FeatureExpressionVariablesInQueriesAndInitializers: // semantic check 642case MessageID.IDS_FeatureExtensibleFixedStatement: // semantic check 643case MessageID.IDS_FeatureIndexingMovableFixedBuffers: //semantic check 647case MessageID.IDS_FeatureNonTrailingNamedArguments: // semantic check 648case MessageID.IDS_FeatureLeadingDigitSeparator: 649case MessageID.IDS_FeaturePrivateProtected: 650case MessageID.IDS_FeatureReadOnlyReferences: // semantic check 651case MessageID.IDS_FeatureRefStructs: // semantic check 652case MessageID.IDS_FeatureReadOnlyStructs: // semantic check 653case MessageID.IDS_FeatureRefExtensionMethods: 654case MessageID.IDS_FeatureRefConditional: 658case MessageID.IDS_FeatureAsyncMain: 659case MessageID.IDS_FeatureDefaultLiteral: // semantic check 660case MessageID.IDS_FeatureInferredTupleNames: 661case MessageID.IDS_FeatureGenericPatternMatching: 665case MessageID.IDS_FeatureBinaryLiteral: 666case MessageID.IDS_FeatureDigitSeparator: 667case MessageID.IDS_FeatureLocalFunctions: // semantic check 668case MessageID.IDS_FeatureRefLocalsReturns: 669case MessageID.IDS_FeaturePatternMatching: // semantic check 670case MessageID.IDS_FeatureThrowExpression: // semantic check 671case MessageID.IDS_FeatureTuples: 672case MessageID.IDS_FeatureOutVar: // semantic check 673case MessageID.IDS_FeatureExpressionBodiedAccessor: 674case MessageID.IDS_FeatureExpressionBodiedDeOrConstructor: 675case MessageID.IDS_FeatureDiscards: 679case MessageID.IDS_FeatureExceptionFilter: // semantic check 680case MessageID.IDS_FeatureAutoPropertyInitializer: // semantic check 681case MessageID.IDS_FeatureNullPropagatingOperator: // semantic check 682case MessageID.IDS_FeatureExpressionBodiedMethod: 683case MessageID.IDS_FeatureExpressionBodiedProperty: // semantic check 684case MessageID.IDS_FeatureExpressionBodiedIndexer: // semantic check 685case MessageID.IDS_FeatureNameof: 686case MessageID.IDS_FeatureDictionaryInitializer: // semantic check 687case MessageID.IDS_FeatureUsingStatic: // semantic check 688case MessageID.IDS_FeatureInterpolatedStrings: // semantic check 689case MessageID.IDS_AwaitInCatchAndFinally: 690case MessageID.IDS_FeatureReadonlyAutoImplementedProperties: 694case MessageID.IDS_FeatureAsync: // semantic check 698case MessageID.IDS_FeatureDynamic: // Checked in the binder. 699case MessageID.IDS_FeatureTypeVariance: // semantic check 700case MessageID.IDS_FeatureNamedArgument: // semantic check 701case MessageID.IDS_FeatureOptionalParameter: // semantic check 705case MessageID.IDS_FeatureImplicitArray: // semantic check 706case MessageID.IDS_FeatureAnonymousTypes: // semantic check 707case MessageID.IDS_FeatureObjectInitializer: 708case MessageID.IDS_FeatureCollectionInitializer: 709case MessageID.IDS_FeatureLambda: // semantic check 710case MessageID.IDS_FeatureQueryExpression: // semantic check 711case MessageID.IDS_FeatureExtensionMethod: 712case MessageID.IDS_FeaturePartialMethod: // semantic check 713case MessageID.IDS_FeatureImplicitLocal: // Checked in the binder. 714case MessageID.IDS_FeatureAutoImplementedProperties: 718case MessageID.IDS_FeatureGenerics: // Also affects crefs. 719case MessageID.IDS_FeatureAnonDelegates: // semantic check 720case MessageID.IDS_FeatureGlobalNamespace: // Also affects crefs. 721case MessageID.IDS_FeatureFixedBuffer: // semantic check 722case MessageID.IDS_FeatureStaticClasses: // semantic check 723case MessageID.IDS_FeaturePartialTypes: // semantic check 724case MessageID.IDS_FeaturePropertyAccessorMods: 725case MessageID.IDS_FeatureExternAlias: // semantic check 726case MessageID.IDS_FeatureIterators: // semantic check 727case MessageID.IDS_FeatureDefault: // semantic check 728case MessageID.IDS_FeatureNullable: 729case MessageID.IDS_FeaturePragma: // Checked in the directive parser. 730case MessageID.IDS_FeatureSwitchOnBool: // Checked in the binder. 734case MessageID.IDS_FeatureModuleAttrLoc:
FlowAnalysis\AbstractFlowPass_Switch.cs (1)
96if (compilation.LanguageVersion >= MessageID.IDS_FeatureRecursivePatterns.RequiredVersion())
FlowAnalysis\DefiniteAssignment.cs (7)
447if (compilation.IsFeatureEnabled(MessageID.IDS_FeatureAutoDefaultStructs)) 460new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureAutoDefaultStructs.RequiredVersion())); 472if (!compilation.IsFeatureEnabled(MessageID.IDS_FeatureAutoDefaultStructs)) 1246if (compilation.IsFeatureEnabled(MessageID.IDS_FeatureAutoDefaultStructs)) 1255new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureAutoDefaultStructs.RequiredVersion())); 1298else if (compilation.IsFeatureEnabled(MessageID.IDS_FeatureAutoDefaultStructs)) 1311new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureAutoDefaultStructs.RequiredVersion()));
FlowAnalysis\NullableWalker.cs (3)
952|| compilation.IsFeatureEnabled(MessageID.IDS_FeatureAutoDefaultStructs))) 1757return compilation.LanguageVersion >= MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion(); 2523var requiredVersion = MessageID.IDS_FeatureDefaultTypeParameterConstraint.RequiredVersion();
LanguageVersion.cs (4)
587return self < MessageID.IDS_FeatureInferredTupleNames.RequiredVersion(); 592return self >= MessageID.IDS_FeatureNonTrailingNamedArguments.RequiredVersion(); 597return self >= MessageID.IDS_FeatureAttributesOnBackingFields.RequiredVersion(); 602return self >= MessageID.IDS_FeatureImprovedOverloadCandidates.RequiredVersion();
Lowering\DiagnosticsPass_ExpressionTrees.cs (3)
335!_compilation.IsFeatureEnabled(MessageID.IDS_FeatureExpressionOptionalAndNamedArguments)) 340!_compilation.IsFeatureEnabled(MessageID.IDS_FeatureExpressionOptionalAndNamedArguments)) 347Debug.Assert(_compilation.IsFeatureEnabled(MessageID.IDS_FeatureExpressionOptionalAndNamedArguments));
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (1)
586if (_factory.Compilation.LanguageVersion >= MessageID.IDS_FeatureCacheStaticMethodGroupConversion.RequiredVersion()
Parser\DirectiveParser.cs (2)
543token = CheckFeatureAvailability(token, MessageID.IDS_FeatureNullableReferenceTypes); 571pragma = CheckFeatureAvailability(pragma, MessageID.IDS_FeaturePragma);
Parser\DocumentationCommentParser.cs (7)
1068operatorToken = CheckFeatureAvailability(operatorToken, MessageID.IDS_FeatureUnsignedRightShift, forceWarning: true); 1078operatorToken = CheckFeatureAvailability(operatorToken, MessageID.IDS_FeatureUserDefinedCompoundAssignmentOperators, forceWarning: true); 1110operatorToken = CheckFeatureAvailability(operatorToken, MessageID.IDS_FeatureUserDefinedCompoundAssignmentOperators, forceWarning: true); 1169operatorToken = CheckFeatureAvailability(operatorToken, MessageID.IDS_FeatureUserDefinedCompoundAssignmentOperators, forceWarning: true); 1183checkedKeyword = CheckFeatureAvailability(checkedKeyword, MessageID.IDS_FeatureCheckedUserDefinedOperators, forceWarning: true); 1398open = CheckFeatureAvailability(open, MessageID.IDS_FeatureGenerics, forceWarning: true); 1462alias = CheckFeatureAvailability(alias, MessageID.IDS_FeatureGlobalNamespace, forceWarning: true);
Parser\LanguageParser.cs (17)
1443if (!parseAsModifier(MessageID.IDS_FeatureFileTypes, out modTok)) 1449if (!parseAsModifier(MessageID.IDS_FeatureClosedClasses, out modTok)) 1464if (!parseAsModifier(MessageID.IDS_FeatureRequiredMembers, out modTok)) 1478bool parseAsModifier(MessageID requiredFeature, [NotNullWhen(true)] out SyntaxToken? modTok) 1510return IsFeatureEnabled(MessageID.IDS_FeatureRecords); 1519return IsFeatureEnabled(MessageID.IDS_FeatureUnions); 1665return IsFeatureEnabled(MessageID.IDS_FeatureRecords); 1674return IsFeatureEnabled(MessageID.IDS_FeatureUnions); 1697return IsFeatureEnabled(MessageID.IDS_FeaturePartialEventsAndConstructors); 2485return IsFeatureEnabled(MessageID.IDS_FeatureRecords); 2494return IsFeatureEnabled(MessageID.IDS_FeatureUnions); 3392(IsFeatureEnabled(MessageID.IDS_FeatureExtensions) || this.PeekToken(1).Kind == SyntaxKind.LessThanToken); 4751IsFeatureEnabled(MessageID.IDS_FeatureExpressionBodiedAccessor) 6136IsFeatureEnabled(MessageID.IDS_FeatureFieldKeyword); 6585open = CheckFeatureAvailability(open, MessageID.IDS_FeatureGenerics); 9097IsFeatureEnabled(MessageID.IDS_FeatureExpressionBodiedAccessor) 10616if (isLambdaParameter && IsFeatureEnabled(MessageID.IDS_FeatureSimpleLambdaParameterModifiers))
Parser\Lexer.cs (4)
780private void CheckFeatureAvailability(MessageID feature) 872CheckFeatureAvailability(MessageID.IDS_FeatureBinaryLiteral); 1028CheckFeatureAvailability(MessageID.IDS_FeatureLeadingDigitSeparator); 1032CheckFeatureAvailability(MessageID.IDS_FeatureDigitSeparator);
Parser\Lexer_StringLiteral.cs (1)
155var info = MessageID.IDS_FeatureStringEscapeCharacter.GetFeatureAvailabilityDiagnosticInfo(this.Options);
Parser\SyntaxParser.cs (2)
1147protected TNode CheckFeatureAvailability<TNode>(TNode node, MessageID feature, bool forceWarning = false) 1165protected bool IsFeatureEnabled(MessageID feature)
Symbols\AliasSymbol.cs (4)
377MessageID.IDS_FeatureUsingTypeAlias.CheckFeatureAvailability(diagnostics, usingDirective.UnsafeKeyword); 381MessageID.IDS_FeatureUsingTypeAlias.CheckFeatureAvailability(diagnostics, usingDirective.NamespaceOrType); 396if (!DeclaringCompilation.IsFeatureEnabled(MessageID.IDS_FeatureUsingTypeAlias)) 420MessageID.IDS_FeatureUsingTypeAlias.CheckFeatureAvailability(diagnostics, usingDirective.NamespaceOrType);
Symbols\ConstantValueUtils.cs (1)
158Binder.CheckFeatureAvailability(node.Syntax, MessageID.IDS_FeatureConstantInterpolatedStrings, diagnostics);
Symbols\ConstraintsHelper.cs (5)
102Binder.CheckFeatureAvailability(location.SourceTree, MessageID.IDS_FeatureAllowsRefStructConstraint, diagnostics, location); 495bool includeNullability = compilation.IsFeatureEnabled(MessageID.IDS_FeatureNullableReferenceTypes); 536this(currentCompilation, conversions, currentCompilation.IsFeatureEnabled(MessageID.IDS_FeatureNullableReferenceTypes), location, diagnostics) 970if (MessageID.IDS_FeatureAllowsRefStructConstraint.GetFeatureAvailabilityDiagnosticInfo(args.CurrentCompilation) is { } diagnosticInfo) 1029var csDiagnosticInfo = MessageID.IDS_FeatureUnmanagedConstructedTypes.GetFeatureAvailabilityDiagnosticInfo(args.CurrentCompilation);
Symbols\FunctionTypeSymbol.cs (1)
47return syntax.IsFeatureEnabled(MessageID.IDS_FeatureInferredDelegateType) ?
Symbols\Source\LambdaSymbol.cs (2)
20private readonly MessageID _messageID; 78public MessageID MessageID { get { return _messageID; } }
Symbols\Source\LocalFunctionSymbol.cs (1)
428var diagnosticInfo = MessageID.IDS_FeatureLocalFunctionAttributes.GetFeatureAvailabilityDiagnosticInfo((CSharpParseOptions)syntaxReferenceOpt.SyntaxTree.Options);
Symbols\Source\ModifierUtils.cs (16)
31modifierErrors |= !MessageID.IDS_FeatureReadOnlyMembers.CheckFeatureAvailability(diagnostics, readonlyToken); 109checkFeature(DeclarationModifiers.PrivateProtected, MessageID.IDS_FeaturePrivateProtected) | 110checkFeature(DeclarationModifiers.Required, MessageID.IDS_FeatureRequiredMembers) | 111checkFeature(DeclarationModifiers.File, MessageID.IDS_FeatureFileTypes) | 112checkFeature(DeclarationModifiers.Closed, MessageID.IDS_FeatureClosedClasses) | 113checkFeature(DeclarationModifiers.Async, MessageID.IDS_FeatureAsync); 117bool checkFeature(DeclarationModifiers modifier, MessageID featureID) 125if (MessageID.IDS_FeatureRefFields.GetFeatureAvailabilityDiagnosticInfo((CSharpParseOptions)syntax.SyntaxTree.Options) is { } diagnosticInfo) 170requiredVersion = MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.RequiredVersion(); 183Binder.CheckFeatureAvailability(errorLocation.SourceTree, MessageID.IDS_DefaultInterfaceImplementation, diagnostics, errorLocation); 188requiredVersion = MessageID.IDS_DefaultInterfaceImplementation.RequiredVersion(); 221LanguageVersion requiredVersion = MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.RequiredVersion(); 235LanguageVersion requiredVersion = MessageID.IDS_FeaturePartialEventsAndConstructors.RequiredVersion(); 455var messageId = isForTypeDeclaration ? MessageID.IDS_FeaturePartialTypes : MessageID.IDS_FeaturePartialMethod;
Symbols\Source\ParameterHelpers.cs (8)
228bool allowShadowingNames = withTypeParametersBinder.Compilation.IsFeatureEnabled(MessageID.IDS_FeatureNameShadowingInNestedFunctions) && 607Binder.CheckFeatureAvailability(modifier, MessageID.IDS_FeatureExtensionMethod, diagnostics); 611Binder.CheckFeatureAvailability(modifier, MessageID.IDS_FeatureRefExtensionMethods, diagnostics); 640Binder.CheckFeatureAvailability(modifier, MessageID.IDS_FeatureRefExtensionMethods, diagnostics); 728MessageID.IDS_FeatureLambdaParamsArray.CheckFeatureAvailability(diagnostics, modifier); 738Binder.CheckFeatureAvailability(modifier, MessageID.IDS_FeatureReadOnlyReferences, diagnostics); 742Binder.CheckFeatureAvailability(modifier, MessageID.IDS_FeatureRefExtensionMethods, diagnostics); 805Binder.CheckFeatureAvailability(modifier, MessageID.IDS_FeatureRefReadonlyParameters, diagnostics);
Symbols\Source\SourceComplexParameterSymbol.cs (2)
384MessageID.IDS_FeatureOptionalParameter.CheckFeatureAvailability(diagnostics, defaultSyntax.EqualsToken); 1718MessageID.IDS_FeatureParamsCollections.CheckFeatureAvailability(diagnostics, ParameterSyntax);
Symbols\Source\SourceConstructorSymbol.cs (1)
52bool reported = !MessageID.IDS_FeatureExtensions.CheckFeatureAvailability(diagnostics, syntax);
Symbols\Source\SourceCustomEventSymbol.cs (1)
151Binder.CheckFeatureAvailability(syntax, MessageID.IDS_DefaultInterfaceImplementation, diagnostics, this.GetFirstLocation());
Symbols\Source\SourceMemberContainerSymbol.cs (18)
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)) 546bool reportIfContextual(SyntaxKind contextualKind, MessageID featureId, ErrorCode error) 1481Binder.CheckFeatureAvailability(t.DeclaringSyntaxReferences[0].GetSyntax(), MessageID.IDS_DefaultInterfaceImplementation, diagnostics, t.GetFirstLocation()); 1949MessageID.IDS_FeatureExtensions.CheckFeatureAvailability(diagnostics, compilation, location); 2381var methodKind = method1.MethodKind == MethodKind.Constructor ? MessageID.IDS_SK_CONSTRUCTOR : MessageID.IDS_SK_METHOD; 4867MessageID.IDS_FeatureParameterlessStructConstructors.CheckFeatureAvailability(diagnostics, m.DeclaringCompilation, location); 4896MessageID.IDS_FeatureStructFieldInitializers.CheckFeatureAvailability(diagnostics, symbol.DeclaringCompilation, symbol.GetFirstLocation()); 5315if (baseToStringMethod.ContainingModule != this.ContainingModule && !this.DeclaringCompilation.IsFeatureEnabled(MessageID.IDS_FeatureSealedToStringInRecord)) 5318var requiredVersion = MessageID.IDS_FeatureSealedToStringInRecord.RequiredVersion(); 5341MessageID.IDS_FeatureSealedToStringInRecord.CheckFeatureAvailability( 5405Binder.CheckFeatureAvailability(syntax, MessageID.IDS_FeaturePositionalFieldsInRecords, diagnostics);
Symbols\Source\SourceMemberContainerSymbol_ImplementationChecks.cs (4)
1032else if (MessageID.IDS_FeatureCovariantReturnsForOverrides.GetFeatureAvailabilityDiagnosticInfo(this.DeclaringCompilation) is { } diagnosticInfo) 1104var diagnosticInfo = MessageID.IDS_FeatureCovariantReturnsForOverrides.GetFeatureAvailabilityDiagnosticInfo(this.DeclaringCompilation); 1237DeclaringCompilation.LanguageVersion >= MessageID.IDS_FeatureCovariantReturnsForOverrides.RequiredVersion()) 1598compilation.IsFeatureEnabled(MessageID.IDS_FeatureNullableReferenceTypes);
Symbols\Source\SourceMemberFieldSymbol.cs (3)
243MessageID.IDS_FeatureFixedBuffer.CheckFeatureAvailability(diagnostics, modifier); 407Binder.CheckFeatureAvailability(declarator, MessageID.IDS_DefaultInterfaceImplementation, diagnostics, ErrorLocation); 537MessageID.IDS_FeatureRefFields.CheckFeatureAvailability(diagnostics, compilation, typeSyntax.SkipScoped(out _).Location);
Symbols\Source\SourceMemberMethodSymbol.cs (2)
1055Binder.CheckFeatureAvailability(declarationSyntax, MessageID.IDS_DefaultInterfaceImplementation, diagnostics, location); 1089Binder.CheckFeatureAvailability(declarationSyntax, MessageID.IDS_FeatureStaticMembersInInterfaces, diagnostics, location);
Symbols\Source\SourceMethodSymbolWithAttributes.cs (9)
600MessageID.IDS_FeatureMemberNotNull.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 605MessageID.IDS_FeatureMemberNotNull.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 610MessageID.IDS_FeatureModuleInitializers.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 630MessageID.IDS_FeatureRefStructInterfaces.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 648MessageID.IDS_FeatureOverloadResolutionPriority.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 720MessageID.IDS_FeatureObsoleteOnPropertyAccessor.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1437diagnostics.Add(ErrorCode.ERR_CannotUseManagedTypeInUnmanagedCallersOnly, syntax.Location, type, (isParam ? MessageID.IDS_Parameter : MessageID.IDS_Return).Localize()); 1564MessageID.IDS_AsyncMethodBuilderOverride.CheckFeatureAvailability(diagnostics, this.DeclaringCompilation, errorLocation);
Symbols\Source\SourceModuleSymbol.cs (1)
743bool value = compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefFields) || _assemblySymbol.RuntimeSupportsByRefFields;
Symbols\Source\SourceNamedTypeSymbol.cs (2)
185MessageID.IDS_FeatureGenerics.CheckFeatureAvailability(diagnostics, tpl.LessThanToken); 201MessageID.IDS_FeatureTypeVariance.CheckFeatureAvailability(diagnostics, tp.VarianceKeyword);
Symbols\Source\SourceNamedTypeSymbol_Bases.cs (2)
109MessageID.IDS_FeatureGenericAttributes.CheckFeatureAvailability(diagnostics, this.DeclaringCompilation, baseLocation); 627Binder.CheckFeatureAvailability(typeSyntax, MessageID.IDS_FeatureRefStructInterfaces, diagnostics);
Symbols\Source\SourceNamespaceSymbol.AliasesAndUsings.cs (3)
746MessageID.IDS_FeatureUsingTypeAlias.CheckFeatureAvailability(diagnostics, usingDirective, unsafeKeywordLocation); 758if (!compilation.IsFeatureEnabled(MessageID.IDS_FeatureUsingTypeAlias)) 849MessageID.IDS_SK_TYPE_OR_NAMESPACE.Localize());
Symbols\Source\SourceOrdinaryMethodSymbol.cs (4)
169syntax.ConstraintClauses[0].WhereKeyword, MessageID.IDS_OverrideWithConstraints, diagnostics); 719var available = MessageID.IDS_FeaturePartialEventsAndConstructors.CheckFeatureAvailability(diagnostics, DeclaringCompilation, ReturnTypeLocation); 850Binder.CheckFeatureAvailability(SyntaxNode, MessageID.IDS_FeatureExtendedPartialMethods, diagnostics, location); 1146MessageID.IDS_FeatureGenerics.CheckFeatureAvailability(diagnostics, syntax.TypeParameterList.LessThanToken);
Symbols\Source\SourcePropertyAccessorSymbol.cs (4)
227Binder.CheckFeatureAvailability(syntax, MessageID.IDS_FeatureInitOnlySetters, diagnostics, location); 245MessageID.IDS_FeaturePropertyAccessorMods.CheckFeatureAvailability(diagnostics, modifiers[0]); 507if (!options.IsFeatureEnabled(MessageID.IDS_FeatureReadOnlyMembers)) 564modifierErrors |= !MessageID.IDS_FeatureUnsafeEvolution.CheckFeatureAvailability(diagnostics, syntax);
Symbols\Source\SourcePropertySymbol.cs (7)
53((CSharpParseOptions)syntax.SyntaxTree.Options).IsFeatureEnabled(MessageID.IDS_FeatureFieldKeyword)); 150(hasAutoPropertyGet && hasAutoPropertySet ? MessageID.IDS_FeatureAutoImplementedProperties : MessageID.IDS_FeatureFieldKeyword) : 151(hasAutoPropertyGet ? MessageID.IDS_FeatureReadonlyAutoImplementedProperties : MessageID.IDS_FeatureAutoImplementedProperties), 163MessageID.IDS_FeatureAutoPropertyInitializer.CheckFeatureAvailability(diagnostics, initializer.EqualsToken); 463LanguageVersion requiredVersion = MessageID.IDS_FeaturePartialProperties.RequiredVersion();
Symbols\Source\SourcePropertySymbolBase.cs (5)
321if (!property.DeclaringCompilation.IsFeatureEnabled(MessageID.IDS_FeatureFieldKeyword)) 1603MessageID.IDS_FeatureMemberNotNull.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1608MessageID.IDS_FeatureMemberNotNull.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1624MessageID.IDS_FeatureRefStructInterfaces.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1638MessageID.IDS_FeatureOverloadResolutionPriority.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt);
Symbols\Source\SourceUserDefinedConversionSymbol.cs (2)
31MessageID.IDS_FeatureCheckedUserDefinedOperators.CheckFeatureAvailability(diagnostics, syntax.CheckedKeyword); 92MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.CheckFeatureAvailability(diagnostics, syntax.ExplicitInterfaceSpecifier);
Symbols\Source\SourceUserDefinedOperatorSymbol.cs (3)
32MessageID.IDS_FeatureCheckedUserDefinedOperators.CheckFeatureAvailability(diagnostics, syntax.CheckedKeyword); 41MessageID.IDS_FeatureUnsignedRightShift.CheckFeatureAvailability(diagnostics, syntax.OperatorToken); 94MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.CheckFeatureAvailability(diagnostics, syntax.ExplicitInterfaceSpecifier);
Symbols\Source\SourceUserDefinedOperatorSymbolBase.cs (4)
60Binder.CheckFeatureAvailability(syntax, MessageID.IDS_FeatureUserDefinedCompoundAssignmentOperators, diagnostics, ((OperatorDeclarationSyntax)syntax).OperatorToken.GetLocation()); 247LanguageVersion requiredVersion = MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.RequiredVersion(); 272Binder.CheckFeatureAvailability(location.SourceTree, MessageID.IDS_DefaultInterfaceImplementation, diagnostics, location); 956Binder.CheckFeatureAvailability(location.SourceTree, MessageID.IDS_FeatureRelaxedShiftOperator, diagnostics, location);
Symbols\Symbol_Attributes.cs (2)
348MessageID.IDS_FeatureGenericAttributes.CheckFeatureAvailability(diagnostics, attributesToBind[i]); 711diagnostics.Add(ErrorCode.WRN_NonECMAFeature, targetOpt.GetLocation(), MessageID.IDS_FeatureModuleAttrLoc);
Symbols\SymbolKindExtensions.cs (15)
21return MessageID.IDS_SK_NAMESPACE.Localize(); 23return MessageID.IDS_SK_TYPE.Localize(); 25return MessageID.IDS_SK_TYVAR.Localize(); 27return MessageID.IDS_SK_ARRAY.Localize(); 29return MessageID.IDS_SK_POINTER.Localize(); 31return MessageID.IDS_SK_FUNCTION_POINTER.Localize(); 33return MessageID.IDS_SK_DYNAMIC.Localize(); 35return MessageID.IDS_SK_METHOD.Localize(); 37return MessageID.IDS_SK_PROPERTY.Localize(); 39return MessageID.IDS_SK_EVENT.Localize(); 41return MessageID.IDS_SK_FIELD.Localize(); 45return MessageID.IDS_SK_VARIABLE.Localize(); 47return MessageID.IDS_SK_ALIAS.Localize(); 49return MessageID.IDS_SK_LABEL.Localize(); 53return MessageID.IDS_SK_UNKNOWN.Localize();
Symbols\Synthesized\Records\SynthesizedPrimaryConstructor.cs (1)
181MessageID.IDS_FeaturePrimaryConstructors.CheckFeatureAvailability(diagnostics, attributeDeclarationSyntax, attributeDeclarationSyntax.Target.Identifier.GetLocation());
Symbols\Synthesized\SynthesizedBackingFieldSymbol.cs (1)
302new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureAttributesOnBackingFields.RequiredVersion())),
Symbols\Tuples\TupleFieldSymbol.cs (1)
286new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureInferredTupleNames.RequiredVersion())));
Symbols\TypeSymbol.cs (7)
1025LanguageVersion requiredVersion = MessageID.IDS_FeatureImplicitImplementationOfNonPublicMembers.RequiredVersion(); 1647var feature = isStatic ? MessageID.IDS_FeatureStaticAbstractMembersInInterfaces : MessageID.IDS_DefaultInterfaceImplementation; 1750LanguageVersion requiredVersion = MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.RequiredVersion(); 1757MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.Localize(), 1996MessageID.IDS_FeatureRefStructInterfaces.CheckFeatureAvailability(diagnostics, implementingSymbol.DeclaringCompilation, applicationSyntaxReference.GetLocation());
Symbols\VarianceSafety.cs (9)
179return MessageID.IDS_FeatureVarianceSafetyForStaticInterfaceMembers.RequiredVersion() <= member.DeclaringCompilation.LanguageVersion; 314diagnostics.AddVarianceError(typeParam, context, locationProvider, locationArg, MessageID.IDS_Invariantly); 320diagnostics.AddVarianceError(typeParam, context, locationProvider, locationArg, MessageID.IDS_Covariantly); 326diagnostics.AddVarianceError(typeParam, context, locationProvider, locationArg, MessageID.IDS_Contravariantly); 448MessageID expectedVariance) 451MessageID actualVariance; 455actualVariance = MessageID.IDS_Contravariant; 458actualVariance = MessageID.IDS_Covariant; 478new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureVarianceSafetyForStaticInterfaceMembers.RequiredVersion()));
Syntax\SyntaxNodeExtensions.cs (3)
274MessageID.IDS_FeatureRefLocalsReturns.CheckFeatureAvailability(diagnostics, refType.RefKeyword); 277MessageID.IDS_FeatureReadOnlyReferences.CheckFeatureAvailability(diagnostics, refType.ReadOnlyKeyword); 328MessageID.IDS_FeatureRefLocalsReturns.CheckFeatureAvailability(diagnostics, refExpression.RefKeyword);
Utilities\ValueSetFactory.cs (1)
85if (compilation.IsFeatureEnabled(MessageID.IDS_FeatureClosedClasses) && input.Type is NamedTypeSymbol { IsClosed: true } closedClass)