- 18 Mar, 2002 6 commits
-
-
simonpj authored
Splittable class comes from GlaExts now
-
simonmar authored
PrelGHC ==> GHC.Prim, for what it's worth (this documentation is quite out of date).
-
simonmar authored
PrelGHC ==> GHC.Prim (comments only)
-
simonmar authored
PrelGHC ==> GHC.Prim (in comments only)
-
simonmar authored
PrelGHC ==> GHC.Prim
-
simonmar authored
update mention of PrelGHC
-
- 15 Mar, 2002 2 commits
- 14 Mar, 2002 10 commits
-
-
simonmar authored
No need to compile Printf.lhs with -fvia-c now.
-
simonmar authored
The foreign declaration for snprintf was wrong, because we need to give the type of the C function after applying C's type promotion rules. Hence the Float argument should be a Double, because it occurs in the vararg section of the function type.
-
simonmar authored
Back out previous fix, it was wrong.
-
simonmar authored
Misc cleanup: remove the iface pretty-printing style, and clean up bits of StringBuffer that aren't required any more.
-
simonmar authored
undo accidental commits
-
simonpj authored
Documentation about type system extensions
-
simonmar authored
Remove the interface file parser, and move .hi-boot parsing into the main parser. The syntax of .hi-boot files is now greatly improved in terms of readability; here's an example: module M where data T f :: T -> GHC.Base.Int note that (a) layout can be used (b) there's no explcit export list; everything declared is implicitly exported (c) Z-encoding of names is no longer required (d) Any identifier not declared in the current module must still be quailified with the module which originally defined it (eg. GHC.Base.Int above). We'd like to relax (d), but that will come later.
-
simonpj authored
------------------------ Change GlobalName --> ExternalName LocalName -> InternalName ------------------------ For a long time there's been terminological confusion between GlobalName vs LocalName (property of a Name) GlobalId vs LocalId (property of an Id) I've now changed the terminology for Name to be ExternalName vs InternalName I've also added quite a bit of documentation in the Commentary.
-
simonpj authored
Lots of stuff about external and internal names
-
simonmar authored
Turn "return e" into "return $! e" in several places to improve performance.
-
- 13 Mar, 2002 7 commits
-
-
simonmar authored
Remove -fall-strict
-
simonmar authored
Update the documentation to reflect new commands since 5.02.2: :browse :set args :set prog :show bindings :show modules and the new syntax for :module.
-
simonmar authored
Fix the -fasm/-fvia-C auto-selection again: now we're back to the proper behaviour, namely -fasm is the default unless you specify -O or -fvia-C, but only on arch's that support it. I screwed it up in the previous commit, but it exposed a bug in the NCG so it wasn't all bad :)
-
simonmar authored
Cope with VoidRep fields in a static constructor.
-
simonmar authored
It *is* possible to get VoidRep fields in a constructor, but their representation should be empty (not a zero word).
-
simonmar authored
Fix panic message.
-
simonmar authored
GHC version wibble
-
- 12 Mar, 2002 12 commits
-
-
simonmar authored
Fix a bug in the native code generator's handling of floating-point arguments to ccalls: it wasn't correctly promoting float arguments to doubles. Amazingly this has gone undetected for quite a while. Fixes bug #523996.
-
simonmar authored
Forced commit: note that the previous revision also improved the error message for a compiler stack overflow slightly.
-
simonmar authored
eek! Somehow, I managed to make -fvia-C the default on the HEAD and nobody noticed for two months.
-
simonpj authored
------------------------ Fix a type-invariant bug ------------------------ We need to call Type.mkGenTyConApp from Type.mkAppTy, in case there's a partially applied type synonym. Explanation with Type.mkAppTy. All part of GHC's rather liberal treatment of type synonyms. Shown up by a program from Ralf Laemmel: type Generic i o = forall x. i x -> o x type Id x = x comb :: Generic Id Id Test is typecheck/should_compile/tc149.hs
-
simonmar authored
Add a magic number to the beginning of interface files (0x1face :-) to avoid trying to read old text-style interfaces as binary (the usual result is an attempt to allocate a ByteArray larger than the available memory size and an obscure crash).
-
simonmar authored
If we are in a deadlock situation but there are signal handlers installed, pause() instead of reporting deadlock. One of the signal handlers may allow the process to continue after being triggered. Fixes bug #525772. I've made a half-hearted attempt to clean up the deadlock code in the scheduler, it now looks slightly better.
-
simonmar authored
Main threads are now not kept alive artificially, so it is possible for a main thread to be sent the BlockedOnDeadMVar exception. Main threads are no longer GC roots. This involved cleaning up the weak pointer processing somewhat, and separating the processing of real weak pointers from the processing of the all_threads list (which can be thought of as "weaker pointers": a finalizer can keep a blocked thread alive, but not vice-versa). The new story is described in a detailed comment in GC.c. One interesting consequence is that it's much harder to get a Deadlock exception now - many deadlock situations involving main threads will turn into BlockedOnDeadMVar situations instead. For example, if there are a group of threads in a circular deadlock, then they will all be sent BlockedOnDeadMVar simultaneously, whereas before if one of them was the main thread it would be sent Deadlock. It's really hard to get Deadlock now - you have to somehow keep an MVar independently reachable, eg. by using a StablePtr.
-
simonmar authored
When deciding whether the source for a module is unchanged, don't look at the file referred to in the argument of '-o' unless it really is the object file for this compilation (it might be the binary instead). MERGE TO STABLE
-
simonmar authored
- Fix brokenness in foreign export. - Remove some unused imports.
-
simonmar authored
- Add quotes around invocation of ${WithGhc-ghc}, in case the pathname has spaces in (bug #528810). - remove now-unused definition of is_gcc_v3.
-
simonpj authored
----------- Fix mkSynTy ----------- Fix a nasty and long-lived bug in mkSynTy which meant that in: newtype A a = A a type B = A f :: B Double the type (B Double) wasn't regarded properly as (A Double). This bug has lasted for a long time because the type inference engine is fairly forgiving about missing the invariant that a TyConApp always looks like one right at the top level. In fact, it's so forgiving that I don't know how to tickle this bug into showing up. (It showed up in 5.02, becuase the context-simplification for 'deriving' is done by a different engine as all the other context simplification.) Still, the invariant should hold, and this fix makes it so.
-
simonpj authored
Comments
-
- 11 Mar, 2002 3 commits
-
-
simonmar authored
import openFileEx and IOModeEx(..)
-
simonmar authored
Add a warning about booting from .hc files on GHC 5.xx, and recommend using 4.08.2 instead.
-
simonmar authored
Re-instate ifeq "$(way)" "" around the rule for recursively descending into SUBDIRS that I removed a while back. This will fix a bug in nofib whereby if NoFibWays is set to anything then we do O(n^2) traversals of the tree, but it also means you can't sit at the top of the tree and say 'make way=p' to just build profiling libraries (which was the reason I made the change in the first place). We'll have to find another way to do this.
-