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
 Arrays parsing in C++
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

maxim2000
Ketchup Master

68 Posts

Posted - Apr 08 2010 :  09:29:07 AM  Show Profile  Reply with Quote
VA parses arrays of class objects incorrectly.

1) C++ object "Array" has neither operator . nor operator ->


2) listbox should contain members of std::map


3) listbox should contain members of RECT


Tested on VA1814/VC6/WinXpSp2
The behaviour in VS2005 is a little bit different but also wrong.

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - Apr 09 2010 :  5:58:57 PM  Show Profile  Reply with Quote
Point 1: I did not put in a bug report for this, since you do not see this normally, so won't "obstruct" your work. Thank you for pointing this out, though.

Point 2: I have put in a bug report for this:

case=42159

VA does not seem to support arrays defined by typedefs.

Point 3: I think this is

case=24414
Go to Top of Page

maxim2000
Ketchup Master

68 Posts

Posted - Apr 14 2010 :  10:18:36 AM  Show Profile  Reply with Quote
Point 1: I can forget pointing brackets and use dot by mistake. In this case VA supports my mistake showing listbox with std::map members. But I'm also not sure whether this is a serious bug or a bad feature :)

Point 2: I see the same effect even in case of declaration without typedefs:
std::map<LPCSTR, RECT> namedrects[3];

I don't know what is the bug behind case=24414 but anyway I hope all these 3 points are related to one bug :)
Go to Top of Page

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - Apr 15 2010 :  4:00:24 PM  Show Profile  Reply with Quote
Point 1: maybe a bad feature :)

Point 2: I am seeing this with VC6 SP6 and VA 1819:


which seems to be the good list (I get the same list when type std::map::|). I've created a new win32 test project. Do you see a different list in a new project?

Point 3: case=24414 is about recursive typedefs.

Edited by - accord on Apr 15 2010 4:01:08 PM
Go to Top of Page

maxim2000
Ketchup Master

68 Posts

Posted - Apr 16 2010 :  08:45:17 AM  Show Profile  Reply with Quote
Point 2: I'm seeing the same result as you see. The list is good in case of new project.
But still I see a wrong list for Point 3 (e.g. namedrects[0]["key"].|): it consists of the same std::map members instead of RECT ones.
Go to Top of Page

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - Apr 16 2010 :  4:40:21 PM  Show Profile  Reply with Quote
Point 2: I checked this because you mentioned that this is happening without typedefining arrays. But it seems it is only happening with typedefs.

Point 3: Good catch! I was able to reproduce this here, and I have put in a new bug report for this:

case=42524

Thank you for your active help and for your patience.
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