Haskell.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

ghc-tickets

Thread Start a new thread
Download
Threads by month
  • ----- 2025 -----
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2021 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2020 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2019 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2018 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2017 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2016 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2015 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2014 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2013 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
ghc-tickets@haskell.org

January 2019

  • 1 participants
  • 506 discussions
[GHC] #16193: Nondeterministic T15897 timeout failures
by GHC 04 Mar '19

04 Mar '19
#16193: Nondeterministic T15897 timeout failures -------------------------------------+------------------------------------- Reporter: RyanGlScott | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Test Suite | Version: 8.7 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- I'm noticing sporadic test failures for `T15897`. Here is [https://ghc- gitlab.s3.amazonaws.com/43/4c/434c9b5ae514646bbd91b50032ca579efec8f22bf0b4a… ?response-content-type=text/plain%3B%20charset%3Dutf-8&response-content- disposition=inline&X-Amz-Expires=600&X-Amz-Date=20190116T140554Z&X-Amz- Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAI3NPPHETCY4XXTOA/20190116 /us-east-1/s3/aws4_request&X-Amz-SignedHeaders=host&X-Amz- Signature=a8e95f4ef77f5dc5fd38a8ee4f4ccdbb25c1671f8be3b767de21004a2dd407a8 one recent example]: {{{ Wrong exit code for T15897()(expected 0 , actual 99 ) *** unexpected failure for T15897(profasm) }}} This was on the `validate-x86_64-linux-deb9-unreg` CI configuration, although it's unclear to me if the problem is exclusive to that configuration or not. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16193> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
1 5
0 0
[GHC] #16248: ImplicitParams does not imply FlexibleContexts or FlexibleInstances
by GHC 04 Mar '19

04 Mar '19
#16248: ImplicitParams does not imply FlexibleContexts or FlexibleInstances -------------------------------------+------------------------------------- Reporter: NeilMitchell | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Documentation | Version: 8.6.3 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- Given: {{{#!hs {-# LANGUAGE ImplicitParams #-} {-# LANGUAGE FlexibleInstances #-} module Test where data X a = X type XI = X Int class Foo a where foo :: (?p :: Int) => a -> Int instance Foo XI where foo = undefined }}} This code compiles. However, the documentation at https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html #language-options says that ImplicitParams implies FlexibleInstances, so we should be able to remove the FlexibleInstances extension. However, doing so makes it stop compiling. My guess is that ImplicitParams doesn't really imply either of the type class extensions, and that the documentation is buggy. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16248> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
1 7
0 0
[GHC] #16128: Pattern match checker should shortcut on simple cases
by GHC 04 Mar '19

04 Mar '19
#16128: Pattern match checker should shortcut on simple cases -------------------------------------+------------------------------------- Reporter: gbaz | Owner: (none) Type: feature | Status: new request | Priority: normal | Milestone: Component: Compiler | Version: 8.6.3 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- I'm autogenerating with TH some code that does a giant string pattern match on up to 60 cases. This match clause includes a default case, but nonetheless I get a warning: Pattern match checker exceeded (2000000) iterations in a case alternative. (Use -fmax-pmcheck-iterations=n to set the maximun number of iterations to n) Note that in my case all the strings share a great deal in their common prefixes, which probably doesn't help matters. It seems to me that in a case like this, GHC should be able to just check that there are no duplicate strings (i.e. no overlaps) and that there is a default case (i.e. no incompleteness) rather than running the full checker algo. I'm not quite sure if there's a good way to generalize such a proposed shortcut so it is not too much of a special case, but likely something could be done? -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16128> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
1 3
0 0
[GHC] #16236: API Annotations: AnnAt disconnected for TYPEAPP
by GHC 04 Mar '19

04 Mar '19
#16236: API Annotations: AnnAt disconnected for TYPEAPP -------------------------------------+------------------------------------- Reporter: alanz | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.8.1 Component: Compiler | Version: 8.6.3 (Parser) | Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: Incorrect API Unknown/Multiple | annotation Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- For the code {{{#!hs type family F1 (a :: k) (f :: k -> Type) :: Type where F1 @Peano a f = T @Peano f a }}} the API annotation for the first `@` is not attached to a `SourcSpan` in the `ParsedSource` -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16236> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
1 4
0 0
[GHC] #16265: API Annotations: parens anns discarded for `(*)` operator
by GHC 04 Mar '19

04 Mar '19
#16265: API Annotations: parens anns discarded for `(*)` operator -------------------------------------+------------------------------------- Reporter: alanz | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: 8.8.1 Component: Compiler | Version: 8.6.3 (Parser) | Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: Incorrect API Unknown/Multiple | annotation Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- The patch from https://phabricator.haskell.org/D4865 introduces {{{#!hs go _ (HsParTy _ (dL->L l (HsStarTy _ isUni))) acc ann fix = do { warnStarBndr l ; let name = mkOccName tcClsName (if isUni then "★" else "*") ; return (cL l (Unqual name), acc, fix, ann) } }}} which discards the parens annotations belonging to the `HsParTy`. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16265> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
1 4
0 0
[GHC] #16239: hadrian fails to "build" _build/docs/html/libraries/base/base.haddock
by GHC 04 Mar '19

