@@ -747,24 +747,32 @@ prettyPrintSingleError full level e = prettyPrintErrorMessage <$> onTypesInError
747747-- Pretty print multiple errors
748748--
749749prettyPrintMultipleErrors :: Bool -> MultipleErrors -> String
750−prettyPrintMultipleErrors full = flip evalState M.empty . prettyPrintMultipleErrorsWith Error "Error found:" "Multiple errors found:" full
750+prettyPrintMultipleErrors full = renderBox . prettyPrintMultipleErrorsBox full
751751
752752-- |
753753-- Pretty print multiple warnings
754754--
755755prettyPrintMultipleWarnings :: Bool -> MultipleErrors -> String
756−prettyPrintMultipleWarnings full = flip evalState M.empty . prettyPrintMultipleErrorsWith Warning "Warning found:" "Multiple warnings found:" full
756+prettyPrintMultipleWarnings full = renderBox . prettyPrintMultipleWarningsBox full
757757
758−prettyPrintMultipleErrorsWith :: Level -> String -> String -> Bool -> MultipleErrors -> State UnknownMap String
758+-- | Pretty print warnings as a Box
759+prettyPrintMultipleWarningsBox :: Bool -> MultipleErrors -> Box.Box
760+prettyPrintMultipleWarningsBox full = flip evalState M.empty . prettyPrintMultipleErrorsWith Warning "Warning found:" "Multiple warnings found:" full
761+
762+-- | Pretty print errors as a Box
763+prettyPrintMultipleErrorsBox :: Bool -> MultipleErrors -> Box.Box
764+prettyPrintMultipleErrorsBox full = flip evalState M.empty . prettyPrintMultipleErrorsWith Error "Error found:" "Multiple errors found:" full
765+
766+prettyPrintMultipleErrorsWith :: Level -> String -> String -> Bool -> MultipleErrors -> State UnknownMap Box.Box
759767prettyPrintMultipleErrorsWith level intro _ full (MultipleErrors [e]) = do
760768 result <- prettyPrintSingleError full level e
761− return $ renderBox $
769+ return $
762770 Box.vcat Box.left [ Box.text intro
763771 , result
764772 ]
765773prettyPrintMultipleErrorsWith level _ intro full (MultipleErrors es) = do
766774 result <- forM es $ (liftM $ Box.moveRight 2) . prettyPrintSingleError full level
767− return $ renderBox $
775+ return $
768776 Box.vcat Box.left [ Box.text intro
769777 , Box.vsep 1 Box.left result
770778 ]