Skip to content
Snippets Groups Projects
Commit 31d1c24e authored by AndyGill's avatar AndyGill
Browse files

[project @ 2000-10-05 22:50:18 by andy]

Fixing the order that labeled fields appear in datatypes. Currently
they are reversed, which breaks the prelude badly.

[From Haskell report:

The arguments to the positional constructor occur in the same order as the labeled fields. For example, the declaration

  data C = F { f1,f2 :: Int, f3 :: Bool}

defines a type and constructor identical to the one produced by

  data C = F Int Int Bool

]
parent affb3578
No related branches found
No related tags found
No related merge requests found
{-
-----------------------------------------------------------------------------
$Id: Parser.y,v 1.38 2000/10/05 15:42:30 simonpj Exp $
$Id: Parser.y,v 1.39 2000/10/05 22:50:18 andy Exp $
Haskell grammar.
......@@ -595,7 +595,7 @@ context :: { RdrNameContext }
constr_stuff :: { (RdrName, RdrNameConDetails) }
: btype {% mkVanillaCon $1 [] }
| btype '!' atype satypes {% mkVanillaCon $1 (Banged $3 : $4) }
| gtycon '{' fielddecls '}' {% mkRecCon $1 $3 }
| gtycon '{' fielddecls '}' {% mkRecCon $1 (reverse $3) }
| sbtype conop sbtype { ($2, InfixCon $1 $3) }
satypes :: { [RdrNameBangType] }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment