I have used the WinAVR compiler for some weeks now, and written a C++ program for an AT90CAN128 with external RAM.
I have read the "Known issues" in Studio, I have the newest version AVR Studio 4.11 Service Pack 2 and Windows XP service pack2..
Knowing support for C++ is not complete yet, I have some questions and observations.
When I watch the "this" pointer, I can not see base class member variables when watching an instance of a derived class. Is this supported ?
Debugging a small program residing in internal RAM only, source level stepping seems not working as well (entering ASM) as a larger program with variables in external RAM, which works quite well in the source level..
When I have made several steps/breaks in the program, AVR Studio can get unstable, it may issue:
"Error reading memory SRAM Address:256 Size 28"
"Platform has been disconnected, leaving debug mode."
"Error stepping over."
Also clicking the step button too fast can give problems.
Exiting and then entering Studio increases stability for a while.
At this stage this is just observations. If I have mentioned something new, and the team wants to go for it, I will use some time to attempt making a smaller program demonstrating the problem(s).
Besides this, I still think AVR Studio is a very nice tool. It handles virtual functions also, and in my opinion, the AVR with the tools is good at doing the C++ job. Removing a few rough edges makes this a very good environment for such a "small" processor.
Despite of the mentioned "problems", AVR Studio solves the debugging job for my program.