@@ -110,7 +110,7 @@ repl orig mods
110110 return ()
111111 Just input -> -- H.catch
112112 do ms <- H.catch (lift $ processInput input orig mods)
113− (ctrlC (return (Just mods)))
113+ (ctrlC (return (Just mods)))
114114 case ms of
115115 Just mods -> repl orig mods
116116 Nothing -> return ()
@@ -121,7 +121,7 @@ repl orig mods
121121 act -- repl orig mods
122122
123123 showMVs c thm [] = ""
124− showMVs c thm ms = "Metavariables: " ++
124+ showMVs c thm ms = "Metavariables: " ++
125125 show' 4 c thm (map fst ms) ++ "\n"
126126
127127 show' 0 c thm ms = let l = length ms in
@@ -129,7 +129,7 @@ repl orig mods
129129 ++ " other"
130130 ++ if l == 1 then ")" else "s)"
131131 show' n c thm [m] = showM c thm m
132− show' n c thm (m : ms) = showM c thm m ++ ", " ++
132+ show' n c thm (m : ms) = showM c thm m ++ ", " ++
133133 show' (n - 1) c thm ms
134134
135135 showM c thm n = if c then colouriseFun thm (show n)
@@ -388,6 +388,7 @@ splitName s = case reverse $ splitOn "." s of
388388 (n:ns) -> Right $ sNS (sUN n) ns
389389
390390ideslaveProcess :: FilePath -> Command -> Idris ()
391+ideslaveProcess fn Warranty = process stdout fn Warranty
391392ideslaveProcess fn Help = process stdout fn Help
392393ideslaveProcess fn (ChangeDirectory f) = do process stdout fn (ChangeDirectory f)
393394 iPrintResult "changed directory to"
@@ -564,6 +565,7 @@ insertScript prf (x : xs) = x : insertScript prf xs
564565
565566process :: Handle -> FilePath -> Command -> Idris ()
566567process h fn Help = iPrintResult displayHelp
568+process h fn Warranty = iPrintResult warranty
567569process h fn (ChangeDirectory f)
568570 = do runIO $ setCurrentDirectory f
569571 return ()
@@ -709,7 +711,7 @@ process h fn (DebugInfo n)
709711 when (not (null cg')) $ do iputStrLn "Call graph:\n"
710712 iputStrLn (show cg')
711713process h fn (Search t) = searchByType h t
712−process h fn (CaseSplitAt updatefile l n)
714+process h fn (CaseSplitAt updatefile l n)
713715 = caseSplitAt h fn updatefile l n
714716process h fn (AddClauseFrom updatefile l n)
715717 = addClauseFrom h fn updatefile l n
@@ -1022,10 +1024,10 @@ loadInputs h inputs toline -- furthest line to read in input source files
10221024 let ifiles = getModuleFiles modTree
10231025 iLOG ("MODULE TREE : " ++ show modTree)
10241026 iLOG ("RELOAD: " ++ show ifiles)
1025− when (not (all ibc ifiles) || loadCode) $
1027+ when (not (all ibc ifiles) || loadCode) $
10261028 tryLoad False (filter (not . ibc) ifiles)
10271029 -- return the files that need rechecking
1028− return ifiles)
1030+ return ifiles)
10291031 ninputs
10301032 inew <- getIState
10311033 let tidata = idris_tyinfodata inew
@@ -1395,6 +1397,20 @@ banner = " ____ __ _ \n" ++
13951397 " / _/___/ /____(_)____ \n" ++
13961398 " / // __ / ___/ / ___/ Version " ++ ver ++ "\n" ++
13971399 " _/ // /_/ / / / (__ ) http://www.idris-lang.org/ \n" ++
1398− " /___/\\__,_/_/ /_/____/ Type :? for help \n"
1399−
1400−
1400+ " /___/\\__,_/_/ /_/____/ Type :? for help \n" ++
1401+ "\n" ++
1402+ "Idris is a research tool distributed with ABSOLUTELY NO WARRANTY.\n" ++
1403+ "For details type :warranty."
1404+
1405+warranty = "\n" ++
1406+ "\t THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY \n" ++
1407+ "\t EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \n" ++
1408+ "\t IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR \n" ++
1409+ "\t PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE \n" ++
1410+ "\t LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \n" ++
1411+ "\t CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \n" ++
1412+ "\t SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR \n" ++
1413+ "\t BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \n" ++
1414+ "\t WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE \n" ++
1415+ "\t OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN\n" ++
1416+ "\t IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"