That reminds me that I've got various small repairs and changes to merge in. Possibly the best way will be to point to a test version in an announcement here, and then people can check that they work for them, so nothing breaks unexpectedly on recompilation. One potential big future change (not yet made) is to switch to strictly ANSI rules for unsigned+signed values meeting in "the usual arithmetic conversions". The rules are horrible, but it's one of the few ways in which the compiler implements something that's neither an extension nor a restriction compared to the standard. You'll never miss most of the others. One approach there is to have the compiler consider the type under both systems and warn if the difference might cause trouble (typically in comparisons, but there might be other cases). Most of the Plan 9 source has been compiled under the ANSI regime in the form of Plan 9 Ports, so I'd expect that most of the tricky cases have already been fixed.