- Aug 07, 2011
-
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
- Aug 06, 2011
-
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
We were returning the tycon of a type family *instance* as a binder, and it just isn't! Consequential tidy-ups follow. I tripped over this on the way to something else. I'm not sure it was causing a problem, but it is Plainly Wrong.
-
- Aug 05, 2011
-
-
Simon Peyton Jones authored
TH quotation was using mkName rather than newName for top-level definitions, which is plain wrong as #5379 points out.
-
Simon Marlow authored
-
Ian Lynagh authored
As discussed in #5377
-
- Aug 04, 2011
-
-
-
Ian Lynagh authored
This reverts commit d02a1979. Apparently there are still problems with gmp. See #5293 for more details.
-
Ian Lynagh authored
We were putting includes/ghcautoconf.h includes/ghcconfig.h includes/ghcplatform.h into bindists twice.
-
Simon Peyton Jones authored
Currently export list in .hi files are partitioned by module export M T(C1,C2) N f,g In each list we only have OccNames, all assumed to come from the parent module M or N resp. This patch changes the representatation so that export lists have full Names: export M.T(M.C1,M.C2), N.f, N.g Numerous advatages * AvailInfo no longer needs to be parameterised; it always contains Names * Fixes Trac #5306. This was the main provocation * Less to-and-fro conversion when reading interface files It's all generally simpler. Interface files should not get bigger, becuase they have a nice compact representation for Names.
-
batterseapower authored
When a plugin is loaded, it currently gets linked against a *newly loaded* copy of the GHC package. This would not be a problem, except that the new copy has its own mutable state that is not shared with that state that has already been initialized by the original GHC package. This leads to loaded plugins calling GHC code which pokes the static flags, and then dying with a panic because the static flags *it* sees are uninitialized. There are two possible solutions: 1. Export the symbols from the GHC executable from the GHC library and link against this existing copy rather than a new copy of the GHC library 2. Carefully ensure that the global state in the two copies of the GHC library matches I tried 1. and it *almost* works (and speeds up plugin load times!) except on Windows. On Windows the GHC library tends to export more than 65536 symbols (see #5292) which overflows the limit of what we can export from the EXE and causes breakage. (Note that if the GHC exeecutable was dynamically linked this wouldn't be a problem, because we could share the GHC library it links to.) We are going to try 2. instead. Unfortunately, this means that every plugin will have to say `reinitializeGlobals` before it does anything, but never mind. I've threaded the cr_globals through CoreM rather than giving them as an argument to the plugin function so that we can turn this function into (return ()) without breaking any plugins when we eventually get 1. working.
-
batterseapower authored
-
batterseapower authored
-
batterseapower authored
-
batterseapower authored
-
batterseapower authored
-
batterseapower authored
-
batterseapower authored
-
batterseapower authored
Put the info CLabel in CmmInfoTable rather than a localness flag, tidy up some info<->entry conversions Conflicts: compiler/cmm/CmmDecl.hs
-
batterseapower authored
-
- Aug 03, 2011
-
-
Ian Lynagh authored
Now that the in-tree gmp has been upgraded, it should no longer be necessary, according to #5293.
-
chak@cse.unsw.edu.au. authored
- "-Wl,-no_pie" can be removed once GMP gets updated
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Simon Peyton Jones authored
An claimed short-cut optimisation was actually an error. The optimisation was this: when looking up (C a b), where 'a' and 'b' are type variables, we were returning [] immediately if the instance environment had no instances of form (C a b). Why? Because the thing being looked up definitely won't match (C Int Bool), say. BUT it will *unify* with (C Int Bool) and we care very much about things it might unify with. If we neglect them we may silently allow incoherent instance selection, and that is exactly what happened in #5095. The fix is easy: remove the "optimisation".
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
This fixes Trac #5147, which was going wrong because the class ABI fingerprint wasn't changing when we added or removed a Show instance to the associated type.
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Simon Peyton Jones authored
-
Lennart Kolmodin authored
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
See Note [Internal used_names]. Fixes Trac #5362.
-
Simon Peyton Jones authored
Fixes Trac #5359.
-
Simon Peyton Jones authored
Fixes Trac #5358.
-
chak@cse.unsw.edu.au. authored
-