simonmar [Thu, 2 Sep 2004 12:45:25 +0000 (12:45 +0000)]
[project @ 2004-09-02 12:45:25 by simonmar]
Rearrange so that Regs.h include comes before inline function
definitions. I'm guessing that newer versions of gcc are less picky
about this, which is why we hadn't noticed it.
simonmar [Thu, 2 Sep 2004 12:34:05 +0000 (12:34 +0000)]
[project @ 2004-09-02 12:34:05 by simonmar]
Make the UPD_IND macros compatible with older gccs that don't accept
declarations in the middle of a block.
dons [Thu, 2 Sep 2004 03:22:39 +0000 (03:22 +0000)]
[project @ 2004-09-02 03:22:39 by dons]
$T_PRE_APP char now appears to be a '#' on OpenBSD/x86.
ross [Wed, 1 Sep 2004 15:57:15 +0000 (15:57 +0000)]
[project @ 2004-09-01 15:57:09 by ross]
devolve the recently added dirent checks to a new libraries/base/configure.ac
panne [Wed, 1 Sep 2004 15:51:36 +0000 (15:51 +0000)]
[project @ 2004-09-01 15:51:36 by panne]
Guerrilla tactics: Added --enable-hopengl
panne [Wed, 1 Sep 2004 15:38:25 +0000 (15:38 +0000)]
[project @ 2004-09-01 15:38:25 by panne]
Nuked SGMLDocWays
simonmar [Wed, 1 Sep 2004 14:14:35 +0000 (14:14 +0000)]
[project @ 2004-09-01 14:14:29 by simonmar]
Minore package GHC fixes, and a couple of changes for Visual Studio.
Messages from the compiler should now go through a new API in
ErrUtils, so that they can be redirected by the GHC client if
necessary. (currently not all messages go through this interface, but
some of them do).
simonmar [Wed, 1 Sep 2004 13:14:12 +0000 (13:14 +0000)]
[project @ 2004-09-01 13:14:12 by simonmar]
Better fix for previous from Ian Lynagh.
simonmar [Wed, 1 Sep 2004 10:01:48 +0000 (10:01 +0000)]
[project @ 2004-09-01 10:01:48 by simonmar]
Apply the fix from
[ 1015205 ] ghc-split fails to quote path when used as regex
namely escape backslashes in the pathname $Tmp_prefix before using it
as a regex. The fix doesn't look like it solves the general case, but
it'll do for now.
simonmar [Wed, 1 Sep 2004 09:43:25 +0000 (09:43 +0000)]
[project @ 2004-09-01 09:43:25 by simonmar]
Catch exit(127) result from raw system, and report that we couldn't
execute the program. This is a semi-hack; all exec() errors get
reported as exit(127) by rawSystem, but if we treat it just like a
program that does exit(127) then the user sees no output.
simonmar [Wed, 1 Sep 2004 08:43:23 +0000 (08:43 +0000)]
[project @ 2004-09-01 08:43:23 by simonmar]
Fix profiling (ASSIGN_CCSID macros had gone away).
sof [Tue, 31 Aug 2004 19:06:29 +0000 (19:06 +0000)]
[project @ 2004-08-31 19:06:29 by sof]
RTS_SYMBOLS: added closure_flags (innards-peeking user code may use this); merge to STABLE
panne [Tue, 31 Aug 2004 16:19:54 +0000 (16:19 +0000)]
[project @ 2004-08-31 16:19:54 by panne]
Fixed version/release magic. Actually I think we're doing things the wrong way
here: We should use AC_INIT with a version parameter as the central place for
this info and substitute what's needed into the rest of the files.
ross [Tue, 31 Aug 2004 16:02:42 +0000 (16:02 +0000)]
[project @ 2004-08-31 16:02:42 by ross]
markup fixes (and one typo) in arrow notation section
ross [Tue, 31 Aug 2004 15:54:08 +0000 (15:54 +0000)]
[project @ 2004-08-31 15:54:08 by ross]
add the Debian location for XSL stylesheets
simonmar [Tue, 31 Aug 2004 12:45:36 +0000 (12:45 +0000)]
[project @ 2004-08-31 12:45:35 by simonmar]
Get the version number into ghc-pkg by creating Version.hs from the
Makefile to avoid GHC and possibly shell versionitis.
simonmar [Tue, 31 Aug 2004 12:28:18 +0000 (12:28 +0000)]
[project @ 2004-08-31 12:28:18 by simonmar]
Try to fix up the previous commit. I'm not sure if this is quite
right, but it should be closer.
simonmar [Tue, 31 Aug 2004 11:38:53 +0000 (11:38 +0000)]
[project @ 2004-08-31 11:38:53 by simonmar]
Warning fix on Win32.
simonmar [Tue, 31 Aug 2004 09:48:29 +0000 (09:48 +0000)]
[project @ 2004-08-31 09:48:28 by simonmar]
Rationalise the install settings a bit. Before, if you had $OWNER or
$GROUP set in your environment, then these would lead to options being
given to install, possibly with unexpected results. This caused
install to fail for at least one person.
Now, $(INSTALL_OWNER) and $(INSTALL_GROUP) are set via
config.mk/build.mk as with other settings.
sof [Mon, 30 Aug 2004 19:44:38 +0000 (19:44 +0000)]
[project @ 2004-08-30 19:44:38 by sof]
turns out that 5.04.x differs in how args are quoted across plats; try to cope.
panne [Mon, 30 Aug 2004 19:28:47 +0000 (19:28 +0000)]
[project @ 2004-08-30 19:28:46 by panne]
Cleaned up FPTOOLS_UNDERSCORE (changequote is evil!) and renamed it to
FP_LEADING_UNDERSCORE
panne [Mon, 30 Aug 2004 18:31:34 +0000 (18:31 +0000)]
[project @ 2004-08-30 18:31:34 by panne]
The crusade against configuration bit rot continues: Cleaned up header checks
panne [Mon, 30 Aug 2004 18:15:12 +0000 (18:15 +0000)]
[project @ 2004-08-30 18:15:12 by panne]
Removed duplicate tests for headers
panne [Mon, 30 Aug 2004 18:11:55 +0000 (18:11 +0000)]
[project @ 2004-08-30 18:11:55 by panne]
Nuked tests already done via standard AC_INCLUDES_DEFAULT
panne [Mon, 30 Aug 2004 17:47:36 +0000 (17:47 +0000)]
[project @ 2004-08-30 17:47:36 by panne]
Removed unused function checks
sof [Mon, 30 Aug 2004 16:20:54 +0000 (16:20 +0000)]
[project @ 2004-08-30 16:20:54 by sof]
doh
sof [Mon, 30 Aug 2004 15:43:14 +0000 (15:43 +0000)]
[project @ 2004-08-30 15:43:14 by sof]
escape GHC_PKG_VERSION double quotes on all platforms when compiling with <=6.0.x
panne [Sat, 28 Aug 2004 16:51:18 +0000 (16:51 +0000)]
[project @ 2004-08-28 16:51:18 by panne]
Trimmed a few function checks
panne [Sat, 28 Aug 2004 16:20:36 +0000 (16:20 +0000)]
[project @ 2004-08-28 16:20:35 by panne]
Beautified test for ghc-pkg
panne [Sat, 28 Aug 2004 15:50:44 +0000 (15:50 +0000)]
[project @ 2004-08-28 15:50:44 by panne]
Aesthetic fix: Redirect error messages for non-GNU ar to /dev/null
sof [Fri, 27 Aug 2004 22:36:49 +0000 (22:36 +0000)]
[project @ 2004-08-27 22:36:49 by sof]
all target: if building GMP, only descend into gmp/ when way=""
simonpj [Fri, 27 Aug 2004 08:29:04 +0000 (08:29 +0000)]
[project @ 2004-08-27 08:29:04 by simonpj]
Better tags generation, avoiding derived files (still a bit ad hoc)
simonpj [Fri, 27 Aug 2004 08:17:07 +0000 (08:17 +0000)]
[project @ 2004-08-27 08:17:07 by simonpj]
Oops: always qualify when printing code
panne [Thu, 26 Aug 2004 21:03:20 +0000 (21:03 +0000)]
[project @ 2004-08-26 21:03:18 by panne]
Updated BuildRequires tags. Alas, there seems to be no real standard here, so
your mileage may vary... At least the current specs should work on SuSE Linux.
panne [Thu, 26 Aug 2004 20:08:55 +0000 (20:08 +0000)]
[project @ 2004-08-26 20:08:39 by panne]
SGML is dead, long live DocBook XML!
Note: The BuildRequires tags in the spec files are still incomplete
and the documentation about the DocBook tools needs to be updated,
too. Stay tuned...
simonpj [Thu, 26 Aug 2004 15:45:08 +0000 (15:45 +0000)]
[project @ 2004-08-26 15:44:50 by simonpj]
-------------------------------
Print built-in sytax right
-------------------------------
Built-in syntax, like (:) and [], is not "in scope" via the GlobalRdrEnv
in the usual way. When we print it out, we should also print it in unqualified
form, even though it's not in the environment.
I've finally bitten the (not very big) bullet, and added to Name the information
about whether or not a name is one of these built-in ones. That entailed changing
the calls to mkWiredInName, but those are exactly the places where you have to
decide whether it's built-in or not, which is fine.
Built-in syntax => It's a syntactic form, not "in scope" (e.g. [])
Wired-in thing => The thing (Id, TyCon) is fully known to the compiler,
not read from an interface file.
E.g. Bool, True, Int, Float, and many others
All built-in syntax is for wired-in things.
simonpj [Thu, 26 Aug 2004 14:24:46 +0000 (14:24 +0000)]
[project @ 2004-08-26 14:24:46 by simonpj]
Fix recently-introduced improvement bug
simonmar [Thu, 26 Aug 2004 11:06:04 +0000 (11:06 +0000)]
[project @ 2004-08-26 11:06:04 by simonmar]
Urk, since when has subtraction been associative. /me dons the pointy
hat.
simonmar [Thu, 26 Aug 2004 08:48:25 +0000 (08:48 +0000)]
[project @ 2004-08-26 08:48:25 by simonmar]
Add the :def . readFile example.
simonmar [Thu, 26 Aug 2004 08:43:36 +0000 (08:43 +0000)]
[project @ 2004-08-26 08:43:36 by simonmar]
Add the location of the docbook XSL stylesheets on this RedHat 9 box
to the list of places to look.
sof [Wed, 25 Aug 2004 17:49:22 +0000 (17:49 +0000)]
[project @ 2004-08-25 17:49:22 by sof]
wibble
sof [Wed, 25 Aug 2004 17:38:36 +0000 (17:38 +0000)]
[project @ 2004-08-25 17:38:36 by sof]
tidy up EOL termination handling under mingw; as was, C-related dependencies were being accumulated in existing dependency files, not replaced
sof [Wed, 25 Aug 2004 17:14:55 +0000 (17:14 +0000)]
[project @ 2004-08-25 17:14:55 by sof]
backquote GHC_PKG_VERSION defn for <= ghc-6.0.x; believe this is only needed under mingw
sof [Wed, 25 Aug 2004 17:07:14 +0000 (17:07 +0000)]
[project @ 2004-08-25 17:07:14 by sof]
wibble
sof [Wed, 25 Aug 2004 16:40:48 +0000 (16:40 +0000)]
[project @ 2004-08-25 16:40:48 by sof]
FP_READDIR_EOF_ERRNO: better use AC_DEFINE_UNQUOTED here
simonmar [Wed, 25 Aug 2004 10:37:06 +0000 (10:37 +0000)]
[project @ 2004-08-25 10:37:06 by simonmar]
fix braino in previous commit: we should cast the function result to
the right type, not just assume (W_).
simonpj [Wed, 25 Aug 2004 10:33:52 +0000 (10:33 +0000)]
[project @ 2004-08-25 10:33:52 by simonpj]
Fix typo that caused non -O to see unfoldings
simonpj [Wed, 25 Aug 2004 10:33:26 +0000 (10:33 +0000)]
[project @ 2004-08-25 10:33:26 by simonpj]
Spelling mistake in comment
sof [Tue, 24 Aug 2004 19:26:47 +0000 (19:26 +0000)]
[project @ 2004-08-24 19:26:45 by sof]
Pair of new macros for checking how dirent.h is implemented. Needed
to deal with versioning issues under mingw only, but won't do
any harm on other plats. The macros are:
- FP_READDIR_EOF_ERRNO
checks what readdir() sets errno to upon reaching end of a directory.
(that value is available as READDIR_ERRNO_EOF in mk/config.h). Up
until recently, mingw's readdir() did set errno rather than just
leaving it alone.
- FP_DIRENT_FLAT_LAYOUT
checks how 'struct dirent' is defined; defines
config.h:STRUCT_DIRENT_FLAT_LAYOUT to 1 if 'struct dirent' is terminated
with a d_name array. Up until recently, mingw didn't define it as such.
To be hooked up to libraries/base/{include/HsBase.h,cbits/dirUtils.c} and
quite possibly merged to STABLE.
simonmar [Mon, 23 Aug 2004 10:11:24 +0000 (10:11 +0000)]
[project @ 2004-08-23 10:11:23 by simonmar]
Fix an infinite loop in the cmm-optimiser in the native codegen, and
refactor: move isAssociativeMachOp into MachOp.
panne [Sun, 22 Aug 2004 16:40:38 +0000 (16:40 +0000)]
[project @ 2004-08-22 16:40:38 by panne]
Terminate program if execPage fails, this is more honest and
simplifies things a bit.
panne [Sun, 22 Aug 2004 16:34:54 +0000 (16:34 +0000)]
[project @ 2004-08-22 16:34:54 by panne]
Ooops, fixed previous commit...
panne [Sun, 22 Aug 2004 16:27:50 +0000 (16:27 +0000)]
[project @ 2004-08-22 16:27:50 by panne]
stgMallocBytes never returns NULL
panne [Sun, 22 Aug 2004 16:20:42 +0000 (16:20 +0000)]
[project @ 2004-08-22 16:20:42 by panne]
* Renamed __obscure_ccall_ret_code to obscure_ccall_ret_code, leading
underscores are bad for user code.
* Let the code for obscure_ccall_ret_code live in dynamically
allocated memory, just like the adjustors. This should fix problems
on OpenBSD, which doesn't like executable code in the data section.
panne [Sun, 22 Aug 2004 15:50:42 +0000 (15:50 +0000)]
[project @ 2004-08-22 15:50:39 by panne]
Removed a few "use of cast expressions as lvalues is deprecated"
warnings. Note that gcc is really pedantic nowadays, so we have to go
via a temporary to avoid "cast does not match function type" warnings.
panne [Sat, 21 Aug 2004 13:48:59 +0000 (13:48 +0000)]
[project @ 2004-08-21 13:48:58 by panne]
If "hhc" is in the PATH, the "htmlhelp" target builds a *.chm file now. Note:
This is untested and "hhc" should really be detected via autoconf.
panne [Sat, 21 Aug 2004 13:29:28 +0000 (13:29 +0000)]
[project @ 2004-08-21 13:29:26 by panne]
* Factored out labeling options (used by FO now, too)
* Cleaned up stylesheet handling
panne [Sat, 21 Aug 2004 12:49:14 +0000 (12:49 +0000)]
[project @ 2004-08-21 12:49:14 by panne]
* Header cleanup
* Improved type of execPage
* Use prog_belch instead of fprintf(stderr, ...)
panne [Sat, 21 Aug 2004 12:48:00 +0000 (12:48 +0000)]
[project @ 2004-08-21 12:48:00 by panne]
Perform initialisation of adjustor thunk layer at startup.
panne [Sat, 21 Aug 2004 12:47:17 +0000 (12:47 +0000)]
[project @ 2004-08-21 12:47:17 by panne]
Moved createAdjustor and freeHaskellFunctionPtr to a header visible in
*.hc code. The whole header layout is a little bit baroque, IMHO...
simonmar [Fri, 20 Aug 2004 15:02:40 +0000 (15:02 +0000)]
[project @ 2004-08-20 15:02:40 by simonmar]
Hack to work around bug on Windows reported by Levent Erkok
<levent.erkok@intel.com>:
Prelude> let x=x in x
*** Exception: <<loop>>
Prelude> 3
Fail: thread blocked indefinitely
Details in the comment.
MERGE TO STABLE
simonmar [Fri, 20 Aug 2004 13:05:50 +0000 (13:05 +0000)]
[project @ 2004-08-20 13:05:50 by simonmar]
Fixes
simonmar [Fri, 20 Aug 2004 12:21:05 +0000 (12:21 +0000)]
[project @ 2004-08-20 12:21:03 by simonmar]
Simplify the "impossible branch" handling, and fix a bug in the
process. CmmSwitch encodes the possibility of having impossible
branches (the destinations are Maybe BlockId rather than just BlockId)
so we don't need to encode impossible branches as dummy blocks
containing a jump to an impossible location (currently 0).
However, PprC and PprCmm weren't set up to cope with Nothings in a
CmmSwitch, so this commit fixes that too.
simonmar [Fri, 20 Aug 2004 11:20:17 +0000 (11:20 +0000)]
[project @ 2004-08-20 11:20:16 by simonmar]
Give literal string labels a _str suffix, to make it less likely that
they'll clash with a symbol in scope in a C file.
simonmar [Thu, 19 Aug 2004 15:43:39 +0000 (15:43 +0000)]
[project @ 2004-08-19 15:43:39 by simonmar]
Build fix
simonmar [Thu, 19 Aug 2004 14:00:50 +0000 (14:00 +0000)]
[project @ 2004-08-19 14:00:48 by simonmar]
Windows fixes.
simonmar [Thu, 19 Aug 2004 11:27:45 +0000 (11:27 +0000)]
[project @ 2004-08-19 11:27:45 by simonmar]
bugfix: set tso->link = END_TSO_QUEUE before APPEND_TO_RUN_QUEUE().
sof [Wed, 18 Aug 2004 19:12:42 +0000 (19:12 +0000)]
[project @ 2004-08-18 19:12:42 by sof]
- set mingw_top, old_ghc_top, gcc_version defaults if not
defined in the environment block.
- bundle ar.exe (as bin/ar.exe)
- more comments
panne [Wed, 18 Aug 2004 16:42:56 +0000 (16:42 +0000)]
[project @ 2004-08-18 16:42:51 by panne]
Re-added indices + minor fixes
panne [Wed, 18 Aug 2004 16:23:14 +0000 (16:23 +0000)]
[project @ 2004-08-18 16:23:14 by panne]
Improved section labeling for HTML formats. Have to check other formats...
panne [Wed, 18 Aug 2004 16:16:57 +0000 (16:16 +0000)]
[project @ 2004-08-18 16:16:54 by panne]
* Preliminary support for HTML Help (target "htmlhelp". Note: No
support for *.chm yet, I have to download hhc first for testing.
* Made directory/file layout more consistent:
* All-in-one HTML for foo.xml goes into foo.html
* Chunked HTML for foo.xml goes into foo-html directory with root index.html
* HTML Help for foo.xml goes into foo-htmlhelp directory
For the rationale behind this, read "Cool URIs don't change" at
http://www.w3.org/Provider/Style/URI.
* Renamed "no-chunks-html" make target to "html-no-chunks"
panne [Wed, 18 Aug 2004 15:47:55 +0000 (15:47 +0000)]
[project @ 2004-08-18 15:47:55 by panne]
Use *nix instead of Windoze line ends
simonmar [Wed, 18 Aug 2004 13:16:28 +0000 (13:16 +0000)]
[project @ 2004-08-18 13:16:28 by simonmar]
Fix parse error in the generated package.conf
simonmar [Wed, 18 Aug 2004 13:14:21 +0000 (13:14 +0000)]
[project @ 2004-08-18 13:14:21 by simonmar]
Add cmm directory
simonmar [Wed, 18 Aug 2004 10:07:29 +0000 (10:07 +0000)]
[project @ 2004-08-18 10:07:29 by simonmar]
Remove extra semicolon; exposed by other recent changes.
simonpj [Wed, 18 Aug 2004 09:33:11 +0000 (09:33 +0000)]
[project @ 2004-08-18 09:33:03 by simonpj]
-------------------------------
Fix a fundep bug
-------------------------------
MERGE TO STABLE
Big thank-you to Martin Sulzmann for finding this functional dependency bug.
The new defn of FunDeps.Equation is:
type Equation = (TyVarSet, [(Type, Type)])
Before it was (TyVarSet, Type, Type), so each pair of types was separately
quantified (wrong).
It's important that we have a *list* of pairs of types. Consider
class C a b c | a -> b c where ...
instance C Int x x where ...
Then, given the constraint (C Int Bool v) we should improve v to Bool,
via the equation ({x}, [(Bool,x), (v,x)])
This would not happen if the class had looked like
class C a b c | a -> b, a -> c
Test in typecheck/should_compile/tc180
simonmar [Tue, 17 Aug 2004 16:00:59 +0000 (16:00 +0000)]
[project @ 2004-08-17 16:00:58 by simonmar]
- phases.xml: add documentation on <os>_TARGET_OS and <arch>_TARGET_ARCH
symbols.
- some fixes for editing in emacs
simonpj [Tue, 17 Aug 2004 15:24:13 +0000 (15:24 +0000)]
[project @ 2004-08-17 15:23:47 by simonpj]
-------------------------------
Use merge-sort not quicksort
Nuke quicksort altogether
-------------------------------
Quicksort has O(n**2) behaviour worst case, and this occasionally bites.
In particular, when compiling large files consisting only of static data,
we get loads of top-level delarations -- and that led to more than half the
total compile time being spent in the strongly connected component analysis
for the occurrence analyser. Switching to merge sort completely solved the
problem.
I've nuked quicksort altogether to make sure this does not happen again.
simonpj [Tue, 17 Aug 2004 08:18:41 +0000 (08:18 +0000)]
[project @ 2004-08-17 08:18:41 by simonpj]
Typo in windows-specific code
panne [Mon, 16 Aug 2004 19:59:53 +0000 (19:59 +0000)]
[project @ 2004-08-16 19:59:28 by panne]
XMLification
simonpj [Mon, 16 Aug 2004 16:26:51 +0000 (16:26 +0000)]
[project @ 2004-08-16 16:26:51 by simonpj]
-------------------------------
Add instance information to :i
Get rid of the DeclPool
-------------------------------
1. Add instance information to :info command. GHCi now prints out
which instances a type or class belongs to, when you use :i
2. Tidy up printing of unqualified names in user output.
Previously Outputable.PrintUnqualified was
type PrintUnqualified = Name -> Bool
but it's now
type PrintUnqualified = ModuleName -> OccName -> Bool
This turns out to be tidier even for Names, and it's now also usable
when printing IfaceSyn stuff in GHCi, eliminating a grevious hack.
3. On the way to doing this, Simon M had the great idea that we could
get rid of the DeclPool holding pen, which held declarations read from
interface files but not yet type-checked. We do this by eagerly
populating the TypeEnv with thunks what, when poked, do the type
checking. This is just a logical continuation of lazy import
mechanism we've now had for some while.
The InstPool and RulePool still exist, but I plan to get rid of them in
the same way. The new scheme does mean that more rules get sucked in than
before, because previously the TypeEnv was used to mean "this thing was needed"
and hence to control which rules were sucked in. But now the TypeEnv is
populated more eagerly => more rules get sucked in. However this problem
will go away when I get rid of the Inst and Rule pools.
I should have kept these changes separate, but I didn't. Change (1)
affects mainly
TcRnDriver, HscMain, CompMan, InteractiveUI
whereas change (3) is more wide ranging.
simonpj [Mon, 16 Aug 2004 16:14:59 +0000 (16:14 +0000)]
[project @ 2004-08-16 16:14:59 by simonpj]
stg_interp_constr_entry and friends don't have info tables, so declare
them using RTS_FUN() rather than RTS_ENTRY().
simonmar [Mon, 16 Aug 2004 11:57:19 +0000 (11:57 +0000)]
[project @ 2004-08-16 11:57:19 by simonmar]
Avoid casting lvalues; gcc 3.4 issues warnings for it.
simonmar [Mon, 16 Aug 2004 11:19:27 +0000 (11:19 +0000)]
[project @ 2004-08-16 11:19:24 by simonmar]
Define <arch>_TARGET_ARCH and <os>_TARGET_OS by default when CPP'ing.
This avoids the main reason for needing to #include config.h into
Haskell source, so most files that previously just #include "config.h" can now
#if __GLASGOW_HASKELL__ < 603
#include "config.h"
#endif
simonmar [Mon, 16 Aug 2004 11:17:20 +0000 (11:17 +0000)]
[project @ 2004-08-16 11:17:20 by simonmar]
Add a config.h to ease the transition. Now if you include config.h
you get a warning instead of a failure:
In file included from System/Posix/Internals.hs:24:
/playpen/ghc/nightly/HEAD-cam-02-unx/i386-unknown-linux/ghc/includes/config.h:4: warning: #warning config.h is deprecated; please use ghcconfig.h instead
simonmar [Mon, 16 Aug 2004 10:59:37 +0000 (10:59 +0000)]
[project @ 2004-08-16 10:59:37 by simonmar]
config.h ==> ghcconfig.h
simonpj [Mon, 16 Aug 2004 09:54:51 +0000 (09:54 +0000)]
[project @ 2004-08-16 09:53:47 by simonpj]
-------------------------------
Add instance information to :i
Get rid of the DeclPool
-------------------------------
1. Add instance information to :info command. GHCi now prints out
which instances a type or class belongs to, when you use :i
2. Tidy up printing of unqualified names in user output.
Previously Outputable.PrintUnqualified was
type PrintUnqualified = Name -> Bool
but it's now
type PrintUnqualified = ModuleName -> OccName -> Bool
This turns out to be tidier even for Names, and it's now also usable
when printing IfaceSyn stuff in GHCi, eliminating a grevious hack.
3. On the way to doing this, Simon M had the great idea that we could
get rid of the DeclPool holding pen, which held declarations read from
interface files but not yet type-checked. We do this by eagerly
populating the TypeEnv with thunks what, when poked, do the type
checking. This is just a logical continuation of lazy import
mechanism we've now had for some while.
The InstPool and RulePool still exist, but I plan to get rid of them in
the same way. The new scheme does mean that more rules get sucked in than
before, because previously the TypeEnv was used to mean "this thing was needed"
and hence to control which rules were sucked in. But now the TypeEnv is
populated more eagerly => more rules get sucked in. However this problem
will go away when I get rid of the Inst and Rule pools.
I should have kept these changes separate, but I didn't. Change (1)
affects mainly
TcRnDriver, HscMain, CompMan, InteractiveUI
whereas change (3) is more wide ranging.
simonpj [Mon, 16 Aug 2004 09:51:20 +0000 (09:51 +0000)]
[project @ 2004-08-16 09:51:20 by simonpj]
Commments only
simonpj [Mon, 16 Aug 2004 09:41:19 +0000 (09:41 +0000)]
[project @ 2004-08-16 09:41:19 by simonpj]
Fix problem with :i for (:)
simonmar [Mon, 16 Aug 2004 09:31:50 +0000 (09:31 +0000)]
[project @ 2004-08-16 09:31:50 by simonmar]
#ifdefery to work around change in name of config.h.
panne [Mon, 16 Aug 2004 07:24:29 +0000 (07:24 +0000)]
[project @ 2004-08-16 07:24:25 by panne]
Correct DocBook XML now
panne [Mon, 16 Aug 2004 06:44:47 +0000 (06:44 +0000)]
[project @ 2004-08-16 06:44:47 by panne]
Fixed default font-family, color, and background. It contained a typo
and didn't work for chunked documentation.
panne [Sun, 15 Aug 2004 20:38:45 +0000 (20:38 +0000)]
[project @ 2004-08-15 20:37:22 by panne]
Started to convert the users guide to DocBook XML. Not yet finished, there are
still *tons* of misplaced indexterms, but some sensible documentation can
already be generated.
panne [Sun, 15 Aug 2004 20:33:05 +0000 (20:33 +0000)]
[project @ 2004-08-15 20:32:47 by panne]
Converted the building guide to DocBook XML
panne [Sun, 15 Aug 2004 20:28:08 +0000 (20:28 +0000)]
[project @ 2004-08-15 20:28:02 by panne]
<fanfare>Finally: Support for DocBook XML!</fanfare>
After endless frustrating hours, I came to the conclusion that using (Open)Jade
for DocBook XML is virtually impossible, there are *tons* of problems with it:
Wildly differing paths, incorrect stylesheets, broken catalogs at funny places,
broken wrapper scripts, missing support on Cygwin etc. >:-P * * *
So we follow the ubiquitous XSL hype and use xsltproc + DocBook XSL stylesheets
to transform DocBook XML to HTML and FO. From FO there are two routes to PDF and
PostScript: Either via FOP (preferred) or via PassiveTeX. Validation can be done
via xmllint using the new make target "validate". When PassiveTeX is available,
DVI can be generated, too. A new make target "no-chunks-html" is available for
generating an all-in-one HTML document. Currently there is no way to generate
plain text or RTF, but at least the former could easily be added.
Generating HTML works out-of-the-box on Cygwin now, but you will have to install
FOP for other formats, because there seems to be no standard package for it.
The HTML appearance can be controlled via CSS, but the current location of the
master stylesheet below fptools/mk is a bit debatable. Better suggestions are
welcome.
Currently there is still support for SGML documents, but it will be dropped when
all documents are converted to DocBook XML. The build system is complex enough
already with the support for a *single* kind of DocBook...
simonmar [Fri, 13 Aug 2004 14:22:16 +0000 (14:22 +0000)]
[project @ 2004-08-13 14:22:16 by simonmar]
Mention that this doc is out of date. It's pretty huge, so I'm not
going to update it right now.
simonmar [Fri, 13 Aug 2004 13:59:12 +0000 (13:59 +0000)]
[project @ 2004-08-13 13:59:12 by simonmar]
Fixes to previous
simonmar [Fri, 13 Aug 2004 13:57:08 +0000 (13:57 +0000)]
[project @ 2004-08-13 13:57:04 by simonmar]
Various fixes and removal of dead code.
simonmar [Fri, 13 Aug 2004 13:39:29 +0000 (13:39 +0000)]
[project @ 2004-08-13 13:39:29 by simonmar]
forgot to add this file
simonmar [Fri, 13 Aug 2004 13:30:44 +0000 (13:30 +0000)]
[project @ 2004-08-13 13:30:44 by simonmar]
config.h ==> ghcconfig.h