Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
User name:
Password:
Save Password
Forgot your password?

 All Forums
 Visual Assist
 Technical Support
 Class declaration not seen
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

Filousov
Junior Member

Czech Republic
10 Posts

Posted - Feb 23 2017 :  06:08:06 AM  Show Profile  Reply with Quote
As seen on image those are choices which are given to me when I press ALT + G on Service keyword.



In fact it should jump directly to class declaration:

class Service : virtual public IService, public std::enable_shared_from_this<Service>


None of 3 choices given are correct class Service to which it should jump.

This is on fully build-able code after I have cleared VSAssist cache and rebuilt its symbol database.

Edited by - Filousov on Feb 23 2017 06:18:42 AM

Filousov
Junior Member

Czech Republic
10 Posts

Posted - Feb 23 2017 :  07:54:32 AM  Show Profile  Reply with Quote
VAssist info:
License: [email protected] (11-user license) Support ends 2017.07.18
VA_X.dll file version 10.9.2118.0 built 2016.12.12
DevEnv.exe version 12.0.31101.0 Premium
msenv.dll version 12.0.31101.0
Comctl32.dll version 6.10.7601.18837
Windows 7 6.1 Build 7601 Service Pack 1
12 processors (x86-64, WOW64)
Language info: 1250, 0x405

Platform: Project defined
Stable Includes:
C:\Program Files (x86)\Windows Kits\8.1\Include\winrt;
C:\Program Files (x86)\Windows Kits\8.1\Include\shared;
C:\Program Files (x86)\Windows Kits\8.1\Include\um;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include;
C:\Program Files (x86)\Visual Leak Detector\include;

Other Includes:

Stable Source Directories:
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\crt\src;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\src\atl;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\src\mfcm;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\src\mfc;

Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18724 Posts

Posted - Feb 23 2017 :  2:58:01 PM  Show Profile  Reply with Quote
With a simple test case, this is working correctly for me here.

Can you please use Alt-Shift-S to show VA's Find Symbol dialog, and then search for ".service." without the double quotes, but with the dots. This does a full word search. Does VA know that there is a symbol with the full name "service" in your solution? You should see the class and its members?

If you look in the file where this class is declared, is the class shown in the Alt-M list and VA Outline correctly? I am trying to figure out if this is an Alt-g problem, or a VA does not know about the class problem.

zen is the art of being at one with the two'ness
Go to Top of Page

Filousov
Junior Member

Czech Republic
10 Posts

Posted - Feb 24 2017 :  03:59:29 AM  Show Profile  Reply with Quote
Doing Alt + Shift + S - this shows the Service is here - the correct one is listed under:
NetworkCanvas.Service (NetworkCanvas being namespace)

There are 2 other Service classes without namespace which are listed and which it shows when I press ALT + G in the list.
It looks like VAssist is not correctly including the namespaces inserted?
The NetworkCanvas namespace is inserted by standard: using namespace NetworkCanvas; further above in the file.

If you look in the file where this class is declared, is the class shown in the Alt-M list and VA Outline correctly? Yes, the class is correctly shown.




Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18724 Posts

Posted - Feb 24 2017 :  10:12:24 AM  Show Profile  Reply with Quote
I see now, and I am seeing the same problem here. Unfortunately this is currently a known bug with duplicate class names, where one class is in a namespace and one isn't, with using namespace:

case=27398

Alt-g on the function name may be more useful for now, or using the Find Symbol dialog to help you locate the correct class, since the namespace, or lack of namespace, will be clear here.

zen is the art of being at one with the two'ness
Go to Top of Page

Filousov
Junior Member

Czech Republic
10 Posts

Posted - Mar 21 2017 :  05:58:46 AM  Show Profile  Reply with Quote
When can this be expected to be fixed?
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18724 Posts

Posted - Mar 21 2017 :  09:14:40 AM  Show Profile  Reply with Quote
Unfortunately I don't currently have an estimate on this, but it is in the list of things to be fixed, and we are aware of it and keeping an eye on it. Have you tried the Find Symbol dialog, to see if this helps at all?

zen is the art of being at one with the two'ness
Go to Top of Page

Filousov
Junior Member

Czech Republic
10 Posts

Posted - Mar 21 2017 :  09:41:02 AM  Show Profile  Reply with Quote
This is very unpractical solution with Find Symbol dialog. Better to jump to header from include.

What I and my colleagues from Ricardo (we have like 10 licenses) are interested in is a functional inteli-sense navigation tool at least when the code is 100% compile-able. That's why I'm spending my company valued time to report those bugs to you in hope that it can be fixed and both sides can benefit from it!

I could report more of those buggy behaviors in future if I find that this is worth-wile spent time - e.g. bugs are fixed.

Edited by - Filousov on Mar 21 2017 09:52:42 AM
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18724 Posts

Posted - Mar 21 2017 :  4:24:41 PM  Show Profile  Reply with Quote
Apologies, a bad suggestion.

Do the IDE commands:

Right click menu -> Go To Definition
Right click menu -> Go To Declaration

work better for you in this situation? We do value and appreciate all bug fixes, and if you glance at the release notes you will see that we include plenty of bug fixes in each and every release. Some bugs are faster and easier to fix than others, which is part of what is considered when deciding the order to fix bugs in.

Sometimes I am able to provide useful workarounds for problems and bug reports, not always, but I do when I can.

zen is the art of being at one with the two'ness
Go to Top of Page

Filousov
Junior Member

Czech Republic
10 Posts

Posted - Mar 22 2017 :  07:33:45 AM  Show Profile  Reply with Quote
Yes, it's completely understandable. I know that the most core bug fixes are hardest.

But when core things work - namespaces and methods are in C++ since ever - it makes good impression for users. Like really adding the value of functional tool in rudimentary cases. And that's why we buy Visual Assist since we know that Visual studio inteli-sense doesn't work.
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18724 Posts

Posted - Mar 23 2017 :  10:15:38 AM  Show Profile  Reply with Quote
We are aware that this is an important issue, and we are working to improve our parser, and how it handles more complex C++ code. Sometimes the IDE intellisense parser is able to be more helpful than VA's parser, while at other times our parser is more helpful.

Not a very helpful answer, since it is very vague, but jumping between the two parsers often helps when you run into code that one or the other struggles with.

zen is the art of being at one with the two'ness
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000