775 references to MessageID
Microsoft.CodeAnalysis.CSharp (742)
Binder\Binder.cs (1)
763MessageID.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)
981Error(diagnostics, ErrorCode.ERR_BadSKknown, node, ns.NamespaceSymbol, MessageID.IDS_SK_NAMESPACE.Localize(), MessageID.IDS_SK_VARIABLE.Localize()); 986Error(diagnostics, ErrorCode.ERR_BadSKknown, node, type.Type, MessageID.IDS_SK_TYPE.Localize(), MessageID.IDS_SK_VARIABLE.Localize()); 997Error(diagnostics, GetMethodGroupOrFunctionPointerLvalueError(valueKind), node, unconvertedAddressOf.Operand.Name, MessageID.IDS_AddressOfMethodGroup.Localize()); 1008Error(diagnostics, GetMethodGroupOrFunctionPointerLvalueError(valueKind), node, methodGroup.Name, MessageID.IDS_MethodGroup.Localize()); 1263Error(diagnostics, ErrorCode.ERR_BadSKknown, expr.Syntax, ((BoundNamespaceExpression)expr).NamespaceSymbol, MessageID.IDS_SK_NAMESPACE.Localize(), MessageID.IDS_SK_VARIABLE.Localize()); 1271Error(diagnostics, ErrorCode.ERR_BadSKunknown, expr.Syntax, expr.Type, MessageID.IDS_SK_TYPE.Localize()); 1308else if (this.IsDirectlyInIterator && Compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefUnsafeInIteratorAsync)) 2053CheckFeatureAvailability(node, MessageID.IDS_FeatureInitOnlySetters, diagnostics); 3456MessageID cause; 3459cause = MessageID.IDS_FOREACHLOCAL; 3463cause = MessageID.IDS_USINGLOCAL; 3467cause = MessageID.IDS_FIXEDLOCAL;
Binder\Binder_AnonymousTypes.cs (1)
23MessageID.IDS_FeatureAnonymousTypes.CheckFeatureAvailability(diagnostics, node.NewKeyword);
Binder\Binder_Attributes.cs (1)
544CheckFeatureAvailability(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 (10)
440CheckFeatureAvailability(syntax, MessageID.IDS_FeatureStaticAbstractMembersInInterfaces, diagnostics); 452CheckFeatureAvailability(syntax, MessageID.IDS_FeatureCheckedUserDefinedOperators, diagnostics); 463CheckFeatureAvailability(syntax, MessageID.IDS_FeatureInlineArrays, diagnostics); 507CheckFeatureAvailability(syntax, MessageID.IDS_FeatureFirstClassSpan, diagnostics); 2395if (targetTyped && !destination.IsErrorType() && !Compilation.IsFeatureEnabled(MessageID.IDS_FeatureTargetTypedConditional)) 2403new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion())); 2636Debug.Assert(syntax.IsFeatureEnabled(MessageID.IDS_FeatureInferredDelegateType)); 2856Error(diagnostics, ErrorCode.WRN_OptionalParamValueMismatch, lambdaParameter.GetFirstLocation(), p + 1, lambdaParamDefault, delegateParamDefault ?? ((object)MessageID.IDS_Missing.Localize())); 2900CheckFeatureAvailability(syntax, MessageID.IDS_FeatureRefStructs, diagnostics); 3213else 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); 2385if (!IsInsideNameof || (EnclosingNameofArgument != node && !node.IsFeatureEnabled(MessageID.IDS_FeatureInstanceMemberInNameof))) 2419CheckFeatureAvailability(node, MessageID.IDS_FeatureInstanceMemberInNameof, diagnostics); 2679CheckFeatureAvailability(node, MessageID.IDS_FeatureIndexOperator, diagnostics); 2720CheckFeatureAvailability(node, MessageID.IDS_FeatureRangeOperator, diagnostics); 2901diagnostics.Add(ErrorCode.ERR_NoExplicitConv, syntax.Location, MessageID.IDS_SK_METHOD.Localize(), targetType); 3075nameString = MessageID.IDS_Lambda.Localize().ToString(); 3210MessageID.IDS_FeatureReadOnlyReferences.CheckFeatureAvailability(diagnostics, argumentSyntax.RefKindKeyword); 3215MessageID.IDS_FeatureOutVar.CheckFeatureAvailability(diagnostics, argumentSyntax.RefKindKeyword); 3295CheckFeatureAvailability(declarationExpression, MessageID.IDS_FeatureExpressionVariablesInQueriesAndInitializers, diagnostics); 3373CheckFeatureAvailability(syntax, MessageID.IDS_FeatureRefUnsafeInIteratorAsync, diagnostics); 3413CheckFeatureAvailability(nameColonSyntax, MessageID.IDS_FeatureNamedArgument, diagnostics); 3460new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureNonTrailingNamedArguments.RequiredVersion())); 3984if (!Compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefReadonlyParameters)) 3990var available = CheckFeatureAvailability(argument.Syntax, MessageID.IDS_FeatureRefReadonlyParameters, diagnostics); 4202MessageID.IDS_FeatureImplicitArray.CheckFeatureAvailability(diagnostics, node.NewKeyword); 4667LanguageVersion requiredVersion = MessageID.IDS_FeatureNestedStackalloc.RequiredVersion(); 4673MessageID.IDS_FeatureNestedStackalloc.CheckFeatureAvailability(diagnostics, node.GetFirstToken()); 4692CheckFeatureAvailability(node, MessageID.IDS_FeatureRefStructs, diagnostics); 4755MessageID.IDS_FeatureStackAllocInitializer.CheckFeatureAvailability(diagnostics, stackAllocKeyword); 5257MessageID.IDS_FeatureImplicitObjectCreation.CheckFeatureAvailability(diagnostics, node.NewKeyword); 5342MessageID.IDS_FeatureCollectionExpressions.CheckFeatureAvailability(diagnostics, syntax, syntax.OpenBracketToken.GetLocation()); 5351MessageID.IDS_FeatureCollectionExpressionArguments.CheckFeatureAvailability(diagnostics, syntax, withElementSyntax.WithKeyword.GetLocation()); 5847MessageID.IDS_FeatureObjectInitializer.CheckFeatureAvailability(diagnostics, initializerSyntax.OpenBraceToken); 6051MessageID.IDS_FeatureDictionaryInitializer.CheckFeatureAvailability(diagnostics, implicitIndexing.ArgumentList.OpenBracketToken); 6149MessageID.IDS_FeatureImplicitIndexerInitializer.CheckFeatureAvailability(diagnostics, implicitIndexer.Syntax); 6422MessageID.IDS_FeatureCollectionInitializer.CheckFeatureAvailability(diagnostics, initializerSyntax.OpenBraceToken); 6483CheckFeatureAvailability(node, MessageID.IDS_FeatureRefStructInterfaces, diagnostics); 7586MessageID.IDS_FeatureRawStringLiterals.CheckFeatureAvailability(diagnostics, node); 7599CheckFeatureAvailability(node, MessageID.IDS_FeatureRawStringLiterals, diagnostics); 7602CheckFeatureAvailability(node, MessageID.IDS_FeatureUtf8StringLiterals, diagnostics); 7928var msgId = ((UnboundLambda)boundLeft).MessageID; 8128CheckFeatureAvailability(boundLeft.Syntax, MessageID.IDS_FeatureStaticAbstractMembersInInterfaces, diagnostics); 8175Compilation.LanguageVersion < MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion()) 8205Error(diagnostics, ErrorCode.ERR_BadSKunknown, methodGroup.NameSyntax, method, MessageID.IDS_SK_METHOD.Localize()); 8265MessageID.IDS_FeatureExtensions.CheckFeatureAvailability(diagnostics, syntax); 9165CheckFeatureAvailability(node, MessageID.IDS_FeatureIndexingMovableFixedBuffers, diagnostics); 9211CheckFeatureAvailability(node, MessageID.IDS_FeatureRefFields, diagnostics); 9440else if (CheckFeatureAvailability(node, MessageID.IDS_FeatureInstanceMemberInNameof, diagnostics)) 9810CheckFeatureAvailability(node, MessageID.IDS_FeatureInlineArrays, diagnostics); 10568_ = MessageID.IDS_FeatureIndexOperator.CheckFeatureAvailability(diagnostics, syntax); 11608MessageID.IDS_FeatureNullPropagatingOperator.CheckFeatureAvailability(diagnostics, node.OperatorToken); 11616MessageID.IDS_FeatureNullConditionalAssignment.CheckFeatureAvailability(diagnostics, assignment.OperatorToken); 11797var 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); 1856MessageID.IDS_FeatureParamsCollections.CheckFeatureAvailability(diagnostics, node); 2377CheckFeatureAvailability(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)
352!node.IsFeatureEnabled(MessageID.IDS_FeatureUserDefinedCompoundAssignmentOperators)) 498CheckFeatureAvailability(node, MessageID.IDS_FeatureExtensions, diagnostics); 981CheckFeatureAvailability(node, MessageID.IDS_FeatureTupleEquality, diagnostics); 2234Binder.CheckFeatureAvailability(node, MessageID.IDS_DefaultInterfaceImplementation, diagnostics); 3447!node.IsFeatureEnabled(MessageID.IDS_FeatureUserDefinedCompoundAssignmentOperators)) 3586CheckFeatureAvailability(node, MessageID.IDS_FeatureExtensions, diagnostics); 3991result = CheckFeatureAvailability(node, MessageID.IDS_FeatureStaticAbstractMembersInInterfaces, diagnostics); 4002result = CheckFeatureAvailability(node, MessageID.IDS_FeatureStaticAbstractMembersInInterfaces, diagnostics); 4010result &= CheckFeatureAvailability(node, MessageID.IDS_FeatureUnsignedRightShift, diagnostics); 4021result &= CheckFeatureAvailability(node, MessageID.IDS_FeatureExtensions, diagnostics); 4025result &= CheckFeatureAvailability(node, MessageID.IDS_FeatureCheckedUserDefinedOperators, diagnostics); 4029result &= CheckFeatureAvailability(node, MessageID.IDS_FeatureUnsignedRightShift, diagnostics); 4040MessageID.IDS_FeatureNullableReferenceTypes.CheckFeatureAvailability(diagnostics, node.OperatorToken); 4831((CSharpParseOptions)node.SyntaxTree.Options).IsFeatureEnabled(MessageID.IDS_FeaturePatternMatching)) 4878if (wasUnderscore && ((CSharpParseOptions)node.SyntaxTree.Options).IsFeatureEnabled(MessageID.IDS_FeatureRecursivePatterns)) 5635CheckFeatureAvailability(node, MessageID.IDS_FeatureUnconstrainedTypeParameterInNullCoalescingOperator, diagnostics); 5773MessageID.IDS_FeatureCoalesceAssignmentExpression.CheckFeatureAvailability(diagnostics, node.OperatorToken); 5892CheckFeatureAvailability(node, MessageID.IDS_FeatureRefConditional, diagnostics); 6045CheckFeatureAvailability(syntax, MessageID.IDS_FeatureNativeInt, diagnostics); 6061CheckFeatureAvailability(syntax, MessageID.IDS_FeatureNativeInt, diagnostics);
Binder\Binder_Patterns.cs (22)
21MessageID.IDS_FeaturePatternMatching.CheckFeatureAvailability(diagnostics, node.IsKeyword); 159MessageID.IDS_FeatureRecursivePatterns.CheckFeatureAvailability(diagnostics, node.SwitchKeyword); 209MessageID.IDS_FeatureParenthesizedPattern.CheckFeatureAvailability(diagnostics, node.OpenParenToken); 307CheckFeatureAvailability(node, MessageID.IDS_FeatureListPattern, diagnostics); 415MessageID.IDS_FeatureRecursivePatterns.CheckFeatureAvailability(diagnostics, node); 457CheckFeatureAvailability(innerExpression, MessageID.IDS_FeatureTypePattern, diagnostics); 586CheckFeatureAvailability(patternExpression, MessageID.IDS_FeatureNullPointerConstantPattern, diagnostics); 642var requiredVersion = MessageID.IDS_FeatureRecursivePatterns.RequiredVersion(); 666if (MessageID.IDS_FeatureSpanCharConstantPattern.CheckFeatureAvailability(diagnostics, Compilation, node.Location)) 785LanguageVersion requiredVersion = MessageID.IDS_FeatureGenericPatternMatching.RequiredVersion(); 900CheckFeatureAvailability(designation, MessageID.IDS_FeatureExpressionVariablesInQueriesAndInitializers, diagnostics); 975MessageID.IDS_FeatureRecursivePatterns.CheckFeatureAvailability(diagnostics, node); 1103MessageID.IDS_FeatureExtendedPropertyPatterns.CheckFeatureAvailability(diagnostics, subPattern.ExpressionColon.ColonToken); 1258if (Compilation.LanguageVersion < MessageID.IDS_FeatureRecursivePatterns.RequiredVersion()) 1336|| (inputType.IsPointerType() && Compilation.LanguageVersion < MessageID.IDS_FeatureRecursivePatterns.RequiredVersion())) 1384MessageID.IDS_FeatureRecursivePatterns.CheckFeatureAvailability(diagnostics, node); 1481MessageID.IDS_FeatureExtendedPropertyPatterns.CheckFeatureAvailability(diagnostics, p.ExpressionColon.ColonToken); 1628MessageID.IDS_FeatureTypePattern.CheckFeatureAvailability(diagnostics, node); 1641MessageID.IDS_FeatureRelationalPattern.CheckFeatureAvailability(diagnostics, node.OperatorToken); 1735MessageID.IDS_FeatureNotPattern.CheckFeatureAvailability(diagnostics, node.OperatorToken); 1799MessageID.IDS_FeatureOrPattern.CheckFeatureAvailability(diagnostics, node.OperatorToken); 1866MessageID.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)) 3402MessageID.IDS_FeatureExceptionFilter.CheckFeatureAvailability(diagnostics, filter.WhenKeyword); 3600ConstructorDeclarationSyntax or DestructorDeclarationSyntax => MessageID.IDS_FeatureExpressionBodiedDeOrConstructor, 3601AccessorDeclarationSyntax => MessageID.IDS_FeatureExpressionBodiedAccessor, 3602BaseMethodDeclarationSyntax => MessageID.IDS_FeatureExpressionBodiedMethod, 3603IndexerDeclarationSyntax => MessageID.IDS_FeatureExpressionBodiedIndexer, 3604PropertyDeclarationSyntax => MessageID.IDS_FeatureExpressionBodiedProperty, 3608LocalFunctionStatementSyntax => (MessageID?)null, 3715MessageID.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); 342var diagnosticInfo = diagnostics.Add(ErrorCode.ERR_BadSKknown, syntax.Location, syntax, symbol.Symbol.GetKindText(), MessageID.IDS_SK_TYPE.Localize()); 459MessageID.IDS_FeatureFunctionPointers.CheckFeatureAvailability(diagnostics, functionPointerTypeSyntax.DelegateKeyword); 550MessageID.IDS_FeatureNullable.CheckFeatureAvailability(diagnostics, nullableSyntax.QuestionToken); 587MessageID.IDS_FeatureGlobalNamespace.CheckFeatureAvailability(diagnostics, node.Alias); 627var requiredVersion = MessageID.IDS_FeatureDefaultTypeParameterConstraint.RequiredVersion(); 688MessageID.IDS_FeatureTuples.CheckFeatureAvailability(diagnostics, syntax); 743bool includeNullability = Compilation.IsFeatureEnabled(MessageID.IDS_FeatureNullableReferenceTypes); 941if (Compilation.LanguageVersion < MessageID.IDS_FeatureDynamic.RequiredVersion()) 1032CheckFeatureAvailability(node, MessageID.IDS_FeatureNativeInt, diagnostics); 1378var binder = !Compilation.IsFeatureEnabled(MessageID.IDS_FeatureUsingTypeAlias) 1399CheckFeatureAvailability(typeSyntax, MessageID.IDS_FeatureUnboundGenericTypesInNameof, diagnostics); 1419Error(diagnostics, ErrorCode.ERR_BadArity, typeSyntax, type, MessageID.IDS_SK_TYPE.Localize(), typeArgumentsSyntax.Count); 1451Error(diagnostics, ErrorCode.ERR_BadArity, syntax, plainName, MessageID.IDS_MethodGroup.Localize(), typeArgumentsSyntax.Count); 1641bool includeNullability = Compilation.IsFeatureEnabled(MessageID.IDS_FeatureNullableReferenceTypes); 2819internal static bool CheckFeatureAvailability(SyntaxNode syntax, MessageID feature, BindingDiagnosticBag diagnostics, Location? location = null) 2822internal static bool CheckFeatureAvailability(SyntaxToken syntax, MessageID feature, BindingDiagnosticBag diagnostics, bool forceWarning = false) 2825internal static bool CheckFeatureAvailability(SyntaxTree tree, MessageID feature, BindingDiagnosticBag diagnostics, Location location) 2828private static bool CheckFeatureAvailability(SyntaxNode syntax, MessageID feature, DiagnosticBag? diagnostics, Location? location = null) 2831private static bool CheckFeatureAvailability(SyntaxToken syntax, MessageID feature, DiagnosticBag? diagnostics, bool forceWarning = false) 2834private static bool CheckFeatureAvailability(SyntaxTree tree, MessageID feature, DiagnosticBag? diagnostics, Location location) 2840private static bool CheckFeatureAvailability<TData>(SyntaxTree tree, MessageID feature, DiagnosticBag? diagnostics, TData data, Func<TData, Location> getLocation, bool forceWarning = false)
Binder\Binder_Unsafe.cs (1)
65else 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); 543CheckFeatureAvailability(foreachKeyword, MessageID.IDS_FeatureRefUnsafeInIteratorAsync, diagnostics); 895CheckFeatureAvailability(collectionExpr.Syntax, MessageID.IDS_FeatureInlineArrays, diagnostics); 1239CheckFeatureAvailability(expr.Syntax, MessageID.IDS_FeatureDisposalPattern, diagnostics); 1283CheckFeatureAvailability(syntax, MessageID.IDS_FeatureRefStructInterfaces, diagnostics); 1462MessageID patternName = isAsync ? MessageID.IDS_FeatureAsyncStreams : MessageID.IDS_Collection; 1499diagnostics.Add(ErrorCode.WRN_PatternIsAmbiguous, collectionSyntax.Location, patternType, MessageID.IDS_Collection.Localize(), 1596diagnostics.Add(ErrorCode.WRN_PatternIsAmbiguous, collectionSyntax.Location, collectionExpr.Type, MessageID.IDS_Collection.Localize(), 1755diagnostics.Add(ErrorCode.WRN_PatternBadSignature, collectionSyntax.Location, enumeratorType, MessageID.IDS_Collection.Localize(), patternMemberCandidate); 1819CheckFeatureAvailability(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)
3947return 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)
1860if (!Compilation.IsFeatureEnabled(MessageID.IDS_FeatureOverloadResolutionPriority)) 2974if (_binder.Compilation.IsFeatureEnabled(MessageID.IDS_FeatureImprovedInterpolatedStrings) && 3497if (Compilation.IsFeatureEnabled(MessageID.IDS_FeatureFirstClassSpan)) 3983if (argRefKind == RefKind.Ref && binder.Compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefReadonlyParameters)) 4030if (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; 418CheckFeatureAvailability(node, MessageID.IDS_FeatureSwitchOnBool, diagnostics);
Binder\SwitchBinder_Patterns.cs (1)
280MessageID.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); 296CheckFeatureAvailability(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; } 1553public 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); 435AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), name); 649AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "modulename"); 697AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), arg); 710AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), arg); 718AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "/doc:"); // Different argument. 730AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "/addmodule:"); 820AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), name); 1077AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "keycontainer"); 1139AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "subsystemversion"); 1160AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), "touchedfiles"); 1455ParseAndResolveReferencePaths(null, additionalReferenceDirectories.AsMemory(), baseDirectory, libPaths, MessageID.IDS_LIB_ENV, diagnostics); 1570if (nullableContextOptions != NullableContextOptions.Disable && parseOptions.LanguageVersion < MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion()) 1574new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion())), Location.None)); 1633private static void ParseAndResolveReferencePaths(string? switchName, ReadOnlyMemory<char>? switchValue, string? baseDirectory, List<string> builder, MessageID origin, List<Diagnostic> diagnostics) 1638AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_PathList.Localize(), switchName); 1647AddDiagnostic(diagnostics, ErrorCode.WRN_InvalidSearchPathDir, path, origin.Localize(), MessageID.IDS_DirectoryHasInvalidPath.Localize()); 1651AddDiagnostic(diagnostics, ErrorCode.WRN_InvalidSearchPathDir, path, origin.Localize(), MessageID.IDS_DirectoryDoesNotExist.Localize()); 1892AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Namespace1.Localize(), arg); 1906AddDiagnostic(diagnostics, ErrorCode.ERR_SwitchNeedsString, MessageID.IDS_Text.Localize(), arg); 1933AddDiagnostic(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 (4)
2111CheckFeatureAvailability(Candidate.ExtractReturnTypeSyntax(), MessageID.IDS_FeatureAsyncMain, diagnostics)) 2118else if (LanguageVersion >= MessageID.IDS_FeatureAsyncMain.RequiredVersion() && taskEntryPoints.Count > 0) 3074if (Options.NullableContextOptions != NullableContextOptions.Disable && LanguageVersion < MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion() && 3079new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureNullableReferenceTypes.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() && 1959var isSufficientLangVersion = compilation.LanguageVersion >= MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion();
CSharpParseOptions.cs (1)
273internal bool IsFeatureEnabled(MessageID feature)
Declarations\DeclarationTreeBuilder.cs (11)
481MessageID.IDS_FeatureUsingStatic.CheckFeatureAvailability(diagnostics, usingDirective, usingDirective.StaticKeyword.GetLocation()); 484MessageID.IDS_FeatureGlobalUsing.CheckFeatureAvailability(diagnostics, usingDirective, usingDirective.GlobalKeyword.GetLocation()); 491MessageID.IDS_FeatureExternAlias.CheckFeatureAvailability(diagnostics, externAlias, externAlias.ExternKeyword.GetLocation()); 529MessageID.IDS_FeatureFileScopedNamespace.CheckFeatureAvailability(diagnostics, node, node.NamespaceKeyword.GetLocation()); 734MessageID.IDS_FeatureRecordStructs.CheckFeatureAvailability(diagnostics, record, record.ClassOrStructKeyword.GetLocation()); 747MessageID.IDS_FeaturePrimaryConstructors.CheckFeatureAvailability(diagnostics, node.ParameterList); 752MessageID.IDS_FeaturePrimaryConstructors.CheckFeatureAvailability(diagnostics, node, node.SemicolonToken.GetLocation()); 763MessageID.IDS_FeatureStaticClasses.CheckFeatureAvailability(diagnostics, node, modifier.GetLocation()); 767MessageID.IDS_FeatureReadOnlyStructs.CheckFeatureAvailability(diagnostics, node, modifier.GetLocation()); 771MessageID.IDS_FeatureRefStructs.CheckFeatureAvailability(diagnostics, node, modifier.GetLocation()); 859MessageID.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 (199)
316private readonly MessageID _id; 318internal LocalizableErrorArgument(MessageID id) 338public static LocalizableErrorArgument Localize(this MessageID id) 349internal static string? RequiredFeature(this MessageID feature) 360this MessageID feature, 374this MessageID feature, 388this MessageID feature, 402this MessageID feature, 416this MessageID feature, 431this MessageID feature, 446this MessageID feature, 459internal static CSDiagnosticInfo? GetFeatureAvailabilityDiagnosticInfo(this MessageID feature, CSharpParseOptions options) 462internal static CSDiagnosticInfo? GetFeatureAvailabilityDiagnosticInfo(this MessageID feature, CSharpCompilation compilation) 465private static CSDiagnosticInfo GetDisabledFeatureDiagnosticInfo(MessageID feature, LanguageVersion availableVersion) 479internal static LanguageVersion RequiredVersion(this MessageID feature) 490case MessageID.IDS_FeatureCollectionExpressionArguments: 494case MessageID.IDS_FeatureFieldKeyword: 495case MessageID.IDS_FeatureFirstClassSpan: 496case MessageID.IDS_FeatureUnboundGenericTypesInNameof: 497case MessageID.IDS_FeatureSimpleLambdaParameterModifiers: 498case MessageID.IDS_FeaturePartialEventsAndConstructors: 499case MessageID.IDS_FeatureExtensions: 500case MessageID.IDS_FeatureNullConditionalAssignment: 501case MessageID.IDS_FeatureExpressionOptionalAndNamedArguments: 502case MessageID.IDS_FeatureUserDefinedCompoundAssignmentOperators: 506case MessageID.IDS_FeatureStringEscapeCharacter: // lexer check 507case MessageID.IDS_FeatureImplicitIndexerInitializer: 508case MessageID.IDS_FeatureLockObject: 509case MessageID.IDS_FeatureParamsCollections: 510case MessageID.IDS_FeatureRefUnsafeInIteratorAsync: 511case MessageID.IDS_FeatureRefStructInterfaces: 512case MessageID.IDS_FeatureAllowsRefStructConstraint: 513case MessageID.IDS_FeaturePartialProperties: 514case MessageID.IDS_FeatureOverloadResolutionPriority: 518case MessageID.IDS_FeatureLambdaOptionalParameters: // semantic check 519case MessageID.IDS_FeatureLambdaParamsArray: // semantic check 520case MessageID.IDS_FeaturePrimaryConstructors: // declaration table check 521case MessageID.IDS_FeatureUsingTypeAlias: // semantic check 522case MessageID.IDS_FeatureInstanceMemberInNameof: // semantic check 523case MessageID.IDS_FeatureInlineArrays: // semantic check 524case MessageID.IDS_FeatureCollectionExpressions: // semantic check 525case MessageID.IDS_FeatureRefReadonlyParameters: // semantic check 529case MessageID.IDS_FeatureRawStringLiterals: 530case MessageID.IDS_FeatureStaticAbstractMembersInInterfaces: // semantic check 531case MessageID.IDS_FeatureNewLinesInInterpolations: // semantic check 532case MessageID.IDS_FeatureListPattern: // semantic check 533case MessageID.IDS_FeatureRequiredMembers: // semantic check 534case MessageID.IDS_FeatureCacheStaticMethodGroupConversion: // lowering check 535case MessageID.IDS_FeatureSpanCharConstantPattern: 536case MessageID.IDS_FeatureAutoDefaultStructs: // semantic check 537case MessageID.IDS_FeatureCheckedUserDefinedOperators: // semantic check for declarations, parsing check for doc comments 538case MessageID.IDS_FeatureUtf8StringLiterals: // semantic check 539case MessageID.IDS_FeatureUnsignedRightShift: // semantic check for declarations and consumption, parsing check for doc comments 540case MessageID.IDS_FeatureRelaxedShiftOperator: // semantic check 541case MessageID.IDS_FeatureRefFields: // semantic check 542case MessageID.IDS_FeatureFileTypes: // semantic check 543case MessageID.IDS_FeatureGenericAttributes: // semantic check 547case MessageID.IDS_FeatureMixedDeclarationsAndExpressionsInDeconstruction: // semantic check 548case MessageID.IDS_FeatureSealedToStringInRecord: // semantic check 549case MessageID.IDS_FeatureImprovedInterpolatedStrings: // semantic check 550case MessageID.IDS_FeatureRecordStructs: 551case MessageID.IDS_FeatureWithOnStructs: // semantic check 552case MessageID.IDS_FeatureWithOnAnonymousTypes: // semantic check 553case MessageID.IDS_FeaturePositionalFieldsInRecords: // semantic check 554case MessageID.IDS_FeatureGlobalUsing: 555case MessageID.IDS_FeatureInferredDelegateType: // semantic check 556case MessageID.IDS_FeatureLambdaAttributes: // semantic check 557case MessageID.IDS_FeatureExtendedPropertyPatterns: // semantic check 558case MessageID.IDS_FeatureLambdaReturnType: // semantic check 559case MessageID.IDS_AsyncMethodBuilderOverride: // semantic check 560case MessageID.IDS_FeatureConstantInterpolatedStrings: // semantic check 561case MessageID.IDS_FeatureImplicitImplementationOfNonPublicMembers: // semantic check 562case MessageID.IDS_FeatureFileScopedNamespace: // semantic check 563case MessageID.IDS_FeatureParameterlessStructConstructors: // semantic check 564case MessageID.IDS_FeatureStructFieldInitializers: // semantic check 568case MessageID.IDS_FeatureLambdaDiscardParameters: // semantic check 569case MessageID.IDS_FeatureFunctionPointers: // semantic check 570case MessageID.IDS_FeatureLocalFunctionAttributes: // syntax check 571case MessageID.IDS_FeatureExternLocalFunctions: // semantic check 572case MessageID.IDS_FeatureImplicitObjectCreation: // semantic check 573case MessageID.IDS_FeatureMemberNotNull: 574case MessageID.IDS_FeatureAndPattern: // semantic check 575case MessageID.IDS_FeatureNotPattern: // semantic check 576case MessageID.IDS_FeatureOrPattern: // semantic check 577case MessageID.IDS_FeatureParenthesizedPattern: // semantic check 578case MessageID.IDS_FeatureTypePattern: // semantic check 579case MessageID.IDS_FeatureRelationalPattern: // semantic check 580case MessageID.IDS_FeatureExtensionGetEnumerator: // semantic check 581case MessageID.IDS_FeatureExtensionGetAsyncEnumerator: // semantic check 582case MessageID.IDS_FeatureNativeInt: 583case MessageID.IDS_FeatureExtendedPartialMethods: // semantic check 584case MessageID.IDS_TopLevelStatements: 585case MessageID.IDS_FeatureInitOnlySetters: // semantic check 586case MessageID.IDS_FeatureRecords: // semantic check 587case MessageID.IDS_FeatureTargetTypedConditional: // semantic check 588case MessageID.IDS_FeatureCovariantReturnsForOverrides: // semantic check 589case MessageID.IDS_FeatureStaticAnonymousFunction: // semantic check 590case MessageID.IDS_FeatureModuleInitializers: // semantic check on method attribute 591case MessageID.IDS_FeatureDefaultTypeParameterConstraint: // semantic check 592case MessageID.IDS_FeatureVarianceSafetyForStaticInterfaceMembers: // semantic check 596case MessageID.IDS_FeatureAltInterpolatedVerbatimStrings: // semantic check 597case MessageID.IDS_FeatureCoalesceAssignmentExpression: // semantic check 598case MessageID.IDS_FeatureUnconstrainedTypeParameterInNullCoalescingOperator: 599case MessageID.IDS_FeatureNullableReferenceTypes: // syntax and semantic check 600case MessageID.IDS_FeatureIndexOperator: // semantic check 601case MessageID.IDS_FeatureRangeOperator: // semantic check 602case MessageID.IDS_FeatureAsyncStreams: // semantic check 603case MessageID.IDS_FeatureRecursivePatterns: // semantic check 604case MessageID.IDS_FeatureUsingDeclarations: // semantic check 605case MessageID.IDS_FeatureDisposalPattern: //semantic check 606case MessageID.IDS_FeatureStaticLocalFunctions: // semantic check 607case MessageID.IDS_FeatureNameShadowingInNestedFunctions: 608case MessageID.IDS_FeatureUnmanagedConstructedTypes: // semantic check 609case MessageID.IDS_FeatureObsoleteOnPropertyAccessor: 610case MessageID.IDS_FeatureReadOnlyMembers: 611case MessageID.IDS_DefaultInterfaceImplementation: // semantic check 612case MessageID.IDS_OverrideWithConstraints: // semantic check 613case MessageID.IDS_FeatureNestedStackalloc: // semantic check 614case MessageID.IDS_FeatureNotNullGenericTypeConstraint:// semantic check 615case MessageID.IDS_FeatureSwitchExpression: 616case MessageID.IDS_FeatureAsyncUsing: 617case MessageID.IDS_FeatureNullPointerConstantPattern: //semantic check 621case MessageID.IDS_FeatureAttributesOnBackingFields: // semantic check 622case MessageID.IDS_FeatureImprovedOverloadCandidates: // semantic check 623case MessageID.IDS_FeatureTupleEquality: // semantic check 624case MessageID.IDS_FeatureRefReassignment: // semantic check 625case MessageID.IDS_FeatureRefFor: 626case MessageID.IDS_FeatureRefForEach: // semantic check 627case MessageID.IDS_FeatureEnumGenericTypeConstraint: // semantic check 628case MessageID.IDS_FeatureDelegateGenericTypeConstraint: // semantic check 629case MessageID.IDS_FeatureUnmanagedGenericTypeConstraint: // semantic check 630case MessageID.IDS_FeatureStackAllocInitializer: // semantic check 631case MessageID.IDS_FeatureExpressionVariablesInQueriesAndInitializers: // semantic check 632case MessageID.IDS_FeatureExtensibleFixedStatement: // semantic check 633case MessageID.IDS_FeatureIndexingMovableFixedBuffers: //semantic check 637case MessageID.IDS_FeatureNonTrailingNamedArguments: // semantic check 638case MessageID.IDS_FeatureLeadingDigitSeparator: 639case MessageID.IDS_FeaturePrivateProtected: 640case MessageID.IDS_FeatureReadOnlyReferences: // semantic check 641case MessageID.IDS_FeatureRefStructs: // semantic check 642case MessageID.IDS_FeatureReadOnlyStructs: // semantic check 643case MessageID.IDS_FeatureRefExtensionMethods: 644case MessageID.IDS_FeatureRefConditional: 648case MessageID.IDS_FeatureAsyncMain: 649case MessageID.IDS_FeatureDefaultLiteral: // semantic check 650case MessageID.IDS_FeatureInferredTupleNames: 651case MessageID.IDS_FeatureGenericPatternMatching: 655case MessageID.IDS_FeatureBinaryLiteral: 656case MessageID.IDS_FeatureDigitSeparator: 657case MessageID.IDS_FeatureLocalFunctions: // semantic check 658case MessageID.IDS_FeatureRefLocalsReturns: 659case MessageID.IDS_FeaturePatternMatching: // semantic check 660case MessageID.IDS_FeatureThrowExpression: // semantic check 661case MessageID.IDS_FeatureTuples: 662case MessageID.IDS_FeatureOutVar: // semantic check 663case MessageID.IDS_FeatureExpressionBodiedAccessor: 664case MessageID.IDS_FeatureExpressionBodiedDeOrConstructor: 665case MessageID.IDS_FeatureDiscards: 669case MessageID.IDS_FeatureExceptionFilter: // semantic check 670case MessageID.IDS_FeatureAutoPropertyInitializer: // semantic check 671case MessageID.IDS_FeatureNullPropagatingOperator: // semantic check 672case MessageID.IDS_FeatureExpressionBodiedMethod: 673case MessageID.IDS_FeatureExpressionBodiedProperty: // semantic check 674case MessageID.IDS_FeatureExpressionBodiedIndexer: // semantic check 675case MessageID.IDS_FeatureNameof: 676case MessageID.IDS_FeatureDictionaryInitializer: // semantic check 677case MessageID.IDS_FeatureUsingStatic: // semantic check 678case MessageID.IDS_FeatureInterpolatedStrings: // semantic check 679case MessageID.IDS_AwaitInCatchAndFinally: 680case MessageID.IDS_FeatureReadonlyAutoImplementedProperties: 684case MessageID.IDS_FeatureAsync: // semantic check 688case MessageID.IDS_FeatureDynamic: // Checked in the binder. 689case MessageID.IDS_FeatureTypeVariance: // semantic check 690case MessageID.IDS_FeatureNamedArgument: // semantic check 691case MessageID.IDS_FeatureOptionalParameter: // semantic check 695case MessageID.IDS_FeatureImplicitArray: // semantic check 696case MessageID.IDS_FeatureAnonymousTypes: // semantic check 697case MessageID.IDS_FeatureObjectInitializer: 698case MessageID.IDS_FeatureCollectionInitializer: 699case MessageID.IDS_FeatureLambda: // semantic check 700case MessageID.IDS_FeatureQueryExpression: // semantic check 701case MessageID.IDS_FeatureExtensionMethod: 702case MessageID.IDS_FeaturePartialMethod: // semantic check 703case MessageID.IDS_FeatureImplicitLocal: // Checked in the binder. 704case MessageID.IDS_FeatureAutoImplementedProperties: 708case MessageID.IDS_FeatureGenerics: // Also affects crefs. 709case MessageID.IDS_FeatureAnonDelegates: // semantic check 710case MessageID.IDS_FeatureGlobalNamespace: // Also affects crefs. 711case MessageID.IDS_FeatureFixedBuffer: // semantic check 712case MessageID.IDS_FeatureStaticClasses: // semantic check 713case MessageID.IDS_FeaturePartialTypes: // semantic check 714case MessageID.IDS_FeaturePropertyAccessorMods: 715case MessageID.IDS_FeatureExternAlias: // semantic check 716case MessageID.IDS_FeatureIterators: // semantic check 717case MessageID.IDS_FeatureDefault: // semantic check 718case MessageID.IDS_FeatureNullable: 719case MessageID.IDS_FeaturePragma: // Checked in the directive parser. 720case MessageID.IDS_FeatureSwitchOnBool: // Checked in the binder. 724case 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)) 1245if (compilation.IsFeatureEnabled(MessageID.IDS_FeatureAutoDefaultStructs)) 1254new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureAutoDefaultStructs.RequiredVersion())); 1297else if (compilation.IsFeatureEnabled(MessageID.IDS_FeatureAutoDefaultStructs)) 1310new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureAutoDefaultStructs.RequiredVersion()));
FlowAnalysis\NullableWalker.cs (3)
934|| compilation.IsFeatureEnabled(MessageID.IDS_FeatureAutoDefaultStructs))) 1739return compilation.LanguageVersion >= MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion(); 2487var 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)
333!_compilation.IsFeatureEnabled(MessageID.IDS_FeatureExpressionOptionalAndNamedArguments)) 338!_compilation.IsFeatureEnabled(MessageID.IDS_FeatureExpressionOptionalAndNamedArguments)) 345Debug.Assert(_compilation.IsFeatureEnabled(MessageID.IDS_FeatureExpressionOptionalAndNamedArguments));
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (1)
580if (_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 (12)
1440if ((!IsFeatureEnabled(MessageID.IDS_FeatureFileTypes) || forTopLevelStatements) && !ShouldContextualKeywordBeTreatedAsModifier(parsingStatementNotDeclaration: false)) 1463if ((!IsFeatureEnabled(MessageID.IDS_FeatureRequiredMembers) || forTopLevelStatements) && !ShouldContextualKeywordBeTreatedAsModifier(parsingStatementNotDeclaration: false)) 1494return IsFeatureEnabled(MessageID.IDS_FeatureRecords); 1637return IsFeatureEnabled(MessageID.IDS_FeatureRecords); 1659return IsFeatureEnabled(MessageID.IDS_FeaturePartialEventsAndConstructors); 2427return IsFeatureEnabled(MessageID.IDS_FeatureRecords); 3323(IsFeatureEnabled(MessageID.IDS_FeatureExtensions) || this.PeekToken(1).Kind == SyntaxKind.LessThanToken); 4682IsFeatureEnabled(MessageID.IDS_FeatureExpressionBodiedAccessor) 6066IsFeatureEnabled(MessageID.IDS_FeatureFieldKeyword); 6515open = CheckFeatureAvailability(open, MessageID.IDS_FeatureGenerics); 9027IsFeatureEnabled(MessageID.IDS_FeatureExpressionBodiedAccessor) 10546if (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; 77public MessageID MessageID { get { return _messageID; } }
Symbols\Source\LocalFunctionSymbol.cs (1)
420var diagnosticInfo = MessageID.IDS_FeatureLocalFunctionAttributes.GetFeatureAvailabilityDiagnosticInfo((CSharpParseOptions)syntaxReferenceOpt.SyntaxTree.Options);
Symbols\Source\ModifierUtils.cs (15)
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.Async, MessageID.IDS_FeatureAsync); 116bool checkFeature(DeclarationModifiers modifier, MessageID featureID) 124if (MessageID.IDS_FeatureRefFields.GetFeatureAvailabilityDiagnosticInfo((CSharpParseOptions)syntax.SyntaxTree.Options) is { } diagnosticInfo) 169requiredVersion = MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.RequiredVersion(); 182Binder.CheckFeatureAvailability(errorLocation.SourceTree, MessageID.IDS_DefaultInterfaceImplementation, diagnostics, errorLocation); 187requiredVersion = MessageID.IDS_DefaultInterfaceImplementation.RequiredVersion(); 220LanguageVersion requiredVersion = MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.RequiredVersion(); 234LanguageVersion requiredVersion = MessageID.IDS_FeaturePartialEventsAndConstructors.RequiredVersion(); 450var messageId = isForTypeDeclaration ? MessageID.IDS_FeaturePartialTypes : MessageID.IDS_FeaturePartialMethod;
Symbols\Source\ParameterHelpers.cs (8)
228bool allowShadowingNames = withTypeParametersBinder.Compilation.IsFeatureEnabled(MessageID.IDS_FeatureNameShadowingInNestedFunctions) && 617Binder.CheckFeatureAvailability(modifier, MessageID.IDS_FeatureExtensionMethod, diagnostics); 621Binder.CheckFeatureAvailability(modifier, MessageID.IDS_FeatureRefExtensionMethods, diagnostics); 650Binder.CheckFeatureAvailability(modifier, MessageID.IDS_FeatureRefExtensionMethods, diagnostics); 738MessageID.IDS_FeatureLambdaParamsArray.CheckFeatureAvailability(diagnostics, modifier); 748Binder.CheckFeatureAvailability(modifier, MessageID.IDS_FeatureReadOnlyReferences, diagnostics); 752Binder.CheckFeatureAvailability(modifier, MessageID.IDS_FeatureRefExtensionMethods, diagnostics); 815Binder.CheckFeatureAvailability(modifier, MessageID.IDS_FeatureRefReadonlyParameters, diagnostics);
Symbols\Source\SourceComplexParameterSymbol.cs (2)
384MessageID.IDS_FeatureOptionalParameter.CheckFeatureAvailability(diagnostics, defaultSyntax.EqualsToken); 1723MessageID.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 (17)
508if (reportIfContextual(SyntaxKind.RecordKeyword, MessageID.IDS_FeatureRecords, ErrorCode.WRN_RecordNamedDisallowed) 509|| reportIfContextual(SyntaxKind.RequiredKeyword, MessageID.IDS_FeatureRequiredMembers, ErrorCode.ERR_RequiredNameDisallowed) 510|| reportIfContextual(SyntaxKind.FileKeyword, MessageID.IDS_FeatureFileTypes, ErrorCode.ERR_FileTypeNameDisallowed) 511|| reportIfContextual(SyntaxKind.ScopedKeyword, MessageID.IDS_FeatureRefFields, ErrorCode.ERR_ScopedTypeNameDisallowed) 512|| reportIfContextual(SyntaxKind.ExtensionKeyword, MessageID.IDS_FeatureExtensions, ErrorCode.ERR_ExtensionTypeNameDisallowed)) 521bool reportIfContextual(SyntaxKind contextualKind, MessageID featureId, ErrorCode error) 1386Binder.CheckFeatureAvailability(t.DeclaringSyntaxReferences[0].GetSyntax(), MessageID.IDS_DefaultInterfaceImplementation, diagnostics, t.GetFirstLocation()); 1855MessageID.IDS_FeatureExtensions.CheckFeatureAvailability(diagnostics, compilation, location); 2243var methodKind = method1.MethodKind == MethodKind.Constructor ? MessageID.IDS_SK_CONSTRUCTOR : MessageID.IDS_SK_METHOD; 4701MessageID.IDS_FeatureParameterlessStructConstructors.CheckFeatureAvailability(diagnostics, m.DeclaringCompilation, location); 4730MessageID.IDS_FeatureStructFieldInitializers.CheckFeatureAvailability(diagnostics, symbol.DeclaringCompilation, symbol.GetFirstLocation()); 5057if (baseToStringMethod.ContainingModule != this.ContainingModule && !this.DeclaringCompilation.IsFeatureEnabled(MessageID.IDS_FeatureSealedToStringInRecord)) 5060var requiredVersion = MessageID.IDS_FeatureSealedToStringInRecord.RequiredVersion(); 5083MessageID.IDS_FeatureSealedToStringInRecord.CheckFeatureAvailability( 5147Binder.CheckFeatureAvailability(syntax, MessageID.IDS_FeaturePositionalFieldsInRecords, diagnostics);
Symbols\Source\SourceMemberContainerSymbol_ImplementationChecks.cs (4)
1024else if (MessageID.IDS_FeatureCovariantReturnsForOverrides.GetFeatureAvailabilityDiagnosticInfo(this.DeclaringCompilation) is { } diagnosticInfo) 1096var diagnosticInfo = MessageID.IDS_FeatureCovariantReturnsForOverrides.GetFeatureAvailabilityDiagnosticInfo(this.DeclaringCompilation); 1221DeclaringCompilation.LanguageVersion >= MessageID.IDS_FeatureCovariantReturnsForOverrides.RequiredVersion()) 1560compilation.IsFeatureEnabled(MessageID.IDS_FeatureNullableReferenceTypes);
Symbols\Source\SourceMemberFieldSymbol.cs (3)
210MessageID.IDS_FeatureFixedBuffer.CheckFeatureAvailability(diagnostics, modifier); 374Binder.CheckFeatureAvailability(declarator, MessageID.IDS_DefaultInterfaceImplementation, diagnostics, ErrorLocation); 504MessageID.IDS_FeatureRefFields.CheckFeatureAvailability(diagnostics, compilation, typeSyntax.SkipScoped(out _).Location);
Symbols\Source\SourceMemberMethodSymbol.cs (1)
1057Binder.CheckFeatureAvailability(declarationSyntax, MessageID.IDS_DefaultInterfaceImplementation, diagnostics, location);
Symbols\Source\SourceMethodSymbolWithAttributes.cs (9)
598MessageID.IDS_FeatureMemberNotNull.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 603MessageID.IDS_FeatureMemberNotNull.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 608MessageID.IDS_FeatureModuleInitializers.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 628MessageID.IDS_FeatureRefStructInterfaces.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 642MessageID.IDS_FeatureOverloadResolutionPriority.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 714MessageID.IDS_FeatureObsoleteOnPropertyAccessor.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1433diagnostics.Add(ErrorCode.ERR_CannotUseManagedTypeInUnmanagedCallersOnly, syntax.Location, type, (isParam ? MessageID.IDS_Parameter : MessageID.IDS_Return).Localize()); 1560MessageID.IDS_AsyncMethodBuilderOverride.CheckFeatureAvailability(diagnostics, this.DeclaringCompilation, errorLocation);
Symbols\Source\SourceModuleSymbol.cs (1)
710bool value = compilation.IsFeatureEnabled(MessageID.IDS_FeatureRefFields) || _assemblySymbol.RuntimeSupportsByRefFields;
Symbols\Source\SourceNamedTypeSymbol.cs (2)
182MessageID.IDS_FeatureGenerics.CheckFeatureAvailability(diagnostics, tpl.LessThanToken); 198MessageID.IDS_FeatureTypeVariance.CheckFeatureAvailability(diagnostics, tp.VarianceKeyword);
Symbols\Source\SourceNamedTypeSymbol_Bases.cs (2)
109MessageID.IDS_FeatureGenericAttributes.CheckFeatureAvailability(diagnostics, this.DeclaringCompilation, baseLocation); 580Binder.CheckFeatureAvailability(typeSyntax, MessageID.IDS_FeatureRefStructInterfaces, diagnostics);
Symbols\Source\SourceNamespaceSymbol.AliasesAndUsings.cs (3)
745MessageID.IDS_FeatureUsingTypeAlias.CheckFeatureAvailability(diagnostics, usingDirective, unsafeKeywordLocation); 757if (!compilation.IsFeatureEnabled(MessageID.IDS_FeatureUsingTypeAlias)) 835MessageID.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 (3)
202Binder.CheckFeatureAvailability(syntax, MessageID.IDS_FeatureInitOnlySetters, diagnostics, location); 220MessageID.IDS_FeaturePropertyAccessorMods.CheckFeatureAvailability(diagnostics, modifiers[0]); 466if (!options.IsFeatureEnabled(MessageID.IDS_FeatureReadOnlyMembers))
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)) 1594MessageID.IDS_FeatureMemberNotNull.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1599MessageID.IDS_FeatureMemberNotNull.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1615MessageID.IDS_FeatureRefStructInterfaces.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1625MessageID.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]); 702diagnostics.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)
178MessageID.IDS_FeaturePrimaryConstructors.CheckFeatureAvailability(diagnostics, attributeDeclarationSyntax, attributeDeclarationSyntax.Target.Identifier.GetLocation());
Symbols\Synthesized\SynthesizedBackingFieldSymbol.cs (1)
297new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureAttributesOnBackingFields.RequiredVersion())),
Symbols\Tuples\TupleFieldSymbol.cs (1)
284new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureInferredTupleNames.RequiredVersion())));
Symbols\TypeSymbol.cs (7)
1021LanguageVersion requiredVersion = MessageID.IDS_FeatureImplicitImplementationOfNonPublicMembers.RequiredVersion(); 1643var feature = isStatic ? MessageID.IDS_FeatureStaticAbstractMembersInInterfaces : MessageID.IDS_DefaultInterfaceImplementation; 1746LanguageVersion requiredVersion = MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.RequiredVersion(); 1753MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.Localize(), 1975MessageID.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);
Microsoft.CodeAnalysis.CSharp.IOperation.UnitTests (1)
IOperation\IOperationTests_IThrowOperation.cs (1)
2276var compilation = CreateCompilation(source, parseOptions: TestOptions.Regular.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion()));
Microsoft.CodeAnalysis.CSharp.Scripting.UnitTests (1)
InteractiveSessionTests.cs (1)
1161var options = ScriptOptions.WithLanguageVersion(MessageID.IDS_FeatureAndPattern.RequiredVersion());
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (19)
Semantics\BetterCandidates.cs (1)
32Debug.Assert(TestOptions.Regular.LanguageVersion >= MessageID.IDS_FeatureImprovedOverloadCandidates.RequiredVersion());
Semantics\ConditionalOperatorTests.cs (4)
74TestConditional("true ? T : U", null, parseOptions: TestOptions.Regular8.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion()), 79TestConditional("false ? T : 1", null, parseOptions: TestOptions.Regular8.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion()), 197TestConditional("1 ? null : null", null, parseOptions: TestOptions.Regular.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion()), 1247TestConditionalCore(conditionalExpression, expectedType, TestOptions.Regular8.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion()), expectedDiagnostics);
Semantics\TargetTypedConditionalOperatorTests.cs (14)
181foreach (var langVersion in new[] { LanguageVersion.CSharp8, MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion() }) 206foreach (var langVersion in new[] { LanguageVersion.CSharp8, MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion() }) 228foreach (var langVersion in new[] { LanguageVersion.CSharp8, MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion() }) 264foreach (var langVersion in new[] { LanguageVersion.CSharp8, MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion() }) 331parseOptions = parseOptions.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion()); 416comp = CreateCompilation(source, parseOptions: TestOptions.Regular.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion()), options: TestOptions.DebugExe) 435CreateCompilation(source, parseOptions: TestOptions.Regular.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion()), options: TestOptions.DebugDll.WithAllowUnsafe(true)) 454CreateCompilation(source, parseOptions: TestOptions.Regular.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion()), options: TestOptions.DebugDll) 492CompileAndVerify(source, parseOptions: TestOptions.Regular.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion()), expectedOutput: expectedOutput); 527CreateCompilation(source, parseOptions: TestOptions.Regular.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion())).VerifyDiagnostics(expectedDiagnostics); 558CompileAndVerify(source, parseOptions: TestOptions.Regular.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion()), expectedOutput: expectedOutput); 589CompileAndVerify(source, parseOptions: TestOptions.Regular.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion()), expectedOutput: expectedOutput); 615CreateCompilation(source, parseOptions: TestOptions.Regular.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion())).VerifyDiagnostics(); 648CreateCompilation(source, parseOptions: TestOptions.Regular.WithLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion())).VerifyDiagnostics(
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (1)
Parsing\ParsingTests.cs (1)
85internal CompilationUnitSyntax ParseFileExperimental(string text, MessageID feature) =>
Microsoft.CodeAnalysis.CSharp.Test.Utilities (11)
CSharpTestBase.cs (4)
1404MessageID feature, 1709MessageID feature, 1828MessageID? experimentalFeature, 1950return options.IsFeatureEnabled(MessageID.IDS_FeatureNullableReferenceTypes);
DiagnosticExtensions.cs (1)
26public static string ToLocalizedString(this MessageID id)
SemanticModelTestBase.cs (1)
120internal CompilationUtils.SemanticInfoSummary GetSemanticInfoForTestExperimental<TNode>(string testSrc, MessageID feature, CSharpParseOptions parseOptions = null) where TNode : SyntaxNode
TestOptions.cs (5)
50public static readonly CSharpParseOptions WithoutImprovedOverloadCandidates = Regular.WithLanguageVersion(MessageID.IDS_FeatureImprovedOverloadCandidates.RequiredVersion() - 1); 51public static readonly CSharpParseOptions WithCovariantReturns = Regular.WithLanguageVersion(MessageID.IDS_FeatureCovariantReturnsForOverrides.RequiredVersion()); 55public static readonly CSharpParseOptions RegularWithFileScopedNamespaces = Regular.WithLanguageVersion(MessageID.IDS_FeatureFileScopedNamespace.RequiredVersion()); 148internal static CSharpParseOptions WithExperimental(this CSharpParseOptions options, params MessageID[] features) 156foreach (var feature in features)