- 30 Sep, 2004 8 commits
-
-
panne authored
Stylistic changes
-
panne authored
Get all project info from configure.ac
-
panne authored
Make it compile with a GHC 6.x. The layout rule seems to be a mystery even for one of the "fathers" of Haskell... :-}
-
simonpj authored
Add HsPat.hi-boot
-
simonpj authored
------------------------------------ Add Generalised Algebraic Data Types ------------------------------------ This rather big commit adds support for GADTs. For example, data Term a where Lit :: Int -> Term Int App :: Term (a->b) -> Term a -> Term b If :: Term Bool -> Term a -> Term a ..etc.. eval :: Term a -> a eval (Lit i) = i eval (App a b) = eval a (eval b) eval (If p q r) | eval p = eval q | otherwise = eval r Lots and lots of of related changes throughout the compiler to make this fit nicely. One important change, only loosely related to GADTs, is that skolem constants in the typechecker are genuinely immutable and constant, so we often get better error messages from the type checker. See TcType.TcTyVarDetails. There's a new module types/Unify.lhs, which has purely-functional unification and matching for Type. This is used both in the typechecker (for type refinement of GADTs) and in Core Lint (also for type refinement).
-
simonmar authored
Add -I- after the include paths when running gcc. This prevents accidental shadowing of system includes by putting a file called eg. stdint.h in the current directory.
-
krasimir authored
absCSyn directory doesn't exists in the HEAD
-
dons authored
Look for getpwnam, getpwuid.
-
- 29 Sep, 2004 3 commits
- 28 Sep, 2004 4 commits
-
-
simonmar authored
rts_evalStableIO: set rtsApiCapability to NULL *before* calling scheduleWaitThread, matching the way the other eval_* functions do this. The previous way lead to a suble race condition: - thread A calls rts_evalIO, enters scheduleWaitThread() (rtsApiCapability == NULL). - thread B calls rts_evalStableIO, creates a main thread and enters scheduleWaitThread() (rtsApiCapability == &MainCapability) - thread A exits scheduleWaitThread, sees that rtsApiCapability is non-NULL, and calls releaseCapability() on it. This is bogus, because thread A doesn't actually hold the capability, and we've done a double-release. This scenario leads to assertion failures in a debug threaded RTS, and probably crashes in a non-debug threaded RTS. MERGE TO STABLE
-
simonmar authored
Avoid some warnings from gcc by appending an 'LL' suffix to 64-bit integers on a 32-bit platform. Suggested by: Sven Panne <Sven.Panne@aedion.de>
-
simonmar authored
oops, revert version number to 6.3 again
-
simonmar authored
Ignore RULES pragmas unless we're in -fglasgow-exts mode.
-
- 27 Sep, 2004 5 commits
-
-
wolfgang authored
Mac OS X: Fix an incorrect ASSERT Merge to STABLE
-
wolfgang authored
GHCi support for PowerPC Linux, courtesy of Ryan Lortie <desrt@desrt.ca>. MERGE TO STABLE
-
simonmar authored
A few updates to the local Emacs variables in these files. For some reason, I can't get Emacs' PSGML mode to work with the new XML files (although I thought I had it working before... strange).
-
simonmar authored
sed-magic for ProjectVersionInt: make it work for version numbers with patchlevel components (ToDo: ProjectPatchLevel still isn't set properly in version.mk, this has to be updated by hand).
-
simonmar authored
export errMsgContext
-
- 24 Sep, 2004 1 commit
-
-
wolfgang authored
PowerPC/Mac OS X: Improve epilogue mangling. This became necesssary because the new CG may "fall through" for cases in a switch that are known to never happen, so GCC generates the epilogue code again. With the previous CG, GCC never generated any epilog code, because every function ended with an unconditional tail jump.
-
- 22 Sep, 2004 2 commits
- 21 Sep, 2004 3 commits
- 20 Sep, 2004 3 commits
-
-
panne authored
Removed dependency of $(TOP)/mk/config.mk on $(TOP)/config.status, resurrecting "make distclean". I'm not 100% sure that the autoconf-related rules are correct, "./config.status --recheck" in conjunction with make is a real brain-twister...
-
panne authored
Ooops, forgot to rename version.mk in my previous committ...
-
mthomas authored
Make tests run on Cygwin hosted MinGW32 build.
-
- 19 Sep, 2004 2 commits
-
-
panne authored
Use version info from configure.ac
-
panne authored
Use some sed magic to avoid PACKAGE_FOO clashes introduced by the autoconf cleanup yesterday. Another option would have been using a plain "AC_INIT" in fptools/configure.ac (and probably the same for fptools/libraries/configure.ac), so only "leaf configure.ac"s have package info. Not quite sure what would be the nicest way to handle this yet...
-
- 18 Sep, 2004 1 commit
-
-
panne authored
Make autoupdate 2.52 happy, mainly by using the new formats of AC_INIT and AC_OUTPUT. This has the nice side effect that all "packages" have now a name, a version, a bug-report address, and a tar name, yielding better output with "configure --help=recursive". Nuked an unused AC_STRUCT_ST_BLKSIZE test on the way.
-
- 17 Sep, 2004 1 commit
-
-
simonmar authored
Remove debugging trace that I left in when working on mk_switch.
-
- 16 Sep, 2004 3 commits
-
-
sof authored
New option, -P, turns off line pragma emission
-
stolz authored
Collect unknown chunks in new chkcat 'unknown' which gets treated like 'misc', but isn't mangled on sparc-*-solaris2 because of function definitions in C-headers like <pwd.h>. This shouldn't affect any other platform since this was already a border-case. Closes SF Bug 1012521 "getUserEntryForID dies". Please merge.
-
mthomas authored
On Windows default to main.exe instead of a.out.
-
- 15 Sep, 2004 4 commits
-
-
ross authored
arrow notation: allow arrow applications (f -< a) to take a non-empty command stack, as suggested by Sebastian Boldt <Sebastian.Boldt@arcor.de>.
-
stolz authored
- Remove configure tests for SIG{POLL,INFO,WINCH}: Testing via #ifdef SIGFOO should be sufficient. - Change #if HAVE_SIGPOLL to #ifdef SIGPOLL - Remove SIGINFO/WINCH from package base: they'll reappear in package unix in System/Posix/Signals.Exts.
-
simonmar authored
Oops, fix bugs in previous commit.
-
simonmar authored
Add a couple of cases to mk_switch to catch the case when we have a tag range that has a lot of default cases at either end, and we're not using a single switch. In situations like this we want to eliminate the default cases with an if-statement, before dealing with the rest of the branches, which might then be suitable for a switch. Also, ignore empty tag slots at either end of the range if there is no default case. This might work around a gcc 2.95 bug that we tickled with the code being generated before.
-