ghc.git
11 years agoUse -O0 rather than the deprecated -Onot
Ian Lynagh [Sat, 14 Jun 2008 15:21:31 +0000 (15:21 +0000)] 
Use -O0 rather than the deprecated -Onot

11 years agoHandle errors in an OPTIONS pragma when preprocessing
Ian Lynagh [Sat, 14 Jun 2008 14:58:40 +0000 (14:58 +0000)] 
Handle errors in an OPTIONS pragma when preprocessing

11 years agoAllow flags to be marked as deprecated
Ian Lynagh [Sat, 14 Jun 2008 14:48:29 +0000 (14:48 +0000)] 
Allow flags to be marked as deprecated

11 years agoeta-reduce a Monad type synonym, so we can use it non-applied
Ian Lynagh [Sat, 14 Jun 2008 14:20:56 +0000 (14:20 +0000)] 
eta-reduce a Monad type synonym, so we can use it non-applied

11 years agoUse a proper datatype, rather than pairs, for flags
Ian Lynagh [Sat, 14 Jun 2008 13:38:48 +0000 (13:38 +0000)] 
Use a proper datatype, rather than pairs, for flags

11 years agoFix warnings in DriverMkDepend
Ian Lynagh [Sat, 14 Jun 2008 13:32:24 +0000 (13:32 +0000)] 
Fix warnings in DriverMkDepend

11 years agoFix whitespace in DriverMkDepend
Ian Lynagh [Sat, 14 Jun 2008 13:29:14 +0000 (13:29 +0000)] 
Fix whitespace in DriverMkDepend

11 years agoFix the last warnings in DynFlags
Ian Lynagh [Sat, 14 Jun 2008 12:50:33 +0000 (12:50 +0000)] 
Fix the last warnings in DynFlags
We might want to put the values initSysTools finds in their own type,
rather than having them flattened into DynFlags

11 years agoPass dynflags down to loadPackageConfig rather than using defaultDynFlags
Ian Lynagh [Sat, 14 Jun 2008 12:34:27 +0000 (12:34 +0000)] 
Pass dynflags down to loadPackageConfig rather than using defaultDynFlags

11 years agoMake initSysTools use the dflags it is passed, rather than defaultDynFlags
Ian Lynagh [Sat, 14 Jun 2008 12:28:34 +0000 (12:28 +0000)] 
Make initSysTools use the dflags it is passed, rather than defaultDynFlags

11 years agoRemove some unused bindings from HaddockLex
Ian Lynagh [Sat, 14 Jun 2008 12:20:57 +0000 (12:20 +0000)] 
Remove some unused bindings from HaddockLex

11 years agoPass dynflags down through to pragState
Ian Lynagh [Sat, 14 Jun 2008 12:11:56 +0000 (12:11 +0000)] 
Pass dynflags down through to pragState
so we no longer need to use defaultDynFlags there

11 years agoWhitespace only in DynFlags
Ian Lynagh [Sat, 14 Jun 2008 12:03:16 +0000 (12:03 +0000)] 
Whitespace only in DynFlags

11 years agoDefine and use is_decdigit for lexing escapes; fixes trac #2304
Ian Lynagh [Fri, 13 Jun 2008 20:35:53 +0000 (20:35 +0000)] 
Define and use is_decdigit for lexing escapes; fixes trac #2304

11 years agoMake SysTools warning-free
Ian Lynagh [Thu, 12 Jun 2008 14:17:38 +0000 (14:17 +0000)] 
Make SysTools warning-free

11 years agoRemove some CPPery with the help of a new value isWindowsHost in Util
Ian Lynagh [Thu, 12 Jun 2008 00:27:11 +0000 (00:27 +0000)] 
Remove some CPPery with the help of a new value isWindowsHost in Util
isWindowsHost is True iff mingw32_HOST_OS is defined.

11 years agoRemove unused FFI import GetTempPathA (getTempPath)
Ian Lynagh [Thu, 12 Jun 2008 00:19:36 +0000 (00:19 +0000)] 
Remove unused FFI import GetTempPathA (getTempPath)

11 years agoWhitespace only, in SysTools
Ian Lynagh [Wed, 11 Jun 2008 23:31:29 +0000 (23:31 +0000)] 
Whitespace only, in SysTools

