Add a .travis.yml file

This is a reduced build that should finish within the 50 minute time
limit most of the time. In particular,
 * it skips DPH
 * it does not build dynamic libraries and no dynamic executables
 * does not build haddock or generate documentation
 * only runs fast tests, and no performance tests

You can see its results at
https://travis-ci.org/ghc/ghc/builds
M-x untabify
Activate tab checks
Fix comment
Typoes in comments
Rectify some panic messages
Fix note spelling
Add travis-ci badge
testsuite: Tweak T6048 bounds

Summary:
This should fix the Harbormaster builds; the bounds are just a little too narrow.

Signed-off-by: Austin Seipp <austin@well-typed.com>

Test Plan: Harbormaster should build successfully.

Reviewers: simonmar

Subscribers: phaskell, simonmar, relrod, carter

Projects: #ghc

Differential Revision: https://phabricator.haskell.org/D65
integer-gmp: tweak gitignore.

Auditors: hvr

Signed-off-by: Austin Seipp <austin@well-typed.com>
Test case for #9305
Typo in comment
Fix ghci tab completion of duplicate identifiers.

Summary:
Currently, if the same identifier is imported via multiple modules, ghci
shows multiple completions for it. Use the nub of the completions
instead so that it only shows up once.

Signed-off-by: Shachaf Ben-Kiki <shachaf@gmail.com>

Test Plan: by hand

Reviewers: simonmar, austin, hvr

Reviewed By: austin, hvr

Subscribers: hvr, simonmar, relrod, carter

Differential Revision: https://phabricator.haskell.org/D58
Avoid deadlock in freeTask (called by forkProcess)

Summary: Documented in more detail inline with the change.

Test Plan: validate

Reviewers: austin, simonmar, duncan

Reviewed By: austin, simonmar, duncan

Subscribers: simonmar, relrod, carter

Differential Revision: https://phabricator.haskell.org/D59
Acquire all_tasks_mutex in forkProcess

Summary: (for the same reason that we acquire all the other mutexes)

Test Plan: validate

Reviewers: simonmar, austin, duncan

Reviewed By: simonmar, austin, duncan

Subscribers: simonmar, relrod, carter

Differential Revision: https://phabricator.haskell.org/D60
add support for x86_64-solaris2 platform

Summary:
this set of patches adds support for x86_64-solaris2 platform
Solaris is multi-lib platform which means it provides 32bit user-land together
with 32bit and 64bit libraries. The 32bit libraries are located in <somewhere>/lib
directories while 64bit libraries are located in <somewhere>/lib/64 directories.
This is why GHCi required the fix since otherwise it'll attempt to load
/usr/lib/libgmp.so which is 32bit library into 64bit binary process space (GHCi).
This of course fails with wrong ELFCLASS32 error message.
Another issue was that by default GNU C distributed with Solaris compiles
into 32bit binary. We need to enforce compilation to 64bit binary
by adding appropriate -m64 option.

Test Plan: already built on x86_64-solaris2

Reviewers: austin

Reviewed By: austin

Subscribers: phaskell, simonmar, relrod, carter

Differential Revision: https://phabricator.haskell.org/D68
Type classes

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Finish TCs section

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Update various performance benchmarks

I started monitoring perfomance on a per-commit base. These seem to be
off for a while now. Adjusting them, and from now I hope I can keep
closer tabs on them.
New testsuite verbosity level 4

which makes it print performance numbers even when the test succeeds
(good for historic analysis)