- <para>We may make snapshot releases of the current
- development sources from time to time, and the current
- sources are always available via the CVS repository (see the
- <ulink url="http://www.haskell.org/ghc/">GHC web
- site</ulink> for details).</para>
-
- <para>Snapshot releases are named
- <literal><replaceable>x</replaceable>.<replaceable>y</replaceable>.YYYYMMDD</literal>
- where <literal>YYYYMMDD</literal> is the date of the sources
- from which the snapshot was built. In theory, you can check
- out the exact same sources from the CVS repository using
- this date.</para>
-
- <para>If <replaceable>y</replaceable> is odd, then this is a
- snapshot of the CVS HEAD (the main development branch). If
- <replaceable>y</replaceable> is even, then it is a snapshot
- of the stable branch between patchlevel releases. For
- example, <literal>6.3.20040225</literal> would be a snapshot
- of the HEAD, but <literal>6.2.20040225</literal> would be a
- snapshot of the <literal>6.2</literal> branch.</para>
+ <para>
+ We may make snapshot releases of the current
+ stable branch <ulink url="http://www.haskell.org/ghc/dist/stable/dist/">available for download</ulink>, and the latest sources are available from <ulink url="http://hackage.haskell.org/trac/ghc/wiki/DarcsRepositories">the darcs repositories</ulink>.
+ </para>
+
+ <para>Stable snapshot releases are named
+ <literal><replaceable>x</replaceable>.<replaceable>y</replaceable>.<replaceable>z</replaceable>.<replaceable>YYYYMMDD</replaceable></literal>.
+ where <literal><replaceable>YYYYMMDD</replaceable></literal> is the date of the sources
+ from which the snapshot was built, and <literal><replaceable>x</replaceable>.<replaceable>y</replaceable>.<replaceable>z+1</replaceable></literal> is the next release to be made on that branch.
+ For example, <literal>6.8.1.20040225</literal> would be a
+ snapshot of the <literal>6.8</literal> branch during the development
+ of <literal>6.8.2</literal>.</para>
+
+ <para>The value of <literal>__GLASGOW_HASKELL__</literal>
+ for a snapshot release is the integer
+ <replaceable>xyy</replaceable>. You should never write any
+ conditional code which tests for this value, however: since
+ interfaces change on a day-to-day basis, and we don't have
+ finer granularity in the values of
+ <literal>__GLASGOW_HASKELL__</literal>, you should only
+ conditionally compile using predicates which test whether
+ <literal>__GLASGOW_HASKELL__</literal> is equal to, later
+ than, or earlier than a given major release.</para>
+ <indexterm>
+ <primary><literal>__GLASGOW_HASKELL__</literal></primary>
+ </indexterm>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>Unstable snapshots</term>
+ <listitem>
+ <para>
+ We may make snapshot releases of the
+ HEAD <ulink url="http://www.haskell.org/ghc/dist/current/dist/">available for download</ulink>, and the latest sources are available from <ulink url="http://hackage.haskell.org/trac/ghc/wiki/DarcsRepositories">the darcs repositories</ulink>.
+ </para>
+
+ <para>Unstable snapshot releases are named
+ <literal><replaceable>x</replaceable>.<replaceable>y</replaceable>.<replaceable>YYYYMMDD</replaceable></literal>.
+ where <literal><replaceable>YYYYMMDD</replaceable></literal> is the date of the sources
+ from which the snapshot was built.
+ For example, <literal>6.7.20040225</literal> would be a
+ snapshot of the HEAD before the creation of the
+ <literal>6.8</literal> branch.</para>