11 years agoGet rid of the last remnants of PROJECT_DIR
Ian Lynagh [Wed, 11 Jun 2008 23:04:33 +0000 (23:04 +0000)] 
Get rid of the last remnants of PROJECT_DIR
This disappeared when we stopped being "fptools" and became just "ghc"

11 years agoTell the testsuite how many threads we want it to use when validating
Ian Lynagh [Wed, 11 Jun 2008 15:54:56 +0000 (15:54 +0000)] 
Tell the testsuite how many threads we want it to use when validating

11 years agoFix warnings in LexCore
Ian Lynagh [Tue, 10 Jun 2008 12:53:17 +0000 (12:53 +0000)] 
Fix warnings in LexCore

11 years agoFix warnings in Ctype
Ian Lynagh [Tue, 10 Jun 2008 12:42:23 +0000 (12:42 +0000)] 
Fix warnings in Ctype

11 years agoFix warnings in TcPat
Ian Lynagh [Tue, 10 Jun 2008 12:33:43 +0000 (12:33 +0000)] 
Fix warnings in TcPat

11 years agoFix warnings in TcEnv
Ian Lynagh [Tue, 10 Jun 2008 12:18:19 +0000 (12:18 +0000)] 
Fix warnings in TcEnv

11 years agoFix warnings in TcRnTypes
Ian Lynagh [Fri, 6 Jun 2008 23:47:04 +0000 (23:47 +0000)] 
Fix warnings in TcRnTypes

11 years agoFix warnings in TcTyClsDecls
Ian Lynagh [Fri, 6 Jun 2008 21:32:39 +0000 (21:32 +0000)] 
Fix warnings in TcTyClsDecls

11 years agoFix warnings in TcHsType
Ian Lynagh [Fri, 6 Jun 2008 20:48:54 +0000 (20:48 +0000)] 
Fix warnings in TcHsType

11 years agoFix warnings in TcSimplify
Ian Lynagh [Fri, 6 Jun 2008 20:24:35 +0000 (20:24 +0000)] 
Fix warnings in TcSimplify

11 years agoFix warnings in TcRules
Ian Lynagh [Fri, 6 Jun 2008 20:08:00 +0000 (20:08 +0000)] 
Fix warnings in TcRules

11 years agoFix warnings in TcInstDcls
Ian Lynagh [Fri, 6 Jun 2008 20:05:34 +0000 (20:05 +0000)] 
Fix warnings in TcInstDcls

11 years agoFix warnings in TcMType
Ian Lynagh [Fri, 6 Jun 2008 19:49:31 +0000 (19:49 +0000)] 
Fix warnings in TcMType

11 years agoFix warnings in TcForeign
Ian Lynagh [Fri, 6 Jun 2008 19:26:10 +0000 (19:26 +0000)] 
Fix warnings in TcForeign

11 years agoFix warnings in TcClassDcl
Ian Lynagh [Fri, 6 Jun 2008 19:14:13 +0000 (19:14 +0000)] 
Fix warnings in TcClassDcl

11 years agoFix a bug in eqPatType
Ian Lynagh [Fri, 6 Jun 2008 18:46:31 +0000 (18:46 +0000)] 
Fix a bug in eqPatType
One of the conditions we were checking was
    t2 `eqPatLType` t2
rather than
    t1 `eqPatLType` t2

11 years agoShow whether DEBUG is on in ghc --info
Ian Lynagh [Fri, 6 Jun 2008 18:44:15 +0000 (18:44 +0000)] 
Show whether DEBUG is on in ghc --info

11 years agoUse -fno-toplevel-reorder with gcc >= 4.2 on sparc-solaris; fixes trac #2312
Ian Lynagh [Fri, 6 Jun 2008 13:38:17 +0000 (13:38 +0000)] 
Use -fno-toplevel-reorder with gcc >= 4.2 on sparc-solaris; fixes trac #2312

11 years agoTeach configure about amd64/NetBSD; fixes trac #2348
Ian Lynagh [Fri, 6 Jun 2008 13:09:55 +0000 (13:09 +0000)] 
Teach configure about amd64/NetBSD; fixes trac #2348

