Welcome to MSDN Blogs Sign in | Join | Help

Visual C++ Compiler Plans

Hi: my name is Jonathan Caves and I’m a developer on the Visual C++ Compiler Team. I thought I'd take a few moments to let you know about the plans our team has for the next release of Visual C++.

 

After the last release of Visual C++ we took a long, hard look at the compiler source base and decided we needed to take the time to seriously invest in reworking our existing code base - some parts of which are over 20 years old. We have plans to really improve the development process for both our existing native C++ customers as well as our newer C++/CLI customers. Unfortunately these changes are going to take time to implement and we definitely can't do anything in the next release (called Orcas) which has a short development cycle.  

 

So instead of working on the next release of Visual C++ most of the compiler development team will be full steam ahead working on the future generation compiler - we are not yet sure exactly what form this compiler will take but we do know that it will really improve and re-energize the C++ development process.

 

This does bring up the question of what C++ compiler enhancements will be in Orcas?  Notice I said "most of the compiler development team" as we are not putting the whole team on the future generation compiler - instead we have left one developer, yours truly, to work on the current source base. We know that C++ is still one of the most widely used programming languages and that we can't just let the current Visual C++ compiler stagnate so I'll be working on keeping it ticking.  This is mostly going to involve bug fixing (and I hope that most of the bugs I fix will be ones reported by our customers) though I also think that I may find time for a few small features!

 

One thing we did after Whidbey, as part of analyzing our source base, was to categorize the remaining bugs in the database. This analysis showed some areas of the C++ language in which the compiler support was less than what we would have wished it to be.  We made an effort to address these areas and in some cases we think we can get this work into the next release of the compiler.  One example is the interaction between friend functions and templates.  In many other cases, however, the work became so big (like rewriting the code that handles the parsing of qualified-names) that we decided to just move it to the 'future' compiler. Going forward I know of other 'problem' areas in the compiler that I am pretty certain can be addressed without needing major reconstructive surgery.

 

But these small features aside, most of the work on the compiler for the next release is going to bug-fixing and I know from interacting with many of you over the last few years that you’ll be quite happy about this.  I’m sure you'll welcome a compiler that doesn't introduce a lot of new features and instead focuses on improving the quality of what we have.  So if you have a serious bug you feel we need to address you should definitely open an issue on the Product Feedback site but please be aware that I am only one person and so, unfortunately, I won't be able to fix each and every bug.  I can assure you though that as a team we will focus on the bugs we believe have the greatest impact - like compiler crashes (especially without any error message),  bad code generation,  blocking issues, etc.

 

I would welcome any feedback on this plan so feel free to add your comments below.

 

Jonathan Caves

Visual C++ Compiler Team

Published Friday, June 30, 2006 1:56 AM by vcblog
Filed under:

Comments

Thursday, June 29, 2006 10:23 PM by Michael Carr

# re: Visual C++ Compiler Plans

1. I would like to see some work on COM attributes--especially cross-thread event handling, which currently requires quite a lot of work to implement.

2. I would like to see the intellisense be as good as it is for C#.

3. I would like to have some sort of in-line documentation capability, as it is for C#.

Thursday, June 29, 2006 10:44 PM by Thomas

# re: Visual C++ Compiler Plans

I'd love to not have to do awkward things to disable warnings microsoft have chosen to impose on the _standard_ library. Like this "Safe STL" stuff.. Either disable those kinds of extensions by default, or at least give us some proper options for it instead of some awkward compiler define you have to google for.
Friday, June 30, 2006 3:56 AM by jus

# re: Visual C++ Compiler Plans

Is it planed to reduce linking time when compiling C++/CLI applications with Orcas? (linking takes up to 1 minute on my application)
Or is this part of the future release code review?

Thanks,
jus
Friday, June 30, 2006 4:04 AM by jus

# re: Visual C++ Compiler Plans

here is my product feedback link  for this issue:
https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=99371

Thanks again,
jus
Friday, June 30, 2006 9:31 AM by Wil

# re: Visual C++ Compiler Plans

As I understand it, the Orcas version of Visual Studio is intended for use in programming the new features of Vista (or, more precisely, what is now called .NET 3.0).  Will it then be possible to write C++/CLI programs targetting WPF and WCF, or must such applications be written in VC# and/or VB?
Friday, June 30, 2006 6:09 PM by James

# re: Visual C++ Compiler Plans

