LuaLS / LuaLS/lua-language-server
Advanced missing nil check
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Lua
- Sterne
- 4.4k
- Forks
- 442
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
This is probably really hard to "fix".
```lua
---@type table|nil
local blueprint = { x = 1 }
local hasBlueprint = true
if blueprint == nil then
hasBlueprint = false
end
if hasBlueprint then
error("no blueprint found")
end
local s = blueprint.x
```

Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginnen Sie damit, das bereitgestellte Lua-Beispiel zu reproduzieren, und untersuchen Sie die Nil-Prüfung und die Kontrollflussanalyse des Language Servers. Bestätigen Sie die erwartete Diagnose für den Zugriff auf blueprint.x, verfolgen Sie anschließend den relevanten Einstiegspunkt des Analysators und fügen Sie eine fokussierte Abdeckung hinzu bzw. aktualisieren Sie diese, damit der gezeigte Fall konsistent behandelt wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- lua
- Bereich
- devtools
- Issue-Typ
- Bug
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 25/100