11 years agoEnable the mangler for netbsd/amd64; fixes trac #2347
Ian Lynagh [Fri, 6 Jun 2008 13:07:06 +0000 (13:07 +0000)] 
Enable the mangler for netbsd/amd64; fixes trac #2347

11 years agoImprove documentation for standalone deriving
simonpj@microsoft.com [Fri, 6 Jun 2008 12:24:59 +0000 (12:24 +0000)] 
Improve documentation for standalone deriving

11 years agoFix Trac #2334: validity checking for type families
simonpj@microsoft.com [Fri, 6 Jun 2008 12:17:30 +0000 (12:17 +0000)] 
Fix Trac #2334: validity checking for type families

When we deal with a family-instance declaration (TcTyClsDecls.tcFamInstDecl)
we must check the TyCon for validity; for example, that a newtype has exactly
one field.  That is done all-at-once for normal declarations, and had been
forgotten altogether for families.

I also refactored the interface to tcFamInstDecl1 slightly.

A slightly separate matter: if there's an error in family instances
(e.g. overlap) we get a confusing error message cascade if we attempt to
deal with 'deriving' clauses too; this patch bales out earlier in that case.

Another slightly separate matter: standalone deriving for family
instances can legitimately have more specific types, just like normal
data decls. For example

   data instance F [a] = ...
   deriving instance (Eq a, Eq b) => Eq (F [(a,b)])

So tcLookupFamInstExact can a bit more forgiving than it was.

11 years agoVital follow-up to fix of Trac #2045
simonpj@microsoft.com [Thu, 5 Jun 2008 16:54:34 +0000 (16:54 +0000)] 
Vital follow-up to fix of Trac #2045

Sorry -- my 'validate' didn't work right and I missed a trick.
This patch must accompany

 * Fix Trac #2045: use big-tuple machiney for implication constraints

11 years agoFix Trac #2045: use big-tuple machiney for implication constraints
simonpj@microsoft.com [Thu, 5 Jun 2008 14:56:17 +0000 (14:56 +0000)] 
Fix Trac #2045: use big-tuple machiney for implication constraints

11 years agoComments only
simonpj@microsoft.com [Thu, 5 Jun 2008 13:47:43 +0000 (13:47 +0000)] 
Comments only

11 years agoDesugar multiple polymorphic bindings more intelligently
simonpj@microsoft.com [Thu, 5 Jun 2008 12:44:23 +0000 (12:44 +0000)] 
Desugar multiple polymorphic bindings more intelligently

Occasionally people write very large recursive groups of definitions.
In general we desugar these to a single definition that binds tuple,
plus lots of tuple selectors.  But that code has quadratic size, which
can be bad.

This patch adds a new case to the desugaring of bindings, for the
situation where there are lots of polymorphic variables, but no
dictionaries.  (Dictionaries force us into the general case.)

See Note [Abstracting over tyvars only].

The extra behaviour can be disabled with the (static) flag

-fno-ds-multi-tyvar

in case we want to experiment with switching it on or off.  There is
essentially-zero effect on the nofib suite though.

I was provoked into doing this by Trac #1136.  In fact I'm not sure
it's the real cause of the problem there, but it's a good idea anyway.

11 years agoAdd non-recursive let-bindings for types
simonpj@microsoft.com [Thu, 5 Jun 2008 12:36:12 +0000 (12:36 +0000)] 
Add non-recursive let-bindings for types

This patch adds to Core the ability to say
let a = Int in <body>
where 'a' is a type variable.  That is: a type-let.
See Note [Type let] in CoreSyn.

* The binding is always non-recursive
* The simplifier immediately eliminates it by substitution

So in effect a type-let is just a delayed substitution.  This is convenient
in a couple of places in the desugarer, one existing (see the call to
CoreTyn.mkTyBind in DsUtils), and one that's in the next upcoming patch.

The first use in the desugarer was previously encoded as
(/\a. <body>) Int
rather that eagerly substituting, but that was horrid because Core Lint
had do "know" that a=Int inside <body> else it would bleat.  Expressing
it directly as a 'let' seems much nicer.

11 years agoFix Trac #2339: reify (mkName "X")
simonpj@microsoft.com [Wed, 4 Jun 2008 15:02:07 +0000 (15:02 +0000)] 
Fix Trac #2339: reify (mkName "X")

11 years agoFix Trac #2310: result type signatures are not supported any more
simonpj@microsoft.com [Wed, 4 Jun 2008 14:51:15 +0000 (14:51 +0000)] 
Fix Trac #2310: result type signatures are not supported any more

We have not supported "result type signatures" for some time, but
using one in the wrong way caused a crash.  This patch tidies it up.

11 years agoSort modules and packages in debug print (reduce test wobbles)
simonpj@microsoft.com [Wed, 4 Jun 2008 14:40:49 +0000 (14:40 +0000)] 
Sort modules and packages in debug print (reduce test wobbles)

This affects only the debug print TcRnDriver.pprTcGblEnv, and eliminates
test-suite wobbling (affected me for tc168, tc231)

11 years agoFix #2334: tyvar binders can have Names inside (equality predicates)
Simon Marlow [Wed, 4 Jun 2008 11:30:02 +0000 (11:30 +0000)] 
Fix #2334: tyvar binders can have Names inside (equality predicates)

11 years agofix pointer tagging bug in removeIndirections (fixes stableptr003)
Simon Marlow [Wed, 4 Jun 2008 10:54:58 +0000 (10:54 +0000)] 
fix pointer tagging bug in removeIndirections (fixes stableptr003)

11 years agoFix unreg build
Simon Marlow [Wed, 4 Jun 2008 09:36:53 +0000 (09:36 +0000)] 
Fix unreg build

11 years agotiny tweak to the stack squeezing heuristic (fixes cg060)
Simon Marlow [Wed, 4 Jun 2008 09:12:44 +0000 (09:12 +0000)] 
tiny tweak to the stack squeezing heuristic (fixes cg060)

11 years agoMacOS installer: don't quote XCODE_EXTRA_CONFIGURE_ARGS
Manuel M T Chakravarty [Wed, 4 Jun 2008 02:13:21 +0000 (02:13 +0000)] 
MacOS installer: don't quote XCODE_EXTRA_CONFIGURE_ARGS

11 years agoMacOS installer: terminate build on intermediate failure
Manuel M T Chakravarty [Wed, 4 Jun 2008 02:01:55 +0000 (02:01 +0000)] 
MacOS installer: terminate build on intermediate failure

11 years agoFix Trac #2331 (error message suggestion)
simonpj@microsoft.com [Tue, 3 Jun 2008 13:46:45 +0000 (13:46 +0000)] 
Fix Trac #2331 (error message suggestion)

11 years agoImprove documentation of RULES
simonpj@microsoft.com [Fri, 30 May 2008 15:51:37 +0000 (15:51 +0000)] 
Improve documentation of RULES

11 years agoImprove documentation for INLINE pragma
simonpj@microsoft.com [Fri, 30 May 2008 13:33:07 +0000 (13:33 +0000)] 
Improve documentation for INLINE pragma

11 years agoadd debugDumpTcRn and use it for some debugging output
Simon Marlow [Tue, 3 Jun 2008 11:20:30 +0000 (11:20 +0000)] 
add debugDumpTcRn and use it for some debugging output

11 years agoTurn "NOTE: Simplifier still going..." message into a WARN()
Simon Marlow [Tue, 3 Jun 2008 10:54:31 +0000 (10:54 +0000)] 
Turn "NOTE: Simplifier still going..." message into a WARN()

11 years agoremove the "expanding to size" messages
Simon Marlow [Tue, 3 Jun 2008 09:45:46 +0000 (09:45 +0000)] 
remove the "expanding to size" messages

11 years agoNew flag: -dno-debug-output
Simon Marlow [Tue, 3 Jun 2008 08:29:24 +0000 (08:29 +0000)] 
New flag: -dno-debug-output
From the docs:
   <para>Suppress any unsolicited debugging output.  When GHC
     has been built with the <literal>DEBUG</literal> option it
     occasionally emits debug output of interest to developers.
     The extra output can confuse the testing framework and
     cause bogus test failures, so this flag is provided to
     turn it off.</para>

