ghc-hetmet.git
21 years ago[project @ 2002-07-30 17:35:59 by sof]
sof [Tue, 30 Jul 2002 17:35:59 +0000 (17:35 +0000)]
[project @ 2002-07-30 17:35:59 by sof]
wibble

21 years ago[project @ 2002-07-30 11:49:17 by simonpj]
simonpj [Tue, 30 Jul 2002 11:49:18 +0000 (11:49 +0000)]
[project @ 2002-07-30 11:49:17 by simonpj]
Wibble to yestdays commit re module versioning

21 years ago[project @ 2002-07-30 03:42:56 by sof]
sof [Tue, 30 Jul 2002 03:42:56 +0000 (03:42 +0000)]
[project @ 2002-07-30 03:42:56 by sof]
hc-file-bundle:
  * only include the .hsc-derived .hs files that exist in the build tree.
  * updated to include current happy-derived .hs files

21 years ago[project @ 2002-07-29 16:12:07 by simonpj]
simonpj [Mon, 29 Jul 2002 16:12:08 +0000 (16:12 +0000)]
[project @ 2002-07-29 16:12:07 by simonpj]
** MERGE TO STABLE **

1. Make TidyPgm forget IdInfo for exported things.  This is
   really important for the recompilation checker; see the
   commment with TidyPgm.tidyTopIdInfo

   Fixes a bug reported by Sigbjorn.

2. Make CoreToStg more robust, by avoiding the duplicate
   calculation of update flag for top-level closures

21 years ago[project @ 2002-07-29 16:08:20 by simonpj]
simonpj [Mon, 29 Jul 2002 16:08:20 +0000 (16:08 +0000)]
[project @ 2002-07-29 16:08:20 by simonpj]
Comment only

21 years ago[project @ 2002-07-29 13:19:52 by simonpj]
simonpj [Mon, 29 Jul 2002 13:19:53 +0000 (13:19 +0000)]
[project @ 2002-07-29 13:19:52 by simonpj]
** MERGE TO STABLE **

Fix an alpha-renaming bug in hoistForAlls

21 years ago[project @ 2002-07-29 12:22:37 by simonpj]
simonpj [Mon, 29 Jul 2002 12:22:38 +0000 (12:22 +0000)]
[project @ 2002-07-29 12:22:37 by simonpj]
*** MERGE TO STABLE BRANCH ***

Surprisingly large delta to make rebindable names work properly.
I was sloppily not checking the type of the user-supplied name,
and Ashley Yakeley's first experiment showed up the problem!

Solution: typechecker has to check both the 'standard' name and
the 'user' name and check the latter has a type compatible with the
former.

The main comment is with Inst.tcSyntaxName (a new function).

21 years ago[project @ 2002-07-29 11:22:31 by simonmar]
simonmar [Mon, 29 Jul 2002 11:22:31 +0000 (11:22 +0000)]
[project @ 2002-07-29 11:22:31 by simonmar]
Back out previous commit; -static is on by default and we don't want
to always pass -static to the linker.

21 years ago[project @ 2002-07-29 10:50:43 by simonmar]
simonmar [Mon, 29 Jul 2002 10:50:44 +0000 (10:50 +0000)]
[project @ 2002-07-29 10:50:43 by simonmar]
Type variables created by the typechecker didn't have the correct
NameSpace: they were in the Var namespace rather than the TyVar
namespace, which can lead to strange warnings about quantified type
variables being not mentioned in the type when DEBUG is on.

Name:
- added mkSystemNameEncoded for use when the string
  is already encoded (saves re-encoding the string every
  time)

- added mkSystemTvNameEncoded for making a type variable
  name, as above

Var:
- use mkSystemTvNameEncoded when making type variables

Id:
- add mkSysLocalUnencoded for the (rare) case when
  the string needs encoding

TcMType:
- use mkSystemTvNameEncoded rather than mkSystemName for
  making type variables

SetLevels:
- use mkSysLocalUnencoded since the names generated here
  need encoding.

21 years ago[project @ 2002-07-29 10:42:29 by simonmar]
simonmar [Mon, 29 Jul 2002 10:42:29 +0000 (10:42 +0000)]
[project @ 2002-07-29 10:42:29 by simonmar]
Add -static to the linker command line when -static is passed to GHC.

At some point we might want a way to say that Haskell libraries should
be linked statically but everything else should be linked as normal,
but since we aren't really supporting dynamic Haskell libraries at
this time, we don't need to address that yet.

21 years ago[project @ 2002-07-29 09:11:04 by simonpj]
simonpj [Mon, 29 Jul 2002 09:11:04 +0000 (09:11 +0000)]
[project @ 2002-07-29 09:11:04 by simonpj]
More informative crash in rdrNameModule

21 years ago[project @ 2002-07-28 14:10:03 by krasimir]
krasimir [Sun, 28 Jul 2002 14:10:03 +0000 (14:10 +0000)]
[project @ 2002-07-28 14:10:03 by krasimir]
Documentation for #size

21 years ago[project @ 2002-07-28 13:55:32 by krasimir]
krasimir [Sun, 28 Jul 2002 13:55:32 +0000 (13:55 +0000)]
[project @ 2002-07-28 13:55:32 by krasimir]
add `size` macro

21 years ago[project @ 2002-07-28 02:31:11 by sof]
sof [Sun, 28 Jul 2002 02:31:11 +0000 (02:31 +0000)]
[project @ 2002-07-28 02:31:11 by sof]
include stdlib.h (to get at NULL)

21 years ago[project @ 2002-07-26 09:35:46 by simonmar]
simonmar [Fri, 26 Jul 2002 09:35:46 +0000 (09:35 +0000)]
[project @ 2002-07-26 09:35:46 by simonmar]
Always return 8-byte-aligned memory from arenaAlloc().  Fixes problems
with profiling on sparc-sun-solaris2, and might fix problems with
Windows too.

MERGE

21 years ago[project @ 2002-07-26 03:06:58 by sof]
sof [Fri, 26 Jul 2002 03:06:58 +0000 (03:06 +0000)]
[project @ 2002-07-26 03:06:58 by sof]
interactiveLoop{mingw32}: always show prompt under mingw.

hIsTerminalDevice returns True iff stdin is connected to a Console
under Win32. Which it is when running in a command shell
(DOS,bash etc.), but Emacs sub-shells don't get a Console of their
own when invoked. So, just disable this feature (whose motivation
somewhat escapes me.)

21 years ago[project @ 2002-07-25 18:36:59 by sof]
sof [Thu, 25 Jul 2002 18:37:00 +0000 (18:37 +0000)]
[project @ 2002-07-25 18:36:59 by sof]
Expose printAllThreads() in non-DEBUG builds;
of some use when debugging ConcHask code and
want a dump of the current state of the system's
threads.

Not provided via a library, so to use, do

 foreign import call unsafe printAllThreads :: IO ()

21 years ago[project @ 2002-07-25 14:47:30 by simonmar]
simonmar [Thu, 25 Jul 2002 14:47:30 +0000 (14:47 +0000)]
[project @ 2002-07-25 14:47:30 by simonmar]
Add -ddump-minimal-imports (not sure why this was missing)

MERGE

21 years ago[project @ 2002-07-24 18:18:13 by sof]
sof [Wed, 24 Jul 2002 18:18:13 +0000 (18:18 +0000)]
[project @ 2002-07-24 18:18:13 by sof]
warning removal

21 years ago[project @ 2002-07-24 09:47:49 by simonmar]
simonmar [Wed, 24 Jul 2002 09:47:49 +0000 (09:47 +0000)]
[project @ 2002-07-24 09:47:49 by simonmar]
Documentation for #offset

21 years ago[project @ 2002-07-24 09:44:37 by simonmar]
simonmar [Wed, 24 Jul 2002 09:44:37 +0000 (09:44 +0000)]
[project @ 2002-07-24 09:44:37 by simonmar]
Add #offset for just grabbing the byte offset of a struct field.

21 years ago[project @ 2002-07-24 06:27:01 by krasimir]
krasimir [Wed, 24 Jul 2002 06:27:01 +0000 (06:27 +0000)]
[project @ 2002-07-24 06:27:01 by krasimir]
add GhcLibsWithObjectIO

21 years ago[project @ 2002-07-24 03:38:58 by sof]
sof [Wed, 24 Jul 2002 03:38:58 +0000 (03:38 +0000)]
[project @ 2002-07-24 03:38:58 by sof]
awaitEvent: if select() reports EBADF,
always unblock all waiting threads, even if
the prior invocation of select() also
elicited an EBADF.

The 'smart' that was there previously runs
the risk of working against us (if the EBADFs are
coming from different fds), so the above
scheme is preferable (and simpler.)

21 years ago[project @ 2002-07-23 22:42:17 by krasimir]
krasimir [Tue, 23 Jul 2002 22:42:18 +0000 (22:42 +0000)]
[project @ 2002-07-23 22:42:17 by krasimir]
add --enable-objectio configuration option

21 years ago[project @ 2002-07-23 20:03:48 by ken]
ken [Tue, 23 Jul 2002 20:03:48 +0000 (20:03 +0000)]
[project @ 2002-07-23 20:03:48 by ken]
Change "rm" in example makefile to "rm -f",
in case there is no .o file to remove

