<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx</link><description>Hi, Jim Springfield again. This post covers our current work to fundamentally change how we implement Intellisense and code browsing for C++ in Visual Studio 10. I previously covered the history of Intellisense and outlined many of the problems that we</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>BioSensorAB &amp;raquo; IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7954980</link><pubDate>Fri, 29 Feb 2008 21:03:29 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7954980</guid><dc:creator>BioSensorAB » IntelliSense, Part 2 (The Future)</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://www.biosensorab.org/2008/02/29/intellisense-part-2-the-future/"&gt;http://www.biosensorab.org/2008/02/29/intellisense-part-2-the-future/&lt;/a&gt;&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7955586</link><pubDate>Fri, 29 Feb 2008 21:19:07 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7955586</guid><dc:creator>Sys64738</dc:creator><description>&lt;p&gt;I think that you are going to do a *great* work for VC++ IDE! I hope you really do &amp;quot;10 is the new 6&amp;quot; :-)&lt;/p&gt;
&lt;p&gt;One thing you could implement with your SQL-based system is the following: make it possible to &amp;nbsp;query the DB resulting from parsing the C++ source code, for things like: &amp;quot;give me all ANSI strings in this source code file&amp;quot;, so a macro could convert all the ANSI strings in source code into Unicode version (decorating them with L&amp;quot;...&amp;quot;), or decorate them with _T(&amp;quot;...&amp;quot;).&lt;/p&gt;
</description></item><item><title>C++ development will speed up with the use of SQL Server Compact </title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7958347</link><pubDate>Fri, 29 Feb 2008 22:35:50 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7958347</guid><dc:creator>Steve Lasker's Web Log</dc:creator><description>&lt;p&gt;Jim Springfield, an Architect on the Visual C++ team has just posted a great example of how SQL Server&lt;/p&gt;
</description></item><item><title>C++ development will speed up with the use of SQL Server Compact </title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7959959</link><pubDate>Fri, 29 Feb 2008 23:16:38 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7959959</guid><dc:creator>Noticias externas</dc:creator><description>&lt;p&gt;Jim Springfield, an Architect on the Visual C++ team has just posted a great example of how SQL Server&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7962852</link><pubDate>Sat, 01 Mar 2008 00:33:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7962852</guid><dc:creator>phrosty</dc:creator><description>&lt;p&gt;cool :) i will be looking forward to this.&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7966029</link><pubDate>Sat, 01 Mar 2008 01:55:42 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7966029</guid><dc:creator>Steve Nuchia</dc:creator><description>&lt;p&gt;Several things occur to me reading this.&lt;/p&gt;
&lt;p&gt;One, I'm pretty sure you know this but files can be included more than once in a translation unit and their effects can be different each time. &amp;nbsp;You used the singular in your article.&lt;/p&gt;
&lt;p&gt;On a related point, we have some legacy code with oddball names for included code chunks. &amp;nbsp;When we browse into one of those files it isn't treated as C++ even though the compiler and intellisense have both parsed it recently. &amp;nbsp;That is probably not something you'll want to change but it violates the principle of least astonishment, at least for me.&lt;/p&gt;
&lt;p&gt;The other issue is that good intellisense is *more* important for broken code than it is for working code. &amp;nbsp;If you can make that work properly I'll finally start believing IDEs may have a future :-) &amp;nbsp;Whatever &amp;quot;properly&amp;quot; means in the context of broken code. &amp;nbsp;What I mean is that it helps me understand the cryptogram the compiler emitted and investigate how it might be fixed. &amp;nbsp;Giving me the wrong expansions for all the DLL import/export and UNICODE and X64 conditional macros does not help at all. &amp;nbsp;Failing to provide intellisense / browse functionality for a source file that doesn't scan is better but still not optimal.&lt;/p&gt;
&lt;p&gt;It would be an *enormous* help if I could get a &amp;quot;preprocessed&amp;quot; view of my file without having to check out and modify the project file, recompile the translation unit (including finding it in the tree view if the error navigation took me straight to the header), browse to $(IntDir) and find the .asm file, search for the right spot, and then remember to undo my change to the project file before checking in.&lt;/p&gt;
&lt;p&gt;And while I'm here, any chance of fixing the bug that causes the permanent hourglass when you right-click in a source window while intellisense is restarting after a build? &amp;nbsp;The window for that bug may be small on the toys you guys compile in your labs but with 4+ million lines of code in 200+ projects in one solution you could drive a bus through it. &amp;nbsp;The only recovery is to kill the process and start over.&lt;/p&gt;
&lt;p&gt;OK, one more thing related to source browsing: &amp;nbsp;When I fix an error reported in the 3-hour-long full build and do my check build on the modified sources, my full build log is gone. &amp;nbsp;I have to nurse it along, trading off the need to test my changes incrementally against the need to fix more than one error per day. &amp;nbsp;There should be a way to push-and-pop the log or perhaps numbered output windows like you have for find.&lt;/p&gt;
&lt;p&gt;Related but less fatal: when you double-click on an item in the Errors window it syncs the &amp;quot;Build&amp;quot; output window but not the &amp;quot;Build Order&amp;quot; output window. &amp;nbsp;When you have 40,000 lines of build output it can take a while to locate the error you were working on.&lt;/p&gt;
&lt;p&gt;And one more thing :) select-and-copy are a bit funky in the build output windows. &amp;nbsp;It seems to often take more than one try to get a good copy in the buffer to paste from. &amp;nbsp;But that could be a VMware issue.&lt;/p&gt;
&lt;p&gt;Yes, I know, Team Build fixes all ills. &amp;nbsp;Except it doesn't work with third-party compilers (Intel Visual Fortran, in our case) and we're still porting and are weeks away from being able to build everything. &amp;nbsp;It doesn't make much sense to start producing 2000 work items per build right now.&lt;/p&gt;
&lt;p&gt;Thanks for listening!&lt;/p&gt;
&lt;p&gt;-steve&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7966301</link><pubDate>Sat, 01 Mar 2008 02:16:26 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7966301</guid><dc:creator>mos</dc:creator><description>&lt;p&gt;Any chance this will help out with general C++ code editing? &amp;nbsp;I'm specifically comparing it to C#, where the IDE is just a dream to work with.&lt;/p&gt;
&lt;p&gt;For example, if I type:&lt;/p&gt;
&lt;p&gt;MyClass c = new&lt;/p&gt;
&lt;p&gt;the compiler will pop up a little window that contains the line:&lt;/p&gt;
&lt;p&gt;MyClass();&lt;/p&gt;
&lt;p&gt;and all I have to do is hit enter. &amp;nbsp;(It also helps me type &amp;quot;new&amp;quot;, &amp;quot;int&amp;quot;, and &amp;quot;MyClass&amp;quot;.) This sort of user friendliness is &amp;lt;i&amp;gt;all over&amp;lt;/i&amp;gt; C#, and I really miss it when I do my C++ work.&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7966476</link><pubDate>Sat, 01 Mar 2008 02:32:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7966476</guid><dc:creator>Sys64738</dc:creator><description>&lt;p&gt;mos: You should really try Visual Assist X: it is great for C++ !&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7973483</link><pubDate>Sat, 01 Mar 2008 12:11:22 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7973483</guid><dc:creator>Steve</dc:creator><description>&lt;p&gt;Has anyone checked out the Eclipse CDT project? &lt;/p&gt;
&lt;p&gt;I've heard it handles this sort of stuff really well&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7975993</link><pubDate>Sat, 01 Mar 2008 16:07:38 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7975993</guid><dc:creator>PierreMF</dc:creator><description>&lt;p&gt;Using a SQL database as a code reference is a great idea (IMHO). It could be used for code refactoring for example, or all these C# available features that are missing in the C++ IDE (as Mos says, above).&lt;/p&gt;
&lt;p&gt;Also, you say that &amp;quot;SQL Server Compact is very small and efficient, while retaining the flexibility of SQL&amp;quot;. Yep, I agree with that. But using SQL Server Compact in native code is not easy at all... You know that since you've done it.&lt;/p&gt;
&lt;p&gt;Using SQL Server Compact could be usefull in many native C++ applications (it is in Visual C++ IDE ! ;)). But there is nothing in the MFC to use it. Not even a sample.&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7978417</link><pubDate>Sat, 01 Mar 2008 18:39:11 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7978417</guid><dc:creator>Peter</dc:creator><description>&lt;p&gt;Firstly, I have no idea why you're tooting your horn on getting rid of the ncb file if all you really mean is that you're taking on totally opaque file and replacing it with another totally opaque file.&lt;/p&gt;
&lt;p&gt;Secondly, the most useful thing to me is if you honored the 'OutputDirectory' or 'InternediateDirectory' settings in my project. &amp;nbsp;I tend to do development on a flash drive (why? &amp;nbsp;because!, that's why!). &amp;nbsp;It's set up to drop all of the large, constantly changing files onto a temp directory on the real hard drive -- except that I can' redirect the huge&amp;amp;slow ncb file. &amp;nbsp;Which is constantly being 'rebuilt'.&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Peter&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7979361</link><pubDate>Sat, 01 Mar 2008 19:52:13 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7979361</guid><dc:creator>Qwe</dc:creator><description>&lt;p&gt;All I can suggest Jim, and I know you guys are having a tough time is to approach the C++ community out there (especially on Windows and it is still big and very dissapointed with .NET bloatware after it was used and sold for the last 7 years) is:&lt;/p&gt;
&lt;p&gt;Get, some, funding.&lt;/p&gt;
&lt;p&gt;Don't, buy, other, companies.&lt;/p&gt;
&lt;p&gt;Put, money, into VC++ team.&lt;/p&gt;
&lt;p&gt;Employ, more, people.&lt;/p&gt;
&lt;p&gt;Talk, to, Bill and Steve.&lt;/p&gt;
&lt;p&gt;Engage, the, community.&lt;/p&gt;
&lt;p&gt;Don't, fight, Boost.&lt;/p&gt;
&lt;p&gt;Open, up, the, compiler.&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7982092</link><pubDate>Sun, 02 Mar 2008 00:41:14 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7982092</guid><dc:creator>Bill</dc:creator><description>&lt;p&gt;With the in process database I don't see much improvement over the current situation (other than it could be more performant), but an out of process sql server session could be incredibly powerful; so long as you detail the specification and have it under a license which allows others to use it. Not only would it be able to do the things you described (after weaving it with TFS), but with some extensions it could do much more powerful things like:&lt;/p&gt;
&lt;p&gt;scan your code for possible cases of derefrencing null pointers;&lt;/p&gt;
&lt;p&gt;make sure objects instantiated with the new keyword have a cooresponding delete;&lt;/p&gt;
&lt;p&gt;point out possible stack/buffer overflows;&lt;/p&gt;
&lt;p&gt;discover redundant code;&lt;/p&gt;
&lt;p&gt;find similar code&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7990322</link><pubDate>Sun, 02 Mar 2008 17:58:35 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7990322</guid><dc:creator>fdsa</dc:creator><description>&lt;p&gt;i totally disagree with your statement &amp;quot;The other issue is that good intellisense is *more* important for broken code than it is for working code&amp;quot;.&lt;/p&gt;
&lt;p&gt;in general coding is putting new code around functions to glue some existing code from an _established_ codebase/toolbox/library that one, a coworker or 3rd party wrote before. because one doesn't remeber the exact parameters and functions one uses intellisense to look them up.&lt;/p&gt;
&lt;p&gt;but the new code that you are writing and that get &amp;quot;broken&amp;quot; by editing it at the moment is definitely in your &amp;quot;zone&amp;quot;. being in that &amp;quot;zone&amp;quot; means you remember every bit and don't need intellisense for editing it.&lt;/p&gt;
&lt;p&gt;that's why i would expect that intellisense should only provide information about the established codebase. but this information should be exact and all macros in the translation unit should be handled as the compiler does.&lt;/p&gt;
&lt;p&gt;why don't you just parse the already preprocessed c++ code that is passed to the compiler by redirecting a copy of it???!?&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7990512</link><pubDate>Sun, 02 Mar 2008 18:21:22 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7990512</guid><dc:creator>dataland</dc:creator><description>&lt;p&gt;Jim, &lt;/p&gt;
&lt;p&gt;thank you for the great post (as usual). &amp;nbsp;I see massive potential with MS VC++ and i'm glad you are in the thick of it!&lt;/p&gt;
&lt;p&gt;PierreMF,&lt;/p&gt;
&lt;p&gt;I hear you on the lack of info on using sqlce with mfc. &amp;nbsp;I spent far too long figuring this out (and ended up using non-microsoft provided details on how to do it: sad but true). &amp;nbsp;i've complained to deaf MS ears so i'll say it again: Microsoft please provide more *NATIVE* MFC C++ sample code for new technologies.&lt;/p&gt;
&lt;p&gt;Qwe,&lt;/p&gt;
&lt;p&gt;I agree with you 100% &amp;nbsp;well said!!&lt;/p&gt;
&lt;p&gt;Bill,&lt;/p&gt;
&lt;p&gt;I also agree that your proposed (cutting edge) features would be hugely beneficial. &amp;nbsp;I wish MS invested more in quality &amp;amp; useful VC++ features and less on .NET bloatware.&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7990606</link><pubDate>Sun, 02 Mar 2008 18:33:18 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7990606</guid><dc:creator>dataland</dc:creator><description>&lt;p&gt;Jim, &lt;/p&gt;
&lt;p&gt;thank you for the great post (as usual). &amp;nbsp;I see massive potential with MS VC++ and i'm glad you are in the thick of it!&lt;/p&gt;
&lt;p&gt;PierreMF,&lt;/p&gt;
&lt;p&gt;I hear you on the lack of info on using sqlce with mfc. &amp;nbsp;I spent far too long figuring this out (and ended up using non-microsoft provided details on how to do it: sad but true). &amp;nbsp;i've complained to deaf MS ears so i'll say it again: Microsoft please provide more *NATIVE* MFC C++ sample code for new technologies.&lt;/p&gt;
&lt;p&gt;Qwe,&lt;/p&gt;
&lt;p&gt;I agree with you 100% &amp;nbsp;well said!!&lt;/p&gt;
&lt;p&gt;Bill,&lt;/p&gt;
&lt;p&gt;I also agree that your proposed (cutting edge) features would be hugely beneficial. &amp;nbsp;I wish MS invested more in quality &amp;amp; useful VC++ features and less on .NET bloatware.&lt;/p&gt;
</description></item><item><title>Oh yeah!</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#7997133</link><pubDate>Mon, 03 Mar 2008 10:39:16 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7997133</guid><dc:creator>QbProg</dc:creator><description>&lt;p&gt;It would be nice to have such a level of intellisense.&lt;/p&gt;
&lt;p&gt;I too prefer to have &amp;quot;broken code&amp;quot; to work , since many times to get intellisense in a new function you are writing you should complete the main prototype and then wait a bunch of seconds...&lt;/p&gt;
&lt;p&gt;There are many other things I'd like to see in VC++ 10 , but here these are off topic&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8007701</link><pubDate>Mon, 03 Mar 2008 21:46:46 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8007701</guid><dc:creator>Jim Springfield</dc:creator><description>&lt;p&gt;Thanks for all of the comments everyone.&lt;/p&gt;
&lt;p&gt;There are a few comments regarding using SQLCE from C++. &amp;nbsp;We are using the ATL OLEDB consumer templates and it has been fairly easy. &amp;nbsp;ATL and MFC are pretty integrated today, so it should be fairly straightforward to use them if you are an MFC user, although I don't know offhand what the MFC databinding story is with ATL OLEDB.&lt;/p&gt;
&lt;p&gt;Peter: The goal is not to have an opaque file, especially one that is difficult for us to maintain and change. &amp;nbsp;You can actually load the SQLCE SDF file into Visual Studio and explore it, and issue SQL queries against it. &amp;nbsp;I imagine there will be some interesting addons that exploit it. &amp;nbsp;One point I am driving hard here is that we need to make some things much more configurable. &amp;nbsp;Your suggestion about being able to specify a location for the store is a great one. &amp;nbsp;It would also be useful in the case of opening a project over a network share that you don't have write access to.&lt;/p&gt;
&lt;p&gt;Steve: I hear your point about how a header can be included multiple times into a single translation unit. &amp;nbsp;We will see it both ways when doing the full parse of a translation unit. &amp;nbsp;An interesting question, however, is if the editor has the header itself open, what context should be used when editing it? &amp;nbsp;My experience with these types of header, however, is that they are typically some kind of heavily macroized structured &amp;quot;data&amp;quot; that will expand into code and/or data when included. &amp;nbsp;I doubt that Intellisense is actually very useful in this case, but I would be open to hearing some examples.&lt;/p&gt;
&lt;p&gt;Bill: I also see the value in an out-of-proc mechanism and it is something we want to support. &amp;nbsp;However, we also have users in some organizations that are restricted from installing SQL on their own machines and insert performance is very good for SQLCE. &amp;nbsp;However, the code as written today can actually target full SQL as well as SQLCE. &amp;nbsp;We aren't sure what we will provide in VC10 around this, but we believe it could be very valuable.&lt;/p&gt;
&lt;p&gt;I believe Intellisense needs to work well in both code that compiles and code that doesn't. &amp;nbsp;Obviously, it can't read your mind about what the code is supposed to do, but we are trying to design our parsers to be very resilient to the types of errors that are likely to be seen on code that is being actively written such as mismatched braces/parens, etc.&lt;/p&gt;
&lt;p&gt;We do have plans to provide other features similar to what C# provides today that we hope will increase coding productivity. &amp;nbsp;This set isn't 100% firm yet, but we do hear you.&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8008480</link><pubDate>Mon, 03 Mar 2008 22:42:12 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8008480</guid><dc:creator>Steve Nuchia</dc:creator><description>&lt;p&gt;&amp;gt; what context should be used when editing it?&lt;/p&gt;
&lt;p&gt;How about a dropdown list in the title bar of all the insertion sites, constructed so I can see project, translation unit, and #include line and file. &amp;nbsp;Hmm, maybe that would have to be a popup, it's really a lot of info. &amp;nbsp;The selection would drive colorization, intellisense, and ctrl-F7. &amp;nbsp;Yeah!&lt;/p&gt;
&lt;p&gt;But when headers include other headers and you get an error deep in the nest, the IDE gives you very little help in navigation. &amp;nbsp;Something like a debugger call stack window would help a lot. &amp;nbsp;My typical work cycle is to double-click an error message, then return to the Output window and scroll back, noting the .CPP file name as I go, until I find the project name announcment line in the output. &amp;nbsp;Switch to the Solution explorer, navigate to that project, open the &amp;quot;Source Files&amp;quot; filter, and scroll down to the right .CPP file. &amp;nbsp;Now, if I'm lucky, the #include is a direct one and I've got most of what I'm going to need. &amp;nbsp;If not I have to use a combination of Zen and brute force to find the #include trail connecting the two files I have open.&lt;/p&gt;
&lt;p&gt;fdsa: When I'm writing new code I'd agree with your point of view. &amp;nbsp;Right now, however, I'm in a porting situation and code I didn't write is being broken by changes I didn't make to code and meta-code burried deep in the header jungle. &amp;nbsp;For this kind of work I really need intellisense (mostly tooltips and browse-to-defn) that groks preprocessor semantics and can cope with multiple incompatible definitions in scope and missing definitions and all that sort of brokenness.&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8017909</link><pubDate>Tue, 04 Mar 2008 06:51:57 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8017909</guid><dc:creator>Norman Diamond</dc:creator><description>&lt;p&gt;&amp;gt; what context should be used when editing it?&lt;/p&gt;
&lt;p&gt;If there's a macro definition in the project properties (/D on the command line) then that should be respected in colouring the #if and #else blocks. &amp;nbsp;Also (and more importantly) if there's a #define in the file itself then that should be respected.&lt;/p&gt;
&lt;p&gt;But if the #define comes from a parent file and the situation isn't known in the included file itself, it's tough. &amp;nbsp;Maybe both the #if and #else parts should be coloured as usable code, but it's still tough. &amp;nbsp;A macro could expand to either of two possibilities, and which expansion should be recognized? &amp;nbsp;Tough question. &amp;nbsp;But the other cases were simpler and they should be handled properly.&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8053736</link><pubDate>Wed, 05 Mar 2008 21:24:28 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8053736</guid><dc:creator>marcel</dc:creator><description>&lt;p&gt;I second Visual Assist X, it is way better, ms should buy it or make one like that, it is much faster and gives better suggestions&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8056870</link><pubDate>Thu, 06 Mar 2008 01:14:50 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8056870</guid><dc:creator>mikeb</dc:creator><description>&lt;p&gt;&amp;gt; It would be an *enormous* help if I could get a &amp;quot;preprocessed&amp;quot; view of my file without having to check out and modify the project file, recompile the translation unit (including finding it in the tree view if the error navigation took me straight to the header), browse to $(IntDir) and find the .asm file, search for the right spot, and then remember to undo my change to the project file before checking in.&lt;/p&gt;
&lt;p&gt;This is a very good idea. &amp;nbsp;I don't often have to delve into debugging the preprocessor, but when it needs to be done something like the suggestion above would be very handy.&lt;/p&gt;
</description></item><item><title>Intellisense: big change in next visual studio</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8084735</link><pubDate>Fri, 07 Mar 2008 05:57:32 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8084735</guid><dc:creator>Omnitechie</dc:creator><description>&lt;p&gt;Intellisense: big change in next visual studio&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8116142</link><pubDate>Sun, 09 Mar 2008 07:15:12 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8116142</guid><dc:creator>Christophe Pichaud</dc:creator><description>&lt;p&gt;I think in fact, SQL light storage is the most eficient way.&lt;/p&gt;
&lt;p&gt;In a recent post, I was thinking about ADAM because of its superiority in terms of the couple storage/search&amp;amp;criterions.&lt;/p&gt;
&lt;p&gt;but OK, let'go with SQL. It will easier to write.&lt;/p&gt;
&lt;p&gt;great job guys.&lt;/p&gt;
&lt;p&gt;regards,&lt;/p&gt;
&lt;p&gt;christophep&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8117375</link><pubDate>Sun, 09 Mar 2008 16:15:17 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8117375</guid><dc:creator>RichardG</dc:creator><description>&lt;p&gt; - Developing in a codebase with a lot of boost headers and templates means my translation units often take 10-50 seconds to compile. Do you account for this when you run the full background parse?&lt;/p&gt;
&lt;p&gt; - Have you investigated using the information as a hint to the compiler? Faster builds would be most welcome.&lt;/p&gt;
&lt;p&gt; - Does the new intellisense still crash or hang the machine? Can we reboot intellisense when it breaks? We need reliability.&lt;/p&gt;
&lt;p&gt; - I am interested in third party add-ins for the new Intellisense. If it's open enough, I think this could be the best feature of VS10.&lt;/p&gt;
&lt;p&gt;Best of luck with development, I look forward to using it!&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8125426</link><pubDate>Mon, 10 Mar 2008 08:47:07 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8125426</guid><dc:creator>Twain</dc:creator><description>&lt;p&gt;Jim,&lt;/p&gt;
&lt;p&gt;Your planned use of SQL Server Compact Edition with the OLE DB Consumer Templates for ATL is intriguing. &amp;nbsp;My hope is that several things flow from this effort (in addition to the higher performance Intellisense, of course). &amp;nbsp;First, maybe Microsoft will make available these interfaces (OLE DB) for Windows Mobile developers, recognizing that not everyone wants to use ADO.Net and C# for applications with database connections. &amp;nbsp;Second, it will be a useful learning experience if the MSDN magazine publishes code snippets in C++ that illustrate how you guys are using the consumer templates. &amp;nbsp;Third, hopefully the MSDN website will publish more C++ examples on how to use OLE DB. &amp;nbsp;All of this points to the fact that if the Visual C++ developers are using C++ to interface with SQL Server Compact edition, why wouldn't other developers want to do the same on the Windows Mobile platform? &amp;nbsp;Thoughts anyone??&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Twain&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8177261</link><pubDate>Thu, 13 Mar 2008 04:53:09 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8177261</guid><dc:creator>Scott Colcord</dc:creator><description>&lt;p&gt;&amp;quot;The parser is also designed to be extremely resilient and will be able to handle ambiguous code, mismatched braces or parentheses, and supports a 'hint' file. &amp;nbsp;Due to the nature of C/C++ macros and because we aren’t parsing into headers, there is good bit of code that would be misunderstood. &amp;nbsp;The hint file will contain definitions for certain macros that fundamentally change the parsing and therefore understanding of a file.&amp;quot;&lt;/p&gt;
&lt;p&gt;Hmm...ever heard of an OO toolkit from about 10 years ago called 'Genitor'? &amp;nbsp;It used pretty much this exact approach to reverse-engineer C++ code.&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8333696</link><pubDate>Mon, 24 Mar 2008 18:42:24 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8333696</guid><dc:creator>Steve Nuchia</dc:creator><description>&lt;p&gt;One thing that would be nice to have &amp;quot;while you're at it&amp;quot; in the database: If you would provide for storage of historical / statistical / estimation(?) data on the build times for projects and translation units it could be used by the parallel build scheduler to do a much better job.&lt;/p&gt;
&lt;p&gt;As it is, the scheduler will frequently end up building a &amp;quot;large&amp;quot; project (or dependency chain) single-threaded at the end of the job. &amp;nbsp;If it had data on build history it could push the prerequisites for that project forward and get better overall build performance. &amp;nbsp;Statistics on individual translation units wuold be needed to do this for incremenatal builds.&lt;/p&gt;
&lt;p&gt;Making the &amp;quot;units&amp;quot; for this performance data somewhat insensitive to platform scale would help if it will be possible to share the database among team members: we don't all have the same vintage machines.&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8335792</link><pubDate>Tue, 25 Mar 2008 16:26:59 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8335792</guid><dc:creator>Qwe</dc:creator><description>&lt;p&gt;Why do you guys keep the OLE DB wizard source closed anyway? It makes code gen useless for C++ devs and ADO.NET is just a hack plenty of companies refuse to use.&lt;/p&gt;
&lt;p&gt;I agree you have a tough time ahead with Intellisense and editors (which should be CLR like fuzzy work anyway), but look around and you'll find guys with great AST ideas for C++ (apart from EDG etc).&lt;/p&gt;
&lt;p&gt;My main worry is that you guys are underfunded in C++ land, all while we are seeing 300MB silly SilverLight and WPF apps that will never ever make any business sense, not in the next 10 years for many, many app. &lt;/p&gt;
&lt;p&gt;If CLR team could just get their act together and polish up page faults on GDI+ and get it into harware acceleration, you have a fast enough environment to do all the editor work.&lt;/p&gt;
&lt;p&gt;But that's a whole different topic and project to compiler, it being better exposed for preprocessing/introspection/code-gen/optimisation/etc/etc, and the idea you ought to have it opened up so it can shine with integration that managed crowd would never understand anyway (they are ignorant enough as is)..&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8346353</link><pubDate>Mon, 31 Mar 2008 22:57:36 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8346353</guid><dc:creator>Leo Treggiari</dc:creator><description>&lt;p&gt;With IntelliSense improving, wiil the VC++ product continue to support generating Browse Information (.bsc files)? &amp;nbsp;If so, what will Browse Information do that IntelliSense won't?&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Leo&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8348188</link><pubDate>Tue, 01 Apr 2008 17:41:49 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8348188</guid><dc:creator>Noran</dc:creator><description>&lt;p&gt;I never doubt that Visual C++ team can do a better job than Visual Assist X. But all these years , from vc 6.0 to vc 9.0, I have to pay some dollars to get a license of VAX, just because I hate to press Alt + -&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;quot;Best of luck with development, I look forward to using it!&amp;quot;&lt;/p&gt;
</description></item><item><title>re: IntelliSense, Part 2 (The Future)</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8416803</link><pubDate>Tue, 22 Apr 2008 19:21:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8416803</guid><dc:creator>sidinsd</dc:creator><description>&lt;p&gt;Is there a way to customize the Quick Tips tooltips that Intellisense displays when you hover over a method's name?&lt;/p&gt;
</description></item><item><title>My Visual Studio vNext wish list</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8829947</link><pubDate>Mon, 04 Aug 2008 13:21:20 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8829947</guid><dc:creator>Granville Barnett</dc:creator><description>&lt;p&gt;My wish list for Visual Studio vNext isn&amp;amp;#39;t that long. The things I would like to see in Visual Studio&lt;/p&gt;
</description></item><item><title>My Visual Studio vNext wish list</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#8829949</link><pubDate>Mon, 04 Aug 2008 13:21:44 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8829949</guid><dc:creator>Granville Barnett</dc:creator><description>&lt;p&gt;My wish list for Visual Studio vNext isn't that long. The things I would like to see in Visual Studio&lt;/p&gt;
</description></item><item><title>Dev10 Is Just The Beginning</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#9377732</link><pubDate>Tue, 27 Jan 2009 19:49:57 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9377732</guid><dc:creator>Visual C++ Team Blog</dc:creator><description>&lt;p&gt;Hello, I’m Mark Hall, an architect in the Visual C++ group. I wanted to follow up on Jim Springfield’s&lt;/p&gt;
</description></item><item><title>Rebuilding Intellisense</title><link>http://blogs.msdn.com/vcblog/archive/2008/02/29/intellisense-part-2-the-future.aspx#9644637</link><pubDate>Wed, 27 May 2009 19:34:39 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9644637</guid><dc:creator>Visual C++ Team Blog</dc:creator><description>&lt;p&gt;Hi, my name is Boris Jabes. I've been working on the C++ team for over 4 years now (you may have come&lt;/p&gt;
</description></item></channel></rss>