• Joachim Breitner's avatar
    Make language extensions their own category in the documentation · 61f1b46e
    Joachim Breitner authored
    I.e. instead of
        .. ghc-flag:: -XUnboxedTuples
            :shortdesc: Enable the use of unboxed tuple syntax.
            :type: dynamic
            :reverse: -XNoUnboxedTuples
    one simply writes
        .. extension:: UnboxedTuples
            :shortdesc: Enable the use of unboxed tuple syntax.
    This allows language extensions to be referenced as
        If :extension:`UnboxedTuples` is enabled, then...
    This directive still creates the entries for the `-XUnboxedTuples` flag,
    so in particular,
        Set :ghc-flag:`-XUnboxedTuples` if you have to.
    still works, and lists of flags in general (e.g. for the manpage)
    include these.
    I also removed lots of links from the shortdesc of the extensions, when
    this link simply points to the section where the extension is defined.
    I removed the list of `-X` flags from the flag reference table, but added a
    table of extension under “10.1. Language options”
    Lots of text in the manual now refers to “extension `Foo`” rather than
    “flag `-XFoo`”.
    I consider `-XFoo` a historic artifact that stems from when language
    extensions were really just flags. These days, the use of `-XFoo` is
    (IMHO) deprecated: You should be using `LANGUAGE Foo`, or maybe the
    appropriate field in a `.cabal` file. See 9278994a which did this change
    to error messages already.
    Differential Revision: https://phabricator.haskell.org/D4112
ffi-chap.rst 31.3 KB