21 years ago[project @ 2002-07-23 14:58:16 by simonpj]
simonpj [Tue, 23 Jul 2002 14:58:16 +0000 (14:58 +0000)]
[project @ 2002-07-23 14:58:16 by simonpj]
Use tcLookupId, not tcLookupGlobalId, in Inst.newMethodFromName

    This really only affects the behaviour with -fno-implicit-prelude

*** MERGE TO STABLE BRANCH ***

21 years ago[project @ 2002-07-23 14:57:11 by simonpj]
simonpj [Tue, 23 Jul 2002 14:57:11 +0000 (14:57 +0000)]
[project @ 2002-07-23 14:57:11 by simonpj]
a) Correct precedence for application in derived
Read/Show

  b) Spaces round '=' in derived Show for records

*** MERGE TO STABLE BRANCH ***

21 years ago[project @ 2002-07-23 13:30:12 by sof]
sof [Tue, 23 Jul 2002 13:30:12 +0000 (13:30 +0000)]
[project @ 2002-07-23 13:30:12 by sof]
find ~=> $(FIND)

21 years ago[project @ 2002-07-23 11:25:27 by simonmar]
simonmar [Tue, 23 Jul 2002 11:25:27 +0000 (11:25 +0000)]
[project @ 2002-07-23 11:25:27 by simonmar]
if $(STAMP_PKG_CONF) is non-null, then wait for it before generating
dependencies.  This avoids a race with 'make -j' where package.conf
could get modified while the compiler is reading it.

21 years ago[project @ 2002-07-23 11:23:55 by simonmar]
simonmar [Tue, 23 Jul 2002 11:23:55 +0000 (11:23 +0000)]
[project @ 2002-07-23 11:23:55 by simonmar]
Don't re-run ghc-pkg if the package conf files haven't changed.  We
use a stamp file rather than adding an explicit dependency on
ghc/driver/package.conf{,.inplace} for reasons explained in a comment.

21 years ago[project @ 2002-07-23 10:12:01 by simonmar]
simonmar [Tue, 23 Jul 2002 10:12:01 +0000 (10:12 +0000)]
[project @ 2002-07-23 10:12:01 by simonmar]
Use $(HADDOCK) rather than $(HADDOCK_INPLACE)

21 years ago[project @ 2002-07-23 10:10:28 by simonmar]
simonmar [Tue, 23 Jul 2002 10:10:28 +0000 (10:10 +0000)]
[project @ 2002-07-23 10:10:28 by simonmar]
Add $(HADDOCK) pointing to the Haddock to use (src tree or installed)

21 years ago[project @ 2002-07-23 10:09:51 by simonmar]
simonmar [Tue, 23 Jul 2002 10:09:51 +0000 (10:09 +0000)]
[project @ 2002-07-23 10:09:51 by simonmar]
- Invoke FPTOOLS_HADDOCK to find an installed Haddock
- Add an option --use-src-tree-haddock to mirror --use-src-tree-happy

21 years ago[project @ 2002-07-23 10:08:58 by simonmar]
simonmar [Tue, 23 Jul 2002 10:08:58 +0000 (10:08 +0000)]
[project @ 2002-07-23 10:08:58 by simonmar]
Add FPTOOLS_HADDOCK to detect an installed version of Haddock.

21 years ago[project @ 2002-07-22 15:32:41 by stolz]
stolz [Mon, 22 Jul 2002 15:32:42 +0000 (15:32 +0000)]
[project @ 2002-07-22 15:32:41 by stolz]
Last bunch of OpenBSD-implicated autoconf-changes
from Donald Bruce Stewart <dons@cse.unsw.edu.au>.

21 years ago[project @ 2002-07-22 14:29:13 by simonpj]
simonpj [Mon, 22 Jul 2002 14:29:13 +0000 (14:29 +0000)]
[project @ 2002-07-22 14:29:13 by simonpj]
Add a note about pattern-matching with -fno-implicit-prelude

21 years ago[project @ 2002-07-22 10:02:13 by simonmar]
simonmar [Mon, 22 Jul 2002 10:02:13 +0000 (10:02 +0000)]
[project @ 2002-07-22 10:02:13 by simonmar]
Add a comment to note that Stg.h must be included before system
headers (this was always the case, but is now more important because
it is often necessary to #include system headers where it wasn't
previously).

21 years ago[project @ 2002-07-21 11:46:34 by panne]
panne [Sun, 21 Jul 2002 11:46:34 +0000 (11:46 +0000)]
[project @ 2002-07-21 11:46:34 by panne]
Long explanation for small commit:

With the recent reorganization of #includes, things get a little bit
fragile: When gcc with -O is used, glibc's <stdio.h> defines a few
inline functions (see <bits/stdio.h>), and "Stg.h" defines some global
variables which reside in registers. But the latter must happen
*before* any function definition has been seen, otherwise the
generated code could be invalid. Consequently gcc complains like:

   In file included from Stg.h:182,
                    from mkNativeHdr.c:12:
   Regs.h:293: global register variable follows a function definition
   Regs.h:302: global register variable follows a function definition

