Skip to content

Commit

Permalink
Update tests to GHC 7.10. Fixes #103
Browse files Browse the repository at this point in the history
  • Loading branch information
Jan Stolarek committed Apr 19, 2015
1 parent 6281f15 commit 710a1e0
Show file tree
Hide file tree
Showing 42 changed files with 12,134 additions and 2 deletions.
4 changes: 3 additions & 1 deletion tests/SingletonsTestSuiteUtils.hs
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,10 @@ ghcVersion = error "testsuite requires GHC 7.8 or newer"
#else
-- these conditions are a bit nonsense right now, but they are here
-- to demonstrate how to add support for different GHC versions
#if __GLASGOW_HASKELL__ >= 708
#if __GLASGOW_HASKELL__ < 709
ghcVersion = ".ghc78"
#else
ghcVersion = ".ghc710"
#endif
#endif

Expand Down
4,827 changes: 4,827 additions & 0 deletions tests/compile-and-dump/GradingClient/Database.ghc710.template

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion tests/compile-and-dump/GradingClient/Database.hs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ presented in /Dependently typed programming with singletons/
{-# LANGUAGE PolyKinds, DataKinds, TemplateHaskell, TypeFamilies,
GADTs, TypeOperators, RankNTypes, FlexibleContexts, UndecidableInstances,
FlexibleInstances, ScopedTypeVariables, MultiParamTypeClasses,
OverlappingInstances, ConstraintKinds, CPP #-}
ConstraintKinds, CPP #-}
{-# OPTIONS_GHC -fno-warn-warnings-deprecations #-}

-- The OverlappingInstances is needed only to allow the InC and SubsetC classes.
Expand Down
162 changes: 162 additions & 0 deletions tests/compile-and-dump/GradingClient/Main.ghc710.template
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
GradingClient/Main.hs:(0,0)-(0,0): Splicing declarations
singletons
[d| lastName, firstName, yearName, gradeName, majorName :: [AChar]
lastName = [CL, CA, CS, CT]
firstName = [CF, CI, CR, CS, CT]
yearName = [CY, CE, CA, CR]
gradeName = [CG, CR, CA, CD, CE]
majorName = [CM, CA, CJ, CO, CR]
gradingSchema :: Schema
gradingSchema
= Sch
[Attr lastName STRING, Attr firstName STRING, Attr yearName NAT,
Attr gradeName NAT, Attr majorName BOOL]
names :: Schema
names = Sch [Attr firstName STRING, Attr lastName STRING] |]
======>
lastName :: [AChar]
firstName :: [AChar]
yearName :: [AChar]
gradeName :: [AChar]
majorName :: [AChar]
lastName = [CL, CA, CS, CT]
firstName = [CF, CI, CR, CS, CT]
yearName = [CY, CE, CA, CR]
gradeName = [CG, CR, CA, CD, CE]
majorName = [CM, CA, CJ, CO, CR]
gradingSchema :: Schema
gradingSchema
= Sch
[Attr lastName STRING, Attr firstName STRING, Attr yearName NAT,
Attr gradeName NAT, Attr majorName BOOL]
names :: Schema
names = Sch [Attr firstName STRING, Attr lastName STRING]
type MajorNameSym0 = MajorName
type GradeNameSym0 = GradeName
type YearNameSym0 = YearName
type FirstNameSym0 = FirstName
type LastNameSym0 = LastName
type GradingSchemaSym0 = GradingSchema
type NamesSym0 = Names
type MajorName =
(Apply (Apply (:$) CMSym0) (Apply (Apply (:$) CASym0) (Apply (Apply (:$) CJSym0) (Apply (Apply (:$) COSym0) (Apply (Apply (:$) CRSym0) '[])))) :: [AChar])
type GradeName =
(Apply (Apply (:$) CGSym0) (Apply (Apply (:$) CRSym0) (Apply (Apply (:$) CASym0) (Apply (Apply (:$) CDSym0) (Apply (Apply (:$) CESym0) '[])))) :: [AChar])
type YearName =
(Apply (Apply (:$) CYSym0) (Apply (Apply (:$) CESym0) (Apply (Apply (:$) CASym0) (Apply (Apply (:$) CRSym0) '[]))) :: [AChar])
type FirstName =
(Apply (Apply (:$) CFSym0) (Apply (Apply (:$) CISym0) (Apply (Apply (:$) CRSym0) (Apply (Apply (:$) CSSym0) (Apply (Apply (:$) CTSym0) '[])))) :: [AChar])
type LastName =
(Apply (Apply (:$) CLSym0) (Apply (Apply (:$) CASym0) (Apply (Apply (:$) CSSym0) (Apply (Apply (:$) CTSym0) '[]))) :: [AChar])
type GradingSchema =
(Apply SchSym0 (Apply (Apply (:$) (Apply (Apply AttrSym0 LastNameSym0) STRINGSym0)) (Apply (Apply (:$) (Apply (Apply AttrSym0 FirstNameSym0) STRINGSym0)) (Apply (Apply (:$) (Apply (Apply AttrSym0 YearNameSym0) NATSym0)) (Apply (Apply (:$) (Apply (Apply AttrSym0 GradeNameSym0) NATSym0)) (Apply (Apply (:$) (Apply (Apply AttrSym0 MajorNameSym0) BOOLSym0)) '[]))))) :: Schema)
type Names =
(Apply SchSym0 (Apply (Apply (:$) (Apply (Apply AttrSym0 FirstNameSym0) STRINGSym0)) (Apply (Apply (:$) (Apply (Apply AttrSym0 LastNameSym0) STRINGSym0)) '[])) :: Schema)
sMajorName :: Sing MajorNameSym0
sGradeName :: Sing GradeNameSym0
sYearName :: Sing YearNameSym0
sFirstName :: Sing FirstNameSym0
sLastName :: Sing LastNameSym0
sGradingSchema :: Sing GradingSchemaSym0
sNames :: Sing NamesSym0
sMajorName
= applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCM)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCA)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCJ)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCO)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCR) SNil))))
sGradeName
= applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCG)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCR)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCA)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCD)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCE) SNil))))
sYearName
= applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCY)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCE)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCA)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCR) SNil)))
sFirstName
= applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCF)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCI)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCR)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCS)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCT) SNil))))
sLastName
= applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCL)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCA)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCS)
(applySing
(applySing (singFun2 (Proxy :: Proxy (:$)) SCons) SCT) SNil)))
sGradingSchema
= applySing
(singFun1 (Proxy :: Proxy SchSym0) SSch)
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sLastName)
SSTRING))
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sFirstName)
SSTRING))
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sYearName)
SNAT))
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sGradeName)
SNAT))
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sMajorName)
SBOOL))
SNil)))))
sNames
= applySing
(singFun1 (Proxy :: Proxy SchSym0) SSch)
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sFirstName)
SSTRING))
(applySing
(applySing
(singFun2 (Proxy :: Proxy (:$)) SCons)
(applySing
(applySing (singFun2 (Proxy :: Proxy AttrSym0) SAttr) sLastName)
SSTRING))
SNil))
Loading

0 comments on commit 710a1e0

Please sign in to comment.