Ian Lynagh [Wed, 23 Sep 2009 18:22:51 +0000 (18:22 +0000)]
Make count_lines work with the new directory layout
Ian Lynagh [Wed, 23 Sep 2009 17:49:45 +0000 (17:49 +0000)]
Add count_lines back into the repo
Ian Lynagh [Wed, 23 Sep 2009 14:51:30 +0000 (14:51 +0000)]
Remove a haskeline release note that doesn't apply to ghci
Spotted by Judah.
Simon Marlow [Wed, 23 Sep 2009 12:50:59 +0000 (12:50 +0000)]
fix warnings
Simon Marlow [Wed, 23 Sep 2009 10:52:40 +0000 (10:52 +0000)]
Add erf, erfc, erfff, erfcf (#3536)
Simon Marlow [Wed, 23 Sep 2009 09:46:47 +0000 (09:46 +0000)]
Various updates/additions
Simon Marlow [Wed, 23 Sep 2009 09:46:39 +0000 (09:46 +0000)]
Document -package-id, and use the term "package ID" consistently
Simon Marlow [Wed, 23 Sep 2009 10:51:19 +0000 (10:51 +0000)]
Make it so that -Ds implies -ls
Matthias Kilian [Sun, 20 Sep 2009 18:13:19 +0000 (18:13 +0000)]
Don't build haddock if HADDOC_DOCS = NO, and disable HADDOC_DOCS if GhcWithInterpreter = NO
Haddock uses TcRnDriver.tcRnGetInfo, which is only available if
GHCI is built. Set HADDOC_DOCS to NO if GhcWithInterpreter is NO,
and disable the haddock build if HADDOC_DOCS = NO.
Ian Lynagh [Tue, 22 Sep 2009 22:23:08 +0000 (22:23 +0000)]
Remove syb; it is no longer needed
Ian Lynagh [Tue, 22 Sep 2009 20:06:57 +0000 (20:06 +0000)]
Remove base3-compat
Ian Lynagh [Tue, 22 Sep 2009 15:24:00 +0000 (15:24 +0000)]
Set version number to 6.13
Ian Lynagh [Mon, 21 Sep 2009 16:55:59 +0000 (16:55 +0000)]
boot-pkgs now automatically works out which libraries are from tarballs
Simon Marlow [Mon, 21 Sep 2009 15:57:20 +0000 (15:57 +0000)]
remove "touch %_hsc.c" - what was it for?
Ian Lynagh [Mon, 21 Sep 2009 18:26:36 +0000 (18:26 +0000)]
Validate now cleans regardless of whether mk/config.mk exists
Cleaning should always succeed now
Ian Lynagh [Mon, 21 Sep 2009 18:24:31 +0000 (18:24 +0000)]
Update 6.12.1 release notes
Add changes that we inherit from haskeline
Ian Lynagh [Mon, 21 Sep 2009 16:20:03 +0000 (16:20 +0000)]
Add sdist to ghc-cabal's bag of tricks
Simon Marlow [Mon, 21 Sep 2009 14:52:01 +0000 (14:52 +0000)]
Add the --checked-out flag; expand the docs/comments at the top
Simon Marlow [Mon, 21 Sep 2009 13:00:24 +0000 (13:00 +0000)]
move way-related stuff into a separate file
This fixes at least one problem: libHSffi-ghc<version>.so wasn't being
cleaned, because $(dyn_libsuf) wasn't defined while cleaning.
Simon Marlow [Mon, 21 Sep 2009 11:42:10 +0000 (11:42 +0000)]
clean some Haddock-generated files
Ian Lynagh [Sun, 20 Sep 2009 18:36:31 +0000 (18:36 +0000)]
Fix bindist creation
Ian Lynagh [Sun, 20 Sep 2009 15:24:02 +0000 (15:24 +0000)]
Update dependencies
Ian Lynagh [Sun, 20 Sep 2009 14:18:20 +0000 (14:18 +0000)]
Add release notes for 6.12.1
Simon Marlow [Fri, 18 Sep 2009 14:40:41 +0000 (14:40 +0000)]
remove encoding of output using Haskeline; the IO library does it now (#3398)
Simon Marlow [Fri, 18 Sep 2009 14:27:18 +0000 (14:27 +0000)]
ignore unused-import warnings from Haskeline
Simon Marlow [Fri, 18 Sep 2009 13:44:38 +0000 (13:44 +0000)]
Fix the nursery size calculation when -N is used with -H
Simon Marlow [Fri, 18 Sep 2009 13:32:04 +0000 (13:32 +0000)]
implement case-on-Word in the byte code generator/interpreter (#2881)
Simon Marlow [Fri, 18 Sep 2009 11:46:31 +0000 (11:46 +0000)]
Fix #3439: -debug implies -ticky, and -ticky code links with any RTS
Simon Marlow [Fri, 18 Sep 2009 10:43:27 +0000 (10:43 +0000)]
Fix #3525 - we were still checking for ParsePkgConf.hs, which is gone
Simon Marlow [Wed, 16 Sep 2009 20:50:36 +0000 (20:50 +0000)]
improve the cyclic module error message as per #1856
- remove the main: stuff
- show the filenames
- don't clutter the output with imports that aren't involved in
the cycle
Manuel M T Chakravarty [Thu, 17 Sep 2009 13:27:06 +0000 (13:27 +0000)]
Use CONF_CC_OPTS
- Needed to get arch-dependent options, eg, on Snow Leopard
Simon Marlow [Thu, 17 Sep 2009 12:19:21 +0000 (12:19 +0000)]
fix install on Windows
Simon Marlow [Thu, 17 Sep 2009 10:33:50 +0000 (10:33 +0000)]
fix install on Windows
Simon Marlow [Thu, 17 Sep 2009 12:15:10 +0000 (12:15 +0000)]
Allow -package-id to override the default package shadowing semantics
So that Cabal, if it wants, can use a more general algorithm to find a
consistent set of packages to use.
Simon Marlow [Thu, 17 Sep 2009 10:05:44 +0000 (10:05 +0000)]
fix xref
Simon Marlow [Thu, 17 Sep 2009 10:04:03 +0000 (10:04 +0000)]
add -eventlog
Simon Marlow [Wed, 16 Sep 2009 15:28:15 +0000 (15:28 +0000)]
document -eventlog and the associated runtime options
Simon Marlow [Wed, 16 Sep 2009 14:23:24 +0000 (14:23 +0000)]
typo in error message
Simon Marlow [Wed, 16 Sep 2009 14:23:15 +0000 (14:23 +0000)]
only create the .eventlog file if any tracing options are enabled
Manuel M T Chakravarty [Thu, 17 Sep 2009 04:41:21 +0000 (04:41 +0000)]
Fix build on Mac OS 10.6 (Snow Leopard)
- We have -m32 as machine-dependent option for gcc for a 32 bit build
- Like on OpenBSD, SL requires -fno-stack-protector to avoid triggering the
stack smashing checks inserted by gcc by default on this platform.
Matthias Kilian [Tue, 15 Sep 2009 20:42:54 +0000 (20:42 +0000)]
Follow the builtin:rts vs. builtin_rts renaming
This unbreaks make install again.
Thomas Schilling [Tue, 15 Sep 2009 15:03:53 +0000 (15:03 +0000)]
Put context information for warnings in errMsgExtraInfo.
For type checker warnings, the context information ("In the expression
...") was simply appended to the main message while for proper errors
they live in errMsgExtraInfo. This allows GHC API clients to drop
that information if not needed.
Simon Marlow [Tue, 15 Sep 2009 16:10:24 +0000 (16:10 +0000)]
Update and improve packages documentation
Peter Hercek [Mon, 17 Aug 2009 18:41:00 +0000 (18:41 +0000)]
FIX #3434 (improve vi tags: add non-exported symbols, kinds, regex tags)
Simon Marlow [Tue, 15 Sep 2009 11:12:27 +0000 (11:12 +0000)]
Event tracing: put the capability in the block marker, omit it from the events
This makes events smaller and tracing quicker, and speeds up reading
and sorting the trace file.
HEADS UP: this changes the format of event log files. Corresponding
changes to the ghc-events package are required (and will be pushed
soon). Normally we would make backwards-compatible changes, but this
changes the format of every event (to remove the capability) so I'm
breaking the rules this time. This will be the only time we can do
this, since the format becomes public in 6.12.1.
Simon Marlow [Sun, 13 Sep 2009 21:25:46 +0000 (21:25 +0000)]
Add event block markers
These indicate the size and time span of a sequence of events in the
event log, to make it easier to sort and navigate a large event log.
Simon Marlow [Sat, 12 Sep 2009 21:35:04 +0000 (21:35 +0000)]
Optimise the code generated at trace points
Simon Marlow [Tue, 15 Sep 2009 08:40:00 +0000 (08:40 +0000)]
Improve the default parallel GC settings, and sanitise the flags (#3340)
Flags (from +RTS -?):
-qg[<n>] Use parallel GC only for generations >= <n>
(default: 0, -qg alone turns off parallel GC)
-qb[<n>] Use load-balancing in the parallel GC only for generations >= <n>
(default: 1, -qb alone turns off load-balancing)
these are good defaults for most parallel programs. Single-threaded
programs that want to make use of parallel GC will probably want +RTS
-qg1 (this is documented).
I've also updated the docs.
Simon Marlow [Tue, 15 Sep 2009 08:34:31 +0000 (08:34 +0000)]
Update the "Hints for using SMP parallelism" section
In particular, remove the claim that the GC is single-threaded!
Simon Marlow [Mon, 14 Sep 2009 14:44:27 +0000 (14:44 +0000)]
Fix collateral damage after distdir-opts.mk was refactored away
Peter Hercek [Tue, 12 May 2009 17:24:59 +0000 (17:24 +0000)]
alow macros to redefine builtin GHCi commands (implements #3084)
Simon Marlow [Mon, 14 Sep 2009 11:05:50 +0000 (11:05 +0000)]
Fix build on Windows
Simon Marlow [Mon, 14 Sep 2009 10:58:23 +0000 (10:58 +0000)]
Add "ghc-pkg init" command for creating a new package DB
Simon Marlow [Fri, 11 Sep 2009 15:28:12 +0000 (15:28 +0000)]
Fix a space leak in the native code gen (again)
Ian Lynagh [Sun, 13 Sep 2009 20:40:16 +0000 (20:40 +0000)]
Use _ rather than : for the builtin package filenames
Using "builtin:foo" creates a file called "builtin" on Windows
Ian Lynagh [Sun, 13 Sep 2009 16:19:45 +0000 (16:19 +0000)]
Don't register the non-munged stage1 ghc package
It confuses the build system.
Ian Lynagh [Sun, 13 Sep 2009 14:21:22 +0000 (14:21 +0000)]
Fixes for compiling the HEAD with iteslf
Ian Lynagh [Sat, 12 Sep 2009 17:50:50 +0000 (17:50 +0000)]
Don't try and put HaddockLex and HaddockParse into src dists
They no longer exist.
Ian Lynagh [Sat, 12 Sep 2009 17:32:53 +0000 (17:32 +0000)]
ParsePkgConf no longer exists, so don't try to put it in source dists
Ian Lynagh [Sat, 12 Sep 2009 17:32:23 +0000 (17:32 +0000)]
Tweak an error message
Ian Lynagh [Sat, 12 Sep 2009 17:16:27 +0000 (17:16 +0000)]
Refactor sdist so that we can see which command is being run
Ian Lynagh [Sat, 12 Sep 2009 14:40:46 +0000 (14:40 +0000)]
Fix the location of the package database in the installed ghc-pkg
It was using the old filename, rather than the new directory name.
Ian Lynagh [Sat, 12 Sep 2009 14:32:48 +0000 (14:32 +0000)]
More bindist fixes
Ian Lynagh [Sat, 12 Sep 2009 13:28:42 +0000 (13:28 +0000)]
Add includes/ghcautoconf.h and includes/ghcplatform.h to bindists
Ian Lynagh [Fri, 11 Sep 2009 22:07:35 +0000 (22:07 +0000)]
Update the URL in the usage info to point to the current docs location
Simon Marlow [Fri, 11 Sep 2009 14:07:02 +0000 (14:07 +0000)]
move hschooks.c to ghc/, and enable it
Simon Marlow [Fri, 11 Sep 2009 12:45:47 +0000 (12:45 +0000)]
Fix #3408: lengthen the idle GC time to 5s for GHC/GHCi.
simonpj@microsoft.com [Fri, 11 Sep 2009 13:35:13 +0000 (13:35 +0000)]
Comments and Cmm notes
Simon Marlow [Fri, 11 Sep 2009 11:49:28 +0000 (11:49 +0000)]
Remove the old package.conf parser, use read instead (fixed #3410)
Performance isn't an issue for reading the old-style package.conf
files, so we might as well revert to using read and fix a bug at the
same time.
Ian Lynagh [Fri, 11 Sep 2009 12:31:35 +0000 (12:31 +0000)]
Fix some makefile logic, and remove the now unused *_USE_BOOT_LIBS vars
Ian Lynagh [Fri, 11 Sep 2009 12:18:27 +0000 (12:18 +0000)]
Change a sed separator character to make it easier to read
Ian Lynagh [Fri, 11 Sep 2009 11:47:56 +0000 (11:47 +0000)]
Use -fno-warn-name-shadowing when compiling Binary.hs
simonpj@microsoft.com [Fri, 11 Sep 2009 11:56:30 +0000 (11:56 +0000)]
Improve optimisation of cost centres
This patch fixes test failures for the profiling way for drv001.
The problem was that the arity of a function was decreasing during
"optimisation" because of interaction with SCC annotations.
In particular
f = /\a. scc "f" (h x) -- where h had arity 2
and h gets inlined, led to
f = /\a. scc "f" let v = scc "f" x in \y. <blah>
Two main changes:
1. exprIsTrivial now says True for (scc "f" x)
See Note [SCCs are trivial] in CoreUtils
2. The simplifier eliminates nested pushing of the same cost centre:
scc "f" (...(scc "f" e)...)
==> scc "f" (...e...)
Simon Marlow [Fri, 11 Sep 2009 10:31:42 +0000 (10:31 +0000)]
Fix build with GHC <= 6.10.1
Simon Marlow [Fri, 11 Sep 2009 09:31:39 +0000 (09:31 +0000)]
loosen base dependency to allow base-3
Simon Marlow [Fri, 11 Sep 2009 09:31:24 +0000 (09:31 +0000)]
remove superfluous trailing backslash
Simon Marlow [Fri, 11 Sep 2009 09:31:03 +0000 (09:31 +0000)]
Work around bug in old bytestring versions by reading the package DB strictly
simonpj@microsoft.com [Fri, 11 Sep 2009 10:53:16 +0000 (10:53 +0000)]
Add cmm-notes, describing Simon and John's work on Cmm pipeline
simonpj@microsoft.com [Fri, 11 Sep 2009 09:08:19 +0000 (09:08 +0000)]
Wibble to error message
Simon Marlow [Thu, 10 Sep 2009 15:21:46 +0000 (15:21 +0000)]
add comment: __thread is not supported by gcc on OS X yet
Simon Marlow [Thu, 10 Sep 2009 15:16:23 +0000 (15:16 +0000)]
Fix #3320: we forgot to save/restore the GC register variable
Simon Marlow [Thu, 10 Sep 2009 12:40:37 +0000 (12:40 +0000)]
put back F_, just in case the via-C codegen uses it
Simon Marlow [Thu, 10 Sep 2009 12:26:07 +0000 (12:26 +0000)]
remove debugging/testing code that got here by mistake
Simon Marlow [Thu, 10 Sep 2009 12:18:31 +0000 (12:18 +0000)]
fix installation of header files (#3451)
simonpj@microsoft.com [Thu, 10 Sep 2009 12:58:48 +0000 (12:58 +0000)]
Three improvements to Template Haskell (fixes #3467)
This patch implements three significant improvements to Template Haskell.
Declaration-level splices with no "$"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This change simply allows you to omit the "$(...)" wrapper for
declaration-level TH splices. An expression all by itself is
not legal, so we now treat it as a TH splice. Thus you can now
say
data T = T1 | T2
deriveMyStuff ''T
where deriveMyStuff :: Name -> Q [Dec]
This makes a much nicer interface for clients of libraries that use
TH: no scary $(deriveMyStuff ''T).
Nested top-level splices
~~~~~~~~~~~~~~~~~~~~~~~~
Previously TH would reject this, saying that splices cannot be nested:
f x = $(g $(h 'x))
But there is no reason for this not to work. First $(h 'x) is run,
yielding code <blah> that is spliced instead of the $(h 'x). Then (g
<blah>) is typechecked and run, yielding code that replaces the
$(g ...) splice.
So this simply lifts the restriction.
Fix Trac #3467: non-top-level type splices
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
It appears that when I added the ability to splice types in TH
programs, I failed to pay attention to non-top-level splices -- that
is, splices inside quotatation brackets.
This patch fixes the problem. I had to modify HsType, so there's a
knock-on change to Haddock.
Its seems that a lot of lines of code has changed, but almost all the
new lines are comments!
General tidying up
~~~~~~~~~~~~~~~~~~
As a result of thinking all this out I re-jigged the data type ThStage,
which had far too many values before. And I wrote a nice state transition
diagram to make it all precise;
see Note [Template Haskell state diagram] in TcSplice
Lots more refactoring in TcSplice, resulting in significantly less code.
(A few more lines, but actually less code -- the rest is comments.)
I think the result is significantly cleaner.
simonpj@microsoft.com [Tue, 8 Sep 2009 19:23:27 +0000 (19:23 +0000)]
Refactor the parsing of data type declarations
This is a minor change to the parser that tidies it up a bit,
and allows us to parse
data T :: *
data S :: * -> *
just like
data T
data S a
simonpj@microsoft.com [Sat, 5 Sep 2009 17:15:11 +0000 (17:15 +0000)]
Remove unused data constructor ITpragma in type Lexer.Token
simonpj@microsoft.com [Thu, 10 Sep 2009 12:29:28 +0000 (12:29 +0000)]
Comments in Cmm
Simon Marlow [Thu, 10 Sep 2009 11:11:56 +0000 (11:11 +0000)]
fix warnings
Simon Marlow [Thu, 10 Sep 2009 11:11:15 +0000 (11:11 +0000)]
binary has unused-import warnings
Simon Marlow [Thu, 10 Sep 2009 10:27:03 +0000 (10:27 +0000)]
Change the representation of the package database
- the package DB is a directory containing one file per package
instance (#723)
- there is a binary cache of the database (#593, #2089)
- the binary package is now a boot package
- there is a new package, bin-package-db, containing the Binary
instance of InstalledPackageInfo for the binary cache.
Also included in this patch
- Use colour in 'ghc-pkg list' to indicate broken or hidden packages
Broken packages are red, hidden packages are
Colour support comes from the terminfo package, and is only used when
- not --simple-output
- stdout is a TTY
- the terminal type has colour capability
- Fix the bug that 'ghc-pkg list --user' shows everything as broken
Duncan Coutts [Tue, 8 Sep 2009 18:32:41 +0000 (18:32 +0000)]
Improve the user guide section on shared libs
Make it clear that Haskell code to be used by other Haskell code
must be built as a package.
Austin Seipp [Thu, 10 Sep 2009 08:46:30 +0000 (08:46 +0000)]
FIX #711 implement osFreeAllMBlocks for unix
Simon Marlow [Wed, 9 Sep 2009 09:34:43 +0000 (09:34 +0000)]
NO_CLEAN_GMP fixes
Simon Marlow [Wed, 9 Sep 2009 09:32:17 +0000 (09:32 +0000)]
Omit visibility pragmas on Windows (fixes warnings/validate failures)
simonpj@microsoft.com [Thu, 10 Sep 2009 09:17:03 +0000 (09:17 +0000)]
Comments only, on Cmm data types
Simon Marlow [Wed, 9 Sep 2009 11:57:57 +0000 (11:57 +0000)]
Fix up logic to decide whether shared libs are being built or not
Now, adding dyn to $(GhcLibWays) is how shared libs are enabled.
Everything else keys off that, rather than testing
$(BuildSharedLibs).
Simon Marlow [Tue, 8 Sep 2009 15:44:11 +0000 (15:44 +0000)]
remove a ToDo that is Done
Simon Marlow [Tue, 8 Sep 2009 15:03:51 +0000 (15:03 +0000)]
comment fix
Simon Marlow [Wed, 9 Sep 2009 09:44:08 +0000 (09:44 +0000)]
refactor *_OPTS settings in the build system; no functional changes