The solution is quite simple: Always #include "Stg.h" *before* any
system headers.

21 years ago[project @ 2002-07-20 05:37:10 by dons]
dons [Sat, 20 Jul 2002 05:37:10 +0000 (05:37 +0000)]
[project @ 2002-07-20 05:37:10 by dons]
OpenBSD needs #include <sys/types.h> for msghdr compile tests.

21 years ago[project @ 2002-07-19 18:45:21 by sof]
sof [Fri, 19 Jul 2002 18:45:21 +0000 (18:45 +0000)]
[project @ 2002-07-19 18:45:21 by sof]
forkProcess():
 be less ambitious, and don't kill any main_threads.
 Killing them, and possibly replacing them on the
 main_threads with the current one, turned out to
 run into problems of its own (see comments.)

 The hope/wish is that the current behaviour of
 forkProcess will suffice.

21 years ago[project @ 2002-07-19 11:48:20 by simonmar]
simonmar [Fri, 19 Jul 2002 11:48:20 +0000 (11:48 +0000)]
[project @ 2002-07-19 11:48:20 by simonmar]
Remove the check for >4 args when doing a foreign import "wrapper" on
Sparc: we support unlimited arguments now (from Sven Panne).

21 years ago[project @ 2002-07-19 11:47:30 by simonmar]
simonmar [Fri, 19 Jul 2002 11:47:30 +0000 (11:47 +0000)]
[project @ 2002-07-19 11:47:30 by simonmar]
Code to make the general case of createAdjustor() work on Sparc, from
Sven Panne.  Previously only 4 args were supported.

21 years ago[project @ 2002-07-19 11:46:31 by simonmar]
simonmar [Fri, 19 Jul 2002 11:46:31 +0000 (11:46 +0000)]
[project @ 2002-07-19 11:46:31 by simonmar]
Sparc NCG fix from Sven Panne: 8-byte align the stack ptr when doing a ccall.

21 years ago[project @ 2002-07-19 00:06:05 by sof]
sof [Fri, 19 Jul 2002 00:06:05 +0000 (00:06 +0000)]
[project @ 2002-07-19 00:06:05 by sof]
forkProcess():
 - fix bug which left run_queue_tl in a bad state.
 - be better behaved wrt 'main threads', i.e.,
   if the killing thread isn't the main thread,
   make sure it's hooked up to main_threads +
   correctly signal the completion/killing of
   any main threads.

21 years ago[project @ 2002-07-18 13:12:45 by lewie]
lewie [Thu, 18 Jul 2002 13:12:45 +0000 (13:12 +0000)]
[project @ 2002-07-18 13:12:45 by lewie]
%files for the profiling rpm was missing .p_hi files that were nested deeply.
Fixed by calculating %files for prof rpm similar to how it is calculated
for the main rpm.

21 years ago[project @ 2002-07-18 09:16:12 by simonmar]
simonmar [Thu, 18 Jul 2002 09:16:13 +0000 (09:16 +0000)]
[project @ 2002-07-18 09:16:12 by simonmar]
Back off from including the interface file version in the module init
label - we might not recompile modules which depend on the current
one, even if its version changes.  Thanks to Sigbjorn for pointing
this out.

We still include the way, however, so we'll still catch cases of
linking modules compiled in different ways.

21 years ago[project @ 2002-07-18 09:13:10 by simonmar]
simonmar [Thu, 18 Jul 2002 09:13:10 +0000 (09:13 +0000)]
[project @ 2002-07-18 09:13:10 by simonmar]
Remove a bogus test

21 years ago[project @ 2002-07-18 09:12:34 by simonmar]
simonmar [Thu, 18 Jul 2002 09:12:36 +0000 (09:12 +0000)]
[project @ 2002-07-18 09:12:34 by simonmar]
#include wibbles

21 years ago[project @ 2002-07-18 09:12:03 by simonmar]
simonmar [Thu, 18 Jul 2002 09:12:03 +0000 (09:12 +0000)]
[project @ 2002-07-18 09:12:03 by simonmar]
cosmetic only

21 years ago[project @ 2002-07-18 06:07:37 by sof]
sof [Thu, 18 Jul 2002 06:07:37 +0000 (06:07 +0000)]
[project @ 2002-07-18 06:07:37 by sof]
EXIT_{FAILURE,SUCCESS}: it's time to let the re-definition of these age-old defines go..

21 years ago[project @ 2002-07-18 06:05:29 by sof]
sof [Thu, 18 Jul 2002 06:05:31 +0000 (06:05 +0000)]
[project @ 2002-07-18 06:05:29 by sof]
more include tweaking

21 years ago[project @ 2002-07-17 19:26:49 by krasimir]
krasimir [Wed, 17 Jul 2002 19:26:49 +0000 (19:26 +0000)]
[project @ 2002-07-17 19:26:49 by krasimir]
ObjectIO link

21 years ago[project @ 2002-07-17 13:49:15 by simonmar]
simonmar [Wed, 17 Jul 2002 13:49:15 +0000 (13:49 +0000)]
[project @ 2002-07-17 13:49:15 by simonmar]
Turn off prompt for non-TTY input (non-readline case)

21 years ago[project @ 2002-07-17 09:21:48 by simonmar]
simonmar [Wed, 17 Jul 2002 09:21:51 +0000 (09:21 +0000)]
[project @ 2002-07-17 09:21:48 by simonmar]
Remove most #includes of system headers from Stg.h, and instead
#include any required headers directly in each RTS source file.

The idea is to (a) reduce namespace pollution from system headers that
we don't need, (c) be clearer about dependencies on system things in
the RTS, and (c) improve via-C compilation times (maybe).

In practice though, HsBase.h #includes everything anyway, so the
difference from the point of view of .hc source is minimal.  However,
this makes it easier to move to zero-includes if we wanted to (see
discussion on the FFI list; I'm still not sure that's possible but
at least this is a step in the right direction).

21 years ago[project @ 2002-07-17 09:14:27 by simonmar]
simonmar [Wed, 17 Jul 2002 09:14:27 +0000 (09:14 +0000)]
[project @ 2002-07-17 09:14:27 by simonmar]
turn off -Wcast-align, it generates gobs of complaints on Sparc

21 years ago[project @ 2002-07-17 08:26:44 by simonmar]
simonmar [Wed, 17 Jul 2002 08:26:44 +0000 (08:26 +0000)]
[project @ 2002-07-17 08:26:44 by simonmar]
oops, missed one instance of __stginit_GHCziPrim (I killed it yesterday)

21 years ago[project @ 2002-07-16 22:26:49 by lewie]
lewie [Tue, 16 Jul 2002 22:26:49 +0000 (22:26 +0000)]
[project @ 2002-07-16 22:26:49 by lewie]
Fix typo in explanation of "What AbsBinds means" just to prove that I'm
not deadweight on the GHC committers list ;-)

21 years ago[project @ 2002-07-16 15:07:15 by simonmar]
simonmar [Tue, 16 Jul 2002 15:07:15 +0000 (15:07 +0000)]
[project @ 2002-07-16 15:07:15 by simonmar]
Silly me, the version number in the interface isn't correct until
after mkFinalIface, so don't grab it until then.

21 years ago[project @ 2002-07-16 14:56:08 by simonmar]
simonmar [Tue, 16 Jul 2002 14:56:11 +0000 (14:56 +0000)]
[project @ 2002-07-16 14:56:08 by simonmar]
Implement a primitive failsafe mechanism for protecting against
linking inconsistent object files.  The idea is that if object files
which were compiled in the wrong order (non-dependency order) or
compiled in different ways (eg. profiled vs. non-profiled) are linked
together, a link error will result.

This is achieved by adding the module version and the way to the
module init label.  For example, previously the init label for a
module Foo was named

__stginit_Foo

now it is named

__stginit_Foo_<version>_<way>

where <version> is the module version of Foo (same as the version in
the interface file), and <way> is the current way (or empty).

We also have to have a way to refer to the old plain init label, for
using as the argument to shutdownHaskell() in a program using foreign
exports.  So the old label now points to a jump instruction which
transfers control to the new init code.

21 years ago[project @ 2002-07-16 14:49:38 by simonmar]
simonmar [Tue, 16 Jul 2002 14:49:38 +0000 (14:49 +0000)]
[project @ 2002-07-16 14:49:38 by simonmar]
comment fix

21 years ago[project @ 2002-07-16 12:05:37 by simonmar]
simonmar [Tue, 16 Jul 2002 12:05:37 +0000 (12:05 +0000)]
[project @ 2002-07-16 12:05:37 by simonmar]
un-rot one transformation on x86: we normally transform

movl $_blah, %eax
jmp  *%eax

into simply

jmp _blah

but the pattern had rotted w.r.t. gcc so this was no longer applying.
Should reduce code size measurably.

MERGE TO STABLE

21 years ago[project @ 2002-07-16 10:58:16 by simonmar]
simonmar [Tue, 16 Jul 2002 10:58:16 +0000 (10:58 +0000)]
[project @ 2002-07-16 10:58:16 by simonmar]
Remove DLL_IMPORT from the two closure declarations in this file,
because otherwise the file is not standalone.

