simonmar [Wed, 18 Jan 2006 11:00:35 +0000 (11:00 +0000)]
[project @ 2006-01-18 11:00:35 by simonmar]
Remove dead code
simonmar [Wed, 18 Jan 2006 10:59:54 +0000 (10:59 +0000)]
[project @ 2006-01-18 10:59:54 by simonmar]
Remove dead panic
simonmar [Wed, 18 Jan 2006 10:58:15 +0000 (10:58 +0000)]
[project @ 2006-01-18 10:58:15 by simonmar]
Remove dead error
(darcs patch from Ian Lynagh)
simonmar [Wed, 18 Jan 2006 10:49:32 +0000 (10:49 +0000)]
[project @ 2006-01-18 10:49:32 by simonmar]
Implement :main (see ticket #662)
Patch from Volker Stolz, minor mods by me
When matching commands, we now look for (a) an exact match, and (b)
the first prefix match we find in the list. This is so that :module
can still be abbreviated by :m, to avoid surprise.
Docs still to do.
simonmar [Wed, 18 Jan 2006 10:40:46 +0000 (10:40 +0000)]
[project @ 2006-01-18 10:40:46 by simonmar]
add a couple of missing symbols
simonmar [Wed, 18 Jan 2006 10:31:50 +0000 (10:31 +0000)]
[project @ 2006-01-18 10:31:50 by simonmar]
- fix a mixup in Capability.c regarding signals: signals_pending() is not
used in THREADED_RTS
- some cleanups and warning removal while I'm here
simonmar [Wed, 18 Jan 2006 10:06:36 +0000 (10:06 +0000)]
[project @ 2006-01-18 10:06:36 by simonmar]
Fix build on 5.04.x again
simonmar [Tue, 17 Jan 2006 16:13:18 +0000 (16:13 +0000)]
[project @ 2006-01-17 16:13:18 by simonmar]
Improve the GC behaviour of IORefs (see Ticket #650).
This is a small change to the way IORefs interact with the GC, which
should improve GC performance for programs with plenty of IORefs.
Previously we had a single closure type for mutable variables,
MUT_VAR. Mutable variables were *always* on the mutable list in older
generations, and always traversed on every GC.
Now, we have two closure types: MUT_VAR_CLEAN and MUT_VAR_DIRTY. The
latter is on the mutable list, but the former is not. (NB. this
differs from MUT_ARR_PTRS_CLEAN and MUT_ARR_PTRS_DIRTY, both of which
are on the mutable list). writeMutVar# now implements a write
barrier, by calling dirty_MUT_VAR() in the runtime, that does the
necessary modification of MUT_VAR_CLEAN into MUT_VAR_DIRY, and adding
to the mutable list if necessary.
This results in some pretty dramatic speedups for GHC itself. I've
just measureed a 30% overall speedup compiling a 31-module program
(anna) with the default heap settings :-D
simonmar [Tue, 17 Jan 2006 16:03:47 +0000 (16:03 +0000)]
[project @ 2006-01-17 16:03:47 by simonmar]
Improve the GC behaviour of IOArrays/STArrays
See Ticket #650
This is a small change to the way mutable arrays interact with the GC,
that can have a dramatic effect on performance, and make tricks with
unsafeThaw/unsafeFreeze redundant. Data.HashTable should be faster
now (I haven't measured it yet).
We now have two mutable array closure types, MUT_ARR_PTRS_CLEAN and
MUT_ARR_PTRS_DIRTY. Both are on the mutable list if the array is in
an old generation. writeArray# sets the type to MUT_ARR_PTRS_DIRTY.
The garbage collector can set the type to MUT_ARR_PTRS_CLEAN if it
finds that no element of the array points into a younger generation
(discovering this required a small addition to evacuate(), but rough
tests indicate that it doesn't measurably affect performance).
NOTE: none of this affects unboxed arrays (IOUArray/STUArray), only
boxed arrays (IOArray/STArray).
We could go further and extend the DIRTY bit to be per-block rather
than for the whole array, but for now this is an easy improvement.
simonmar [Tue, 17 Jan 2006 13:50:06 +0000 (13:50 +0000)]
[project @ 2006-01-17 13:50:06 by simonmar]
statDescribeGens: count large blocks in the "live" figure
simonmar [Tue, 17 Jan 2006 13:28:01 +0000 (13:28 +0000)]
[project @ 2006-01-17 13:28:01 by simonmar]
take into account unscavenged copied words in +RTS -t stats.
wolfgang [Tue, 17 Jan 2006 02:13:16 +0000 (02:13 +0000)]
[project @ 2006-01-17 02:13:16 by wolfgang]
Linux/PPC64: remove some dead code that accidentally slipped in.
MERGE TO STABLE
wolfgang [Tue, 17 Jan 2006 01:51:56 +0000 (01:51 +0000)]
[project @ 2006-01-17 01:51:56 by wolfgang]
Darwin/PPC:
Make StgRunIsImplementedInAssembler non-static; gcc has recently acquired
a habit of dead-stripping it.
MERGE TO STABLE
simonmar [Mon, 16 Jan 2006 16:38:25 +0000 (16:38 +0000)]
[project @ 2006-01-16 16:38:24 by simonmar]
Default signal handlers weren't being installed; amazing that this has
been broken ever since I rearranged the signal handling code.
Simon Marlow [Fri, 13 Jan 2006 16:32:07 +0000 (16:32 +0000)]
improvements to darcs-all
- get from the same repo as the main GHC repo, if that was a local filesystem
- allow darcs whatsnew
- use --repodir if possible
Simon Marlow [Fri, 13 Jan 2006 15:05:05 +0000 (15:05 +0000)]
Add infrastructure for multiple library packages
The ./darcs-all script at the top level is an easier way to do darcs
pull/push/get on the whole tree (it should probably allow more
commands; I'll fix that later).
libraries/default-packages is a list of darcs repositories with which
to populate the libraries tree.
Simon Marlow [Fri, 13 Jan 2006 13:19:49 +0000 (13:19 +0000)]
Add a skeleton libraries directory
Adding files from libraries that aren't in the other
packages sub-repos. I haven't bothered to try to keep
history for these files, for history go back to the CVS
repo.
simonmar [Thu, 12 Jan 2006 16:16:28 +0000 (16:16 +0000)]
[project @ 2006-01-12 16:16:28 by simonmar]
GHC.runStmt: run the statement in a new thread to insulate the
environment from bad things that the user code might do, such as fork
a thread to send an exception back at a later time. In order to do
this, we had to keep track of which thread the ^C exception should go
to in a global variable.
Also, bullet-proof the top-level exception handler in GHCi a bit;
there was a small window where an exception could get through, so if
you lean on ^C for a while then press enter you could cause GHCi to
exit.
simonmar [Thu, 12 Jan 2006 14:42:25 +0000 (14:42 +0000)]
[project @ 2006-01-12 14:42:25 by simonmar]
+RTS -S: replace "collected" with "copied", which is more useful.
+RTS -Dg: print size of mutable list, and breakdown by type of closure
(MUT_VAR, MUT_ARR, others).
simonmar [Thu, 12 Jan 2006 13:49:24 +0000 (13:49 +0000)]
[project @ 2006-01-12 13:49:24 by simonmar]
fix calculation of copied bytes, we had a words/bytes mismatch when
adding the size of the mutable list
simonmar [Thu, 12 Jan 2006 12:41:03 +0000 (12:41 +0000)]
[project @ 2006-01-12 12:41:03 by simonmar]
time_str:
- use ctime_r if available
- avoid use of strcpy on overlapping regions
Ticket #480 (patch modified by me)
simonmar [Thu, 12 Jan 2006 12:40:01 +0000 (12:40 +0000)]
[project @ 2006-01-12 12:40:01 by simonmar]
check for ctime_r
simonmar [Thu, 12 Jan 2006 10:04:36 +0000 (10:04 +0000)]
[project @ 2006-01-12 10:04:36 by simonmar]
Document that source files are ASCII or UTF-8
simonmar [Thu, 12 Jan 2006 09:33:16 +0000 (09:33 +0000)]
[project @ 2006-01-12 09:33:16 by simonmar]
put unicode keywords under -fglasgow-exts, they aren't Hasell98
simonmar [Wed, 11 Jan 2006 16:58:53 +0000 (16:58 +0000)]
[project @ 2006-01-11 16:58:53 by simonmar]
MAYBE_GC: we should check alloc_blocks in addition to CurrentNursery,
since some allocateLocal calls don't allocate from the nursery.
simonmar [Wed, 11 Jan 2006 13:12:09 +0000 (13:12 +0000)]
[project @ 2006-01-11 13:12:09 by simonmar]
fix string desugaring: we can only use the ASCII unpackCString# if all
the chars are <= 0x7F, not <= 0xFF.
(fixes recent breakage in nofib/real/compress2)
simonmar [Wed, 11 Jan 2006 12:20:30 +0000 (12:20 +0000)]
[project @ 2006-01-11 12:20:30 by simonmar]
Add -threaded when building stage2+ again
simonmar [Wed, 11 Jan 2006 12:17:41 +0000 (12:17 +0000)]
[project @ 2006-01-11 12:17:41 by simonmar]
understand Unicode lambda as a synonym for \
simonmar [Tue, 10 Jan 2006 14:47:23 +0000 (14:47 +0000)]
[project @ 2006-01-10 14:47:23 by simonmar]
Fix a comment
simonmar [Tue, 10 Jan 2006 14:46:50 +0000 (14:46 +0000)]
[project @ 2006-01-10 14:46:50 by simonmar]
Char primops: the Char# rep is wordRep, not I32 (fixed -dcmm-lint
problems on x86_64)
simonmar [Tue, 10 Jan 2006 14:39:38 +0000 (14:39 +0000)]
[project @ 2006-01-10 14:39:38 by simonmar]
prevChar: don't back up over decoding errors
simonmar [Tue, 10 Jan 2006 14:39:01 +0000 (14:39 +0000)]
[project @ 2006-01-10 14:39:01 by simonmar]
Add a TODO
simonmar [Tue, 10 Jan 2006 14:37:53 +0000 (14:37 +0000)]
[project @ 2006-01-10 14:37:53 by simonmar]
reportLexError: don't back up one character, the buffer returned by
Alex is the one *before* the erroneous lexeme started.
simonmar [Tue, 10 Jan 2006 13:35:04 +0000 (13:35 +0000)]
[project @ 2006-01-10 13:35:04 by simonmar]
Z-encode cost centre symbols when printing them out.
simonmar [Tue, 10 Jan 2006 09:47:51 +0000 (09:47 +0000)]
[project @ 2006-01-10 09:47:51 by simonmar]
Fix compilation with GHC 6.2.x, hopefully
simonmar [Tue, 10 Jan 2006 09:05:18 +0000 (09:05 +0000)]
[project @ 2006-01-10 09:05:18 by simonmar]
add file argument to docs for +RTS -t
simonmar [Mon, 9 Jan 2006 14:38:01 +0000 (14:38 +0000)]
[project @ 2006-01-09 14:38:01 by simonmar]
Initialise part of a structure to NULL to avoid a gcc warning
I haven't checked the code on this one to be sure this isn't just a bug.
simonmar [Mon, 9 Jan 2006 14:37:07 +0000 (14:37 +0000)]
[project @ 2006-01-09 14:37:07 by simonmar]
Put entry_is_read_only and tvar_is_locked
simonmar [Mon, 9 Jan 2006 14:35:53 +0000 (14:35 +0000)]
[project @ 2006-01-09 14:35:53 by simonmar]
Avoid "dereferencing type-punned pointer will break strict-aliasing rules" warning
simonmar [Mon, 9 Jan 2006 14:35:31 +0000 (14:35 +0000)]
[project @ 2006-01-09 14:35:31 by simonmar]
Avoid "dereferencing type-punned pointer will break strict-aliasing rules" warnings
simonmar [Mon, 9 Jan 2006 14:33:50 +0000 (14:33 +0000)]
[project @ 2006-01-09 14:33:50 by simonmar]
Remove duplicate imports
simonmar [Mon, 9 Jan 2006 14:33:21 +0000 (14:33 +0000)]
[project @ 2006-01-09 14:33:21 by simonmar]
Remove dead panic
simonmar [Mon, 9 Jan 2006 14:32:57 +0000 (14:32 +0000)]
[project @ 2006-01-09 14:32:57 by simonmar]
Put a dummy record initialisation in to fix a warning
simonmar [Mon, 9 Jan 2006 14:32:31 +0000 (14:32 +0000)]
[project @ 2006-01-09 14:32:31 by simonmar]
Use correct format specifier for a size_t value
simonmar [Mon, 9 Jan 2006 14:32:03 +0000 (14:32 +0000)]
[project @ 2006-01-09 14:32:03 by simonmar]
Include string.h in unlit, fixing gcc "implicit declaration" warnings
simonmar [Mon, 9 Jan 2006 14:31:37 +0000 (14:31 +0000)]
[project @ 2006-01-09 14:31:37 by simonmar]
Include stdlib in lndir, fixing gcc "implicit declaration" warnings
simonmar [Mon, 9 Jan 2006 14:25:44 +0000 (14:25 +0000)]
[project @ 2006-01-09 14:25:44 by simonmar]
simonmar [Mon, 9 Jan 2006 13:29:02 +0000 (13:29 +0000)]
[project @ 2006-01-09 13:29:02 by simonmar]
Avoid desugaring bug in HEAD (see test ds057).
simonmar [Mon, 9 Jan 2006 13:25:50 +0000 (13:25 +0000)]
[project @ 2006-01-09 13:25:50 by simonmar]
Fix up to compile with GHC 5.04.x again.
Also includes a fix for a memory error I discovered along the way:
should fix the "scavenge_one" crash in the stage2 build of recent
HEADs.
simonmar [Mon, 9 Jan 2006 10:31:14 +0000 (10:31 +0000)]
[project @ 2006-01-09 10:31:14 by simonmar]
ord# and chr# should be no-ops, not conversions between wordRep and I32.
simonmar [Fri, 6 Jan 2006 16:30:19 +0000 (16:30 +0000)]
[project @ 2006-01-06 16:30:17 by simonmar]
Add support for UTF-8 source files
GHC finally has support for full Unicode in source files. Source
files are now assumed to be UTF-8 encoded, and the full range of
Unicode characters can be used, with classifications recognised using
the implementation from Data.Char. This incedentally means that only
the stage2 compiler will recognise Unicode in source files, because I
was too lazy to port the unicode classifier code into libcompat.
Additionally, the following synonyms for keywords are now recognised:
forall symbol (U+2200) forall
right arrow (U+2192) ->
left arrow (U+2190) <-
horizontal ellipsis (U+22EF) ..
there are probably more things we could add here.
This will break some source files if Latin-1 characters are being used.
In most cases this should result in a UTF-8 decoding error. Later on
if we want to support more encodings (perhaps with a pragma to specify
the encoding), I plan to do it by recoding into UTF-8 before parsing.
Internally, there were some pretty big changes:
- FastStrings are now stored in UTF-8
- Z-encoding has been moved right to the back end. Previously we
used to Z-encode every identifier on the way in for simplicity,
and only decode when we needed to show something to the user.
Instead, we now keep every string in its UTF-8 encoding, and
Z-encode right before printing it out. To avoid Z-encoding the
same string multiple times, the Z-encoding is cached inside the
FastString the first time it is requested.
This speeds up the compiler - I've measured some definite
improvement in parsing at least, and I expect compilations overall
to be faster too. It also cleans up a lot of cruft from the
OccName interface. Z-encoding is nicely hidden inside the
Outputable instance for Names & OccNames now.
- StringBuffers are UTF-8 too, and are now represented as
ForeignPtrs.
- I've put together some test cases, not by any means exhaustive,
but there are some interesting UTF-8 decoding error cases that
aren't obvious. Also, take a look at unicode001.hs for a demo.
simonmar [Fri, 6 Jan 2006 11:04:07 +0000 (11:04 +0000)]
[project @ 2006-01-06 11:04:07 by simonmar]
Document -Rghc-timing
simonpj [Thu, 5 Jan 2006 13:10:55 +0000 (13:10 +0000)]
[project @ 2006-01-05 13:10:55 by simonpj]
MERGE TO STABLE
This commit fixes a nasty problem discovered by Volker Stolz.
The problem is described in Note [Multiple instantiation] in
TcExpr, which is reproduced below.
(Core Lint identifies the problem, incidentally.)
tc200 is a test case.
Note [Multiple instantiation]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
We are careful never to make a MethodInst that has, as its meth_id, another MethodInst.
For example, consider
f :: forall a. Eq a => forall b. Ord b => a -> b
At a call to f, at say [Int, Bool], it's tempting to translate the call to
f_m1
where
f_m1 :: forall b. Ord b => Int -> b
f_m1 = f Int dEqInt
f_m2 :: Int -> Bool
f_m2 = f_m1 Bool dOrdBool
But notice that f_m2 has f_m1 as its meth_id. Now the danger is that if we do
a tcSimplCheck with a Given f_mx :: f Int dEqInt, we may make a binding
f_m1 = f_mx
But it's entirely possible that f_m2 will continue to float out, because it
mentions no type variables. Result, f_m1 isn't in scope.
Here's a concrete example that does this (test tc200):
class C a where
f :: Eq b => b -> a -> Int
baz :: Eq a => Int -> a -> Int
instance C Int where
baz = f
Current solution: only do the "method sharing" thing for the first type/dict
application, not for the iterated ones. A horribly subtle point.
simonpj [Thu, 5 Jan 2006 10:02:58 +0000 (10:02 +0000)]
[project @ 2006-01-05 10:02:58 by simonpj]
'newtype' declarations are now parsed exactly like data type declarations,
so that you can declare newtypes using GADT syntax. But that means we
must check all the newtype restrictions separately, and I mised one.
This commit checks that there is no existential context on the newtype.
Test is tcfail156
simonmar [Thu, 5 Jan 2006 09:42:54 +0000 (09:42 +0000)]
[project @ 2006-01-05 09:42:54 by simonmar]
This file is not quite POSIX compliant; hopefully fix build on MacOS X
(Tiger)
simonmar [Wed, 4 Jan 2006 12:51:59 +0000 (12:51 +0000)]
[project @ 2006-01-04 12:51:59 by simonmar]
remove duplicate definition
simonmar [Wed, 4 Jan 2006 12:49:38 +0000 (12:49 +0000)]
[project @ 2006-01-04 12:49:38 by simonmar]
make 3.79.1 is ok
simonpj [Wed, 4 Jan 2006 11:52:54 +0000 (11:52 +0000)]
[project @ 2006-01-04 11:52:54 by simonpj]
Resolve ticket 644; crash when data con returns wrong type
simonmar [Tue, 3 Jan 2006 16:15:37 +0000 (16:15 +0000)]
[project @ 2006-01-03 16:15:37 by simonmar]
setContextAfterLoad: try to load a target if possible, otherwise load
the topmost module in the graph. Previously we were loading the first
module in the list, which happened to be right a lot of the time, but
not always.
Fixes ticket #642
simonmar [Tue, 3 Jan 2006 16:14:20 +0000 (16:14 +0000)]
[project @ 2006-01-03 16:14:20 by simonmar]
export ModLocation(..)
simonmar [Tue, 3 Jan 2006 12:57:10 +0000 (12:57 +0000)]
[project @ 2006-01-03 12:57:10 by simonmar]
sanity bugfix: use TSO_OFFSET_stack instead of OFFSET_stack
simonmar [Tue, 3 Jan 2006 12:56:10 +0000 (12:56 +0000)]
[project @ 2006-01-03 12:56:10 by simonmar]
two fixes for the case when a (synchronous) exception is propagated to
the top of a thread's stack, i.e. it is unhandled.
1. store the exception in the right place (we were using the
OFFSET_StgTSO_stack macro and not accounting for the TSO's
header size)
2. put an stg_enter_info on the stack so that the GC can understand
this thread's stack.
simonmar [Tue, 3 Jan 2006 12:53:40 +0000 (12:53 +0000)]
[project @ 2006-01-03 12:53:40 by simonmar]
for TSO fields, define a Cmm macro TSO_OFFSET_xxx to get the actual
offset including the header and variable parts (we were misusing the
headerless OFFSET_xxx macros in a couple of places).
simonmar [Tue, 3 Jan 2006 12:16:26 +0000 (12:16 +0000)]
[project @ 2006-01-03 12:16:26 by simonmar]
wibble in panic message
simonmar [Tue, 3 Jan 2006 11:06:45 +0000 (11:06 +0000)]
[project @ 2006-01-03 11:06:45 by simonmar]
emit an error message if GNU make 3.7x is found (3.80 is required).
simonmar [Tue, 3 Jan 2006 11:01:09 +0000 (11:01 +0000)]
[project @ 2006-01-03 11:01:09 by simonmar]
mention that GNU make 3.80 is required.
simonpj [Thu, 29 Dec 2005 12:06:13 +0000 (12:06 +0000)]
[project @ 2005-12-29 12:06:13 by simonpj]
Trim imports
simonpj [Thu, 29 Dec 2005 09:19:24 +0000 (09:19 +0000)]
[project @ 2005-12-29 09:19:24 by simonpj]
Document SPECIALISE INLNE
simonpj [Wed, 21 Dec 2005 11:43:29 +0000 (11:43 +0000)]
[project @ 2005-12-21 11:43:29 by simonpj]
Missing Show instance for FreeRegs on PowerPC
simonpj [Mon, 19 Dec 2005 13:08:19 +0000 (13:08 +0000)]
[project @ 2005-12-19 13:08:19 by simonpj]
Wibble to printing FunTyCon in GHCi that makes :b GHC.Base work
simonpj [Mon, 19 Dec 2005 11:00:59 +0000 (11:00 +0000)]
[project @ 2005-12-19 11:00:59 by simonpj]
Marginally improve the error message on a failure in DsMeta
simonpj [Mon, 19 Dec 2005 11:00:40 +0000 (11:00 +0000)]
[project @ 2005-12-19 11:00:40 by simonpj]
Tiny fix to patterns with type sigs
simonpj [Mon, 19 Dec 2005 09:48:14 +0000 (09:48 +0000)]
[project @ 2005-12-19 09:48:14 by simonpj]
Allow trailing parens in GADT signatures
simonpj [Mon, 19 Dec 2005 09:32:33 +0000 (09:32 +0000)]
[project @ 2005-12-19 09:32:33 by simonpj]
** Wibble to Friday's commit (fixes HEAD build) **
-----------------------------------------
Make deriving work for infix constructors
-----------------------------------------
Merge to stable branch
Back quotes were not being done correctly in deriving Read and Show.
Now they are. I think.
Test is drvrun018
simonpj [Fri, 16 Dec 2005 16:04:03 +0000 (16:04 +0000)]
[project @ 2005-12-16 16:04:03 by simonpj]
-----------------------------------------
Make deriving work for infix constructors
-----------------------------------------
Merge to stable branch
Back quotes were not being done correctly in deriving Read and Show.
Now they are. I think.
Test is drvrun018
simonpj [Fri, 16 Dec 2005 15:17:29 +0000 (15:17 +0000)]
[project @ 2005-12-16 15:17:29 by simonpj]
Document that type variables in instance context must be distinct; merge to stable
simonpj [Fri, 16 Dec 2005 15:15:08 +0000 (15:15 +0000)]
[project @ 2005-12-16 15:15:08 by simonpj]
-----------------------------------------
Test for repated type variables in an instance decl context;
this should require -fallow-undecidable-instances'
-----------------------------------------
Merge to stable branch
simonmar [Fri, 16 Dec 2005 11:41:51 +0000 (11:41 +0000)]
[project @ 2005-12-16 11:41:51 by simonmar]
Avoid building the GHCi version of this lib
simonmar [Fri, 16 Dec 2005 11:26:01 +0000 (11:26 +0000)]
[project @ 2005-12-16 11:26:01 by simonmar]
Use standard calloc rather than rolling our own.
As a small bonus, the standard libc version is more effecient about zeroing
the memory.
From: Duncan Coutts <duncan.coutts@worc.ox.ac.uk>
desrt [Thu, 15 Dec 2005 23:32:29 +0000 (23:32 +0000)]
[project @ 2005-12-15 23:32:29 by desrt]
(( PLEASE MERGE TO STABLE ))
Linker.c: linux/ppc: We call mmap() to allocate additional pages to
create jump islands. In the case where no
additional memory was needed the mmap call was
being made with a size of 0 which would fail.
The call is now conditionalised and documentation
has been added to the code. Closes trac #439.
simonmar [Thu, 15 Dec 2005 10:36:03 +0000 (10:36 +0000)]
[project @ 2005-12-15 10:36:03 by simonmar]
ignore _darcs
simonmar [Thu, 15 Dec 2005 10:05:54 +0000 (10:05 +0000)]
[project @ 2005-12-15 10:05:54 by simonmar]
fix missing symbol
simonmar [Tue, 13 Dec 2005 15:57:50 +0000 (15:57 +0000)]
[project @ 2005-12-13 15:57:49 by simonmar]
Raise the (new) exception NestedAtomically when atomically is nested
(using unsafePerformIO). This is a small improvement over crashing.
simonmar [Tue, 13 Dec 2005 12:52:25 +0000 (12:52 +0000)]
[project @ 2005-12-13 12:52:25 by simonmar]
fix FAQ links
simonmar [Tue, 13 Dec 2005 12:45:08 +0000 (12:45 +0000)]
[project @ 2005-12-13 12:45:08 by simonmar]
the FAQ is now in the Wiki
simonmar [Tue, 13 Dec 2005 12:42:51 +0000 (12:42 +0000)]
[project @ 2005-12-13 12:42:51 by simonmar]
while I'm here, bring various other bits of this page up to date
simonmar [Tue, 13 Dec 2005 12:26:06 +0000 (12:26 +0000)]
[project @ 2005-12-13 12:26:06 by simonmar]
Update bug reporting instructions to point to the new bug tracker
simonmar [Tue, 13 Dec 2005 12:18:51 +0000 (12:18 +0000)]
[project @ 2005-12-13 12:18:51 by simonmar]
Update the bug reporting instructions, I've now installed a redirect from
http://www.haskel.org/ghc/reportabug
to the bug reporting instructions, just in case we want to move that
page in the future.
simonmar [Tue, 13 Dec 2005 12:09:42 +0000 (12:09 +0000)]
[project @ 2005-12-13 12:09:42 by simonmar]
In the panic message, point to the bug reporting page in the User's
Guide rather than directly to the bug reporting page. That way people
will see the bug reporting instructions as well as the direct link
(which has now changed).
simonmar [Tue, 13 Dec 2005 11:30:33 +0000 (11:30 +0000)]
[project @ 2005-12-13 11:30:33 by simonmar]
undo accidental commit of snapshot version number
simonmar [Mon, 12 Dec 2005 15:06:11 +0000 (15:06 +0000)]
[project @ 2005-12-12 15:06:11 by simonmar]
Add -threaded for stage[23]
simonmar [Mon, 12 Dec 2005 14:22:30 +0000 (14:22 +0000)]
[project @ 2005-12-12 14:22:30 by simonmar]
Prevent --: from being interpreted as a comment
simonmar [Fri, 9 Dec 2005 11:35:44 +0000 (11:35 +0000)]
[project @ 2005-12-09 11:35:44 by simonmar]
Make the front panel compile again, submitted by Duncan Coutts
<duncan.coutts@worc.ox.ac.uk>. From his email:
Attached is a patch to port the GHC RTS font panel to Gtk+ 2.x rather
than the obsolete Gtk+ 1.2.
There were basically two changes needed. Change the configure check to
look for the pkg-config utility rather than the old gtk-config. At it's
just checking for Gtk+ 2.0 or later. It may be that the new code
actually needs a slightly later version than that. I'm not quite sure.
The other change was to convert the ghc-fontpanel.glade file to the
glade-2 format using the libglade-convert script and then to re-generate
the C code for constructing the GUI, that is the Vis*.c Vis*.h files in
ghc/rts.
The front panel has been bit-rotting for quite some time so it has not
kept up with changes in the rts structures. So I had to comment out
references to 3 bits that no longer exist. I've left FIXMEs in the code
at the appropriate places so that someone wiser than me can make the
appropriate changes.
So the thing does now build though I have no doubt that it will not run,
or at least will not do the right thing because it has not yet been
updated to the current state of the rts. However hopefully now that it
is at least buildable with a modern Gtk+ version someone else might be
able to fix it up.
This also relates to trac ticket #599:
http://cvs.haskell.org/trac/ghc/ticket/599
simonmar [Fri, 2 Dec 2005 15:16:08 +0000 (15:16 +0000)]
[project @ 2005-12-02 15:16:08 by simonmar]
remove one mention of hslibs
simonmar [Fri, 2 Dec 2005 14:22:06 +0000 (14:22 +0000)]
[project @ 2005-12-02 14:22:06 by simonmar]
- remove hslibs link
- add Building Guide link
- remove the word "hierarchical" from "hierarchical libraries"
simonmar [Fri, 2 Dec 2005 14:09:21 +0000 (14:09 +0000)]
[project @ 2005-12-02 14:09:21 by simonmar]
revert rev. 1.22 again, just in case this is the cause of the
segfaults reported on OpenBSD and SuSE.
simonmar [Fri, 2 Dec 2005 12:45:16 +0000 (12:45 +0000)]
[project @ 2005-12-02 12:45:16 by simonmar]
Fix Windows build
Patch submitted by: Esa Ilari Vuokko <eivuokko at gmail.com>
simonmar [Wed, 30 Nov 2005 16:56:51 +0000 (16:56 +0000)]
[project @ 2005-11-30 16:56:51 by simonmar]
fix bug in the case of an uncaught exception
simonmar [Wed, 30 Nov 2005 15:58:47 +0000 (15:58 +0000)]
[project @ 2005-11-30 15:58:47 by simonmar]
check for overrun of the fd_set, some OSs give you more descriptors
than FD_SETSIZE
simonpj [Wed, 30 Nov 2005 14:20:06 +0000 (14:20 +0000)]
[project @ 2005-11-30 14:20:06 by simonpj]
-----------------------------------------
Fix 'mkName' operator in Template Haskell
so that it handles built-in syntax
-----------------------------------------
Merge to stable branch
The 'mkName' function in Template Haskell wasn't dealing correctly with
built-in syntax. The parser generates Exact RdrNames for built-in syntax
operators, such as ':' and '[]'; and hence so should Convert.
At the same time I'm now generating a better error message in TH when
you use a constructor as a variable or vice versa.