Older blog entries for lerdsuwa (starting at number 73)

The GCC work is near finished. No known issue are left. It just needs some clean up: getting rid of unnecessary changes, simplifying changes, adding comments. Too bad I am traveling tomorrow. Work must continue later this weekend.

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.

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 0.13.0 was finally released yesterday. I couldn't find any new bug playing around it.

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 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 4.0 branch is created. But my works are more applicable to Stage 2 development. So they can sit around for some time.

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.

Back from travel. One of my GCC patches is approved. Need to read more on Subversion as the GCC project repository will be switched away from CVS.

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.

I am traveling next week. So no new work for about three weeks.

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.

64 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!