microsoft / microsoft/vscode-cpptools

Linter provides no warnings for invalid C code

Offen
#828 20 Kommentare 35 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Feature Request Language Service postponed
Vorherrschende Sprache
TypeScript
Sterne
6.2k
Forks
1.7k
Ø Merge
14 Std. 46 Min.
Gemergte PRs (30 T.)
61

Beschreibung

See title, create a fresh test.c file with the contents:

#include <stdio.h>

int main()
{
    asdfd;
    return 0;
}

(If) Linting is working properly, asdfd will be underlined with squigglies as you would expect. What you would not expect is that turning it into a function call makes the squigglies go away:

#include <stdio.h>

int main()
{
    asdfd();
    return 0;
}

Furthermore, hovering over it produces the popup int asdfd(), as if it was defined to return int somewhere. This is just silly.

Related to #746

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Reproduziere das Verhalten in einer frischen test.c mit den beiden Snippets und vergleiche dabei den eigenständigen ungültigen Bezeichner mit der Form als Funktionsaufruf. Lies den zugehörigen Issue #746 und verfolge anhand dieser Reproduktion das C/C++-Linting- und Hover-Verhalten. Erledigt ist die Aufgabe, wenn beide ungültigen Formen angemessen diagnostiziert werden und der Aufruf beim Hover nicht länger ein erfundenes int asdfd() erhält.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
c
Bereich
devtools
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Ruhig
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
48/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.