microsoft / microsoft/vscode-cpptools

Extension does not correctly handle WSL symlinks

Offen
#2,140 4 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

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

Beschreibung

Type: LanguageService

Describe the bug

  • OS and Version: 1803
  • WSL version: Ubuntu 18.04
  • VS Code Version: 1.24.1
  • C/C++ Extension Version: 0.17.4
  • Other extensions you installed (and if the issue persists after disabling them):
  • A clear and concise description of what the bug is.
    I want to include LLVM in a project but vscode-cpptools seems to fail to intellisense.

To Reproduce
Steps to reproduce the behavior:
c_cpp_prperties.json

{
    "configurations": [
        {
            "name": "WSL",
            "intelliSenseMode": "clang-x64",
            "compilerPath": "/usr/bin/gcc",
            "includePath": [
                "${workspaceFolder}",
                "/mnt/c/libraries/lib1/include",
                "C:/libraries/lib2/include"
            ],
            "defines": [],
            "browse": {
                "path": [
                    "${workspaceFolder}",
                    "/mnt/c/libraries"
                ],
                "limitSymbolsToIncludedHeaders": true,
                "databaseFilename": ""
            },
            "cStandard": "c11",
            "cppStandard": "c++17"
        }
    ],
    "version": 4
}

edit an C/C++ source code file and try to type this

#include <llvm/IR/Module.h>

Expected behavior
show no error read lines and make correct intellisense

Screenshots

default

Additional context
it seems that the extension do find the LLVM folder but somehow it cannot recognize it. I tried to make a soft link named "llvm" for "llvm-6.0" in /usr/include/ but it is useless.

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 den Bericht mit der bereitgestellten c_cpp_properties.json, der WSL-Konfiguration und dem Beispiel #include <llvm/IR/Module.h>. Untersuche zunächst, wie die Erweiterung die aufgeführten Windows- und WSL-Pfade sowie den Symlink /usr/include/llvm verarbeitet; abgeschlossen ist die Aufgabe, wenn LLVM-Header fehlerfrei aufgelöst werden und IntelliSense korrekt funktioniert.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp, linux, vscode
Bereich
devtools, operating-systems
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

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