summaryrefslogtreecommitdiff
path: root/testsuite/tests/perf/compiler/hard_hole_fits.hs
blob: 59d08c7f24098cdea1aca948487cbb3eabe48cb2 (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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}

-- typechecking goes really fast if you uncomment this line

-- {-# OPTIONS_GHC -fmax-valid-hole-fits=0 #-}

module SlowTypecheck where

import Language.Haskell.Syntax.Expr
import GHC (GhcPs)

testMe :: HsExpr GhcPs -> Int
testMe (HsVar a b) = _
testMe (HsUnboundVar xuv uv) = _
testMe (HsOverLabel xol m_ip) = _
testMe (HsIPVar xv hin) = _
testMe (HsOverLit xole hol) = _
testMe (HsLit xle hl) = _
testMe (HsLam xl mg) = _
testMe (HsLamCase xlc lc_variant mg) = _
testMe (HsApp xa gl gl') = _
testMe (HsAppType xate gl at hwcb) = _
testMe (OpApp xoa gl gl' gl2) = _
testMe (NegApp xna gl se) = _
testMe (HsPar xp gl ab ac) = _
testMe (SectionL xsl gl gl') = _
testMe (SectionR xsr gl gl') = _
testMe (ExplicitTuple xet gls box) = _
testMe (ExplicitSum xes n i gl) = _
testMe (HsCase xc gl mg) = _
testMe (HsIf xi m_se gl gl' ) = _
testMe (HsMultiIf xmi gls) = _
testMe (HsLet xl tkLet gl tkIn gl') = _
testMe (HsDo xd hsc gl) = _
testMe (ExplicitList xel m_se) = _
testMe (RecordCon xrc gl hrf) = _
testMe (RecordUpd xru gl gls) = _
testMe (ExprWithTySig xewts gl hwcb) = _
testMe (ArithSeq xas m_se asi) = _
testMe (HsTypedBracket xb hb) = _
testMe (HsUntypedBracket xb hb) = _
testMe (HsTypedSplice xs hs) = _
testMe (HsUntypedSplice xs hs) = _
testMe (HsProc xp pat gl) = _
testMe (HsStatic xs gl) = _
testMe (XExpr xe) = _