04 Mar '19
#16239: hadrian fails to "build" _build/docs/html/libraries/base/base.haddock -------------------------------------+------------------------------------- Reporter: alpmestan | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Build System | Version: 8.7 (Hadrian) | Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- {{{ #!sh # running: build -V _validate-bug/docs/html/libraries/base/base.haddock | Run Haddock BuildPackage: libraries/base/Control/Applicative.hs (and 236 more) => _validate-bug/docs/html/libraries/base/base.haddock _validate-bug/stage1/bin/haddock --verbosity=0 -B_validate-bug/stage1/lib --lib=_validate-bug/stage1/lib --odir=_validate- bug/docs/html/libraries/base --no-tmp-comp-dir --dump-interface=_validate- bug/docs/html/libraries/base/base.haddock --html --hyperlinked-source --hoogle --quickjump '--title=base-4.12.0.0: Basic libraries' --prologue =_validate-bug/docs/html/libraries/base/haddock-prologue.txt --optghc=-D__HADDOCK_VERSION__=2220 --hide=Control.Monad.ST.Imp --hide=Control.Monad.ST.Lazy.Imp --hide=Data.Functor.Utils --hide=Data.OldList --hide=Data.Semigroup.Internal --hide=Data.Typeable.Internal --hide=Foreign.ForeignPtr.Imp --hide=GHC.StaticPtr.Internal --hide=System.Environment.ExecutablePath --hide=System.CPUTime.Utils --hide=GHC.Event.Arr --hide=GHC.Event.Array --hide=GHC.Event.Control --hide=GHC.Event.EPoll --hide=GHC.Event.IntTable --hide=GHC.Event.Internal --hide=GHC.Event.KQueue --hide=GHC.Event.Manager --hide=GHC.Event.PSQ --hide=GHC.Event.Poll --hide=GHC.Event.Thread --hide=GHC.Event.TimerManager --hide=GHC.Event.Unique --hide=System.CPUTime.Posix.ClockGetTime --hide=System.CPUTime.Posix.Times --hide=System.CPUTime.Posix.RUsage --hide=System.CPUTime.Unsupported --read-interface=../ghc-prim,../ghc-prim/src/%{MODULE}.html#%{NAME },_validate-bug/docs/html/libraries/ghc-prim/ghc-prim.haddock --read- interface=../integer-gmp,../integer-gmp/src/%{MODULE}.html#%{NAME },_validate-bug/docs/html/libraries/integer-gmp/integer-gmp.haddock --optghc=-hisuf --optghc=dyn_hi --optghc=-osuf --optghc=dyn_o --optghc=-hcsuf --optghc=dyn_hc --optghc=-fPIC --optghc=-dynamic --optghc =-hide-all-packages --optghc=-no-user-package-db '--optghc=-this-unit-id base-4.12.0.0' '--optghc=-package-id ghc-prim-0.5.3' '--optghc=-package-id integer-gmp-1.0.2.0' '--optghc=-package-id rts-1.0' --optghc=-i --optghc =-i_validate-bug/stage1/libraries/base/build --optghc=-i_validate- bug/stage1/libraries/base/build/autogen --optghc=-ilibraries/base/. --optghc=-Iincludes --optghc=-I_validate-bug/generated --optghc =-I_validate-bug/stage1/libraries/base/build --optghc=-I/nix/store /jxaaf8dsrb16vnwnij69jar7mhhj969q-ghc-build-environment/include --optghc =-I_validate-bug/stage1/libraries/base/build/include --optghc=-Ilibraries/base/include --optghc=-I/nix/store /jxaaf8dsrb16vnwnij69jar7mhhj969q-ghc-build-environment/include --optghc=-I/home/alp/WT/ghc-gitlab/_validate-bug/stage1/lib/x86_64-linux- ghc-8.7.20190123/integer-gmp-1.0.2.0/include --optghc=-I/home/alp/WT/ghc- gitlab/_validate-bug/stage1/lib/x86_64-linux- ghc-8.7.20190123/rts-1.0/include --optghc=-I_validate-bug/generated --optghc=-optc-I_validate-bug/generated --optghc=-optP-include --optghc =-optP_validate-bug/stage1/libraries/base/build/autogen/cabal_macros.h --optghc=-outputdir --optghc=_validate-bug/stage1/libraries/base/build --optghc=-this-unit-id --optghc=base --optghc=-Wcompat --optghc =-Wnoncanonical-monad-instances --optghc=-XHaskell2010 --optghc =-ghcversion-file=/home/alp/WT/ghc-gitlab/_validate- bug/generated/ghcversion.h --optghc=-Wno-deprecated-flags --optghc=-Wno- trustworthy-safe libraries/base/Control/Applicative.hs libraries/base/Control/Arrow.hs libraries/base/Control/Category.hs libraries/base/Control/Concurrent.hs libraries/base/Control/Concurrent/Chan.hs libraries/base/Control/Concurrent/MVar.hs libraries/base/Control/Concurrent/QSem.hs libraries/base/Control/Concurrent/QSemN.hs libraries/base/Control/Exception.hs libraries/base/Control/Exception/Base.hs libraries/base/Control/Monad.hs libraries/base/Control/Monad/Fail.hs libraries/base/Control/Monad/Fix.hs libraries/base/Control/Monad/IO/Class.hs libraries/base/Control/Monad/Instances.hs libraries/base/Control/Monad/ST.hs libraries/base/Control/Monad/ST/Imp.hs libraries/base/Control/Monad/ST/Lazy.hs libraries/base/Control/Monad/ST/Lazy/Imp.hs libraries/base/Control/Monad/ST/Lazy/Safe.hs libraries/base/Control/Monad/ST/Lazy/Unsafe.hs libraries/base/Control/Monad/ST/Safe.hs libraries/base/Control/Monad/ST/Strict.hs libraries/base/Control/Monad/ST/Unsafe.hs libraries/base/Control/Monad/Zip.hs libraries/base/Data/Bifoldable.hs libraries/base/Data/Bifunctor.hs libraries/base/Data/Bitraversable.hs libraries/base/Data/Bits.hs libraries/base/Data/Bool.hs libraries/base/Data/Char.hs libraries/base/Data/Coerce.hs libraries/base/Data/Complex.hs libraries/base/Data/Data.hs libraries/base/Data/Dynamic.hs libraries/base/Data/Either.hs libraries/base/Data/Eq.hs libraries/base/Data/Fixed.hs libraries/base/Data/Foldable.hs libraries/base/Data/Function.hs libraries/base/Data/Functor.hs libraries/base/Data/Functor/Classes.hs libraries/base/Data/Functor/Compose.hs libraries/base/Data/Functor/Const.hs libraries/base/Data/Functor/Contravariant.hs libraries/base/Data/Functor/Identity.hs libraries/base/Data/Functor/Product.hs libraries/base/Data/Functor/Sum.hs libraries/base/Data/Functor/Utils.hs libraries/base/Data/IORef.hs libraries/base/Data/Int.hs libraries/base/Data/Ix.hs libraries/base/Data/Kind.hs libraries/base/Data/List.hs libraries/base/Data/List/NonEmpty.hs libraries/base/Data/Maybe.hs libraries/base/Data/Monoid.hs libraries/base/Data/OldList.hs libraries/base/Data/Ord.hs libraries/base/Data/Proxy.hs libraries/base/Data/Ratio.hs libraries/base/Data/STRef.hs libraries/base/Data/STRef/Lazy.hs libraries/base/Data/STRef/Strict.hs libraries/base/Data/Semigroup.hs libraries/base/Data/Semigroup/Internal.hs libraries/base/Data/String.hs libraries/base/Data/Traversable.hs libraries/base/Data/Tuple.hs libraries/base/Data/Type/Bool.hs libraries/base/Data/Type/Coercion.hs libraries/base/Data/Type/Equality.hs libraries/base/Data/Typeable.hs libraries/base/Data/Typeable/Internal.hs libraries/base/Data/Unique.hs libraries/base/Data/Version.hs libraries/base/Data/Void.hs libraries/base/Data/Word.hs libraries/base/Debug/Trace.hs libraries/base/Foreign.hs libraries/base/Foreign/C.hs libraries/base/Foreign/C/Error.hs libraries/base/Foreign/C/String.hs libraries/base/Foreign/C/Types.hs libraries/base/Foreign/Concurrent.hs libraries/base/Foreign/ForeignPtr.hs libraries/base/Foreign/ForeignPtr/Imp.hs libraries/base/Foreign/ForeignPtr/Safe.hs libraries/base/Foreign/ForeignPtr/Unsafe.hs libraries/base/Foreign/Marshal.hs libraries/base/Foreign/Marshal/Alloc.hs libraries/base/Foreign/Marshal/Array.hs libraries/base/Foreign/Marshal/Error.hs libraries/base/Foreign/Marshal/Pool.hs libraries/base/Foreign/Marshal/Safe.hs libraries/base/Foreign/Marshal/Unsafe.hs libraries/base/Foreign/Marshal/Utils.hs libraries/base/Foreign/Ptr.hs libraries/base/Foreign/Safe.hs libraries/base/Foreign/StablePtr.hs libraries/base/Foreign/Storable.hs libraries/base/GHC/Arr.hs libraries/base/GHC/Base.hs libraries/base/GHC/ByteOrder.hs libraries/base/GHC/Char.hs _validate- bug/stage1/libraries/base/build/GHC/Clock.hs libraries/base/GHC/Conc.hs libraries/base/GHC/Conc/IO.hs libraries/base/GHC/Conc/Signal.hs libraries/base/GHC/Conc/Sync.hs libraries/base/GHC/ConsoleHandler.hs libraries/base/GHC/Constants.hs libraries/base/GHC/Desugar.hs libraries/base/GHC/Enum.hs libraries/base/GHC/Environment.hs libraries/base/GHC/Err.hs libraries/base/GHC/Event.hs libraries/base/GHC/Event/Arr.hs libraries/base/GHC/Event/Array.hs libraries/base/GHC/Event/Control.hs _validate- bug/stage1/libraries/base/build/GHC/Event/EPoll.hs libraries/base/GHC/Event/IntTable.hs libraries/base/GHC/Event/Internal.hs _validate-bug/stage1/libraries/base/build/GHC/Event/KQueue.hs libraries/base/GHC/Event/Manager.hs libraries/base/GHC/Event/PSQ.hs _validate-bug/stage1/libraries/base/build/GHC/Event/Poll.hs libraries/base/GHC/Event/Thread.hs libraries/base/GHC/Event/TimerManager.hs libraries/base/GHC/Event/Unique.hs libraries/base/GHC/Exception.hs libraries/base/GHC/Exception/Type.hs libraries/base/GHC/ExecutionStack.hs _validate-bug/stage1/libraries/base/build/GHC/ExecutionStack/Internal.hs libraries/base/GHC/Exts.hs libraries/base/GHC/Fingerprint.hs libraries/base/GHC/Fingerprint/Type.hs libraries/base/GHC/Float.hs libraries/base/GHC/Float/ConversionUtils.hs libraries/base/GHC/Float/RealFracMethods.hs libraries/base/GHC/Foreign.hs libraries/base/GHC/ForeignPtr.hs libraries/base/GHC/GHCi.hs libraries/base/GHC/Generics.hs libraries/base/GHC/IO.hs libraries/base/GHC/IO/Buffer.hs libraries/base/GHC/IO/BufferedIO.hs libraries/base/GHC/IO/Device.hs libraries/base/GHC/IO/Encoding.hs libraries/base/GHC/IO/Encoding/CodePage.hs libraries/base/GHC/IO/Encoding/Failure.hs libraries/base/GHC/IO/Encoding/Iconv.hs libraries/base/GHC/IO/Encoding/Latin1.hs libraries/base/GHC/IO/Encoding/Types.hs libraries/base/GHC/IO/Encoding/UTF16.hs libraries/base/GHC/IO/Encoding/UTF32.hs libraries/base/GHC/IO/Encoding/UTF8.hs libraries/base/GHC/IO/Exception.hs libraries/base/GHC/IO/FD.hs libraries/base/GHC/IO/Handle.hs libraries/base/GHC/IO/Handle/FD.hs libraries/base/GHC/IO/Handle/Internals.hs _validate- bug/stage1/libraries/base/build/GHC/IO/Handle/Lock.hs libraries/base/GHC/IO/Handle/Text.hs libraries/base/GHC/IO/Handle/Types.hs libraries/base/GHC/IO/IOMode.hs libraries/base/GHC/IO/Unsafe.hs libraries/base/GHC/IOArray.hs libraries/base/GHC/IORef.hs libraries/base/GHC/Int.hs libraries/base/GHC/List.hs libraries/base/GHC/MVar.hs libraries/base/GHC/Maybe.hs libraries/base/GHC/Natural.hs libraries/base/GHC/Num.hs libraries/base/GHC/OldList.hs libraries/base/GHC/OverloadedLabels.hs libraries/base/GHC/Pack.hs libraries/base/GHC/Profiling.hs libraries/base/GHC/Ptr.hs _validate- bug/stage1/libraries/base/build/GHC/RTS/Flags.hs libraries/base/GHC/Read.hs libraries/base/GHC/Real.hs libraries/base/GHC/Records.hs libraries/base/GHC/ResponseFile.hs libraries/base/GHC/ST.hs libraries/base/GHC/STRef.hs libraries/base/GHC/Show.hs libraries/base/GHC/Stable.hs libraries/base/GHC/StableName.hs libraries/base/GHC/Stack.hs _validate- bug/stage1/libraries/base/build/GHC/Stack/CCS.hs libraries/base/GHC/Stack/Types.hs libraries/base/GHC/StaticPtr.hs libraries/base/GHC/StaticPtr/Internal.hs _validate- bug/stage1/libraries/base/build/GHC/Stats.hs libraries/base/GHC/Storable.hs libraries/base/GHC/TopHandler.hs libraries/base/GHC/TypeLits.hs libraries/base/GHC/TypeNats.hs libraries/base/GHC/Unicode.hs libraries/base/GHC/Weak.hs libraries/base/GHC/Word.hs libraries/base/Numeric.hs libraries/base/Numeric/Natural.hs libraries/base/Prelude.hs _validate- bug/stage1/libraries/base/build/System/CPUTime.hs _validate- bug/stage1/libraries/base/build/System/CPUTime/Posix/ClockGetTime.hs _validate-bug/stage1/libraries/base/build/System/CPUTime/Posix/RUsage.hs _validate-bug/stage1/libraries/base/build/System/CPUTime/Posix/Times.hs libraries/base/System/CPUTime/Unsupported.hs libraries/base/System/CPUTime/Utils.hs libraries/base/System/Console/GetOpt.hs libraries/base/System/Environment.hs _validate- bug/stage1/libraries/base/build/System/Environment/Blank.hs _validate- bug/stage1/libraries/base/build/System/Environment/ExecutablePath.hs libraries/base/System/Exit.hs libraries/base/System/IO.hs libraries/base/System/IO/Error.hs libraries/base/System/IO/Unsafe.hs libraries/base/System/Info.hs libraries/base/System/Mem.hs libraries/base/System/Mem/StableName.hs libraries/base/System/Mem/Weak.hs libraries/base/System/Posix/Internals.hs libraries/base/System/Posix/Types.hs libraries/base/System/Timeout.hs libraries/base/Text/ParserCombinators/ReadP.hs libraries/base/Text/ParserCombinators/ReadPrec.hs libraries/base/Text/Printf.hs libraries/base/Text/Read.hs libraries/base/Text/Read/Lex.hs libraries/base/Text/Show.hs libraries/base/Text/Show/Functions.hs libraries/base/Type/Reflection.hs libraries/base/Type/Reflection/Unsafe.hs libraries/base/Unsafe/Coerce.hs +RTS -t_validate-bug/stage1/libraries/base/build/haddock.t --machine- readable -RTS Warning: 'UAddr' is ambiguous. It is defined * at libraries/base/GHC/Generics.hs:1025:40 * at libraries/base/GHC/Generics.hs:1094:1 You may be able to disambiguate the identifier by qualifying it or by hiding some imports. Defaulting to 'UAddr' defined at libraries/base/GHC/Generics.hs:1094:1 Warning: 'UChar' is ambiguous. It is defined * at libraries/base/GHC/Generics.hs:1036:36 * at libraries/base/GHC/Generics.hs:1098:1 You may be able to disambiguate the identifier by qualifying it or by hiding some imports. Defaulting to 'UChar' defined at libraries/base/GHC/Generics.hs:1098:1 Warning: 'UDouble' is ambiguous. It is defined * at libraries/base/GHC/Generics.hs:1048:38 * at libraries/base/GHC/Generics.hs:1103:1 You may be able to disambiguate the identifier by qualifying it or by hiding some imports. Defaulting to 'UDouble' defined at libraries/base/GHC/Generics.hs:1103:1 Warning: 'UFloat' is ambiguous. It is defined * at libraries/base/GHC/Generics.hs:1060:37 * at libraries/base/GHC/Generics.hs:1108:1 You may be able to disambiguate the identifier by qualifying it or by hiding some imports. Defaulting to 'UFloat' defined at libraries/base/GHC/Generics.hs:1108:1 Warning: 'UInt' is ambiguous. It is defined * at libraries/base/GHC/Generics.hs:1070:35 * at libraries/base/GHC/Generics.hs:1113:1 You may be able to disambiguate the identifier by qualifying it or by hiding some imports. Defaulting to 'UInt' defined at libraries/base/GHC/Generics.hs:1113:1 Warning: 'UWord' is ambiguous. It is defined * at libraries/base/GHC/Generics.hs:1082:36 * at libraries/base/GHC/Generics.hs:1118:1 You may be able to disambiguate the identifier by qualifying it or by hiding some imports. Defaulting to 'UWord' defined at libraries/base/GHC/Generics.hs:1118:1 Warning: 'IOError' is ambiguous. It is defined * at libraries/base/GHC/IO/Exception.hs:331:4 * at libraries/base/GHC/IO/Exception.hs:324:1 You may be able to disambiguate the identifier by qualifying it or by hiding some imports. Defaulting to 'IOError' defined at libraries/base/GHC/IO/Exception.hs:330:1 Warning: 'IOError' is ambiguous. It is defined * at libraries/base/GHC/IO/Exception.hs:331:4 * at libraries/base/GHC/IO/Exception.hs:324:1 You may be able to disambiguate the identifier by qualifying it or by hiding some imports. Defaulting to 'IOError' defined at libraries/base/GHC/IO/Exception.hs:330:1 Warning: 'IOError' is ambiguous. It is defined * at libraries/base/GHC/IO/Exception.hs:331:4 * at libraries/base/GHC/IO/Exception.hs:324:1 You may be able to disambiguate the identifier by qualifying it or by hiding some imports. Defaulting to 'IOError' defined at libraries/base/GHC/IO/Exception.hs:330:1 Warning: 'flock' is out of scope. If you qualify the identifier, haddock can try to link it anyway. Warning: 'LockFileEx' is out of scope. If you qualify the identifier, haddock can try to link it anyway. Warning: 'FileLockingNotImplemented' is out of scope. If you qualify the identifier, haddock can try to link it anyway. Warning: 'IOError' is ambiguous. It is defined * at libraries/base/GHC/IO/Exception.hs:331:4 * at libraries/base/GHC/IO/Exception.hs:324:1 You may be able to disambiguate the identifier by qualifying it or by hiding some imports. Defaulting to 'IOError' defined at libraries/base/GHC/IO/Exception.hs:330:1 Warning: 'ExitException' is out of scope. If you qualify the identifier, haddock can try to link it anyway. Warning: 'mtimes' is out of scope. If you qualify the identifier, haddock can try to link it anyway. Warning: GHC.Word: could not find link destinations for: D:R:UReckWordp0 Warning: GHC.Float: could not find link destinations for: D:R:UReckFloatp0 D:R:UReckDoublep0 Warning: Text.Read.Lex: could not find link destinations for: guard Warning: GHC.Ptr: could not find link destinations for: D:R:UReckPtrp0 Warning: GHC.Int: could not find link destinations for: D:R:UReckIntp0 Warning: Data.Int: could not find link destinations for: D:R:UReckIntp0 Warning: Foreign.Ptr: could not find link destinations for: D:R:UReckPtrp0 Warning: Data.Word: could not find link destinations for: D:R:UReckWordp0 Warning: Data.Type.Equality: could not find link destinations for: ~# Warning: Data.Char: could not find link destinations for: D:R:UReckCharp0 Warning: GHC.TypeNats: could not find link destinations for: natSing Warning: GHC.TypeLits: could not find link destinations for: natSing symbolSing Warning: GHC.Generics: could not find link destinations for: D:R:UReckWordp0 D:R:UReckIntp0 D:R:UReckFloatp0 D:R:UReckDoublep0 D:R:UReckCharp0 D:R:UReckPtrp0 SingI SingKind Warning: Type.Reflection: could not find link destinations for: typeRep# IsApplication Warning: Data.Typeable: could not find link destinations for: typeRep# Warning: GHC.IO: could not find link destinations for: hspr UPrintf spr Warning: GHC.ForeignPtr: could not find link destinations for: Finalizers Warning: GHC.Foreign: could not find link destinations for: CString CStringLen Warning: Data.Dynamic: could not find link destinations for: typeRep# Warning: System.IO: could not find link destinations for: hspr UPrintf spr Warning: Prelude: could not find link destinations for: D:R:UReckCharp0 D:R:UReckIntp0 D:R:UReckFloatp0 D:R:UReckDoublep0 D:R:UReckWordp0 hspr UPrintf spr Warning: Text.Printf: could not find link destinations for: spr UPrintf hspr Warning: GHC.ExecutionStack.Internal: could not find link destinations for: locationSize Warning: GHC.Exts: could not find link destinations for: D:R:UReckIntp0 D:R:UReckWordp0 D:R:UReckFloatp0 D:R:UReckDoublep0 D:R:UReckCharp0 D:R:UReckPtrp0 ~# shakeArgsWith 0.000s 0% Function shake 0.005s 0% Database read 0.479s 0% With database 0.037s 0% Running rules 62.764s 99% ========================= Total 63.285s 100% Error when running Shake build system: at src/Main.hs:58:30-42: * Depends on: _validate-bug/docs/html/libraries/base/base.haddock * Raised the exception: user error (Development.Shake.cmd, system command failed Command: _validate-bug/stage1/bin/haddock --verbosity=0 -B_validate- bug/stage1/lib --lib=_validate-bug/stage1/lib --odir=_validate- bug/docs/html/libraries/base --no-tmp-comp-dir --dump-interface=_validate- bug/docs/html/libraries/base/base.haddock --html --hyperlinked-source --hoogle --quickjump '--title=base-4.12.0.0: Basic libraries' --prologue =_validate-bug/docs/html/libraries/base/haddock-prologue.txt --optghc=-D__HADDOCK_VERSION__=2220 --hide=Control.Monad.ST.Imp --hide=Control.Monad.ST.Lazy.Imp --hide=Data.Functor.Utils --hide=Data.OldList --hide=Data.Semigroup.Internal --hide=Data.Typeable.Internal --hide=Foreign.ForeignPtr.Imp --hide=GHC.StaticPtr.Internal --hide=System.Environment.ExecutablePath --hide=System.CPUTime.Utils --hide=GHC.Event.Arr --hide=GHC.Event.Array --hide=GHC.Event.Control --hide=GHC.Event.EPoll --hide=GHC.Event.IntTable --hide=GHC.Event.Internal --hide=GHC.Event.KQueue --hide=GHC.Event.Manager --hide=GHC.Event.PSQ --hide=GHC.Event.Poll --hide=GHC.Event.Thread --hide=GHC.Event.TimerManager --hide=GHC.Event.Unique --hide=System.CPUTime.Posix.ClockGetTime --hide=System.CPUTime.Posix.Times --hide=System.CPUTime.Posix.RUsage --hide=System.CPUTime.Unsupported --read-interface=../ghc-prim,../ghc-prim/src/%{MODULE}.html#%{NAME },_validate-bug/docs/html/libraries/ghc-prim/ghc-prim.haddock --read- interface=../integer-gmp,../integer-gmp/src/%{MODULE}.html#%{NAME },_validate-bug/docs/html/libraries/integer-gmp/integer-gmp.haddock --optghc=-hisuf --optghc=dyn_hi --optghc=-osuf --optghc=dyn_o --optghc=-hcsuf --optghc=dyn_hc --optghc=-fPIC --optghc=-dynamic --optghc =-hide-all-packages --optghc=-no-user-package-db '--optghc=-this-unit-id base-4.12.0.0' '--optghc=-package-id ghc-prim-0.5.3' '--optghc=-package-id integer-gmp-1.0.2.0' '--optghc=-package-id rts-1.0' --optghc=-i --optghc =-i_validate-bug/stage1/libraries/base/build --optghc=-i_validate- bug/stage1/libraries/base/build/autogen --optghc=-ilibraries/base/. --optghc=-Iincludes --optghc=-I_validate-bug/generated --optghc =-I_validate-bug/stage1/libraries/base/build --optghc=-I/nix/store /jxaaf8dsrb16vnwnij69jar7mhhj969q-ghc-build-environment/include --optghc =-I_validate-bug/stage1/libraries/base/build/include --optghc=-Ilibraries/base/include --optghc=-I/nix/store /jxaaf8dsrb16vnwnij69jar7mhhj969q-ghc-build-environment/include --optghc=-I/home/alp/WT/ghc-gitlab/_validate-bug/stage1/lib/x86_64-linux- ghc-8.7.20190123/integer-gmp-1.0.2.0/include --optghc=-I/home/alp/WT/ghc- gitlab/_validate-bug/stage1/lib/x86_64-linux- ghc-8.7.20190123/rts-1.0/include --optghc=-I_validate-bug/generated --optghc=-optc-I_validate-bug/generated --optghc=-optP-include --optghc =-optP_validate-bug/stage1/libraries/base/build/autogen/cabal_macros.h --optghc=-outputdir --optghc=_validate-bug/stage1/libraries/base/build --optghc=-this-unit-id --optghc=base --optghc=-Wcompat --optghc =-Wnoncanonical-monad-instances --optghc=-XHaskell2010 --optghc =-ghcversion-file=/home/alp/WT/ghc-gitlab/_validate- bug/generated/ghcversion.h --optghc=-Wno-deprecated-flags --optghc=-Wno- trustworthy-safe libraries/base/Control/Applicative.hs libraries/base/Control/Arrow.hs libraries/base/Control/Category.hs libraries/base/Control/Concurrent.hs libraries/base/Control/Concurrent/Chan.hs libraries/base/Control/Concurrent/MVar.hs libraries/base/Control/Concurrent/QSem.hs libraries/base/Control/Concurrent/QSemN.hs libraries/base/Control/Exception.hs libraries/base/Control/Exception/Base.hs libraries/base/Control/Monad.hs libraries/base/Control/Monad/Fail.hs libraries/base/Control/Monad/Fix.hs libraries/base/Control/Monad/IO/Class.hs libraries/base/Control/Monad/Instances.hs libraries/base/Control/Monad/ST.hs libraries/base/Control/Monad/ST/Imp.hs libraries/base/Control/Monad/ST/Lazy.hs libraries/base/Control/Monad/ST/Lazy/Imp.hs libraries/base/Control/Monad/ST/Lazy/Safe.hs libraries/base/Control/Monad/ST/Lazy/Unsafe.hs libraries/base/Control/Monad/ST/Safe.hs libraries/base/Control/Monad/ST/Strict.hs libraries/base/Control/Monad/ST/Unsafe.hs libraries/base/Control/Monad/Zip.hs libraries/base/Data/Bifoldable.hs libraries/base/Data/Bifunctor.hs libraries/base/Data/Bitraversable.hs libraries/base/Data/Bits.hs libraries/base/Data/Bool.hs libraries/base/Data/Char.hs libraries/base/Data/Coerce.hs libraries/base/Data/Complex.hs libraries/base/Data/Data.hs libraries/base/Data/Dynamic.hs libraries/base/Data/Either.hs libraries/base/Data/Eq.hs libraries/base/Data/Fixed.hs libraries/base/Data/Foldable.hs libraries/base/Data/Function.hs libraries/base/Data/Functor.hs libraries/base/Data/Functor/Classes.hs libraries/base/Data/Functor/Compose.hs libraries/base/Data/Functor/Const.hs libraries/base/Data/Functor/Contravariant.hs libraries/base/Data/Functor/Identity.hs libraries/base/Data/Functor/Product.hs libraries/base/Data/Functor/Sum.hs libraries/base/Data/Functor/Utils.hs libraries/base/Data/IORef.hs libraries/base/Data/Int.hs libraries/base/Data/Ix.hs libraries/base/Data/Kind.hs libraries/base/Data/List.hs libraries/base/Data/List/NonEmpty.hs libraries/base/Data/Maybe.hs libraries/base/Data/Monoid.hs libraries/base/Data/OldList.hs libraries/base/Data/Ord.hs libraries/base/Data/Proxy.hs libraries/base/Data/Ratio.hs libraries/base/Data/STRef.hs libraries/base/Data/STRef/Lazy.hs libraries/base/Data/STRef/Strict.hs libraries/base/Data/Semigroup.hs libraries/base/Data/Semigroup/Internal.hs libraries/base/Data/String.hs libraries/base/Data/Traversable.hs libraries/base/Data/Tuple.hs libraries/base/Data/Type/Bool.hs libraries/base/Data/Type/Coercion.hs libraries/base/Data/Type/Equality.hs libraries/base/Data/Typeable.hs libraries/base/Data/Typeable/Internal.hs libraries/base/Data/Unique.hs libraries/base/Data/Version.hs libraries/base/Data/Void.hs libraries/base/Data/Word.hs libraries/base/Debug/Trace.hs libraries/base/Foreign.hs libraries/base/Foreign/C.hs libraries/base/Foreign/C/Error.hs libraries/base/Foreign/C/String.hs libraries/base/Foreign/C/Types.hs libraries/base/Foreign/Concurrent.hs libraries/base/Foreign/ForeignPtr.hs libraries/base/Foreign/ForeignPtr/Imp.hs libraries/base/Foreign/ForeignPtr/Safe.hs libraries/base/Foreign/ForeignPtr/Unsafe.hs libraries/base/Foreign/Marshal.hs libraries/base/Foreign/Marshal/Alloc.hs libraries/base/Foreign/Marshal/Array.hs libraries/base/Foreign/Marshal/Error.hs libraries/base/Foreign/Marshal/Pool.hs libraries/base/Foreign/Marshal/Safe.hs libraries/base/Foreign/Marshal/Unsafe.hs libraries/base/Foreign/Marshal/Utils.hs libraries/base/Foreign/Ptr.hs libraries/base/Foreign/Safe.hs libraries/base/Foreign/StablePtr.hs libraries/base/Foreign/Storable.hs libraries/base/GHC/Arr.hs libraries/base/GHC/Base.hs libraries/base/GHC/ByteOrder.hs libraries/base/GHC/Char.hs _validate- bug/stage1/libraries/base/build/GHC/Clock.hs libraries/base/GHC/Conc.hs libraries/base/GHC/Conc/IO.hs libraries/base/GHC/Conc/Signal.hs libraries/base/GHC/Conc/Sync.hs libraries/base/GHC/ConsoleHandler.hs libraries/base/GHC/Constants.hs libraries/base/GHC/Desugar.hs libraries/base/GHC/Enum.hs libraries/base/GHC/Environment.hs libraries/base/GHC/Err.hs libraries/base/GHC/Event.hs libraries/base/GHC/Event/Arr.hs libraries/base/GHC/Event/Array.hs libraries/base/GHC/Event/Control.hs _validate- bug/stage1/libraries/base/build/GHC/Event/EPoll.hs libraries/base/GHC/Event/IntTable.hs libraries/base/GHC/Event/Internal.hs _validate-bug/stage1/libraries/base/build/GHC/Event/KQueue.hs libraries/base/GHC/Event/Manager.hs libraries/base/GHC/Event/PSQ.hs _validate-bug/stage1/libraries/base/build/GHC/Event/Poll.hs libraries/base/GHC/Event/Thread.hs libraries/base/GHC/Event/TimerManager.hs libraries/base/GHC/Event/Unique.hs libraries/base/GHC/Exception.hs libraries/base/GHC/Exception/Type.hs libraries/base/GHC/ExecutionStack.hs _validate-bug/stage1/libraries/base/build/GHC/ExecutionStack/Internal.hs libraries/base/GHC/Exts.hs libraries/base/GHC/Fingerprint.hs libraries/base/GHC/Fingerprint/Type.hs libraries/base/GHC/Float.hs libraries/base/GHC/Float/ConversionUtils.hs libraries/base/GHC/Float/RealFracMethods.hs libraries/base/GHC/Foreign.hs libraries/base/GHC/ForeignPtr.hs libraries/base/GHC/GHCi.hs libraries/base/GHC/Generics.hs libraries/base/GHC/IO.hs libraries/base/GHC/IO/Buffer.hs libraries/base/GHC/IO/BufferedIO.hs libraries/base/GHC/IO/Device.hs libraries/base/GHC/IO/Encoding.hs libraries/base/GHC/IO/Encoding/CodePage.hs libraries/base/GHC/IO/Encoding/Failure.hs libraries/base/GHC/IO/Encoding/Iconv.hs libraries/base/GHC/IO/Encoding/Latin1.hs libraries/base/GHC/IO/Encoding/Types.hs libraries/base/GHC/IO/Encoding/UTF16.hs libraries/base/GHC/IO/Encoding/UTF32.hs libraries/base/GHC/IO/Encoding/UTF8.hs libraries/base/GHC/IO/Exception.hs libraries/base/GHC/IO/FD.hs libraries/base/GHC/IO/Handle.hs libraries/base/GHC/IO/Handle/FD.hs libraries/base/GHC/IO/Handle/Internals.hs _validate- bug/stage1/libraries/base/build/GHC/IO/Handle/Lock.hs libraries/base/GHC/IO/Handle/Text.hs libraries/base/GHC/IO/Handle/Types.hs libraries/base/GHC/IO/IOMode.hs libraries/base/GHC/IO/Unsafe.hs libraries/base/GHC/IOArray.hs libraries/base/GHC/IORef.hs libraries/base/GHC/Int.hs libraries/base/GHC/List.hs libraries/base/GHC/MVar.hs libraries/base/GHC/Maybe.hs libraries/base/GHC/Natural.hs libraries/base/GHC/Num.hs libraries/base/GHC/OldList.hs libraries/base/GHC/OverloadedLabels.hs libraries/base/GHC/Pack.hs libraries/base/GHC/Profiling.hs libraries/base/GHC/Ptr.hs _validate- bug/stage1/libraries/base/build/GHC/RTS/Flags.hs libraries/base/GHC/Read.hs libraries/base/GHC/Real.hs libraries/base/GHC/Records.hs libraries/base/GHC/ResponseFile.hs libraries/base/GHC/ST.hs libraries/base/GHC/STRef.hs libraries/base/GHC/Show.hs libraries/base/GHC/Stable.hs libraries/base/GHC/StableName.hs libraries/base/GHC/Stack.hs _validate- bug/stage1/libraries/base/build/GHC/Stack/CCS.hs libraries/base/GHC/Stack/Types.hs libraries/base/GHC/StaticPtr.hs libraries/base/GHC/StaticPtr/Internal.hs _validate- bug/stage1/libraries/base/build/GHC/Stats.hs libraries/base/GHC/Storable.hs libraries/base/GHC/TopHandler.hs libraries/base/GHC/TypeLits.hs libraries/base/GHC/TypeNats.hs libraries/base/GHC/Unicode.hs libraries/base/GHC/Weak.hs libraries/base/GHC/Word.hs libraries/base/Numeric.hs libraries/base/Numeric/Natural.hs libraries/base/Prelude.hs _validate- bug/stage1/libraries/base/build/System/CPUTime.hs _validate- bug/stage1/libraries/base/build/System/CPUTime/Posix/ClockGetTime.hs _validate-bug/stage1/libraries/base/build/System/CPUTime/Posix/RUsage.hs _validate-bug/stage1/libraries/base/build/System/CPUTime/Posix/Times.hs libraries/base/System/CPUTime/Unsupported.hs libraries/base/System/CPUTime/Utils.hs libraries/base/System/Console/GetOpt.hs libraries/base/System/Environment.hs _validate- bug/stage1/libraries/base/build/System/Environment/Blank.hs _validate- bug/stage1/libraries/base/build/System/Environment/ExecutablePath.hs libraries/base/System/Exit.hs libraries/base/System/IO.hs libraries/base/System/IO/Error.hs libraries/base/System/IO/Unsafe.hs libraries/base/System/Info.hs libraries/base/System/Mem.hs libraries/base/System/Mem/StableName.hs libraries/base/System/Mem/Weak.hs libraries/base/System/Posix/Internals.hs libraries/base/System/Posix/Types.hs libraries/base/System/Timeout.hs libraries/base/Text/ParserCombinators/ReadP.hs libraries/base/Text/ParserCombinators/ReadPrec.hs libraries/base/Text/Printf.hs libraries/base/Text/Read.hs libraries/base/Text/Read/Lex.hs libraries/base/Text/Show.hs libraries/base/Text/Show/Functions.hs libraries/base/Type/Reflection.hs libraries/base/Type/Reflection/Unsafe.hs libraries/base/Unsafe/Coerce.hs +RTS -t_validate-bug/stage1/libraries/base/build/haddock.t --machine- readable -RTS Exit code: -11 Stderr: ) }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16239> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
1 7
0 0
[GHC] #16195: Program with trivial polymorphism leads to out of scope dictionary
by GHC 04 Mar '19

04 Mar '19
#16195: Program with trivial polymorphism leads to out of scope dictionary -------------------------------------+------------------------------------- Reporter: mpickering | Owner: (none) Type: bug | Status: new Priority: high | Milestone: 8.8.1 Component: Compiler | Version: 8.7 Keywords: | Operating System: Unknown/Multiple TypedTemplateHaskell | Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- Almost certainly due to c2455e647501c5a382861196b64df3dd05b620a2 A trivial program now causes a core lint error due to an out-of-scope dictionary. {{{ module A where foo :: Code (IO ()) foo = [|| return () ||] }}} {{{ module B where main :: IO () main = $$foo }}} {{{ *** Core Lint errors : in result of Desugar (before optimization) *** <no location info>: warning: In the expression: return @ IO $dMonad_a4od @ () () Out of scope: $dMonad_a4od :: Monad m_a4oc[tau:0] [LclId] *** Offending Program *** Rec { $trModule :: Module [LclIdX] $trModule = Module (TrNameS "main"#) (TrNameS "B"#) main :: IO () [LclIdX] main = return @ IO $dMonad_a4od @ () () end Rec } *** End of Offense *** }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16195> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
1 6
0 0
[GHC] #15865: Typed template haskell and implicit parameters lead to incorrect results
by GHC 04 Mar '19

04 Mar '19
#15865: Typed template haskell and implicit parameters lead to incorrect results -------------------------------------+------------------------------------- Reporter: mpickering | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.6.1 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- In a similar vein to #15863 but this time with implicit parameters. https://gist.github.com/b6919b13abe0954fdad844e16e0edb48 {{{ {-# LANGUAGE ImplicitParams #-} {-# LANGUAGE TemplateHaskell #-} module A where import Language.Haskell.TH import Data.List (sortBy) sort :: (?cmp :: a -> a -> Ordering) => [a] -> [a] sort = sortBy ?cmp me :: Q (TExp ([Int] -> [Int])) me = let ?cmp = compare in [|| sort ||] }}} In module `A` we quote a value which has an implicit argument but in its context we bind the implicit so the type of the quote is the monomorphic type. {{{ {-# LANGUAGE ImplicitParams #-} {-# LANGUAGE TemplateHaskell #-} module B where import A foo :: [Int] -> [Int] foo = --let ?cmp = compare in $$(me) }}} When we splice in `me`, we get an error about an unbound implicit parameter which is totally bogus as we already bound it in `A`. There is also dynamic binding if another implicit parameter with the same name is in scope but the type of `me` mentions nothing about implicit parameters so this shouldn't be allowed. {{{ B.hs:8:10: error: • Unbound implicit parameter (?cmp::Int -> Int -> Ordering) arising from a use of ‘sort’ • In the expression: sort In the result of the splice: $me To see what the splice expanded to, use -ddump-splices In the Template Haskell splice $$(me) | 8 | foo = $$(me) | ^^ Failed, one module loaded. }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15865> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
1 3
0 0
[GHC] #15863: Splcing a type class method selects the wrong instance
by GHC 04 Mar '19

