github / github/codeql

LGTM.com - false positive - cs/useless-assignment-to-local doesn't always work for ref struct like Span<T>

Abierto
#2,754 0 comentarios 0 reacciones 0 asignados Ver en GitHub
C# false-positive
Lenguaje dominante
CodeQL
Estrellas
10.1k
Forks
2.1k
Merge medio
2 d 15 h
PR fusionados (30 d)
141

Descripción

**Description of the false positive**

In general, the `cs/useless-assignment-to-local` rule makes sense: https://lgtm.com/rules/1506093386171/

However, assigning a ref struct like `Span` within an instance method of a containing ref struct to `stackalloc` is not redundant and necessary to give the compiler a hint that the local will not escape the stack/method. Otherwise, the compiler would complain since that ref struct local could be stashed as a field of the containing type.

**URL to the alert on the project page on LGTM.com**

https://lgtm.com/projects/g/dotnet/corefx/latest/files/src/System.Text.Json/src/System/Text/Json/Reader/Utf8JsonReader.TryGet.cs?sort=name&dir=ASC&mode=heatmap#V820

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.