> Of the possibilities you offer, going to -current sounds the least > painful. You could even try the OPENBSD_4_0 tag;
Snapshots are post-4.0 now, so mightn't the best thing to build OPENBSD_4_0 under. Compiling OPENBSD_4_0 under 3.9-something is going to mean extra trouble recompiling compilers and so on too, because the source tree uses local extensions that aren't in 3.9 gcc. If you want newest possible code, go ahead and run -current snapshots, but n.b. if you do, moving from -current to 4.0-release or -stable is not supported either, and this particular point in the release cycle is one where a few new things hit the tree so might not be the best point to pick up -current if you're new to it.. If you want 4.0 as soon as possible then the best way is to wait until pre-orders start up and get your order in early.