Ian Lynagh [Tue, 29 May 2007 10:21:43 +0000 (10:21 +0000)]
Build Windows installer when making a bindist if ISCC is set
It doesn't work yet, but I'm pretty sure that's because the bindist is
broken rather than the installer is broken.
Simon Marlow [Tue, 29 May 2007 07:42:24 +0000 (07:42 +0000)]
don't build the threaded RTS when GhcUnregisterised=YES
Isaac Dupree [Sat, 26 May 2007 18:08:00 +0000 (18:08 +0000)]
only comments, spacing, alpha-renaming
Michael D. Adams [Fri, 25 May 2007 20:51:26 +0000 (20:51 +0000)]
Removed defunct compiler/codeGen/CgUsages.hi-boot-6
Simon Marlow [Fri, 25 May 2007 14:42:16 +0000 (14:42 +0000)]
-package pretty is required for GHC >= 6.7
Simon Marlow [Fri, 25 May 2007 14:42:02 +0000 (14:42 +0000)]
add $(ghc_ge_607)
Simon Marlow [Fri, 25 May 2007 08:09:44 +0000 (08:09 +0000)]
System.Directory.Internals is now in package directory
Ian Lynagh [Thu, 24 May 2007 17:50:31 +0000 (17:50 +0000)]
Say where we're booting to aid debugging
Simon Marlow [Thu, 24 May 2007 13:54:56 +0000 (13:54 +0000)]
add a rule for creating makefiles as <dir>/CabalMakefile
Not done by default yet, but useful when hacking on libraries.
Ian Lynagh [Wed, 23 May 2007 19:08:43 +0000 (19:08 +0000)]
process is now split off from base
Ian Lynagh [Sat, 19 May 2007 13:26:56 +0000 (13:26 +0000)]
old-locale is now split out
Ian Lynagh [Sat, 19 May 2007 12:12:11 +0000 (12:12 +0000)]
Refactor libraries/Makefile a bit; also, we don't need a bootstrapping pretty
Ian Lynagh [Sat, 19 May 2007 12:11:34 +0000 (12:11 +0000)]
rebuild.library.<foo> is now a shorthand for clean then build
Ian Lynagh [Sat, 19 May 2007 12:07:15 +0000 (12:07 +0000)]
directory, old-time and random are now split off from base
Ian Lynagh [Fri, 18 May 2007 16:54:11 +0000 (16:54 +0000)]
Add parallel extralib
Ian Lynagh [Fri, 18 May 2007 16:25:04 +0000 (16:25 +0000)]
We now need a bootstrapping pretty package as Cabal depends on it
Pepe Iborra [Thu, 24 May 2007 11:46:21 +0000 (11:46 +0000)]
wibble
simonpj@microsoft.com [Wed, 23 May 2007 11:48:18 +0000 (11:48 +0000)]
Improve the interaction of 'seq' and associated data types
Roman produced programs involving associated types that did not optimise well.
His programs were something like this:
data family T a
data instance T Int = MkT Bool Char
bar :: T Int -> Int
bar t = t `seq` loop 0
where
loop = ...
You'd think that the `seq` should unbox 't' outside the loop, since
a (T Int) is just a MkT pair.
The most robust way to make this happen is for the simplifier to understand
a bit about type-family instances. See
Note [Improving seq]
in Simplify.lhs. We use FamInstEnv.topNormaliseType to do the interesting
work.
To make this happen I did a bit of refactoring to the simplifier
monad.
I'd previously done a very similar transformation in LiberateCase, but it
was happening too late. So this patch takes it out of LiberateCase as
well as adding it to Simplify.
simonpj@microsoft.com [Wed, 23 May 2007 11:42:53 +0000 (11:42 +0000)]
In GHCi, bind identifiers at TH level 'impLevel'
Consder Trac #1265, which does this in GHCi:
Prelude> let doit = fail "Code not written yet" :: ExpQ
Prelude> $(doit)
Even though 'doit' is defined "in the same module", it's OK to use it in a splice
because it'll have been fully compiled to bytecode. (Contrast the situation if
these two lines appeared in a single, compiled module.)
Hence we want to bind 'doit' at TH's "imported level" (TcRnTypes.impLevel).
This used to happen because GHCi-bound Ids were in the *global* type
env (and hence at "imported level"). But since SimonM moved
GHCi-bound ids to the *local* type env (for good reasons) the above
program has been rejected.
This patch makes it work again.
simonpj@microsoft.com [Wed, 23 May 2007 11:41:03 +0000 (11:41 +0000)]
White-space only
simonpj@microsoft.com [Wed, 23 May 2007 11:39:55 +0000 (11:39 +0000)]
Drop redundant import
simonpj@microsoft.com [Mon, 21 May 2007 09:33:08 +0000 (09:33 +0000)]
Document -fomit-interface-pragmas, -fignore-interface-pragmas
Tom Schrijvers [Fri, 11 May 2007 17:09:28 +0000 (17:09 +0000)]
type family normalisation
simonpj@microsoft.com [Mon, 14 May 2007 08:02:15 +0000 (08:02 +0000)]
Improve error message when 'main' is not defined
Pepe Iborra [Wed, 23 May 2007 09:26:22 +0000 (09:26 +0000)]
Clean up for code conventions & add some comment
Roman Leshchinskiy [Fri, 11 May 2007 01:39:32 +0000 (01:39 +0000)]
OccNames for closure conversion isomorphisms
Roman Leshchinskiy [Thu, 10 May 2007 01:50:27 +0000 (01:50 +0000)]
Modify generation of OccNames for closure conversion
Manuel M T Chakravarty [Tue, 22 May 2007 09:27:29 +0000 (09:27 +0000)]
Add data type information to VectInfo
Michael D. Adams [Mon, 21 May 2007 11:29:12 +0000 (11:29 +0000)]
Keep flattenCgStmts from emitting spurious 'goto' after CmmSwitch
Simon Marlow [Mon, 21 May 2007 13:42:32 +0000 (13:42 +0000)]
follow removal of Distribtion.Compat.FilePath
Simon Marlow [Mon, 21 May 2007 10:45:34 +0000 (10:45 +0000)]
separate the Windows version of uploading the docs, and fix it
Simon Marlow [Mon, 21 May 2007 08:31:55 +0000 (08:31 +0000)]
use relative dir for uploading to avoid problems on Windows
Pepe Iborra [Sun, 20 May 2007 23:24:14 +0000 (23:24 +0000)]
Get the path right for :list
Simon Marlow [Mon, 21 May 2007 08:51:34 +0000 (08:51 +0000)]
doc: 'import M' is the same as ':module +M'
Ian Lynagh [Sun, 20 May 2007 17:54:30 +0000 (17:54 +0000)]
Use -cpp when building installPackage, so we can build the Cabal/filepath code
Pepe Iborra [Sun, 20 May 2007 11:22:52 +0000 (11:22 +0000)]
wibble
Pepe Iborra [Sun, 20 May 2007 11:21:41 +0000 (11:21 +0000)]
Clean up & comments
Pepe Iborra [Sun, 20 May 2007 11:07:47 +0000 (11:07 +0000)]
cvReconstructType: a faster, types-only version of cvObtainTerm
Isaac Dupree [Sat, 19 May 2007 19:50:29 +0000 (19:50 +0000)]
FastMutInt - make #endif be inside \{code} to match #ifdef
Isaac Dupree [Mon, 30 Apr 2007 19:59:44 +0000 (19:59 +0000)]
FastTypes - delete ugly _signatures, comment on Bool not FastBool where the typechecker will not catch it
Isaac Dupree [Mon, 30 Apr 2007 19:58:10 +0000 (19:58 +0000)]
FastTypes - note strictness of fast{Or,And} and make the unboxed versions so
Isaac Dupree [Sun, 29 Apr 2007 19:14:22 +0000 (19:14 +0000)]
fix non-GHC-specific variant of FastTypes
I tested FastTypes.lhs with hugs (manually using cpp) as well as ghc.
Pepe Iborra [Sat, 19 May 2007 22:05:26 +0000 (22:05 +0000)]
Rewrite the unsafe code dealing with unboxed primitives in RtClosureInspect
Closure uses now a list of Words instead of a ByteArray# to store the non ptrs.
Term.Prim follows this and keeps the [Word] value instead of storing the
Show representation, which wasn't the best idea anyway.
This fixes test print022
Ian Lynagh [Fri, 18 May 2007 15:20:17 +0000 (15:20 +0000)]
Avoid the need to rerun configure when we install
This also means we don't need to carry around 10s of megs of Setup
executables in bindists.
Simon Marlow [Fri, 18 May 2007 14:56:35 +0000 (14:56 +0000)]
'import M' is now the same as ':module +M' at the prompt
Seemed like a reasonable thing to do, and only 1 line
Simon Marlow [Fri, 18 May 2007 14:37:08 +0000 (14:37 +0000)]
FIX: break011.
Reset the exception flag before re-throwing the exception unless it
was "Interrupted". This avoids needing the double :continue for
ordinary exceptions, but still lets us break on ^C.
Simon Marlow [Fri, 18 May 2007 13:45:56 +0000 (13:45 +0000)]
improve break-by-coordinate
when setting a breakpoint by coordinate, if there are no spans
covering the specified coordinate, then we take the leftmost of the
spans to the right of the coordinate. This means that ':break c' will
work if c is not a function, because the first span will be on c's
right hand side.
Simon Marlow [Fri, 18 May 2007 13:35:43 +0000 (13:35 +0000)]
On Windows, don't try to use ANSI bold sequences.
Instead we identify the active expression with a line of ^^^^^^^
underneath it.
Simon Marlow [Thu, 17 May 2007 12:21:47 +0000 (12:21 +0000)]
rethrow exceptions in sandboxIO
This gives us a chance to catch asynchronous exceptions (e.g. ^C) and break.
Simon Marlow [Thu, 17 May 2007 12:21:02 +0000 (12:21 +0000)]
eliminate warnings
Simon Marlow [Thu, 17 May 2007 12:00:37 +0000 (12:00 +0000)]
xref to the docs for +RTS -xc
Simon Marlow [Fri, 18 May 2007 12:25:05 +0000 (12:25 +0000)]
FIX #767 (withMVar family have a bug)
We never want to raise a StackOverflow exception inside
Control.Exception.block, because the user has no reasonable way of
handling it, and it invalidates some useful guarantees.
Simon Marlow [Fri, 18 May 2007 12:23:33 +0000 (12:23 +0000)]
remove old comments and commented-out code
Simon Marlow [Fri, 18 May 2007 12:12:29 +0000 (12:12 +0000)]
Update the panic msg from #1257 to be an ordinary error, not a panic
We don't support arbitrary unboxed tuples in GHCi right now.
Simon Marlow [Fri, 18 May 2007 08:51:28 +0000 (08:51 +0000)]
autodetect BINDIST_DOC_WAYS again
Simon Marlow [Fri, 18 May 2007 11:53:30 +0000 (11:53 +0000)]
FIX #1052 (NCG doesn't realise shift instructions trash shifted input)
See comments with shift_code
Simon Marlow [Fri, 18 May 2007 08:58:11 +0000 (08:58 +0000)]
Add dist/ to $(PublishLocation)
The docs were going in the wrong place before:
..../dist/docs instead of ..../docs
Simon Marlow [Fri, 18 May 2007 08:46:56 +0000 (08:46 +0000)]
remove _split and autogen dirs for binary-dist
Simon Marlow [Thu, 17 May 2007 11:55:28 +0000 (11:55 +0000)]
fix ordering in :help
Simon Marlow [Thu, 17 May 2007 11:55:03 +0000 (11:55 +0000)]
complete documentation of the GHCi debugger
Simon Marlow [Thu, 17 May 2007 11:05:55 +0000 (11:05 +0000)]
add :cmd
:cmd <expr> executes <expr> :: IO String, takes the resulting string
and executes it as a sequence of commands. This is useful for doing
macro-ish things with ":set stop", for example.
Simon Marlow [Wed, 16 May 2007 14:14:11 +0000 (14:14 +0000)]
Rework the GHCi debugger docs
I've taken material from Bernie's docs on the wiki, and Pepe's docs in
this file, and added some more material of my own. Still to do:
document the individual commands.
Simon Marlow [Wed, 16 May 2007 13:35:13 +0000 (13:35 +0000)]
add a comment
Simon Marlow [Wed, 16 May 2007 13:35:03 +0000 (13:35 +0000)]
raise#: break *after* stripping the stack, not before
This means that thunks under evaluation will have been updated with
the exception when we come to inspect them in GHCi. Blackholes are
much less friendly.
Ian Lynagh [Wed, 16 May 2007 23:16:15 +0000 (23:16 +0000)]
Add a missing semicolon causing publish-binary-dist to fail
Ian Lynagh [Wed, 16 May 2007 12:16:07 +0000 (12:16 +0000)]
FIX BUILD Use the right find on Windows systems; fixes bindist creation
Simon Marlow [Wed, 16 May 2007 11:23:40 +0000 (11:23 +0000)]
later mingw runtimes have gettimeofday, it seems
Simon Marlow [Wed, 16 May 2007 10:06:22 +0000 (10:06 +0000)]
'let' expressions: fix scope of the binders (see test break014)
Simon Marlow [Wed, 16 May 2007 10:05:44 +0000 (10:05 +0000)]
Avoid some unnecessary ticks in debugging mode
Simon Marlow [Wed, 16 May 2007 10:04:45 +0000 (10:04 +0000)]
comment out unused definition
Simon Marlow [Wed, 16 May 2007 08:39:39 +0000 (08:39 +0000)]
FIX BUILD for way=u in RTS
Simon Marlow [Wed, 16 May 2007 08:07:49 +0000 (08:07 +0000)]
FIX BUILD with ghc-6.2.x
Ian Lynagh [Tue, 15 May 2007 13:47:34 +0000 (13:47 +0000)]
Add a missing backslash that was breaking building bindists
Simon Marlow [Tue, 15 May 2007 12:45:54 +0000 (12:45 +0000)]
GHCi debugger: new flag -fbreak-on-exception
When -fbreak-on-exception is set, an exception will cause GHCi to
suspend the current computation and return to the prompt, where the
history of the current evaluation can be inspected (if we are in
:trace). This isn't on by default, because the behaviour could be
confusing: for example, ^C will cause a breakpoint. It can be very
useful for finding the cause of a "head []" or a "fromJust Nothing",
though.
Simon Marlow [Tue, 15 May 2007 09:11:09 +0000 (09:11 +0000)]
small performance improvement: unbox some fields
Simon Marlow [Mon, 14 May 2007 15:30:40 +0000 (15:30 +0000)]
result_id should be a GlobalId
Ian Lynagh [Tue, 15 May 2007 12:25:45 +0000 (12:25 +0000)]
Fix invalid simplification I made while moving the libraries bindist stuff
Manuel M T Chakravarty [Tue, 15 May 2007 08:14:21 +0000 (08:14 +0000)]
Iface representation of synonym family instances
** This patch changes the interface file format. All libraries etc **
** need to be compiled from scratch. **
Manuel M T Chakravarty [Tue, 15 May 2007 01:20:36 +0000 (01:20 +0000)]
Added -ftype-families to the user's manual
- This adds the option to the flag reference and puts a stub pointing to the
Haskell wiki page about type families into the section about type extensions.
- Once, the implementation has stabilised, the material from the wiki page
will be integreated into the user's manual.
Ian Lynagh [Mon, 14 May 2007 17:28:59 +0000 (17:28 +0000)]
Add filepath modules to compat/
Manuel M T Chakravarty [Mon, 14 May 2007 11:53:34 +0000 (11:53 +0000)]
-findexed-types -> -ftype-families
. This change tracks our current terminology. It'll break all programs
using the old option, sorry. But this has only been an experimental
feature in the HEAD so far.
Simon Marlow [Mon, 14 May 2007 10:55:16 +0000 (10:55 +0000)]
remove accidentally-committed change
Simon Marlow [Mon, 14 May 2007 10:45:09 +0000 (10:45 +0000)]
fix for Vista workaround: "PATH" can be spelt "Path"
Manuel M T Chakravarty [Mon, 14 May 2007 06:52:34 +0000 (06:52 +0000)]
Revised signature of tcLookupFamInst and lookupFamInstEnv
- This changes the signature of FamInstEnv.lookupFamInstEnv and
FamInstEnv.lookupFamInstEnvUnify in a manner similar to SPJ's
previous patch for InstEnv.llokupInstEnv
- tcLookupFamInst now permits the lookup of instances that are more
general than the type instance requested.
Ian Lynagh [Sun, 13 May 2007 17:38:18 +0000 (17:38 +0000)]
Remove non-functional uninstall Makefile target
Ian Lynagh [Sun, 13 May 2007 16:34:51 +0000 (16:34 +0000)]
Move the libraries bindist generation code into libraries/Makefile
This should mean it works even when some libraries are unbuildable.
Ian Lynagh [Wed, 9 May 2007 14:25:57 +0000 (14:25 +0000)]
Cabal now uses filepath, so we need a bootstrapping filepath too
Ian Lynagh [Sat, 12 May 2007 12:37:36 +0000 (12:37 +0000)]
Tweak generation of generated files
Use "chmod a-w" rather than "chmod 444", and allow the command used to
be overridden.
simonpj@microsoft.com [Fri, 11 May 2007 15:55:07 +0000 (15:55 +0000)]
Correct an egregious typo in LiberateCase that emasculated it
Somehow in the patch
* Record-ise the liberate-case envt, in preparation for new stuff
I managed to make lookupLevelEnv do entirely the wrong thing.
I think it was just a typo. The result was that LiberateCase essentially
never did anything any more.
Easily fixed though!
Simon Marlow [Fri, 11 May 2007 14:53:52 +0000 (14:53 +0000)]
don't remove c++ files from Windows binary distribution
Simon Marlow [Fri, 11 May 2007 12:49:29 +0000 (12:49 +0000)]
Support for adding custom commands to an individual breakpoint
:set stop N <cmd>
runs <cmd> when breakpoint N is hit. Note that the command to run
might be a macro (defined with :def), and the macro can invoke
:continue, so it is now possible to do clever things like conditional
breakpoints, or ignoring the next K hits of a breakpoint.
Michael D. Adams [Fri, 11 May 2007 13:25:57 +0000 (13:25 +0000)]
Fixed copy-and-paste error in the machOps of compiler/cmm/CmmParse.y
Michael D. Adams [Fri, 11 May 2007 10:53:22 +0000 (10:53 +0000)]
Removed UNBOX_FIELD from HsVersions.h since it is not used anywhere.
Michael D. Adams [Thu, 10 May 2007 15:14:54 +0000 (15:14 +0000)]
Fixed a minor redundancy in the C-- lexer
Michael D. Adams [Thu, 10 May 2007 15:03:50 +0000 (15:03 +0000)]
Fixed the C-- lexer to comply with the standard on hex escape sequences.
The C-- standard [1] says in Section 3.3.5 "Character literals" that:
- the hex escape sequence "must contain at least one and
at most two hexdigits."
- the octal escape sequence "must contain at least one and
at most three octdigits."
[1] Norman Ramsey, Simon Peyton Jones, and Christian Lindig.
"The C-- Language Specication, Version 2.0 ( CVS Revision 1.128 )"
<http://www.cminusminus.org/extern/man2.pdf>
Michael D. Adams [Thu, 10 May 2007 14:59:35 +0000 (14:59 +0000)]
Documented the Unicode tricks that are being played in the lexers
Michael D. Adams [Fri, 4 May 2007 14:23:25 +0000 (14:23 +0000)]
Fixed apparent typo in STRICT1(f) of HsVersions.h
Manuel M T Chakravarty [Fri, 11 May 2007 11:30:57 +0000 (11:30 +0000)]
Remove the distinction between data and newtype families
- This patch removes "newtype family" declarations.
- "newtype instance" declarations can now be instances of data families
- This also fixes bug #1331
** This patch changes the interface format. All libraries and all of **
** Stage 2 & 3 need to be re-compiled from scratch. **
Simon Marlow [Fri, 11 May 2007 07:29:44 +0000 (07:29 +0000)]
FIX BUILD: revert accidentally-committed patch
Simon Marlow [Fri, 11 May 2007 10:49:26 +0000 (10:49 +0000)]
Store a SrcSpan instead of a SrcLoc inside a Name
This has been a long-standing ToDo.