microsoft / vscode-cpptools

Official repository for the Microsoft C/C++ extension for VS Code.
Other
5.52k stars 1.55k forks source link

Red wavy line that shouldn't have happened for c preprocessor #8624

Closed github0null closed 2 years ago

github0null commented 2 years ago

Bug type: Language Service

Describe the bug

Problem summary: The c preprocessor is defined, cpptools can Expand its value and Goto Definition , but put a red wavy line on it and tell me: identifier xxx is not defined, like this:

image

Steps to reproduce

  1. Download this project: w801_blink_demo.zip
  2. Unzip project, and open workspace
  3. Install vscode plug-in: Makefile Tools, Allow it to provide intellisence config for this workspace
  4. Wait cpptools parse workspace done ...
  5. Goto file .\demo\console\wm_demo_console_task.c:405, see error. (Sometimes it does not appear, restart the workspace to reproduce it)

Expected behavior

There are no red wavy lines on it, because it's defined.

Code sample and logs

Custom configurations:
[ D:\Code_Project\Embedded_Projects\HLK_W80X\w801_blink_demo\demo\console\wm_demo_console_task.c ]
{
    "defines": [
        "TLS_CONFIG_CPU_XT804=1",
        "GCC_COMPILE=1",
        "WM_SWD_ENABLE=1",
        "NIMBLE_FTR=1"
    ],
    "standard": "gnu99",
    "includePath": [
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\demo\\console\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\app",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\arch\\xt804",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\arch\\xt804\\csi_core",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\arch\\xt804\\csi_dsp",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\driver",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\net",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\os",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\platform",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\wifi",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\bt",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\platform\\common\\params",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\platform\\inc",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\platform\\sys",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\wm_atcmd",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\dhcpserver",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\dnsserver",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\web",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\cloud",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\cJSON",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\rmms",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\ntp",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\httpclient",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\oneshotconfig",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\iperf",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\mqtt",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\ping",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\polarssl\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\mDNS\\mDNSPosix",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\mDNS\\mDNSCore",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\ota",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\libwebsockets-2.1-stable",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\fatfs",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\mbedtls\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\mbedtls\\ports",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\network\\api2.0.3",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\network\\lwip2.0.3\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\os\\rtos\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\factorycmd",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\demo",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\ext\\tinycrypt\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\mesh\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\porting\\w800\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\services\\gap\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\services\\gatt\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\services\\bas\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\services\\dis\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\store\\config\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\store\\ram\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\util\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\transport\\uart\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\porting\\w800\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\main",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\stack",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\stack\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\gki\\wm",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\gki\\common",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\vnd\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\bta\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\osi\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\hci\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\btif\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\embdrv\\sbc\\encoder\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\embdrv\\sbc\\decoder\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\btcore\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\demo\\console\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\demo\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\demo\\console\\",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\demo\\console\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\app",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\arch\\xt804",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\arch\\xt804\\csi_core",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\arch\\xt804\\csi_dsp",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\driver",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\net",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\os",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\platform",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\wifi",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include\\bt",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\platform\\common\\params",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\platform\\inc",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\platform\\sys",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\wm_atcmd",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\dhcpserver",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\dnsserver",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\web",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\cloud",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\cJSON",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\rmms",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\ntp",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\httpclient",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\oneshotconfig",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\iperf",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\mqtt",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\ping",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\polarssl\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\mDNS\\mDNSPosix",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\mDNS\\mDNSCore",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\ota",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\libwebsockets-2.1-stable",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\fatfs",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\mbedtls\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\mbedtls\\ports",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\network\\api2.0.3",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\network\\lwip2.0.3\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\os\\rtos\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\app\\factorycmd",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\demo",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\ext\\tinycrypt\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\mesh\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\porting\\w800\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\services\\gap\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\services\\gatt\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\services\\bas\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\services\\dis\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\store\\config\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\store\\ram\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\host\\util\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\nimble\\transport\\uart\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\blehost\\porting\\w800\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\main",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\stack",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\stack\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\gki\\wm",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\gki\\common",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\vnd\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\bta\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\osi\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\hci\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\btif\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\embdrv\\sbc\\encoder\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\embdrv\\sbc\\decoder\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\src\\bt\\host\\btcore\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\demo\\console\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\demo\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\include",
        "d:\\Code_Project\\Embedded_Projects\\HLK_W80X\\w801_blink_demo\\demo\\console\\"
    ],
    "forcedInclude": [],
    "compilerPath": "D:/csky-elfabiv2-tools-mingw-minilibc-20210423/bin/csky-elfabiv2-gcc.exe",
    "compilerArgs": [
        "-Wall",
        "-mcpu=ck804ef",
        "-O2",
        "-g",
        "-c",
        "-mhard-float",
        "-Wall",
        "-fdata-sections",
        "-ffunction-sections",
        "-c",
        "\"wm_demo_console_task.c\"",
        "-o",
        "\"../../bin/build/w800/obj//wm_demo_console_task.o\"",
        "-MMD",
        "-MD",
        "-MT",
        "\"../../bin/build/w800/obj//wm_demo_console_task.o\""
    ]
}
Translation Unit Mappings:
[ D:\Code_Project\Embedded_Projects\HLK_W80X\w801_blink_demo\demo\console\wm_demo_console_task.c ]:
    D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\DEMO\CONSOLE\WM_DEMO_CONSOLE_TASK.C
Translation Unit Configurations:
[ D:\Code_Project\Embedded_Projects\HLK_W80X\w801_blink_demo\demo\console\wm_demo_console_task.c ]:
    Process ID: 18760
    Memory Usage: 21 MB
    Compiler Path: D:/csky-elfabiv2-tools-mingw-minilibc-20210423/bin/csky-elfabiv2-gcc.exe
    Includes:
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\INCLUDE\APP
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\INCLUDE\ARCH\XT804
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\INCLUDE\ARCH\XT804\CSI_CORE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\INCLUDE\ARCH\XT804\CSI_DSP
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\INCLUDE\DRIVER
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\INCLUDE\NET
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\INCLUDE\OS
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\INCLUDE\PLATFORM
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\INCLUDE\WIFI
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\INCLUDE\BT
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\PLATFORM\COMMON\PARAMS
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\PLATFORM\INC
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\PLATFORM\SYS
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\WM_ATCMD
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\DHCPSERVER
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\DNSSERVER
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\WEB
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\CJSON
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\NTP
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\HTTPCLIENT
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\ONESHOTCONFIG
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\IPERF
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\MQTT
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\PING
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\POLARSSL\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\MDNS\MDNSPOSIX
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\MDNS\MDNSCORE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\OTA
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\LIBWEBSOCKETS-2.1-STABLE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\FATFS
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\MBEDTLS\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\MBEDTLS\PORTS
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\NETWORK\API2.0.3
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\NETWORK\LWIP2.0.3\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\OS\RTOS\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\APP\FACTORYCMD
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\DEMO
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\EXT\TINYCRYPT\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\NIMBLE\HOST\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\NIMBLE\HOST\MESH\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\NIMBLE\HOST\SERVICES\GAP\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\NIMBLE\HOST\SERVICES\GATT\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\NIMBLE\HOST\SERVICES\BAS\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\NIMBLE\HOST\SERVICES\DIS\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\NIMBLE\HOST\STORE\CONFIG\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\NIMBLE\HOST\STORE\RAM\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\NIMBLE\HOST\UTIL\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\NIMBLE\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\NIMBLE\TRANSPORT\UART\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\BLEHOST\PORTING\W800\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\MAIN
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\STACK
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\STACK\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\GKI\WM
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\GKI\COMMON
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\VND\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\BTA\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\OSI\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\HCI\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\BTIF\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\EMBDRV\SBC\ENCODER\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\EMBDRV\SBC\DECODER\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\SRC\BT\HOST\BTCORE\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\INCLUDE
        D:\CODE_PROJECT\EMBEDDED_PROJECTS\HLK_W80X\W801_BLINK_DEMO\DEMO\CONSOLE
        D:\CSKY-ELFABIV2-TOOLS-MINGW-MINILIBC-20210423\LIB\GCC\CSKY-ELFABIV2\6.3.0\INCLUDE
        D:\CSKY-ELFABIV2-TOOLS-MINGW-MINILIBC-20210423\LIB\GCC\CSKY-ELFABIV2\6.3.0\INCLUDE-FIXED
        D:\CSKY-ELFABIV2-TOOLS-MINGW-MINILIBC-20210423\CSKY-ELFABIV2\SYS-INCLUDE
        D:\CSKY-ELFABIV2-TOOLS-MINGW-MINILIBC-20210423\CSKY-ELFABIV2\INCLUDE
    Defines:
        TLS_CONFIG_CPU_XT804=1
        GCC_COMPILE=1
        WM_SWD_ENABLE=1
        NIMBLE_FTR=1
    Standard Version: c99
    IntelliSense Mode: windows-gcc-x64
    Other Flags:
        --gcc
        --gnu_version=60300
Total Memory Usage: 21 MB

Screenshots

image

Additional context

andreeis commented 2 years ago

@github0null, I have some trouble setting up the repro (some make errors, I'll try to figure out how to use this).

In the meantime, please set "makefile.loggingLevel": "Debug" and "makefile.extensionLog": ".vscode/extension.log" in your .vscode subfolder of your workspace. Reload your project in VSCode and after the "Configure" step is finished (you can look at the "Makefile Tools" output channel) please share with us .vscode\dryrun.log and .vscode\extension.log.

github0null commented 2 years ago

@andreeis

ok, this is: extension_dryrun_log.zip

andreeis commented 2 years ago

@github0null, thank you for the logs. @sean-mcmanus, I am not seeing anything wrong from the Makefile Tools side. wm_demo_console_task.c is properly parsed by the extension from the dryrun log and we send the correct includes, defines and args to CppTools. I also tried to follow the define with the red squiggle. It is defined by source code (not by makefile and it doesn't end up in the compiler command line) in demo/console/wm_demo_console.h, which is included by wm_demo_console_task.c if DEMO_CONSOLE is defined, which is defined in demo/wm_demo.h which gets #included and its folder is present in the list of includes we give in the custom configuration for wm_demo_console_task.c.

I may miss something. @sean-mcmanus, let me know whether you spot anything coming out wrong from Makefile Tools.

sean-mcmanus commented 2 years ago

I repro the bug now. I had C_Cpp.intelliSenseCacheSize set to 0 so it wasn't reproing for me initially...so do that for the workaround. Something is causing an invalid IntelliSense cache to be created.

sean-mcmanus commented 2 years ago

It repros with VS too. I've filed a bug (1463979) against our VS shared parser.

sean-mcmanus commented 2 years ago

FYI, this may be fixed with 1.10.0 (I haven't verified that yet though).

github0null commented 2 years ago

Thanks for your work !

I have tried, It works now.

image