From cfd8a87496295b27be904170e7f09fbfbc6ef29d Mon Sep 17 00:00:00 2001 From: Tamas Vajk Date: Wed, 3 Mar 2021 14:25:59 +0100 Subject: [PATCH] C#: Fix nullability warnings after .net 5 upgrade --- .../extractor/Semmle.Extraction.CSharp/Entities/Accessor.cs | 4 ++-- .../Semmle.Extraction.CSharp/Entities/CachedSymbol.cs | 4 ++-- .../Semmle.Extraction.CSharp/Entities/Constructor.cs | 4 ++-- .../extractor/Semmle.Extraction.CSharp/Entities/Conversion.cs | 2 +- csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs | 2 +- .../Semmle.Extraction.CSharp/Extractor/CompilerVersion.cs | 2 +- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Accessor.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Accessor.cs index 6ce2bcc645c..3f3011bc1f8 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Accessor.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Accessor.cs @@ -13,7 +13,7 @@ namespace Semmle.Extraction.CSharp.Entities /// Gets the property symbol associated accessor `symbol`, or `null` /// if there is no associated symbol. /// - public static IPropertySymbol GetPropertySymbol(IMethodSymbol symbol) + public static IPropertySymbol? GetPropertySymbol(IMethodSymbol symbol) { // Usually, the property/indexer can be fetched from the associated symbol if (symbol.AssociatedSymbol is IPropertySymbol prop) @@ -29,7 +29,7 @@ namespace Semmle.Extraction.CSharp.Entities /// /// Gets the property symbol associated with this accessor. /// - private IPropertySymbol PropertySymbol => GetPropertySymbol(Symbol); + private IPropertySymbol? PropertySymbol => GetPropertySymbol(Symbol); public new Accessor OriginalDefinition => Create(Context, Symbol.OriginalDefinition); diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/CachedSymbol.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/CachedSymbol.cs index c92384cd0d9..5c1a55452ef 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/CachedSymbol.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/CachedSymbol.cs @@ -101,7 +101,7 @@ namespace Semmle.Extraction.CSharp.Entities protected virtual T BodyDeclaringSymbol => Symbol; - public BlockSyntax Block + public BlockSyntax? Block { get { @@ -112,7 +112,7 @@ namespace Semmle.Extraction.CSharp.Entities } } - public ExpressionSyntax ExpressionBody + public ExpressionSyntax? ExpressionBody { get { diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Constructor.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Constructor.cs index dd0b6297ba2..161bcec507c 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Constructor.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Constructor.cs @@ -86,7 +86,7 @@ namespace Semmle.Extraction.CSharp.Entities } } - private ConstructorDeclarationSyntax Syntax + private ConstructorDeclarationSyntax? Syntax { get { @@ -122,7 +122,7 @@ namespace Semmle.Extraction.CSharp.Entities trapFile.Write(";constructor"); } - private ConstructorDeclarationSyntax GetSyntax() => + private ConstructorDeclarationSyntax? GetSyntax() => Symbol.DeclaringSyntaxReferences.Select(r => r.GetSyntax()).OfType().FirstOrDefault(); public override Microsoft.CodeAnalysis.Location? FullLocation => ReportingLocation; diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Conversion.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Conversion.cs index 4a245207bfe..c3d59f94de7 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Conversion.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Conversion.cs @@ -13,7 +13,7 @@ namespace Semmle.Extraction.CSharp.Entities public static new Conversion Create(Context cx, IMethodSymbol symbol) => ConversionFactory.Instance.CreateEntityFromSymbol(cx, symbol); - public override Microsoft.CodeAnalysis.Location ReportingLocation + public override Microsoft.CodeAnalysis.Location? ReportingLocation { get { diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs index 4900129fdce..ce3cc1345ff 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Entities/Method.cs @@ -83,7 +83,7 @@ namespace Semmle.Extraction.CSharp.Entities if (block != null) Statements.Block.Create(Context, block, this, 0); else - Expression.Create(Context, expr, this, 0); + Expression.Create(Context, expr!, this, 0); NumberOfLines(trapFile, BodyDeclaringSymbol, this); }); diff --git a/csharp/extractor/Semmle.Extraction.CSharp/Extractor/CompilerVersion.cs b/csharp/extractor/Semmle.Extraction.CSharp/Extractor/CompilerVersion.cs index 405658a8644..f4f8a7823f5 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp/Extractor/CompilerVersion.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp/Extractor/CompilerVersion.cs @@ -75,7 +75,7 @@ namespace Semmle.Extraction.CSharp } var versionInfo = FileVersionInfo.GetVersionInfo(SpecifiedCompiler); - if (!knownCompilerNames.TryGetValue(versionInfo.OriginalFilename, out var vendor)) + if (!knownCompilerNames.TryGetValue(versionInfo.OriginalFilename ?? string.Empty, out var vendor)) { SkipExtractionBecause("the compiler name is not recognised"); return;