X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Fusers_guide%2Fusing.xml;h=18e96221cede55fd80b3205c94bcd958ace97ba7;hb=a0f6d307b097bd788e181434a4d9b7fdd56a6c6b;hp=7ef2f2f99409d11386795e6fd33516696f994e21;hpb=a7554688338b04ec362bc475b0992ef8799c8bd0;p=ghc-hetmet.git diff --git a/docs/users_guide/using.xml b/docs/users_guide/using.xml index 7ef2f2f..18e9622 100644 --- a/docs/users_guide/using.xml +++ b/docs/users_guide/using.xml @@ -990,9 +990,11 @@ ghc -c Foo.hs not enabled by are , + , , , - , and + , + , . @@ -1175,6 +1177,21 @@ foreign import "&f" f :: FunPtr t + : + + + Causes the compiler to emit a warning when a Prelude numeric + conversion converts a type T to the same type T; such calls + are probably no-ops and can be omitted. The functions checked for + are: toInteger, + toRational, + fromIntegral, + and realToFrac. + + + + + : @@ -1200,26 +1217,40 @@ foreign import "&f" f :: FunPtr t - : + , + , + incomplete patterns, warning patterns, incomplete - Similarly for incomplete patterns, the function + The option warns + about places where + a pattern-match might fail at runtime. + The function g below will fail when applied to non-empty lists, so the compiler will emit a warning about this when is - enabled. - + enabled. g [] = 2 - - This option isn't enabled by default because it can be + This option isn't enabled by default because it can be a bit noisy, and it doesn't always indicate a bug in the program. However, it's generally considered good practice - to cover all the cases in your functions. + to cover all the cases in your functions, and it is switched + on by . + + The flag is + similar, except that it + applies only to lambda-expressions and pattern bindings, constructs + that only allow a single pattern: + +h = \[] -> 2 +Just k = f y + + @@ -1398,6 +1429,7 @@ f "2" = 2 e.g., the ‘default default’ for Haskell 1.4 caused the otherwise unconstrained value 1 to be given the type Int, whereas Haskell 98 + and later defaults it to Integer. This may lead to differences in performance and behaviour, hence the usefulness of being non-silent about this. @@ -1630,31 +1662,6 @@ f "2" = 2 . - - - - : - -Ofile <file> option - optimising, customised - - - (NOTE: not supported since GHC 4.x. Please ask if - you're interested in this.) - - For those who need absolute - control over exactly what options are - used (e.g., compiler writers, sometimes :-), a list of - options can be put in a file and then slurped in with - . - - In that file, comments are of the - #-to-end-of-line variety; blank - lines and most whitespace is ignored. - - Please ask if you are baffled and would like an - example of ! - - We don't use a flag for day-to-day @@ -2218,9 +2225,8 @@ statements or clauses. .hcr. The Core format is described in An External Representation for the GHC Core Language, and sample tools - for manipulating Core files (in Haskell) are in the GHC source distribution - directory under utils/ext-core. - Note that the format of .hcr + for manipulating Core files (in Haskell) are available in the + extcore package on Hackage. Note that the format of .hcr files is different from the Core output format that GHC generates for debugging purposes (), though the two formats appear somewhat similar.