- Dec 17, 1999
-
-
Simon Marlow authored
Add netbsd to the list of platforms supported. ToDo: add info to the User's Guide once the Shiny New Documentation is committed.
-
- Dec 16, 1999
-
-
Julian Seward authored
Add extended version of previous commit message as a comment.
-
Julian Seward authored
Further major improvements in interface processing, mostly in the handling of types. Interfaces can contain references to unboxed types, and these need to be handled carefully. The following is a summary of how the interface loader now works. It is applied to groups of interfaces simultaneously, viz, the entire Prelude at once: 1. Throw away any entity not mentioned in the export lists. 2. Delete type (not data or newtype) definitions which refer to unknown types in their right hand sides. Because Hugs doesn't know of any unboxed types, this has the side effect of removing all type defns referring to unboxed types. Repeat step 2 until a fixed point is reached. 3. Make abstract all data/newtype defns which refer to an unknown type. eg, data Word = MkW Word# becomes data Word, because Word# is unknown. Hugs is happy to know about abstract boxed Words, but not about Word#s. 4. Step 2 could delete types referred to by values, instances and classes. So filter all entities, and delete those referring to unknown types _or_ classes. This could cause other entities to become invalid, so iterate step 4 to a fixed point. After step 4, the interfaces no longer contain anything unpalatable to Hugs. 5. Steps 1-4 operate purely on the iface syntax trees. We now start creating symbol table entries. First, create a module table entry for each interface, and locate and read in the corresponding object file. 6. Traverse all interfaces. For each entity, create an entry in the name, tycon, class or instance table, and fill in relevant fields, but do not attempt to link tycon/class/instance/name uses to their symbol table entries. 7. Revisit all symbol table entries created in step 6. We should now be able to replace all references to tycons/classes/instances/ names with the relevant symbol table entries. 8. Traverse all interfaces. For each iface, examine the export lists and use it to build export lists in the module table. Do the implicit 'import Prelude' thing if necessary. Finally, resolve references in the object code for this module. I'm sure the number of passes could be reduced. For the moment, understandability is of much higher priority. Hugs can now complete stages 1 through 8 for the whole GHC Prelude, excepting doing the object linking, which needs further work.
-
- Dec 15, 1999
-
-
Simon Marlow authored
Add test displaying bug in fixity resolution on lhs of a function binding. We currently fail on this example, but at least putting it in the test suite will make sure we don't forget about it :)
-
Simon Marlow authored
Add NetBSD/x86 support.
-
- Dec 14, 1999
-
-
Simon Marlow authored
Don't set O_NONBLOCK on stdout and stderr. This is a workaround for a combination of bizarre Unix semantics and shells which don't reset the nonblocking flag after running a program.
-
- Dec 13, 1999
-
-
Simon Marlow authored
Include hslibs in a binary-dist.
-
Simon Marlow authored
Add a few minBound::Int tests.
-
Simon Marlow authored
Fix bug in abs::Integer->Integer: result was wrong for minBound::Int.
-
Simon Marlow authored
Correct off-by-one error in bounds checking when converting NoRepIntegers into the real thing. Not a bug, just a cleanup.
-
- Dec 10, 1999
-
-
Simon Marlow authored
bump version to 4.06
-
Julian Seward authored
Major improvements in interface processing, and minor supporting improvements to CT-storage management. * Make the iface parser return the complete interface as a single tree, which is processed later. Added abs syntax tags I_INTERFACE .. I_VALUE to support this. * Add tagged ("z") 2,3,4,5 tuples. Because they are tagged, they can't be confused with lists, etc. Selectors zfst, zsnd ... zsel45, zsel55 check tags first. Iface processing uses z-tuples wherever it can. * Add unap as a safe "inverse" of ap; it checks tags. So unap(TAG1, ap(TAG2,cell)) == cell but only if TAG1==TAG2, else assertion failure. * In interface.c, clean up the startGHC*/endGHC* functions. processInterfaces() is the top-level driver; it makes 4 passes over the supplied iface trees. * Throw away iface symbols not mentioned in export lists. * Use iface export lists to construct both the export and eval environments for a module. * Don't use Texts to refer to things. Instead use ConId and VarId. Added ConId and VarId as synonyms for Cell in storage.h. * Add findSimpleInstance in storage.c.
-
Simon Marlow authored
Unbreak finalization.
-
Simon Peyton Jones authored
I was too enthusiastic about removing empty usage entries from interface files. This commit fixes my errors of yesterday. Simon
-
- Dec 09, 1999
-
-
Simon Marlow authored
allow certain keywords as scc labels.
-
Simon Marlow authored
eliminate recursive defn: HC <--> WithGhcHc
-
Simon Peyton Jones authored
A bunch of small changes in the way that usage information is generated to stuff into interface files. I'm not certain anything was really wrong before, but it's tidier now, and there are slightly fewer dependencies generated. Main differences are in RnIfaces.getImportVersions I also made the check for orphan rules a bit cleverer (Rename.isOrphanDecl) so that we get fewer spurious orphan modules. Simon
-
Simon Marlow authored
Remove bogus #! lines. Obtained-from: Michael Weber <michael.weber@post.rwth-aachen.de>
-
Simon Marlow authored
cleanups & fixes Obtained-from: Michael Weber <michael.weber@post.rwth-aachen.de>
-
Simon Marlow authored
clean sgmlverb.c Obtained-from: Michael Weber <michael.weber@post.rwth-aachen.de>
-
Simon Marlow authored
recurse into libraries. Obtained-from: Michael Weber <michael.weber@post.rwth-aachen.de>
-
Simon Marlow authored
clean PrelGHC.hi in its various flavours. Obtained-from: Michael Weber <michael.weber@post.rwth-aachen.de>
-
- Dec 08, 1999
-
-
Simon Marlow authored
misc ansification and -Wall cleanup
-
Simon Marlow authored
Add Marc Van Dongen's Integer improvements. Specifically: - new primops: gcdInt#, gcdIntegerInt#, divExact#, quotInteger#, remInteger#. - new definitions of quot and rem for Integer in PrelNum (using the new quotInteger# and remInteger# primops instead of quotRemInteger#). Should be slightly faster than before. div & mod aren't likewise optimised (yet). - specialisations of gcd for Int and Integer, and lcm for Integer in PrelNum.
-
Simon Marlow authored
- add test cases for my URI library - add George Russell's tests for the TimeExts library
-
Simon Marlow authored
oops, forgot to initialize bufStart in openStdFile.
-
Simon Marlow authored
Fix bogon in rule for parser/hschooks.c
-
Simon Marlow authored
New make variable: $(WithNofibHc) which defines the Haskell compiler used to build nofib. Define $(GHC_INPLACE) in fptools/mk/config.mk.in. $(WithNofibHc) is set to $(GHC_INPLACE) by default. Fix $(MKDEPENDHS) in ghc/lib/std/Makefile.
-
Simon Marlow authored
remove cut-n-pasteo
-
- Dec 07, 1999
-
-
Simon Marlow authored
Now that $(GHC) refers to an installed haskell compiler, use $(GHC_INPLACE) to refer to the ghc in the build tree.
-
Simon Peyton Jones authored
Remove long-outdated AnalFBWW
-
Simon Marlow authored
Now that $(GHC) means an installed copy of ghc, use $(GHC_INPLACE) to refer to the ghc in the build tree.
-
Simon Peyton Jones authored
Add drvrun008
-
Simon Marlow authored
Automatically detect installed copies of ghc, nhc and hbc and plug them into the Makefile variables $(GHC), $(NHC) and $(HBC) respectively. $(HC) is now supposed to be a generic installed haskell compiler, which defaults to $(GHC) and can be changed via ./configure --with-hc=<blah>. Reorganise and tidy up a few things in config.mk.in.
-
Simon Peyton Jones authored
Derived instances should use *source* types not *representation* types when doing their deriving stuff. This bug prevented data F = F !Int deriving (Eq) from working when -funbox-strict-fields was on Simon
-
chak@cse.unsw.edu.au. authored
Package local configuration scripts allow to modularise the configuration (we start by having one for ghc): * Modularised configuration avoids unnecessary dependencies for individual packages. * Furthermore, package local configuration (such as entering version information into rpm .spec files) is possible.
-
chak@cse.unsw.edu.au. authored
Of course, I had to get the name wrong - this has to be mangled by configure (eg, to set the version number). Also added dependency on gmp-devel (see discussion on glasgow-haskell-bugs).
-
sven.panne@aedion.de authored
OK, don't say you haven't been warned: Sven "Larry W." Panne waved his Perl-wand and changed a / / into /\s+/. This fixes the problem with multiple spaces between {-# OPTIONS ... -#}, but still fails miserably when quotes are used, e.g. {-# OPTIONS -#include "My Own Header.h" #-}.
-
chak@cse.unsw.edu.au. authored
rpm build specifications in CVS are a first step to building packages automatically from CVS (I test this with ghc, but support for the other fptools components will follow)
-
Julian Seward authored
Increase default c-t heap from 300000 to 350000 cells for nofib/real/anna.
-