Skip to content

Commit cbcff6b

Browse files
committed
Handle SyntaxKind.ImplicitStackAllocArrayCreationExpression
1 parent 3817d7b commit cbcff6b

File tree

3 files changed

+8
-5
lines changed

3 files changed

+8
-5
lines changed

StyleCop.Analyzers/StyleCop.Analyzers.Test.CSharp8/MaintainabilityRules/SA1119CSharp8UnitTests.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -160,13 +160,15 @@ public async Task TestStackAllocExpressionInExpressionAsync()
160160
{
161161
public unsafe void TestMethod()
162162
{
163-
var ptr = stackalloc byte[1];
164-
var span = (stackalloc byte[1]);
163+
var ptr1 = stackalloc byte[1];
164+
var span1 = (stackalloc byte[1]);
165+
var ptr2 = stackalloc[] { 0 };
166+
var span2 = (stackalloc[] { 0 });
165167
}
166168
}
167169
";
168170

169-
await VerifyCSharpDiagnosticAsync(LanguageVersion.CSharp8, testCode, DiagnosticResult.EmptyDiagnosticResults).ConfigureAwait(false);
171+
await VerifyCSharpDiagnosticAsync(LanguageVersion.CSharp8, testCode, DiagnosticResult.EmptyDiagnosticResults, CancellationToken.None).ConfigureAwait(false);
170172
}
171173
}
172174
}

StyleCop.Analyzers/StyleCop.Analyzers.Test/Verifiers/StyleCopCodeFixVerifier`2.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ internal static Task VerifyCSharpDiagnosticAsync(string source, DiagnosticResult
4545
internal static Task VerifyCSharpDiagnosticAsync(LanguageVersion? languageVersion, string source, DiagnosticResult expected, CancellationToken cancellationToken)
4646
=> StyleCopDiagnosticVerifier<TAnalyzer>.VerifyCSharpDiagnosticAsync(languageVersion, source, expected, cancellationToken);
4747

48-
internal static Task VerifyCSharpDiagnosticAsync(LanguageVersion? languageVersion, string source, DiagnosticResult[] expected, CancellationToken cancellationToken = default)
48+
internal static Task VerifyCSharpDiagnosticAsync(LanguageVersion? languageVersion, string source, DiagnosticResult[] expected, CancellationToken cancellationToken)
4949
=> StyleCopDiagnosticVerifier<TAnalyzer>.VerifyCSharpDiagnosticAsync(languageVersion, source, settings: null, expected, cancellationToken);
5050

5151
internal static Task VerifyCSharpDiagnosticAsync(LanguageVersion? languageVersion, string source, string settings, DiagnosticResult[] expected, CancellationToken cancellationToken)

StyleCop.Analyzers/StyleCop.Analyzers/MaintainabilityRules/SA1119StatementMustNotUseUnnecessaryParenthesis.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,8 @@ private static void HandleParenthesizedExpression(SyntaxNodeAnalysisContext cont
137137
return;
138138
}
139139

140-
if (node.Expression.IsKind(SyntaxKind.StackAllocArrayCreationExpression)
140+
if ((node.Expression.IsKind(SyntaxKind.StackAllocArrayCreationExpression)
141+
|| node.Expression.IsKind(SyntaxKindEx.ImplicitStackAllocArrayCreationExpression))
141142
&& node.Parent.IsKind(SyntaxKind.EqualsValueClause))
142143
{
143144
return;

0 commit comments

Comments
 (0)