794 references to MessageID
Microsoft.CodeAnalysis.CSharp (761)
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)
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)) 2061CheckFeatureAvailability(node, MessageID.IDS_FeatureInitOnlySetters, diagnostics); 3466MessageID cause; 3469cause = MessageID.IDS_FOREACHLOCAL; 3473cause = MessageID.IDS_USINGLOCAL; 3477cause = 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)
485CheckFeatureAvailability(syntax, MessageID.IDS_FeatureStaticAbstractMembersInInterfaces, diagnostics); 497CheckFeatureAvailability(syntax, MessageID.IDS_FeatureCheckedUserDefinedOperators, diagnostics); 503CheckFeatureAvailability(syntax, MessageID.IDS_FeatureUnions, diagnostics); 512CheckFeatureAvailability(syntax, MessageID.IDS_FeatureInlineArrays, diagnostics); 557CheckFeatureAvailability(syntax, MessageID.IDS_FeatureFirstClassSpan, diagnostics); 2448if (targetTyped && !destination.IsErrorType() && !Compilation.IsFeatureEnabled(MessageID.IDS_FeatureTargetTypedConditional)) 2456new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureTargetTypedConditional.RequiredVersion())); 2766Debug.Assert(syntax.IsFeatureEnabled(MessageID.IDS_FeatureInferredDelegateType)); 2986Error(diagnostics, ErrorCode.WRN_OptionalParamValueMismatch, lambdaParameter.GetFirstLocation(), p + 1, lambdaParamDefault, delegateParamDefault ?? ((object)MessageID.IDS_Missing.Localize())); 3039CheckFeatureAvailability(syntax, MessageID.IDS_FeatureRefStructs, diagnostics); 3352else 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); 6032MessageID.IDS_FeatureDictionaryInitializer.CheckFeatureAvailability(diagnostics, implicitIndexing.ArgumentList.OpenBracketToken); 6129MessageID.IDS_FeatureImplicitIndexerInitializer.CheckFeatureAvailability(diagnostics, implicitIndexer.Syntax); 6402MessageID.IDS_FeatureCollectionInitializer.CheckFeatureAvailability(diagnostics, initializerSyntax.OpenBraceToken); 6462CheckFeatureAvailability(node, MessageID.IDS_FeatureRefStructInterfaces, diagnostics); 7566MessageID.IDS_FeatureRawStringLiterals.CheckFeatureAvailability(diagnostics, node); 7579CheckFeatureAvailability(node, MessageID.IDS_FeatureRawStringLiterals, diagnostics); 7582CheckFeatureAvailability(node, MessageID.IDS_FeatureUtf8StringLiterals, diagnostics); 7913var msgId = ((UnboundLambda)boundLeft).MessageID; 8114CheckFeatureAvailability(boundLeft.Syntax, MessageID.IDS_FeatureStaticAbstractMembersInInterfaces, diagnostics); 8161Compilation.LanguageVersion < MessageID.IDS_FeatureNullableReferenceTypes.RequiredVersion()) 8191Error(diagnostics, ErrorCode.ERR_BadSKunknown, methodGroup.NameSyntax, method, MessageID.IDS_SK_METHOD.Localize()); 8251MessageID.IDS_FeatureExtensions.CheckFeatureAvailability(diagnostics, syntax); 9152CheckFeatureAvailability(node, MessageID.IDS_FeatureIndexingMovableFixedBuffers, diagnostics); 9198CheckFeatureAvailability(node, MessageID.IDS_FeatureRefFields, diagnostics); 9442else if (CheckFeatureAvailability(node, MessageID.IDS_FeatureInstanceMemberInNameof, diagnostics)) 9820CheckFeatureAvailability(node, MessageID.IDS_FeatureInlineArrays, diagnostics); 10580_ = MessageID.IDS_FeatureIndexOperator.CheckFeatureAvailability(diagnostics, syntax); 11620MessageID.IDS_FeatureNullPropagatingOperator.CheckFeatureAvailability(diagnostics, node.OperatorToken); 11628MessageID.IDS_FeatureNullConditionalAssignment.CheckFeatureAvailability(diagnostics, assignment.OperatorToken); 11809var 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); 3438!node.IsFeatureEnabled(MessageID.IDS_FeatureUserDefinedCompoundAssignmentOperators)) 3578CheckFeatureAvailability(node, MessageID.IDS_FeatureExtensions, diagnostics); 3983result = CheckFeatureAvailability(node, MessageID.IDS_FeatureStaticAbstractMembersInInterfaces, diagnostics); 3994result = CheckFeatureAvailability(node, MessageID.IDS_FeatureStaticAbstractMembersInInterfaces, diagnostics); 4002result &= CheckFeatureAvailability(node, MessageID.IDS_FeatureUnsignedRightShift, diagnostics); 4013result &= CheckFeatureAvailability(node, MessageID.IDS_FeatureExtensions, diagnostics); 4017result &= CheckFeatureAvailability(node, MessageID.IDS_FeatureCheckedUserDefinedOperators, diagnostics); 4021result &= CheckFeatureAvailability(node, MessageID.IDS_FeatureUnsignedRightShift, diagnostics); 4032MessageID.IDS_FeatureNullableReferenceTypes.CheckFeatureAvailability(diagnostics, node.OperatorToken); 4834((CSharpParseOptions)node.SyntaxTree.Options).IsFeatureEnabled(MessageID.IDS_FeaturePatternMatching)) 4927if (wasUnderscore && ((CSharpParseOptions)node.SyntaxTree.Options).IsFeatureEnabled(MessageID.IDS_FeatureRecursivePatterns)) 5684CheckFeatureAvailability(node, MessageID.IDS_FeatureUnconstrainedTypeParameterInNullCoalescingOperator, diagnostics); 5822MessageID.IDS_FeatureCoalesceAssignmentExpression.CheckFeatureAvailability(diagnostics, node.OperatorToken); 5941CheckFeatureAvailability(node, MessageID.IDS_FeatureRefConditional, diagnostics); 6094CheckFeatureAvailability(syntax, MessageID.IDS_FeatureNativeInt, diagnostics); 6110CheckFeatureAvailability(syntax, MessageID.IDS_FeatureNativeInt, diagnostics);
Binder\Binder_Patterns.cs (23)
23MessageID.IDS_FeatureUnions.CheckFeatureAvailability(diagnostics, node); 205MessageID.IDS_FeaturePatternMatching.CheckFeatureAvailability(diagnostics, node.IsKeyword); 345MessageID.IDS_FeatureRecursivePatterns.CheckFeatureAvailability(diagnostics, node.SwitchKeyword); 400MessageID.IDS_FeatureParenthesizedPattern.CheckFeatureAvailability(diagnostics, node.OpenParenToken); 514CheckFeatureAvailability(node, MessageID.IDS_FeatureListPattern, diagnostics); 624MessageID.IDS_FeatureRecursivePatterns.CheckFeatureAvailability(diagnostics, node); 690CheckFeatureAvailability(innerExpression, MessageID.IDS_FeatureTypePattern, diagnostics); 830CheckFeatureAvailability(patternExpression, MessageID.IDS_FeatureNullPointerConstantPattern, diagnostics); 888var requiredVersion = MessageID.IDS_FeatureRecursivePatterns.RequiredVersion(); 912if (MessageID.IDS_FeatureSpanCharConstantPattern.CheckFeatureAvailability(diagnostics, Compilation, node.Location)) 1105LanguageVersion requiredVersion = MessageID.IDS_FeatureGenericPatternMatching.RequiredVersion(); 1253CheckFeatureAvailability(designation, MessageID.IDS_FeatureExpressionVariablesInQueriesAndInitializers, diagnostics); 1335MessageID.IDS_FeatureRecursivePatterns.CheckFeatureAvailability(diagnostics, node); 1470MessageID.IDS_FeatureExtendedPropertyPatterns.CheckFeatureAvailability(diagnostics, subPattern.ExpressionColon.ColonToken); 1617if (Compilation.LanguageVersion < MessageID.IDS_FeatureRecursivePatterns.RequiredVersion()) 1701|| (inputType.IsPointerType() && Compilation.LanguageVersion < MessageID.IDS_FeatureRecursivePatterns.RequiredVersion())) 1771MessageID.IDS_FeatureRecursivePatterns.CheckFeatureAvailability(diagnostics, node); 1892MessageID.IDS_FeatureExtendedPropertyPatterns.CheckFeatureAvailability(diagnostics, p.ExpressionColon.ColonToken); 2046MessageID.IDS_FeatureTypePattern.CheckFeatureAvailability(diagnostics, node); 2064MessageID.IDS_FeatureRelationalPattern.CheckFeatureAvailability(diagnostics, node.OperatorToken); 2174MessageID.IDS_FeatureNotPattern.CheckFeatureAvailability(diagnostics, node.OperatorToken); 2250MessageID.IDS_FeatureOrPattern.CheckFeatureAvailability(diagnostics, node.OperatorToken); 2270MessageID.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 (3)
255return MessageID.IDS_FeatureUnsafeEvolution.GetFeatureAvailabilityDiagnosticInfo(this.Compilation); 267return MessageID.IDS_FeatureUnsafeEvolution.GetFeatureAvailabilityDiagnosticInfo(this.Compilation) 276else 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); 1242CheckFeatureAvailability(expr.Syntax, MessageID.IDS_FeatureDisposalPattern, diagnostics); 1286CheckFeatureAvailability(syntax, MessageID.IDS_FeatureRefStructInterfaces, diagnostics); 1465MessageID patternName = isAsync ? MessageID.IDS_FeatureAsyncStreams : MessageID.IDS_Collection; 1502diagnostics.Add(ErrorCode.WRN_PatternIsAmbiguous, collectionSyntax.Location, patternType, MessageID.IDS_Collection.Localize(), 1600diagnostics.Add(ErrorCode.WRN_PatternIsAmbiguous, collectionSyntax.Location, collectionExpr.Type, MessageID.IDS_Collection.Localize(), 1759diagnostics.Add(ErrorCode.WRN_PatternBadSignature, collectionSyntax.Location, enumeratorType, MessageID.IDS_Collection.Localize(), patternMemberCandidate); 1823CheckFeatureAvailability(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)
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; 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; } 1559public 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() && 1959var 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()); 751MessageID.IDS_FeatureRecordStructs.CheckFeatureAvailability(diagnostics, record, record.ClassOrStructKeyword.GetLocation()); 764MessageID.IDS_FeaturePrimaryConstructors.CheckFeatureAvailability(diagnostics, node.ParameterList); 769MessageID.IDS_FeaturePrimaryConstructors.CheckFeatureAvailability(diagnostics, node, node.SemicolonToken.GetLocation()); 774MessageID.IDS_FeatureUnions.CheckFeatureAvailability(diagnostics, node, node.Keyword.GetLocation()); // https://github.com/dotnet/roslyn/issues/82636: Add test coverage, manual tree creation is needed 784MessageID.IDS_FeatureStaticClasses.CheckFeatureAvailability(diagnostics, node, modifier.GetLocation()); 788MessageID.IDS_FeatureReadOnlyStructs.CheckFeatureAvailability(diagnostics, node, modifier.GetLocation()); 792MessageID.IDS_FeatureRefStructs.CheckFeatureAvailability(diagnostics, node, modifier.GetLocation()); 880MessageID.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 (201)
319private readonly MessageID _id; 321internal LocalizableErrorArgument(MessageID id) 341public static LocalizableErrorArgument Localize(this MessageID id) 352internal static string? RequiredFeature(this MessageID feature) 363this MessageID feature, 377this MessageID feature, 391this MessageID feature, 405this MessageID feature, 419this MessageID feature, 434this MessageID feature, 449this MessageID feature, 462internal static CSDiagnosticInfo? GetFeatureAvailabilityDiagnosticInfo(this MessageID feature, CSharpParseOptions options) 465internal static CSDiagnosticInfo? GetFeatureAvailabilityDiagnosticInfo(this MessageID feature, CSharpCompilation compilation) 468private static CSDiagnosticInfo GetDisabledFeatureDiagnosticInfo(MessageID feature, LanguageVersion availableVersion) 482internal static LanguageVersion RequiredVersion(this MessageID feature) 493case MessageID.IDS_FeatureCollectionExpressionArguments: 494case MessageID.IDS_FeatureUnsafeEvolution: // https://github.com/dotnet/roslyn/issues/82546: keep this in preview until C# 16 495case MessageID.IDS_FeatureUnions: 499case MessageID.IDS_FeatureFieldKeyword: 500case MessageID.IDS_FeatureFirstClassSpan: 501case MessageID.IDS_FeatureUnboundGenericTypesInNameof: 502case MessageID.IDS_FeatureSimpleLambdaParameterModifiers: 503case MessageID.IDS_FeaturePartialEventsAndConstructors: 504case MessageID.IDS_FeatureExtensions: 505case MessageID.IDS_FeatureNullConditionalAssignment: 506case MessageID.IDS_FeatureExpressionOptionalAndNamedArguments: 507case MessageID.IDS_FeatureUserDefinedCompoundAssignmentOperators: 511case MessageID.IDS_FeatureStringEscapeCharacter: // lexer check 512case MessageID.IDS_FeatureImplicitIndexerInitializer: 513case MessageID.IDS_FeatureLockObject: 514case MessageID.IDS_FeatureParamsCollections: 515case MessageID.IDS_FeatureRefUnsafeInIteratorAsync: 516case MessageID.IDS_FeatureRefStructInterfaces: 517case MessageID.IDS_FeatureAllowsRefStructConstraint: 518case MessageID.IDS_FeaturePartialProperties: 519case MessageID.IDS_FeatureOverloadResolutionPriority: 523case MessageID.IDS_FeatureLambdaOptionalParameters: // semantic check 524case MessageID.IDS_FeatureLambdaParamsArray: // semantic check 525case MessageID.IDS_FeaturePrimaryConstructors: // declaration table check 526case MessageID.IDS_FeatureUsingTypeAlias: // semantic check 527case MessageID.IDS_FeatureInstanceMemberInNameof: // semantic check 528case MessageID.IDS_FeatureInlineArrays: // semantic check 529case MessageID.IDS_FeatureCollectionExpressions: // semantic check 530case MessageID.IDS_FeatureRefReadonlyParameters: // semantic check 534case MessageID.IDS_FeatureRawStringLiterals: 535case MessageID.IDS_FeatureStaticAbstractMembersInInterfaces: // semantic check 536case MessageID.IDS_FeatureNewLinesInInterpolations: // semantic check 537case MessageID.IDS_FeatureListPattern: // semantic check 538case MessageID.IDS_FeatureRequiredMembers: // semantic check 539case MessageID.IDS_FeatureCacheStaticMethodGroupConversion: // lowering check 540case MessageID.IDS_FeatureSpanCharConstantPattern: 541case MessageID.IDS_FeatureAutoDefaultStructs: // semantic check 542case MessageID.IDS_FeatureCheckedUserDefinedOperators: // semantic check for declarations, parsing check for doc comments 543case MessageID.IDS_FeatureUtf8StringLiterals: // semantic check 544case MessageID.IDS_FeatureUnsignedRightShift: // semantic check for declarations and consumption, parsing check for doc comments 545case MessageID.IDS_FeatureRelaxedShiftOperator: // semantic check 546case MessageID.IDS_FeatureRefFields: // semantic check 547case MessageID.IDS_FeatureFileTypes: // semantic check 548case MessageID.IDS_FeatureGenericAttributes: // semantic check 552case MessageID.IDS_FeatureMixedDeclarationsAndExpressionsInDeconstruction: // semantic check 553case MessageID.IDS_FeatureSealedToStringInRecord: // semantic check 554case MessageID.IDS_FeatureImprovedInterpolatedStrings: // semantic check 555case MessageID.IDS_FeatureRecordStructs: 556case MessageID.IDS_FeatureWithOnStructs: // semantic check 557case MessageID.IDS_FeatureWithOnAnonymousTypes: // semantic check 558case MessageID.IDS_FeaturePositionalFieldsInRecords: // semantic check 559case MessageID.IDS_FeatureGlobalUsing: 560case MessageID.IDS_FeatureInferredDelegateType: // semantic check 561case MessageID.IDS_FeatureLambdaAttributes: // semantic check 562case MessageID.IDS_FeatureExtendedPropertyPatterns: // semantic check 563case MessageID.IDS_FeatureLambdaReturnType: // semantic check 564case MessageID.IDS_AsyncMethodBuilderOverride: // semantic check 565case MessageID.IDS_FeatureConstantInterpolatedStrings: // semantic check 566case MessageID.IDS_FeatureImplicitImplementationOfNonPublicMembers: // semantic check 567case MessageID.IDS_FeatureFileScopedNamespace: // semantic check 568case MessageID.IDS_FeatureParameterlessStructConstructors: // semantic check 569case MessageID.IDS_FeatureStructFieldInitializers: // semantic check 573case MessageID.IDS_FeatureLambdaDiscardParameters: // semantic check 574case MessageID.IDS_FeatureFunctionPointers: // semantic check 575case MessageID.IDS_FeatureLocalFunctionAttributes: // syntax check 576case MessageID.IDS_FeatureExternLocalFunctions: // semantic check 577case MessageID.IDS_FeatureImplicitObjectCreation: // semantic check 578case MessageID.IDS_FeatureMemberNotNull: 579case MessageID.IDS_FeatureAndPattern: // semantic check 580case MessageID.IDS_FeatureNotPattern: // semantic check 581case MessageID.IDS_FeatureOrPattern: // semantic check 582case MessageID.IDS_FeatureParenthesizedPattern: // semantic check 583case MessageID.IDS_FeatureTypePattern: // semantic check 584case MessageID.IDS_FeatureRelationalPattern: // semantic check 585case MessageID.IDS_FeatureExtensionGetEnumerator: // semantic check 586case MessageID.IDS_FeatureExtensionGetAsyncEnumerator: // semantic check 587case MessageID.IDS_FeatureNativeInt: 588case MessageID.IDS_FeatureExtendedPartialMethods: // semantic check 589case MessageID.IDS_TopLevelStatements: 590case MessageID.IDS_FeatureInitOnlySetters: // semantic check 591case MessageID.IDS_FeatureRecords: // semantic check 592case MessageID.IDS_FeatureTargetTypedConditional: // semantic check 593case MessageID.IDS_FeatureCovariantReturnsForOverrides: // semantic check 594case MessageID.IDS_FeatureStaticAnonymousFunction: // semantic check 595case MessageID.IDS_FeatureModuleInitializers: // semantic check on method attribute 596case MessageID.IDS_FeatureDefaultTypeParameterConstraint: // semantic check 597case MessageID.IDS_FeatureVarianceSafetyForStaticInterfaceMembers: // semantic check 601case MessageID.IDS_FeatureAltInterpolatedVerbatimStrings: // semantic check 602case MessageID.IDS_FeatureCoalesceAssignmentExpression: // semantic check 603case MessageID.IDS_FeatureUnconstrainedTypeParameterInNullCoalescingOperator: 604case MessageID.IDS_FeatureNullableReferenceTypes: // syntax and semantic check 605case MessageID.IDS_FeatureIndexOperator: // semantic check 606case MessageID.IDS_FeatureRangeOperator: // semantic check 607case MessageID.IDS_FeatureAsyncStreams: // semantic check 608case MessageID.IDS_FeatureRecursivePatterns: // semantic check 609case MessageID.IDS_FeatureUsingDeclarations: // semantic check 610case MessageID.IDS_FeatureDisposalPattern: //semantic check 611case MessageID.IDS_FeatureStaticLocalFunctions: // semantic check 612case MessageID.IDS_FeatureNameShadowingInNestedFunctions: 613case MessageID.IDS_FeatureUnmanagedConstructedTypes: // semantic check 614case MessageID.IDS_FeatureObsoleteOnPropertyAccessor: 615case MessageID.IDS_FeatureReadOnlyMembers: 616case MessageID.IDS_DefaultInterfaceImplementation: // semantic check 617case MessageID.IDS_OverrideWithConstraints: // semantic check 618case MessageID.IDS_FeatureNestedStackalloc: // semantic check 619case MessageID.IDS_FeatureNotNullGenericTypeConstraint:// semantic check 620case MessageID.IDS_FeatureSwitchExpression: 621case MessageID.IDS_FeatureAsyncUsing: 622case MessageID.IDS_FeatureNullPointerConstantPattern: //semantic check 626case MessageID.IDS_FeatureAttributesOnBackingFields: // semantic check 627case MessageID.IDS_FeatureImprovedOverloadCandidates: // semantic check 628case MessageID.IDS_FeatureTupleEquality: // semantic check 629case MessageID.IDS_FeatureRefReassignment: // semantic check 630case MessageID.IDS_FeatureRefFor: 631case MessageID.IDS_FeatureRefForEach: // semantic check 632case MessageID.IDS_FeatureEnumGenericTypeConstraint: // semantic check 633case MessageID.IDS_FeatureDelegateGenericTypeConstraint: // semantic check 634case MessageID.IDS_FeatureUnmanagedGenericTypeConstraint: // semantic check 635case MessageID.IDS_FeatureStackAllocInitializer: // semantic check 636case MessageID.IDS_FeatureExpressionVariablesInQueriesAndInitializers: // semantic check 637case MessageID.IDS_FeatureExtensibleFixedStatement: // semantic check 638case MessageID.IDS_FeatureIndexingMovableFixedBuffers: //semantic check 642case MessageID.IDS_FeatureNonTrailingNamedArguments: // semantic check 643case MessageID.IDS_FeatureLeadingDigitSeparator: 644case MessageID.IDS_FeaturePrivateProtected: 645case MessageID.IDS_FeatureReadOnlyReferences: // semantic check 646case MessageID.IDS_FeatureRefStructs: // semantic check 647case MessageID.IDS_FeatureReadOnlyStructs: // semantic check 648case MessageID.IDS_FeatureRefExtensionMethods: 649case MessageID.IDS_FeatureRefConditional: 653case MessageID.IDS_FeatureAsyncMain: 654case MessageID.IDS_FeatureDefaultLiteral: // semantic check 655case MessageID.IDS_FeatureInferredTupleNames: 656case MessageID.IDS_FeatureGenericPatternMatching: 660case MessageID.IDS_FeatureBinaryLiteral: 661case MessageID.IDS_FeatureDigitSeparator: 662case MessageID.IDS_FeatureLocalFunctions: // semantic check 663case MessageID.IDS_FeatureRefLocalsReturns: 664case MessageID.IDS_FeaturePatternMatching: // semantic check 665case MessageID.IDS_FeatureThrowExpression: // semantic check 666case MessageID.IDS_FeatureTuples: 667case MessageID.IDS_FeatureOutVar: // semantic check 668case MessageID.IDS_FeatureExpressionBodiedAccessor: 669case MessageID.IDS_FeatureExpressionBodiedDeOrConstructor: 670case MessageID.IDS_FeatureDiscards: 674case MessageID.IDS_FeatureExceptionFilter: // semantic check 675case MessageID.IDS_FeatureAutoPropertyInitializer: // semantic check 676case MessageID.IDS_FeatureNullPropagatingOperator: // semantic check 677case MessageID.IDS_FeatureExpressionBodiedMethod: 678case MessageID.IDS_FeatureExpressionBodiedProperty: // semantic check 679case MessageID.IDS_FeatureExpressionBodiedIndexer: // semantic check 680case MessageID.IDS_FeatureNameof: 681case MessageID.IDS_FeatureDictionaryInitializer: // semantic check 682case MessageID.IDS_FeatureUsingStatic: // semantic check 683case MessageID.IDS_FeatureInterpolatedStrings: // semantic check 684case MessageID.IDS_AwaitInCatchAndFinally: 685case MessageID.IDS_FeatureReadonlyAutoImplementedProperties: 689case MessageID.IDS_FeatureAsync: // semantic check 693case MessageID.IDS_FeatureDynamic: // Checked in the binder. 694case MessageID.IDS_FeatureTypeVariance: // semantic check 695case MessageID.IDS_FeatureNamedArgument: // semantic check 696case MessageID.IDS_FeatureOptionalParameter: // semantic check 700case MessageID.IDS_FeatureImplicitArray: // semantic check 701case MessageID.IDS_FeatureAnonymousTypes: // semantic check 702case MessageID.IDS_FeatureObjectInitializer: 703case MessageID.IDS_FeatureCollectionInitializer: 704case MessageID.IDS_FeatureLambda: // semantic check 705case MessageID.IDS_FeatureQueryExpression: // semantic check 706case MessageID.IDS_FeatureExtensionMethod: 707case MessageID.IDS_FeaturePartialMethod: // semantic check 708case MessageID.IDS_FeatureImplicitLocal: // Checked in the binder. 709case MessageID.IDS_FeatureAutoImplementedProperties: 713case MessageID.IDS_FeatureGenerics: // Also affects crefs. 714case MessageID.IDS_FeatureAnonDelegates: // semantic check 715case MessageID.IDS_FeatureGlobalNamespace: // Also affects crefs. 716case MessageID.IDS_FeatureFixedBuffer: // semantic check 717case MessageID.IDS_FeatureStaticClasses: // semantic check 718case MessageID.IDS_FeaturePartialTypes: // semantic check 719case MessageID.IDS_FeaturePropertyAccessorMods: 720case MessageID.IDS_FeatureExternAlias: // semantic check 721case MessageID.IDS_FeatureIterators: // semantic check 722case MessageID.IDS_FeatureDefault: // semantic check 723case MessageID.IDS_FeatureNullable: 724case MessageID.IDS_FeaturePragma: // Checked in the directive parser. 725case MessageID.IDS_FeatureSwitchOnBool: // Checked in the binder. 729case 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)
935|| compilation.IsFeatureEnabled(MessageID.IDS_FeatureAutoDefaultStructs))) 1740return 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)
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 (15)
1441if ((!IsFeatureEnabled(MessageID.IDS_FeatureFileTypes) || forTopLevelStatements) && !ShouldContextualKeywordBeTreatedAsModifier(parsingStatementNotDeclaration: false)) 1464if ((!IsFeatureEnabled(MessageID.IDS_FeatureRequiredMembers) || forTopLevelStatements) && !ShouldContextualKeywordBeTreatedAsModifier(parsingStatementNotDeclaration: false)) 1497return IsFeatureEnabled(MessageID.IDS_FeatureRecords); 1506return IsFeatureEnabled(MessageID.IDS_FeatureUnions); 1652return IsFeatureEnabled(MessageID.IDS_FeatureRecords); 1661return IsFeatureEnabled(MessageID.IDS_FeatureUnions); 1684return IsFeatureEnabled(MessageID.IDS_FeaturePartialEventsAndConstructors); 2458return IsFeatureEnabled(MessageID.IDS_FeatureRecords); 2467return IsFeatureEnabled(MessageID.IDS_FeatureUnions); 3365(IsFeatureEnabled(MessageID.IDS_FeatureExtensions) || this.PeekToken(1).Kind == SyntaxKind.LessThanToken); 4724IsFeatureEnabled(MessageID.IDS_FeatureExpressionBodiedAccessor) 6109IsFeatureEnabled(MessageID.IDS_FeatureFieldKeyword); 6558open = CheckFeatureAvailability(open, MessageID.IDS_FeatureGenerics); 9070IsFeatureEnabled(MessageID.IDS_FeatureExpressionBodiedAccessor) 10589if (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)
379MessageID.IDS_FeatureUsingTypeAlias.CheckFeatureAvailability(diagnostics, usingDirective.UnsafeKeyword); 383MessageID.IDS_FeatureUsingTypeAlias.CheckFeatureAvailability(diagnostics, usingDirective.NamespaceOrType); 398if (!DeclaringCompilation.IsFeatureEnabled(MessageID.IDS_FeatureUsingTypeAlias)) 422MessageID.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 (2)
134MessageID.IDS_FeatureUnsafeEvolution.CheckFeatureAvailability(addTo, compilation, location); 429var 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\SourceEventSymbol.cs (2)
374if (ContainingModule.UseUpdatedMemorySafetyRules) MessageID.IDS_FeatureUnsafeEvolution.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt!); 891MessageID.IDS_FeatureUnsafeEvolution.CheckFeatureAvailability(diagnostics, compilation, location);
Symbols\Source\SourceMemberContainerSymbol.cs (17)
516if (reportIfContextual(SyntaxKind.RecordKeyword, MessageID.IDS_FeatureRecords, ErrorCode.WRN_RecordNamedDisallowed) 517|| reportIfContextual(SyntaxKind.RequiredKeyword, MessageID.IDS_FeatureRequiredMembers, ErrorCode.ERR_RequiredNameDisallowed) 518|| reportIfContextual(SyntaxKind.FileKeyword, MessageID.IDS_FeatureFileTypes, ErrorCode.ERR_FileTypeNameDisallowed) 519|| reportIfContextual(SyntaxKind.ScopedKeyword, MessageID.IDS_FeatureRefFields, ErrorCode.ERR_ScopedTypeNameDisallowed) 520|| reportIfContextual(SyntaxKind.ExtensionKeyword, MessageID.IDS_FeatureExtensions, ErrorCode.ERR_ExtensionTypeNameDisallowed)) 529bool reportIfContextual(SyntaxKind contextualKind, MessageID featureId, ErrorCode error) 1402Binder.CheckFeatureAvailability(t.DeclaringSyntaxReferences[0].GetSyntax(), MessageID.IDS_DefaultInterfaceImplementation, diagnostics, t.GetFirstLocation()); 1871MessageID.IDS_FeatureExtensions.CheckFeatureAvailability(diagnostics, compilation, location); 2279var methodKind = method1.MethodKind == MethodKind.Constructor ? MessageID.IDS_SK_CONSTRUCTOR : MessageID.IDS_SK_METHOD; 4756MessageID.IDS_FeatureParameterlessStructConstructors.CheckFeatureAvailability(diagnostics, m.DeclaringCompilation, location); 4785MessageID.IDS_FeatureStructFieldInitializers.CheckFeatureAvailability(diagnostics, symbol.DeclaringCompilation, symbol.GetFirstLocation()); 5192if (baseToStringMethod.ContainingModule != this.ContainingModule && !this.DeclaringCompilation.IsFeatureEnabled(MessageID.IDS_FeatureSealedToStringInRecord)) 5195var requiredVersion = MessageID.IDS_FeatureSealedToStringInRecord.RequiredVersion(); 5218MessageID.IDS_FeatureSealedToStringInRecord.CheckFeatureAvailability( 5282Binder.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)
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 (2)
988MessageID.IDS_FeatureUnsafeEvolution.CheckFeatureAvailability(diagnostics, compilation, _location); 1064Binder.CheckFeatureAvailability(declarationSyntax, MessageID.IDS_DefaultInterfaceImplementation, diagnostics, location);
Symbols\Source\SourceMethodSymbolWithAttributes.cs (10)
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); 646MessageID.IDS_FeatureUnsafeEvolution.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 662MessageID.IDS_FeatureOverloadResolutionPriority.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 734MessageID.IDS_FeatureObsoleteOnPropertyAccessor.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1453diagnostics.Add(ErrorCode.ERR_CannotUseManagedTypeInUnmanagedCallersOnly, syntax.Location, type, (isParam ? MessageID.IDS_Parameter : MessageID.IDS_Return).Localize()); 1580MessageID.IDS_AsyncMethodBuilderOverride.CheckFeatureAvailability(diagnostics, this.DeclaringCompilation, errorLocation);
Symbols\Source\SourceModuleSymbol.cs (1)
737bool 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); 594Binder.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 (3)
227Binder.CheckFeatureAvailability(syntax, MessageID.IDS_FeatureInitOnlySetters, diagnostics, location); 245MessageID.IDS_FeaturePropertyAccessorMods.CheckFeatureAvailability(diagnostics, modifiers[0]); 496if (!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 (7)
321if (!property.DeclaringCompilation.IsFeatureEnabled(MessageID.IDS_FeatureFieldKeyword)) 1050MessageID.IDS_FeatureUnsafeEvolution.CheckFeatureAvailability(diagnostics, compilation, location); 1620MessageID.IDS_FeatureMemberNotNull.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1625MessageID.IDS_FeatureMemberNotNull.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1641MessageID.IDS_FeatureRefStructInterfaces.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1651if (ContainingModule.UseUpdatedMemorySafetyRules) MessageID.IDS_FeatureUnsafeEvolution.CheckFeatureAvailability(diagnostics, arguments.AttributeSyntaxOpt); 1656MessageID.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)
178MessageID.IDS_FeaturePrimaryConstructors.CheckFeatureAvailability(diagnostics, attributeDeclarationSyntax, attributeDeclarationSyntax.Target.Identifier.GetLocation());
Symbols\Synthesized\SynthesizedBackingFieldSymbol.cs (1)
300new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureAttributesOnBackingFields.RequiredVersion())),
Symbols\Tuples\TupleFieldSymbol.cs (1)
284new CSharpRequiredLanguageVersion(MessageID.IDS_FeatureInferredTupleNames.RequiredVersion())));
Symbols\TypeSymbol.cs (7)
1023LanguageVersion requiredVersion = MessageID.IDS_FeatureImplicitImplementationOfNonPublicMembers.RequiredVersion(); 1645var feature = isStatic ? MessageID.IDS_FeatureStaticAbstractMembersInInterfaces : MessageID.IDS_DefaultInterfaceImplementation; 1748LanguageVersion requiredVersion = MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.RequiredVersion(); 1755MessageID.IDS_FeatureStaticAbstractMembersInInterfaces.Localize(), 1994MessageID.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)
1448MessageID feature, 1753MessageID feature, 1872MessageID? experimentalFeature, 1994return 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)