04 Mar '19
#15863: Splcing a type class method selects the wrong instance -------------------------------------+------------------------------------- Reporter: mpickering | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.6.1 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- Consider these 4 modules as concocted by Csongor. The wrong instance is selected when you splice in `B.me` into `D`. https://gist.github.com/mpickering/959a95525647802414ab50e8e6ed490c {{{ module A where class C a where foo :: a -> String instance C Int where foo _ = "int" }}} {{{ {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE NoMonomorphismRestriction #-} module B where import A import Language.Haskell.TH instance C a => C [a] where foo _ = "list" me :: Q (TExp ([Int] -> String)) me = [|| foo ||] }}} {{{ {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE NoMonomorphismRestriction #-} module C where import A import Language.Haskell.TH instance {-# OVERLAPPING #-} C [Int] where foo _ = "list2" }}} {{{ {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE NoMonomorphismRestriction #-} module D where import A import B import C main2 = $$(me) [1 :: Int] }}} {{{ >>> main2 "list2" }}} In `B`, `B.me` is created by quoting `foo`. `B.me :: Q (TExp ([Int] -> String))` so in order to type check this quote we need to solve the instance `C [Int]` which we should do by using the instance defined in `B` (and `A`). In module `C` we define a different overlapping instance (note that this could be in a completely different library not under our control). When we then splice `B.me` into `D`, the instance from `C` is used and can be witnessed by printing `main2` which shows `"list2"` rather than `"list"` as expected. This is a symptom of the fact that the renamed rather than the typechecked AST is serialised I think. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15863> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
1 3
0 0
[GHC] #16204: GHC HEAD-only Core Lint error (Argument value doesn't match argument type)
by GHC 04 Mar '19

