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
 Feature Requests
 Support for C++17 features
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

ethan.tqa
New Member

2 Posts

Posted - Dec 15 2017 :  12:13:58 AM  Show Profile  Reply with Quote
Hi, now that Visual Studio 2017 15.5 added plenty of C++17 features, it would be nice to have them recognized by Visual Assist too. If it is too much to implement tho whole C++17 support, the few features that I would love to see first are: structured binding, if condition initializer and fold expressions.

feline
Whole Tomato Software

United Kingdom
18750 Posts

Posted - Dec 15 2017 :  12:03:26 PM  Show Profile  Reply with Quote
We are working on supporting the new C++ features, so it is useful to know which ones are of most interest to our users. Are you seeing any specific problems with "if condition initializer"? In my tests, based on the example here:

https://skebanga.github.io/if-with-initializer/

VA does not correctly understand the scope of the variable created here, but so far that is the only problem I am seeing:

case=113209

I am seeing the problem with structured binding, where VA is not aware of the new variables that are bound to the members of the structure:

case=113210

I am also seeing problems with fold expressions, but to be fair, VA is not fully handling variadic templates yet, but this is something we are aware of and working on. I have put in a bug report for using fold expressions:

case=113211

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

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - Dec 19 2017 :  07:04:39 AM  Show Profile  Reply with Quote
Structured-binding and if-init together seems to be a good tool to elegantly handle multiple return values - a feature I was missing after seeing it in Google Go. Returning values via arguments always seemed like a hack to me - returning a value via return keyword (as its name implies) is for returning values .
Go to Top of Page

ethan.tqa
New Member

2 Posts

Posted - Dec 21 2017 :  12:20:01 AM  Show Profile  Reply with Quote
I agree that structured binding and if-init are 2 features that work well together, and should be of higher priority. Btw, is it better to turn off VS IntelliSense or keep it on while using Visual Assist?
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18750 Posts

Posted - Dec 21 2017 :  06:59:34 AM  Show Profile  Reply with Quote
We are working to add C++17 support, but this is just one of many feature requests and bug reports to juggle, so its a matter of working out what should be done first.

For Intellisense, our default advice is to use the IDE as the source of intellisense in VS2010 and above, via the setting:

VA Options -> Enhanced Listboxes -> Source of C/C++ content: Visual Assist OR Default Intellisense

For large solutions, where setting the source to VA works well, people often disable the IDE intellisense parser, to avoid the overhead of running two parsers at once, especially if in their solution the IDE parser produces less useful results.

Basically, if intellisense is not as useful as you would like, try different settings, and see what works best in your code base.

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

sean
Whole Tomato Software

USA
2817 Posts

Posted - Jul 12 2019 :  3:14:34 PM  Show Profile  Reply with Quote
case=113209 is fixed in build 2341
https://support.wholetomato.com/default.asp?W404#2341
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