- 20 Sep, 2003 2 commits
-
-
ross authored
Re-arrange the interface to TcMatches to allow typechecking of case commands (part of arrow notation): * replace the export of the internal tcGRHSs with a more specific tcGRHSsPat for checking PatMonoBinds. * generalize match contexts in the same way as stmt contexts, to include a typechecker for the bodies of alts. This should probably be reviewed, but I hope it can make it into STABLE after a while.
-
ross authored
fixes to desugaring of arrow notation: * fix free variable calculation for if's * various fixes for case please merge to STABLE
-
- 19 Sep, 2003 4 commits
-
-
wolfgang authored
POSIX threads should be pthread_detach-ed after they are created. Otherwise they'll stick around waiting for a pthread_join. (This wasn't really a problem because our worker threads never exit anyway).
-
simonmar authored
The whole family of index<blah>OffForeignPtr# primops has been broken for some time now. This commit fixes them. I'm tempted to get rid of them altogether, since arguably the withForeignPtr interface subsumes all this. But if you want to index off a ForeignPtr in pure code, you have to use unsafePerformIO, which is hard to optimise away (GHC doesn't do it), so these primops still have their uses.
-
simonmar authored
Be a bit more honest about how easy it is to port the linker.
-
simonmar authored
Add irix_TARGET_OS support.
-
- 17 Sep, 2003 3 commits
- 16 Sep, 2003 4 commits
-
-
panne authored
Make "one of the most hammered bits in the whole compiler" (quotation from the source code :-) compile without _ccall_
-
ross authored
CasmTarget is gone
-
simonmar authored
-funfold-casms-in-hi-file is no more.
-
simonmar authored
Legacy Removal ~~~~~~~~~~~~~~ The following features have been consigned to the bit bucket: _ccall_ _casm_ ``....'' (lit-lits) the CCallable class the CReturnable class
-
- 15 Sep, 2003 2 commits
-
-
sof authored
factor out code that handles depositing of work items on the thread pool's request queue. - when it looks as if a new worker thread needs to be created, give up our quantum first in the hope that this might at the last minute turn up more idle worker threads. - add comment re: trimming pool size. Merged to STABLE eventually; I may continue tinkering with this code some more over the next day or two.
-
simonmar authored
Update comment for GhcUnregisterised.
-
- 14 Sep, 2003 3 commits
- 13 Sep, 2003 1 commit
-
-
matthewc authored
Update IA64 status (supported except no NCG)
-
- 12 Sep, 2003 5 commits
-
-
sof authored
delayzh_fast: comment only
-
sof authored
- Sleep()'s resolution is millisecs, not microsecs. - adopt a more agressive policy for augmenting the thread pool to handle incoming requests (see code comments for details.) The previous policy ran the risk of starvation in rare (and hard to reproduce) cases, as spotted after having chased a bug for two days. Merge to STABLE
-
sof authored
- awaitRequests() comments - code reformatting Merge to STABLE
-
sof authored
comment wibble
-
simonmar authored
Ignore lines containing #pragma .* generated by GCC 3.3's CPP on MacOS X, apparently.
-
- 11 Sep, 2003 14 commits
-
-
simonpj authored
Make sure that exprIsTrivial responds "False" to (scc "foo" x) We do not treat (_scc_ "foo" x) as trivial, because a) it really generates code, (and a heap object when it's a function arg) to capture the cost centre b) see the note [SCC-and-exprIsTrivial] in Simplify.simplLazyBind
-
wolfgang authored
The FP_CHECK_CONSTS test for the errno constants requires stdio.h to be included, at least on Mac OS X. MERGE TO STABLE.
-
wolfgang authored
Mac OS X: Bypass the dlfcn compatibility layer in lookupSymbol, use Apple's NSModule functions directly instead. This protects us from differences between different implementations of the dlcompat library (regarding treatment of prefixed underscores). Note that the compatibility layer is still used in addDLL (it's needed by the POSIX library anyway). Also, add a little more sanity checking (checkProddableBlock) to the Mach-O linker itself. MERGE TO STABLE
-
simonmar authored
Document -fth and -fimplicit-params
-
simonpj authored
-------------------------- Allow recursive dictionaries -------------------------- In response to various bleatings, here's a lovely fix that involved simply inverting two lines of code, to allow recursive dictionaries. Here's the comment. (typecheck/should_run/tc030 tests it) Note [RECURSIVE DICTIONARIES] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Consider data D r = ZeroD | SuccD (r (D r)); instance (Eq (r (D r))) => Eq (D r) where ZeroD == ZeroD = True (SuccD a) == (SuccD b) = a == b _ == _ = False; equalDC :: D [] -> D [] -> Bool; equalDC = (==); We need to prove (Eq (D [])). Here's how we go: d1 : Eq (D []) by instance decl, holds if d2 : Eq [D []] where d1 = dfEqD d2 by instance decl of Eq, holds if d3 : D [] where d2 = dfEqList d2 d1 = dfEqD d2 But now we can "tie the knot" to give d3 = d1 d2 = dfEqList d2 d1 = dfEqD d2 and it'll even run! The trick is to put the thing we are trying to prove (in this case Eq (D []) into the database before trying to prove its contributing clauses.
-
simonpj authored
Add comments, change a WARN to an ASSERT
-
simonpj authored
Undo bogus claim that _scc_ "foo" x == x This just isn't right in general, for example when x is a top-level function.
-
simonmar authored
HEAD is now 6.3
-
simonmar authored
When setting TARGETPLATFORM, we should also set foo_TARGET_ARCH, bar_TARGET_OS, etc.
-
simonmar authored
Add missing 'cd T' to the porting instructions.
-
simonmar authored
The reify keywords should be valid when template haskell is turned on.
-
sof authored
hGetStringBuffer: open file in binary mode
-
sof authored
Fix race condition re: WorkItems and SubmitWork(). It is unsafe to access a WorkItem after it has been queued, since a worker thread may have already serviced (and freed) it. Hence, return request IDs without looking at the WorkItem. If desired, this one could be merged to STABLE.
-
sof authored
awaitRequests(): canonicalize removal of thread from blocked_queue
-
- 10 Sep, 2003 2 commits
-
-
simonmar authored
New flags for individual syntax extensions: -fth enables template haskell -fimplicit-params enables implicit parameters These extensions are still implied by -fglasgow-exts, but they can now be switched off individually with -fno-th and -fno-implicit-params respectively. Also, -fno-ffi now works as expected. I cleaned up the interface to the lexer a bit while I was here.
-
simonmar authored
Quick hack to work around the dynamic exception crashes in GHCi. The problem is this: the Data.Typeable library (Data.Dymamic in previous versions of GHC) maintains an internal cache mapping type names to unique numbers, and this cache is used for fast comparisons on TypeReps. In GHCi, there are actually two versions of the Data.Typeable library loaded: one linked to GHCi itself, and the other dynamically loaded, so there are two copies of the hash tables. The problem is that if we have a Dynamic value generated using one set of hash tables, it will erroneously appear to be of a different type when the other hash tables are used. The hack I've instigated is to use the central RTS genSym (which already exists) to generate the unique Ids, so that the two copies of the dynamic library will be using distinct Ids, and Dynamics from one will never be recognisable to the other.
-