Have to switch between VS Intellisense and Clang I/S Constantly for it to work

Sysprogs forums Forums VisualGDB Have to switch between VS Intellisense and Clang I/S Constantly for it to work

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #6942
    dmitryponv
    Participant

    Good afternoon,

    I posted on this issue before, but I have a slightly different approach to the problem now.

    I have Visual Studio 2013 with VisualGDB, I am importing my project through CMake. It compiles and debugs without issues.

    I included all project directories in Project Properties->NMake->Include Search Path

    However, my problem is that it simply won’t recognize classes even defined in the included header files.

    Here’s the catch, when I switch from Clang Intellisense and Visual Studio native built-in intellisense (or back) it starts to recognize those classes from included headers, then after some programming, it stops being able to recognize them again, and I have to continue switching between the two for intellisense to work.
    It doesn’t stop recognizing all of them, just the ones I haven’t opened or looked for yet.
    It seems almost like the search engine is broken.

    Likewise, I cannot use Find All References, View Call Hierarchy, or find anything on the Code Map, etc.

    Another issue I have with CLang intellisense is that I sometimes need to right-click->Go To Definition or hit F12 about 5 times in order for it to search for the definition.
    I don’t seem to have this problem with VS Intellisense.

    This could be a VS 2013 problem or a VisualGDB problem. I’m not sure, but I know that with my Windows C++ projects I don’t have any of these issues.

    The SDF file in the project is around 25mb,

    This is a rather large annoyance that results in a bad programming experience for me, but unfortunately, I have no idea how to fix it.
    Hopefully you can give me some insight on how to approach this issue.

    Thanks,

    • This topic was modified 8 years, 7 months ago by dmitryponv.
    • This topic was modified 8 years, 7 months ago by dmitryponv.
    #6962
    support
    Keymaster

    Hi,

    This looks like a VisualGDB bug. Switching between the IntelliSense engines resets everything, so if the IntelliSense got stuck in some strange state, this would certainly reset it. However, we would need to know more in order to pinpoint it.

    Can you give an example of what happens when a class stops being recognized? Ctrl-Space lists other classes, but not this class? It stops reacting to changes? IntelliSense stops working completely? Are there any messages in the Clang IntelliSense diagnostics console?

    #6982
    wademaxfield
    Participant

    I have had a similar experience.

    I basically had to stop using CLANG.  I also have MSVS 2013.

    Also, when using flavors, I have not yet figured out how to make adding intellisense search directories stick around when adding them to a flavor.

    #7022
    dmitryponv
    Participant

    I wanted to follow up on this issue

    intellisense and autocomplete (Visual Studio, or CLang) don’t work at all.

    1. When using auto variables,
    2. When using nested classes and calling objects using . or ->
    3. When using templatized classes of any kind

    It seems that intellisense is only able to pick up immediate class names, if that class contains objects that are defined in it’s headers, I/S won’t be able to recognize them

    All bets are off when using the auto definition, this basically makes Visual Studio 2013 as helpful as Notepad++

    VisualGDB + Visual Studio are still by far the best and the most problem free debugging environment I used, and it’s way less problematic than Eclipse.
    However, Eclipse has no problems recognizing objects embedded in a chain of classes (class1->class2.class3…etc) or using auto

    I’m hoping that someday VisualGDB will be better than Eclipse in autocomplete and intellisense,
    Thanks,

    • This reply was modified 8 years, 7 months ago by dmitryponv.
    #7027
    support
    Keymaster

    Hi,

    Thanks for your feedback. We have extensively tested our IntelliSense engine with the auto variables, nested classes and template classes and could not reproduce the problems you are reporting. Furthermore, many of our users reported that they are successfully using the Clang IntelliSense engine with complex C++11 code. Hence it looks like the problem on your side is caused by some configuration issue (e.g. incompatible CFLAGS, missing include directory, or some very specific statement that breaks IntelliSense). We will be happy to help you solve it, but we would need more information on reproducing it.

    Could you reproduce it on a stand-alone project and send it to us? If not, could you send us a screenshot of the problem along with the CFLAGS/CXXFLAGS from the project view in the Clang IntelliSense Diagnostics console?

Viewing 5 posts - 1 through 5 (of 5 total)
  • You must be logged in to reply to this topic.