11 years ago-no-link-chk has been a no-op since at least 6.0; remove it
Simon Marlow [Tue, 3 Jun 2008 08:20:41 +0000 (08:20 +0000)] 
-no-link-chk has been a no-op since at least 6.0; remove it

11 years ago-no-link-chk is a relic
Simon Marlow [Tue, 3 Jun 2008 08:19:04 +0000 (08:19 +0000)] 
-no-link-chk is a relic

11 years agoShorten debug messages
simonpj@microsoft.com [Tue, 3 Jun 2008 12:12:08 +0000 (12:12 +0000)] 
Shorten debug messages

11 years agoFix minor layout issue (whitespace only)
simonpj@microsoft.com [Mon, 2 Jun 2008 13:06:11 +0000 (13:06 +0000)] 
Fix minor layout issue (whitespace only)

11 years agoMacOS installer: clean up Xcode project spec
Manuel M T Chakravarty [Mon, 2 Jun 2008 07:07:05 +0000 (07:07 +0000)] 
MacOS installer: clean up Xcode project spec

11 years agoFix validate: -Werror bug in patch "Replacing copyins and copyouts..."
Simon Marlow [Mon, 2 Jun 2008 14:49:45 +0000 (14:49 +0000)] 
Fix validate: -Werror bug in patch "Replacing copyins and copyouts..."

11 years agoFIX #2231: add missing stack check when applying a PAP
Simon Marlow [Mon, 2 Jun 2008 14:37:26 +0000 (14:37 +0000)] 
FIX #2231: add missing stack check when applying a PAP
This program makes a PAP with 203 arguments :-)

11 years ago-fforce-recomp should be unnecessary for Main.hs in stage[23] now
Simon Marlow [Mon, 2 Jun 2008 13:38:01 +0000 (13:38 +0000)] 
-fforce-recomp should be unnecessary for Main.hs in stage[23] now

11 years agoMissing import in C-- parser
dias@eecs.harvard.edu [Mon, 2 Jun 2008 10:31:56 +0000 (10:31 +0000)] 
Missing import in C-- parser

11 years agoFix a bug to do with recursive modules in one-shot mode 2008-06-01
Simon Marlow [Fri, 30 May 2008 14:53:49 +0000 (14:53 +0000)] 
Fix a bug to do with recursive modules in one-shot mode
The problem was that when loading interface files in checkOldIface, we
were not passing the If monad the mutable variable for use when
looking up entities in the *current* module, with the result that the
knots wouldn't be tied properly, and some instances of TyCons would
be incorrectly abstract.

This bug has subtle effects: for example, recompiling a module without
making any changes might lead to a slightly different result (noticed
due to the new interface-file fingerprints).  The bug doesn't lead to
any direct failures that we're aware of.

11 years agoReplacing copyins and copyouts with data-movement instructions
dias@eecs.harvard.edu [Thu, 29 May 2008 16:05:45 +0000 (16:05 +0000)] 
Replacing copyins and copyouts with data-movement instructions

o Moved BlockId stuff to a new file to avoid module recursion
o Defined stack areas for parameter-passing locations and spill slots
o Part way through replacing copy in and copy out nodes
  - added movement instructions for stack pointer
  - added movement instructions for call and return parameters
    (but not with the proper calling conventions)
o Inserting spills and reloads for proc points is now procpoint-aware
  (it was relying on the presence of a CopyIn node as a proxy for
   procpoint knowledge)
o Changed ZipDataflow to expect AGraphs (instead of being polymorphic in
   the type of graph)

