on master help sign in
Fix missing cases in 'tldeclared' to allow class/instance in parameter blocks

Fixes #436

commite410ab39da5c1e2eef3b3a0102496d5084167571 authorEdwin Brady <ecb10@st-andrews.ac.uk> dateSat 3 Aug 2013, 17:02 (13 years ago) parentdb1e94f
2 files changed+4−2
src/Idris/AbsSyntaxTree.hs+3−1 src/Idris/ElabDecls.hs+1−1
src/Idris/AbsSyntaxTree.hs+3−1
@@ -458,7 +458,9 @@ tldeclared (PData _ _ _ _ (PDatadecl n _ ts)) = n : map fstt ts
458458tldeclared (PParams _ _ ds) = []
459459tldeclared (PMutual _ ds) = concatMap tldeclared ds
460460tldeclared (PNamespace _ ds) = concatMap tldeclared ds
461−
461+tldeclared (PClass _ _ _ _ n _ ms) = concatMap tldeclared ms
462+tldeclared (PInstance _ _ _ _ _ _ _ _) = []
463+tldeclared _ = []
462464
463465defined :: PDecl -> [Name]
464466defined (PFix _ _ _) = []
src/Idris/ElabDecls.hs+1−1
@@ -1434,7 +1434,7 @@ elabDecl' what info (PNamespace n ps) = mapM_ (elabDecl' what ninfo) ps
14341434elabDecl' what info (PClass doc s f cs n ps ds)
14351435 | what /= EDefns
14361436 = do iLOG $ "Elaborating class " ++ show n
1437− elabClass info s doc f cs n ps ds
1437+ elabClass info (s { syn_params = [] }) doc f cs n ps ds
14381438elabDecl' what info (PInstance s f cs n ps t expn ds)
14391439 | what /= ETypes
14401440 = do iLOG $ "Elaborating instance " ++ show n