summaryrefslogtreecommitdiff
path: root/testsuite/tests/deSugar/should_run/dsrun006.hs
blob: dc31dac6b8871a2d49cfbdbdf7d0fc0c720863b1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{-
Date: Tue, 20 May 1997 05:10:04 GMT
From: Tomasz Cholewo <tjchol01@mecca.spd.louisville.edu>

ghc-2.03 cannot compile the following code, which I think is correct
according to the Report

        data X = A {a :: Int} | B {a :: Int}

The error message is:

    Conflicting definitions for:  a
        Defined at bug4.lhs:2
        Defined at bug4.lhs:2

In addition the following snippet

        data X = A {a :: Int}
        y = let A {a} = x
            in a

fails with:

    bug4.lhs:4:5: Not a valid LHS on input: "in"
-}
--module Main(main) where

data X = A {a :: Int} | B {a :: Int}

f x = let A {a=a} = x
      in a

main = print (f (A {a = 3}))