X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Fusers_guide%2Fusing.xml;h=544a6e85d2210ef717e7ae6cd57ee2dd0ee54b7d;hb=79fb37d4fe333f5c3dd7f08a6df102aed05394d9;hp=72f53b740b18cbf7284c8adc5c5f825bdad668bf;hpb=2f4e21c6f741995e20cc3b53b109ff9edf18eb3c;p=ghc-hetmet.git diff --git a/docs/users_guide/using.xml b/docs/users_guide/using.xml index 72f53b7..544a6e8 100644 --- a/docs/users_guide/using.xml +++ b/docs/users_guide/using.xml @@ -310,7 +310,7 @@ 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"/>. @@ -839,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: + + + + + + + @@ -905,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. + + + + : @@ -1006,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. @@ -1024,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. @@ -1135,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. + + + + : @@ -1368,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 . @@ -1523,7 +1573,7 @@ f "2" = 2 &phases; - + Using Concurrent Haskell Concurrent Haskellusing @@ -1553,7 +1603,7 @@ f "2" = 2 - + Using SMP parallelism parallelism