#15466: debug validation failures --------------------------------------+--------------------------------- Reporter: alpmestan | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.5 Keywords: | Operating System: Linux Architecture: x86_64 (amd64) | Type of failure: None/Unknown Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: --------------------------------------+--------------------------------- The most recent completed run of `validate-x86_64-linux-debug` on Circle CI (https://circleci.com/gh/ghc/ghc/7730) shows 13 unexpected failures and 1 unexpected pass. **Summary** {{{ Unexpected passes: concurrent/T13615/T13615.run T13615 [unexpected] (ghci) Unexpected failures: codeGen/should_compile/T9329.run T9329 [exit code non-0] (normal) codeGen/should_run/cgrun018.run cgrun018 [exit code non-0] (normal) codeGen/should_run/cgrun018.run cgrun018 [exit code non-0] (g1) codeGen/should_run/cgrun069.run cgrun069 [exit code non-0] (normal) codeGen/should_run/cgrun069.run cgrun069 [exit code non-0] (g1) codeGen/should_run/T9577.run T9577 [bad stdout] (normal) concurrent/should_run/T3429.run T3429 [bad exit code] (debug_numa) driver/T14075/T14075.run T14075 [bad stderr] (normal) driver/recomp007/recomp007.run recomp007 [bad stderr] (normal) rts/T14702.run T14702 [bad exit code] (threaded1) rts/nursery-chunks1.run nursery-chunks1 [bad stderr] (threaded1) rts/numa001.run numa001 [bad exit code] (debug_numa) ../../libraries/base/tests/T11760.run T11760 [bad exit code] (normal) }}} --- **T9329** {{{ Compile failed (exit code 1) errors were: /tmp/ghc78722_0/ghc_4.hc: In function ‘bar’: /tmp/ghc78722_0/ghc_4.hc:18:12: error: error: ‘c6_info’ undeclared (first use in this function) *Sp = (W_)&c6_info; ^ /tmp/ghc78722_0/ghc_4.hc:18:12: error: note: each undeclared identifier is reported only once for each function it appears in `gcc' failed in phase `C Compiler'. (Exit code: 1) *** unexpected failure for T9329(normal) }}} **cgrun018** {{{ Compile failed (exit code 1) errors were: [1 of 1] Compiling Main ( cgrun018.hs, cgrun018.o ) ghc-stage2: panic! (the 'impossible' happened) (GHC version 8.7.20180731 for x86_64-unknown-linux): pprStatics: float F32 F32 F32 F32 F32 F32 F32 F32 F32 F32 F32 Call stack: CallStack (from HasCallStack): callStackDoc, called at compiler/utils/Outputable.hs:1164:37 in ghc:Outputable pprPanic, called at compiler/cmm/PprC.hs:521:5 in ghc:PprC Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug *** unexpected failure for cgrun018(normal) --- Compile failed (exit code 1) errors were: [1 of 1] Compiling Main ( cgrun018.hs, cgrun018.o ) ghc-stage2: panic! (the 'impossible' happened) (GHC version 8.7.20180731 for x86_64-unknown-linux): pprStatics: float F32 F32 F32 F32 F32 F32 F32 F32 F32 F32 F32 Call stack: CallStack (from HasCallStack): callStackDoc, called at compiler/utils/Outputable.hs:1164:37 in ghc:Outputable pprPanic, called at compiler/cmm/PprC.hs:521:5 in ghc:PprC Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug *** unexpected failure for cgrun018(g1) }}} **cgrun069** {{{ Compile failed (exit code 1) errors were: /tmp/ghc83995_0/ghc_4.hc:5:12: error: error: conflicting types for ‘memsetErr’ const char memsetErr[] = "Memset Error - align: %d size: %d\012"; ^ In file included from /tmp/ghc83995_0/ghc_4.hc:3:0: error: /tmp/ghc83995_0/ghc_4.hc:4:6: error: note: previous declaration of ‘memsetErr’ was here ERW_(memsetErr); ^ /home/ghc/project/includes/Stg.h:242:46: error: note: in definition of macro ‘ERW_’ #define ERW_(X) extern StgWordArray (X) ^ /tmp/ghc83995_0/ghc_4.hc:8:12: error: error: conflicting types for ‘memcpyErr’ const char memcpyErr[] = "Memcpy Error - align: %d size: %d\012"; ^ In file included from /tmp/ghc83995_0/ghc_4.hc:3:0: error: /tmp/ghc83995_0/ghc_4.hc:7:6: error: note: previous declaration of ‘memcpyErr’ was here ERW_(memcpyErr); ^ /home/ghc/project/includes/Stg.h:242:46: error: note: in definition of macro ‘ERW_’ #define ERW_(X) extern StgWordArray (X) ^ /tmp/ghc83995_0/ghc_4.hc:11:12: error: error: conflicting types for ‘memmoveErr’ const char memmoveErr[] = "Memmove Error Occured\012"; ^ In file included from /tmp/ghc83995_0/ghc_4.hc:3:0: error: /tmp/ghc83995_0/ghc_4.hc:10:6: error: note: previous declaration of ‘memmoveErr’ was here ERW_(memmoveErr); ^ /home/ghc/project/includes/Stg.h:242:46: error: note: in definition of macro ‘ERW_’ #define ERW_(X) extern StgWordArray (X) ^ `gcc' failed in phase `C Compiler'. (Exit code: 1) *** unexpected failure for cgrun069(normal) --- Compile failed (exit code 1) errors were: /tmp/ghc84416_0/ghc_4.hc:5:12: error: error: conflicting types for ‘memsetErr’ const char memsetErr[] = "Memset Error - align: %d size: %d\012"; ^ In file included from /tmp/ghc84416_0/ghc_4.hc:3:0: error: /tmp/ghc84416_0/ghc_4.hc:4:6: error: note: previous declaration of ‘memsetErr’ was here ERW_(memsetErr); ^ /home/ghc/project/includes/Stg.h:242:46: error: note: in definition of macro ‘ERW_’ #define ERW_(X) extern StgWordArray (X) ^ /tmp/ghc84416_0/ghc_4.hc:8:12: error: error: conflicting types for ‘memcpyErr’ const char memcpyErr[] = "Memcpy Error - align: %d size: %d\012"; ^ In file included from /tmp/ghc84416_0/ghc_4.hc:3:0: error: /tmp/ghc84416_0/ghc_4.hc:7:6: error: note: previous declaration of ‘memcpyErr’ was here ERW_(memcpyErr); ^ /home/ghc/project/includes/Stg.h:242:46: error: note: in definition of macro ‘ERW_’ #define ERW_(X) extern StgWordArray (X) ^ /tmp/ghc84416_0/ghc_4.hc:11:12: error: error: conflicting types for ‘memmoveErr’ const char memmoveErr[] = "Memmove Error Occured\012"; ^ In file included from /tmp/ghc84416_0/ghc_4.hc:3:0: error: /tmp/ghc84416_0/ghc_4.hc:10:6: error: note: previous declaration of ‘memmoveErr’ was here ERW_(memmoveErr); ^ /home/ghc/project/includes/Stg.h:242:46: error: note: in definition of macro ‘ERW_’ #define ERW_(X) extern StgWordArray (X) ^ `gcc' failed in phase `C Compiler'. (Exit code: 1) *** unexpected failure for cgrun069(g1) }}} **T9577** {{{ --- ./codeGen/should_run/T9577.run/T9577.stdout.normalised 2018-08-02 03:38:39.932680724 +0000 +++ ./codeGen/should_run/T9577.run/T9577.run.stdout.normalised 2018-08-02 03:38:39.932680724 +0000 @@ -1 +1 @@ -True +False *** unexpected failure for T9577(normal) }}} **T3429** {{{ Wrong exit code for T3429(debug_numa)(expected 0 , actual 1 ) Stderr ( T3429 ): T3429: unknown RTS option: -N2 T3429: T3429: Usage: <prog> <args> [+RTS <rtsopts> | -RTS <args>] ... --RTS <args> T3429: T3429: +RTS Indicates run time system options follow T3429: -RTS Indicates program arguments follow T3429: --RTS Indicates that ALL subsequent arguments will be given to the T3429: program (including any of these RTS flags) T3429: T3429: The following run time system options are available: T3429: T3429: -? Prints this message and exits; the program is not executed T3429: --info Print information about the RTS used by this program T3429: T3429: -K<size> Sets the maximum stack size (default: 80% of the heap) T3429: Egs: -K32k -K512k -K8M T3429: -ki<size> Sets the initial thread stack size (default 1k) Egs: -ki4k -ki2m T3429: -kc<size> Sets the stack chunk size (default 32k) T3429: -kb<size> Sets the stack chunk buffer size (default 1k) T3429: T3429: -A<size> Sets the minimum allocation area size (default 1m) Egs: -A20m -A10k T3429: -AL<size> Sets the amount of large-object memory that can be allocated T3429: before a GC is triggered (default: the value of -A) T3429: -n<size> Allocation area chunk size (0 = disabled, default: 0) T3429: -O<size> Sets the minimum size of the old generation (default 1M) T3429: -M<size> Sets the maximum heap size (default unlimited) Egs: -M256k -M1G T3429: -H<size> Sets the minimum heap size (default 0M) Egs: -H24m -H1G T3429: -xb<addr> Sets the address from which a suitable start for the heap memory T3429: will be searched from. This is useful if the default address T3429: clashes with some third-party library. T3429: -m<n> Minimum % of heap which must be available (default 3%) T3429: -G<n> Number of generations (default: 2) T3429: -c<n> Use in-place compaction instead of copying in the oldest generation T3429: when live data is at least <n>% of the maximum heap size set with T3429: -M (default: 30%) T3429: -c Use in-place compaction for all oldest generation collections T3429: (the default is to use copying) T3429: -w Use mark-region for the oldest generation (experimental) T3429: -I<sec> Perform full GC after <sec> idle time (default: 0.3, 0 == off) T3429: T3429: -T Collect GC statistics (useful for in-program statistics access) T3429: -t[<file>] One-line GC statistics (if <file> omitted, uses stderr) T3429: -s[<file>] Summary GC statistics (if <file> omitted, uses stderr) T3429: -S[<file>] Detailed GC statistics (if <file> omitted, uses stderr) T3429: T3429: T3429: -Z Don't squeeze out update frames on stack overflow T3429: -B Sound the bell at the start of each garbage collection T3429: T3429: -hT Produce a heap profile grouped by closure type T3429: -l[flags] Log events in binary format to the file <program>.eventlog T3429: -v[flags] Log events to stderr T3429: where [flags] can contain: T3429: s scheduler events T3429: g GC and heap events T3429: p par spark events (sampled) T3429: f par spark events (full detail) T3429: u user events (emitted from Haskell code) T3429: a all event classes above T3429: t add time stamps (only useful with -v) T3429: -x disable an event class, for any flag above T3429: the initial enabled event classes are 'sgpu' T3429: T3429: -h Heap residency profile (output file <program>.hp) T3429: -i<sec> Time between heap profile samples (seconds, default: 0.1) T3429: T3429: -r<file> Produce ticky-ticky statistics (with -rstderr for stderr) T3429: T3429: -C<secs> Context-switch interval in seconds. T3429: 0 or no argument means switch as often as possible. T3429: Default: 0.02 sec. T3429: -V<secs> Master tick interval in seconds (0 == disable timer). T3429: This sets the resolution for -C and the heap profile timer -i, T3429: and is the frequency of time profile samples. T3429: Default: 0.01 sec. T3429: T3429: -Ds DEBUG: scheduler T3429: -Di DEBUG: interpreter T3429: -Dw DEBUG: weak T3429: -DG DEBUG: gccafs T3429: -Dg DEBUG: gc T3429: -Db DEBUG: block T3429: -DS DEBUG: sanity T3429: -Dt DEBUG: stable T3429: -Dp DEBUG: prof T3429: -Da DEBUG: apply T3429: -Dl DEBUG: linker T3429: -Dm DEBUG: stm T3429: -Dz DEBUG: stack squeezing T3429: -Dc DEBUG: program coverage T3429: -Dr DEBUG: sparks T3429: -DC DEBUG: compact T3429: T3429: NOTE: DEBUG events are sent to stderr by default; add -l to create a T3429: binary event log file instead. T3429: T3429: --install-signal-handlers=<yes|no> T3429: Install signal handlers (default: yes) T3429: -e<n> Maximum number of outstanding local sparks (default: 4096) T3429: -xm Base address to mmap memory in the GHCi linker T3429: (hex; must be <80000000) T3429: -xq The allocation limit given to a thread after it receives T3429: an AllocationLimitExceeded exception. (default: 100k) T3429: T3429: -Mgrace=<n> T3429: The amount of allocation after the program receives a T3429: HeapOverflow exception before the exception is thrown again, if T3429: the program is still exceeding the heap limit. T3429: T3429: RTS options may also be specified using the GHCRTS environment variable. T3429: T3429: Other RTS options may be available for programs compiled a different way. T3429: The GHC User's Guide has full details. T3429: *** unexpected failure for T3429(debug_numa) }}} **T13615** {{{ *** unexpected pass for T13615(ghci) }}} **T14075** {{{ Actual stderr output differs from expected: --- ./driver/T14075/T14075.run/T14075.stderr.normalised 2018-08-02 03:40:01.063504007 +0000 +++ ./driver/T14075/T14075.run/T14075.run.stderr.normalised 2018-08-02 03:40:01.063504007 +0000 @@ -1,3 +1,4 @@ +ghc: setNumCapabilities: not supported on this platform F.hs:1:1: instance O.O F.F -- Defined at F.hs-boot:6:10 *** unexpected failure for T14075(normal) }}} **recomp007** {{{ Actual stderr output differs from expected: --- /dev/null 2018-08-01 14:11:13.420752000 +0000 +++ ./driver/recomp007/recomp007.run/recomp007.run.stderr.normalised 2018-08-02 03:40:46.313078664 +0000 @@ -0,0 +1,122 @@ +WARNING: file compiler/utils/ListSetOps.hs, line 58 + [] + [Distribution.Backpack, Distribution.Backpack.FullUnitId, + Distribution.Backpack.ModuleShape, + Distribution.Backpack.PreModuleShape, + Distribution.Backpack.ReadyComponent, + Distribution.CabalSpecVersion, Distribution.Compat.Graph, + Distribution.Compat.Semigroup, Distribution.Compiler, + Distribution.License, Distribution.ModuleName, + Distribution.Parsec.Common, Distribution.SPDX.License, + Distribution.SPDX.LicenseExceptionId, + Distribution.SPDX.LicenseExpression, Distribution.SPDX.LicenseId, + Distribution.SPDX.LicenseReference, + Distribution.Simple.BuildTarget, Distribution.Simple.Compiler, + Distribution.Simple.Doctest, Distribution.Simple.Flag, + Distribution.Simple.Haddock, Distribution.Simple.InstallDirs, + Distribution.Simple.PackageIndex, Distribution.Simple.Program.Find, + Distribution.Simple.Program.GHC, Distribution.Simple.Program.Types, + Distribution.Simple.Setup, Distribution.System, + Distribution.Types.AbiDependency, Distribution.Types.AbiHash, + Distribution.Types.Benchmark, + Distribution.Types.BenchmarkInterface, + Distribution.Types.BenchmarkType, Distribution.Types.BuildInfo, + Distribution.Types.BuildType, Distribution.Types.ComponentId, + Distribution.Types.ComponentLocalBuildInfo, + Distribution.Types.ComponentName, + Distribution.Types.ComponentRequestedSpec, + Distribution.Types.CondTree, Distribution.Types.Condition, + Distribution.Types.Dependency, Distribution.Types.ExeDependency, + Distribution.Types.Executable, Distribution.Types.ExecutableScope, + Distribution.Types.ExposedModule, Distribution.Types.ForeignLib, + Distribution.Types.ForeignLibOption, + Distribution.Types.ForeignLibType, + Distribution.Types.GenericPackageDescription, + Distribution.Types.IncludeRenaming, + Distribution.Types.InstalledPackageInfo, + Distribution.Types.LegacyExeDependency, Distribution.Types.Library, + Distribution.Types.LocalBuildInfo, Distribution.Types.Mixin, + Distribution.Types.Module, Distribution.Types.ModuleReexport, + Distribution.Types.ModuleRenaming, + Distribution.Types.MungedPackageId, + Distribution.Types.MungedPackageName, + Distribution.Types.PackageDescription, + Distribution.Types.PackageId, Distribution.Types.PackageName, + Distribution.Types.PkgconfigDependency, + Distribution.Types.PkgconfigName, + Distribution.Types.SetupBuildInfo, Distribution.Types.SourceRepo, + Distribution.Types.TargetInfo, Distribution.Types.TestSuite, + Distribution.Types.TestSuiteInterface, Distribution.Types.TestType, + Distribution.Types.UnitId, Distribution.Types.UnqualComponentName, + Distribution.Types.Version, Distribution.Types.VersionRange, + Distribution.Utils.ShortText, Distribution.Verbosity, + Language.Haskell.Extension, Control.Applicative, Data.Complex, + Data.Functor.Compose, Data.Functor.Const, Data.Functor.Identity, + Data.Functor.Product, Data.Functor.Sum, Data.Monoid, + Data.Semigroup, Data.Semigroup.Internal, Data.Version, Data.Void, + GHC.Exts, GHC.Generics, GHC.IO.Exception, Data.Graph, + Data.IntMap.Internal, Data.IntSet.Internal, Data.Map.Internal, + Data.Sequence.Internal, Data.Set.Internal, Data.Tree, + Text.PrettyPrint.Annotated.HughesPJ, Text.PrettyPrint.HughesPJ, + Data.Text, Data.Text.Lazy] +WARNING: file compiler/utils/ListSetOps.hs, line 58 + [Distribution.Backpack, Distribution.Backpack.FullUnitId, + Distribution.Backpack.ModuleShape, + Distribution.Backpack.PreModuleShape, + Distribution.Backpack.ReadyComponent, + Distribution.CabalSpecVersion, Distribution.Compat.Graph, + Distribution.Compat.Semigroup, Distribution.Compiler, + Distribution.License, Distribution.ModuleName, + Distribution.Parsec.Common, Distribution.SPDX.License, + Distribution.SPDX.LicenseExceptionId, + Distribution.SPDX.LicenseExpression, Distribution.SPDX.LicenseId, + Distribution.SPDX.LicenseReference, + Distribution.Simple.BuildTarget, Distribution.Simple.Compiler, + Distribution.Simple.Doctest, Distribution.Simple.Flag, + Distribution.Simple.Haddock, Distribution.Simple.InstallDirs, + Distribution.Simple.PackageIndex, Distribution.Simple.Program.Find, + Distribution.Simple.Program.GHC, Distribution.Simple.Program.Types, + Distribution.Simple.Setup, Distribution.System, + Distribution.Types.AbiDependency, Distribution.Types.AbiHash, + Distribution.Types.Benchmark, + Distribution.Types.BenchmarkInterface, + Distribution.Types.BenchmarkType, Distribution.Types.BuildInfo, + Distribution.Types.BuildType, Distribution.Types.ComponentId, + Distribution.Types.ComponentLocalBuildInfo, + Distribution.Types.ComponentName, + Distribution.Types.ComponentRequestedSpec, + Distribution.Types.CondTree, Distribution.Types.Condition, + Distribution.Types.Dependency, Distribution.Types.ExeDependency, + Distribution.Types.Executable, Distribution.Types.ExecutableScope, + Distribution.Types.ExposedModule, Distribution.Types.ForeignLib, + Distribution.Types.ForeignLibOption, + Distribution.Types.ForeignLibType, + Distribution.Types.GenericPackageDescription, + Distribution.Types.IncludeRenaming, + Distribution.Types.InstalledPackageInfo, + Distribution.Types.LegacyExeDependency, Distribution.Types.Library, + Distribution.Types.LocalBuildInfo, Distribution.Types.Mixin, + Distribution.Types.Module, Distribution.Types.ModuleReexport, + Distribution.Types.ModuleRenaming, + Distribution.Types.MungedPackageId, + Distribution.Types.MungedPackageName, + Distribution.Types.PackageDescription, + Distribution.Types.PackageId, Distribution.Types.PackageName, + Distribution.Types.PkgconfigDependency, + Distribution.Types.PkgconfigName, + Distribution.Types.SetupBuildInfo, Distribution.Types.SourceRepo, + Distribution.Types.TargetInfo, Distribution.Types.TestSuite, + Distribution.Types.TestSuiteInterface, Distribution.Types.TestType, + Distribution.Types.UnitId, Distribution.Types.UnqualComponentName, + Distribution.Types.Version, Distribution.Types.VersionRange, + Distribution.Utils.ShortText, Distribution.Verbosity, + Language.Haskell.Extension, Control.Applicative, Data.Complex, + Data.Functor.Compose, Data.Functor.Const, Data.Functor.Identity, + Data.Functor.Product, Data.Functor.Sum, Data.Monoid, + Data.Semigroup, Data.Semigroup.Internal, Data.Version, Data.Void, + GHC.Exts, GHC.Generics, GHC.IO.Exception, Data.Graph, + Data.IntMap.Internal, Data.IntSet.Internal, Data.Map.Internal, + Data.Sequence.Internal, Data.Set.Internal, Data.Tree, + Text.PrettyPrint.Annotated.HughesPJ, Text.PrettyPrint.HughesPJ, + Data.Text, Data.Text.Lazy] + [] *** unexpected failure for recomp007(normal) }}} **T14702** {{{ Wrong exit code for T14702(threaded1)(expected 0 , actual 1 ) Stderr ( T14702 ): T14702: unknown RTS option: -N8 T14702: T14702: Usage: <prog> <args> [+RTS <rtsopts> | -RTS <args>] ... --RTS <args> T14702: T14702: +RTS Indicates run time system options follow T14702: -RTS Indicates program arguments follow T14702: --RTS Indicates that ALL subsequent arguments will be given to the T14702: program (including any of these RTS flags) T14702: T14702: The following run time system options are available: T14702: T14702: -? Prints this message and exits; the program is not executed T14702: --info Print information about the RTS used by this program T14702: T14702: -K<size> Sets the maximum stack size (default: 80% of the heap) T14702: Egs: -K32k -K512k -K8M T14702: -ki<size> Sets the initial thread stack size (default 1k) Egs: -ki4k -ki2m T14702: -kc<size> Sets the stack chunk size (default 32k) T14702: -kb<size> Sets the stack chunk buffer size (default 1k) T14702: T14702: -A<size> Sets the minimum allocation area size (default 1m) Egs: -A20m -A10k T14702: -AL<size> Sets the amount of large-object memory that can be allocated T14702: before a GC is triggered (default: the value of -A) T14702: -n<size> Allocation area chunk size (0 = disabled, default: 0) T14702: -O<size> Sets the minimum size of the old generation (default 1M) T14702: -M<size> Sets the maximum heap size (default unlimited) Egs: -M256k -M1G T14702: -H<size> Sets the minimum heap size (default 0M) Egs: -H24m -H1G T14702: -xb<addr> Sets the address from which a suitable start for the heap memory T14702: will be searched from. This is useful if the default address T14702: clashes with some third-party library. T14702: -m<n> Minimum % of heap which must be available (default 3%) T14702: -G<n> Number of generations (default: 2) T14702: -c<n> Use in-place compaction instead of copying in the oldest generation T14702: when live data is at least <n>% of the maximum heap size set with T14702: -M (default: 30%) T14702: -c Use in-place compaction for all oldest generation collections T14702: (the default is to use copying) T14702: -w Use mark-region for the oldest generation (experimental) T14702: -I<sec> Perform full GC after <sec> idle time (default: 0.3, 0 == off) T14702: T14702: -T Collect GC statistics (useful for in-program statistics access) T14702: -t[<file>] One-line GC statistics (if <file> omitted, uses stderr) T14702: -s[<file>] Summary GC statistics (if <file> omitted, uses stderr) T14702: -S[<file>] Detailed GC statistics (if <file> omitted, uses stderr) T14702: T14702: T14702: -Z Don't squeeze out update frames on stack overflow T14702: -B Sound the bell at the start of each garbage collection T14702: T14702: -hT Produce a heap profile grouped by closure type T14702: -l[flags] Log events in binary format to the file <program>.eventlog T14702: -v[flags] Log events to stderr T14702: where [flags] can contain: T14702: s scheduler events T14702: g GC and heap events T14702: p par spark events (sampled) T14702: f par spark events (full detail) T14702: u user events (emitted from Haskell code) T14702: a all event classes above T14702: t add time stamps (only useful with -v) T14702: -x disable an event class, for any flag above T14702: the initial enabled event classes are 'sgpu' T14702: T14702: -h Heap residency profile (output file <program>.hp) T14702: -i<sec> Time between heap profile samples (seconds, default: 0.1) T14702: T14702: -r<file> Produce ticky-ticky statistics (with -rstderr for stderr) T14702: T14702: -C<secs> Context-switch interval in seconds. T14702: 0 or no argument means switch as often as possible. T14702: Default: 0.02 sec. T14702: -V<secs> Master tick interval in seconds (0 == disable timer). T14702: This sets the resolution for -C and the heap profile timer -i, T14702: and is the frequency of time profile samples. T14702: Default: 0.01 sec. T14702: T14702: -Ds DEBUG: scheduler T14702: -Di DEBUG: interpreter T14702: -Dw DEBUG: weak T14702: -DG DEBUG: gccafs T14702: -Dg DEBUG: gc T14702: -Db DEBUG: block T14702: -DS DEBUG: sanity T14702: -Dt DEBUG: stable T14702: -Dp DEBUG: prof T14702: -Da DEBUG: apply T14702: -Dl DEBUG: linker T14702: -Dm DEBUG: stm T14702: -Dz DEBUG: stack squeezing T14702: -Dc DEBUG: program coverage T14702: -Dr DEBUG: sparks T14702: -DC DEBUG: compact T14702: T14702: NOTE: DEBUG events are sent to stderr by default; add -l to create a T14702: binary event log file instead. T14702: T14702: --install-signal-handlers=<yes|no> T14702: Install signal handlers (default: yes) T14702: -e<n> Maximum number of outstanding local sparks (default: 4096) T14702: -xm Base address to mmap memory in the GHCi linker T14702: (hex; must be <80000000) T14702: -xq The allocation limit given to a thread after it receives T14702: an AllocationLimitExceeded exception. (default: 100k) T14702: T14702: -Mgrace=<n> T14702: The amount of allocation after the program receives a T14702: HeapOverflow exception before the exception is thrown again, if T14702: the program is still exceeding the heap limit. T14702: T14702: RTS options may also be specified using the GHCRTS environment variable. T14702: T14702: Other RTS options may be available for programs compiled a different way. T14702: The GHC User's Guide has full details. T14702: *** unexpected failure for T14702(threaded1) }}} **nursery-chunks1** {{{ Actual stderr output differs from expected: --- /dev/null 2018-08-01 14:11:13.420752000 +0000 +++ ./rts/nursery-chunks1.run/nursery-chunks1.run.stderr.normalised 2018-08-02 03:45:18.786560729 +0000 @@ -0,0 +1,3 @@ +nursery-chunks1: setNumCapabilities: not supported on this platform +nursery-chunks1: setNumCapabilities: not supported on this platform +nursery-chunks1: setNumCapabilities: not supported on this platform *** unexpected failure for nursery-chunks1(threaded1) }}} **numa001** {{{ Wrong exit code for numa001(debug_numa)(expected 0 , actual 1 ) Stderr ( numa001 ): numa001: unknown RTS option: -N2 numa001: numa001: Usage: <prog> <args> [+RTS <rtsopts> | -RTS <args>] ... --RTS <args> numa001: numa001: +RTS Indicates run time system options follow numa001: -RTS Indicates program arguments follow numa001: --RTS Indicates that ALL subsequent arguments will be given to the numa001: program (including any of these RTS flags) numa001: numa001: The following run time system options are available: numa001: numa001: -? Prints this message and exits; the program is not executed numa001: --info Print information about the RTS used by this program numa001: numa001: -K<size> Sets the maximum stack size (default: 80% of the heap) numa001: Egs: -K32k -K512k -K8M numa001: -ki<size> Sets the initial thread stack size (default 1k) Egs: -ki4k -ki2m numa001: -kc<size> Sets the stack chunk size (default 32k) numa001: -kb<size> Sets the stack chunk buffer size (default 1k) numa001: numa001: -A<size> Sets the minimum allocation area size (default 1m) Egs: -A20m -A10k numa001: -AL<size> Sets the amount of large-object memory that can be allocated numa001: before a GC is triggered (default: the value of -A) numa001: -n<size> Allocation area chunk size (0 = disabled, default: 0) numa001: -O<size> Sets the minimum size of the old generation (default 1M) numa001: -M<size> Sets the maximum heap size (default unlimited) Egs: -M256k -M1G numa001: -H<size> Sets the minimum heap size (default 0M) Egs: -H24m -H1G numa001: -xb<addr> Sets the address from which a suitable start for the heap memory numa001: will be searched from. This is useful if the default address numa001: clashes with some third-party library. numa001: -m<n> Minimum % of heap which must be available (default 3%) numa001: -G<n> Number of generations (default: 2) numa001: -c<n> Use in-place compaction instead of copying in the oldest generation numa001: when live data is at least <n>% of the maximum heap size set with numa001: -M (default: 30%) numa001: -c Use in-place compaction for all oldest generation collections numa001: (the default is to use copying) numa001: -w Use mark-region for the oldest generation (experimental) numa001: -I<sec> Perform full GC after <sec> idle time (default: 0.3, 0 == off) numa001: numa001: -T Collect GC statistics (useful for in-program statistics access) numa001: -t[<file>] One-line GC statistics (if <file> omitted, uses stderr) numa001: -s[<file>] Summary GC statistics (if <file> omitted, uses stderr) numa001: -S[<file>] Detailed GC statistics (if <file> omitted, uses stderr) numa001: numa001: numa001: -Z Don't squeeze out update frames on stack overflow numa001: -B Sound the bell at the start of each garbage collection numa001: numa001: -hT Produce a heap profile grouped by closure type numa001: -l[flags] Log events in binary format to the file <program>.eventlog numa001: -v[flags] Log events to stderr numa001: where [flags] can contain: numa001: s scheduler events numa001: g GC and heap events numa001: p par spark events (sampled) numa001: f par spark events (full detail) numa001: u user events (emitted from Haskell code) numa001: a all event classes above numa001: t add time stamps (only useful with -v) numa001: -x disable an event class, for any flag above numa001: the initial enabled event classes are 'sgpu' numa001: numa001: -h Heap residency profile (output file <program>.hp) numa001: -i<sec> Time between heap profile samples (seconds, default: 0.1) numa001: numa001: -r<file> Produce ticky-ticky statistics (with -rstderr for stderr) numa001: numa001: -C<secs> Context-switch interval in seconds. numa001: 0 or no argument means switch as often as possible. numa001: Default: 0.02 sec. numa001: -V<secs> Master tick interval in seconds (0 == disable timer). numa001: This sets the resolution for -C and the heap profile timer -i, numa001: and is the frequency of time profile samples. numa001: Default: 0.01 sec. numa001: numa001: -Ds DEBUG: scheduler numa001: -Di DEBUG: interpreter numa001: -Dw DEBUG: weak numa001: -DG DEBUG: gccafs numa001: -Dg DEBUG: gc numa001: -Db DEBUG: block numa001: -DS DEBUG: sanity numa001: -Dt DEBUG: stable numa001: -Dp DEBUG: prof numa001: -Da DEBUG: apply numa001: -Dl DEBUG: linker numa001: -Dm DEBUG: stm numa001: -Dz DEBUG: stack squeezing numa001: -Dc DEBUG: program coverage numa001: -Dr DEBUG: sparks numa001: -DC DEBUG: compact numa001: numa001: NOTE: DEBUG events are sent to stderr by default; add -l to create a numa001: binary event log file instead. numa001: numa001: --install-signal-handlers=<yes|no> numa001: Install signal handlers (default: yes) numa001: -e<n> Maximum number of outstanding local sparks (default: 4096) numa001: -xm Base address to mmap memory in the GHCi linker numa001: (hex; must be <80000000) numa001: -xq The allocation limit given to a thread after it receives numa001: an AllocationLimitExceeded exception. (default: 100k) numa001: numa001: -Mgrace=<n> numa001: The amount of allocation after the program receives a numa001: HeapOverflow exception before the exception is thrown again, if numa001: the program is still exceeding the heap limit. numa001: numa001: RTS options may also be specified using the GHCRTS environment variable. numa001: numa001: Other RTS options may be available for programs compiled a different way. numa001: The GHC User's Guide has full details. numa001: *** unexpected failure for numa001(debug_numa) }}} **T11760** {{{ Wrong exit code for T11760(normal)(expected 0 , actual 1 ) Stderr ( T11760 ): T11760: unknown RTS option: -N2 T11760: T11760: Usage: <prog> <args> [+RTS <rtsopts> | -RTS <args>] ... --RTS <args> T11760: T11760: +RTS Indicates run time system options follow T11760: -RTS Indicates program arguments follow T11760: --RTS Indicates that ALL subsequent arguments will be given to the T11760: program (including any of these RTS flags) T11760: T11760: The following run time system options are available: T11760: T11760: -? Prints this message and exits; the program is not executed T11760: --info Print information about the RTS used by this program T11760: T11760: -K<size> Sets the maximum stack size (default: 80% of the heap) T11760: Egs: -K32k -K512k -K8M T11760: -ki<size> Sets the initial thread stack size (default 1k) Egs: -ki4k -ki2m T11760: -kc<size> Sets the stack chunk size (default 32k) T11760: -kb<size> Sets the stack chunk buffer size (default 1k) T11760: T11760: -A<size> Sets the minimum allocation area size (default 1m) Egs: -A20m -A10k T11760: -AL<size> Sets the amount of large-object memory that can be allocated T11760: before a GC is triggered (default: the value of -A) T11760: -n<size> Allocation area chunk size (0 = disabled, default: 0) T11760: -O<size> Sets the minimum size of the old generation (default 1M) T11760: -M<size> Sets the maximum heap size (default unlimited) Egs: -M256k -M1G T11760: -H<size> Sets the minimum heap size (default 0M) Egs: -H24m -H1G T11760: -xb<addr> Sets the address from which a suitable start for the heap memory T11760: will be searched from. This is useful if the default address T11760: clashes with some third-party library. T11760: -m<n> Minimum % of heap which must be available (default 3%) T11760: -G<n> Number of generations (default: 2) T11760: -c<n> Use in-place compaction instead of copying in the oldest generation T11760: when live data is at least <n>% of the maximum heap size set with T11760: -M (default: 30%) T11760: -c Use in-place compaction for all oldest generation collections T11760: (the default is to use copying) T11760: -w Use mark-region for the oldest generation (experimental) T11760: -I<sec> Perform full GC after <sec> idle time (default: 0.3, 0 == off) T11760: T11760: -T Collect GC statistics (useful for in-program statistics access) T11760: -t[<file>] One-line GC statistics (if <file> omitted, uses stderr) T11760: -s[<file>] Summary GC statistics (if <file> omitted, uses stderr) T11760: -S[<file>] Detailed GC statistics (if <file> omitted, uses stderr) T11760: T11760: T11760: -Z Don't squeeze out update frames on stack overflow T11760: -B Sound the bell at the start of each garbage collection T11760: T11760: -hT Produce a heap profile grouped by closure type T11760: -h Heap residency profile (output file <program>.hp) T11760: -i<sec> Time between heap profile samples (seconds, default: 0.1) T11760: T11760: -C<secs> Context-switch interval in seconds. T11760: 0 or no argument means switch as often as possible. T11760: Default: 0.02 sec. T11760: -V<secs> Master tick interval in seconds (0 == disable timer). T11760: This sets the resolution for -C and the heap profile timer -i, T11760: and is the frequency of time profile samples. T11760: Default: 0.01 sec. T11760: T11760: --install-signal-handlers=<yes|no> T11760: Install signal handlers (default: yes) T11760: -e<n> Maximum number of outstanding local sparks (default: 4096) T11760: -xm Base address to mmap memory in the GHCi linker T11760: (hex; must be <80000000) T11760: -xq The allocation limit given to a thread after it receives T11760: an AllocationLimitExceeded exception. (default: 100k) T11760: T11760: -Mgrace=<n> T11760: The amount of allocation after the program receives a T11760: HeapOverflow exception before the exception is thrown again, if T11760: the program is still exceeding the heap limit. T11760: T11760: RTS options may also be specified using the GHCRTS environment variable. T11760: T11760: Other RTS options may be available for programs compiled a different way. T11760: The GHC User's Guide has full details. T11760: *** unexpected failure for T11760(normal) }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15466> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler