Skip to content

Commit 08685e7

Browse files
authored
Suppress compiler warnings for possible nulls in generated code (#5099)
* Suppress compiler warnings for possible nulls in generated code Silence warnings after enabling `generateNullableReferenceTypes`. * Fix snapshot tests
1 parent 0977c24 commit 08685e7

8 files changed

+28
-0
lines changed

src/NSwag.CodeGeneration.CSharp/Templates/File.Footer.liquid

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
#pragma warning restore 1591
77
#pragma warning restore 8073
88
#pragma warning restore 3016
9+
#pragma warning restore 8600
10+
#pragma warning restore 8602
911
#pragma warning restore 8603
1012
#pragma warning restore 8604
1113
#pragma warning restore 8625

src/NSwag.CodeGeneration.CSharp/Templates/File.Header.liquid

+2
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
#pragma warning disable 1591 // Disable "CS1591 Missing XML comment for publicly visible type or member ..."
88
#pragma warning disable 8073 // Disable "CS8073 The result of the expression is always 'false' since a value of type 'T' is never equal to 'null' of type 'T?'"
99
#pragma warning disable 3016 // Disable "CS3016 Arrays as attribute arguments is not CLS-compliant"
10+
#pragma warning disable 8600 // Disable "CS8600 Converting null literal or possible null value to non-nullable type"
11+
#pragma warning disable 8602 // Disable "CS8602 Dereference of a possibly null reference"
1012
#pragma warning disable 8603 // Disable "CS8603 Possible null reference return"
1113
#pragma warning disable 8604 // Disable "CS8604 Possible null reference argument for parameter"
1214
#pragma warning disable 8625 // Disable "CS8625 Cannot convert null literal to non-nullable reference type"

src/NSwag.ConsoleCore.Tests/GenerateSampleSpecificationTests.CheckCSharpClientsAsync_projectName=NSwag.Sample.NET70Minimal_targetFramework=net7.0_generatesCode=True.verified.txt

+4
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
#pragma warning disable 1591 // Disable "CS1591 Missing XML comment for publicly visible type or member ..."
1414
#pragma warning disable 8073 // Disable "CS8073 The result of the expression is always 'false' since a value of type 'T' is never equal to 'null' of type 'T?'"
1515
#pragma warning disable 3016 // Disable "CS3016 Arrays as attribute arguments is not CLS-compliant"
16+
#pragma warning disable 8600 // Disable "CS8600 Converting null literal or possible null value to non-nullable type"
17+
#pragma warning disable 8602 // Disable "CS8602 Dereference of a possibly null reference"
1618
#pragma warning disable 8603 // Disable "CS8603 Possible null reference return"
1719
#pragma warning disable 8604 // Disable "CS8604 Possible null reference argument for parameter"
1820
#pragma warning disable 8625 // Disable "CS8625 Cannot convert null literal to non-nullable reference type"
@@ -827,6 +829,8 @@ namespace MyNamespace
827829
#pragma warning restore 1591
828830
#pragma warning restore 8073
829831
#pragma warning restore 3016
832+
#pragma warning restore 8600
833+
#pragma warning restore 8602
830834
#pragma warning restore 8603
831835
#pragma warning restore 8604
832836
#pragma warning restore 8625

src/NSwag.ConsoleCore.Tests/GenerateSampleSpecificationTests.CheckCSharpClientsAsync_projectName=NSwag.Sample.NET80Minimal_targetFramework=net8.0_generatesCode=True.verified.txt

+4
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
#pragma warning disable 1591 // Disable "CS1591 Missing XML comment for publicly visible type or member ..."
1414
#pragma warning disable 8073 // Disable "CS8073 The result of the expression is always 'false' since a value of type 'T' is never equal to 'null' of type 'T?'"
1515
#pragma warning disable 3016 // Disable "CS3016 Arrays as attribute arguments is not CLS-compliant"
16+
#pragma warning disable 8600 // Disable "CS8600 Converting null literal or possible null value to non-nullable type"
17+
#pragma warning disable 8602 // Disable "CS8602 Dereference of a possibly null reference"
1618
#pragma warning disable 8603 // Disable "CS8603 Possible null reference return"
1719
#pragma warning disable 8604 // Disable "CS8604 Possible null reference argument for parameter"
1820
#pragma warning disable 8625 // Disable "CS8625 Cannot convert null literal to non-nullable reference type"
@@ -821,6 +823,8 @@ namespace MyNamespace
821823
#pragma warning restore 1591
822824
#pragma warning restore 8073
823825
#pragma warning restore 3016
826+
#pragma warning restore 8600
827+
#pragma warning restore 8602
824828
#pragma warning restore 8603
825829
#pragma warning restore 8604
826830
#pragma warning restore 8625

src/NSwag.ConsoleCore.Tests/GenerateSampleSpecificationTests.CheckCSharpClientsAsync_projectName=NSwag.Sample.NET90Minimal_targetFramework=net9.0_generatesCode=True.verified.txt

+4
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
#pragma warning disable 1591 // Disable "CS1591 Missing XML comment for publicly visible type or member ..."
1414
#pragma warning disable 8073 // Disable "CS8073 The result of the expression is always 'false' since a value of type 'T' is never equal to 'null' of type 'T?'"
1515
#pragma warning disable 3016 // Disable "CS3016 Arrays as attribute arguments is not CLS-compliant"
16+
#pragma warning disable 8600 // Disable "CS8600 Converting null literal or possible null value to non-nullable type"
17+
#pragma warning disable 8602 // Disable "CS8602 Dereference of a possibly null reference"
1618
#pragma warning disable 8603 // Disable "CS8603 Possible null reference return"
1719
#pragma warning disable 8604 // Disable "CS8604 Possible null reference argument for parameter"
1820
#pragma warning disable 8625 // Disable "CS8625 Cannot convert null literal to non-nullable reference type"
@@ -821,6 +823,8 @@ namespace MyNamespace
821823
#pragma warning restore 1591
822824
#pragma warning restore 8073
823825
#pragma warning restore 3016
826+
#pragma warning restore 8600
827+
#pragma warning restore 8602
824828
#pragma warning restore 8603
825829
#pragma warning restore 8604
826830
#pragma warning restore 8625

src/NSwag.ConsoleCore.Tests/GenerateSampleSpecificationTests.CheckCSharpControllersAsync_projectName=NSwag.Sample.NET70Minimal_targetFramework=net7.0_generatesCode=True.verified.txt

+4
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
#pragma warning disable 1591 // Disable "CS1591 Missing XML comment for publicly visible type or member ..."
1414
#pragma warning disable 8073 // Disable "CS8073 The result of the expression is always 'false' since a value of type 'T' is never equal to 'null' of type 'T?'"
1515
#pragma warning disable 3016 // Disable "CS3016 Arrays as attribute arguments is not CLS-compliant"
16+
#pragma warning disable 8600 // Disable "CS8600 Converting null literal or possible null value to non-nullable type"
17+
#pragma warning disable 8602 // Disable "CS8602 Dereference of a possibly null reference"
1618
#pragma warning disable 8603 // Disable "CS8603 Possible null reference return"
1719
#pragma warning disable 8604 // Disable "CS8604 Possible null reference argument for parameter"
1820
#pragma warning disable 8625 // Disable "CS8625 Cannot convert null literal to non-nullable reference type"
@@ -165,6 +167,8 @@ namespace MyNamespace
165167
#pragma warning restore 1591
166168
#pragma warning restore 8073
167169
#pragma warning restore 3016
170+
#pragma warning restore 8600
171+
#pragma warning restore 8602
168172
#pragma warning restore 8603
169173
#pragma warning restore 8604
170174
#pragma warning restore 8625

src/NSwag.ConsoleCore.Tests/GenerateSampleSpecificationTests.CheckCSharpControllersAsync_projectName=NSwag.Sample.NET80Minimal_targetFramework=net8.0_generatesCode=True.verified.txt

+4
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
#pragma warning disable 1591 // Disable "CS1591 Missing XML comment for publicly visible type or member ..."
1414
#pragma warning disable 8073 // Disable "CS8073 The result of the expression is always 'false' since a value of type 'T' is never equal to 'null' of type 'T?'"
1515
#pragma warning disable 3016 // Disable "CS3016 Arrays as attribute arguments is not CLS-compliant"
16+
#pragma warning disable 8600 // Disable "CS8600 Converting null literal or possible null value to non-nullable type"
17+
#pragma warning disable 8602 // Disable "CS8602 Dereference of a possibly null reference"
1618
#pragma warning disable 8603 // Disable "CS8603 Possible null reference return"
1719
#pragma warning disable 8604 // Disable "CS8604 Possible null reference argument for parameter"
1820
#pragma warning disable 8625 // Disable "CS8625 Cannot convert null literal to non-nullable reference type"
@@ -159,6 +161,8 @@ namespace MyNamespace
159161
#pragma warning restore 1591
160162
#pragma warning restore 8073
161163
#pragma warning restore 3016
164+
#pragma warning restore 8600
165+
#pragma warning restore 8602
162166
#pragma warning restore 8603
163167
#pragma warning restore 8604
164168
#pragma warning restore 8625

src/NSwag.ConsoleCore.Tests/GenerateSampleSpecificationTests.CheckCSharpControllersAsync_projectName=NSwag.Sample.NET90Minimal_targetFramework=net9.0_generatesCode=True.verified.txt

+4
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
#pragma warning disable 1591 // Disable "CS1591 Missing XML comment for publicly visible type or member ..."
1414
#pragma warning disable 8073 // Disable "CS8073 The result of the expression is always 'false' since a value of type 'T' is never equal to 'null' of type 'T?'"
1515
#pragma warning disable 3016 // Disable "CS3016 Arrays as attribute arguments is not CLS-compliant"
16+
#pragma warning disable 8600 // Disable "CS8600 Converting null literal or possible null value to non-nullable type"
17+
#pragma warning disable 8602 // Disable "CS8602 Dereference of a possibly null reference"
1618
#pragma warning disable 8603 // Disable "CS8603 Possible null reference return"
1719
#pragma warning disable 8604 // Disable "CS8604 Possible null reference argument for parameter"
1820
#pragma warning disable 8625 // Disable "CS8625 Cannot convert null literal to non-nullable reference type"
@@ -159,6 +161,8 @@ namespace MyNamespace
159161
#pragma warning restore 1591
160162
#pragma warning restore 8073
161163
#pragma warning restore 3016
164+
#pragma warning restore 8600
165+
#pragma warning restore 8602
162166
#pragma warning restore 8603
163167
#pragma warning restore 8604
164168
#pragma warning restore 8625

0 commit comments

Comments
 (0)