Ticket #3531: don_t-build-haddock-if-haddoc_docs-_-no_-and-disable-haddoc_docs-if-ghcwithinterpreter-_-no.dpatch

File don_t-build-haddock-if-haddoc_docs-_-no_-and-disable-haddoc_docs-if-ghcwithinterpreter-_-no.dpatch, 86.7 KB (added by kili, 5 years ago)
Line 
1Sun Sep 20 20:13:19 CEST 2009  Matthias Kilian <kili@outback.escape.de>
2  * Don't build haddock if HADDOC_DOCS = NO, and disable HADDOC_DOCS if GhcWithInterpreter = NO
3  Haddock uses TcRnDriver.tcRnGetInfo, which is only available if
4  GHCI is built. Set HADDOC_DOCS to NO if GhcWithInterpreter is NO,
5  and disable the haddock build if HADDOC_DOCS = NO.
6
7New patches:
8
9[Don't build haddock if HADDOC_DOCS = NO, and disable HADDOC_DOCS if GhcWithInterpreter = NO
10Matthias Kilian <kili@outback.escape.de>**20090920181319
11 Ignore-this: 1268ae31d74e746b09287814ee435f65
12 Haddock uses TcRnDriver.tcRnGetInfo, which is only available if
13 GHCI is built. Set HADDOC_DOCS to NO if GhcWithInterpreter is NO,
14 and disable the haddock build if HADDOC_DOCS = NO.
15] {
16hunk ./ghc.mk 501
17    $(GHC_GENAPPLY_DIR)
18 endif
19 
20+ifneq "$(HADDOCK_DOCS)" "NO"
21 BUILD_DIRS += \
22    utils/haddock \
23    utils/haddock/doc
24hunk ./ghc.mk 505
25+endif
26 
27 ifneq "$(CLEANING)" "YES"
28 BUILD_DIRS += \
29hunk ./mk/config.mk.in 743
30 HSTAGS = @HstagsCmd@
31 
32 # Should we build haddock docs?
33-HADDOCK_DOCS = YES
34+HADDOCK_DOCS = $(GhcWithInterpreter)
35 # And HsColour the sources?
36 ifeq "$(HSCOLOUR)" ""
37 HSCOLOUR_SRCS = NO
38}
39
40Context:
41
42[Set version number to 6.13
43Ian Lynagh <igloo@earth.li>**20090922152400]
44[boot-pkgs now automatically works out which libraries are from tarballs
45Ian Lynagh <igloo@earth.li>**20090921165559]
46[remove "touch %_hsc.c" - what was it for?
47Simon Marlow <marlowsd@gmail.com>**20090921155720
48 Ignore-this: 48d5d7ad35e1f2bdcebf4e197d46c609
49]
50[Validate now cleans regardless of whether mk/config.mk exists
51Ian Lynagh <igloo@earth.li>**20090921182636
52 Cleaning should always succeed now
53]
54[Update 6.12.1 release notes
55Ian Lynagh <igloo@earth.li>**20090921182431
56 Add changes that we inherit from haskeline
57]
58[Add sdist to ghc-cabal's bag of tricks
59Ian Lynagh <igloo@earth.li>**20090921162003]
60[Add the --checked-out flag; expand the docs/comments at the top
61Simon Marlow <marlowsd@gmail.com>**20090921145201
62 Ignore-this: f714387e94beb5e03ce2ec5432bca38e
63]
64[move way-related stuff into a separate file
65Simon Marlow <marlowsd@gmail.com>**20090921130024
66 Ignore-this: f75bfb3b60ee92d6add3e35b000da60d
67 This fixes at least one problem: libHSffi-ghc<version>.so wasn't being
68 cleaned, because $(dyn_libsuf) wasn't defined while cleaning.
69]
70[clean some Haddock-generated files
71Simon Marlow <marlowsd@gmail.com>**20090921114210
72 Ignore-this: a2569ec63c9aa6b975345872ba4f2f2a
73]
74[Fix bindist creation
75Ian Lynagh <igloo@earth.li>**20090920183631]
76[Update dependencies
77Ian Lynagh <igloo@earth.li>**20090920152402]
78[Add release notes for 6.12.1
79Ian Lynagh <igloo@earth.li>**20090920141820]
80[remove encoding of output using Haskeline; the IO library does it now (#3398)
81Simon Marlow <marlowsd@gmail.com>**20090918144041
82 Ignore-this: 155e3d4253462af10874882ca2d0b2e
83]
84[ignore unused-import warnings from Haskeline
85Simon Marlow <marlowsd@gmail.com>**20090918142718
86 Ignore-this: 619c5c1d572842b0b19268f87dffe75a
87]
88[Fix the nursery size calculation when -N is used with -H
89Simon Marlow <marlowsd@gmail.com>**20090918134438
90 Ignore-this: 182b62d1c9fc1568fe453e375cb34bc4
91]
92[implement case-on-Word in the byte code generator/interpreter (#2881)
93Simon Marlow <marlowsd@gmail.com>**20090918133204
94 Ignore-this: f8c29e1cdb4fb70e9d9ba6230a5531dc
95]
96[Fix #3439: -debug implies -ticky, and -ticky code links with any RTS
97Simon Marlow <marlowsd@gmail.com>**20090918114631
98 Ignore-this: 2bc27f861f33a5db471539b0d13618b4
99]
100[Fix #3525 - we were still checking for ParsePkgConf.hs, which is gone
101Simon Marlow <marlowsd@gmail.com>**20090918104327
102 Ignore-this: d461a9cf7213c292bf2021edfadf08fc
103]
104[improve the cyclic module error message as per #1856
105Simon Marlow <marlowsd@gmail.com>**20090916205036
106 Ignore-this: 2e679e7f6f44e613717742cc2edee10b
107 
108  - remove the main: stuff
109  - show the filenames
110  - don't clutter the output with imports that aren't involved in
111    the cycle
112]
113[Use CONF_CC_OPTS
114Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20090917132706
115 Ignore-this: 3dd1a67c04f8bb8e10c161c7c5549753
116 - Needed to get arch-dependent options, eg, on Snow Leopard
117]
118[fix install on Windows
119Simon Marlow <marlowsd@gmail.com>**20090917121921
120 Ignore-this: e94a2d765b618e3adc9e2af7bfaf8559
121]
122[fix install on Windows
123Simon Marlow <marlowsd@gmail.com>**20090917103350
124 Ignore-this: 513bb0336183cd23535e5d1c6d7e2d58
125]
126[Allow -package-id to override the default package shadowing semantics
127Simon Marlow <marlowsd@gmail.com>**20090917121510
128 Ignore-this: 30d211e9989085f1de40552569b544b9
129 So that Cabal, if it wants, can use a more general algorithm to find a
130 consistent set of packages to use.
131]
132[fix xref
133Simon Marlow <marlowsd@gmail.com>**20090917100544
134 Ignore-this: 1bdfc1c3cd79de5be808e9ec2c8d3542
135]
136[add -eventlog
137Simon Marlow <marlowsd@gmail.com>**20090917100403
138 Ignore-this: bb3f722cb2becfca08a971c927e8ea28
139]
140[document -eventlog and the associated runtime options
141Simon Marlow <marlowsd@gmail.com>**20090916152815
142 Ignore-this: 3efd91b35ac73487d94b887fdd85a04d
143]
144[typo in error message
145Simon Marlow <marlowsd@gmail.com>**20090916142324
146 Ignore-this: 37bda5b3aac4c383e21f1c26ab054d0b
147]
148[only create the .eventlog file if any tracing options are enabled
149Simon Marlow <marlowsd@gmail.com>**20090916142315
150 Ignore-this: 144e9261e008e9e8b641c596d9892fd2
151]
152[Fix build on Mac OS 10.6 (Snow Leopard)
153Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20090917044121
154 Ignore-this: 16fbdb0fc58acf3d1497da4a8b3b516e
155 - We have -m32 as machine-dependent option for gcc for a 32 bit build
156 - Like on OpenBSD, SL requires -fno-stack-protector to avoid triggering the
157   stack smashing checks inserted by gcc by default on this platform.
158]
159[Put context information for warnings in errMsgExtraInfo.
160Thomas Schilling <nominolo@googlemail.com>**20090915150353
161 
162 For type checker warnings, the context information ("In the expression
163 ...") was simply appended to the main message while for proper errors
164 they live in errMsgExtraInfo.  This allows GHC API clients to drop
165 that information if not needed.
166]
167[Update and improve packages documentation
168Simon Marlow <marlowsd@gmail.com>**20090915161024
169 Ignore-this: a0253dbee88fe3fe1a0a87e6e1f67bf
170]
171[Follow the builtin:rts vs. builtin_rts renaming
172Matthias Kilian <kili@outback.escape.de>**20090915204254
173 Ignore-this: d205dfce1a912796c355ba1c1e660d7a
174 
175 This unbreaks make install again.
176 
177]
178[FIX #3434 (improve vi tags: add non-exported symbols, kinds, regex tags)
179Peter Hercek <phercek@gmail.com>**20090817184100
180 Ignore-this: 929dd59429be967bb3c9ec4409f6f850
181]
182[Event tracing: put the capability in the block marker, omit it from the events
183Simon Marlow <marlowsd@gmail.com>**20090915111227
184 Ignore-this: 6c1e336e077f50aca1c3e4c094e033a9
185 This makes events smaller and tracing quicker, and speeds up reading
186 and sorting the trace file.
187 
188 HEADS UP: this changes the format of event log files.  Corresponding
189 changes to the ghc-events package are required (and will be pushed
190 soon).  Normally we would make backwards-compatible changes, but this
191 changes the format of every event (to remove the capability) so I'm
192 breaking the rules this time.  This will be the only time we can do
193 this, since the format becomes public in 6.12.1.
194]
195[Add event block markers
196Simon Marlow <marlowsd@gmail.com>**20090913212546
197 Ignore-this: f9de0afe4730560fa79a5a8450e08dcf
198 These indicate the size and time span of a sequence of events in the
199 event log, to make it easier to sort and navigate a large event log.
200]
201[Optimise the code generated at trace points
202Simon Marlow <marlowsd@gmail.com>**20090912213504
203 Ignore-this: eaad8b3a8f204f0cbfed31d7e25672d1
204]
205[Improve the default parallel GC settings, and sanitise the flags (#3340)
206Simon Marlow <marlowsd@gmail.com>**20090915084000
207 Ignore-this: 1aec6ccccb26ed80286de468e72657a1
208 
209 Flags (from +RTS -?):
210 
211   -qg[<n>]  Use parallel GC only for generations >= <n>
212             (default: 0, -qg alone turns off parallel GC)
213   -qb[<n>]  Use load-balancing in the parallel GC only for generations >= <n>
214             (default: 1, -qb alone turns off load-balancing)
215 
216 these are good defaults for most parallel programs.  Single-threaded
217 programs that want to make use of parallel GC will probably want +RTS
218 -qg1 (this is documented).
219 
220 I've also updated the docs.
221]
222[Update the "Hints for using SMP parallelism" section
223Simon Marlow <marlowsd@gmail.com>**20090915083431
224 Ignore-this: e0147b4b025b356e9395b47f085002b7
225 In particular, remove the claim that the GC is single-threaded!
226]
227[Fix collateral damage after distdir-opts.mk was refactored away
228Simon Marlow <marlowsd@gmail.com>**20090914144427
229 Ignore-this: bc47d134ce4cdd47e664bf4cbb28d7bd
230]
231[alow macros to redefine builtin GHCi commands (implements #3084)
232Peter Hercek <phercek@gmail.com>**20090512172459
233 Ignore-this: 62f3aa596e922bd1cb8c4875ca674570
234]
235[Fix build on Windows
236Simon Marlow <marlowsd@gmail.com>**20090914110550
237 Ignore-this: b2aaa2183edfd175d23ea3b0dd8dd2b0
238]
239[Add "ghc-pkg init" command for creating a new package DB
240Simon Marlow <marlowsd@gmail.com>**20090914105823
241 Ignore-this: 1f788fb090f28c0ac005695fb79b3c7f
242]
243[Fix a space leak in the native code gen (again)
244Simon Marlow <marlowsd@gmail.com>**20090911152812
245 Ignore-this: 8c678698faf4f3cfa4be5c923fb4f6a2
246]
247[Use _ rather than : for the builtin package filenames
248Ian Lynagh <igloo@earth.li>**20090913204016
249 Using "builtin:foo" creates a file called "builtin" on Windows
250]
251[Don't register the non-munged stage1 ghc package
252Ian Lynagh <igloo@earth.li>**20090913161945
253 It confuses the build system.
254]
255[Fixes for compiling the HEAD with iteslf
256Ian Lynagh <igloo@earth.li>**20090913142122]
257[Don't try and put HaddockLex and HaddockParse into src dists
258Ian Lynagh <igloo@earth.li>**20090912175050
259 They no longer exist.
260]
261[ParsePkgConf no longer exists, so don't try to put it in source dists
262Ian Lynagh <igloo@earth.li>**20090912173253]
263[Tweak an error message
264Ian Lynagh <igloo@earth.li>**20090912173223]
265[Refactor sdist so that we can see which command is being run
266Ian Lynagh <igloo@earth.li>**20090912171627]
267[Fix the location of the package database in the installed ghc-pkg
268Ian Lynagh <igloo@earth.li>**20090912144046
269 It was using the old filename, rather than the new directory name.
270]
271[More bindist fixes
272Ian Lynagh <igloo@earth.li>**20090912143248]
273[Add includes/ghcautoconf.h and includes/ghcplatform.h to bindists
274Ian Lynagh <igloo@earth.li>**20090912132842]
275[Update the URL in the usage info to point to the current docs location
276Ian Lynagh <igloo@earth.li>**20090911220735]
277[fix installation of header files (#3451)
278Simon Marlow <marlowsd@gmail.com>**20090910121831
279 Ignore-this: d49dcadc1cbd62d7c593b06888aa3d5b
280]
281[move hschooks.c to ghc/, and enable it
282Simon Marlow <marlowsd@gmail.com>**20090911140702
283 Ignore-this: 97a3cc9b1fa2ce756058c4c708da4dd2
284]
285[Fix #3408: lengthen the idle GC time to 5s for GHC/GHCi.
286Simon Marlow <marlowsd@gmail.com>**20090911124547
287 Ignore-this: 238db99e1fcca0d15a7e5c2a948ac05c
288]
289[Comments and Cmm notes
290simonpj@microsoft.com**20090911133513
291 Ignore-this: 9fd8719a14824dbe2fcb07b655e972cd
292]
293[Remove the old package.conf parser, use read instead (fixed #3410)
294Simon Marlow <marlowsd@gmail.com>**20090911114928
295 Ignore-this: 4f677ceb1f05c55515da6dd5045fa6c5
296 Performance isn't an issue for reading the old-style package.conf
297 files, so we might as well revert to using read and fix a bug at the
298 same time.
299]
300[Fix some makefile logic, and remove the now unused *_USE_BOOT_LIBS vars
301Ian Lynagh <igloo@earth.li>**20090911123135]
302[Change a sed separator character to make it easier to read
303Ian Lynagh <igloo@earth.li>**20090911121827]
304[Use -fno-warn-name-shadowing when compiling Binary.hs
305Ian Lynagh <igloo@earth.li>**20090911114756]
306[Improve optimisation of cost centres
307simonpj@microsoft.com**20090911115630
308 Ignore-this: 9964cfe9d39b12eb10724cd1f3fee6b5
309 
310 This patch fixes test failures for the profiling way for drv001.
311 The problem was that the arity of a function was decreasing during
312 "optimisation" because of interaction with SCC annotations.
313 In particular
314       f = /\a. scc "f" (h x)    -- where h had arity 2
315 and h gets inlined, led to
316       f = /\a. scc "f" let v = scc "f" x in \y. <blah>
317 
318 Two main changes:
319 
320 1.  exprIsTrivial now says True for (scc "f" x)
321     See Note [SCCs are trivial] in CoreUtils
322 
323 2.  The simplifier eliminates nested pushing of the same cost centre:
324        scc "f" (...(scc "f" e)...)
325        ==>  scc "f" (...e...)
326 
327 
328 
329]
330[Fix build with GHC <= 6.10.1
331Simon Marlow <marlowsd@gmail.com>**20090911103142
332 Ignore-this: 7a378cd66edf9ada5ea813051a1a7c30
333]
334[loosen base dependency to allow base-3
335Simon Marlow <marlowsd@gmail.com>**20090911093139
336 Ignore-this: 7b07363b4e9003acbfc310a66d0746e8
337]
338[remove superfluous trailing backslash
339Simon Marlow <marlowsd@gmail.com>**20090911093124
340 Ignore-this: e13b6a5ca640c216db477485b92356d7
341]
342[Work around bug in old bytestring versions by reading the package DB strictly
343Simon Marlow <marlowsd@gmail.com>**20090911093103
344 Ignore-this: 96778e3c876a1ab012888368bbcd9777
345]
346[Add cmm-notes, describing Simon and John's work on Cmm pipeline
347simonpj@microsoft.com**20090911105316
348 Ignore-this: f042ad4d869a667d84de9d432e8d96ff
349]
350[Wibble to error message
351simonpj@microsoft.com**20090911090819
352 Ignore-this: 930f47d57a9d33643dd87f19821df55f
353]
354[add comment: __thread is not supported by gcc on OS X yet
355Simon Marlow <marlowsd@gmail.com>**20090910152146
356 Ignore-this: 44abcd5ece4baeb91c9461f3cb35df52
357]
358[Fix #3320: we forgot to save/restore the GC register variable
359Simon Marlow <marlowsd@gmail.com>**20090910151623
360 Ignore-this: 95fe8e80d1977feca7ba61222a992db7
361]
362[put back F_, just in case the via-C codegen uses it
363Simon Marlow <marlowsd@gmail.com>**20090910124037
364 Ignore-this: 4bbfcf2765422a9c965052120b7643fb
365]
366[remove debugging/testing code that got here by mistake
367Simon Marlow <marlowsd@gmail.com>**20090910122607
368 Ignore-this: 76a733fc1d310fc5bf38820b8d925bf1
369]
370[Three improvements to Template Haskell (fixes #3467)
371simonpj@microsoft.com**20090910125848
372 Ignore-this: 40e480334a8cd06d128a845cefd4632a
373 
374 This patch implements three significant improvements to Template Haskell.
375   
376 Declaration-level splices with no "$"
377 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
378 This change simply allows you to omit the "$(...)" wrapper for
379 declaration-level TH splices.  An expression all by itself is
380 not legal, so we now treat it as a TH splice.  Thus you can now
381 say
382        data T = T1 | T2
383        deriveMyStuff ''T
384 
385 where deriveMyStuff :: Name -> Q [Dec]
386 This makes a much nicer interface for clients of libraries that use
387 TH: no scary $(deriveMyStuff ''T).
388 
389 Nested top-level splices
390 ~~~~~~~~~~~~~~~~~~~~~~~~
391 Previously TH would reject this, saying that splices cannot be nested:
392        f x = $(g $(h 'x))
393 But there is no reason for this not to work.  First $(h 'x) is run,
394 yielding code <blah> that is spliced instead of the $(h 'x). Then (g
395 <blah>) is typechecked and run, yielding code that replaces the
396 $(g ...) splice. 
397 
398 So this simply lifts the restriction.
399 
400 Fix Trac #3467: non-top-level type splices
401 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
402 
403 It appears that when I added the ability to splice types in TH
404 programs, I failed to pay attention to non-top-level splices -- that
405 is, splices inside quotatation brackets. 
406 
407 This patch fixes the problem.  I had to modify HsType, so there's a
408 knock-on change to Haddock.
409 
410 Its seems that a lot of lines of code has changed, but almost all the
411 new lines are comments!
412 
413 General tidying up
414 ~~~~~~~~~~~~~~~~~~
415 As a result of thinking all this out I re-jigged the data type ThStage,
416 which had far too many values before.  And I wrote a nice state transition
417 diagram to make it all precise;
418    see Note [Template Haskell state diagram] in TcSplice
419 
420 Lots more refactoring in TcSplice, resulting in significantly less code.
421 (A few more lines, but actually less code -- the rest is comments.)
422 
423 I think the result is significantly cleaner.
424 
425]
426[Refactor the parsing of data type declarations
427simonpj@microsoft.com**20090908192327
428 Ignore-this: ee7969cd804c1901e4cf4f36d832fc2f
429 
430 This is a minor change to the parser that tidies it up a bit,
431 and allows us to parse
432 
433        data T :: *
434         data S :: * -> *
435 
436 just like 
437 
438        data T
439        data S a
440 
441]
442[Remove unused data constructor ITpragma in type Lexer.Token
443simonpj@microsoft.com**20090905171511
444 Ignore-this: a0f80c136477921ca8df3d2853e65e6b
445]
446[Comments in Cmm
447simonpj@microsoft.com**20090910122928
448 Ignore-this: 8a3bdd5a63ebd217ab5c9e02d482974c
449]
450[fix warnings
451Simon Marlow <marlowsd@gmail.com>**20090910111156
452 Ignore-this: b3a5e52a9c35b7ecc796b1efaa855856
453]
454[binary has unused-import warnings
455Simon Marlow <marlowsd@gmail.com>**20090910111115
456 Ignore-this: 31ec6d9a0f2f6d5c463a81d0234f8798
457]
458[Change the representation of the package database
459Simon Marlow <marlowsd@gmail.com>**20090910102703
460 Ignore-this: 7c9b38ded7f753d5bb95743695700dbc
461 
462  - the package DB is a directory containing one file per package
463    instance (#723)
464 
465  - there is a binary cache of the database (#593, #2089)
466 
467  - the binary package is now a boot package
468 
469  - there is a new package, bin-package-db, containing the Binary
470    instance of InstalledPackageInfo for the binary cache.
471 
472 Also included in this patch
473 
474  - Use colour in 'ghc-pkg list' to indicate broken or hidden packages
475   
476    Broken packages are red, hidden packages are
477   
478    Colour support comes from the terminfo package, and is only used when
479     - not --simple-output
480     - stdout is a TTY
481     - the terminal type has colour capability
482 
483  - Fix the bug that 'ghc-pkg list --user' shows everything as broken
484]
485[Improve the user guide section on shared libs
486Duncan Coutts <duncan@well-typed.com>**20090908183241
487 Ignore-this: ee48f925b9e5441be0fb004b774613cd
488 Make it clear that Haskell code to be used by other Haskell code
489 must be built as a package.
490]
491[FIX #711 implement osFreeAllMBlocks for unix
492Austin Seipp <mad.one@gmail.com>**20090910084630
493 Ignore-this: 5c773ab5f7f25350dda33d34b77f89f
494]
495[NO_CLEAN_GMP fixes
496Simon Marlow <marlowsd@gmail.com>**20090909093443
497 Ignore-this: 7d490a47c837f1a002937a2b229d0049
498]
499[Omit visibility pragmas on Windows (fixes warnings/validate failures)
500Simon Marlow <marlowsd@gmail.com>**20090909093217
501 Ignore-this: 14cd79e7cded8c0a353544d272f3b974
502]
503[Comments only, on Cmm data types
504simonpj@microsoft.com**20090910091703
505 Ignore-this: ff152a48718289c8125af052b30f8813
506]
507[Fix up logic to decide whether shared libs are being built or not
508Simon Marlow <marlowsd@gmail.com>**20090909115757
509 Ignore-this: 7709d980f416318eae71e8bae255fa2d
510 
511 Now, adding dyn to $(GhcLibWays) is how shared libs are enabled.
512 Everything else keys off that, rather than testing
513 $(BuildSharedLibs).
514]
515[remove a ToDo that is Done
516Simon Marlow <marlowsd@gmail.com>**20090908154411
517 Ignore-this: 44b2ada6bc9fe2ed33813bd18159d316
518]
519[comment fix
520Simon Marlow <marlowsd@gmail.com>**20090908150351
521 Ignore-this: 65b1708f41cfdc2f633e66940dc85be5
522]
523[refactor *_OPTS settings in the build system; no functional changes
524Simon Marlow <marlowsd@gmail.com>**20090909094408
525 Ignore-this: 34f51913eef30e4f0afc2c199ad1a42f
526]
527[add $(CONF_*_OPTS) for options that come from ./configure (fixes #3426)
528Simon Marlow <marlowsd@gmail.com>**20090908151908
529 Ignore-this: e70ca8071b79d25fc0d2fa45aafb319e
530]
531[Add -package-id, improve package shadowing behaviour and error messages
532Simon Marlow <marlowsd@gmail.com>**20090908140906
533 Ignore-this: 7180370e7ad19a6d632e8e3c9732267c
534 A few changes bundled together here:
535 
536  - Add -package-id flag, like -package but takes an
537    InstalledPackageId as an argument (mainly for Cabal)
538    (docs to follow)
539 
540  - Fix the shadowing behaviour: if we end up with
541    two packages with the same name/version that came from
542    different package databases, then one will shadow the
543    other.  This may mean we have to disable other packages
544    that depended on the now-shadowed package.  Lots of
545    refactoring to ensure that we can get reasonable diagnostics when
546    this happens
547 
548 <command line>: cannot satisfy -package shadowdep:
549     shadowdep-1-XXX is unusable due to missing or recursive dependencies:
550       shadow-1-XXX
551     (use -v for more information)
552]
553[remove --enable-hc-boot-unregisterised (implied by --enable-hc-boot now)
554Simon Marlow <marlowsd@gmail.com>**20090908141919
555 Ignore-this: ee36b12d19c28557ebb2334a87197da2
556 and fix up related cruft
557]
558[fix a warning
559Simon Marlow <marlowsd@gmail.com>**20090908131551
560 Ignore-this: f61240f6e4e4cae7c1272773ef6c6e01
561]
562[fix warnings
563Simon Marlow <marlowsd@gmail.com>**20090908130854
564 Ignore-this: 46db903fb4bc7b5e6be2fe591548f98e
565]
566[fix warnings
567Simon Marlow <marlowsd@gmail.com>**20090908114200
568 Ignore-this: c39be5ba8646bfb3241f02e15ad97683
569]
570[remove Haddock-lexing/parsing/renaming from GHC
571Isaac Dupree <id@isaac.cedarswampstudios.org>**20090826145924
572 Ignore-this: 6cecf43747cd1f50e3d8e21485af781
573]
574[Fix Trac #3403: interaction of CPR and pattern-match failure
575simonpj@microsoft.com**20090908131400
576 Ignore-this: 38bbb145cdc2c814a45122144ef84a4d
577 
578 A fine bug report (#3403) demonstrated that we were losing the tail
579 call property when a complicated pattern match was involved.  After
580 a bit of investigation I discovered that the culprit was the failure
581 join-point introduced by the pattern matcher.  It was a zero-argument
582 thunk, which is not very CPR-friendly, and that interacted badly with
583 CPR worker/wrapper.
584 
585 It's easy to fix, the same way that we fix other join points, by supplying
586 a dummy argument (that is not really passed at runtime.
587 
588]
589[Fix Trac #3468: improve checking for hs-boot interfaces
590simonpj@microsoft.com**20090908130350
591 Ignore-this: df9e84e963b1c69328e020772a481f5e
592 
593 When checking the interface exported by a hs-boot file against the
594 Real Thing, I'd failed to check the kind of a type constructor.  If you
595 get it wrong, the inconsistency leads to all manner of mischief, as
596 'wkahl' reports in #3468.
597 
598 This patch should do the job.
599 
600]
601[Allow TH/annotations to be used with -dynamic
602Simon Marlow <marlowsd@gmail.com>**20090908101644
603 Ignore-this: ba9e132a946e1f7cd56775d4237405f0
604]
605[Fix warnings on 64-bit platforms; fixes validate on x86-64
606Simon Marlow <marlowsd@gmail.com>**20090908092639
607 Ignore-this: 6bf1d21759aa5ac43807f010c9a9908f
608]
609[fix -u flags (after changes for #3310)
610Simon Marlow <marlowsd@gmail.com>**20090903072318
611 Ignore-this: 518e20973adf1136caf866770f5980ed
612]
613[Unify event logging and debug tracing.
614Simon Marlow <marlowsd@gmail.com>**20090829094727
615 Ignore-this: c137a22fb32a7a5b50fe6906b464344e
616 
617   - tracing facilities are now enabled with -DTRACING, and -DDEBUG
618     additionally enables debug-tracing.  -DEVENTLOG has been
619     removed.
620 
621   - -debug now implies -eventlog
622 
623   - events can be printed to stderr instead of being sent to the
624     binary .eventlog file by adding +RTS -v (which is implied by the
625     +RTS -Dx options).
626 
627   - -Dx debug messages can be sent to the binary .eventlog file
628     by adding +RTS -l.  This should help debugging by reducing
629     the impact of debug tracing on execution time.
630 
631   - Various debug messages that duplicated the information in events
632     have been removed.
633]
634[waitForReturnCapability: fix logic bug
635Simon Marlow <marlowsd@gmail.com>**20090831064908
636 Ignore-this: 9a9efaee2ab33fc26a04d075f93424b1
637 The check for whether a Capability was free was inverted, which harmed
638 performance for callbacks.
639]
640[Handle renames from #3310
641Simon Marlow <marlowsd@gmail.com>**20090830153123
642 Ignore-this: 7973f406c726dab27e28b2145dac81dc
643 
644 Also add a panic for resurrecting a thread blocked on an exception,
645 since it should never happen.
646]
647[add RTS_PRIVATE attribute
648Simon Marlow <marlowsd@gmail.com>**20090829171752
649 Ignore-this: 5566c6ecdd4f40c10c4d996856c39113
650]
651[Fix incorrectly hidden RTS symbols
652Simon Marlow <marlowsd@gmail.com>**20090829132814
653 Ignore-this: 6ec9d80873930cfaf05e4ffccce498f6
654]
655[Maintain Task/Capability invariants in performPendingThrowTos
656Simon Marlow <marlowsd@gmail.com>**20090829092607
657 Ignore-this: f33aa00f326155172c30906c7db9ec5b
658 Fixes an ASSERTION failure with concprog001, -threaded -debug, +RTS -N2
659]
660[Declare RTS-private prototypes with __attribute__((visibility("hidden")))
661Simon Marlow <marlowsd@gmail.com>**20090805102159
662 Ignore-this: 7e298c7ecbc1216502463fa05a984d3b
663 This has no effect with static libraries, but when the RTS is in a
664 shared library it does two things:
665 
666  - it prevents the function from being exposed by the shared library
667 
668  - internal calls to the function can use the faster non-PLT calls,
669    because the function cannot be overriden at link time.
670]
671[Fix #3461: protect the use of keepCAFs with #ifdef DYNAMIC
672Simon Marlow <marlowsd@gmail.com>**20090828125802
673 Ignore-this: 96e2dd803e548ec080d701791eab06c
674]
675[fix 'darcs-all rec' (amongst other things)
676Simon Marlow <marlowsd@gmail.com>**20090827141554
677 Ignore-this: fb91b85e37c9be9d153f381c27d9d37c
678]
679[REDO: Add -r option to darcs-all, and remove push-all (#3375)
680Simon Marlow <marlowsd@gmail.com>**20090827135717
681 Ignore-this: 270dbe385afb807c32eaa4b02a3f7d7
682 
683 rolling back:
684 
685 Mon Aug  3 11:44:13 BST 2009  Simon Marlow <marlowsd@gmail.com>
686   UNDO: Add -r option to darcs-all, and remove push-all (#3375)
687   Contributed by: seliopou@gmail.com
688       
689   This patch modifies darcs-all to have feature parity with push-all by
690   recognizing two new options.
691   
692       * -i, equivalent to --ignore-failure in push-all
693       * -r <repo>, specifies the remote repository darcs commands will use
694   
695   Some example commands:
696   
697   Get the libraries from a repository of your choosing. This is useful
698   when working with a git mirror:
699   
700       $ ./darcs-all -r http://darcs.haskell.org get
701   
702   Pull changes. Used to be:
703   
704       $ ./push-all --pull http://darcs.haskell.org
705   
706   Is now:
707   
708       $ ./darcs-all -r http://darcs.haskell.org pull
709   
710   Or to use the default remote of the ghc repository:
711   
712       $ ./darcs-all pull
713 
714     M ./darcs-all -79 +33
715     A ./push-all
716]
717[Add a link to hp2any from the profiling section.
718Simon Marlow <marlowsd@gmail.com>**20090827114050
719 Ignore-this: 998f316811cacaa3a9ee6a25aae99e80
720]
721[Don't mess up absolute INCLUDE_DIRS
722Matthias Kilian <kili@outback.escape.de>**20090826153340
723 Ignore-this: 3b8c2cceee0bcf9397fb803991ce27ab
724 When there are some absolute include dirs, don't create arguments
725 like -Ilibraries/base//usr/local/include.
726 
727 I need this fix for injecting the iconv include dir (which is
728 /usr/local/include on OpenBSD) into the build of libraries/base.
729]
730[Fix "make install"
731Ian Lynagh <igloo@earth.li>**20090826155638
732 We need to change a dependency on
733     pkg-inplace
734 to
735     pkg-$abihash
736 when installing
737]
738[Use -W, not -Werror, for gcc older than 3.4
739Matthias Kilian <kili@outback.escape.de>**20090826210044
740 Ignore-this: d2fdfef7c2915f58ebe716986847a22d
741]
742[Configurable iconv header and library locations
743Matthias Kilian <kili@outback.escape.de>**20090826155913
744 Ignore-this: f3ef2490c61fea6f1cfff648422b919b
745 Should help to fix the build on OpenBSD (together with a corresponding
746 patch to libraries/base).
747]
748["ghc-cabal install" now needs to know where GHC is, to get the ABI hash
749Ian Lynagh <igloo@earth.li>**20090826133359]
750[Fix bindist creation
751Ian Lynagh <igloo@earth.li>**20090826122953
752 We were running into problems like:
753     for f in  LICENSE configure config.sub config.guess [...]
754     make[2]: execvp: /bin/sh: Argument list too long
755 This patch moves the loop into make, rather than the shell.
756]
757[UNDO: fix the inplace runghc (it broke the installed runghc)
758Simon Marlow <marlowsd@gmail.com>**20090826104937
759 Ignore-this: 4a9639a93dbe37d81baafcec0029cdcb
760]
761[Fix part of #3398: pretty-printing always goes via the I/O library encoding
762Simon Marlow <marlowsd@gmail.com>**20090826104052
763 Ignore-this: 7ce68105539ff38f4853de149a43a1a3
764 That is, unless we're printing in LeftMode, where we bypass encoding
765 for speed.  This is safe, because LeftMode is used for outputting C or
766 asm, where everyting is Z-encoded and hence ASCII.
767 
768 Error messages and other compiler output containing Unicode will now
769 appear correctly according to the locale settings.
770]
771[Tidy up file headers and copyrights; point to the wiki for docs
772Simon Marlow <marlowsd@gmail.com>**20090825095047
773 Ignore-this: d34994b9910fd24ff7498102d2a12648
774 
775 I've updated the wiki page about the RTS headers
776   http://hackage.haskell.org/trac/ghc/wiki/Commentary/SourceTree/Includes
777 to reflect the new layout and explain some of the rationale.  All the
778 header files now point to this page.
779]
780[Follow changes in Cabal: package -> sourcePackageId
781Simon Marlow <marlowsd@gmail.com>**20090824160020
782 Ignore-this: c1f9d41c2ed75cf47842fa04c4b2fac5
783]
784[fix an unused-import warning
785Simon Marlow <marlowsd@gmail.com>**20090824153657
786 Ignore-this: 35e87617fc289237cfa12133ee9d5dca
787]
788[Add unique package identifiers (InstalledPackageId) in the package DB
789Simon Marlow <marlowsd@gmail.com>**20090820110920
790 Ignore-this: 5e09becc51e6888ec5186811e7e33d46
791 See commentary at
792 http://hackage.haskell.org/trac/ghc/wiki/Commentary/Packages
793]
794[Move the standalone-deriving flag test from parser to renamer
795simonpj@microsoft.com**20090825073324
796 Ignore-this: 10e3760c5443fc88b0f498ad0a2595ae
797 
798 This is just a tiny refactoring.  In general, we're trying to
799 get rid of parser errors in favour of later, more civlised, errors.
800 
801]
802[Error message wibble
803simonpj@microsoft.com**20090825073259
804 Ignore-this: 85257158393634c41057a0849d95490f
805]
806[Fix Trac #3406 (albeit not very satisfactorily): scoped type variables
807simonpj@microsoft.com**20090825073059
808 Ignore-this: 1509e0565ccd4b6708ac4cf4b2eb451e
809 
810 The issue here is this:
811 
812   type ItemColID a b = Int  -- Discards a,b
813 
814   get :: ItemColID a b -> a -> ItemColID a b
815   get (x :: ItemColID a b) = x :: ItemColID a b
816 
817 The pattern signature for 'x' doesn't actually rigidly bind a,b.
818 This crashed GHC 6.10 with a 'readFilledBox' panic.  Now we fail
819 with an erroe message
820 
821 With the new outside-in algorithm we'll be able to accept this program.
822 
823]
824[Make FastString thread-safe.
825Thomas Schilling <nominolo@googlemail.com>**20090824182252
826   
827 This is needed both for per-session parallelism and for allowing
828 multiple concurrent sessions in the same process.  With the help of
829 atomicModifyIORef and unsafePerformIO it is also quite fast--an MVar
830 would most likely be slower.  On a full compilation of Cabal's head
831 branch it was about 1-2 percent slower, but then overall compilation
832 times varied by about 4 percent, so I think it's worth it.
833]
834[Improve docs on -XFlexibleContexts
835simonpj@microsoft.com**20090824113722
836 Ignore-this: 16c4b05f52bca250ae6eff59feb08cc4
837]
838[fix do-notation warnings
839Simon Marlow <marlowsd@gmail.com>**20090824080400
840 Ignore-this: 74e0b085478ec858ce56cc925749e0ea
841]
842[Use explicit Word32/Int32 in place of Int in the on-disk .hi file
843Simon Marlow <marlowsd@gmail.com>**20090821155028
844 Ignore-this: e48ea5045f9460c347d457ada0e2b0da
845 For: FastStrings, Names, and Bin values.  This makes .hi files smaller
846 on 64-bit platforms, while also making the format a bit more robust.
847]
848[Fix the interface-file incompatibility crash (#3435)
849Simon Marlow <marlowsd@gmail.com>**20090821154737
850 Ignore-this: 5b7b9aca621fd378a7f911c50429c100
851 
852 We now have a dummy 32/64-bit field near the beginning of a .hi file
853 for backward-compatibility reasons; see comments (Note [dummy iface
854 field]) in BinIface.hs.
855]
856[trim Data.Sequence import, in preparation for expanding its API
857Ross Paterson <ross@soi.city.ac.uk>**20090824080533
858 Ignore-this: 97f8c3e309c14a132f20c565d33d46a9
859]
860[Remove bitrotted IA64 code in Linker.c
861Ian Lynagh <igloo@earth.li>**20090823151600
862 It breaks the unregisterised build on IA64.
863]
864[Make consIORef atomic.
865Thomas Schilling <nominolo@googlemail.com>**20090822230937
866 Ignore-this: c4570e17a21be724b45c574bd25d0330
867]
868[Make updates to external package state idempotent.
869Thomas Schilling <nominolo@googlemail.com>**20090821235355
870 
871 Without this, concurrent updates to the EPS could introduce
872 overlapping instances (even though they came from the same module).
873]
874[Fix Trac #3423: missed instantiation for newtype-derived instances
875simonpj@microsoft.com**20090821210700
876 Ignore-this: 73fa66b45a9affe5b4e0276551e5861f
877 
878 Somehow I'd forgotten to instantiate the coercion that is stored in a
879 'NewtypeDerived' constructor in an InstInfo.  The necessary code is
880 in TcInstDcls.tc_inst_decl2.
881 
882 The result was ghc: panic! (the 'impossible' happened)
883    (GHC version 6.10.3 for x86_64-unknown-linux):
884    No match in record selector Var.tcTyVarDetails
885 because we were looking at an (uninstantiated) TyVar instead of
886 an (instantiated) TcTyVar.
887 
888]
889[Put "dl" back in rts/package.conf if HAVE_DL is defined
890Ian Lynagh <igloo@earth.li>**20090821145423
891 Fixes linking with -dynamic
892]
893[Link CMM objects into dynamic libraries
894Ian Lynagh <igloo@earth.li>**20090821132809
895 This fixes linking hello world with -dynamic. I've also added some more
896 variables, so there is less duplication between the different ways of
897 linking.
898]
899[-fPIC -fvia-C issues a warning and ignores -fvia-C
900Simon Marlow <marlowsd@gmail.com>**20090821144544
901 Ignore-this: 2ba1902cf7eec7f149f38cadeac8c245
902 Also, -fPIC causes an error if the target is registerised and has no
903 native code generator.
904]
905[Use allocateLocal() rather than allocate() in the interpreter
906Simon Marlow <marlowsd@gmail.com>**20090820152325
907 Ignore-this: 42cc9250f46d95a945394b82acc76be4
908 This gives about a 15% performance boost in GHCi for me.  nice!
909]
910[Another tiny tidy-up to RnPat
911simonpj@microsoft.com**20090821100826
912 Ignore-this: 4290aab233ee1b0fcd3768009950a213
913]
914[Fix Trac #3437: strictness of specialised functions
915simonpj@microsoft.com**20090821095251
916 Ignore-this: 24345ff251a517e540a9666a78ed8176
917 
918 'lilac' helpful pin-pointed a space leak that was due to a specialised
919 function being insufficiently strict.  Here's the new comment in SpecConstr:
920 
921 Note [Transfer strictness]
922 ~~~~~~~~~~~~~~~~~~~~~~~~~~
923 We must transfer strictness information from the original function to
924 the specialised one.  Suppose, for example
925 
926   f has strictness     SS
927         and a RULE     f (a:as) b = f_spec a as b
928 
929 Now we want f_spec to have strictess  LLS, otherwise we'll use call-by-need
930 when calling f_spec instead of call-by-value.  And that can result in
931 unbounded worsening in space (cf the classic foldl vs foldl')
932 
933 See Trac #3437 for a good example.
934 
935 The function calcSpecStrictness performs the calculation.
936 
937 
938]
939[Wibbles to field-label puns
940simonpj@microsoft.com**20090821090637
941 Ignore-this: ed6dc679b906b2a928e1b9a6db590108
942]
943[Fix library installation; fixes #3374
944Ian Lynagh <igloo@earth.li>**20090820173707
945 When configuring packages, enable library profiling and shared libraries
946 based on the ways in GhcLibWays.
947]
948[Escape some $s in makefiles for consistency
949Ian Lynagh <igloo@earth.li>**20090820165033]
950[Wibble to RnPat refactoring
951simonpj@microsoft.com**20090820161520
952 Ignore-this: 77c328334e088113afb25275f0aca364
953]
954[Rollback: use cas() to claim the closure in copyPart(), to match copy_tag()
955Simon Marlow <marlowsd@gmail.com>**20090820155833
956 Ignore-this: e62da4d667c15c0dafb2660f4b915b36
957 
958 rolling back:
959 
960   * use cas() to claim the closure in copyPart(), to match copy_tag()
961   * rename whitehole_spin to evac_collision, and update it properly
962 
963 This introduced a new failure in parallel GC.  I'll rollback for now
964 until I've fixed it.
965]
966[Relax the assumption that all objects fit in a single block (#3424)
967Simon Marlow <marlowsd@gmail.com>**20090820144308
968 Ignore-this: 44ec5ed31491241b6f03182c80c0681e
969 
970 It is possible for the program to allocate single object larger than a
971 block, without going through the normal large-object mechanisms that
972 we have for arrays and threads and so on. 
973 
974 The GC was assuming that no object was larger than a block, but #3424
975 contains a program that breaks the assumption.  This patch removes the
976 assumption.  The objects in question will still be copied, that is
977 they don't get the normal large-object treatment, but this case is
978 unlikely to occur often in practice.
979 
980 In the future we may improve things by generating code to allocate
981 them as large objects in the first place.
982]
983[remove a bogus assertion
984Simon Marlow <marlowsd@gmail.com>**20090820143305
985 Ignore-this: 1b58b8a73d58257630832d37475795bb
986]
987[Restore the GHC version check
988Simon Marlow <marlowsd@gmail.com>**20090820134234
989 Ignore-this: a1a0640e985a9eaf78804465276aadcd
990 I'm not sure what happened here, but the ordering of tests was messed
991 up, with the result that the GHC version check was being omitted.
992]
993[fix the inplace runghc
994Simon Marlow <marlowsd@gmail.com>**20090820122538
995 Ignore-this: 54be86fcd9ff96b5a37e77f64bf3c1d9
996 
997 It was invoking $(TOP)/inplace/bin/ghc rather than
998 $(TOP)/inplace/bin/ghc-stage2
999]
1000[Add a case for IND (and a comment).  Fixes #3424, perhaps only partially.
1001Simon Marlow <marlowsd@gmail.com>**20090820131537
1002 Ignore-this: 75287786343359fdceb0691f88cb4f5f
1003]
1004[Improvements to record puns, wildcards
1005simonpj@microsoft.com**20090820123443
1006 Ignore-this: 2ac26fcc045853dab346280bcc440431
1007 
1008 * Make C { A.a } work with punning, expanding to C { A.a = a }
1009 
1010 * Make it so that, with -fwarn-unused-matches,
1011         f (C {..}) = x
1012   does not complain about the bindings introduced by the "..".
1013 
1014 * Make -XRecordWildCards implies -XDisambiguateRecordFields.
1015 
1016 * Overall refactoring of RnPat, which had become very crufty.
1017   In particular, there is now a monad, CpsRn, private to RnPat,
1018   which deals with the cps-style plumbing.  This is why so many
1019   lines of RnPat have changed.
1020 
1021 * Refactor the treatment of renaming of record fields into two passes
1022        - rnHsRecFields1, used both for patterns and expressions,
1023             which expands puns, wild-cards
1024        - a local renamer in RnPat for fields in patterns
1025        - a local renamer in RnExpr for fields in construction and update
1026   This make it all MUCH easier to understand
1027 
1028 * Improve documentation of record puns, wildcards, and disambiguation
1029 
1030]
1031[Make -dppr-debug print locations in HsSyn
1032simonpj@microsoft.com**20090820123245
1033 Ignore-this: 673f8100c2744e58635e75e6cf585ce5
1034 
1035 Show SrcSpans for Located things might be overkill, but it's sometimes
1036 useful.
1037 
1038 I also added
1039   ppWhen, ppUnless :: Bool -> SDoc -> SDoc
1040 to Outputable
1041 
1042]
1043[Make -dynamic a proper way, so we read the .dyn_hi files
1044Simon Marlow <marlowsd@gmail.com>**20090820121208
1045 Ignore-this: 252d2091ff90041e055efd0d62ebe185
1046 Also, I cleaned up some of the way-related infrastructure, removing
1047 two global variables. 
1048 
1049 There's more that could be done here, but it's a start.  The way flags
1050 probably don't need to be static any more.
1051]
1052[fix warning
1053Simon Marlow <marlowsd@gmail.com>**20090820110532
1054 Ignore-this: ce16d3661b6bc2f0d382f9025c007019
1055]
1056[generalise the type of "on"
1057Simon Marlow <marlowsd@gmail.com>**20090820094516
1058 Ignore-this: 5b789c36663accb7284c26b1bd7e019d
1059]
1060[need to check $(HADDOCK_DOCS) around contents/index generation
1061Simon Marlow <marlowsd@gmail.com>**20090820092220
1062 Ignore-this: ef5352164fd6aac41ba3a1542182d213
1063]
1064[WAY_dyn_LIB_TARGET is not used anywhere; kill it
1065Simon Marlow <marlowsd@gmail.com>**20090819155952
1066 Ignore-this: 36b784db6d85acc2374e781fcd77d10d
1067]
1068[Rolling back: Add a kludge to fix building shared libs
1069Simon Marlow <marlowsd@gmail.com>**20090819145507
1070 Ignore-this: fd2cc70119796be7a0ba62131f7e9ddb
1071]
1072[rename whitehole_spin to evac_collision, and update it properly
1073Simon Marlow <marlowsd@gmail.com>**20090819141518
1074 Ignore-this: c6bad4a99758b7a60749cc769305aa90
1075]
1076[use cas() to claim the closure in copyPart(), to match copy_tag()
1077Simon Marlow <marlowsd@gmail.com>**20090819141106
1078 Ignore-this: 6baad6aa65e640d9dbfd3d18b0f77644
1079 
1080 copyPart() was still using the old WHITEHOLE mechanism for locking the
1081 closure.  I don't think this fixes any actual bugs, but it removes a
1082 gratuitous difference between two functions that should look similar.
1083]
1084[Always yieldCapabilty() when a bound thread blocks
1085Simon Marlow <marlowsd@gmail.com>**20090819130856
1086 Ignore-this: 25303050a3095760972fc550445865e6
1087 Fixes crash in concprog002(threaded2_qw), and possibly other problems
1088]
1089[FIX #2767 & original problem of #3208
1090Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20090820072608
1091 Ignore-this: cb8326cf885c2da0b497ef10f8fed942
1092]
1093[Improve the "Stack space overflow" error; fixes trac #3296
1094Ian Lynagh <igloo@earth.li>**20090819202112]
1095[Detect C finalizer callbacks in rts_lock() instead of schedule()
1096Simon Marlow <marlowsd@gmail.com>**20090819123208
1097 Ignore-this: 522b05d928b711ee3473539c9db421b4
1098 Otherwise, finalizer callbacks cause a deadlock in the threaded RTS
1099 (including GHCi)
1100]
1101[Bump Happy requirement from 1.15 to 1.16
1102Simon Marlow <marlowsd@gmail.com>**20090819093929
1103 Ignore-this: d550a42d284b8585faf546231046134b
1104 Now that the haskell98 dependency of GHC has been removed, the
1105 Happy-generated parsers must import Data.Array rather than Array, and
1106 that change was made in Happy 1.16.
1107]
1108[Restore the entry field in StgInfoTable when !defined(TABLES_NEXT_TO_CODE)
1109Simon Marlow <marlowsd@gmail.com>**20090819113550
1110 Ignore-this: 491038d9d526888f31e12e7349024e37
1111 Somehow this got lost, probably in the recent RTS tidy-up. 
1112 Fixes segfaults in unregisterised compilation.
1113]
1114[Fix warnings
1115Ian Lynagh <igloo@earth.li>**20090819125440]
1116[Put a newtype wrapper around ModuleEnv
1117Ian Lynagh <igloo@earth.li>**20090818192903]
1118[Make the thr_dyn RTS ways optional on GhcUnregisterised
1119Simon Marlow <marlowsd@gmail.com>**20090819095538
1120 Ignore-this: 7bbeddde0fcd7f2030087f3292416492
1121 
1122 Fixes this failure in the unreigsterised build:
1123   /usr/bin/ld: cannot find -lHSrts_thr
1124]
1125[fix an include
1126Simon Marlow <marlowsd@gmail.com>**20090819095237
1127 Ignore-this: d2988008e40589f615e56f92df01c19b
1128]
1129[remove some redundant declarations
1130Simon Marlow <marlowsd@gmail.com>**20090819094338
1131 Ignore-this: ce62ec28b40d00f6e8b072807b2f7591
1132]
1133[Remove the lock around NameCache for readBinIface.
1134Thomas Schilling <nominolo@googlemail.com>**20090818213243
1135 
1136 Turns out using atomic update instead of a full-blown lock was easier
1137 than I thought.  It should also be safe in the case where we
1138 concurrently read the same interface file.  Whichever thread loses the
1139 race will simply find that all of the names are already defined and
1140 will have no effect on the name cache.
1141]
1142[Fix #3429: a tricky race condition
1143Simon Marlow <marlowsd@gmail.com>**20090818112942
1144 Ignore-this: c6f47c6bd3b12ecbd7aa3cfcd25bf9a7
1145 
1146 There were two bugs, and had it not been for the first one we would
1147 not have noticed the second one, so this is quite fortunate.
1148 
1149 The first bug is in stg_unblockAsyncExceptionszh_ret, when we found a
1150 pending exception to raise, but don't end up raising it, there was a
1151 missing adjustment to the stack pointer. 
1152 
1153 The second bug was that this case was actually happening at all: it
1154 ought to be incredibly rare, because the pending exception thread
1155 would have to be killed between us finding it and attempting to raise
1156 the exception.  This made me suspicious.  It turned out that there was
1157 a race condition on the tso->flags field; multiple threads were
1158 updating this bitmask field non-atomically (one of the bits is the
1159 dirty-bit for the generational GC).  The fix is to move the dirty bit
1160 into its own field of the TSO, making the TSO one word larger (sadly).
1161]
1162[comment fixes (install.mk.in, not dirs.mk.in)
1163Simon Marlow <marlowsd@gmail.com>**20090817094724
1164 Ignore-this: 1ca40b832e7cec7a560762a40daa8d4f
1165]
1166[Fix configure summary: --enable-shared has gone
1167Simon Marlow <marlowsd@gmail.com>**20090817091210
1168 Ignore-this: 97dce2f98f13c00fd4475f78f3c04e84
1169]
1170[comment fix
1171Simon Marlow <marlowsd@gmail.com>**20090817091105
1172 Ignore-this: 880c1948e6f1cfc2841c20a9f93232c1
1173]
1174[remove unused file
1175Simon Marlow <marlowsd@gmail.com>**20090806112859
1176 Ignore-this: b0aea4ddcd651e04806a4d2a0f250c3d
1177]
1178[Fix unregisterised build
1179Simon Marlow <marlowsd@gmail.com>**20090806095417
1180 Ignore-this: 93ad8435aa581fd767fb639b10c1ed4a
1181]
1182[FIX #3405
1183Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20090818121425
1184 Ignore-this: 6ca07059605e9cdf5ab5aa5bb8cc4455
1185]
1186[Make the dynamic linker thread-safe.
1187Thomas Schilling <nominolo@googlemail.com>**20090817142352
1188   
1189 The current implementation is rather pessimistic.  The persistent
1190 linker state is now an MVar and all exported Linker functions are
1191 wrapped in modifyMVar calls.  This is serves as a big lock around all
1192 linker functions.
1193 
1194 There might be a chance for more concurrency in a few places. E.g.,
1195 extending the closure environment and loading packages might be
1196 independent in some cases.  But for now it's better to be on the safe
1197 side.
1198]
1199[Make access to NameCache atomic.  Sometimes needs a lock.
1200Thomas Schilling <nominolo@googlemail.com>**20090817004819
1201 
1202 'readBinIface' updates the name cache in a way that is hard to use
1203 with atomicModifyIORef, so this patch introduces a lock for this case.
1204 All other updates use atomicModifyIORef.
1205 
1206 Having a single lock is quite pessimistic, so it remains to be seen
1207 whether this will become a problem.  In principle we only need to make
1208 sure that we do not load the same file concurrently (or that it's
1209 idempotent).  In practice we also need to ensure that concurrent reads
1210 do not cancel each other out (since the new NameCache may be based on
1211 an outdated version).
1212]
1213[Make updates to the Finder caches atomic.  Well, almost.
1214Thomas Schilling <nominolo@googlemail.com>**20090816231920
1215 
1216 Flushing and uncaching a single module is not completely atomic since
1217 both caches a cleared separately.  However, flushing is only done when
1218 changing the working directory which shouldn't be done concurrently to
1219 other threads.  Uncaching is only done in 'summariseModule' which
1220 requires some more work to become thread-safe anyway.
1221]
1222[Make updates to the external package state atomic.
1223Thomas Schilling <nominolo@googlemail.com>**20090816231316
1224 Ignore-this: a700ff0c6725264941d6a5458ce5dade
1225]
1226[Minor documentation fixes.
1227Thomas Schilling <nominolo@googlemail.com>**20090722231342]
1228[bindist fix
1229Ian Lynagh <igloo@earth.li>**20090816200326]
1230[Build fixes
1231Ian Lynagh <igloo@earth.li>**20090816190043]
1232[Remove the old platform code from the bindist configure.ac
1233Ian Lynagh <igloo@earth.li>**20090814225431]
1234[Make our install variables etc compliant with GNU standards; fixes #1924
1235Ian Lynagh <igloo@earth.li>**20090814224549]
1236[Improve fix to Trac #3007
1237simonpj@microsoft.com**20090814110214
1238 Ignore-this: ba7d9b91b80f66aa5ece93dcd4ca4bab
1239 
1240 This patch tides up Ian's fix a little. In particular, if if you
1241 {-# SOURCE #-} import a module from a different package, you now
1242 get a much more civlised error message.
1243 
1244]
1245[Only look up whether a module's SOURCE-imported if it's in the current package
1246Ian Lynagh <igloo@earth.li>**20090813162435
1247 Suppose we import anotherPackage:M, which exports things from
1248 anotherPackage:Internal. Then GHC will want to read
1249 anotherPackage:Internal.hi.
1250 
1251 However, if we have also SOURCE-imported thisPackage:Internal then
1252 we don't want GHC to try to read anotherPackage:Internal.hi-boot
1253 instead.
1254 
1255 The mapping that tells us whether a module is SOURCE-imported uses just
1256 the module name for the key, so we have to check the package ID before
1257 looking it up.
1258 
1259 Fixes #3007.
1260]
1261[Fix Trac #3409: type synonyms that discard their arguments
1262simonpj@microsoft.com**20090813161154
1263 Ignore-this: d2ab9292c281323280fc74e04a9d29dd
1264 
1265 Type synonyms that don't mention one of their type parameters on the
1266 RHS are a pain in the neck.  This patch fixes a long-standing bug (that
1267 simply has not appeared before) in that exprType could return a type
1268 mentioning an existentially-quantified variable (in one of those ignored
1269 argument positions).
1270 
1271 See CoreUtils Note [Existential variables and silly type synonyms]
1272 
1273 The fix is not entirely beautiful, but it works, and is very localised.
1274 
1275]
1276[Add support for multi-line deprecated pragmas; trac #3303
1277Ian Lynagh <igloo@earth.li>**20090812185912]
1278[Fix a sanity check; fixes #3089
1279Ian Lynagh <igloo@earth.li>**20090812133817]
1280[Skip "Cabal check" for certain packages that we know will fail
1281Ian Lynagh <igloo@earth.li>**20090811220146]
1282[Fix "Cabal check" warnings
1283Ian Lynagh <igloo@earth.li>**20090811215839]
1284[Check Cabal packages when validating
1285Ian Lynagh <igloo@earth.li>**20090811212559
1286 This checks that hackage would accept the packages.
1287 Currently warnings are printed, but don't result in failure.
1288]
1289[Include a pointer to GHC.Exts in the generated GHC.Prim docs
1290Ian Lynagh <igloo@earth.li>**20090811145300]
1291[Refactor, and improve error messages (cf Trac #3395)
1292simonpj@microsoft.com**20090811143655
1293 Ignore-this: e7205f5bcf8408ff791ba19156e48461
1294 
1295 The Convert stuff should not panic if the programmer hands over an
1296 invalid TH term; instead it should give a graceful error message.
1297 Largely this had been done, but not for do-blocks, so this patch
1298 fixes that problem.
1299 
1300 Moreover, I did some refactoring and tidying up, which is why
1301 so many lines of code have changed
1302 
1303]
1304[Fix Trac #3421: a typo in TysPrim
1305simonpj@microsoft.com**20090810164320
1306 Ignore-this: 67af95909862d672c6eb738c52458873
1307 
1308 This is just a blatant typo, where Any1 :: *->* was getting mixed
1309 up with Any :: *.
1310 
1311]
1312[Improve the recent changes to overlap-checking for view patters
1313simonpj@microsoft.com**20090810141158
1314 Ignore-this: 8b97dfef44aa9951c31587a884ec92f
1315 
1316 The previous patch simply gave up for view patterns; this version
1317 instead treats them like n+k patterns and gives signficantly better
1318 results.
1319 
1320 Less code, too.
1321 
1322]
1323[Turn group into a special_id when TransformListComp is on
1324Max Bolingbroke <batterseapower@hotmail.com>**20090717224903
1325 Ignore-this: eabef2f2044ee6cc6bc876529f4044ca
1326]
1327[Make Constants shareable with the base package
1328Ian Lynagh <igloo@earth.li>**20090809180701]
1329[Minor refactoring
1330Ian Lynagh <igloo@earth.li>**20090809154258]
1331[FIX #2395 (ViewPatterns trigger bad Check errors)
1332Alexander Dunlap <alexander.dunlap@gmail.com>**20090807184841
1333 Ignore-this: af83dc1d93b735bd89d5f9dcb2f5ca6b
1334]
1335[Pass -m32 to gcc on i386 and ppc OS X
1336Ian Lynagh <igloo@earth.li>**20090808222537
1337 This makes GHC work even if you are actually running it in 64bit mode,
1338 e.g. on OS X 10.6 Snow.
1339]
1340[Fix bindist creation
1341Ian Lynagh <igloo@earth.li>**20090808184407
1342 This is a bit kludgy. We've hit the maximum number of arguments you can
1343 have in the for loop for adding files to the bindist list, so this just
1344 splits the list in 2.
1345]
1346[Put the library haddock docs in the html subdirectory of docdir
1347Ian Lynagh <igloo@earth.li>**20090808175756]
1348[Install the main doc index page, and also put it in bindists
1349Ian Lynagh <igloo@earth.li>**20090808112034]
1350[FIX BUILD: Remove harmful dnls and identifier typo in aclocal.m4
1351Alexander Dunlap <alexander.dunlap@gmail.com>**20090801012335
1352 Ignore-this: 825b21e13d4b3f04fab91bf07f4e693b
1353]
1354[Fix the build on OS X
1355Ian Lynagh <igloo@earth.li>**20090807152151]
1356[Add -r option to darcs-all, and remove push-all (#3375)
1357Simon Marlow <marlowsd@gmail.com>*-20090803104413
1358 Ignore-this: 6871c15294113898902be90210d9a7a9
1359 Contributed by: seliopou@gmail.com
1360     
1361 This patch modifies darcs-all to have feature parity with push-all by
1362 recognizing two new options.
1363 
1364     * -i, equivalent to --ignore-failure in push-all
1365     * -r <repo>, specifies the remote repository darcs commands will use
1366 
1367 Some example commands:
1368 
1369 Get the libraries from a repository of your choosing. This is useful
1370 when working with a git mirror:
1371 
1372     $ ./darcs-all -r http://darcs.haskell.org get
1373 
1374 Pull changes. Used to be:
1375 
1376     $ ./push-all --pull http://darcs.haskell.org
1377 
1378 Is now:
1379 
1380     $ ./darcs-all -r http://darcs.haskell.org pull
1381 
1382 Or to use the default remote of the ghc repository:
1383 
1384     $ ./darcs-all pull
1385]
1386[Add a kludge to fix building shared libs
1387Ian Lynagh <igloo@earth.li>**20090807130731
1388 The .dyn_hi files currently depend on the .dyn_hi files of modules that
1389 they import. But they actually want the .hi files of modules from
1390 another package.This we make the .dyn_hi files depend on the .hi files
1391 so we are sure that they exist and are up-to-date.
1392]
1393[Leave dyn in GhcLibWays when validating
1394Ian Lynagh <igloo@earth.li>**20090807005445]
1395[Build shared library support by default on platforms that support it
1396Ian Lynagh <igloo@earth.li>**20090806164320]
1397[Update the libffi filenames to follow the new version number
1398Ian Lynagh <igloo@earth.li>**20090806141359
1399 Stops make going into an infinite rebuilding loop
1400]
1401[Fix ticky build
1402Simon Marlow <marlowsd@gmail.com>**20090806093021
1403 Ignore-this: dbabf96061763e3a6cb7259e3ea71bed
1404]
1405[add #include <sys/types.h> (hopefully fixes OS X build)
1406Simon Marlow <marlowsd@gmail.com>**20090806081747
1407 Ignore-this: 82d02b32ec5f7ad1966729402a6610
1408]
1409[profiling build fix
1410Simon Marlow <marlowsd@gmail.com>**20090805102217
1411 Ignore-this: 610a09b10b9f326e392f96d92f0fcb20
1412]
1413[profiling build fixes
1414Simon Marlow <marlowsd@gmail.com>**20090805093539
1415 Ignore-this: 90015383cdb908227508363b28de76e4
1416]
1417[#include fix
1418Simon Marlow <marlowsd@gmail.com>**20090805092537
1419 Ignore-this: f48f53a20e0ad367d78ecdd675b99b7c
1420]
1421[use C99-style array initialisers
1422Simon Marlow <marlowsd@gmail.com>**20090803214545
1423 Ignore-this: 87a2adbaf9495d8ee9b9191dd863dfa7
1424]
1425[use C99-style array initialisers
1426Simon Marlow <marlowsd@gmail.com>**20090803210948
1427 Ignore-this: fadcc60df270797beec7dcc4dca5da04
1428]
1429[move termios prototypes into a public header
1430Simon Marlow <marlowsd@gmail.com>**20090803210304
1431 Ignore-this: ef87e8e25aac38ba4b92df4f0078d9cc
1432]
1433[move StgEntCounter type into its own header
1434Simon Marlow <marlowsd@gmail.com>**20090803210229
1435 Ignore-this: 6f9896a3e575e347ca9c89108d12469e
1436]
1437[Common up two closure type -> string tables
1438Simon Marlow <marlowsd@gmail.com>**20090803203252
1439 Ignore-this: e4a07b24c945a5181339ce769a178c33
1440 Also, use C99-style array initialisers
1441]
1442[Rename primops from foozh_fast to stg_foozh
1443Simon Marlow <marlowsd@gmail.com>**20090803202940
1444 Ignore-this: eb6022a346e27ad8e19b1be307d4618e
1445 For consistency with other RTS exported symbols
1446]
1447[remove the GUM closure types
1448Simon Marlow <marlowsd@gmail.com>**20090803202151
1449 Ignore-this: 871ab05276a311af7330c38a49e415f0
1450]
1451[use C99-style array initialisers
1452Simon Marlow <marlowsd@gmail.com>**20090803201148
1453 Ignore-this: 3490e28f536bfb424510628b0d75d4a7
1454]
1455[Remove final bits of the old .NET support
1456Simon Marlow <marlowsd@gmail.com>**20090803195935
1457 Ignore-this: a02948975e17219512910d530f2faab2
1458]
1459[fast make omits all GHC stages
1460Simon Marlow <marlowsd@gmail.com>**20090802190752
1461 Ignore-this: 8462306d70cbb95df532e50caec3d20f
1462]
1463[fast make omits dependencies in ghc/ too
1464Simon Marlow <marlowsd@gmail.com>**20090802190733
1465 Ignore-this: 5f622f40ce8ce604573ee9867047ce0a
1466]
1467[remove unnecessary -#include options
1468Simon Marlow <marlowsd@gmail.com>**20090802190651
1469 Ignore-this: 4e6765f51914cbc258f9b5e75c86fd83
1470]
1471[mention that INCLUDE pragmas are accepted, but ignored
1472Simon Marlow <marlowsd@gmail.com>**20090802190614
1473 Ignore-this: 533952df3b9c4350b1d2a19bda40f324
1474]
1475[Deprecate the -#include flag
1476Simon Marlow <marlowsd@gmail.com>**20090802190535
1477 Ignore-this: 851c0c0d791af34eac7578b59affcf79
1478]
1479[remove docuumentation for -#include option
1480Simon Marlow <marlowsd@gmail.com>**20090801222118
1481 Ignore-this: 7b8a03145a2b767e6f71cf768a2e97
1482]
1483[fix off-by-one in memory allocation
1484Simon Marlow <marlowsd@gmail.com>**20090804092115
1485 Ignore-this: a92a5e27d1acd27706b96fff701af0a2
1486]
1487[Windows build fix
1488Simon Marlow <marlowsd@gmail.com>**20090803150533
1489 Ignore-this: 425a5572d84152f5bf98890030ed2b34
1490]
1491[Windows build fixes
1492Simon Marlow <marlowsd@gmail.com>**20090803142346
1493 Ignore-this: e1ede00e0ecb223ce222767c29f92063
1494]
1495[move gc_alloc_block to make it visible on 32-bit
1496Simon Marlow <marlowsd@gmail.com>**20090803132847
1497 Ignore-this: 1859f0a8e527a37012587ae385f2c4f4
1498]
1499[Windows build fixes
1500Simon Marlow <marlowsd@gmail.com>**20090803131933
1501 Ignore-this: 9a381956cbe00a3be1487d68ee70f67f
1502]
1503[x86_64 warning fix
1504Simon Marlow <marlowsd@gmail.com>**20090803120415
1505 Ignore-this: 2f5484f0285849f090cedc2e24cae161
1506]
1507[x86_64 warning fixes
1508Simon Marlow <marlowsd@gmail.com>**20090803115955
1509 Ignore-this: 7a0a2a5e98441b1bc1d40848e9265891
1510]
1511[x86_64 build fix: declare gc_alloc_block_sync
1512Simon Marlow <marlowsd@gmail.com>**20090803113603
1513 Ignore-this: c719572e261edd98f9b7fadf43cf7616
1514]
1515[RTS tidyup sweep, first phase
1516Simon Marlow <marlowsd@gmail.com>**20090802213204
1517 Ignore-this: 1f7aabac4d5f9d32f6d91f1ccb1a80a4
1518 
1519 The first phase of this tidyup is focussed on the header files, and in
1520 particular making sure we are exposinng publicly exactly what we need
1521 to, and no more.
1522 
1523  - Rts.h now includes everything that the RTS exposes publicly,
1524    rather than a random subset of it.
1525 
1526  - Most of the public header files have moved into subdirectories, and
1527    many of them have been renamed.  But clients should not need to
1528    include any of the other headers directly, just #include the main
1529    public headers: Rts.h, HsFFI.h, RtsAPI.h.
1530 
1531  - All the headers needed for via-C compilation have moved into the
1532    stg subdirectory, which is self-contained.  Most of the headers for
1533    the rest of the RTS APIs have moved into the rts subdirectory.
1534 
1535  - I left MachDeps.h where it is, because it is so widely used in
1536    Haskell code.
1537 
1538  - I left a deprecated stub for RtsFlags.h in place.  The flag
1539    structures are now exposed by Rts.h.
1540 
1541  - Various internal APIs are no longer exposed by public header files.
1542 
1543  - Various bits of dead code and declarations have been removed
1544 
1545  - More gcc warnings are turned on, and the RTS code is more
1546    warning-clean.
1547 
1548  - More source files #include "PosixSource.h", and hence only use
1549    standard POSIX (1003.1c-1995) interfaces.
1550 
1551 There is a lot more tidying up still to do, this is just the first
1552 pass.  I also intend to standardise the names for external RTS APIs
1553 (e.g use the rts_ prefix consistently), and declare the internal APIs
1554 as hidden for shared libraries.
1555]
1556[replace sparc-specific Int64 code with calls to platform-independent macros
1557Simon Marlow <marlowsd@gmail.com>**20090727215103
1558 Ignore-this: 4f65892caeb42f8f58724883cc6097eb
1559]
1560[remove old incarnation of .NET support
1561Simon Marlow <marlowsd@gmail.com>**20090628211147
1562 Ignore-this: b8e0e316e371b91e676cacf08ed8e1c3
1563]
1564[Windows build fix
1565Simon Marlow <marlowsd@gmail.com>**20090803144931
1566 Ignore-this: c066b5b75e58f3c4389fc199f700dce5
1567]
1568[rts_stop_on_exception is a C int, not a W_
1569Simon Marlow <marlowsd@gmail.com>**20090803124916
1570 Ignore-this: d0432287956e7291a503a554424d6897
1571 amazing this hasn't caused any problems before now
1572]
1573[Fix #3412: the worker of an Id might not be a local Id
1574Simon Marlow <marlowsd@gmail.com>**20090803112803
1575 Ignore-this: c433025fd02c997a05555f5c7e6a6a7b
1576]
1577[Add -r option to darcs-all, and remove push-all (#3375)
1578Simon Marlow <marlowsd@gmail.com>**20090803104413
1579 Ignore-this: 6871c15294113898902be90210d9a7a9
1580 Contributed by: seliopou@gmail.com
1581     
1582 This patch modifies darcs-all to have feature parity with push-all by
1583 recognizing two new options.
1584 
1585     * -i, equivalent to --ignore-failure in push-all
1586     * -r <repo>, specifies the remote repository darcs commands will use
1587 
1588 Some example commands:
1589 
1590 Get the libraries from a repository of your choosing. This is useful
1591 when working with a git mirror:
1592 
1593     $ ./darcs-all -r http://darcs.haskell.org get
1594 
1595 Pull changes. Used to be:
1596 
1597     $ ./push-all --pull http://darcs.haskell.org
1598 
1599 Is now:
1600 
1601     $ ./darcs-all -r http://darcs.haskell.org pull
1602 
1603 Or to use the default remote of the ghc repository:
1604 
1605     $ ./darcs-all pull
1606]
1607[remove dead code
1608Simon Marlow <marlowsd@gmail.com>**20090620214113
1609 Ignore-this: 6da2bda8efd2dc63c8931243ab7dec0a
1610]
1611[fix warnings
1612Simon Marlow <marlowsd@gmail.com>**20090729134348
1613 Ignore-this: 98128ac0b78d861439ebf807af1ca417
1614]
1615[Implement "ghc --abi-hash M1 M2 ..."
1616Simon Marlow <marlowsd@gmail.com>**20090729132125
1617 Ignore-this: d0a71b2fadefdfdefa6d287d28bad40f
1618 This prints a combined hash of the ABIs exposed by the modules listed
1619 on the command line.  It will be used by Cabal for generating a
1620 package Id based on the actual ABI of a package.
1621]
1622[Clean GMP properly; fixes #3411
1623Ian Lynagh <igloo@earth.li>**20090802195759]
1624[Fix permissions when installing
1625Ian Lynagh <igloo@earth.li>**20090802161237]
1626[Fix creation of library doc index, and put the library docs in bindists
1627Ian Lynagh <igloo@earth.li>**20090802114202]
1628[Remove a TODO item that's been done
1629Ian Lynagh <igloo@earth.li>**20090802103944]
1630[Add a publish-docs rule
1631Ian Lynagh <igloo@earth.li>**20090801224155]
1632[Add docs to bindists
1633Ian Lynagh <igloo@earth.li>**20090801222551]
1634[Fix "make show" in a bindist
1635Ian Lynagh <igloo@earth.li>**20090801212604]
1636[Make the new build system install the documentation
1637Ian Lynagh <igloo@earth.li>**20090801204624]
1638[whitespace tweaks in rules/docbook.mk
1639Ian Lynagh <igloo@earth.li>**20090801195221]
1640[Fix configure when alex/happy are installed to a directory containing spaces
1641Ian Lynagh <igloo@earth.li>**20090801182817]
1642[Allow more than 64k instructions in a BCO; fixes #789
1643Ian Lynagh <igloo@earth.li>**20090801153203]
1644[If ghci runs out of labels, panic
1645Ian Lynagh <igloo@earth.li>**20090801132829]
1646[Fix the 64k insns overflow check in ghci, and add more checks
1647Ian Lynagh <igloo@earth.li>**20090801130014]
1648[Fix cleaning the integer package
1649Ian Lynagh <igloo@earth.li>**20090730143129]
1650[Fix warnings when building with the HEAD
1651Ian Lynagh <igloo@earth.li>**20090730143031]
1652[Remove some redundant fromIntegral's
1653Ian Lynagh <igloo@earth.li>**20090730105532]
1654[Fix space problems in ghci
1655Ian Lynagh <igloo@earth.li>**20090730105351
1656 We were making arrays with range (0, n-1) which is bad if n == 0 now
1657 that we are using Word types.
1658]
1659[Make the types we use when creating GHCi bytecode better match reality
1660Ian Lynagh <igloo@earth.li>**20090729130911
1661 We were keeping things as Int, and then converting them to Word16 at
1662 the last minute, when really they ought to have been Word16 all along.
1663]
1664[Add an (Outputable Word16) instance
1665Ian Lynagh <igloo@earth.li>**20090728134436]
1666[Fix whitespace in ByteCodeAsm.lhs
1667Ian Lynagh <igloo@earth.li>**20090728123444]
1668[Add CHECK(p), like ASSERT(p) but works even when !defined(DEBUG)
1669Simon Marlow <marlowsd@gmail.com>**20090729075433
1670 Ignore-this: a723f456e4b1eaeaa617a675da276aa2
1671 For inexpensive assertions
1672]
1673[enable the x86-specific versions of atomic_inc()/atomic_dec()
1674Simon Marlow <marlowsd@gmail.com>**20090729075307
1675 Ignore-this: a271b7ade5502ec4d8444aac19f4b4c3
1676]
1677[fix warning
1678Simon Marlow <marlowsd@gmail.com>**20090728103855
1679 Ignore-this: ee626aa5de0a2aed8f44ae1131cc341d
1680]
1681[fix warning
1682Simon Marlow <marlowsd@gmail.com>**20090728102707
1683 Ignore-this: ad4f07a163921d17d242a9452b4bb578
1684]
1685[fix a warning
1686Simon Marlow <marlowsd@gmail.com>**20090728101731
1687 Ignore-this: 73ead0a0004723757c0a51b56681c991
1688]
1689[Be a bit more sensible about choosing external OccNames
1690Simon Marlow <marlowsd@gmail.com>**20090728100434
1691 Ignore-this: 4adcd661e76440deb2b4ab498ebd2d1e
1692 
1693 Instead of chr_$wchr, we now just get $wchr.  In general, when an
1694 OccName is system-generated, we leave it out of the final external
1695 name, preferring to use the name of the exported parent instead (which
1696 is necessarily a user-written name).
1697 
1698 Names should be no less deterministic, but should be shorter and more
1699 readable.
1700]
1701[Remove old 'foreign import dotnet' code
1702Simon Marlow <marlowsd@gmail.com>**20090727144524
1703 Ignore-this: 821ebea2c3897415195318f107421472
1704 It still lives in darcs, if anyone wants to revive it sometime.
1705]
1706[remove a couple of ToDos
1707Simon Marlow <marlowsd@gmail.com>**20090727094719
1708 Ignore-this: ef00fc481821dff4381ba9efcd792708
1709]
1710[buildinfo files need a $$(wildcard)
1711Simon Marlow <marlowsd@gmail.com>**20090727091012
1712 Ignore-this: b4c3201dfa81fef32ee254dd9c955b2d
1713]
1714[Slight tweak to avoid overflowing the command-line size in bindist
1715Simon Marlow <marlowsd@gmail.com>**20090727090946
1716 Ignore-this: 1e2ff207d03fed08576ac59f0b46c08c
1717 Not a real fix: if this bites us again we'll have to rethink
1718]
1719[avoid (benign) error about overriding rules for binary-dist
1720Simon Marlow <marlowsd@gmail.com>**20090727090903
1721 Ignore-this: ffb7f7bf1290f2faf96ac177f76a1422
1722]
1723[Give a better error message for hidden packages when building Cabal package
1724Ian Lynagh <igloo@earth.li>**20090726194915
1725 Fixes #3168
1726]
1727[Add a -fbuilding-cabal-package flag
1728Ian Lynagh <igloo@earth.li>**20090726181934
1729 This means GHC knows whether it's building a Cabal package, or just
1730 Haskell sources. For example, it may wish to give different error
1731 messages when building a Cabal package.
1732]
1733[Add an extension to disable n+k patterns
1734Ian Lynagh <igloo@earth.li>**20090725134703]
1735[Fix a warning on Windows
1736Ian Lynagh <igloo@earth.li>**20090724221244]
1737[Remove GHC's haskell98 dependency
1738Ian Lynagh <igloo@earth.li>**20090724210825]
1739[add number of bytes to +RTS -DS leak reports
1740Simon Marlow <marlowsd@gmail.com>**20090724150010
1741 Ignore-this: 3a66585c8fd2b58ce96abab1e154fb6e
1742]
1743[free the gc_thread structures during shutdown
1744Simon Marlow <marlowsd@gmail.com>**20090724145956
1745 Ignore-this: 25efeb189cbfb549af4550d266604f0e
1746]
1747[Add atomic_inc()/atomic_dec(), and use them to replace gc_running_mutex
1748Simon Marlow <marlowsd@gmail.com>**20090724142620
1749 Ignore-this: d775eeaf85fd0f9064d87a0909134bc0
1750 This also fixes a memory leak on Windows with -threaded, because we
1751 were calling initMutex(&gc_running_mutex) for each GC, which allocates
1752 memory.
1753]
1754[Rewrite the foreign import string parser using ReadP
1755Simon Marlow <marlowsd@gmail.com>**20090723152138
1756 Ignore-this: 1c7db770a29d48710b05e2a3d216b2a8
1757 And kill the duplicate one in HsSyn.Convert
1758]
1759[point to the wiki
1760Simon Marlow <marlowsd@gmail.com>**20090723132345
1761 Ignore-this: c11300bac62ce2f56d7fc271aa26dbcd
1762]
1763[Remove note about avoiding use of #def in libraries
1764Simon Marlow <marlowsd@gmail.com>**20090723111026
1765 Ignore-this: 8a027ed37b2d10094f7a31548aee2535
1766 It should be safe to use now that we aren't relying on C prototypes
1767 for foreign functions in via-C code.
1768]
1769[refactorings
1770Simon Marlow <marlowsd@gmail.com>**20090723091230
1771 Ignore-this: 836feb0e819127603dd56623af6e48dc
1772]
1773[Fix Trac #3391: make generic to/from bindings only for newly-declared types
1774simonpj@microsoft.com**20090723155803
1775 Ignore-this: bb56c2ec054397d421dce13d5eb6c73f
1776 
1777 Before this patch we were bogusly making to/from bindings for all data types
1778 in the TcGblEnv.  But that is wrong when we have multiple "chunks" of
1779 bindings in Template Haskell.  We should start from the declarations
1780 themselves.  Easy.
1781 
1782]
1783[Print explicit braces and semicolons in do-notation
1784simonpj@microsoft.com**20090723152411
1785 Ignore-this: a97ddf19774d27d15a01d63787708b20
1786 
1787 By printing explicit braces we make it more likely that pretty-printed
1788 code will be acceptable if fed back into GHC.
1789 
1790 See http://www.haskell.org/pipermail/glasgow-haskell-users/2009-July/017554.html
1791 
1792]
1793[Documentation for stand-alone deriving (Trac #3012)
1794simonpj@microsoft.com**20090723132558
1795 Ignore-this: 54445c5984594eb7f82151b2ac118695
1796]
1797[Windows only: set the encoding on stdin to utf8
1798Simon Marlow <marlowsd@gmail.com>**20090723121913
1799 Ignore-this: d65115d9711b5fb68e77786565ef6de
1800 Otherwise it defaults to latin1.
1801]
1802[Fix Trac #3012: allow more free-wheeling in standalone deriving
1803simonpj@microsoft.com**20090723130145
1804 Ignore-this: 357580b9388ccbe1da3c1da3ba90e456
1805 
1806 In standalone deriving, we now do *not* check side conditions.
1807 We simply generate the code and typecheck it.  If there's a type
1808 error, it's the programmer's problem.
1809 
1810 This means that you can do 'deriving instance Show (T a)', where
1811 T is a GADT, for example, provided of course that the boilerplate
1812 code does in fact typecheck.
1813 
1814 I put some work into getting a decent error message.  In particular
1815 if there's a type error in a method, GHC will show the entire code
1816 for that method (since, after all, the user did not write it).
1817 Most of the changes are to achieve that goal.
1818 
1819 Still to come: changes in the documentation.
1820 
1821]
1822[Use the ErrMsg record type
1823simonpj@microsoft.com**20090723130108
1824 Ignore-this: 7fb6dd78d3185da0c33901b8aac8d108
1825]
1826[Stop generating redundant parens in 'deriving' code
1827simonpj@microsoft.com**20090723125903
1828 Ignore-this: 6fc82df9648a82bcf7bf6fdfa9b4dad3
1829 
1830 This makes the code printed by -ddump-deriv look prettier
1831 
1832]
1833[Wibble to printing tuple sections
1834simonpj@microsoft.com**20090723125756
1835 Ignore-this: af2a1b9784f6447fea0e11d454cf082f
1836]
1837[Fix Trac #3193: improve line number reporting for equality constraints
1838simonpj@microsoft.com**20090723065504
1839 Ignore-this: b45a68071bcaca48cad7855dccb9c9eb
1840 
1841 When reporting an error from a failed equality constraint, we were
1842 setting the *context* but not the *line number* in TcTyFuns.eqInstMisMatch
1843 As a result, the line number didn't match the context at all.  It's
1844 trivial to fix.
1845 
1846 I'm 99% certain this fixes #3193, but it's too complicated to
1847 reproduce, so I have not actually tested it.
1848 
1849]
1850[Add fmapM_maybe :: Monad m => (a -> m b) -> Maybe a -> m (Maybe b)
1851simonpj@microsoft.com**20090723064932
1852 Ignore-this: db5f6319b52a5e6b5f85d76985f2a7c9
1853 
1854 This function isn't used at the moment, but Max added it, and it
1855 looks useful.
1856 
1857]
1858[Add tuple sections as a new feature
1859simonpj@microsoft.com**20090723063859
1860 Ignore-this: d42a26fc1efff112b852b5c1135c1746
1861 
1862 This patch adds tuple sections, so that
1863 
1864        (x,,z)  means   \y -> (x,y,z)
1865 
1866 Thanks for Max Bolinbroke for doing the hard work.
1867 
1868 In the end, instead of using two constructors in HsSyn, I used
1869 just one (still called ExplicitTuple) whose arguments can be
1870        Present (LHsExpr id)
1871 or     Missing PostTcType
1872 
1873 While I was at it, I did a bit of refactoring too.
1874 
1875]
1876[NetBSD defines _REENTRANT in its header files, so compiling ghc gives
1877Simon Marlow <marlowsd@gmail.com>**20090723075030
1878 Ignore-this: 4722c4ff0541c6080de8f433e498684
1879 redefinition warnings for all files that are including includes/Rts.h.
1880 
1881 Contributed by: Krister Walfridsson <krister.walfridsson@gmail.com>
1882]
1883[includes/TSO.h: kill trailing whitespace
1884Samuel Bronson <naesten@gmail.com>**20090722170354
1885 Ignore-this: 36d4afd1a21188d604ed6b432942dcdc
1886]
1887[Say what StgTSOBlockInfo is for, where to read about it.
1888Samuel Bronson <naesten@gmail.com>**20090722163011
1889 Ignore-this: 6c09e11f23594251cdc2db1bc642edc9
1890]
1891[Make the Integer library used directly configurable in GHC and base
1892Ian Lynagh <igloo@earth.li>**20090722151048
1893 Rather than indirecting through an integer package
1894]
1895[Fix cleaning with the new integer changes
1896Ian Lynagh <igloo@earth.li>**20090722142545]
1897[Add integer-simple as a build option
1898Ian Lynagh <igloo@earth.li>**20090722013137]
1899[Tweak whitespace
1900Ian Lynagh <igloo@earth.li>**20090719221303]
1901[thenIO, bindIO, returnIO moved to GHC.Base
1902Simon Marlow <marlowsd@gmail.com>**20090722102219
1903 Ignore-this: 5d6c5988e0abab2c5169540aa8ddedb9
1904]
1905[remove unused $(HscIfaceFileVersion)
1906Simon Marlow <marlowsd@gmail.com>**20090720145053
1907 Ignore-this: d725cbbde3c68673e2342b370460d87f
1908]
1909[Choose external names more predictably
1910Simon Marlow <marlowsd@gmail.com>**20090720144751
1911 Ignore-this: 17513bc93af646108f21bbed1c8f4a3a
1912 
1913 Now, for a compiler-generated binding "x", if "x" is referred to by
1914 the exported "f", then it will be named "f_x" rather than something
1915 like "x23".  This means that hopefully
1916 
1917   - compilation will more often product the same results given the
1918     same input (the choice of names is not dependent on the
1919     non-deterministic order of bindings within the compiler).
1920 
1921   - less recompilation will be necessary after making changes
1922 
1923   - navigating Core might be a bit easier.
1924 
1925 unfortunately, compilation with -O still does not consistently produce
1926 the same ABI.  The simplifier sometimes does different things,
1927 apparently.
1928 
1929 Names will be longer, but I can't see a way around that.
1930]
1931[Use stable ordering in the dependencies
1932Simon Marlow <marlowsd@gmail.com>**20090717123449
1933 Ignore-this: e20bac233cf6f834e69c027ff60b5b50
1934 Fixes another cause of wobbly interface files and unnecessary recompilation.
1935]
1936[fall back on libffi for 'foreign import "wrapper"' if necessary
1937Simon Marlow <marlowsd@gmail.com>**20090716134549
1938 Ignore-this: e1073e1ad77e720326865a6d3c4f3790
1939]
1940[Take account of GADTs when reporting patterm-match overlap
1941simonpj@microsoft.com**20090722050933
1942 Ignore-this: 7dcbdcb91021e83e6e6208a2e68c50c9
1943 
1944 When matching against a GADT, some of the constructors may be impossible.
1945 For example
1946        data T a where
1947           T1 :: T Int
1948           T2 :: T Bool
1949           T3 :: T a
1950 
1951         f :: T Int -> Int
1952         f T1 = 3
1953         f T3 = 4
1954 
1955 Here, does not have any missing cases, despite omittting T2, because
1956 T2 :: T Bool.
1957 
1958 This patch teaches the overlap checker about GADTs, which happily
1959 turned out to be rather easy even though the overlap checker needs
1960 a serious rewrite.
1961 
1962]
1963[Fix Trac #3382: desugaring of NPats
1964simonpj@microsoft.com**20090720061226
1965 Ignore-this: 4dccdaf2b7d6428141dcf174cb455a20
1966 
1967 Max spotted that the short-cut rules for desugaring NPats (where
1968 we compare against a literal) were wrong now that we have overloaded
1969 strings.
1970 
1971]
1972[Add a -fwarn-dodgy-exports flag; fixes #1911
1973Ian Lynagh <igloo@earth.li>**20090719200124
1974 This is used to control warnings that were previously unconditional.
1975]
1976[Build terminfo if we /aren't/ on Windows, not if we /are/
1977Ian Lynagh <igloo@earth.li>**20090719111709]
1978[Change how PACKAGES is constructed, so that everything gets cleaned properly
1979Ian Lynagh <igloo@earth.li>**20090718210058
1980 If Windows wasn't defined properly then the Win32 package wasn't being
1981 cleaned, as it wasn't added to PACKAGES. Now we always add everything to
1982 PACKAGES when CLEANING=YES.
1983]
1984[temporarily turn off unused import warnings for the time library
1985Ian Lynagh <igloo@earth.li>**20090718183445]
1986[Follow the split directory rename in the GHC build system rules
1987Ian Lynagh <igloo@earth.li>**20090718155618]
1988[Add osuf to the name we use for the split dir
1989Ian Lynagh <igloo@earth.li>**20090718145522
1990 This avoids a collision between the directories we use when compiling
1991 multiple ways, which in turn leads to a race condition in parallel
1992 builds.
1993]
1994[Temporarily turn off unused-do-bind warnings for the time package
1995Ian Lynagh <igloo@earth.li>**20090718134536]
1996[Make ghc-cabal handle "Custom" Setup.hs files that have a configure script
1997Ian Lynagh <igloo@earth.li>**20090718131555]
1998[Add the time library, and support for libraries in tarballs
1999Ian Lynagh <igloo@earth.li>**20090718121649]
2000[Always serialise Int as 64bit values; fixes trac #3041
2001Ian Lynagh <igloo@earth.li>**20090717224203
2002 This means that, provided the values are small enough, files
2003 serialized are portable between architectures. In particular,
2004 .haddock files are portable.
2005]
2006[Remove some code that has always been commented out
2007Ian Lynagh <igloo@earth.li>**20090717224100]
2008[Fix Trac #3346: tcSimplify for LHS of RULES with type equalities
2009simonpj@microsoft.com**20090717155722
2010 Ignore-this: dfdd0f9a62d78d63276a4d558831099c
2011]
2012[Allow mixed case in the LINE pragma; patch from squadette; fixes #1817
2013Ian Lynagh <igloo@earth.li>**20090717133522]
2014[Comment only
2015simonpj@microsoft.com**20090717120154
2016 Ignore-this: f96b11e602fe4b311c1e466af9aa1908
2017]
2018[Add missing case for eq_note.
2019t-peterj@microsoft.com**20090624134407]
2020[Rename parameters to make debugging code compile.
2021t-peterj@microsoft.com**20090626105440]
2022[Comment fix: use the same variable names in the conclusion as in the premise.
2023t-peterj@microsoft.com**20090618092235]
2024[Typo fixes, from Alexey Mahotkin
2025Ian Lynagh <igloo@earth.li>**20090717010817]
2026[Use names like '$fOrdInt' for dfuns (and TF instances), rather than '$f21'
2027Simon Marlow <marlowsd@gmail.com>**20090716125643
2028 Ignore-this: d0b4632cf8ed9e05b67a19aa19ab3e19
2029 
2030 2 reasons for this:
2031   - compilation is more predictable.  Adding or removing an instance
2032     is less likely to force unnecessary recompilation due to
2033     renumbering other dfun names.
2034   - it makes it easier to read Core / C-- / asm
2035 
2036 The names aren't completely deterministic.  To do that, we'd have to
2037 include package and module names, which would make the symbol names
2038 long and reduce readability.  So the compromise is that if there's a
2039 clash, we disambiguate by adding an integer suffix.  This is fairly
2040 unlikely in practice unless you're using overlapping instances.
2041 
2042 Type family instances are handled in the same way, with the same
2043 disambiguation strategy.
2044]
2045[Use a stable ordering for the export list in the interface
2046Simon Marlow <marlowsd@gmail.com>**20090716122601
2047 Ignore-this: 847dd7adc8b52e56f28d2478c78c925
2048 The export list was ordered according to the whim of FastStrings,
2049 which meant that interface fingerprints could change for no good
2050 reason, causing spurious recompilation.
2051]
2052[Don't put all of $CFLAGS into $SRC_CC_OPTS
2053Ian Lynagh <igloo@earth.li>**20090716131309
2054 Instead, we just put the flags we need in there (e.g. -m64 on OS X 64).
2055 This fixes a problem found by Simon M, where we were compiling
2056 everything with -g, leading to a bloated RTS.
2057]
2058[Move showOpt into DynFlags
2059Ian Lynagh <igloo@earth.li>**20090716005314]
2060[Make the --info values printable with "ghc --print-foo"; trac #3122
2061Ian Lynagh <igloo@earth.li>**20090716001718
2062 Also, libdir is now part of the --info output, so this subsumes the old
2063 --print-libdir flag.
2064 The mode parsing was getting rather adhoc, so I've tidied it up a bit
2065 in the process.
2066]
2067[whitespace only
2068Simon Marlow <marlowsd@gmail.com>**20090716104217
2069 Ignore-this: 38cff291d9ef15c30e3ed685ffc3c9f9
2070]
2071[refactor: use packageConfigId in place of mkPackageId . package
2072Simon Marlow <marlowsd@gmail.com>**20090716104145
2073 Ignore-this: f3d73e7bd1b307a67d26585c49f3d89f
2074]
2075[Fix a flag name in the docs
2076Ian Lynagh <igloo@earth.li>**20090714165943]
2077[Add the -fno-shared-implib flag
2078Ian Lynagh <igloo@earth.li>**20090714165631
2079 Patch from
2080     Max Bolingbroke <batterseapower@hotmail.com>
2081 Rerecorded to avoid conflicts.
2082]
2083[Derived Foldable instances should use Data.Foldable.foldr
2084m.niloc@gmail.com**20090711130647
2085 Ignore-this: e3eb841e9535a842a98bb1ae0532c6e8
2086]
2087[remove Solaris-specific hacks, now unnecessary
2088Simon Marlow <marlowsd@gmail.com>**20090713083524
2089 Ignore-this: 500077008e463532e0677ee82f5284bb
2090]
2091[Simplify timestamp restoration
2092Matthias Kilian <kili@outback.escape.de>**20090711100244
2093 Ignore-this: 7eaede224befa6b5368c91b92366211
2094]
2095[FIX #3272
2096Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20090714054559
2097 Ignore-this: 225fe4d82d4eed02e9b1377687661bac
2098]
2099[Fix warnings
2100Roman Leshchinskiy <rl@cse.unsw.edu.au>**20090713092032
2101 Ignore-this: 3631b87164fc54d82e3a02875dc08f7d
2102]
2103[Separate length from data in DPH arrays
2104Roman Leshchinskiy <rl@cse.unsw.edu.au>**20090713044212
2105 Ignore-this: aa2cc3b5ae43bd2c493ce4b330c883cd
2106]
2107[Stop using -fno-warn-unused-do-bind when compiling the libraries
2108Ian Lynagh <igloo@earth.li>**20090709160422
2109 They're now fixed to not generate those warnings
2110]
2111[Remove maybePrefixMatch, using stripPrefix instead
2112Ian Lynagh <igloo@earth.li>**20090709160412
2113 We already require GHC 6.8 to build, and that included stripPrefix
2114 in Data.List.
2115]
2116[TFs: FIX #2203 (second half)
2117Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20090710064834
2118 Ignore-this: 46a46feaa73f74feb08524b9e7547414
2119]
2120[TFs: Fix should_compile/Simple8
2121Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20090710042728
2122 Ignore-this: 471ab67e3df1c5245921be5286a45f93
2123]
2124[workaround new Cygwin bash CRLF behaviour
2125Simon Marlow <marlowsd@gmail.com>**20090709132850
2126 Ignore-this: 5cfa2cc9d776ebe315c0f6ad7ab56d98
2127]
2128[Use /usr/bin/test if it exists, and fix test syntax.
2129Simon Marlow <marlowsd@gmail.com>**20090709124616
2130 Ignore-this: 83a75ba7c3ce2a1d02bddb7bfe414bfe
2131 Should fix Solaris build failures
2132]
2133[Allow mixed case pragmas; #1817. Patch from squadette
2134Ian Lynagh <igloo@earth.li>**20090709153737
2135 This patch allow you to use "Language CPP", or even "LaNgUaGe CPP",
2136 if you wish, as the manual claims you can.
2137]
2138[don't create inplace/bin/ghc-<version>
2139Simon Marlow <marlowsd@gmail.com>**20090706092031
2140 Ignore-this: 2584d7bf56e77b27ca5b7b557c152c5e
2141]
2142[Fix ignored-monadic-result warnings
2143Ian Lynagh <igloo@earth.li>**20090707181857]
2144[Fix an unused import warning
2145Ian Lynagh <igloo@earth.li>**20090707144706]
2146[Fix unused import warnings
2147Ian Lynagh <igloo@earth.li>**20090707143216]
2148[Fix unused import warnings
2149Ian Lynagh <igloo@earth.li>**20090707133537]
2150[When exporting F(..), all the children of F are also exported
2151Ian Lynagh <igloo@earth.li>**20090707133427
2152 This fixes the unused imports warning when
2153     Foo (F(x,y,z))
2154 is imported and
2155     Foo (F(..))
2156 is exported.
2157]
2158[Remove unused imports
2159Ian Lynagh <igloo@earth.li>**20090707121548]
2160[Major patch to fix reporting of unused imports
2161simonpj@microsoft.com**20090706112503
2162 Ignore-this: 3b5ecdd880474493d73bdbdc0fa0b782
2163 
2164 This patch, joint work between and Ian and Simon, fixes Trac #1074
2165 by reporting unused import declarations much more accuratly than
2166 before.  The specification is described at
2167 
2168 http://hackage.haskell.org/trac/ghc/wiki/Commentary/Compiler/UnusedImports
2169 
2170 The implementation is both easier to understand than before, and shorter
2171 too. 
2172 
2173 Also fixed are #1148, #2267
2174 
2175 Also fixed is -ddump-minimal imports, which now works properly, fixing
2176 Trac #1792.
2177 
2178 
2179]
2180[Trim unused imports detected by new unused-import code
2181simonpj@microsoft.com**20090706112201
2182 Ignore-this: c6ca46d3a750c1cd1d58ea2c0de9f14f
2183]
2184[Avoid unnecessary recompilation after ./configure (helps #3228)
2185Simon Marlow <marlowsd@gmail.com>**20090707085040
2186 Ignore-this: f8b3e7a2a96bc23cd29505ab9c8dbd7d
2187 We cache the old versions of files generated by configure, so that if
2188 configure touches the file without changing it, we can detect that and
2189 restore the timestamp.
2190]
2191[check for tabs in compiler/ghc.cabal.in (#3344)
2192Simon Marlow <marlowsd@gmail.com>**20090707081845
2193 Ignore-this: 6073db47eafd52e13e76c58ef738afcf
2194]
2195[remove tabs
2196Simon Marlow <marlowsd@gmail.com>**20090707081823
2197 Ignore-this: 3d65831fc019f76cefac03291904842a
2198]
2199[fix cleaning of libraries (now 'make clean' in libraries/* works again)
2200Simon Marlow <marlowsd@gmail.com>**20090703114638
2201 Ignore-this: b3af731d50ff5bfbd453f94aa40cb92c
2202]
2203[FIX #2677
2204Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20090707055442
2205 Ignore-this: e224dd09d0d1c9ec4f3b46c7accb8d57
2206]
2207[Update driver/Makefile for the new build system
2208Ian Lynagh <igloo@earth.li>**20090705204041]
2209[Fix generational GC bug (#3348)
2210Simon Marlow <marlowsd@gmail.com>**20090706112227
2211 Ignore-this: 5938338efa0ad1550968c664a5a76f31
2212]
2213[Windows fixes to build system: use the 'find' and 'sort' found by configure
2214simonpj@microsoft.com**20090706103413
2215 Ignore-this: a96197917f388a637118bafefb427495
2216 
2217 The build system should use 'find' and 'sort' that are discovered by
2218 configure, not the ones in your path.  On Windows the ones in your path
2219 might well be the non-Unixy Windows versions.
2220 
2221 This patch fixes the ones I tripped over. There may be more.
2222 
2223]
2224[Follow Cabal changes
2225Ian Lynagh <igloo@earth.li>**20090705180414]
2226[Update TODO list
2227Ian Lynagh <igloo@earth.li>**20090705165009]
2228[Make -fext-core a dynamic flag (it was a static flag)
2229Ian Lynagh <igloo@earth.li>**20090705132420]
2230[Update a few points about shared libs in other sections
2231Duncan Coutts <duncan@well-typed.com>**20090704212212
2232 And add links to the new shared libs section.
2233]
2234[Document -dynload flag. Also add it and -shared to the flags reference.
2235Duncan Coutts <duncan@well-typed.com>**20090704212119]
2236[Add new section on using shared libs
2237Duncan Coutts <duncan@well-typed.com>**20090704212003]
2238[Document foreign import prim in the user guide
2239Duncan Coutts <duncan@well-typed.com>**20090704180547
2240 Basically just stat that it exists and refer to the ghc dev wiki
2241 for the details, because we don't really want people using it.
2242]
2243[For now, use -fno-warn-unused-do-bind when building the libraries
2244Ian Lynagh <igloo@earth.li>**20090704210654]
2245[Make changes to -fwarn-unused-do-bind and -fwarn-wrong-do-bind suggested by SPJ
2246Max Bolingbroke <batterseapower@hotmail.com>**20090702150943
2247 Ignore-this: 595368298d2e11623c0bd280ff89d8de
2248]
2249[Support for -fwarn-unused-do-bind and -fwarn-wrong-do-bind, as per #3263
2250Max Bolingbroke <batterseapower@hotmail.com>**20090701200344
2251 Ignore-this: 511117ffc10d4b656e530b751559b8b8
2252]
2253[Improved infrastructure for fast-rebuilding of parts of the tree
2254Simon Marlow <marlowsd@gmail.com>**20090703074527
2255 Ignore-this: ab348d0988d8bbc28c2b4babbd6bbfb8
2256 
2257 e.g.
2258 
2259   cd compiler
2260   make FAST=YES stage1/build/HscTypes.o
2261 
2262 builds just the specified .o file, without rebuilding dependencies,
2263 and omitting some of the makefile phases.  FAST=YES works anywhere, to
2264 omit depenencies and phases.  'make fast' is shorthand for 'make
2265 all FAST=YES'.
2266]
2267[Fix Trac #3342: missed zonking in TcHsSyn
2268simonpj@microsoft.com**20090702124331
2269 Ignore-this: 9b97b2142dfc665b503f59df7c55dd17
2270 
2271 The type in a ViewPat wasn't being zonked.  Easily fixed.
2272 
2273]
2274[Type synonym families may be nullary
2275Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20090702084826
2276 Ignore-this: bcfe6ed62c901206daf5a5088890bbea
2277]
2278[New syntax for GADT-style record declarations, and associated refactoring
2279simonpj@microsoft.com**20090702094657
2280 Ignore-this: bd9817230d3773b3b01fae3d7f04c57d
2281 
2282 The main purpose of this patch is to fix Trac #3306, by fleshing out the
2283 syntax for GADT-style record declraations so that you have a context in
2284 the type.  The new form is
2285    data T a where
2286      MkT :: forall a. Eq a => { x,y :: !a } -> T a
2287 See discussion on the Trac ticket.
2288 
2289 The old form is still allowed, but give a deprecation warning.
2290 
2291 When we remove the old form we'll also get rid of the one reduce/reduce
2292 error in the grammar. Hurrah!
2293 
2294 While I was at it, I failed as usual to resist the temptation to do lots of
2295 refactoring.  The parsing of data/type declarations is now much simpler and
2296 more uniform.  Less code, less chance of errors, and more functionality.
2297 Took longer than I planned, though.
2298 
2299 ConDecl has record syntax, but it was not being used consistently, so I
2300 pushed that through the compiler.
2301 
2302]
2303[White space only
2304simonpj@microsoft.com**20090702094627
2305 Ignore-this: 19f654cbf371c8dcc6517fd4934855b4
2306]
2307[Comments only
2308simonpj@microsoft.com**20090702094531
2309 Ignore-this: 384fc2729c7c50a1680775a1f9ff89e4
2310]
2311[Look through Notes when matching
2312simonpj@microsoft.com**20090702094444
2313 Ignore-this: 7daea81e905ec6061d3e0fd588d7e61b
2314]
2315[FIX #3197
2316Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20090702070905
2317 Ignore-this: ebf829f0ae025e82bccdfa4345828ffe
2318]
2319[Fix #2197 (properly this time)
2320Simon Marlow <marlowsd@gmail.com>**20090701122354
2321 Ignore-this: 39b6e4b0bcdd8c2f4660f976b7db768d
2322 
2323 $ ./inplace/bin/ghc-stage2 --interactive
2324 GHCi, version 6.11.20090701: http://www.haskell.org/ghc/  :? for help
2325 ghc-stage2: GHCi cannot be used when compiled with -prof
2326 [1]    32473 exit 1     ./inplace/bin/ghc-stage2 --interactive
2327]
2328[make GhcProfiled work, and add a "prof" flavour to build.mk
2329Simon Marlow <marlowsd@gmail.com>**20090701114211
2330 Ignore-this: 386d347e4ad8b6c2bd40a2ba7da31ba6
2331 
2332 Building a profiled GHC is as simple as adding
2333 
2334 GhcLibWays += p
2335 GhcProfiled = YES
2336 
2337 to your build.mk and saying 'make'.  Then you have a profiled
2338 inplace/bin/ghc-stage2.
2339]
2340[remove unnecessary $(RM)s
2341Simon Marlow <marlowsd@gmail.com>**20090701110609
2342 Ignore-this: f326ec8931d0d484a66b67ce1270cc6e
2343]
2344['make html' in a library builds the Haddock docs
2345Simon Marlow <marlowsd@gmail.com>**20090630111137
2346 Ignore-this: 781bf10e2d4bca23b7f70c6f0465d120
2347]
2348[fix GC bug introduced with the C finalizer support
2349Simon Marlow <marlowsd@gmail.com>**20090630080834
2350 Ignore-this: 3567e3adb5ae4a5dcbce81733487f348
2351]
2352[Add a configure test for whether or not __mingw_vfprintf exists
2353Ian Lynagh <igloo@earth.li>**20090627150501]
2354[Fix #3319, and do various tidyups at the same time
2355Simon Marlow <marlowsd@gmail.com>**20090626095421
2356 Ignore-this: ea54175f6bd49e101d7b33392764f643
2357  - converting a THSyn FFI declaration to HsDecl was broken; fixed
2358  - pretty-printing of FFI declarations was variously bogus; fixed
2359  - there was an unused "library" field in CImport; removed
2360]
2361[rename cache variable to keep recent autoconfs happy
2362Ross Paterson <ross@soi.city.ac.uk>**20090626131410
2363 Ignore-this: 187091bbe78f2b14402162acfb98180f
2364]
2365[TAG 2009-06-25
2366Ian Lynagh <igloo@earth.li>**20090625155528]
2367Patch bundle hash:
23684fb2acde133363c0c7cc4b7bed76416722b99b92