-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Version 0.30.0-insiders3 breaks IntelliSense completion #6009
Comments
Hey, I am also facing the same problem. But, please can you tell me how to go back to 0.29.0 and cancel auto-updates |
First of all go to C/C++ Extension settings then make update channel default, Then you can right click on setting symbol of C/C++ Extension from the Extension tab, on settings you can find 'install another version'. You can select previous versions like 0.29.0 |
Same issue on windows, but it's working on my another system with linux |
Same here on openSUSE Tumbleweed. |
Additional comments: I have verified that the intellisense breaks when updating from 0.30.0-insiders2 to 0.30.0-insiders3 Using gcc compiler with a mixture of c and c++ files for an embedded system |
You should be able to change the C_Cpp.updateChannel setting to "Default" to switch to 0.29.0. We don't have a repro yet for the 0.30.0-insiders3 IntelliSense regression. Does anyone have a minimum repro? |
@adambrickman Did 0.30.0-insiders2 work? Can you compare the log diagnostics output with 0.29.0 to see what is different? We added support for native ARM IntelliSense with 0.30.0-insiders3, but there might be some issue when cross-compiling for ARM. |
Hi @sean-mcmanus , |
Which features of IntelliSense are broken? Just completion? Does go to definition on local variables work? Or hover over "auto" or numbers? Is anyone able to identify repro requirements? Does it work with simpler projects? Is this only on Linux? Is it only with arm IntelliSense modes? Does it only repro with C and not C++? |
I'm also having this issue. For me, it seems like everything works except autocomplete. Specifically, autocomplete seems to work once for a given file but then it never works for that file again unless I relaunch VSCode. I do not have this problem if I revert to 0.29.0 -- autocomplete always works. I cannot try 0.30.0insiders2 because of #5848. I'm working on Debian 10, x64 in an all C++ project. I'll try to gather more information. |
@sean-mcmanus Thanks for helping investigate this thoroughly, it is appreciated. I tried "C_Cpp.intelliSenseCacheSize": 0 and the problem still exists. I did also try 'Reset the IntelliSense database', and opening the base repository folder as a new workspace, but no luck. Have you tried to repro on a reasonably large repository? Linux kernel make a good test case - it is large but not to the same degree as full Android builds. Perhaps try 'git clone https://github.com/raspberrypi/linux' and checkout branch rpi-4.19.y. Does that repro for you? |
That file repros for me. Going back to 0.30.0-insiders2 is OK. |
Just to double-check, there is "normal" logging messages after "Offering completion", right? We just want to confirm that the processes are stuck. My (non) repro is with Ubuntu 20 and arm-linux-gnueabihf-gcc (Ubuntu 9.3.0-10ubuntu1) 9.3.0, not sure yet if the OS or gcc versions are important for the repro. |
It will continue to log but that is the last message I see after I ctrl+space, until I do something else. I don't think the gcc version is important, since I'm only using VS Code as a smart editor. I use the terminal to do the actual compiling. OS may be important, not quite sure on that front. |
If anyone wants to try a preview of a Makefile extension that should configure things correctly instead of relying on recursive includes, see the comment at #5588 (comment) . |
@sean-mcmanus: I'm configuring things with a compile_commands.json file. I'm assuming that I would not benefit from the Makefile extension? I see this autocomplete issue in the insiders release in certain files (but not all). |
@ryan-holt-1 Yeah, if you're using compile_commands.json, then your configuration should be okay unless you're hitting a bug with our handling of that. For you repro, what do you see in the C/C++ logging (maybe if C_Cpp.loggingLevel is set to "Debug"). Is there a "Failed" or "No IL" message? |
@sean-mcmanus: The only thing that looks suspicious in the logs is this:
I see "Failed to read response from server: 8" as soon as I type the "." or "->". This only happens the first time I try asking for completion in a file. If I try it again, nothing happens. Note that in 0.29.0, I do not see this. Instead, I see:
|
@ryan-holt-1 Yes, you're hitting a crash in cpptools-srv -- could be the same as #5960, which we have a repro for. If you can attach a debugger to cpptools-srv to get a crash call stack, I can determine if it's the same crash or different one. |
Thread 4 "cpptools-srv" received signal SIGSEGV, Segmentation fault. |
@ryan-holt-1 Yes, that is the same crash as #5960 . I'm currently investigating that. The hit count is not severely high, but it could still be our highest hitting crash (and a regression). |
@ryan-holt-1 I filed a bug on VS at https://developercommunity.visualstudio.com/content/problem/1170465/c-intellisense-crashes-from-completion-in-clang-mo.html and also emailed the VC team directly (i.e. the issue is caused by recent updates to our shared IntelliSense parser). I'm not sure how many other users on this thread were hitting that issue versus the other non-crash issue in the recursive includes scenario. |
@sean-mcmanus: Thank you! |
With https://github.com/microsoft/vscode-cpptools/releases/tag/0.30.0-insiders4 we added recursive includes diagnostics when conflicting includePaths are detected, which could help resolve the "No IL" issues. The completion crash is being tracked by #5960 . If there are other issues, please file a new issue. |
@marco-fam The includePath ordering should match what you use to compile your code, so that the correct file can be included. It seems like "${workspaceFolder}/RTEMS/rtems4.11/nios2-rtems4.11/include" and maybe other sysroot-like include paths should only be used for files that are intended to use those. You might also look into setting the C_Cpp.default.systemIncludePath setting or making sure compilerPath or compilerArgs are working as intended. Using C/C++: Log Diagnostics can help check if the includePaths are a being set correctly. |
@ryan-holt-1 The new_object crash is fixed with https://github.com/microsoft/vscode-cpptools/releases/tag/0.30.0-insiders5 . |
always unable to auto complete...
|
@sean-mcmanus: Thanks! Can confirm that everything is working for me now. |
@sean-mcmanus - Unfortunately, insiders5 still has the broken IntelliSense for me. No crashes though. My include path is simply this: Is that incorrect? |
@Hughen You're hitting a different crash. If you can attach a debugger to the cpptools-srv process to get a call stack that would help us identify which crash you're hitting. @adambrickman If you're using a Linux repo, using "${workspaceFolder}/**" unlikely to give good results because it will pick up system headers in cases where workspace headers are required (which 0.30.0-insiders5 has added some diagnostics logging to identify), and also some files require forced includes to be specified (-include in the makefile). You would need to check what the makefile is using to compile the particular file and make sure the includes, defines, forcedInclude, etc. is correct. Our pending Makefile extension is expected to be able to configure these automatically. |
@sean-mcmanus - I think there is something more to it than this, especially since this behavior is new (never had an issue with this prior to 0.30.0). Also, regardless of headers, shouldn't vscode be able to detect local function arguments or variables? Intellisense is totally dead. E.g. int someVariable; |
@adambrickman You're getting the "No IL" in the logging, right? This doesn't repro in a simple project with a single test.cpp file, right? If you get the "No IL" then all IntelliSense functionality like local variable goto definition would break in addition to completion. If the TU is in a non-compileable state due to issues in the headers, then the behavior is non-deterministic so it may have worked correctly in 0.29.0, but that would just have been "lucky". It is still possible you're hitting a real regression bug, but I would need to get some sort of repro. |
@sean-mcmanus - Strange. This is failing in multiple projects (all of which are various versions of linux kernels). The thing I have in common in them is my include path is either blank or "${workspaceFolder}/**". The code-workspace is located in the root of the kernel folder. If I go back to version 0.29.0, IntelliSense starts working again. 0.28.3 works as well, I just tried going back. So does 0.27.1 (that's as far as I've tried, but I'd be happy to regress further if it would be helpful). But once I install 0.30.x, it breaks. |
@adambrickman The usage of "${workspaceFolder}/**" can generate non-deterministic includePath orderings. You can see the orderings we choose via running C/C++ log diagnostics. If you can find a Linux source file that repros the issue with a set of includePath, defines, forcedInclude, etc. that will actually compile, then we could look into fixing that bug, either via looking at the recursive include paths results from C/C++ Log Diagnostics or manually setting the includePaths. I'm not aware of any particular change that could cause this, other than lots of parser changes, mostly in support of new C++20 stuff. The "No IL" means our parser hit an error that wasn't recoverable (and also wasn't crash inducing). |
@adambrickman To explain this further -- the error is most likely occurring in a header file, which may have been "recoverable" in 0.29.0, but then due to undefined behavior in regards to how error handling is done, it could cause it to fail in 0.30.0-insiders, because the parser might be in a state where it can't continue to give additional errors due to previous errors (in the headers, not shown in the opened source file that his hovered over). If we implemented #3873 , then the errors in the header files would most likely make the issue easier to diagnose. |
@sean-mcmanus - Thanks for the explanation. I will have to try to get a consistent repro on a clean system when I get a chance, so it will be easier to investigate what is wrong. It will help cut down on the variables. I'll post back to this thread if that is OK if/when I get some results. |
@adambrickman We found/fixed the root cause -- IntelliSense was incorrectly aborting after any #error occurred (see #6114). It should be fixed in the next update. |
We published an insiders release with the fix for this. Please try it out and let us know if you continue to have issues. |
Type: LanguageService
VSCode auto updated from 0.29.0 to 0.30.0-insiders3 and all Intellisense is now broken (on all .c files). It just says "No suggestions". It cannot find the definition of any variables, functions, etc. Verified that compiler path and include paths are set appropriately for cross compiling.
Going back to 0.29.0 fixes the problem (although it will then immediately try to auto-update to 0.30.0, so I have had to disable auto-update for all my extensions as a result until this problem is fixed).
Project is the linux kernel - just .c and .h files.
Describe the bug
Steps to reproduce
No steps needed - Intellisense simply broke as soon as it updated and I reloaded the editor.
My c_cpp_properties.json:
{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [
"CONFIG_GPIOLIB=y",
"CONFIG_OF_GPIO=y"
],
"compilerPath": "/usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc",
"cStandard": "gnu11",
"cppStandard": "gnu++14",
"intelliSenseMode": "gcc-arm"
}
],
"version": 4
}
Expected behavior
Intellisense to pop up with code completion.
Logs
Finished installing dependencies
cpptools/didChangeCppProperties
terminating child process: 31816
terminating child process: 31817
Attempting to get defaults from compiler in "compilerPath" property: '/usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc'
terminating child process: 31818
Compiler probe command line: /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc -std=gnu11 -Wp,-v -E -dD -x c /dev/null
terminating child process: 31820
Code browsing service initialized
Attempting to get defaults from compiler in "compilerPath" property: '/usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc'
terminating child process: 31822
Compiler probe command line: /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc -std=gnu++14 -Wp,-v -E -dD -x c++ /dev/null
terminating child process: 31825
Folder: /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/lib/gcc/arm-linux-gnueabihf/7.5.0/include/ will be indexed
Folder: /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/lib/gcc/arm-linux-gnueabihf/7.5.0/include-fixed/ will be indexed
Folder: /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/include/ will be indexed
Folder: /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/usr/include/ will be indexed
Folder: /home/devuser/Code/raspberry-pi/linux/ will be indexed
Populate include completion cache.
Discovering files...
Processing folder (recursive): /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/lib/gcc/arm-linux-gnueabihf/7.5.0/include/
Processing folder (recursive): /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/lib/gcc/arm-linux-gnueabihf/7.5.0/include-fixed/
Processing folder (recursive): /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/include/
Processing folder (recursive): /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/usr/include/
cpptools/getSemanticTokens: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c (id: 2)
Processing folder (recursive): /home/devuser/Code/raspberry-pi/linux/
Discovering files: 94090 file(s) processed
0 file(s) removed from database
Done discovering files.
Parsing remaining files...
Parsing: 0 files(s) processed
Done parsing remaining files.
cpptools/getCodeActions: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c (id: 3)
textDocument/didOpen: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c
cpptools/activeDocumentChange: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c
cpptools/textEditorSelectionChange
cpptools/getDocumentSymbols: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c (id: 4)
cpptools/getDocumentSymbols
cpptools/textEditorSelectionChange
cpptools/getFoldingRanges: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c (id: 5)
cpptools/getCodeActions: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c (id: 6)
textDocument/hover: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c (id: 7)
IntelliSense client not available, using Tag Parser for go to definition.
IntelliSense client not available, using Tag Parser for quick info.
using Tag Parser for quick info
textDocument/hover: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c (id: 8)
IntelliSense client not available, using Tag Parser for go to definition.
IntelliSense client not available, using Tag Parser for quick info.
using Tag Parser for quick info
idle loop: reparsing the active document
Checking for syntax errors: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c
sending compilation args for /home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c
include: /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/lib/gcc/arm-linux-gnueabihf/7.5.0/include
include: /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/lib/gcc/arm-linux-gnueabihf/7.5.0/include-fixed
include: /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/include
include: /usr/local/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/usr/include
include: /home/devuser/Code/raspberry-pi/linux/include
include: /home/devuser/Code/raspberry-pi/linux/arch/alpha/include
include: /home/devuser/Code/raspberry-pi/linux/arch/arc/include
include: /home/devuser/Code/raspberry-pi/linux/arch/arm/include
include: /home/devuser/Code/raspberry-pi/linux/arch/x86/include
include: /home/devuser/Code/raspberry-pi/linux/arch/s390/include
include: /home/devuser/Code/raspberry-pi/linux/arch/hexagon/include
include: /home/devuser/Code/raspberry-pi/linux/arch/arm/mach-ebsa110/include
define: STDC=1
define: STDC_VERSION=201112L
define: STDC_UTF_16=1
define: STDC_UTF_32=1
define: STDC_HOSTED=1
define: GNUC=7
define: GNUC_MINOR=5
define: GNUC_PATCHLEVEL=0
define: VERSION="7.5.0"
define: LINARO_RELEASE=201912
define: LINARO_SPIN=0
define: __ATOMIC_RELAXED=0
define: __ATOMIC_SEQ_CST=5
define: __ATOMIC_ACQUIRE=2
define: __ATOMIC_RELEASE=3
define: __ATOMIC_ACQ_REL=4
define: __ATOMIC_CONSUME=1
define: FINITE_MATH_ONLY=0
define: SIZEOF_INT=4
define: SIZEOF_LONG=4
define: SIZEOF_LONG_LONG=8
define: SIZEOF_SHORT=2
define: SIZEOF_FLOAT=4
define: SIZEOF_DOUBLE=8
define: SIZEOF_LONG_DOUBLE=8
define: SIZEOF_SIZE_T=4
define: CHAR_BIT=8
define: BIGGEST_ALIGNMENT=8
define: ORDER_LITTLE_ENDIAN=1234
define: ORDER_BIG_ENDIAN=4321
define: ORDER_PDP_ENDIAN=3412
define: BYTE_ORDER=ORDER_LITTLE_ENDIAN
define: FLOAT_WORD_ORDER=ORDER_LITTLE_ENDIAN
define: SIZEOF_POINTER=4
define: SIZE_TYPE=unsigned int
define: PTRDIFF_TYPE=int
define: WCHAR_TYPE=unsigned int
define: WINT_TYPE=unsigned int
define: INTMAX_TYPE=long long int
define: UINTMAX_TYPE=long long unsigned int
define: CHAR16_TYPE=short unsigned int
define: CHAR32_TYPE=unsigned int
define: SIG_ATOMIC_TYPE=int
define: INT8_TYPE=signed char
define: INT16_TYPE=short int
define: INT32_TYPE=int
define: INT64_TYPE=long long int
define: UINT8_TYPE=unsigned char
define: UINT16_TYPE=short unsigned int
define: UINT32_TYPE=unsigned int
define: UINT64_TYPE=long long unsigned int
define: INT_LEAST8_TYPE=signed char
define: INT_LEAST16_TYPE=short int
define: INT_LEAST32_TYPE=int
define: INT_LEAST64_TYPE=long long int
define: UINT_LEAST8_TYPE=unsigned char
define: UINT_LEAST16_TYPE=short unsigned int
define: UINT_LEAST32_TYPE=unsigned int
define: UINT_LEAST64_TYPE=long long unsigned int
define: INT_FAST8_TYPE=signed char
define: INT_FAST16_TYPE=int
define: INT_FAST32_TYPE=int
define: INT_FAST64_TYPE=long long int
define: UINT_FAST8_TYPE=unsigned char
define: UINT_FAST16_TYPE=unsigned int
define: UINT_FAST32_TYPE=unsigned int
define: UINT_FAST64_TYPE=long long unsigned int
define: INTPTR_TYPE=int
define: UINTPTR_TYPE=unsigned int
define: __GXX_ABI_VERSION=1011
define: SCHAR_MAX=0x7f
define: SHRT_MAX=0x7fff
define: INT_MAX=0x7fffffff
define: LONG_MAX=0x7fffffffL
define: LONG_LONG_MAX=0x7fffffffffffffffLL
define: WCHAR_MAX=0xffffffffU
define: WCHAR_MIN=0U
define: WINT_MAX=0xffffffffU
define: WINT_MIN=0U
define: PTRDIFF_MAX=0x7fffffff
define: SIZE_MAX=0xffffffffU
define: SCHAR_WIDTH=8
define: SHRT_WIDTH=16
define: INT_WIDTH=32
define: LONG_WIDTH=32
define: LONG_LONG_WIDTH=64
define: WCHAR_WIDTH=32
define: WINT_WIDTH=32
define: PTRDIFF_WIDTH=32
define: SIZE_WIDTH=32
define: INTMAX_MAX=0x7fffffffffffffffLL
define: __INTMAX_C(c)=c ## LL
define: UINTMAX_MAX=0xffffffffffffffffULL
define: __UINTMAX_C(c)=c ## ULL
define: INTMAX_WIDTH=64
define: SIG_ATOMIC_MAX=0x7fffffff
define: SIG_ATOMIC_MIN=(-SIG_ATOMIC_MAX - 1)
define: SIG_ATOMIC_WIDTH=32
define: INT8_MAX=0x7f
define: INT16_MAX=0x7fff
define: INT32_MAX=0x7fffffff
define: INT64_MAX=0x7fffffffffffffffLL
define: UINT8_MAX=0xff
define: UINT16_MAX=0xffff
define: UINT32_MAX=0xffffffffU
define: UINT64_MAX=0xffffffffffffffffULL
define: INT_LEAST8_MAX=0x7f
define: __INT8_C(c)=c
define: INT_LEAST8_WIDTH=8
define: INT_LEAST16_MAX=0x7fff
define: __INT16_C(c)=c
define: INT_LEAST16_WIDTH=16
define: INT_LEAST32_MAX=0x7fffffff
define: __INT32_C(c)=c
define: INT_LEAST32_WIDTH=32
define: INT_LEAST64_MAX=0x7fffffffffffffffLL
define: __INT64_C(c)=c ## LL
define: INT_LEAST64_WIDTH=64
define: UINT_LEAST8_MAX=0xff
define: __UINT8_C(c)=c
define: UINT_LEAST16_MAX=0xffff
define: __UINT16_C(c)=c
define: UINT_LEAST32_MAX=0xffffffffU
define: __UINT32_C(c)=c ## U
define: UINT_LEAST64_MAX=0xffffffffffffffffULL
define: __UINT64_C(c)=c ## ULL
define: INT_FAST8_MAX=0x7f
define: INT_FAST8_WIDTH=8
define: INT_FAST16_MAX=0x7fffffff
define: INT_FAST16_WIDTH=32
define: INT_FAST32_MAX=0x7fffffff
define: INT_FAST32_WIDTH=32
define: INT_FAST64_MAX=0x7fffffffffffffffLL
define: INT_FAST64_WIDTH=64
define: UINT_FAST8_MAX=0xff
define: UINT_FAST16_MAX=0xffffffffU
define: UINT_FAST32_MAX=0xffffffffU
define: UINT_FAST64_MAX=0xffffffffffffffffULL
define: INTPTR_MAX=0x7fffffff
define: INTPTR_WIDTH=32
define: UINTPTR_MAX=0xffffffffU
define: __GCC_IEC_559=2
define: __GCC_IEC_559_COMPLEX=2
define: FLT_EVAL_METHOD=0
define: FLT_EVAL_METHOD_TS_18661_3=0
define: DEC_EVAL_METHOD=2
define: FLT_RADIX=2
define: FLT_MANT_DIG=24
define: FLT_DIG=6
define: FLT_MIN_EXP=(-125)
define: FLT_MIN_10_EXP=(-37)
define: FLT_MAX_EXP=128
define: FLT_MAX_10_EXP=38
define: FLT_DECIMAL_DIG=9
define: FLT_MAX=3.4028234663852886e+38F
define: FLT_MIN=1.1754943508222875e-38F
define: FLT_EPSILON=1.1920928955078125e-7F
define: FLT_DENORM_MIN=1.4012984643248171e-45F
define: FLT_HAS_DENORM=1
define: FLT_HAS_INFINITY=1
define: FLT_HAS_QUIET_NAN=1
define: DBL_MANT_DIG=53
define: DBL_DIG=15
define: DBL_MIN_EXP=(-1021)
define: DBL_MIN_10_EXP=(-307)
define: DBL_MAX_EXP=1024
define: DBL_MAX_10_EXP=308
define: DBL_DECIMAL_DIG=17
define: DBL_MAX=((double)1.7976931348623157e+308L)
define: DBL_MIN=((double)2.2250738585072014e-308L)
define: DBL_EPSILON=((double)2.2204460492503131e-16L)
define: DBL_DENORM_MIN=((double)4.9406564584124654e-324L)
define: DBL_HAS_DENORM=1
define: DBL_HAS_INFINITY=1
define: DBL_HAS_QUIET_NAN=1
define: LDBL_MANT_DIG=53
define: LDBL_DIG=15
define: LDBL_MIN_EXP=(-1021)
define: LDBL_MIN_10_EXP=(-307)
define: LDBL_MAX_EXP=1024
define: LDBL_MAX_10_EXP=308
define: DECIMAL_DIG=17
define: LDBL_DECIMAL_DIG=17
define: LDBL_MAX=1.7976931348623157e+308L
define: LDBL_MIN=2.2250738585072014e-308L
define: LDBL_EPSILON=2.2204460492503131e-16L
define: LDBL_DENORM_MIN=4.9406564584124654e-324L
define: LDBL_HAS_DENORM=1
define: LDBL_HAS_INFINITY=1
define: LDBL_HAS_QUIET_NAN=1
define: FLT32_MANT_DIG=24
define: FLT32_DIG=6
define: FLT32_MIN_EXP=(-125)
define: FLT32_MIN_10_EXP=(-37)
define: FLT32_MAX_EXP=128
define: FLT32_MAX_10_EXP=38
define: FLT32_DECIMAL_DIG=9
define: FLT32_MAX=3.4028234663852886e+38F32
define: FLT32_MIN=1.1754943508222875e-38F32
define: FLT32_EPSILON=1.1920928955078125e-7F32
define: FLT32_DENORM_MIN=1.4012984643248171e-45F32
define: FLT32_HAS_DENORM=1
define: FLT32_HAS_INFINITY=1
define: FLT32_HAS_QUIET_NAN=1
define: FLT64_MANT_DIG=53
define: FLT64_DIG=15
define: FLT64_MIN_EXP=(-1021)
define: FLT64_MIN_10_EXP=(-307)
define: FLT64_MAX_EXP=1024
define: FLT64_MAX_10_EXP=308
define: FLT64_DECIMAL_DIG=17
define: FLT64_MAX=1.7976931348623157e+308F64
define: FLT64_MIN=2.2250738585072014e-308F64
define: FLT64_EPSILON=2.2204460492503131e-16F64
define: FLT64_DENORM_MIN=4.9406564584124654e-324F64
define: FLT64_HAS_DENORM=1
define: FLT64_HAS_INFINITY=1
define: FLT64_HAS_QUIET_NAN=1
define: FLT32X_MANT_DIG=53
define: FLT32X_DIG=15
define: FLT32X_MIN_EXP=(-1021)
define: FLT32X_MIN_10_EXP=(-307)
define: FLT32X_MAX_EXP=1024
define: FLT32X_MAX_10_EXP=308
define: FLT32X_DECIMAL_DIG=17
define: FLT32X_MAX=1.7976931348623157e+308F32x
define: FLT32X_MIN=2.2250738585072014e-308F32x
define: FLT32X_EPSILON=2.2204460492503131e-16F32x
define: FLT32X_DENORM_MIN=4.9406564584124654e-324F32x
define: FLT32X_HAS_DENORM=1
define: FLT32X_HAS_INFINITY=1
define: FLT32X_HAS_QUIET_NAN=1
define: DEC32_MANT_DIG=7
define: DEC32_MIN_EXP=(-94)
define: DEC32_MAX_EXP=97
define: DEC32_MIN=1E-95DF
define: DEC32_MAX=9.999999E96DF
define: DEC32_EPSILON=1E-6DF
define: DEC32_SUBNORMAL_MIN=0.000001E-95DF
define: DEC64_MANT_DIG=16
define: DEC64_MIN_EXP=(-382)
define: DEC64_MAX_EXP=385
define: DEC64_MIN=1E-383DD
define: DEC64_MAX=9.999999999999999E384DD
define: DEC64_EPSILON=1E-15DD
define: DEC64_SUBNORMAL_MIN=0.000000000000001E-383DD
define: DEC128_MANT_DIG=34
define: DEC128_MIN_EXP=(-6142)
define: DEC128_MAX_EXP=6145
define: DEC128_MIN=1E-6143DL
define: DEC128_MAX=9.999999999999999999999999999999999E6144DL
define: DEC128_EPSILON=1E-33DL
define: DEC128_SUBNORMAL_MIN=0.000000000000000000000000000000001E-6143DL
define: SFRACT_FBIT=7
define: SFRACT_IBIT=0
define: SFRACT_MIN=(-0.5HR-0.5HR)
define: SFRACT_MAX=0X7FP-7HR
define: SFRACT_EPSILON=0x1P-7HR
define: USFRACT_FBIT=8
define: USFRACT_IBIT=0
define: USFRACT_MIN=0.0UHR
define: USFRACT_MAX=0XFFP-8UHR
define: USFRACT_EPSILON=0x1P-8UHR
define: FRACT_FBIT=15
define: FRACT_IBIT=0
define: FRACT_MIN=(-0.5R-0.5R)
define: FRACT_MAX=0X7FFFP-15R
define: FRACT_EPSILON=0x1P-15R
define: UFRACT_FBIT=16
define: UFRACT_IBIT=0
define: UFRACT_MIN=0.0UR
define: UFRACT_MAX=0XFFFFP-16UR
define: UFRACT_EPSILON=0x1P-16UR
define: LFRACT_FBIT=31
define: LFRACT_IBIT=0
define: LFRACT_MIN=(-0.5LR-0.5LR)
define: LFRACT_MAX=0X7FFFFFFFP-31LR
define: LFRACT_EPSILON=0x1P-31LR
define: ULFRACT_FBIT=32
define: ULFRACT_IBIT=0
define: ULFRACT_MIN=0.0ULR
define: ULFRACT_MAX=0XFFFFFFFFP-32ULR
define: ULFRACT_EPSILON=0x1P-32ULR
define: LLFRACT_FBIT=63
define: LLFRACT_IBIT=0
define: LLFRACT_MIN=(-0.5LLR-0.5LLR)
define: LLFRACT_MAX=0X7FFFFFFFFFFFFFFFP-63LLR
define: LLFRACT_EPSILON=0x1P-63LLR
define: ULLFRACT_FBIT=64
define: ULLFRACT_IBIT=0
define: ULLFRACT_MIN=0.0ULLR
define: ULLFRACT_MAX=0XFFFFFFFFFFFFFFFFP-64ULLR
define: ULLFRACT_EPSILON=0x1P-64ULLR
define: SACCUM_FBIT=7
define: SACCUM_IBIT=8
define: SACCUM_MIN=(-0X1P7HK-0X1P7HK)
define: SACCUM_MAX=0X7FFFP-7HK
define: SACCUM_EPSILON=0x1P-7HK
define: USACCUM_FBIT=8
define: USACCUM_IBIT=8
define: USACCUM_MIN=0.0UHK
define: USACCUM_MAX=0XFFFFP-8UHK
define: USACCUM_EPSILON=0x1P-8UHK
define: ACCUM_FBIT=15
define: ACCUM_IBIT=16
define: ACCUM_MIN=(-0X1P15K-0X1P15K)
define: ACCUM_MAX=0X7FFFFFFFP-15K
define: ACCUM_EPSILON=0x1P-15K
define: UACCUM_FBIT=16
define: UACCUM_IBIT=16
define: UACCUM_MIN=0.0UK
define: UACCUM_MAX=0XFFFFFFFFP-16UK
define: UACCUM_EPSILON=0x1P-16UK
define: LACCUM_FBIT=31
define: LACCUM_IBIT=32
define: LACCUM_MIN=(-0X1P31LK-0X1P31LK)
define: LACCUM_MAX=0X7FFFFFFFFFFFFFFFP-31LK
define: LACCUM_EPSILON=0x1P-31LK
define: ULACCUM_FBIT=32
define: ULACCUM_IBIT=32
define: ULACCUM_MIN=0.0ULK
define: ULACCUM_MAX=0XFFFFFFFFFFFFFFFFP-32ULK
define: ULACCUM_EPSILON=0x1P-32ULK
define: LLACCUM_FBIT=31
define: LLACCUM_IBIT=32
define: LLACCUM_MIN=(-0X1P31LLK-0X1P31LLK)
define: LLACCUM_MAX=0X7FFFFFFFFFFFFFFFP-31LLK
define: LLACCUM_EPSILON=0x1P-31LLK
define: ULLACCUM_FBIT=32
define: ULLACCUM_IBIT=32
define: ULLACCUM_MIN=0.0ULLK
define: ULLACCUM_MAX=0XFFFFFFFFFFFFFFFFP-32ULLK
define: ULLACCUM_EPSILON=0x1P-32ULLK
define: QQ_FBIT=7
define: QQ_IBIT=0
define: HQ_FBIT=15
define: HQ_IBIT=0
define: SQ_FBIT=31
define: SQ_IBIT=0
define: DQ_FBIT=63
define: DQ_IBIT=0
define: TQ_FBIT=127
define: TQ_IBIT=0
define: UQQ_FBIT=8
define: UQQ_IBIT=0
define: UHQ_FBIT=16
define: UHQ_IBIT=0
define: USQ_FBIT=32
define: USQ_IBIT=0
define: UDQ_FBIT=64
define: UDQ_IBIT=0
define: UTQ_FBIT=128
define: UTQ_IBIT=0
define: HA_FBIT=7
define: HA_IBIT=8
define: SA_FBIT=15
define: SA_IBIT=16
define: DA_FBIT=31
define: DA_IBIT=32
define: TA_FBIT=63
define: TA_IBIT=64
define: UHA_FBIT=8
define: UHA_IBIT=8
define: USA_FBIT=16
define: USA_IBIT=16
define: UDA_FBIT=32
define: UDA_IBIT=32
define: UTA_FBIT=64
define: UTA_IBIT=64
define: REGISTER_PREFIX=
define: USER_LABEL_PREFIX=
define: GNUC_STDC_INLINE=1
define: NO_INLINE=1
define: CHAR_UNSIGNED=1
define: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1=1
define: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2=1
define: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4=1
define: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8=1
define: __GCC_ATOMIC_BOOL_LOCK_FREE=2
define: __GCC_ATOMIC_CHAR_LOCK_FREE=2
define: __GCC_ATOMIC_CHAR16_T_LOCK_FREE=2
define: __GCC_ATOMIC_CHAR32_T_LOCK_FREE=2
define: __GCC_ATOMIC_WCHAR_T_LOCK_FREE=2
define: __GCC_ATOMIC_SHORT_LOCK_FREE=2
define: __GCC_ATOMIC_INT_LOCK_FREE=2
define: __GCC_ATOMIC_LONG_LOCK_FREE=2
define: __GCC_ATOMIC_LLONG_LOCK_FREE=2
define: __GCC_ATOMIC_TEST_AND_SET_TRUEVAL=1
define: __GCC_ATOMIC_POINTER_LOCK_FREE=2
define: __PRAGMA_REDEFINE_EXTNAME=1
define: SIZEOF_WCHAR_T=4
define: SIZEOF_WINT_T=4
define: SIZEOF_PTRDIFF_T=4
define: __ARM_FEATURE_DSP=1
define: __ARM_FEATURE_QBIT=1
define: __ARM_FEATURE_SAT=1
define: __ARM_FEATURE_UNALIGNED=1
define: __ARM_32BIT_STATE=1
define: __ARM_FEATURE_LDREX=15
define: __ARM_FEATURE_CLZ=1
define: __ARM_FEATURE_SIMD32=1
define: __ARM_SIZEOF_MINIMAL_ENUM=4
define: __ARM_SIZEOF_WCHAR_T=4
define: __ARM_ARCH_PROFILE=65
define: arm=1
define: __ARM_ARCH=7
define: __ARM_ARCH_ISA_ARM=1
define: APCS_32=1
define: thumb=1
define: thumb2=1
define: THUMBEL=1
define: __ARM_ARCH_ISA_THUMB=2
define: ARMEL=1
define: VFP_FP=1
define: __ARM_FP=12
define: THUMB_INTERWORK=1
define: ARM_ARCH_7A=1
define: __ARM_PCS_VFP=1
define: ARM_EABI=1
define: ARM_ASM_SYNTAX_UNIFIED=1
define: __GXX_TYPEINFO_EQUALITY_INLINE=0
define: gnu_linux=1
define: __linux=1
define: linux=1
define: linux=1
define: __unix=1
define: unix=1
define: unix=1
define: ELF=1
define: _STDC_PREDEF_H=1
define: STDC_IEC_559=1
define: STDC_IEC_559_COMPLEX=1
define: STDC_ISO_10646=201505L
define: STDC_NO_THREADS=1
define: CONFIG_GPIOLIB=y
define: CONFIG_OF_GPIO=y
other: --gcc
other: --gnu_version=70500
stdver: c11
intelliSenseMode: gcc-arm
Queueing IntelliSense update for files in translation unit of: /home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c
cpptools/finishUpdateSquiggles
Error squiggle count: 0
terminating child process: 31976
Update IntelliSense time (sec): 2.59
cpptools/getSemanticTokens: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c (id: 9)
textDocument/completion: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c (id: 10)
auto_complete::handle_completion: file:///home/devuser/Code/raspberry-pi/linux/drivers/misc/rbsw-relay/rb-relay-52pi-ep0099.c (201:8)
Offering completion
Screenshots
See attached.
Additional context
The text was updated successfully, but these errors were encountered: