Worked a bit on GCC to delay access checking of templates until instantiation time (Bug 16617 and a few others). A few days of business trip got in the way. Now I came back home. So expect more progress until the next trip which is about one week away.

My machine is finally back online after a major Linux upgrade. My winmodem turned out to be unsupported under Linux 2.6 kernel. So no email access for about one week until I bought an external modem just yesterday. No GCC hacking during that period (due to no CVS connection). However, I made some significant progress to GRhino. A simple version of GTP driver is finished so that I can now pit two different GRhino AI's and let them battle for, say, 100 games. This allows AI tinkering without guessing whether it would improve AI strength or not.

GRhino
Based on a suggestion, I decided to implement GTP (with some minor tweak to work with Reversi) as a protocol to talk to GRhino AI engine. This will open up
future possibility to pit GRhino with two different AI settings together so that the AI can be tuned. However, the only way to utilize this protocol in GRhino now is via Quarry GTP GUI frontend.

GRhino
GRhino 0.13.0 was finally released yesterday. I couldn't find
any new bug playing around it.

GCC
I got notified that my recent patch caused some regression handling pointer-to-member inside template. So a bug fix patch is posted. The code dealing with pointer-to-member in GCC is overly complicate and could benefit from some major code simplification.

GRhino
GRhino is almost ready for release. It is feature complete for 0.13.0. Just have to play with it more and try to find any bug. It now has game file loading, plus some major code reorganization that will pave way for more features. Plan for 0.14.0: rethinking about the AI (which is a disappointment), and timed game.

GCC
GCC 4.0 branch is created. But my works are more applicable to Stage 2 development. So they can sit around for some time.

GRhino
Got bored with GCC, so now I start working on GRhino. There are some unfinished code restructure to deal with timer from previous effort. The current focus is to get game load working. After this is finished then timer work can continue which enable features such as timed games and replaying saved games. The next version, GRhino 0.13.0 will be released before sending it back to shelf.

GCC: Fixed a few regressions, the small bugs that require little change, no major code reorganization. The big ones are likely to be postponed until GCC 4.0 is branched off the mainline in the CVS.kcd: Got a plan to finish intended command line and configuration file improvements for kcd and release it as version 8.0.0.GRhino: GRhino remains on the shelf.

Work on the finishing touches for part 5 and 6 of friend class lookup patches. They are queued for GCC 4.1. No more GCC patch that will get into CVS in this year from me. So I can wrap up work summary for GCC C++ frontend this year:

4.0.x patches: 26 (plus another 2 libjava patches)

3.4.x patches: 11

3.3.x patches: 4

Major works: Tag lookup rewrite, member class template as friend, fixing remaining template template parameter bugs. Not as many patches as in 2003 but a few much harder problems are attacked.