Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 0 additions & 32 deletions .openpublishing.redirection.csharp.json
Original file line number Diff line number Diff line change
Expand Up @@ -108,26 +108,6 @@
"source_path_from_root": "/redirections/proposals/csharp-7.3/tuple-equality.md",
"redirect_url": "/dotnet/csharp/language-reference/language-specification/expressions#121211-tuple-equality-operators"
},
{
"source_path_from_root": "/redirections/proposals/csharp-8.0/nullable-reference-types.md",
"redirect_url": "/dotnet/csharp/language-reference/language-specification/types#893-nullable-reference-types"
},
{
"source_path_from_root": "/redirections/proposals/csharp-8.0/nested-stackalloc.md",
"redirect_url": "/dotnet/csharp/language-reference/language-specification/structs#164127-stackalloc"
},
{
"source_path_from_root": "/redirections/proposals/csharp-8.0/readonly-instance-members.md",
"redirect_url": "/dotnet/csharp/language-reference/language-specification/structs#16411-properties"
},
{
"source_path_from_root": "/redirections/proposals/csharp-8.0/null-coalescing-assignment.md",
"redirect_url": "/dotnet/csharp/language-reference/language-specification/expressions#1222-assignment-operators"
},
{
"source_path_from_root": "/redirections/proposals/csharp-8.0/async-streams.md",
"redirect_url": "/dotnet/csharp/language-reference/language-specification/statements#13953-await-foreach"
},
{
"source_path_from_root": "/redirections/proposals/csharp-9.0/nullable-reference-types-specification.md",
"redirect_url": "/dotnet/csharp/language-reference/language-specification/types#893-nullable-reference-types"
Expand Down Expand Up @@ -1473,18 +1453,6 @@
"source_path_from_root": "/docs/csharp/language-reference/proposals/csharp-7.3/index.md",
"redirect_url": "/dotnet/csharp/language-reference/proposals/csharp-7.3/ref-local-reassignment"
},
{
"source_path_from_root": "/docs/csharp/language-reference/proposals/csharp-8.0/index.md",
"redirect_url": "/dotnet/csharp/language-reference/language-specification/types#893-nullable-reference-types"
},
{
"source_path_from_root": "/docs/csharp/language-reference/proposals/csharp-8.0/static-local-functions.md",
"redirect_url": "/dotnet/csharp/language-reference/language-specification/statements#1364-local-function-declarations"
},
{
"source_path_from_root": "/docs/csharp/language-reference/proposals/csharp-8.0/nullable-reference-types.md",
"redirect_url": "/dotnet/csharp/language-reference/language-specification/types#893-nullable-reference-types"
},
{
"source_path_from_root": "/docs/csharp/language-reference/proposals/csharp-9.0/nullable-reference-types-specification.md",
"redirect_url": "/dotnet/csharp/language-reference/language-specification/types#893-nullable-reference-types"
Expand Down
23 changes: 0 additions & 23 deletions docfx.json
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@
},
{
"files": [
"csharp-8.0/*.md",
"csharp-9.0/*.md",
"csharp-10.0/*.md",
"csharp-11.0/*.md",
Expand All @@ -62,24 +61,6 @@
"**/README.md",
"inactive/**",
"rejected/**",
"csharp-8.0/alternative-interpolated-verbatim.md",
"csharp-8.0/async-using.md",
"csharp-8.0/constraints-in-overrides.md",
"csharp-8.0/constructed-unmanaged.md",
"csharp-8.0/notnull-constraint.md",
"csharp-8.0/obsolete-accessor.md",
"csharp-8.0/shadowing-in-nested-functions.md",
"csharp-8.0/static-local-functions.md",
"csharp-8.0/unconstrained-null-coalescing.md",
"csharp-8.0/nullable-reference-types.md",
"csharp-8.0/nullable-reference-types-specification.md",
"csharp-8.0/nested-stackalloc.md",
"csharp-8.0/readonly-instance-members.md",
"csharp-8.0/null-coalescing-assignment.md",
"csharp-8.0/async-streams.md",
"csharp-8.0/ranges.md",
"csharp-8.0/using.md",
"csharp-8.0/default-interface-methods.md",
"csharp-9.0/nullable-reference-types-specification.md",
"csharp-9.0/nullable-constructor-analysis.md",
"csharp-9.0/nullable-parameter-default-value-analysis.md",
Expand Down Expand Up @@ -524,7 +505,6 @@
},
"ms.date": {
"_csharpstandard/standard/*.md": "09/12/2025",
"_csharplang/proposals/csharp-8.0/*.md": "09/10/2019",
"_csharplang/proposals/csharp-9.0/*.md": "07/29/2020",
"_csharplang/proposals/csharp-10.0/*.md": "08/07/2021",
"_csharplang/proposals/csharp-11.0/*.md": "09/30/2022",
Expand Down Expand Up @@ -638,7 +618,6 @@
"_csharpstandard/standard/standard-library.md": "Standard library",
"_csharpstandard/standard/documentation-comments.md": "Documentation comments",
"_csharpstandard/standard/Bibliography.md": "Bibliography",
"_csharplang/proposals/csharp-8.0/patterns.md": "Recursive pattern matching",
"_csharplang/proposals/csharp-9.0/covariant-returns.md": "Covariant return types",
"_csharplang/proposals/csharp-9.0/extending-partial-methods.md": "Extending partial methods",
"_csharplang/proposals/csharp-9.0/extension-getenumerator.md": "Extension GetEnumerator support in foreach",
Expand Down Expand Up @@ -765,7 +744,6 @@
"_csharpstandard/standard/standard-library.md": "This appendix lists requirements of the specification library. The C# language relies on these types for some of its behavior.",
"_csharpstandard/standard/documentation-comments.md": "This appendix describes XML comments that are used to document your program.",
"_csharpstandard/standard/Bibliography.md": "This appendix lists external standards referenced in this specification.",
"_csharplang/proposals/csharp-8.0/patterns.md": "This feature specification describes recursive pattern matching, where patterns can nest inside other patterns.",
"_csharplang/proposals/csharp-9.0/covariant-returns.md": "This feature specification describes covariant return types, where overriding member declarations can return a type derived from the overridden member declaration.",
"_csharplang/proposals/csharp-9.0/extending-partial-methods.md": "This feature specification describes extensions to partial methods. These extensions enable source generators to create or call partial methods.",
"_csharplang/proposals/csharp-9.0/extension-getenumerator.md": "This feature specification describes the necessary pattern for an extension method to provide the GetEnumerator support in a foreach loop.",
Expand Down Expand Up @@ -861,7 +839,6 @@
"titleSuffix": {
"docs/**/*.md": ".NET",
"_csharpstandard/standard/*.md": "C# language specification",
"_csharplang/proposals/csharp-8.0/*.md": "C# feature specifications",
"_csharplang/proposals/csharp-9.0/*.md": "C# feature specifications",
"_csharplang/proposals/csharp-10.0/*.md": "C# feature specifications",
"_csharplang/proposals/csharp-11.0/*.md": "C# feature specifications",
Expand Down
4 changes: 2 additions & 2 deletions docs/csharp/language-reference/builtin-types/enum.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,8 +88,8 @@ For more information, see the following sections of the [C# language specificati

- [Enums](~/_csharpstandard/standard/enums.md)
- [Enum values and operations](~/_csharpstandard/standard/enums.md#206-enum-values-and-operations)
- [Enumeration logical operators](~/_csharpstandard/standard/expressions.md#12143-enumeration-logical-operators)
- [Enumeration comparison operators](~/_csharpstandard/standard/expressions.md#12136-enumeration-comparison-operators)
- [Enumeration logical operators](~/_csharpstandard/standard/expressions.md#12153-enumeration-logical-operators)
- [Enumeration comparison operators](~/_csharpstandard/standard/expressions.md#12146-enumeration-comparison-operators)
- [Explicit enumeration conversions](~/_csharpstandard/standard/conversions.md#1033-explicit-enumeration-conversions)
- [Implicit enumeration conversions](~/_csharpstandard/standard/conversions.md#1024-implicit-enumeration-conversions)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,10 +72,7 @@ There are two ways to control the nullable context. At the project level, you ca

## C# language specification

For more information, see the following proposals for the [C# language specification](~/_csharpstandard/standard/README.md):

- [Nullable reference types](~/_csharplang/proposals/csharp-8.0/nullable-reference-types.md)
- [Draft nullable reference types specification](~/_csharplang/proposals/csharp-9.0/nullable-reference-types-specification.md)
For more information, see the [Nullable reference types](~/_csharpstandard/standard/types.md#89-reference-types-and-nullability) section of the [C# language specification](~/_csharpstandard/standard/README.md):

## See also

Expand Down
4 changes: 2 additions & 2 deletions docs/csharp/language-reference/builtin-types/struct.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,8 +172,8 @@ For more information, see the [Structs](~/_csharpstandard/standard/structs.md) s

For more information about `struct` features, see the following feature proposal notes:

- [Readonly structs](~/_csharplang/proposals/csharp-7.2/readonly-ref.md#readonly-structs)
- [Readonly instance members](~/_csharplang/proposals/csharp-8.0/readonly-instance-members.md)
- [Readonly structs](~/_csharpstandard/standard/structs.md#1622-struct-modifiers)
- [Readonly instance members](~/_csharpstandard/standard/structs.md#163-struct-members)
- [Parameterless struct constructors](~/_csharplang/proposals/csharp-10.0/parameterless-struct-constructors.md)
- [Allow `with` expression on structs](~/_csharplang/proposals/csharp-10.0/record-structs.md#allow-with-expression-on-structs)
- [Record structs](~/_csharplang/proposals/csharp-10.0/record-structs.md)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -298,7 +298,7 @@ To fix these errors, remove invalid conversion operators or restructure your typ
- **CS0217**: *In order to be applicable as a short-circuit operator, a user-defined logical operator must have the same return type as the type of its 2 parameters.*
- **CS0218**: *The type must contain declarations of operator true and operator false.*

These errors occur when you define logical operators incorrectly. Certain operators must be defined in pairs, and short-circuit operators have specific signature requirements. For more information, see [true and false operators](../operators/true-false-operators.md), [Boolean logical operators](../operators/boolean-logical-operators.md), and [User-defined conditional logical operators](~/_csharpstandard/standard/expressions.md#12153-user-defined-conditional-logical-operators). The following code demonstrates these errors:
These errors occur when you define logical operators incorrectly. Certain operators must be defined in pairs, and short-circuit operators have specific signature requirements. For more information, see [true and false operators](../operators/true-false-operators.md), [Boolean logical operators](../operators/boolean-logical-operators.md), and [User-defined conditional logical operators](~/_csharpstandard/standard/expressions.md#12163-user-defined-conditional-logical-operators). The following code demonstrates these errors:

```csharp
class C
Expand Down
2 changes: 1 addition & 1 deletion docs/csharp/language-reference/keywords/const.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ The following example demonstrates how to declare a local constant:
For more information, see the following sections of the [C# language specification](~/_csharpstandard/standard/README.md):

- [Constants](~/_csharpstandard/standard/classes.md#154-constants)
- [Constant expressions](~/_csharpstandard/standard/expressions.md#1224-constant-expressions)
- [Constant expressions](~/_csharpstandard/standard/expressions.md#1225-constant-expressions)

## See also

Expand Down
3 changes: 1 addition & 2 deletions docs/csharp/language-reference/keywords/interface.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@ An interface declaration can contain the following members:
- [A static constructor](../../programming-guide/classes-and-structs/constructors.md#static-constructors).
- [Nested types](../../programming-guide/classes-and-structs/nested-types.md).
- [Static fields, methods, properties, indexers, and events](static.md).
- [Member declarations using the explicit interface implementation syntax](~/_csharplang/proposals/csharp-8.0/default-interface-methods.md#explicit-implementation-in-interfaces).
- Explicit access modifiers (the default access for abstract methods is [`public`](access-modifiers.md)).

## Default interface members
Expand Down Expand Up @@ -90,7 +89,7 @@ The following example demonstrates interface implementation. In this example, th

## C# language specification

For more information, see the [Interfaces](~/_csharpstandard/standard/interfaces.md) section of the [C# language specification](~/_csharpstandard/standard/README.md), the feature specification for [C# 8 - Default interface members](~/_csharplang/proposals/csharp-8.0/default-interface-methods.md), and the feature spec for [C# 11 - static abstract members in interfaces](~/_csharplang/proposals/csharp-11.0/static-abstracts-in-interfaces.md).
For more information, see the [Interfaces](~/_csharpstandard/standard/interfaces.md) section of the [C# language specification](~/_csharpstandard/standard/README.md) and the feature spec for [C# 11 - static abstract members in interfaces](~/_csharplang/proposals/csharp-11.0/static-abstracts-in-interfaces.md).

## See also

Expand Down
5 changes: 0 additions & 5 deletions docs/csharp/language-reference/keywords/readonly.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,11 +97,6 @@ The method essentially returns a `readonly` reference together with the instance

[!INCLUDE[CSharplangspec](~/includes/csharplangspec-md.md)]

You can also see the language specification proposals:

- [readonly ref and readonly struct](~/_csharplang/proposals/csharp-7.2/readonly-ref.md)
- [readonly struct members](~/_csharplang/proposals/csharp-8.0/readonly-instance-members.md)

## See also

- [Add readonly modifier (style rule IDE0044)](../../../fundamentals/code-analysis/style-rules/ide0044.md)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ A user-defined type can [overload](operator-overloading.md) the `+` operator. Wh

## C# language specification

For more information, see the [Unary plus operator](~/_csharpstandard/standard/expressions.md#1292-unary-plus-operator) and [Addition operator](~/_csharpstandard/standard/expressions.md#12115-addition-operator) sections of the [C# language specification](~/_csharpstandard/standard/README.md). For more information on overloading the compound assignment operators in C# 14 and later, see the [user defined compound assignment](~/_csharplang/proposals/csharp-14.0/user-defined-compound-assignment.md) feature specification.
For more information, see the [Unary plus operator](~/_csharpstandard/standard/expressions.md#1292-unary-plus-operator) and [Addition operator](~/_csharpstandard/standard/expressions.md#12125-addition-operator) sections of the [C# language specification](~/_csharpstandard/standard/README.md). For more information on overloading the compound assignment operators in C# 14 and later, see the [user defined compound assignment](~/_csharplang/proposals/csharp-14.0/user-defined-compound-assignment.md) feature specification.

## See also

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ For the `float` and `double` operands, the result of `x % y` for the finite `x`
> [!NOTE]
> This method of computing the remainder is analogous to the method used for integer operands, but different from the IEEE 754 specification. If you need the remainder operation that complies with the IEEE 754 specification, use the <xref:System.Math.IEEERemainder%2A?displayProperty=nameWithType> method.

For information about the behavior of the `%` operator with non-finite operands, see the [Remainder operator](~/_csharpstandard/standard/expressions.md#12114-remainder-operator) section of the [C# language specification](~/_csharpstandard/standard/README.md).
For information about the behavior of the `%` operator with non-finite operands, see the [Remainder operator](~/_csharpstandard/standard/expressions.md#12124-remainder-operator) section of the [C# language specification](~/_csharpstandard/standard/README.md).

For the `decimal` operands, the remainder operator `%` is equivalent to the [remainder operator](<xref:System.Decimal.op_Modulus(System.Decimal,System.Decimal)>) of the <xref:System.Decimal?displayProperty=nameWithType> type.

Expand Down Expand Up @@ -282,12 +282,12 @@ For more information, see the following sections of the [C# language specificati
- [Prefix increment and decrement operators](~/_csharpstandard/standard/expressions.md#1297-prefix-increment-and-decrement-operators)
- [Unary plus operator](~/_csharpstandard/standard/expressions.md#1292-unary-plus-operator)
- [Unary minus operator](~/_csharpstandard/standard/expressions.md#1293-unary-minus-operator)
- [Multiplication operator](~/_csharpstandard/standard/expressions.md#12112-multiplication-operator)
- [Division operator](~/_csharpstandard/standard/expressions.md#12113-division-operator)
- [Remainder operator](~/_csharpstandard/standard/expressions.md#12114-remainder-operator)
- [Addition operator](~/_csharpstandard/standard/expressions.md#12115-addition-operator)
- [Subtraction operator](~/_csharpstandard/standard/expressions.md#12116-subtraction-operator)
- [Compound assignment](~/_csharpstandard/standard/expressions.md#12224-compound-assignment)
- [Multiplication operator](~/_csharpstandard/standard/expressions.md#12122-multiplication-operator)
- [Division operator](~/_csharpstandard/standard/expressions.md#12123-division-operator)
- [Remainder operator](~/_csharpstandard/standard/expressions.md#12124-remainder-operator)
- [Addition operator](~/_csharpstandard/standard/expressions.md#12125-addition-operator)
- [Subtraction operator](~/_csharpstandard/standard/expressions.md#12126-subtraction-operator)
- [Compound assignment](~/_csharpstandard/standard/expressions.md#12234-compound-assignment)
- [The checked and unchecked operators](~/_csharpstandard/standard/expressions.md#12820-the-checked-and-unchecked-operators)
- [Numeric promotions](~/_csharpstandard/standard/expressions.md#1247-numeric-promotions)
- [User defined compound assignment](~/_csharplang/proposals/csharp-14.0/user-defined-compound-assignment.md)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ If a user-defined type overloads a binary operator `op`, the `op=` operator, if

## C# language specification

For more information, see the [Assignment operators](~/_csharpstandard/standard/expressions.md#1222-assignment-operators) section of the [C# language specification](~/_csharpstandard/standard/README.md) and the [User defined compound assignment](~/_csharplang/proposals/csharp-14.0/user-defined-compound-assignment.md) feature specification.
For more information, see the [Assignment operators](~/_csharpstandard/standard/expressions.md#1223-assignment-operators) section of the [C# language specification](~/_csharpstandard/standard/README.md) and the [User defined compound assignment](~/_csharplang/proposals/csharp-14.0/user-defined-compound-assignment.md) feature specification.

## See also

Expand Down
Loading
Loading