04 Mar '19
#16204: GHC HEAD-only Core Lint error (Argument value doesn't match argument type) -------------------------------------+------------------------------------- Reporter: RyanGlScott | Owner: (none) Type: bug | Status: new Priority: highest | Milestone: 8.8.1 Component: Compiler | Version: 8.7 (Type checker) | Keywords: TypeInType | Operating System: Unknown/Multiple Architecture: | Type of failure: Compile-time Unknown/Multiple | crash or panic Test Case: | Blocked By: Blocking: | Related Tickets: #16188 Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- The following program passes Core Lint on GHC 8.6.3: {{{#!hs {-# LANGUAGE DataKinds #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE PolyKinds #-} {-# LANGUAGE RankNTypes #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Bug where import Data.Kind ----- -- singletons machinery ----- data family Sing :: forall k. k -> Type data SomeSing :: Type -> Type where SomeSing :: Sing (a :: k) -> SomeSing k ----- -- (Simplified) GHC.Generics ----- class Generic (a :: Type) where type Rep a :: Type from :: a -> Rep a to :: Rep a -> a class PGeneric (a :: Type) where -- type PFrom ... type PTo (x :: Rep a) :: a class SGeneric k where -- sFrom :: ... sTo :: forall (a :: Rep k). Sing a -> Sing (PTo a :: k) ----- class SingKind k where type Demote k :: Type -- fromSing :: ... toSing :: Demote k -> SomeSing k genericToSing :: forall k. ( SingKind k, SGeneric k, SingKind (Rep k) , Generic (Demote k), Rep (Demote k) ~ Demote (Rep k) ) => Demote k -> SomeSing k genericToSing d = withSomeSing @(Rep k) (from d) $ SomeSing . sTo withSomeSing :: forall k r . SingKind k => Demote k -> (forall (a :: k). Sing a -> r) -> r withSomeSing x f = case toSing x of SomeSing x' -> f x' }}} But not on GHC HEAD: {{{ $ ~/Software/ghc4/inplace/bin/ghc-stage2 Bug.hs -dcore-lint [1 of 1] Compiling Bug ( Bug.hs, Bug.o ) *** Core Lint errors : in result of Desugar (before optimization) *** <no location info>: warning: In the expression: $ @ 'LiftedRep @ (forall (a :: Rep k_a1cV). Sing a -> SomeSing k_a1cV) @ (SomeSing k_a1cV) (withSomeSing @ (Rep k_a1cV) @ (SomeSing k_a1cV) $dSingKind_a1d5 ((from @ (Demote k_a1cV) $dGeneric_a1d7 (d_aX7 `cast` (Sub co_a1dK :: Demote k_a1cV[sk:1] ~R# Demote k_a1cV[sk:1]))) `cast` (Sub (Sym (Sym co_a1dR ; Sym co_a1dM) ; (Sym co_a1dQ ; (Demote (Sym co_a1dO))_N)) :: Rep (Demote k_a1cV[sk:1]) ~R# Demote (Rep k_a1cV[sk:1])))) (\ (@ (a_a1dc :: Rep k_a1cV)) -> let { $dSGeneric_a1dm :: SGeneric k_a1cV [LclId] $dSGeneric_a1dm = $dSGeneric_a1cY } in . @ (Sing (PTo Any)) @ (SomeSing k_a1cV) @ (Sing Any) (SomeSing @ k_a1cV @ (PTo Any)) ((sTo @ k_a1cV $dSGeneric_a1dm @ Any) `cast` (Sym (Sing (Sym co_a1dO) (Sym (GRefl nominal Any co_a1dO)))_R ->_R <Sing (PTo Any)>_R :: (Sing Any -> Sing (PTo Any)) ~R# (Sing Any -> Sing (PTo Any))))) Argument value doesn't match argument type: Fun type: (forall (a :: Rep k_a1cV). Sing a -> SomeSing k_a1cV) -> SomeSing k_a1cV Arg type: forall (a :: Rep k_a1cV). Sing Any -> SomeSing k_a1cV Arg: \ (@ (a_a1dc :: Rep k_a1cV)) -> let { $dSGeneric_a1dm :: SGeneric k_a1cV [LclId] $dSGeneric_a1dm = $dSGeneric_a1cY } in . @ (Sing (PTo Any)) @ (SomeSing k_a1cV) @ (Sing Any) (SomeSing @ k_a1cV @ (PTo Any)) ((sTo @ k_a1cV $dSGeneric_a1dm @ Any) `cast` (Sym (Sing (Sym co_a1dO) (Sym (GRefl nominal Any co_a1dO)))_R ->_R <Sing (PTo Any)>_R :: (Sing Any -> Sing (PTo Any)) ~R# (Sing Any -> Sing (PTo Any)))) *** Offending Program *** <elided> genericToSing :: forall k. (SingKind k, SGeneric k, SingKind (Rep k), Generic (Demote k), Rep (Demote k) ~ Demote (Rep k)) => Demote k -> SomeSing k [LclIdX] genericToSing = \ (@ k_a1cV) ($dSingKind_a1cX :: SingKind k_a1cV) ($dSGeneric_a1cY :: SGeneric k_a1cV) ($dSingKind_a1cZ :: SingKind (Rep k_a1cV)) ($dGeneric_a1d0 :: Generic (Demote k_a1cV)) ($d~_a1d1 :: Rep (Demote k_a1cV) ~ Demote (Rep k_a1cV)) -> let { co_a1dQ :: Demote (Rep k_a1cV) ~# Demote (Rep k_a1cV) [LclId[CoVarId]] co_a1dQ = CO: <Demote (Rep k_a1cV)>_N } in let { co_a1dO :: Rep k_a1cV ~# Rep k_a1cV [LclId[CoVarId]] co_a1dO = CO: <Rep k_a1cV>_N } in let { $dSingKind_a1dT :: SingKind (Rep k_a1cV) [LclId] $dSingKind_a1dT = $dSingKind_a1cZ `cast` (Sub (Sym (SingKind (Sym co_a1dO))_N) :: SingKind (Rep k_a1cV[sk:1]) ~R# SingKind (Rep k_a1cV[sk:1])) } in let { $dSingKind_a1d5 :: SingKind (Rep k_a1cV) [LclId] $dSingKind_a1d5 = $dSingKind_a1dT `cast` ((SingKind (Sym co_a1dO))_R :: SingKind (Rep k_a1cV[sk:1]) ~R# SingKind (Rep k_a1cV[sk:1])) } in let { co_a1dM :: Rep (Demote k_a1cV) ~# Rep (Demote k_a1cV) [LclId[CoVarId]] co_a1dM = CO: <Rep (Demote k_a1cV)>_N } in let { co_a1dK :: Demote k_a1cV ~# Demote k_a1cV [LclId[CoVarId]] co_a1dK = CO: <Demote k_a1cV>_N } in let { $dGeneric_a1dU :: Generic (Demote k_a1cV) [LclId] $dGeneric_a1dU = $dGeneric_a1d0 `cast` (Sub (Sym (Generic (Sym co_a1dK))_N) :: Generic (Demote k_a1cV[sk:1]) ~R# Generic (Demote k_a1cV[sk:1])) } in let { $dGeneric_a1d7 :: Generic (Demote k_a1cV) [LclId] $dGeneric_a1d7 = $dGeneric_a1dU } in case eq_sel @ * @ (Rep (Demote k_a1cV)) @ (Demote (Rep k_a1cV)) $d~_a1d1 of co_a1dI { __DEFAULT -> let { co_a1dR :: Rep (Demote k_a1cV) ~# Demote (Rep k_a1cV) [LclId[CoVarId]] co_a1dR = CO: ((Sym co_a1dM ; (Rep (Sym co_a1dK))_N) ; co_a1dI) ; Sym (Sym co_a1dQ ; (Demote (Sym co_a1dO))_N) } in \ (d_aX7 :: Demote k_a1cV) -> $ @ 'LiftedRep @ (forall (a :: Rep k_a1cV). Sing a -> SomeSing k_a1cV) @ (SomeSing k_a1cV) (withSomeSing @ (Rep k_a1cV) @ (SomeSing k_a1cV) $dSingKind_a1d5 ((from @ (Demote k_a1cV) $dGeneric_a1d7 (d_aX7 `cast` (Sub co_a1dK :: Demote k_a1cV[sk:1] ~R# Demote k_a1cV[sk:1]))) `cast` (Sub (Sym (Sym co_a1dR ; Sym co_a1dM) ; (Sym co_a1dQ ; (Demote (Sym co_a1dO))_N)) :: Rep (Demote k_a1cV[sk:1]) ~R# Demote (Rep k_a1cV[sk:1])))) (\ (@ (a_a1dc :: Rep k_a1cV)) -> let { $dSGeneric_a1dm :: SGeneric k_a1cV [LclId] $dSGeneric_a1dm = $dSGeneric_a1cY } in . @ (Sing (PTo Any)) @ (SomeSing k_a1cV) @ (Sing Any) (SomeSing @ k_a1cV @ (PTo Any)) ((sTo @ k_a1cV $dSGeneric_a1dm @ Any) `cast` (Sym (Sing (Sym co_a1dO) (Sym (GRefl nominal Any co_a1dO)))_R ->_R <Sing (PTo Any)>_R :: (Sing Any -> Sing (PTo Any)) ~R# (Sing Any -> Sing (PTo Any))))) } }}} I'm not sure if this is related to #16188 (see https://ghc.haskell.org/trac/ghc/ticket/16188#comment:1) but this Core Lint error is technically different from the one in that ticket, so I decided to open a new issue for this. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16204> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
1 6
0 0
  • ← Newer
  • 1
  • ...
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • ...
  • 51
  • Older →

HyperKitty Powered by HyperKitty version 1.3.9.