11 years agodisable SAT for now (see #2321)
Simon Marlow [Fri, 30 May 2008 11:20:43 +0000 (11:20 +0000)] 
disable SAT for now (see #2321)

11 years agoAdd dph packages to build system
Roman Leshchinskiy [Fri, 30 May 2008 05:03:40 +0000 (05:03 +0000)] 
Add dph packages to build system

11 years agoPackageMaker target depends on deployment target
Manuel M T Chakravarty [Thu, 29 May 2008 04:18:20 +0000 (04:18 +0000)] 
PackageMaker target depends on deployment target

11 years agohs_add_root: use use rts_lock()/rts_unlock() for a bit of extra safety
Simon Marlow [Thu, 29 May 2008 11:10:23 +0000 (11:10 +0000)] 
hs_add_root: use use rts_lock()/rts_unlock() for a bit of extra safety

11 years agoMake it less fatal to not call ioManagerStart()
Simon Marlow [Thu, 29 May 2008 11:09:57 +0000 (11:09 +0000)] 
Make it less fatal to not call ioManagerStart()
For clients that forget to do hs_add_root()

11 years agoFIX BUILD with GHC 6.4.x
Simon Marlow [Thu, 29 May 2008 13:25:44 +0000 (13:25 +0000)] 
FIX BUILD with GHC 6.4.x

11 years agoFIX #1970: ghci -hide-all-packages should work
Simon Marlow [Wed, 28 May 2008 15:45:28 +0000 (15:45 +0000)] 
FIX #1970: ghci -hide-all-packages should work

11 years agoCmm back end upgrades
dias@eecs.harvard.edu [Thu, 29 May 2008 09:48:27 +0000 (09:48 +0000)] 
Cmm back end upgrades

Several changes in this patch, partially bug fixes, partially new code:
o bug fixes in ZipDataflow
   - added some checks to verify that facts converge
   - removed some erroneous checks of convergence on entry nodes
   - added some missing applications of transfer functions
o changed dataflow clients to use ZipDataflow, making ZipDataflow0 obsolete
o eliminated DFA monad (no need for separate analysis and rewriting monads with ZipDataflow)
o started stack layout changes
   - no longer generating CopyIn and CopyOut nodes (not yet fully expunged though)
   - still not using proper calling conventions
o simple new optimizations:
   - common block elimination
      -- have not yet tried to move the Adams opt out of CmmProcPointZ
   - block concatenation
o piped optimization fuel up to the HscEnv
   - can be limited by a command-line flag
   - not tested, and probably not yet properly used by clients
o added unique supply to FuelMonad, also lifted unique supply to DFMonad

11 years agomake framework-pkg needs to cope with missing DSTROOT
Manuel M T Chakravarty [Tue, 27 May 2008 11:30:07 +0000 (11:30 +0000)] 
make framework-pkg needs to cope with missing DSTROOT

11 years agoUse MD5 checksums for recompilation checking (fixes #1372, #1959)
Simon Marlow [Wed, 28 May 2008 12:52:58 +0000 (12:52 +0000)] 
Use MD5 checksums for recompilation checking (fixes #1372, #1959)

This is a much more robust way to do recompilation checking.  The idea
is to create a fingerprint of the ABI of an interface, and track
dependencies by recording the fingerprints of ABIs that a module
depends on.  If any of those ABIs have changed, then we need to
recompile.

In bug #1372 we weren't recording dependencies on package modules,
this patch fixes that by recording fingerprints of package modules
that we depend on.  Within a package there is still fine-grained
recompilation avoidance as before.

We currently use MD5 for fingerprints, being a good compromise between
efficiency and security.  We're not worried about attackers, but we
are worried about accidental collisions.

All the MD5 sums do make interface files a bit bigger, but compile
times on the whole are about the same as before.  Recompilation
avoidance should be a bit more accurate than in 6.8.2 due to fixing
#1959, especially when using -O.

11 years agodon't make -ddump-if-trace imply -no-recomp
Simon Marlow [Fri, 23 May 2008 14:07:19 +0000 (14:07 +0000)] 
don't make -ddump-if-trace imply -no-recomp

11 years agoclarify that unsafeCoerce# :: Float# -> Int# is not safe (see #2209)
Simon Marlow [Tue, 27 May 2008 09:02:44 +0000 (09:02 +0000)] 
clarify that unsafeCoerce# :: Float# -> Int# is not safe (see #2209)

11 years agowhen linking, ignore unknown .reloc section that appeared in gcc 3.4.5(?)
dias@eecs.harvard.edu [Wed, 28 May 2008 12:14:50 +0000 (12:14 +0000)] 
when linking, ignore unknown .reloc section that appeared in gcc 3.4.5(?)

11 years agoSimplify specifying that some libraries need to use the build.* rules 2008-05-28
Ian Lynagh [Mon, 26 May 2008 16:02:18 +0000 (16:02 +0000)] 
Simplify specifying that some libraries need to use the build.* rules
Now you just add them to SUBDIRS_BUILD instead of SUBDIRS.

11 years agoCope with libraries in libraries/foo/bar rather than just libraries/foo
Ian Lynagh [Mon, 26 May 2008 13:56:12 +0000 (13:56 +0000)] 
Cope with libraries in libraries/foo/bar rather than just libraries/foo
You need to use the build.* rules rather than the make.* rules, though.

11 years agoFix fwrite$UNIX2003 symbols when cross-compiling for Tiger
Manuel M T Chakravarty [Mon, 26 May 2008 07:35:46 +0000 (07:35 +0000)] 
Fix fwrite$UNIX2003 symbols when cross-compiling for Tiger
- When compiling with -mmacos-deployment-target=10.4, we need
  --no-builtin-fprintf, as the use of GCC's builtin function
  optimisation for fprintf together with #include "PosixSource" in the
  RTS leads to the use of fwrite$UNIX2003 (with GCC 4.0.1 on Mac OS X
  10.5.2).

11 years agodocument :source command for GHCi, point to Haskell wiki
claus.reinke@talk21.com [Thu, 1 May 2008 20:52:52 +0000 (20:52 +0000)] 
document :source command for GHCi, point to Haskell wiki

as discussed in this thread:
http://www.haskell.org/pipermail/glasgow-haskell-users/2008-April/014614.html

11 years agoDo some stack fiddling in stg_unblockAsyncExceptionszh_ret
Ian Lynagh [Fri, 23 May 2008 03:25:08 +0000 (03:25 +0000)] 
Do some stack fiddling in stg_unblockAsyncExceptionszh_ret
This fixes a segfault in #1657

11 years agoFix warnings in TcTyDecls
Ian Lynagh [Wed, 21 May 2008 00:42:51 +0000 (00:42 +0000)] 
Fix warnings in TcTyDecls

11 years agoFix whitespace in TcTyDecls
Ian Lynagh [Wed, 21 May 2008 00:39:35 +0000 (00:39 +0000)] 
Fix whitespace in TcTyDecls

11 years agoEnsure runhaskell is rebuild in stage2
Manuel M T Chakravarty [Thu, 22 May 2008 04:49:00 +0000 (04:49 +0000)] 
Ensure runhaskell is rebuild in stage2

11 years agoFix Trac #1061: refactor handling of default methods
simonpj@microsoft.com [Wed, 21 May 2008 13:00:28 +0000 (13:00 +0000)] 
Fix Trac #1061: refactor handling of default methods

In an instance declaration, omitted methods get a definition that
uses the default method.  We used to generate source code and feed it
to the type checker.  But tc199 shows that is a bad idea -- see
Note [Default methods in instances] in TcClassDcl.

So this patch refactors to insteadl all us to generate the
*post* typechecked code directly for default methods.

11 years agoComment typo
simonpj@microsoft.com [Wed, 21 May 2008 13:00:16 +0000 (13:00 +0000)] 
Comment typo

11 years agoFix Trac #2292: improve error message for lone signatures
simonpj@microsoft.com [Tue, 20 May 2008 14:30:48 +0000 (14:30 +0000)] 
Fix Trac #2292: improve error message for lone signatures

Refactoring reduces code and improves error messages

11 years agoFix Trac #2293: improve error reporting for duplicate declarations
simonpj@microsoft.com [Tue, 20 May 2008 14:30:06 +0000 (14:30 +0000)] 
Fix Trac #2293: improve error reporting for duplicate declarations

11 years agoTuples cannot contain unboxed types
simonpj@microsoft.com [Thu, 15 May 2008 11:53:32 +0000 (11:53 +0000)] 
Tuples cannot contain unboxed types

This bug allowed, for example

  f = let x = ( 1#, 'x' ) in x

which is ill-typed because you can't put an unboxed value in a tuple.
Core Lint fails on this program.

The patch makes the program be rejcted up-front.

11 years agoMake TcType warning-free
Ian Lynagh [Tue, 20 May 2008 21:48:52 +0000 (21:48 +0000)] 
Make TcType warning-free

11 years agoTeach push-all how to send as well
Ian Lynagh [Sat, 17 May 2008 14:21:12 +0000 (14:21 +0000)] 
Teach push-all how to send as well