[[project @ 2001-08-07 11:08:36 by simonmar] simonmar**20010807110836 - describe NOTINLINE as a synonym for NOINLINE - describe the general form of a pragma - mention that case is irrelevant in the first word of a pragma - mention that unrecognised pragmas are silently ignored ] { hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2536 - -Pragmas - + + Pragmas hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2539 - -GHC supports several pragmas, or instructions to the compiler placed -in the source code. Pragmas don't affect the meaning of the program, -but they might affect the efficiency of the generated code. - + pragma + + GHC supports several pragmas, or instructions to the + compiler placed in the source code. Pragmas don't normally affect + the meaning of the program, but they might affect the efficiency + of the generated code. + + Pragmas all take the form + +{-# word ... #-} + + where word indicates the type of + pragma, and is followed optionally by information specific to that + type of pragma. Case is ignored in + word. The various values for + word that GHC understands are described + in the following sections; any pragma encountered with an + unrecognised word is (silently) + ignored. hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2629 - hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2630 -pragma, NOINLINE - +pragmaNOINLINE +NOTINLINE pragma +pragmaNOTINLINE hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2635 -The NOINLINE pragma does exactly what you'd expect: it stops the -named function from being inlined by the compiler. You shouldn't ever -need to do this, unless you're very cautious about code size. +The NOINLINE pragma does exactly what you'd expect: +it stops the named function from being inlined by the compiler. You +shouldn't ever need to do this, unless you're very cautious about code +size. hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2641 +NOTINLINE is a synonym for +NOINLINE (NOTINLINE is specified +by Haskell 98 as the standard way to disable inlining, so it should be +used if you want your code to be portable). + }