LuaLS / LuaLS/lua-language-server
Wrongly detects unreachable code
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Lua
- Sterne
- 4.4k
- Forks
- 442
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
How are you using the lua-language-server?
Visual Studio Code Extension (sumneko.lua)
Which OS are you using?
Linux
What is the issue affecting?
Diagnostics/Syntax Checking, Hover
Expected Behaviour
Given the following code
local arr = {}
for k,v in pairs(arr) do
if k == 1 then
print("k == 1")
error("hi", k, v)
else
error("hi", k, v)
end
end
print("hello world")
print in the last line should not be marked as unreachable, since arr is empty and error is never called.
Actual Behaviour
print in the last line is marked as unreachable.
Reproduction steps
- Open New Tab in VSCode
- Paste code example from above
- if not set automatically, change language to lua
- see last line being greyed out
Additional Notes
No response
Log File
No response
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
Reproduziere die Diagnose in der LuaLS Visual Studio Code extension mithilfe des bereitgestellten Snippets unter Linux und verfolge anschließend die Analyse des unerreichbaren Codes für die Schleife und ihre abschließende print-Anweisung. Die Aufgabe ist erledigt, wenn die abschließende print-Anweisung nicht mehr als unerreichbar markiert wird, wenn die Schleife über eine leere Tabelle iteriert.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- lua
- Bereich
- devtools
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100