diff options
Diffstat (limited to 'src/compiler/GF/Compile')
| -rw-r--r-- | src/compiler/GF/Compile/CheckGrammar.hs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/compiler/GF/Compile/CheckGrammar.hs b/src/compiler/GF/Compile/CheckGrammar.hs index d66fdad71..f7af80327 100644 --- a/src/compiler/GF/Compile/CheckGrammar.hs +++ b/src/compiler/GF/Compile/CheckGrammar.hs @@ -53,11 +53,13 @@ checkModule opts mos mo@(m,mi) = do abs <- checkErr $ lookupModule gr a checkCompleteGrammar gr (a,abs) mo _ -> return mo - infos <- checkErr $ topoSortJments mo - foldM updateCheckInfo mo infos + infoss <- checkErr $ topoSortJments2 mo + foldM updateCheckInfos mo infoss where + updateCheckInfos mo0 = commitCheck . foldM updateCheckInfo mo0 + updateCheckInfo mo@(m,mi) (i,info) = do - info <- checkInfo opts mos mo i info + info <- accumulateError (checkInfo opts mos mo i) info return (m,mi{jments=updateTree (i,info) (jments mi)}) -- check if restricted inheritance modules are still coherent |
