summaryrefslogtreecommitdiff
path: root/ghc/compiler/parser/printtree.c
Commit message (Collapse)AuthorAgeFilesLines
* [project @ 1999-06-01 16:40:41 by simonmar]simonmar1999-06-011-776/+0
| | | | | | | | | | | | | | | | | | | | | | | | | This commit replaces the old yacc parser with a Happy-generated one. Notes: - The generated .hs file is *big*. Best to use a recent version of Happy, and even better to add the -c flag to use unsafeCoerce# with ghc (versions 4.02+ please). - The lexer has grown all sorts of unsightly growths and should be put down as soon as possible. - Parse errors may result in strange diagnostics. I'm looking into this. - HsSyn now contains a few extra constructors due to the way patterns are parsed as expressions in the parser. - The layout rule is implemented according to the Haskell report. I found a couple of places in the libraries where we previously weren't adhering to this - in particular the rule about "nested contexts must be more indented than outer contexts". The rule is necessary to disambiguate in the presence of empty declaration lists.
* [project @ 1999-05-18 15:03:54 by simonpj]simonpj1999-05-181-1/+0
| | | | RULES-NOTES
* [project @ 1998-12-18 17:40:31 by simonpj]simonpj1998-12-181-42/+17
| | | | | | | | | | | | | | | | | | | | | Another big commit from Simon. Actually, the last one didn't all go into the main trunk; because of a CVS glitch it ended up in the wrong branch. So this commit includes: * Scoped type variables * Warnings for unused variables should work now (they didn't before) * Simplifier improvements: - Much better treatment of strict arguments - Better treatment of bottoming Ids - No need for w/w split for fns that are merely strict - Fewer iterations needed, I hope * Less gratuitous renaming in interface files and abs C * OccName is a separate module, and is an abstract data type I think the whole Prelude and Exts libraries compile correctly. Something isn't quite right about typechecking existentials though.
* [project @ 1998-12-02 13:17:09 by simonm]simonm1998-12-021-4/+5
| | | | Move 4.01 onto the main trunk.
* [project @ 1998-01-08 18:03:08 by simonm]simonm1998-01-081-2/+0
| | | | | | | | | | | | | | | | | | | The Great Multi-Parameter Type Classes Merge. Notes from Simon (abridged): * Multi-parameter type classes are fully implemented. * Error messages from the type checker should be noticeably improved * Warnings for unused bindings (-fwarn-unused-names) * many other minor bug fixes. Internally there are the following changes * Removal of Haskell 1.2 compatibility. * Dramatic clean-up of the PprStyle stuff. * The type Type has been substantially changed. * The dictionary for each class is represented by a new data type for that purpose, rather than by a tuple.
* [project @ 1997-09-24 09:08:21 by simonm]simonm1997-09-241-8/+0
| | | | Remove deforester
* [project @ 1997-06-05 20:41:37 by sof]sof1997-06-051-1/+2
| | | | updated to cope with pattern guards
* [project @ 1997-01-17 00:32:23 by simonpj]simonpj1997-01-171-288/+164
| | | | Cross module worker-wrappers
* [project @ 1996-03-21 12:46:33 by partain]partain1996-03-211-5/+5
| | | | Final compiler stuff before Sansom renamer 960321
* [project @ 1996-03-19 08:58:34 by partain]partain1996-03-191-0/+934
simonpj/sansom/partain/dnt 1.3 compiler stuff through 96/03/18