Despite my disappointment that there won't be (as) many improvements in the near future, I'm glad that Microsoft is continuing to make longer-term investments in C++.

I'd be really interested to hear why the decision to invest in a rewrite was taken. What will we, the end users, get out of it?
Wednesday, August 16, 2006 2:28 PM by Visual C++ Team Blog

# Thoughts on the Visual C++ Abstract Syntax Tree (AST)

Hello, my name is Jason Lucas and I’m a senior software development engineer working on the Visual C++...
Wednesday, August 16, 2006 5:11 PM by SteveX Compiled » Blog Archive » Renewed C++ Interest

# SteveX Compiled » Blog Archive » Renewed C++ Interest

Saturday, August 26, 2006 5:42 AM by George

# re: Visual C++ Compiler Plans

Hi Jonathan,


I am wondering whether VC++ AST is open to people outside Microsoft for learning purpose? If not the exact AST can be opened, could you refer some other sample AST which we could learn C++ compiler AST technology?


thanks in advance,
George
Tuesday, October 31, 2006 12:43 AM by Diablo

# re: Visual C++ Compiler Plans

What is the future of VC++? MS has been focussing more on .NET now. MS does not even have a certification for VC++ now. What gives?

Wednesday, November 01, 2006 3:38 AM by alan smith

# re: Visual C++ runtime library error

hi,  the following window opens at the initial start of notebook using windows xp.

"Microsoft VisualC++ Runtime Library

Runtime Error!

Program:C:\Program Files\interMute\SpySubtract\SpySub.exe

This application has requested the Runtime to terminate it in an unsusual way.  Please contact the application's support team for more information."

I use 2 sing-in accounts.  The above window appears in both accts - only on the initial opening of accts once InternetExplorer opens.

How do I elliminate this "error" window.

Thanks - Alan

Tuesday, November 14, 2006 11:56 PM by Yuhong Bao

# re: Visual C++ Compiler Plans

What are the oldest code in the Visual C++ compiler and what does it do?

Wednesday, November 15, 2006 12:28 AM by Yuhong Bao

# re: Visual C++ Compiler Plans

In the 16-bit days, Visual C++ compiler's /G switches actually specified the minimum processor required to run the program produced.

In the 16-bit days, Visual C++ compiler phases was actually separate executables. C13216.exe, C1xx3216.exe, C23216.exe... How did each phase communicate? When I actually run them, they generate an error, but did not actually display the error message.

What about the Microsoft C/C++ 7.0 DOS extender?

They actually require DPMI, so 386Max was bundled.

What about the port of the 16-bit compiler and linker to Win32 performed for Visual C++ 1.0? Espicially what the team thinked about the port then.

Also where are the Visual C++ KB articles removed from the Knowledge Base?

Wednesday, November 15, 2006 12:33 AM by Yuhong Bao

# re: Visual C++ Compiler Plans

I found some of the Visual C++ 1.5 tools still are OS/2 bound programs and so runs in the OS/2 subsystem in Windows NT, which does not exist in Windows XP. Why?

Wednesday, November 22, 2006 10:36 AM by Adrianna

# My homepage

Good design!

[url=http://kilqguhw.com/fmmk/wgcu.html]My homepage[/url] | [url=http://fjgcmrao.com/obud/skcq.html]Cool site[/url]

Wednesday, November 22, 2006 10:36 AM by Phillip

# My homepage

Thank you!

<a href="http://kilqguhw.com/fmmk/wgcu.html">My homepage</a> | <a href="http://srroocyc.com/guiv/xgka.html">Please visit</a>

Wednesday, November 22, 2006 10:36 AM by Fawn

# My homepage

Monday, March 12, 2007 2:55 PM by Visual C++ Team Blog

# Multi-processor builds in Orcas

Hey again, everyone. I’m Peter-Michael, a program manager with the VC++ compiler team. Continuing with

Wednesday, March 14, 2007 4:37 PM by ...

# re: Visual C++ Compiler Plans

Du musst ein Fachmann sein - wirklich guter Aufstellungsort, den du hast!

Thursday, May 10, 2007 1:50 PM by Visual C++ Team Blog

# Thoughts on the Visual C++ Abstract Syntax Tree (AST)

Hello, my name is Jason Lucas and I’m a senior software development engineer working on the Visual C++

New Comments to this post are disabled
 
Page view tracker