branch: elpa/haskell-tng-mode commit e79577e8c27baf198b6bb625c6c4171bca4badd4 Author: Tseen She <ts33n....@gmail.com> Commit: Tseen She <ts33n....@gmail.com>
match ghc source paths when compiling --- haskell-tng-compile.el | 9 ++++++++- test/compile/ghc-8.4.4-error.compile.faceup | 4 ++-- test/compile/ghc-8.4.4-errorspan.compile.faceup | 4 ++-- test/compile/ghc-8.4.4-warning.compile.faceup | 8 ++++---- test/compile/ghc-8.4.4-warningspan.compile.faceup | 8 ++++---- test/haskell-tng-testutils.el | 2 ++ 6 files changed, 22 insertions(+), 13 deletions(-) diff --git a/haskell-tng-compile.el b/haskell-tng-compile.el index 8b8528e..017ae25 100644 --- a/haskell-tng-compile.el +++ b/haskell-tng-compile.el @@ -13,7 +13,7 @@ (require 'compile) (require 'ansi-color) -;; TODO prettify-symbol rules for home dirs and project dirs, etc +;; TODO prettify-symbol rules for home dirs, project dirs, and hide .o files, etc ;; TODO set compilation-directory when opening the file ;; TODO set compilation-environment to include TASTY envvars @@ -39,6 +39,13 @@ (,(rx-to-string `(: bol (+ space) "error, called at" (+ space) ,file ":" ,num ":" ,num " in ")) 1 2 3 2 1) + + ;; ghc information. It's better to not have -fhide-source-paths + (,(rx-to-string + `(: bol "[" ,num " of " ,num "] Compiling " + (group (+ (not (syntax whitespace)))) + (? (* space) "(" (* space) ,file))) + 4 nil nil 0 3 (3 'compilation-info)) )) "The `compilation-error-regexp-alist' for `haskell-tng'.") diff --git a/test/compile/ghc-8.4.4-error.compile.faceup b/test/compile/ghc-8.4.4-error.compile.faceup index cb65688..3f951a8 100644 --- a/test/compile/ghc-8.4.4-error.compile.faceup +++ b/test/compile/ghc-8.4.4-error.compile.faceup @@ -7,8 +7,8 @@ In order, the following will be built (use -v for more details): Configuring library for stackage-to-hackage-1.1.0.. Preprocessing library for stackage-to-hackage-1.1.0.. Building library for stackage-to-hackage-1.1.0.. -[1 of 2] Compiling StackageToHackage.Stackage ( lib/StackageToHackage/Stackage.hs, /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stackage-to-hackage-1.1.0/noopt/build/StackageToHackage/Stackage.o ) -[2 of 2] Compiling StackageToHackage.Hackage ( lib/StackageToHackage/Hackage.hs, /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stackage-to-hackage-1.1.0/noopt/build/StackageToHackage/Hackage.o ) +[1 of 2] Compiling «U:«:compilation-info:StackageToHackage.Stackage»» ( «:compilation-info:lib/StackageToHackage/Stackage.hs», /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stackage-to-hackage-1.1.0/noopt/build/StackageToHackage/Stackage.o ) +[2 of 2] Compiling «U:«:compilation-info:StackageToHackage.Hackage»» ( «:compilation-info:lib/StackageToHackage/Hackage.hs», /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stackage-to-hackage-1.1.0/noopt/build/StackageToHackage/Hackage.o ) «U:«:compilation-error:lib/StackageToHackage/Hackage.hs»»:«:compilation-line-number:33»:«:compilation-column-number:16»: «:compilation-error:error»: parse error on input ‘=’ diff --git a/test/compile/ghc-8.4.4-errorspan.compile.faceup b/test/compile/ghc-8.4.4-errorspan.compile.faceup index 24c543d..3871b70 100644 --- a/test/compile/ghc-8.4.4-errorspan.compile.faceup +++ b/test/compile/ghc-8.4.4-errorspan.compile.faceup @@ -7,8 +7,8 @@ In order, the following will be built (use -v for more details): Configuring library for stackage-to-hackage-1.1.0.. Preprocessing library for stackage-to-hackage-1.1.0.. Building library for stackage-to-hackage-1.1.0.. -[1 of 2] Compiling StackageToHackage.Stackage -[2 of 2] Compiling StackageToHackage.Hackage +[1 of 2] Compiling «U:«:compilation-info:StackageToHackage.Stackage»» +[2 of 2] Compiling «U:«:compilation-info:StackageToHackage.Hackage»» «U:«:compilation-error:lib/StackageToHackage/Hackage.hs»»:«:compilation-line-number:13»:«:compilation-column-number:1»-«:compilation-column-number:53»: «:compilation-error:error»: Could not find module ‘Data.ByteStrong’ diff --git a/test/compile/ghc-8.4.4-warning.compile.faceup b/test/compile/ghc-8.4.4-warning.compile.faceup index d8baa6c..a9a2021 100644 --- a/test/compile/ghc-8.4.4-warning.compile.faceup +++ b/test/compile/ghc-8.4.4-warning.compile.faceup @@ -7,8 +7,8 @@ In order, the following will be built (use -v for more details): Configuring library for stackage-to-hackage-1.1.0.. Preprocessing library for stackage-to-hackage-1.1.0.. Building library for stackage-to-hackage-1.1.0.. -[1 of 2] Compiling StackageToHackage.Stackage ( lib/StackageToHackage/Stackage.hs, /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stackage-to-hackage-1.1.0/noopt/build/StackageToHackage/Stackage.o ) -[2 of 2] Compiling StackageToHackage.Hackage ( lib/StackageToHackage/Hackage.hs, /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stackage-to-hackage-1.1.0/noopt/build/StackageToHackage/Hackage.o ) +[1 of 2] Compiling «U:«:compilation-info:StackageToHackage.Stackage»» ( «:compilation-info:lib/StackageToHackage/Stackage.hs», /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stackage-to-hackage-1.1.0/noopt/build/StackageToHackage/Stackage.o ) +[2 of 2] Compiling «U:«:compilation-info:StackageToHackage.Hackage»» ( «:compilation-info:lib/StackageToHackage/Hackage.hs», /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stackage-to-hackage-1.1.0/noopt/build/StackageToHackage/Hackage.o ) «U:«:compilation-warning:lib/StackageToHackage/Hackage.hs»»:«:compilation-line-number:13»:«:compilation-column-number:1»: «:compilation-warning:warning»: [-Wunused-imports] The qualified import of ‘Data.ByteString’ is redundant @@ -23,7 +23,7 @@ Preprocessing executable 'stackage-to-hackage' for stackage-to-hackage-1.1.0.. Building executable 'stackage-to-hackage' for stackage-to-hackage-1.1.0.. Preprocessing executable 'stack2cabal' for stack2cabal-1.0.2.. Building executable 'stack2cabal' for stack2cabal-1.0.2.. -[1 of 1] Compiling Main ( exe/Main.hs, /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stackage-to-hackage-1.1.0/x/stackage-to-hackage/noopt/build/stackage-to-hackage/stackage-to-hackage-tmp/Main.o ) -[1 of 1] Compiling Main ( exe/Main.hs, /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stack2cabal-1.0.2/x/stack2cabal/noopt/build/stack2cabal/stack2cabal-tmp/Main.o ) +[1 of 1] Compiling «U:«:compilation-info:Main»» ( «:compilation-info:exe/Main.hs», /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stackage-to-hackage-1.1.0/x/stackage-to-hackage/noopt/build/stackage-to-hackage/stackage-to-hackage-tmp/Main.o ) +[1 of 1] Compiling «U:«:compilation-info:Main»» ( «:compilation-info:exe/Main.hs», /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stack2cabal-1.0.2/x/stack2cabal/noopt/build/stack2cabal/stack2cabal-tmp/Main.o ) Linking /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stack2cabal-1.0.2/x/stack2cabal/noopt/build/stack2cabal/stack2cabal ... Linking /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stackage-to-hackage-1.1.0/x/stackage-to-hackage/noopt/build/stackage-to-hackage/stackage-to-hackage ... diff --git a/test/compile/ghc-8.4.4-warningspan.compile.faceup b/test/compile/ghc-8.4.4-warningspan.compile.faceup index 9e2d866..b78fcc2 100644 --- a/test/compile/ghc-8.4.4-warningspan.compile.faceup +++ b/test/compile/ghc-8.4.4-warningspan.compile.faceup @@ -7,8 +7,8 @@ In order, the following will be built (use -v for more details): Configuring library for stackage-to-hackage-1.1.0.. Preprocessing library for stackage-to-hackage-1.1.0.. Building library for stackage-to-hackage-1.1.0.. -[1 of 2] Compiling StackageToHackage.Stackage -[2 of 2] Compiling StackageToHackage.Hackage +[1 of 2] Compiling «U:«:compilation-info:StackageToHackage.Stackage»» +[2 of 2] Compiling «U:«:compilation-info:StackageToHackage.Hackage»» «U:«:compilation-warning:lib/StackageToHackage/Hackage.hs»»:«:compilation-line-number:13»:«:compilation-column-number:1»-«:compilation-column-number:53»: «:compilation-warning:warning»: [-Wunused-imports] The qualified import of ‘Data.ByteString’ is redundant @@ -29,7 +29,7 @@ Preprocessing executable 'stackage-to-hackage' for stackage-to-hackage-1.1.0.. Building executable 'stackage-to-hackage' for stackage-to-hackage-1.1.0.. Preprocessing executable 'stack2cabal' for stack2cabal-1.0.2.. Building executable 'stack2cabal' for stack2cabal-1.0.2.. -[1 of 1] Compiling Main -[1 of 1] Compiling Main +[1 of 1] Compiling «U:«:compilation-info:Main»» +[1 of 1] Compiling «U:«:compilation-info:Main»» Linking /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stackage-to-hackage-1.1.0/x/stackage-to-hackage/noopt/build/stackage-to-hackage/stackage-to-hackage ... Linking /home/tseenshe/stack2cabal/dist-newstyle/build/x86_64-linux/ghc-8.4.4/stack2cabal-1.0.2/x/stack2cabal/noopt/build/stack2cabal/stack2cabal ... diff --git a/test/haskell-tng-testutils.el b/test/haskell-tng-testutils.el index d4371ce..078f642 100644 --- a/test/haskell-tng-testutils.el +++ b/test/haskell-tng-testutils.el @@ -9,6 +9,8 @@ ;; ;;; Code: +(require 'faceup) + (defmacro haskell-tng-testutils:this-lisp-directory () (expand-file-name (if load-file-name