Replies: 1 comment 6 replies
-
@jastich What is the initial IntelliSense mode before it falls back to linux-clang-x64? Have you tried windows-clang-x86? We have a fix pending for 1.14.2 for handling the 32-bitness of the ppc32 target, but we're not sure if that resolve this issue or not. If you set "C_Cpp.loggingLevel" to debug, that logging related to the IntelliSense modes might be helpful. |
Beta Was this translation helpful? Give feedback.
6 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Background: We are using clang to cross compile for a PowerPC target running VxWorks. Because we also compile the same code files for x86 Linux, our codebase makes wide use of
#ifdef __linux__
statements to supply alternative implementations for Linux in some places. We are using the C/C++ extension with CMake Tools as the configuration provider.Problem: IntelliSense is choosing the code within the
#ifdef __linux__
code blocks when it should be selecting the code for the PowerPC target instead.IntelliSense is finding our PPC compiler correctly, but falls back to using
linux-clang-x64
IntelliSense mode. I suspect this is causing the define__linux__ = 1
and IntelliSense is choosing the wrong code when it should be indexing for our PowerPC target.I inspected the list of IntelliSense providers, but most of them target x86, x86-64, or ARM with various operating systems. None of these seem to be generic. How can we avoid the definitions supplied by the fallback IntelliSense mode?
From C/C++ Diagnostics of a particular file:
From C/C++ log:
Compiler query command line: /...redacted_path.../bin/clang++ -O3 -fno-builtin -fno-strict-aliasing -fsigned-char -mlongcall -fasm -fno-asynchronous-unwind-tables -fno-unwind-tables -mcpu=8548 -msecure-plt -Wall -nostdlibinc -nostdinc++ --target=ppc32 -O2 -mlong-double-64 -mhard-float -std=c++14 -Wp,-v -fno-blocks -E -dM -x c++ /dev/null
Output of running the compiler query command line above:
Beta Was this translation helpful? Give feedback.
All reactions