X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Fusers_guide%2Fusing.xml;h=544a6e85d2210ef717e7ae6cd57ee2dd0ee54b7d;hb=79fb37d4fe333f5c3dd7f08a6df102aed05394d9;hp=7bf85ef382346138c2d7ed909aab77ca2426b3ee;hpb=93db1991b5cacf8357493a2e17fbbfb485f3205b;p=ghc-hetmet.git diff --git a/docs/users_guide/using.xml b/docs/users_guide/using.xml index 7bf85ef..544a6e8 100644 --- a/docs/users_guide/using.xml +++ b/docs/users_guide/using.xml @@ -138,6 +138,11 @@ module X where The flag reference tables () lists the status of each flag. + + There are a few flags that are static except that they can + also be used with GHCi's :set command; these + are listed as “static/:set” in the + table. @@ -225,8 +230,7 @@ module X where - ghc - ––interactive + ghc --interactive interactive mode ghci @@ -240,8 +244,7 @@ module X where - ghc - ––make + ghc --make make mode @@ -258,8 +261,8 @@ module X where - ghc - –e expr + ghc -e + expr eval mode @@ -275,13 +278,10 @@ module X where - ghc - - -E - -C - -S - -c - + ghc -E + ghc -c + ghc -S + ghc -c @@ -302,8 +302,7 @@ module X where - ghc - –M + ghc -M dependency-generation mode @@ -311,23 +310,81 @@ module X where Dependency-generation mode. In this mode, GHC can be used to generate dependency information suitable for use in a Makefile. See . + linkend="makefile-dependencies"/>. - ghc - ––mk-dll + ghc --mk-dll - dependency-generation mode + DLL-creation mode DLL-creation mode (Windows only). See . + + + + + ghc --help ghc -? + + + + + Cause GHC to spew a long usage message to standard + output and then exit. + + + + + + + ghc --version + ghc -V + + + + + + Print a one-line string including GHC's version number. + + + + + + + ghc --numeric-version + + + + + Print GHC's numeric version number only. + + + + + + + ghc --print-libdir + + + + + Print the path to GHC's library directory. This is + the top of the directory tree containing GHC's libraries, + interfaces, and include files (usually something like + /usr/local/lib/ghc-5.04 on Unix). This + is the value of + $libdirlibdir + in the package configuration file (see ). + + + @@ -574,19 +631,18 @@ ghc -c Foo.hs help options verbosity options + See also the , , , + and modes in . - - - - - - + + - Cause GHC to spew a long usage message to standard - output and then exit. + Does a dry-run, i.e. GHC goes through all the motions + of compiling as normal, but does not actually run any + external commands. @@ -673,47 +729,6 @@ ghc -c Foo.hs - - - - - - - - - - Print a one-line string including GHC's version number. - - - - - - - - - - Print GHC's numeric version number only. - - - - - - - - - - Print the path to GHC's library directory. This is - the top of the directory tree containing GHC's libraries, - interfaces, and include files (usually something like - /usr/local/lib/ghc-5.04 on Unix). This - is the value of - $libdirlibdir - in the package configuration file (see ). - - - - @@ -748,6 +763,20 @@ ghc -c Foo.hs + size + + + + Set the minimum size of the heap to + size. + This option is equivalent to + +RTS -Hsize, + see . + + + + + @@ -793,8 +822,7 @@ ghc -c Foo.hs Provides the standard warnings plus , , - , - , and + , and . @@ -811,7 +839,17 @@ ghc -c Foo.hs : - Turns on all warning options. + Turns on all warning options that indicate potentially + suspicious code. The warnings that are + not enabled by + are: + + + + + + + @@ -877,6 +915,31 @@ ghc -c Foo.hs + : + + + implicit prelude, warning + Have the compiler warn if the Prelude is implicitly + imported. This happens unless either the Prelude module is + explicitly imported with an import ... Prelude ... + line, or this implicit import is disabled (either by + or a + LANGUAGE NoImplicitPrelude pragma). + + Note that no warning is given for syntax that implicitly + refers to the Prelude, even if + would change whether it refers to the Prelude. + For example, no warning is given when + 368 means + Prelude.fromInteger (368::Prelude.Integer) + (where Prelude refers to the actual Prelude module, + regardless of the imports of the module being compiled). + + This warning is off by default. + + + + : @@ -929,19 +992,6 @@ f foo = foo { x = 6 } - : - - - - Turns on warnings for various harmless but untidy - things. This currently includes: importing a type with - (..) when the export is abstract, and - listing duplicate class assertions in a qualified type. - - - - - : missing fields, warning @@ -991,7 +1041,8 @@ f foo = foo { x = 6 } If you would like GHC to check that every top-level function/value has a type signature, use the - option. This + option. As part of + the warning GHC also reports the inferred type. The option is off by default. @@ -1009,7 +1060,7 @@ f foo = foo { x = 6 } in the inadvertent cyclic definition let x = ... x ... in. - Consequently, this option does + Consequently, this option will complain about cyclic recursive definitions. @@ -1088,6 +1139,18 @@ f "2" = 2 + : + + + tabs, warning + Have the compiler warn if there are tabs in your source + file. + + This warning is off by default. + + + + : @@ -1108,6 +1171,20 @@ f "2" = 2 + : + + + monomorphism restriction, warning + Have the compiler warn/inform you where in your source + the Haskell Monomorphism Restriction is applied. If applied silently + the MR can give rise to unexpected behaviour, so it can be helpful + to have an explicit warning that it is being applied. + + This warning is off by default. + + + + : @@ -1243,10 +1320,6 @@ f "2" = 2 Means: “Generate good-quality code without taking too long about it.” Thus, for example: ghc -c -O Main.lhs - - currently also implies - . This may change in the - future. @@ -1345,7 +1418,7 @@ f "2" = 2 Exception.assert in source code (in other words, rewriting Exception.assert p e to e (see ). This flag is turned on by + linkend="assertions"/>). This flag is turned on by . @@ -1500,7 +1573,7 @@ f "2" = 2 &phases; - + Using Concurrent Haskell Concurrent Haskellusing @@ -1530,7 +1603,7 @@ f "2" = 2 - + Using SMP parallelism parallelism @@ -1624,18 +1697,6 @@ f "2" = 2 - : - - (SPARC machines)-mv8 option (SPARC - only) Means to pass the like-named - option to GCC; it says to use the Version 8 SPARC - instructions, notably integer multiply and divide. The - similar GCC options for SPARC also - work, actually. - - - - : (iX86 machines)-monly-N-regs