Doing the right thing doesn't seem easy, because we have to get the
right value of DONT_WANT_WIN32_DLLS from somewhere.  Anyway if/when
DLL support is revived we'll have to revisit this.

MERGE TO STABLE

21 years ago[project @ 2002-07-16 10:51:12 by simonmar]
simonmar [Tue, 16 Jul 2002 10:51:12 +0000 (10:51 +0000)]
[project @ 2002-07-16 10:51:12 by simonmar]
The restore instruction on Sparc apparently has arguments under GCC
3.1, which caused one of the patterns to break in the mangler.

I can now run simple programs compiled with GHC on Sparc using GCC
3.1, so hopefully this fixes it.

MERGE TO STABLE (and the previous one).

21 years ago[project @ 2002-07-16 10:17:37 by simonmar]
simonmar [Tue, 16 Jul 2002 10:17:37 +0000 (10:17 +0000)]
[project @ 2002-07-16 10:17:37 by simonmar]
GCC 3.1 on Sparc now uses '.long'.

21 years ago[project @ 2002-07-16 07:04:49 by stolz]
stolz [Tue, 16 Jul 2002 07:04:50 +0000 (07:04 +0000)]
[project @ 2002-07-16 07:04:49 by stolz]
The <dlfcn.h> constants RTLD_NOW, RTLD_GLOBAL, RTLD_LOCAL
are not defined in the OpenBSD implementation of the dl library.

dons@cse.unsw.edu.au (Donald Bruce Stewart)

21 years ago[project @ 2002-07-16 06:42:04 by sof]
sof [Tue, 16 Jul 2002 06:42:04 +0000 (06:42 +0000)]
[project @ 2002-07-16 06:42:04 by sof]
Treat ';' and '{' as word separators, so that from
input like like "{import Foo" and ";;;;import Foo",
the 'Foo' imports are identified.

21 years ago[project @ 2002-07-15 16:43:34 by panne]
panne [Mon, 15 Jul 2002 16:43:34 +0000 (16:43 +0000)]
[project @ 2002-07-15 16:43:34 by panne]
* Solaris' quite spartanic /bin/sh doesn't know about the '!' keyword,
  so let's simply reverse the operator in the test instead.

* The FPTOOLS_SEARCH_LIBS macro expects a function without any
  arguments, but glXChooseVisual *does* have arguments. glXWaitX is a
  better test for GLX libs.

MERGE TO STABLE

21 years ago[project @ 2002-07-15 14:49:17 by simonmar]
simonmar [Mon, 15 Jul 2002 14:49:17 +0000 (14:49 +0000)]
[project @ 2002-07-15 14:49:17 by simonmar]
Unbreak the registering of foreign exports as stable pointers, which
was brokwn in rev. 1.64.  This will eventually cause any program that
uses the same foreign export repeatedly to seg fault.  Dunno why we
don't have a test for this.

*sigh* the first bad bug in 5.04

MERGE TO STABLE

21 years ago[project @ 2002-07-15 08:41:46 by simonmar]
simonmar [Mon, 15 Jul 2002 08:41:46 +0000 (08:41 +0000)]
[project @ 2002-07-15 08:41:46 by simonmar]
Don't declare the StgClosures 'const' (they aren't declared 'const' in
generated code).

21 years ago[project @ 2002-07-15 08:41:02 by simonmar]
simonmar [Mon, 15 Jul 2002 08:41:02 +0000 (08:41 +0000)]
[project @ 2002-07-15 08:41:02 by simonmar]
Static closures are not declared 'const' in generated code, so don't
declare them 'const' in here.

Spotted-by: GCC 3.1

21 years ago[project @ 2002-07-15 07:24:58 by chak]
chak [Mon, 15 Jul 2002 07:24:58 +0000 (07:24 +0000)]
[project @ 2002-07-15 07:24:58 by chak]
Let `configure' know about the "m68k-unknown-openbsd" architecture.
Patch contributed by Donald Stewart <dons@cse.unsw.edu.au>.

21 years ago[project @ 2002-07-12 17:20:57 by sof]
sof [Fri, 12 Jul 2002 17:20:57 +0000 (17:20 +0000)]
[project @ 2002-07-12 17:20:57 by sof]
mkdll: in installed mode, invoke the 'dllwrap' that's distributed with GHC,
and feed it the right options.

Merge to STABLE.

21 years ago[project @ 2002-07-12 13:42:22 by simonpj]
simonpj [Fri, 12 Jul 2002 13:42:22 +0000 (13:42 +0000)]
[project @ 2002-07-12 13:42:22 by simonpj]
comments

21 years ago[project @ 2002-07-12 04:45:27 by sof]
sof [Fri, 12 Jul 2002 04:45:27 +0000 (04:45 +0000)]
[project @ 2002-07-12 04:45:27 by sof]
suggest compiling up the DLL wrapper .c file using 'ghc' rather than 'gcc'

21 years ago[project @ 2002-07-12 02:34:08 by chak]
chak [Fri, 12 Jul 2002 02:34:08 +0000 (02:34 +0000)]
[project @ 2002-07-12 02:34:08 by chak]
Updates for 5.04

21 years ago[project @ 2002-07-12 01:28:10 by chak]
chak [Fri, 12 Jul 2002 01:28:10 +0000 (01:28 +0000)]
[project @ 2002-07-12 01:28:10 by chak]
Added DocBook catalog location for OpenBSD as suggested by
Donald Stewart <dons@cse.unsw.edu.au>

21 years ago[project @ 2002-07-11 17:19:22 by sof]
sof [Thu, 11 Jul 2002 17:19:22 +0000 (17:19 +0000)]
[project @ 2002-07-11 17:19:22 by sof]
Use of InstallShield is a thing of the past

21 years ago[project @ 2002-07-11 11:24:31 by panne]
panne [Thu, 11 Jul 2002 11:24:31 +0000 (11:24 +0000)]
[project @ 2002-07-11 11:24:31 by panne]
Automagically insert links to the documentation of the OpenGL/GLUT
packages iff --enable-hopengl is used

21 years ago[project @ 2002-07-11 10:44:37 by panne]
panne [Thu, 11 Jul 2002 10:44:37 +0000 (10:44 +0000)]
[project @ 2002-07-11 10:44:37 by panne]
Corrected and normalized HTML

21 years ago[project @ 2002-07-11 09:44:41 by simonmar]
simonmar [Thu, 11 Jul 2002 09:44:41 +0000 (09:44 +0000)]
[project @ 2002-07-11 09:44:41 by simonmar]
Fix a couple of links in the announcement

21 years ago[project @ 2002-07-11 06:52:23 by ken]
ken [Thu, 11 Jul 2002 06:52:23 +0000 (06:52 +0000)]
[project @ 2002-07-11 06:52:23 by ken]
Perhaps defining _REENTRANT when gcc-compiling for the alpha would
help with RTS threading problems

21 years ago[project @ 2002-07-10 16:33:09 by sof]
sof [Wed, 10 Jul 2002 16:33:09 +0000 (16:33 +0000)]
[project @ 2002-07-10 16:33:09 by sof]
printDump,printErrs,printSDoc: flush stdout and stderr

21 years ago[project @ 2002-07-10 13:07:42 by simonpj]
simonpj [Wed, 10 Jul 2002 13:07:42 +0000 (13:07 +0000)]
[project @ 2002-07-10 13:07:42 by simonpj]
Fix trivial bug in WorkWrap that killed all INLINE pragmas!  Merge to STABLE

21 years ago[project @ 2002-07-10 13:06:35 by simonpj]
simonpj [Wed, 10 Jul 2002 13:06:35 +0000 (13:06 +0000)]
[project @ 2002-07-10 13:06:35 by simonpj]
Improve error message; merge to STABLE

21 years ago[project @ 2002-07-10 09:28:54 by simonmar]
simonmar [Wed, 10 Jul 2002 09:28:56 +0000 (09:28 +0000)]
[project @ 2002-07-10 09:28:54 by simonmar]
Fix a GC bug.  In a "large block", only the block descriptor for the
head of the block has the fields step, gen_no and flags set.  So
whenever we want one of these fields in the descriptor for a random
object anywhere in the large block, we have to check whether it is in
the head block, and if not follow the link to the head block
descriptor.

evacuate() was doing this correctly, but isAlive() wasn't (and
goodness knows what other places are broken in this way - I identified
several other possible cases of the same bug).

So to try to make things more robust, when we allocate a large block
we now initialise the step, gen_no, and flags fields in the descriptor
for *every* sub-block, not just the first one.  Now, as long as you
only want one of these fields from the descriptor, there's no need to
try to find the block head.  evacuate() gets minutely faster, and
hopefully multiple obscure bugs are fixed by this.

21 years ago[project @ 2002-07-10 08:39:00 by simonmar]
simonmar [Wed, 10 Jul 2002 08:39:00 +0000 (08:39 +0000)]
[project @ 2002-07-10 08:39:00 by simonmar]
change #ifdef USING_LIBBFD to #if defined(DEBUG) && defined(HAVE_LIBBFD).

21 years ago[project @ 2002-07-10 08:34:19 by simonmar]
simonmar [Wed, 10 Jul 2002 08:34:19 +0000 (08:34 +0000)]
[project @ 2002-07-10 08:34:19 by simonmar]
Fix a bug in the handling of libbfd - we should be checking for DEBUG
in $(GhcRtsHcOpts) not $(GhcHcOpts), and we can get HAVE_LIBBFD from
config.h so there's no need to unconditionally define USING_LIBBFD.

21 years ago[project @ 2002-07-09 20:44:24 by sof]
sof [Tue, 9 Jul 2002 20:44:24 +0000 (20:44 +0000)]
[project @ 2002-07-09 20:44:24 by sof]
awaitEvent: better handling of EBADFs, i.e., don't
unconditionally barf() and exit if select() reports
an EBADF. See source code comments for details, but
in short, we attempt to unblock all threads to handle
the error condition before bailing out.

If only select() would indicate which file descriptor
that was the bad one.

(There's no good reason why select() errors other
than EBADF could also be handled this way, but let's
focus on it for now..)

21 years ago[project @ 2002-07-09 18:02:48 by sof]
sof [Tue, 9 Jul 2002 18:02:48 +0000 (18:02 +0000)]
[project @ 2002-07-09 18:02:48 by sof]
gcc versionitis wrt gcc -E -MM .. usage:

2.95.<wurble> is silent on stdout if -MM is used, 2.96 ain't
(even when -o is used..hmm.) 2.95 (on mingw32) even fails if
you try to redirect the output.

So, be more accepting in first trying to run CPP with a redirect,
and if that fails, try without.

21 years ago[project @ 2002-07-09 15:57:09 by sof]
sof [Tue, 9 Jul 2002 15:57:09 +0000 (15:57 +0000)]
[project @ 2002-07-09 15:57:09 by sof]
merge rev. 1.1.6.1

21 years ago[project @ 2002-07-09 08:19:14 by simonpj]
simonpj [Tue, 9 Jul 2002 08:19:14 +0000 (08:19 +0000)]
[project @ 2002-07-09 08:19:14 by simonpj]
Improve error message

*** MERGE TO STABLE BRANCH ***

21 years ago[project @ 2002-07-09 06:16:14 by panne]
panne [Tue, 9 Jul 2002 06:16:15 +0000 (06:16 +0000)]
[project @ 2002-07-09 06:16:14 by panne]
Fixed my email address

21 years ago[project @ 2002-07-08 14:38:26 by simonpj]
simonpj [Mon, 8 Jul 2002 14:38:26 +0000 (14:38 +0000)]
[project @ 2002-07-08 14:38:26 by simonpj]
Remove duplicate line in Linker.c

*** MERGE TO STABLE BRANCH ***

21 years ago[project @ 2002-07-08 13:39:10 by simonmar]
simonmar [Mon, 8 Jul 2002 13:39:10 +0000 (13:39 +0000)]
[project @ 2002-07-08 13:39:10 by simonmar]
HEAD is now 5.05

21 years ago[project @ 2002-07-06 10:14:31 by chak]
chak [Sat, 6 Jul 2002 10:14:31 +0000 (10:14 +0000)]
[project @ 2002-07-06 10:14:31 by chak]
Reverted to check for `null srcs' (instead of `null real_srcs') to determine
whether to throw "no input files".  Otherwise, something like

  ghc -o foo ObjectGeneratedByGHC.o

doesn't work anymore.

21 years ago[project @ 2002-07-05 20:30:38 by sof]
sof [Fri, 5 Jul 2002 20:30:38 +0000 (20:30 +0000)]
[project @ 2002-07-05 20:30:38 by sof]
isSourceFile: widened to also return True for .hc files

21 years ago[project @ 2002-07-05 19:05:41 by sof]
sof [Fri, 5 Jul 2002 19:05:41 +0000 (19:05 +0000)]
[project @ 2002-07-05 19:05:41 by sof]
5.04

21 years ago[project @ 2002-07-05 16:15:14 by sof]
sof [Fri, 5 Jul 2002 16:15:14 +0000 (16:15 +0000)]
[project @ 2002-07-05 16:15:14 by sof]
When validating the number of source files on the command-line wrt other
options, only consider source files. i.e., don't consider .a's and .o's
that inadvertently, and idempotently, might be present.

21 years ago[project @ 2002-07-05 01:23:45 by mthomas]
mthomas [Fri, 5 Jul 2002 01:23:45 +0000 (01:23 +0000)]
[project @ 2002-07-05 01:23:45 by mthomas]
Allow module names up to 50 chars wide without misalignment of the
profiling table.  For example: "Graphics.UI.ObjectIO.Process.Toolbar"
no longer messes up the output.

The output is now well over 80 chars wide now.

21 years ago[project @ 2002-07-04 13:06:28 by simonpj]
simonpj [Thu, 4 Jul 2002 13:06:28 +0000 (13:06 +0000)]
[project @ 2002-07-04 13:06:28 by simonpj]
Fix error message