Fwiw, the new extension only supports vs2017, so you may need to upgrade. If you can’t upgrade, set your project compile options to C7 Compatible Debug Info (/Z7). That will also fix it On Thu, Sep 6, 2018 at 6:41 AM Hans Wennborg <h...@chromium.org> wrote:
> This is the problem described in > https://bugs.llvm.org/show_bug.cgi?id=36140 > > Have you tried using the new VS extension? > > https://marketplace.visualstudio.com/items?itemName=LLVMExtensions.llvm-toolchain > It should not have this problem. > > - Hans > > On Mon, Sep 3, 2018 at 12:34 PM, Aleksei via cfe-users > <cfe-users@lists.llvm.org> wrote: > > Hello everyone, > > > > > > > > I don’t know if I’ve found a bug in clang-cl using Visual Studio 2015, or > > it’s a quite normal behavior… It would be nice if someone clarify it and > > (better) fix something in clang-cl, because the current behavior is IMHO > > very confusing. > > > > > > > > Background: Visual Studio 2015, version 14.0.25431.01 Update 3, LLVM > version > > 6.0.1 for win64 > > > > > > > > So, the problem is MSVC (under some condition) would always require to > > rebuild a project that has to be built with LLVM-vs2014 toolset, even if > > it’d just finished last rebuild. > > > > > > > > The root cause of it in the absence of a file, that is specified under > > “Configuration Properties / C/C++ / Output Files / Program Database File > > Name” (typically, it’s filled with macro > > “$(IntDir)vc$(PlatformToolsetVersion).pdb” that expands to something > similar > > to “x64\Debug\vc140.pdb”). I might be wrong in general case, but in my > case > > this file is not generated by clang-cl at all during build process, it’s > > generated only by VC’s native compiler. So, should one delete it > > intentionally during manual cleanup or by an accident, MSVC would start > to > > always require a full project rebuild before each run/debug. > > > > > > > > It’s very easy to reproduce the problem: create a new Win32 console > project > > in MSVC, then immediately change the toolset used to build the project to > > LLVM-vs2015 and then build the project (don’t build the project with > native > > compiler before this step). Then run it and notice that MSVC would > require > > the project to be rebuild. > > > > Now, if one to switch back the toolset to VC’s native, build the project > (to > > produce corresponding .pdb file), then switch the toolset to LLVM again > and > > then build it and after that run it – MSVC would start the program > > immediately. > > > > > > > > If the .pdb file is not required to run/debug a project, I guess it > would be > > much better if clang-cl to emit some kind of warning/information during > > compilation about that fact. I’ve just wasted about 3-4 hours to find out > > why VC requires project rebuilding all the time… > > > > > > > > Thanks. > > > > > > > > Sincerely, > > > > Aleksei > > > > > > > > > > > > > > _______________________________________________ > > cfe-users mailing list > > cfe-users@lists.llvm.org > > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users > > >
_______________________________________________ cfe-users mailing list cfe-users@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users