diff --git a/ghc/docs/users_guide/debugging.vsgml b/ghc/docs/users_guide/debugging.vsgml index 2a1548f22b5feb1f10d632b9f00a0497dee63352..23cd5ca0370ee13aa7b92213848312cab9eb509d 100644 --- a/ghc/docs/users_guide/debugging.vsgml +++ b/ghc/docs/users_guide/debugging.vsgml @@ -84,9 +84,24 @@ example: @ghc -noC -ddump-simpl Foo.hs@ <tag>@-hi@:</tag> <nidx>-hi option</nidx> -<em>Do</em> generate an interface file. This would normally be used in -conjunction with @-noC@, which turns off interface generation; -thus: @-noC -hi@. +<em>Do</em> generate an interface file (on @stdout@.) This would +normally be used in conjunction with @-noC@, which turns off interface +generation; thus: @-noC -hi@. + +<tag>@-hi-with-<section>@:</tag> +<nidx>-hi-with option</nidx> +Generate just the specified section of an interface file. In case you're +only interested in a subset of what @-hi@ outputs, @-hi-with-<section>@ +is just the ticket. For instance + +<tscreen> <verb> +-noC -hi-with-declarations -hi-with-exports +</verb> </tscreen> + +will output the sections containing the exports and the +declarations. Legal sections are: @declarations@, @exports@, +@instances@, @instance_modules@, @usages@, @fixities@, and +@interface@. <tag>@-dshow-passes@:</tag> <nidx>-dshow-passes option</nidx> diff --git a/ghc/docs/users_guide/intro.vsgml b/ghc/docs/users_guide/intro.vsgml index 794700066b193b60ebbd78316e3092df600a9011..f23c342842cef3086de043c3ed852397de4a834b 100644 --- a/ghc/docs/users_guide/intro.vsgml +++ b/ghc/docs/users_guide/intro.vsgml @@ -132,7 +132,8 @@ compiler), which produces an object file and passes it to <item> The linker, which links your code with the appropriate libraries (including the standard prelude), producing an executable program in -the default output file named @a.out@. +the default output file named either @a.out@ (*NIX platforms) or @main.exe@ +(Windows port.) </enum> You have considerable control over the compilation process. You feed @@ -171,23 +172,23 @@ join, as you feel is appropriate. <tag>glasgow-haskell-users:</tag> This list is for GHC users to chat among themselves. Subscribe by -sending mail to <htmlurl name="majordomo@@dcs.gla.ac.uk" -url="mailto:majordomo@@dcs.gla.ac.uk">, with a message body (not +sending mail to <htmlurl name="majordomo@dcs.gla.ac.uk" +url="mailto:majordomo@dcs.gla.ac.uk">, with a message body (not header) like this: <tscreen><verb> -subscribe glasgow-haskell-users MyName <m.y.self@@bigbucks.com> +subscribe glasgow-haskell-users MyName <m.y.self@bigbucks.com> </verb></tscreen> (The last bit is your all-important e-mail address, of course.) To communicate with your fellow users, send mail to <url -name="glasgow-haskell-users@@dcs.gla.ac.uk" -url="mailto:glasgow-haskell-users@@dcs.gla.ac.uk">. +name="glasgow-haskell-users@dcs.gla.ac.uk" +url="mailto:glasgow-haskell-users@dcs.gla.ac.uk">. To contact the list administrator, send mail to <htmlurl -name="glasgow-haskell-users-request@@dcs.gla.ac.uk" -url="mailto:glasgow-haskell-users-request@@dcs.gla.ac.uk">. An archive +name="glasgow-haskell-users-request@dcs.gla.ac.uk" +url="mailto:glasgow-haskell-users-request@dcs.gla.ac.uk">. An archive of the list is available on the Web: <url name="glasgow-haskell-users mailing list archive" url="http://www.dcs.gla.ac.uk/mail-www/glasgow-haskell-users">. @@ -197,16 +198,16 @@ Send bug reports for GHC to this address! The sad and lonely people who subscribe to this list will muse upon what's wrong and what you might do about it. -Subscribe via <htmlurl name="majordomo@@dcs.gla.ac.uk" -url="mailto:majordomo@@dcs.gla.ac.uk"> with: +Subscribe via <htmlurl name="majordomo@dcs.gla.ac.uk" +url="mailto:majordomo@dcs.gla.ac.uk"> with: <tscreen><verb> -subscribe glasgow-haskell-bugs My Name <m.y.self@@hackers.r.us> +subscribe glasgow-haskell-bugs My Name <m.y.self@hackers.r.us> </verb></tscreen> Again, you may contact the list administrator at <htmlurl -name="glasgow-haskell-bugs-request@@dcs.gla.ac.uk" -url="mailto:glasgow-haskell-bugs-request@@dcs.gla.ac.uk">. +name="glasgow-haskell-bugs-request@dcs.gla.ac.uk" +url="mailto:glasgow-haskell-bugs-request@dcs.gla.ac.uk">. And, yes, an archive of the list is available on the Web at: : <url name="glasgow-haskell-bugs mailing list archive" url="http://www.dcs.gla.ac.uk/mail-www/glasgow-haskell-bugs"> @@ -214,11 +215,11 @@ url="http://www.dcs.gla.ac.uk/mail-www/glasgow-haskell-bugs"> </descrip> There is also the general Haskell mailing list. Subscribe by sending -email to <htmlurl name="majordomo@@dcs.gla.ac.uk" -url="mailto:majordomo@@dcs.gla.ac.uk">, with the usual message body: +email to <htmlurl name="majordomo@dcs.gla.ac.uk" +url="mailto:majordomo@dcs.gla.ac.uk">, with the usual message body: <tscreen><verb> -subscribe haskell My Name <m.y.self@@fp.rules.ok.org> +subscribe haskell My Name <m.y.self@fp.rules.ok.org> </verb></tscreen> Some Haskell-related discussion takes place in the Usenet newsgroup diff --git a/ghc/docs/users_guide/profiling.vsgml b/ghc/docs/users_guide/profiling.vsgml index 6ac9dcb2a48d1b7849f45dd971327289907dcf86..d92ca64de9049b8af496f6d9679d41dc27ad35cc 100644 --- a/ghc/docs/users_guide/profiling.vsgml +++ b/ghc/docs/users_guide/profiling.vsgml @@ -440,6 +440,10 @@ percentage to be modified (maximum 5\%). ensuring that all the data will be displayed. <tag>@-?@</tag> Print out usage information. + +<tag>@-c@</tag> Fill in the bands with colours rather than shades of grey. +Some people find colour plots easier to read (especially when viewed on a +non-monochrome medium ;-) </descrip> <sect3>@stat2resid@---residency info from GC stats diff --git a/ghc/docs/users_guide/user.vsgml b/ghc/docs/users_guide/user.vsgml index d120d89818b675f89fa13f02da6b4bf371809eaa..b47b54be2db1ea5446c5311dddc84fa410671770 100644 --- a/ghc/docs/users_guide/user.vsgml +++ b/ghc/docs/users_guide/user.vsgml @@ -1,7 +1,7 @@ <!doctype linuxdoc system> <article> -<title>The Glasgow Haskell Compiler User's Guide, Version~3.00 +<title>The Glasgow Haskell Compiler User's Guide, Version~3.02 <author>The GHC Team, Department of Computing Science, University of Glasgow, diff --git a/ghc/docs/users_guide/using.vsgml b/ghc/docs/users_guide/using.vsgml index 25acde68010dd4018d5cb4044ca10a45e3ad0dcf..e6f6e9be56593f9001ecf819430177ec44afd740 100644 --- a/ghc/docs/users_guide/using.vsgml +++ b/ghc/docs/users_guide/using.vsgml @@ -228,7 +228,7 @@ If you would like to look at the assembler output, toss in a <nidx>standard error, saving</nidx> Sometimes, you may cause GHC to be rather chatty on standard error; -with @-fshow-import-specs@, for example. You can instruct GHC to +with @-dshow-rn-trace@, for example. You can instruct GHC to <em>append</em> this output to a particular log file with a @-odump <blah>@<nidx>-odump <blah> option</nidx> option. @@ -265,7 +265,7 @@ GHC has a number of options that select which types of non-fatal error messages, otherwise known as warnings, can be generated during compilation. By default, you get a standard set of warnings which are generally likely to indicate bugs in your program. These are: -@-fwarn-overlpapping-patterns@, @-fwarn-duplicate-exports@, and +@-fwarn-overlapping-patterns@, @-fwarn-duplicate-exports@, and @-fwarn-missing-methods@. The following flags are simple ways to select standard ``packages'' of warnings: @@ -313,6 +313,16 @@ into hard-to-find bugs, e.g., in the inadvertent cyclic definition Consequently, this option does <em>not</em> allow cyclic recursive definitions. +<tag>@-fwarn-hi-shadowing@:</tag> +<nidx>-fwarn-hi-shadowing option</nidx> +<nidx>interface files, shadowing</nidx> + +Warns you about shadowing of interface files along the supplied import path. +For instance, assuming you invoke @ghc@ with the import path +@-iutils:src@ and @Utils.hi@ exist in both the @utils@ and @src@ +directories, @-fwarn-hi-shadowing@ will warn you that @utils/Utils.hi@ +shadows @src/Utils.hi@. + <tag>@-fwarn-overlapping-patterns@:</tag> <nidx>-fwarn-overlapping-patterns option</nidx> <nidx>overlapping patterns, warning</nidx> @@ -672,19 +682,22 @@ a rule to do so; one of the preceding suffix rules does the job nicely. Putting inter-dependencies of the form @Foo.o : Bar.hi@ into your -@Makefile@ by hand is rather error-prone. Don't worry---never fear, -@mkdependHS@ is here! (and is distributed as part of GHC) Add the -following to your @Makefile@: +@Makefile@ by hand is rather error-prone. @ghc@ offers you a helping +hand with it's @-M@ option. To automatically generate +inter-dependencies, add the following to your @Makefile@: <tscreen><verb> depend : - mkdependHS -- $(HC_OPTS) -- $(SRCS) + $(HC) -M $(HC_OPTS) $(SRCS) </verb></tscreen> Now, before you start compiling, and any time you change the @imports@ in your program, do @make depend@ before you do @make cool_pgm@. -@mkdependHS@ will append the needed dependencies to your @Makefile@. -@mkdependHS@ is fully describe in Section <ref name="Makefile +@ghc -M@ will then append the needed dependencies to your @Makefile@. + +The dependencies are actually generated by another utility, +@mkdependHS@, which @ghc -M@ just calls upon. @mkdependHS@ is +distributed with GHC and is documented in Section <ref name="Makefile dependencies in Haskell: using mkdependHS" id="mkdependHS">. A few caveats about this simple scheme: