Skip to content
  • chak@cse.unsw.edu.au.'s avatar
    [project @ 2002-02-12 03:52:08 by chak] · 2f874c4c
    chak@cse.unsw.edu.au. authored
    This fixes a problem with the recent clean up in the parsing of type
    declarations.  The cleaned up version was correct by H98 (I think), but
    unfortunately won't compile the Prelude anymore.
    
    I made the definition a little bit more liberal as follows:
    - In `tycl_hdr' allow `gtycon' instead of just `tycon' for the defined type
      constructor.  This allows beyond H98 special syntax like "[]" etc as well as
      tycon ops in parenthesis.  Moreover, it allows qualified names, but the
      renamer flags the latter as errors.
    - Allow `gtycon' instead of only `qtycon' for the class name in definitions of
      the form `Eq a => T a' to avoid a whole list of s/r conflicts.  (I have *not*
      checked that the renamer flags misuse, but I would expect that it does.)
    
    ToDo: I think, the renamer should raise an error for all these additional
          forms *unless* -fglasgow-exts is given.
    
    In PrelBase, I needed to replace the infix notation by prefix notation in the
    definition of `:+:' and `:*:'.
    2f874c4c