Commit 39faf3c7 authored by Finn Teegen's avatar Finn Teegen

Fix bug that type declarations weren't syntax checked

parent 14880aae
...@@ -13,6 +13,7 @@ Under development (0.4.1) ...@@ -13,6 +13,7 @@ Under development (0.4.1)
* Consider parenthesized type expressions in the Curry AST (by Katharina Rahf) * Consider parenthesized type expressions in the Curry AST (by Katharina Rahf)
* Added syntax extension `ExistentialQuantification` that allows the use * Added syntax extension `ExistentialQuantification` that allows the use
of existentially quantified types in data and newtype constructors of existentially quantified types in data and newtype constructors
* Fixed bug that type declarations weren't syntax checked
Version 0.4.0 Version 0.4.0
============= =============
......
...@@ -331,10 +331,10 @@ checkModule :: Module -> SCM (Module, [KnownExtension]) ...@@ -331,10 +331,10 @@ checkModule :: Module -> SCM (Module, [KnownExtension])
checkModule (Module ps m es is ds) = do checkModule (Module ps m es is ds) = do
mapM_ checkPragma ps mapM_ checkPragma ps
mapM_ bindTypeDecl tds mapM_ bindTypeDecl tds
ds' <- (tds ++) <$> checkTopDecls vds ds' <- checkTopDecls ds
exts <- getExtensions exts <- getExtensions
return (Module ps m es is ds', exts) return (Module ps m es is ds', exts)
where (tds, vds) = partition isTypeDecl ds where tds = filter isTypeDecl ds
checkPragma :: ModulePragma -> SCM () checkPragma :: ModulePragma -> SCM ()
checkPragma (LanguagePragma _ exts) = mapM_ checkExtension exts checkPragma (LanguagePragma _ exts) = mapM_ checkExtension exts
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment