Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
gargantext-ihaskell
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
gargantext
gargantext-ihaskell
Commits
1adbce06
Commit
1adbce06
authored
Mar 06, 2015
by
Andrew Gibiansky
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix #386: always print parse errors
parent
bb881aa0
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
20 additions
and
9 deletions
+20
-9
Evaluate.hs
src/IHaskell/Eval/Evaluate.hs
+20
-9
No files found.
src/IHaskell/Eval/Evaluate.hs
View file @
1adbce06
...
...
@@ -79,10 +79,6 @@ import Data.Version (versionBranch)
data
ErrorOccurred
=
Success
|
Failure
deriving
(
Show
,
Eq
)
-- | Enable debugging output
debug
::
Bool
debug
=
False
-- | Set GHC's verbosity for debugging
ghcVerbosity
::
Maybe
Int
ghcVerbosity
=
Nothing
-- Just 5
...
...
@@ -257,12 +253,27 @@ evaluate kernelState code output = do
cmds
<-
parseString
(
cleanString
code
)
let
execCount
=
getExecutionCounter
kernelState
-- Extract all parse errors.
let
justError
x
@
ParseError
{}
=
Just
x
justError
_
=
Nothing
errs
=
mapMaybe
(
justError
.
unloc
)
cmds
updated
<-
case
errs
of
-- Only run things if there are no parse errors.
[]
->
do
when
(
getLintStatus
kernelState
/=
LintOff
)
$
liftIO
$
do
lintSuggestions
<-
lint
cmds
unless
(
noResults
lintSuggestions
)
$
output
$
FinalResult
lintSuggestions
""
[]
updated
<-
runUntilFailure
kernelState
(
map
unloc
cmds
++
[
storeItCommand
execCount
])
runUntilFailure
kernelState
(
map
unloc
cmds
++
[
storeItCommand
execCount
])
-- Print all parse errors.
errs
->
do
forM_
errs
$
\
err
->
do
out
<-
evalCommand
output
err
kernelState
liftIO
$
output
$
FinalResult
(
evalResult
out
)
""
[]
return
kernelState
return
updated
{
getExecutionCounter
=
execCount
+
1
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment