A few bloggers, Frans Brouma and Roy Oosherove, have reported stability issues with VS 2005 RTM. I have noticed a few problems too after a week of usage; Beta2 seemed more stable.
Last night, I spent a hour figuring out why I was receiving Internal Compiler Errors, which indicated that the error occurred during the DEFINE phase of the compilation. The error messages were uninformative; about the only thing, I could ascertain was that the errors appeared to be related to generics. I scanned all the diffs since my last working build, but couldn’t track down the problem. After each clean build, the errors would repro in a different location in my project.
After restarting VS 2005, the errors magically went away. I’ll try that first next time.
Internal Compiler Errors: C++ or C#? I hope it's the former as C++ is infinitely more complex, I see Internal Compiler Errors every now and then with complicated templates under 2003...
If it's the latter... shame, shame, shame.
Posted by: Drazen Dotlic | November 04, 2005 at 07:54 AM
It was C#... I'll be logging some of my bugs in the post later on and MSDN Product Feedback Center.
This is not to say that Microsoft shouldn't ship this software. I rather have VS2005 than VS2006. The runtime ultimately is more important than the IDE, where all the bugs appear to be, and that runtime needs to be here rather than held back by the IDE, since so much depends on it.
The problems with the IDE could be addressed with a service pack.
Posted by: Wesner Moise | November 04, 2005 at 11:27 PM
I rebooted and launch VS 2005 and now I receive an Microsoft Error Reporting dialog, which records about 7 instances of the C# compiler failing. It asks me if I want to send the errors to Microsoft and any associated documents.
Posted by: Wesner Moise | November 05, 2005 at 01:35 AM
Let's see... My earliest bug in VS 2005 was when the IDE vanished in the midst of typing, with no Dr. Watson or other dialog in its place.
I have also encountered the Internal Compiler Errors again. It appears that the problem may be do to the definition of a class C and another generic class C; the classes do not have to be in the same namespace. A restart of VS is required.
The error message is below:
error CS0583: Internal Compiler Error (0xc0000017 at address 7C81EB33): likely culprit is 'DEFINE'.
An internal error has occurred in the compiler. To work around this problem, try simplifying or changing the program near the locations listed below. Locations at the top of the list are closer to the point at which the internal error occurred. Errors such as this can be reported to Microsoft by using the /errorreport option.
D:\Documents\Dev\SoftPerson\Collections\Nodes\Node.cs(200,23): error CS0585: Internal Compiler Error: stage 'DEFINE'
D:\Documents\Dev\SoftPerson\Collections\Nodes\Node.cs(24,32): error CS0584: Internal Compiler Error: stage 'DEFINE' symbol 'WM.Collections.Internal.Node'
D:\Documents\Dev\SoftPerson\Collections\Nodes\RootNode.cs(23,23): (Related location)
D:\Documents\Dev\SoftPerson\Collections\Nodes\Node.cs(17,11): error CS0584: Internal Compiler Error: stage 'DEFINE' symbol 'WM.Collections.Internal'
D:\Documents\Dev\SoftPerson\Collections\Nodes\Node.cs(17,11): error CS0584: Internal Compiler Error: stage 'DEFINE' symbol 'WM.Collections'
D:\Documents\Dev\SoftPerson\Collections\Nodes\Node.cs(17,11): error CS0584: Internal Compiler Error: stage 'DEFINE' symbol 'WM'
D:\Documents\Dev\SoftPerson\Collections\Nodes\Node.cs: error CS0584: Internal Compiler Error: stage 'DEFINE' symbol ''
D:\Documents\Dev\SoftPerson\Collections\Nodes\Node.cs: error CS0586: Internal Compiler Error: stage 'DEFINE'
D:\Documents\Dev\SoftPerson\Collections\Nodes\Node.cs: error CS0586: Internal Compiler Error: stage 'DEFINE'
D:\Documents\Dev\SoftPerson\Collections\Nodes\Node.cs: error CS0586: Internal Compiler Error: stage 'BEGIN'
Posted by: Wesner Moise | November 07, 2005 at 07:45 AM
I get the errors for Tuple for which I have a plain Tuple type and a Tuple(A,B) generic type. I also get an error for plain Node type and a generic Node type defined in a different namespace.
I submitted these errors via Microsoft's feedback tools.
Posted by: Wesner Moise | November 07, 2005 at 07:48 AM
Here's a workaround: close VS and manually remove all the Obj directories.
For some reason different builds of the compiler will see differing binaries in the Obj and try to use them, only to find out that its slightly different (that's my theory) and crash.
Simple fix... just erase the Obj directories and do a build (I don't think Clean even does that though)
Posted by: Eric Newton | November 09, 2005 at 12:31 PM
Wes,
We are continuing to investigate this bug, but it appears to be a bit of a "freak": We have no other reports on it, and we are unable to repro it based on your description.
If by chance you have a solution lying around that repro's this bug, I'd be very grateful to have it (mads.torgersen@microsoft.com).
The good part of this is that this ICE does not seem to affect a lot of people.
Thanks,
Mads Torgersen
Posted by: Mads Torgersen [MSFT] | November 29, 2005 at 11:09 AM
I have uploaded this ICE bug to Microsoft each time it occurred, so you should have all my code. I have a little more guess as to what occurred in my post "Living on the Edge."
Posted by: Wesner Moise | November 29, 2005 at 01:19 PM
hi,
i need help badly. Im in the middle of a huge project that'rolls out in 5 days time. The issue i have with the vs2005 IDE is that it keeps renaming my textboxes back to their defaults ie TextBox1...etc.. and ive like thousands of them man!. i'm meant to understand that its an undocumented gug in .net....when u have too many controls on a form..i seem to have reached the limit...does anyone have a wprkaround?
Posted by: one frustrated coder | August 17, 2006 at 05:54 AM