| 1 | |
|---|
| 2 | New patches: |
|---|
| 3 | |
|---|
| 4 | [Perform case-insensitive matching of path components in getBaseDir on Windows (Fixes bug 2743) |
|---|
| 5 | Neil Mitchell <ndmitchell@gmail.com>**20081105134315] { |
|---|
| 6 | hunk ./compiler/main/SysTools.lhs 847 |
|---|
| 7 | - (d, ghc_exe) | map toLower ghc_exe == "ghc.exe" -> |
|---|
| 8 | + (d, ghc_exe) | lower ghc_exe == "ghc.exe" -> |
|---|
| 9 | hunk ./compiler/main/SysTools.lhs 850 |
|---|
| 10 | - (d', "bin") -> takeDirectory d' |
|---|
| 11 | + (d', bin) | lower bin == "bin" -> takeDirectory d' |
|---|
| 12 | hunk ./compiler/main/SysTools.lhs 852 |
|---|
| 13 | - (d', x) | "-inplace" `isSuffixOf` x -> |
|---|
| 14 | + (d', x) | "-inplace" `isSuffixOf` lower x -> |
|---|
| 15 | hunk ./compiler/main/SysTools.lhs 857 |
|---|
| 16 | + lower = map toLower |
|---|
| 17 | } |
|---|
| 18 | |
|---|
| 19 | Context: |
|---|
| 20 | |
|---|
| 21 | [bugfix: don't ingore the return value from rts_evalIO() |
|---|
| 22 | Simon Marlow <marlowsd@gmail.com>**20081104142147] |
|---|
| 23 | [Document the new SPARKS statistic, and xref from the parallelism section |
|---|
| 24 | Simon Marlow <marlowsd@gmail.com>**20081024120236] |
|---|
| 25 | [Move the freeing of Capabilities later in the shutdown sequence |
|---|
| 26 | Simon Marlow <marlowsd@gmail.com>**20081024104301 |
|---|
| 27 | Fixes a bug whereby the Capability has been freed but other |
|---|
| 28 | Capabilities are still trying to steal sparks from its pool. |
|---|
| 29 | ] |
|---|
| 30 | [Pad Capabilities and Tasks to 64 bytes |
|---|
| 31 | Simon Marlow <marlowsd@gmail.com>**20081023080749 |
|---|
| 32 | This is just good practice to avoid placing two structures heavily |
|---|
| 33 | accessed by different CPUs on the same cache line |
|---|
| 34 | ] |
|---|
| 35 | [Fix desugaring of record update (fixes Trac #2735) |
|---|
| 36 | simonpj@microsoft.com**20081103110819] |
|---|
| 37 | [Refuse to register packages with unversioned dependencies; trac #1837 |
|---|
| 38 | Ian Lynagh <igloo@earth.li>**20081031181746] |
|---|
| 39 | [We now require GHC 6.6 to build the HEAD (and thus 6.12) |
|---|
| 40 | Ian Lynagh <igloo@earth.li>**20081031171506] |
|---|
| 41 | [:set prompt now understand Haskell String syntax; trace #2652 |
|---|
| 42 | Ian Lynagh <igloo@earth.li>**20081031145227] |
|---|
| 43 | [Comments only |
|---|
| 44 | simonpj@microsoft.com**20081031140236] |
|---|
| 45 | [Quickfix for warning. |
|---|
| 46 | Thomas Schilling <nominolo@googlemail.com>**20081031113125] |
|---|
| 47 | [Export typeclasses for accessing compiler results. |
|---|
| 48 | Thomas Schilling <nominolo@googlemail.com>**20081028182310 |
|---|
| 49 | |
|---|
| 50 | MERGE TO 6.10. |
|---|
| 51 | ] |
|---|
| 52 | [Minor refactoring. |
|---|
| 53 | Thomas Schilling <nominolo@googlemail.com>**20081028182202] |
|---|
| 54 | [Include record fields in tags. |
|---|
| 55 | Thomas Schilling <nominolo@googlemail.com>**20081028180538] |
|---|
| 56 | [Fix imports |
|---|
| 57 | simonpj@microsoft.com**20081031092306] |
|---|
| 58 | [Improve error reporting for non-rigid GADT matches |
|---|
| 59 | simonpj@microsoft.com**20081030143947 |
|---|
| 60 | |
|---|
| 61 | Following suggestions from users, this patch improves the error message |
|---|
| 62 | when a GADT match needs a rigid type: |
|---|
| 63 | |
|---|
| 64 | tcfail172.hs:19:10: |
|---|
| 65 | GADT pattern match in non-rigid context for `Nil' |
|---|
| 66 | - Solution: add a type signature |
|---|
| 67 | + Probable solution: add a type signature for `is_normal' |
|---|
| 68 | In the pattern: Nil |
|---|
| 69 | In the definition of `is_normal': is_normal Nil = True |
|---|
| 70 | |
|---|
| 71 | Now GHC tries to tell you what to give a type signature *for*. |
|---|
| 72 | Thanks to Daniel Gorin and others for the suggestions. |
|---|
| 73 | |
|---|
| 74 | ] |
|---|
| 75 | [Add (a) CoreM monad, (b) new Annotations feature |
|---|
| 76 | simonpj@microsoft.com**20081030125108 |
|---|
| 77 | |
|---|
| 78 | This patch, written by Max Bolingbroke, does two things |
|---|
| 79 | |
|---|
| 80 | 1. It adds a new CoreM monad (defined in simplCore/CoreMonad), |
|---|
| 81 | which is used as the top-level monad for all the Core-to-Core |
|---|
| 82 | transformations (starting at SimplCore). It supports |
|---|
| 83 | * I/O (for debug printing) |
|---|
| 84 | * Unique supply |
|---|
| 85 | * Statistics gathering |
|---|
| 86 | * Access to the HscEnv, RuleBase, Annotations, Module |
|---|
| 87 | The patch therefore refactors the top "skin" of every Core-to-Core |
|---|
| 88 | pass, but does not change their functionality. |
|---|
| 89 | |
|---|
| 90 | 2. It adds a completely new facility to GHC: Core "annotations". |
|---|
| 91 | The idea is that you can say |
|---|
| 92 | {#- ANN foo (Just "Hello") #-} |
|---|
| 93 | which adds the annotation (Just "Hello") to the top level function |
|---|
| 94 | foo. These annotations can be looked up in any Core-to-Core pass, |
|---|
| 95 | and are persisted into interface files. (Hence a Core-to-Core pass |
|---|
| 96 | can also query the annotations of imported things.) Furthermore, |
|---|
| 97 | a Core-to-Core pass can add new annotations (eg strictness info) |
|---|
| 98 | of its own, which can be queried by importing modules. |
|---|
| 99 | |
|---|
| 100 | The design of the annotation system is somewhat in flux. It's |
|---|
| 101 | designed to work with the (upcoming) dynamic plug-ins mechanism, |
|---|
| 102 | but is meanwhile independently useful. |
|---|
| 103 | |
|---|
| 104 | Do not merge to 6.10! |
|---|
| 105 | |
|---|
| 106 | ] |
|---|
| 107 | [Fix Trac #2674: in TH reject empty case expressions and function definitions |
|---|
| 108 | simonpj@microsoft.com**20081030094528] |
|---|
| 109 | [Change naming conventions for compiler-generated dictionaries and type functions |
|---|
| 110 | simonpj@microsoft.com**20081029140858 |
|---|
| 111 | |
|---|
| 112 | Up to now, the data constructor dictionary for class C as been called |
|---|
| 113 | ":DC". But there is no reason for the colon to be at the front; indeed |
|---|
| 114 | it confuses the (simple-minded) pretty-printer for types. So this |
|---|
| 115 | patch changes it to be "D:C". This makes Core a lot easier to read. |
|---|
| 116 | Having a colon in the middle ensures that it can't clash with a user-written |
|---|
| 117 | data type. |
|---|
| 118 | |
|---|
| 119 | Similarly I changed |
|---|
| 120 | |
|---|
| 121 | T:C Data type corresponding a class dictionary (was :TC) |
|---|
| 122 | D:C Data constructor for class dictionary (was :DC) |
|---|
| 123 | |
|---|
| 124 | NTCo:T Coercion mapping from a newtype T to its representation type |
|---|
| 125 | (was :CoT) |
|---|
| 126 | |
|---|
| 127 | TFCo:R Coercion mapping from a data family to its respresentation type R |
|---|
| 128 | (was :CoFR) |
|---|
| 129 | |
|---|
| 130 | Rn:T The n'th respresentation data type for a data type T |
|---|
| 131 | (was :RnT) |
|---|
| 132 | |
|---|
| 133 | |
|---|
| 134 | Do not merge to 6.10. |
|---|
| 135 | |
|---|
| 136 | HEADS-UP: you'll need to recompile libraries from scratch. |
|---|
| 137 | |
|---|
| 138 | ROMAN: you could do the same for OccName.mkVectTyConOcc etc, if you wanted. |
|---|
| 139 | |
|---|
| 140 | |
|---|
| 141 | ] |
|---|
| 142 | [Fix tcrun031: yet more tidying up in TcDeriv |
|---|
| 143 | simonpj@microsoft.com**20081029130155] |
|---|
| 144 | [Add Outputable instance for CoercionI |
|---|
| 145 | simonpj@microsoft.com**20081029130114] |
|---|
| 146 | [Fix Trac #2720: inlining and casts |
|---|
| 147 | simonpj@microsoft.com**20081028140828 |
|---|
| 148 | |
|---|
| 149 | The issue here is what happens when we have |
|---|
| 150 | |
|---|
| 151 | (f |> co) x |
|---|
| 152 | |
|---|
| 153 | where f is itself marked INLINE. We want callSiteInline to "see" |
|---|
| 154 | the fact that the function is applied, and hence have some incentive |
|---|
| 155 | to inline. I've done this by extending CoreUnfold.CallCtxt with |
|---|
| 156 | ValAppCtxt. I think that should catch this case without messing up |
|---|
| 157 | any of the others. |
|---|
| 158 | |
|---|
| 159 | ] |
|---|
| 160 | [Clarify documentatoin |
|---|
| 161 | simonpj@microsoft.com**20081028133009] |
|---|
| 162 | [Update library version numbers in the release notes |
|---|
| 163 | Ian Lynagh <igloo@earth.li>**20081023144018] |
|---|
| 164 | [various updates to the release notes |
|---|
| 165 | Simon Marlow <marlowsd@gmail.com>**20081007151647] |
|---|
| 166 | [Add library release notes |
|---|
| 167 | Ian Lynagh <igloo@earth.li>**20080920155722] |
|---|
| 168 | [Add release notes for the compiler |
|---|
| 169 | Ian Lynagh <igloo@earth.li>**20080920114857] |
|---|
| 170 | [Doc fix |
|---|
| 171 | Ian Lynagh <igloo@earth.li>**20081028150534] |
|---|
| 172 | [Rename some variables in docs |
|---|
| 173 | Ian Lynagh <igloo@earth.li>**20081028150447] |
|---|
| 174 | [Fix typos |
|---|
| 175 | Ian Lynagh <igloo@earth.li>**20081028144655] |
|---|
| 176 | [Mostly-fix Trac #2595: updates for existentials |
|---|
| 177 | simonpj@microsoft.com**20081028115427 |
|---|
| 178 | |
|---|
| 179 | Ganesh wanted to update records that involve existentials. That |
|---|
| 180 | seems reasonable to me, and this patch covers existentials, GADTs, |
|---|
| 181 | and data type families. |
|---|
| 182 | |
|---|
| 183 | The restriction is that |
|---|
| 184 | The types of the updated fields may mention only the |
|---|
| 185 | universally-quantified type variables of the data constructor |
|---|
| 186 | |
|---|
| 187 | This doesn't allow everything in #2595 (it allows 'g' but not 'f' in |
|---|
| 188 | the ticket), but it gets a lot closer. |
|---|
| 189 | |
|---|
| 190 | Lots of the new lines are comments! |
|---|
| 191 | |
|---|
| 192 | ] |
|---|
| 193 | [Fix Trac #2723: keep track of record field names in the renamer |
|---|
| 194 | simonpj@microsoft.com**20081028110445 |
|---|
| 195 | |
|---|
| 196 | The idea here is that with -XNamedFieldPuns and -XRecordWildCards we don't |
|---|
| 197 | want to report shadowing errors for |
|---|
| 198 | let fld = <blah> in C { .. } |
|---|
| 199 | But to suppress such shadowing errors, the renamer needs to know that |
|---|
| 200 | 'fld' *is* a record selector. Hence the new NameSet in |
|---|
| 201 | TcRnFypes.RecFieldEnv |
|---|
| 202 | |
|---|
| 203 | ] |
|---|
| 204 | [Remove dead code |
|---|
| 205 | simonpj@microsoft.com**20081028074639] |
|---|
| 206 | [Fix Trac #2713: refactor and tidy up renaming of fixity decls |
|---|
| 207 | simonpj@microsoft.com**20081027222738 |
|---|
| 208 | |
|---|
| 209 | In fixing #2713, this patch also eliminates two almost-unused |
|---|
| 210 | functions from RnEnv (lookupBndr and lookupBndr_maybe). The |
|---|
| 211 | net lines of code is prety much unchanged, but more of them |
|---|
| 212 | are comments! |
|---|
| 213 | |
|---|
| 214 | ] |
|---|
| 215 | [Fix Trac #2701: make deriving check better for unlifted args |
|---|
| 216 | simonpj@microsoft.com**20081025171211 |
|---|
| 217 | |
|---|
| 218 | Getting the automatic deriving mechanism to work really smoothly |
|---|
| 219 | is surprisingly hard. I keep finding myself in TcDeriv! |
|---|
| 220 | |
|---|
| 221 | Anyway, this is a nice clean fix to Trac #2701. |
|---|
| 222 | |
|---|
| 223 | ] |
|---|
| 224 | [Use pdflatex rather than latex for building |
|---|
| 225 | Ian Lynagh <igloo@earth.li>**20081024112400 |
|---|
| 226 | The Windows builder is having problems running ps2pdf, so this works |
|---|
| 227 | aroudn the problem. |
|---|
| 228 | ] |
|---|
| 229 | [Remove an unmatched } in core.tex |
|---|
| 230 | Ian Lynagh <igloo@earth.li>**20081024111750] |
|---|
| 231 | [Add a usepackage{url} |
|---|
| 232 | Ian Lynagh <igloo@earth.li>**20081024111458] |
|---|
| 233 | [Update ANNOUNCE |
|---|
| 234 | Ian Lynagh <igloo@earth.li>**20081022164423] |
|---|
| 235 | [Fix a bug in the new scheduler |
|---|
| 236 | Simon Marlow <marlowsd@gmail.com>**20081023155017 |
|---|
| 237 | If the current thread blocks, we should yield the Capability |
|---|
| 238 | immediately, because the thread and hence possibly the current Task |
|---|
| 239 | are now owned by someone else. This worked in the old scheduler, but |
|---|
| 240 | we moved where the yield happens in the new scheduler which broke it. |
|---|
| 241 | ] |
|---|
| 242 | [add an assertion |
|---|
| 243 | Simon Marlow <marlowsd@gmail.com>**20081023154551] |
|---|
| 244 | [fix a warning |
|---|
| 245 | Simon Marlow <marlowsd@gmail.com>**20081023082213] |
|---|
| 246 | [traverse the spark pools only once during GC rather than twice |
|---|
| 247 | Simon Marlow <marlowsd@gmail.com>**20081022115233] |
|---|
| 248 | [Refactoring and reorganisation of the scheduler |
|---|
| 249 | Simon Marlow <marlowsd@gmail.com>**20081022092744 |
|---|
| 250 | |
|---|
| 251 | Change the way we look for work in the scheduler. Previously, |
|---|
| 252 | checking to see whether there was anything to do was a |
|---|
| 253 | non-side-effecting operation, but this has changed now that we do |
|---|
| 254 | work-stealing. This lead to a refactoring of the inner loop of the |
|---|
| 255 | scheduler. |
|---|
| 256 | |
|---|
| 257 | Also, lots of cleanup in the new work-stealing code, but no functional |
|---|
| 258 | changes. |
|---|
| 259 | |
|---|
| 260 | One new statistic is added to the +RTS -s output: |
|---|
| 261 | |
|---|
| 262 | SPARKS: 1430 (2 converted, 1427 pruned) |
|---|
| 263 | |
|---|
| 264 | lets you know something about the use of `par` in the program. |
|---|
| 265 | ] |
|---|
| 266 | [Work stealing for sparks |
|---|
| 267 | berthold@mathematik.uni-marburg.de**20080915132846 |
|---|
| 268 | |
|---|
| 269 | Spark stealing support for PARALLEL_HASKELL and THREADED_RTS versions of the RTS. |
|---|
| 270 | |
|---|
| 271 | Spark pools are per capability, separately allocated and held in the Capability |
|---|
| 272 | structure. The implementation uses Double-Ended Queues (deque) and cas-protected |
|---|
| 273 | access. |
|---|
| 274 | |
|---|
| 275 | The write end of the queue (position bottom) can only be used with |
|---|
| 276 | mutual exclusion, i.e. by exactly one caller at a time. |
|---|
| 277 | Multiple readers can steal()/findSpark() from the read end |
|---|
| 278 | (position top), and are synchronised without a lock, based on a cas |
|---|
| 279 | of the top position. One reader wins, the others return NULL for a |
|---|
| 280 | failure. |
|---|
| 281 | |
|---|
| 282 | Work stealing is called when Capabilities find no other work (inside yieldCapability), |
|---|
| 283 | and tries all capabilities 0..n-1 twice, unless a theft succeeds. |
|---|
| 284 | |
|---|
| 285 | Inside schedulePushWork, all considered cap.s (those which were idle and could |
|---|
| 286 | be grabbed) are woken up. Future versions should wake up capabilities immediately when |
|---|
| 287 | putting a new spark in the local pool, from newSpark(). |
|---|
| 288 | |
|---|
| 289 | Patch has been re-recorded due to conflicting bugfixes in the sparks.c, also fixing a |
|---|
| 290 | (strange) conflict in the scheduler. |
|---|
| 291 | |
|---|
| 292 | ] |
|---|
| 293 | [include an elapsed time table |
|---|
| 294 | Simon Marlow <marlowsd@gmail.com>**20081023080648] |
|---|
| 295 | [generate a valid summary for older GHC versions too |
|---|
| 296 | Simon Marlow <marlowsd@gmail.com>**20081023080629] |
|---|
| 297 | [Fix Trac #2714 (a minor wibble) |
|---|
| 298 | simonpj@microsoft.com**20081022145138 |
|---|
| 299 | |
|---|
| 300 | In boxy_match (which is a pure function used by preSubType) we can |
|---|
| 301 | encounter TyVars not just TcTyVars; this patch takes account of that. |
|---|
| 302 | |
|---|
| 303 | ] |
|---|
| 304 | [Reject programs with superclass equalities for now |
|---|
| 305 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20081021131721 |
|---|
| 306 | - The current implementation of type families cannot properly deal |
|---|
| 307 | with superclass equalities. Instead of making a half-hearted attempt at |
|---|
| 308 | supporting them, which mostly ends in cryptic error message, rejecting |
|---|
| 309 | right away with an appropriate message. |
|---|
| 310 | |
|---|
| 311 | MERGE TO 6.10 |
|---|
| 312 | ] |
|---|
| 313 | [Fix doc syntax |
|---|
| 314 | Ian Lynagh <igloo@earth.li>**20081021183317] |
|---|
| 315 | [Don't put the README file in the Windows installer; fixes trac #2698 |
|---|
| 316 | Ian Lynagh <igloo@earth.li>**20081021162543 |
|---|
| 317 | The README file talks about getting and building the sources, which |
|---|
| 318 | doesn't make sense for the installer. |
|---|
| 319 | ] |
|---|
| 320 | [Comments and parens only |
|---|
| 321 | simonpj@microsoft.com**20081021151401] |
|---|
| 322 | [Do proper cloning in worker/wrapper splitting |
|---|
| 323 | simonpj@microsoft.com**20081021143156 |
|---|
| 324 | |
|---|
| 325 | See Note [Freshen type variables] in WwLib. We need to clone type |
|---|
| 326 | variables when building a worker/wrapper split, else we simply get |
|---|
| 327 | bogus code, admittedly in rather obscure situations. I can't quite |
|---|
| 328 | remember what program showed this up, unfortunately, but there |
|---|
| 329 | definitely *was* one! (You get a Lint error.) |
|---|
| 330 | |
|---|
| 331 | ] |
|---|
| 332 | [Don't float an expression wrapped in a cast |
|---|
| 333 | simonpj@microsoft.com**20081021143019 |
|---|
| 334 | |
|---|
| 335 | There is no point in floating out an expression wrapped in a coercion; |
|---|
| 336 | If we do we'll transform |
|---|
| 337 | lvl = e |> co [_$_] |
|---|
| 338 | to |
|---|
| 339 | lvl' = e; lvl = lvl' |> co |
|---|
| 340 | and then inline lvl. Better just to float out the payload (e). |
|---|
| 341 | |
|---|
| 342 | ] |
|---|
| 343 | [Fix Trac #2668, and refactor TcDeriv |
|---|
| 344 | simonpj@microsoft.com**20081021142922 |
|---|
| 345 | |
|---|
| 346 | TcDeriv deals with both standalone and ordinary 'deriving'; |
|---|
| 347 | and with both data types and 'newtype deriving'. The result |
|---|
| 348 | is really rather compilcated and ad hoc. Ryan discovered |
|---|
| 349 | #2668; this patch fixes that bug, and makes the internal interfces |
|---|
| 350 | #more uniform. Specifically, the business of knocking off |
|---|
| 351 | type arguments from the instance type until it matches the kind of the |
|---|
| 352 | class, is now done by derivTyData, not mkNewTypeEqn, because the |
|---|
| 353 | latter is shared with standalone derriving, whree the trimmed |
|---|
| 354 | type application is what the user wrote. |
|---|
| 355 | |
|---|
| 356 | ] |
|---|
| 357 | [Spelling error in comment |
|---|
| 358 | simonpj@microsoft.com**20081019233511] |
|---|
| 359 | [White space only |
|---|
| 360 | simonpj@microsoft.com**20081019233352] |
|---|
| 361 | [Comments to explain strict overlap checking for type family instances |
|---|
| 362 | simonpj@microsoft.com**20081019184208] |
|---|
| 363 | [Allow type families to use GADT syntax (and be GADTs) |
|---|
| 364 | simonpj@microsoft.com**20080923140535 |
|---|
| 365 | |
|---|
| 366 | We've always intended to allow you to use GADT syntax for |
|---|
| 367 | data families: |
|---|
| 368 | data instance T [a] where |
|---|
| 369 | T1 :: a -> T [a] |
|---|
| 370 | and indeed to allow data instances to *be* GADTs |
|---|
| 371 | data intsance T [a] where |
|---|
| 372 | T1 :: Int -> T [Int] |
|---|
| 373 | T2 :: a -> b -> T [(a,b)] |
|---|
| 374 | |
|---|
| 375 | This patch fixes the renamer and type checker to allow this. |
|---|
| 376 | |
|---|
| 377 | ] |
|---|
| 378 | [Improve crash message from applyTys and applyTypeToArgs |
|---|
| 379 | simonpj@microsoft.com**20080923135419] |
|---|
| 380 | [Wibble to ungrammatical error message |
|---|
| 381 | simonpj@microsoft.com**20080920232256] |
|---|
| 382 | [Comments only: replace ":=:" by "~" (notation for equality predicates) |
|---|
| 383 | simonpj@microsoft.com**20080920232024] |
|---|
| 384 | [FIX #2693 |
|---|
| 385 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20081021120107 |
|---|
| 386 | - As long as the first reduceContext in tcSimplifyRestricted potentially |
|---|
| 387 | performs improvement, we need to zonk again before the second reduceContext. |
|---|
| 388 | It would be better to prevent the improvement in the first place, but given |
|---|
| 389 | the current situation zonking is definitely the right thing to do. |
|---|
| 390 | |
|---|
| 391 | MERGE TO 6.10 |
|---|
| 392 | ] |
|---|
| 393 | [Restore the terminal attributes even if ghci does not exit normally. |
|---|
| 394 | Judah Jacobson <judah.jacobson@gmail.com>**20081020164109] |
|---|
| 395 | [FIX #2688 |
|---|
| 396 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20081021044213 |
|---|
| 397 | - Change in TcSimplify.reduceContext: |
|---|
| 398 | |
|---|
| 399 | We do *not* go around for new extra_eqs. Morally, we should, |
|---|
| 400 | but we can't without risking non-termination (see #2688). By |
|---|
| 401 | not going around, we miss some legal programs mixing FDs and |
|---|
| 402 | TFs, but we never claimed to support such programs in the |
|---|
| 403 | current implementation anyway. |
|---|
| 404 | |
|---|
| 405 | MERGE TO 6.10 |
|---|
| 406 | ] |
|---|
| 407 | [Move documentation within 80 column boundary. |
|---|
| 408 | Thomas Schilling <nominolo@googlemail.com>**20081014134016] |
|---|
| 409 | [Improve haddock documentation for 'GHC.topSortModuleGraph'. |
|---|
| 410 | Thomas Schilling <nominolo@googlemail.com>**20081014133833] |
|---|
| 411 | [Improve haddock documentation for HsExpr module. |
|---|
| 412 | Thomas Schilling <nominolo@googlemail.com>**20081014133740] |
|---|
| 413 | [Improve Haddock-markup for HsDecls module. |
|---|
| 414 | Thomas Schilling <nominolo@googlemail.com>**20081014133556] |
|---|
| 415 | [Run Haddock with compacting GC and show RTS statistics. |
|---|
| 416 | Thomas Schilling <nominolo@googlemail.com>**20081020111410] |
|---|
| 417 | [FIX (partially) #2703: bug in stack overflow handling when inside block |
|---|
| 418 | Simon Marlow <marlowsd@gmail.com>**20081020121103 |
|---|
| 419 | As a result of a previous ticket (#767) we disabled the generation of |
|---|
| 420 | StackOverflow exceptions when inside a Control.Exception.block, on the |
|---|
| 421 | grounds that StackOverflow is like an asynchronous exception. Instead |
|---|
| 422 | we just increase the stack size. However, the stack size calculation |
|---|
| 423 | was wrong, and ended up not increasing the size of the stack, with the |
|---|
| 424 | result that the runtime just kept re-allocating the stack and filling |
|---|
| 425 | up memory. |
|---|
| 426 | ] |
|---|
| 427 | [Re-export Located(..) and related functions |
|---|
| 428 | Simon Marlow <marlowsd@gmail.com>**20081020102422 |
|---|
| 429 | So that clients don't need to import SrcLoc |
|---|
| 430 | ] |
|---|
| 431 | [whitespace fix |
|---|
| 432 | Simon Marlow <marlowsd@gmail.com>**20081020101241] |
|---|
| 433 | [FIX #2691: Manually reset the terminal to its initial settings; works around a bug in libedit. |
|---|
| 434 | Judah Jacobson <judah.jacobson@gmail.com>**20081016024838] |
|---|
| 435 | [Eliminate duplicate flags in the tab completion of ghci's :set command. |
|---|
| 436 | Judah Jacobson <judah.jacobson@gmail.com>**20081016015721] |
|---|
| 437 | [Add dph haddock docs to the doc index |
|---|
| 438 | Ian Lynagh <igloo@earth.li>**20081019133208] |
|---|
| 439 | [Clean the bootstrapping extensible-exceptions package |
|---|
| 440 | Ian Lynagh <igloo@earth.li>**20081017195942] |
|---|
| 441 | [Fix trac #2687 |
|---|
| 442 | Ian Lynagh <igloo@earth.li>**20081015163412 |
|---|
| 443 | OtherPunctuation, ConnectorPunctuation and DashPunctuation are now |
|---|
| 444 | treated as symbols, rather than merely graphic characters. |
|---|
| 445 | ] |
|---|
| 446 | [Fix trac #2680; avoid quadratic behaviour from (++) |
|---|
| 447 | Ian Lynagh <igloo@earth.li>**20081015163235] |
|---|
| 448 | [Fix the build when the bootstrapping compiler has a newer Cabal than us |
|---|
| 449 | Ian Lynagh <igloo@earth.li>**20081015144023 |
|---|
| 450 | We need to forcibly use the in-tree Cabal, or we get version mismatch errors |
|---|
| 451 | ] |
|---|
| 452 | [Fix the name of prologue.txt when making bindists |
|---|
| 453 | Ian Lynagh <igloo@earth.li>**20081014114714] |
|---|
| 454 | [Comments only |
|---|
| 455 | simonpj@microsoft.com**20081015084501] |
|---|
| 456 | [Fix Trac #2497; two separate typos in Lexer.x |
|---|
| 457 | simonpj@microsoft.com**20081015084344 |
|---|
| 458 | |
|---|
| 459 | The patch to switch on lexing of 'forall' inside a RULES pragma |
|---|
| 460 | wasn't working. This fixes it so that it does. |
|---|
| 461 | |
|---|
| 462 | ] |
|---|
| 463 | [Update manual: tidy up instances, say more about type families in instance decls |
|---|
| 464 | simonpj@microsoft.com**20081015080509] |
|---|
| 465 | [Make tags work on Unices, too. |
|---|
| 466 | Thomas Schilling <nominolo@googlemail.com>**20081014211236] |
|---|
| 467 | [Undefine __PIC__ before defining it to work around "multiple definitions of __PIC__" warnings |
|---|
| 468 | Clemens Fruhwirth <clemens@endorphin.org>**20081014143206] |
|---|
| 469 | [Add "dyn" to GhcRTSWays when compiling --enable-shared |
|---|
| 470 | Clemens Fruhwirth <clemens@endorphin.org>**20081014125123] |
|---|
| 471 | [Fill out the ghc package's cabal file |
|---|
| 472 | Ian Lynagh <igloo@earth.li>**20081013235817] |
|---|
| 473 | [Patching libffi so it can be built as DLL |
|---|
| 474 | Clemens Fruhwirth <clemens@endorphin.org>**20081014103459 |
|---|
| 475 | |
|---|
| 476 | libffi-dllize-3.0.6.patch should be pushed upstream |
|---|
| 477 | ] |
|---|
| 478 | [Add 'etags' makefile target. |
|---|
| 479 | Thomas Schilling <nominolo@googlemail.com>**20081013170927 |
|---|
| 480 | |
|---|
| 481 | This only works with stage2 since `ghctags' is built against stage1 |
|---|
| 482 | but not against the bootstrapping compiler. Also note that all of GHC |
|---|
| 483 | must typecheck for this target to succeed. Perhaps we should not |
|---|
| 484 | overwrite the old TAGS file by default then. |
|---|
| 485 | ] |
|---|
| 486 | [Use cabal information to get GHC's flags to `ghctags'. |
|---|
| 487 | Thomas Schilling <nominolo@googlemail.com>**20081013170658 |
|---|
| 488 | |
|---|
| 489 | By giving the dist-directory to ghctags we can get all the GHC API |
|---|
| 490 | flags we need in order to load the required modules. The flag name |
|---|
| 491 | could perhaps be improved, but apart from that it seems to work well. |
|---|
| 492 | ] |
|---|
| 493 | [Version bump for libffi to 3.0.6 |
|---|
| 494 | Clemens Fruhwirth <clemens@endorphin.org>**20081014081300] |
|---|
| 495 | [Encode shared/static configuration into stamps to do the right thing when rebuilding |
|---|
| 496 | Clemens Fruhwirth <clemens@endorphin.org>**20081013221530] |
|---|
| 497 | [Add a link to the GHC API docs from the library haddock index |
|---|
| 498 | Ian Lynagh <igloo@earth.li>**20081013195943] |
|---|
| 499 | [Link to the GHC API documentation from the main doc page |
|---|
| 500 | Ian Lynagh <igloo@earth.li>**20081013200927] |
|---|
| 501 | [Whitespace only in docs/index.html |
|---|
| 502 | Ian Lynagh <igloo@earth.li>**20081013200625] |
|---|
| 503 | [Tweak gen_contents_index |
|---|
| 504 | Ian Lynagh <igloo@earth.li>**20081013192548 |
|---|
| 505 | It now works again after it has been installed, as well as while it is |
|---|
| 506 | in a source tree. |
|---|
| 507 | After it's been installed it filters out the ghc package, as that |
|---|
| 508 | currently swamps everything else in the index. |
|---|
| 509 | ] |
|---|
| 510 | [Build fixes for DLLized rts |
|---|
| 511 | Clemens Fruhwirth <clemens@endorphin.org>**20081013201608] |
|---|
| 512 | [Do not filter the rts from linked libraries in linkDynLib as Windows does not allow unresolved symbols |
|---|
| 513 | Clemens Fruhwirth <clemens@endorphin.org>**20081013201426] |
|---|
| 514 | [Add HsFFI.o to INSTALL_LIBS |
|---|
| 515 | Clemens Fruhwirth <clemens@endorphin.org>**20081013200945] |
|---|
| 516 | [Rename symbol macros to a consistant naming scheme |
|---|
| 517 | Clemens Fruhwirth <clemens@endorphin.org>**20081013162433] |
|---|
| 518 | [Fix #2685: two Bool arguments to tidyTypeEnv were the wrong way around |
|---|
| 519 | Simon Marlow <marlowsd@gmail.com>**20081013121339 |
|---|
| 520 | So -XTemplateHaskell was behaving like -fomit-interface-file-pragmas, |
|---|
| 521 | and vice versa. |
|---|
| 522 | ] |
|---|
| 523 | [Simplify the "is $bindir in $PATH" test |
|---|
| 524 | Ian Lynagh <igloo@earth.li>**20081011191008] |
|---|
| 525 | [Correct the "is $bindir in $PATH" test |
|---|
| 526 | Ian Lynagh <igloo@earth.li>**20081011191030 |
|---|
| 527 | We were testing neq instead of eq |
|---|
| 528 | ] |
|---|
| 529 | [Fix a typo which was causing ghci to quit on commands errors |
|---|
| 530 | pepe <mnislaih@gmail.com>**20081011114720] |
|---|
| 531 | [Drop libm from the linker dependencies for libffi |
|---|
| 532 | Clemens Fruhwirth <clemens@endorphin.org>**20081011074524] |
|---|
| 533 | [Do not generate haddock documentation when running install-docs in libffi |
|---|
| 534 | Clemens Fruhwirth <clemens@endorphin.org>**20081010192318] |
|---|
| 535 | [When waking up thread blocked on TVars, wake oldest first (#2319) |
|---|
| 536 | Josef Svenningsson <josef.svenningsson@gmail.com>**20081010150322 |
|---|
| 537 | StgTVarWatchQueue contains the threads blocked on a TVar in order |
|---|
| 538 | youngest first. The list has to be traversed backwards to unpark the threads |
|---|
| 539 | oldest first. |
|---|
| 540 | |
|---|
| 541 | This improves the fairness when using STM in some situations. |
|---|
| 542 | ] |
|---|
| 543 | [add readTVarIO :: TVar a -> IO a |
|---|
| 544 | Simon Marlow <marlowsd@gmail.com>**20081010131545] |
|---|
| 545 | [fix #2636: throw missing module errors as SourceErrors, not ErrMsg |
|---|
| 546 | Simon Marlow <marlowsd@gmail.com>**20081010131535] |
|---|
| 547 | [atomicModifyIORef: use a local cas() instead of the global lock |
|---|
| 548 | Simon Marlow <simonmar@microsoft.com>**20081008154702 |
|---|
| 549 | This should improve scaling when using atomicModifyIORef |
|---|
| 550 | ] |
|---|
| 551 | [Delay building libffi until package.conf is created and fix bindist |
|---|
| 552 | Clemens Fruhwirth <clemens@endorphin.org>**20081010073106] |
|---|
| 553 | [Install a versioned ghc-pkg script; fixes trac #2662 |
|---|
| 554 | Ian Lynagh <igloo@earth.li>**20081009164946] |
|---|
| 555 | [Fix bindist creation: Only the main RTS was being put in the bindists |
|---|
| 556 | Ian Lynagh <igloo@earth.li>**20081009163451] |
|---|
| 557 | [pushAtom: add missing case for MachNullAddr (#2589) |
|---|
| 558 | Simon Marlow <marlowsd@gmail.com>**20081009091118] |
|---|
| 559 | [undo incorrect assertion, and fix comments |
|---|
| 560 | Simon Marlow <marlowsd@gmail.com>**20081009085118] |
|---|
| 561 | [remove old GRAN/PARALLEL_HASKELL code |
|---|
| 562 | Simon Marlow <marlowsd@gmail.com>**20081009085051] |
|---|
| 563 | [FIX #2639 |
|---|
| 564 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20081009132328 |
|---|
| 565 | |
|---|
| 566 | MERGE TO 6.10 |
|---|
| 567 | ] |
|---|
| 568 | [Cover PredTy case in Type.tyFamInsts |
|---|
| 569 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20081009061435 |
|---|
| 570 | |
|---|
| 571 | MERGE TO 6.10 |
|---|
| 572 | ] |
|---|
| 573 | [Drop ghcconfig.h/RtsConfig.h from libffi's package.conf.in |
|---|
| 574 | Clemens Fruhwirth <clemens@endorphin.org>**20081009071342] |
|---|
| 575 | [Don't use sed's -i flag as Solaris doesn't know it in libffi/Makefile |
|---|
| 576 | Clemens Fruhwirth <clemens@endorphin.org>**20081008234455] |
|---|
| 577 | [Don't use /dev/null trick to create empty object files in libffi/Makefile |
|---|
| 578 | Clemens Fruhwirth <clemens@endorphin.org>**20081008232902] |
|---|
| 579 | [Turn libffi into a Haskell package |
|---|
| 580 | Clemens Fruhwirth <clemens@endorphin.org>**20081008170443] |
|---|
| 581 | [Make 'getModSummary' deterministic. |
|---|
| 582 | Thomas Schilling <nominolo@googlemail.com>**20081008144032] |
|---|
| 583 | [Add accessors to 'HsModule' and haddockify it. |
|---|
| 584 | Thomas Schilling <nominolo@googlemail.com>**20081007235656] |
|---|
| 585 | [fix syntax errors in src-dist publish rules |
|---|
| 586 | Simon Marlow <marlowsd@gmail.com>**20081008103432] |
|---|
| 587 | [add comments and an ASSERT_LOCK_HELD() |
|---|
| 588 | Simon Marlow <marlowsd@gmail.com>**20081008112627] |
|---|
| 589 | [Fix #2663: we had a hard-wired capabilities[0] |
|---|
| 590 | Simon Marlow <marlowsd@gmail.com>**20081008112609 |
|---|
| 591 | For some unknown reason in schedulePostRunThread() we were always |
|---|
| 592 | passing capabilities[0] rather than the current Capability to |
|---|
| 593 | throwToSingleThreaded(). This caused all kinds of weird failures and |
|---|
| 594 | crashes in STM code when running on multiple processors. |
|---|
| 595 | ] |
|---|
| 596 | [Fix #1955 for heap profiles generated by +RTS -hT |
|---|
| 597 | Simon Marlow <marlowsd@gmail.com>**20081003150745] |
|---|
| 598 | [add a section id for +RTS -hT |
|---|
| 599 | Simon Marlow <marlowsd@gmail.com>**20081007151007] |
|---|
| 600 | [update documentation for PostfixOperators |
|---|
| 601 | Simon Marlow <marlowsd@gmail.com>**20081007150957] |
|---|
| 602 | [fix markup |
|---|
| 603 | Simon Marlow <marlowsd@gmail.com>**20081007150943] |
|---|
| 604 | [Fix bug in DPH docs |
|---|
| 605 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20081008101618] |
|---|
| 606 | [Add short DPH section to users guide |
|---|
| 607 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20081008064754 |
|---|
| 608 | |
|---|
| 609 | MERGE TO 6.10 |
|---|
| 610 | ] |
|---|
| 611 | [Users Guide: added type family documentation |
|---|
| 612 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20081008061927 |
|---|
| 613 | |
|---|
| 614 | MERGE TO 6.10 |
|---|
| 615 | ] |
|---|
| 616 | [Track changes to package dph |
|---|
| 617 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20081008032859 |
|---|
| 618 | |
|---|
| 619 | MERGE TO 6.10 |
|---|
| 620 | ] |
|---|
| 621 | [Build a profiled GHC API by default if p is in GhcLibWays |
|---|
| 622 | Ian Lynagh <igloo@earth.li>**20081007152318] |
|---|
| 623 | [Check whether mk/validate.mk defines anything after validating |
|---|
| 624 | Ian Lynagh <igloo@earth.li>**20081007144855] |
|---|
| 625 | [Remove #define _BSD_SOURCE from Stg.h |
|---|
| 626 | Ian Lynagh <igloo@earth.li>**20081006101959 |
|---|
| 627 | It's no longer needed, as base no longer #includes it |
|---|
| 628 | ] |
|---|
| 629 | [Make ghctags compile again. |
|---|
| 630 | Thomas Schilling <nominolo@googlemail.com>**20081007135705] |
|---|
| 631 | [Revert AutoLinkPackages change for dynamic libraries. Cabal handles that now. |
|---|
| 632 | Clemens Fruhwirth <clemens@endorphin.org>**20081007100417] |
|---|
| 633 | [Change suffix for dyn. linked executables from _real to .dyn |
|---|
| 634 | Clemens Fruhwirth <clemens@endorphin.org>**20081007100750] |
|---|
| 635 | [Add accessors to 'Target' fields and haddockify. |
|---|
| 636 | Thomas Schilling <nominolo@googlemail.com>**20081006222940 |
|---|
| 637 | |
|---|
| 638 | MERGE TO 6.10 |
|---|
| 639 | ] |
|---|
| 640 | [Make 'gblock' and 'gunblock' part of 'ExceptionMonad'. This way the |
|---|
| 641 | Thomas Schilling <nominolo@googlemail.com>**20081006222831 |
|---|
| 642 | default implementations of 'gbracket' and 'gfinally' just work. |
|---|
| 643 | |
|---|
| 644 | MERGE TO 6.10 |
|---|
| 645 | ] |
|---|
| 646 | [Add Word8 support to vectoriser |
|---|
| 647 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20081007004416 |
|---|
| 648 | |
|---|
| 649 | MERGE TO 6.10 |
|---|
| 650 | ] |
|---|
| 651 | [Fix generating OS X installers: Set COMMAND_MODE=unix2003 |
|---|
| 652 | Ian Lynagh <igloo@earth.li>**20081005222715 |
|---|
| 653 | If we don't specify COMMAND_MODE=unix2003 then xcodebuild defaults |
|---|
| 654 | to setting it to legacy, which means that ar builds archives |
|---|
| 655 | without a table of contents. That makes the build fail later on. |
|---|
| 656 | ] |
|---|
| 657 | [We need to set datadir = $(libdir) in bindists |
|---|
| 658 | Ian Lynagh <igloo@earth.li>**20081005143307 |
|---|
| 659 | We already do in the normal Makefiles. |
|---|
| 660 | |
|---|
| 661 | This is because GHC needs package.conf and unlit to be in the same place |
|---|
| 662 | (and things like ghc-pkg need to agree on where package.conf is, so we |
|---|
| 663 | just set it globally). |
|---|
| 664 | ] |
|---|
| 665 | [prep-bin-dist-mingw complains if it finds a bad version of windres |
|---|
| 666 | Ian Lynagh <igloo@earth.li>**20081004175351] |
|---|
| 667 | [removed Data.Generics.Basics, added Data.Data |
|---|
| 668 | 'Jose Pedro Magalhaes <jpm@cs.uu.nl>'**20081002082808] |
|---|
| 669 | [Fix a build problem with GHC 6.4.2 |
|---|
| 670 | Ian Lynagh <igloo@earth.li>**20081003195700] |
|---|
| 671 | [No AutoLinkPackages for dynamic library linking |
|---|
| 672 | Clemens Fruhwirth <clemens@endorphin.org>**20081003185304] |
|---|
| 673 | [use ghcError for error in command line |
|---|
| 674 | Clemens Fruhwirth <clemens@endorphin.org>**20081001125648] |
|---|
| 675 | [Fix warnings |
|---|
| 676 | simonpj@microsoft.com**20081003171207] |
|---|
| 677 | [Always use extensible exceptions in ghc-pkg, rather than using ifdefs |
|---|
| 678 | Ian Lynagh <igloo@earth.li>**20081003161247] |
|---|
| 679 | [Use a proper exception for IOEnvFailure, not just a UserError |
|---|
| 680 | Ian Lynagh <igloo@earth.li>**20081003160129] |
|---|
| 681 | [Use an extensible-exceptions package when bootstrapping |
|---|
| 682 | Ian Lynagh <igloo@earth.li>**20081003140216 |
|---|
| 683 | Ifdefs for whether we had extensible exceptions or not were spreading |
|---|
| 684 | through GHC's source, and things would only have got worse for the next |
|---|
| 685 | 2-3 years, so instead we now use an implementation of extensible |
|---|
| 686 | exceptions built on top of the old exception type. |
|---|
| 687 | ] |
|---|
| 688 | [Expunge ThFake, cure Trac #2632 |
|---|
| 689 | simonpj@microsoft.com**20081003140423 |
|---|
| 690 | |
|---|
| 691 | This patch fixes a dirty hack (the fake ThFake module), which in turn |
|---|
| 692 | was causing Trac #2632. |
|---|
| 693 | |
|---|
| 694 | The new scheme is that the top-level binders in a TH [d| ... |] decl splice |
|---|
| 695 | get Internal names. That breaks a previous invariant that things like |
|---|
| 696 | TyCons always have External names, but these TyCons are never long-lived; |
|---|
| 697 | they live only long enough to typecheck the TH quotation; the result is |
|---|
| 698 | discarded. So it seems cool. |
|---|
| 699 | |
|---|
| 700 | Nevertheless -- Template Haskell folk: please test your code. The testsuite |
|---|
| 701 | is OK but it's conceivable that I've broken something in TH. Let's see. |
|---|
| 702 | |
|---|
| 703 | ] |
|---|
| 704 | [Make a debug check more refined |
|---|
| 705 | simonpj@microsoft.com**20081003140144] |
|---|
| 706 | [Add ASSERTs to all calls of nameModule |
|---|
| 707 | simonpj@microsoft.com**20081003135334 |
|---|
| 708 | |
|---|
| 709 | nameModule fails on an InternalName. These ASSERTS tell you |
|---|
| 710 | which call failed. |
|---|
| 711 | |
|---|
| 712 | ] |
|---|
| 713 | [Let parseModule take a ModSummary like checkAndLoadModule did. |
|---|
| 714 | Thomas Schilling <nominolo@googlemail.com>**20081002230412 |
|---|
| 715 | |
|---|
| 716 | To get the ModSummary for a ModuleName getModSummary can be used. |
|---|
| 717 | It's not called find* or lookup* because it assumes that the module is |
|---|
| 718 | in the module graph and throws an exception if it cannot be found. |
|---|
| 719 | Overall, I'm not quite sure about the usefulness of this function |
|---|
| 720 | since the user has no control about which filetype to grab (hs or |
|---|
| 721 | hs-boot). |
|---|
| 722 | ] |
|---|
| 723 | [Remove some out-of-date entries from .darcs-boring |
|---|
| 724 | Ian Lynagh <igloo@earth.li>**20081002201519] |
|---|
| 725 | [TFs: Allow repeated variables in left-hand sides of instances |
|---|
| 726 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20081002134539 |
|---|
| 727 | |
|---|
| 728 | MERGE TO 6.10 |
|---|
| 729 | ] |
|---|
| 730 | [Clean up some comments |
|---|
| 731 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20081002074642 |
|---|
| 732 | |
|---|
| 733 | MERGE TO 6.10 |
|---|
| 734 | ] |
|---|
| 735 | [Make the new binder-swap stuff in OccurAnal work right for GlobalIds |
|---|
| 736 | simonpj@microsoft.com**20081002133002 |
|---|
| 737 | |
|---|
| 738 | See Note [Binder swap on GlobalId scrutinees]. I hadn't got this |
|---|
| 739 | right before, so repeated cases on imported Ids weren't getting optimised. |
|---|
| 740 | |
|---|
| 741 | |
|---|
| 742 | ] |
|---|
| 743 | [Minor refactoring only |
|---|
| 744 | simonpj@microsoft.com**20081002132929] |
|---|
| 745 | [Comments only |
|---|
| 746 | simonpj@microsoft.com**20081002132833] |
|---|
| 747 | [Zap dead-ness info appropriately in SpecConstr |
|---|
| 748 | simonpj@microsoft.com**20081002132657 |
|---|
| 749 | |
|---|
| 750 | SpecConstr can make pattern binders come alive, so we must remember |
|---|
| 751 | to zap their dead-variable annotation. See extendCaseBndrs. |
|---|
| 752 | |
|---|
| 753 | (This was triggering a Core Lint failure in DPH.) |
|---|
| 754 | |
|---|
| 755 | ] |
|---|
| 756 | [Suppress invalid Core Lint complaint about lack of constructors |
|---|
| 757 | simonpj@microsoft.com**20081002132426] |
|---|
| 758 | [add some more GC roots (fixes conc048, and possibly some others) |
|---|
| 759 | Simon Marlow <marlowsd@gmail.com>**20081001164427] |
|---|
| 760 | [Document +RTS -hT |
|---|
| 761 | Simon Marlow <marlowsd@gmail.com>**20081001163222 |
|---|
| 762 | We forgot to document this in GHC 6.8 |
|---|
| 763 | ] |
|---|
| 764 | [fix new-qualified-operators link |
|---|
| 765 | Simon Marlow <marlowsd@gmail.com>**20081001163105] |
|---|
| 766 | [Proper error message for unsupported pattern signatures |
|---|
| 767 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20081001144339 |
|---|
| 768 | - Pattern signatures must be identical to the type expected for the pattern; |
|---|
| 769 | see Note [Pattern coercions] |
|---|
| 770 | - We now signal an appropriate error if an equality coercion would be needed |
|---|
| 771 | (instead of just generating Core that doesn't typecheck) |
|---|
| 772 | |
|---|
| 773 | MERGE TO 6.10 |
|---|
| 774 | ] |
|---|
| 775 | [Prevent excessive inlining with DPH |
|---|
| 776 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20081002012055 |
|---|
| 777 | |
|---|
| 778 | This adds a new flag -finline-if-enough-args which disables inlining for |
|---|
| 779 | partially applied functions. It is automatically set by -Odph. This is a |
|---|
| 780 | temporary hack and should remain undocumented. |
|---|
| 781 | |
|---|
| 782 | MERGE TO 6.10 |
|---|
| 783 | |
|---|
| 784 | ] |
|---|
| 785 | [On Windows, check that we have a good version of windres when configuring |
|---|
| 786 | Ian Lynagh <igloo@earth.li>**20081001171133] |
|---|
| 787 | [Call $(PERL) rather than perl when making the manpage |
|---|
| 788 | Ian Lynagh <igloo@earth.li>**20080930155054] |
|---|
| 789 | [don't install the installPackage program |
|---|
| 790 | Ian Lynagh <igloo@earth.li>**20080930145714] |
|---|
| 791 | [Fix #2637: conc032(threaded2) failure |
|---|
| 792 | Simon Marlow <marlowsd@gmail.com>**20081001135549 |
|---|
| 793 | There was a race condition whereby a thread doing throwTo could be |
|---|
| 794 | blocked on a thread that had finished, and the GC would detect this |
|---|
| 795 | as a deadlock rather than raising the pending exception. We can't |
|---|
| 796 | close the race, but we can make the right thing happen when the GC |
|---|
| 797 | runs later. |
|---|
| 798 | ] |
|---|
| 799 | [Remove outdated link to OGI webpage |
|---|
| 800 | Simon Marlow <marlowsd@gmail.com>**20080930150912] |
|---|
| 801 | [TFs: Fixed InstContextNorm (and simplification of IPs) |
|---|
| 802 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20081001131303 |
|---|
| 803 | |
|---|
| 804 | MERGE TO 6.10 |
|---|
| 805 | ] |
|---|
| 806 | [TcSimplify.reduceImplication: clean up |
|---|
| 807 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20081001091315 |
|---|
| 808 | - This cleans up some of the mess in reduceImplication and documents the |
|---|
| 809 | precondition on the form of wanted equalities properly. |
|---|
| 810 | - I also made the back off test a bit smarter by allowing to back off in the |
|---|
| 811 | presence of wanted equalities as long as none of them got solved in the |
|---|
| 812 | attempt. (That should save generating some superfluous bindings.) |
|---|
| 813 | |
|---|
| 814 | MERGE TO 6.10 |
|---|
| 815 | ] |
|---|
| 816 | [Make sure to zonk the kind of coercion variables |
|---|
| 817 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20081001053243 |
|---|
| 818 | |
|---|
| 819 | MERGE TO 6.10 |
|---|
| 820 | ] |
|---|
| 821 | [Remover PROT_EXEC flag from mmap() |
|---|
| 822 | Simon Marlow <marlowsd@gmail.com>**20080930141842 |
|---|
| 823 | Needed for #738 fix |
|---|
| 824 | ] |
|---|
| 825 | [Fix #2410: carefully generate unique names for CAF CCs |
|---|
| 826 | Simon Marlow <marlowsd@gmail.com>**20080930141812] |
|---|
| 827 | [fix #2594: we were erroneously applying masks, as the reporter suggested |
|---|
| 828 | Simon Marlow <marlowsd@gmail.com>**20080930115611 |
|---|
| 829 | My guess is that this is left over from when we represented Int8 and |
|---|
| 830 | friends as zero-extended rather than sign-extended. It's amazing it hasn't |
|---|
| 831 | been noticed earlier. |
|---|
| 832 | ] |
|---|
| 833 | [Unconditionalize definition of DYNAMIC_* so that libffi.so/.dll is removed even when BuildSharedLibs is reset to NO |
|---|
| 834 | Clemens Fruhwirth <clemens@endorphin.org>**20080930085449] |
|---|
| 835 | [Type families: need to instantiate flexible skolems before other flexibles |
|---|
| 836 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080930053559 |
|---|
| 837 | |
|---|
| 838 | MERGE TO 6.10 |
|---|
| 839 | ] |
|---|
| 840 | [Fix warnings |
|---|
| 841 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080929142227] |
|---|
| 842 | [Type families: consider subst rules both way |
|---|
| 843 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080929141040 |
|---|
| 844 | - applySubstFam, applySubstVarVar & applySubstVarFam need to return their |
|---|
| 845 | second argument -to be put into the todo list- if the rule would be |
|---|
| 846 | applicable if the equalities would be supplied in the opposite order. |
|---|
| 847 | |
|---|
| 848 | MERGE TO 6.10 |
|---|
| 849 | ] |
|---|
| 850 | [Clean up a bit and improve an error message |
|---|
| 851 | pepe**20080926211429] |
|---|
| 852 | [Don't capture error calls in tryUser |
|---|
| 853 | pepe**20080926204836 |
|---|
| 854 | |
|---|
| 855 | A previous patch slightly changed the semantics of tryUser. |
|---|
| 856 | This patch restores the original behaviour |
|---|
| 857 | (as expected in :print) |
|---|
| 858 | |
|---|
| 859 | ] |
|---|
| 860 | [tweaks to this section of the docs |
|---|
| 861 | Simon Marlow <simonmar@microsoft.com>**20080927141834] |
|---|
| 862 | [Add -outputdir flag (#2295) |
|---|
| 863 | Simon Marlow <simonmar@microsoft.com>**20080927141822] |
|---|
| 864 | [oops, forgot to add -XNewQualifiedOperators to the flags table |
|---|
| 865 | Simon Marlow <simonmar@microsoft.com>**20080923140449] |
|---|
| 866 | [Fix making OS X installers from source tarballs |
|---|
| 867 | Ian Lynagh <igloo@earth.li>**20080927150507 |
|---|
| 868 | I'm not sure why it works in the HEAD, but when making an installer |
|---|
| 869 | from the 6.10.1 beta configure hangs when doing the CHECK_HIST_ERRORS |
|---|
| 870 | test (during rl_initialize, I believe). Giving make /dev/null as stdin |
|---|
| 871 | fixes it. |
|---|
| 872 | ] |
|---|
| 873 | [Fix #2411: missing case for CATCH_STM_FRAME in raiseAsync() |
|---|
| 874 | Simon Marlow <simonmar@microsoft.com>**20080926232806] |
|---|
| 875 | [Fix parsing of -ignore-package flag. |
|---|
| 876 | Bertram Felgenhauer <int-e@gmx.de>**20080925053820] |
|---|
| 877 | [Add an example of how to use SCCs to the user guide |
|---|
| 878 | Ian Lynagh <igloo@earth.li>**20080926203832] |
|---|
| 879 | [Add some description of the +RTS -t/-s/-S output |
|---|
| 880 | Ian Lynagh <igloo@earth.li>**20080926200203] |
|---|
| 881 | [Remove a redundant options pragma |
|---|
| 882 | Ian Lynagh <igloo@earth.li>**20080926152731] |
|---|
| 883 | [Split ShowVersion etc off into a different type to DoInteractive etc |
|---|
| 884 | Ian Lynagh <igloo@earth.li>**20080926140539 |
|---|
| 885 | This fixes trac #1348 (ghci --help gave ghc's help), and also tidies |
|---|
| 886 | things up a bit. Things would be even tidier if the usage.txt files were |
|---|
| 887 | put into a .hs file, so that ShowUsage wouldn't need to be able to find |
|---|
| 888 | the libdir. |
|---|
| 889 | ] |
|---|
| 890 | [Pass SRC_HC_OPTS to GHC when building GHC's Main.hs |
|---|
| 891 | Ian Lynagh <igloo@earth.li>**20080926131609] |
|---|
| 892 | [Improve runghc docs; fixes trac #2477 |
|---|
| 893 | Ian Lynagh <igloo@earth.li>**20080926124425] |
|---|
| 894 | [Type families: fixes in flattening & finalisation |
|---|
| 895 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080925225324 |
|---|
| 896 | * Finalisation didn't do the right thing for equalities x ~ y, where |
|---|
| 897 | x was instantiated, but not zonked and y flexible (need to do y := x) |
|---|
| 898 | * During flattening we weren't careful enough when turning wanteds |
|---|
| 899 | intermediates into locals |
|---|
| 900 | |
|---|
| 901 | Both bugs showed up in a small example of SPJ: |
|---|
| 902 | |
|---|
| 903 | linear :: HasTrie (Basis v) => (Basis v, v) |
|---|
| 904 | linear = basisValue |
|---|
| 905 | |
|---|
| 906 | class HasTrie a where |
|---|
| 907 | |
|---|
| 908 | type family Basis u :: * |
|---|
| 909 | |
|---|
| 910 | basisValue :: (Basis v,v) |
|---|
| 911 | basisValue = error "urk" |
|---|
| 912 | |
|---|
| 913 | ] |
|---|
| 914 | [Fix the behaviour of flags like --help and --version; fixes trac #2620 |
|---|
| 915 | Ian Lynagh <igloo@earth.li>**20080925165618 |
|---|
| 916 | They should override other mode flags, not conflict with them |
|---|
| 917 | ] |
|---|
| 918 | [Follow the integer package changes |
|---|
| 919 | Ian Lynagh <igloo@earth.li>**20080925133855] |
|---|
| 920 | [Type families: fix decomposition problem |
|---|
| 921 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080925084139 |
|---|
| 922 | * Fixes the problem reported in |
|---|
| 923 | <http://www.haskell.org/pipermail/haskell-cafe/2008-July/044911.html> |
|---|
| 924 | ] |
|---|
| 925 | [Don't exit ghci if :info is called on an undefined identifier. |
|---|
| 926 | Judah Jacobson <judah.jacobson@gmail.com>**20080924212422] |
|---|
| 927 | [Fix maintainer-clean |
|---|
| 928 | Ian Lynagh <igloo@earth.li>**20080924230553] |
|---|
| 929 | [Use -f when making the runhaskell symlink |
|---|
| 930 | Ian Lynagh <igloo@earth.li>**20080924124255 |
|---|
| 931 | Otherwise installation fails if runhaskell already exists. |
|---|
| 932 | ] |
|---|
| 933 | [Use -perm -100 rather than -perm /a+x when looking for executable files |
|---|
| 934 | Ian Lynagh <igloo@earth.li>**20080924124137 |
|---|
| 935 | /a+x doesn't work on some Solaris and OS X machines. Spotted by |
|---|
| 936 | Christian Maeder. |
|---|
| 937 | ] |
|---|
| 938 | [Use $(FIND) rather than find, as the former may be gfind |
|---|
| 939 | Ian Lynagh <igloo@earth.li>**20080924123323] |
|---|
| 940 | [Look for gfind as well as find |
|---|
| 941 | Ian Lynagh <igloo@earth.li>**20080924123046] |
|---|
| 942 | [In configure, don't call FPTOOLS_HADDOCK |
|---|
| 943 | Ian Lynagh <igloo@earth.li>**20080924122558 |
|---|
| 944 | We now use the in-tree haddock, so we don't need to look for it. |
|---|
| 945 | ] |
|---|
| 946 | [Use $(TAR) rather than tar |
|---|
| 947 | Ian Lynagh <igloo@earth.li>**20080924121759 |
|---|
| 948 | Fixes problems on Solaris, where we need to use gtar instead of tar |
|---|
| 949 | ] |
|---|
| 950 | [Add $(strip) to a Makefile test |
|---|
| 951 | Ian Lynagh <igloo@earth.li>**20080924120940 |
|---|
| 952 | Fixes making bindists on solaris. Patch from Christian Maeder. |
|---|
| 953 | ] |
|---|
| 954 | [Use test -f rather than test -e, for portability (Solaris) |
|---|
| 955 | Ian Lynagh <igloo@earth.li>**20080924120840] |
|---|
| 956 | [Remove some dependencies on bootstrapping.conf from libraries/Makefile |
|---|
| 957 | Ian Lynagh <igloo@earth.li>**20080923205755 |
|---|
| 958 | They were causing some unnecessary work: |
|---|
| 959 | Running make in a built tree reregisters the GHC package in |
|---|
| 960 | bootstrapping.conf, and the build system thought that this updated |
|---|
| 961 | timestamp meant that the configure stamps were out of date. This is |
|---|
| 962 | particularly bad for the libraries with configure scripts, as those |
|---|
| 963 | take a while to run. |
|---|
| 964 | |
|---|
| 965 | The bootstrapping.conf is built in an earlier phase ("make boot") so |
|---|
| 966 | one shouldn't rely on the dependencies anyway. |
|---|
| 967 | ] |
|---|
| 968 | [Bump the version number to 6.11 |
|---|
| 969 | Ian Lynagh <igloo@earth.li>**20080923165613] |
|---|
| 970 | [Generalise type of 'defaultErrorHandler' so it can be used inside a Ghc session. |
|---|
| 971 | Thomas Schilling <nominolo@googlemail.com>**20080921085647] |
|---|
| 972 | [Make "sh -e boot" work |
|---|
| 973 | Ian Lynagh <igloo@earth.li>**20080921111508] |
|---|
| 974 | [Use -f rather than -e for portability |
|---|
| 975 | Ian Lynagh <igloo@earth.li>**20080921111436] |
|---|
| 976 | [Add some special cases for putting dph in bindists |
|---|
| 977 | Ian Lynagh <igloo@earth.li>**20080921000406] |
|---|
| 978 | [Escape a hash in the Makefile (it was breaking source dist creation) |
|---|
| 979 | Ian Lynagh <igloo@earth.li>**20080920232945] |
|---|
| 980 | [Disallow package flags in OPTIONS_GHC pragmas (#2499) |
|---|
| 981 | Simon Marlow <simonmar@microsoft.com>**20080923173904] |
|---|
| 982 | [#2566: emit a warning for 'ghc -c foo.bar' |
|---|
| 983 | Simon Marlow <simonmar@microsoft.com>**20080923144956 |
|---|
| 984 | |
|---|
| 985 | $ ghc -c foo.bar |
|---|
| 986 | Warning: the following files would be used as linker inputs, but linking is not being done: foo.bar |
|---|
| 987 | ghc: no input files |
|---|
| 988 | Usage: For basic information, try the `--help' option. |
|---|
| 989 | ] |
|---|
| 990 | [Fix to new executable allocation code (fixed print002 etc.) |
|---|
| 991 | Simon Marlow <simonmar@microsoft.com>**20080922210915 |
|---|
| 992 | The problem here is caused by the fact that info tables include a |
|---|
| 993 | relative offset to the string naming the constructor. Executable |
|---|
| 994 | memory now resides at two places in the address space: one for writing |
|---|
| 995 | and one for executing. In the info tables generated by GHCi, we were |
|---|
| 996 | calculating the offset relative to the writable instance, rather than |
|---|
| 997 | the executable instance, which meant that the GHCi debugger couldn't |
|---|
| 998 | find the names for constructors it found in the heap. |
|---|
| 999 | ] |
|---|
| 1000 | [clean sm/Evac_thr.c and sm/Scav_thr.c |
|---|
| 1001 | Simon Marlow <simonmar@microsoft.com>**20080922152827] |
|---|
| 1002 | [add -XNewQualifiedOperators (Haskell' qualified operator syntax) |
|---|
| 1003 | Simon Marlow <simonmar@microsoft.com>**20080922152340] |
|---|
| 1004 | [Fix Trac #2597 (first bug): correct type checking for empty list |
|---|
| 1005 | simonpj@microsoft.com**20080920212010 |
|---|
| 1006 | |
|---|
| 1007 | The GHC front end never generates (ExplicitList []), but TH can. |
|---|
| 1008 | This patch makes the typechecker robust to such programs. |
|---|
| 1009 | |
|---|
| 1010 | ] |
|---|
| 1011 | [Fix Trac #2597 (second bug): complain about an empty DoE block |
|---|
| 1012 | simonpj@microsoft.com**20080920211101 |
|---|
| 1013 | |
|---|
| 1014 | When converting an empty do-block from TH syntax to HsSyn, |
|---|
| 1015 | complain rather than crashing. |
|---|
| 1016 | |
|---|
| 1017 | ] |
|---|
| 1018 | [Update dependencies |
|---|
| 1019 | Ian Lynagh <igloo@earth.li>**20080920183534] |
|---|
| 1020 | [Fix building with GHC 6.6 |
|---|
| 1021 | Ian Lynagh <igloo@earth.li>**20080920162918] |
|---|
| 1022 | [Remove fno-method-sharing from the list of static flags |
|---|
| 1023 | Ian Lynagh <igloo@earth.li>**20080920010635 |
|---|
| 1024 | It is now a dynamic flag |
|---|
| 1025 | ] |
|---|
| 1026 | [Tidy up the treatment of dead binders |
|---|
| 1027 | simonpj@microsoft.com**20080920175238 |
|---|
| 1028 | |
|---|
| 1029 | This patch does a lot of tidying up of the way that dead variables are |
|---|
| 1030 | handled in Core. Just the sort of thing to do on an aeroplane. |
|---|
| 1031 | |
|---|
| 1032 | * The tricky "binder-swap" optimisation is moved from the Simplifier |
|---|
| 1033 | to the Occurrence Analyser. See Note [Binder swap] in OccurAnal. |
|---|
| 1034 | This is really a nice change. It should reduce the number of |
|---|
| 1035 | simplifier iteratoins (slightly perhaps). And it means that |
|---|
| 1036 | we can be much less pessimistic about zapping occurrence info |
|---|
| 1037 | on binders in a case expression. |
|---|
| 1038 | |
|---|
| 1039 | * For example: |
|---|
| 1040 | case x of y { (a,b) -> e } |
|---|
| 1041 | Previously, each time around, even if y,a,b were all dead, the |
|---|
| 1042 | Simplifier would pessimistically zap their OccInfo, so that we |
|---|
| 1043 | can't see they are dead any more. As a result virtually no |
|---|
| 1044 | case expression ended up with dead binders. This wasn't Bad |
|---|
| 1045 | in itself, but it always felt wrong. |
|---|
| 1046 | |
|---|
| 1047 | * I added a check to CoreLint to check that a dead binder really |
|---|
| 1048 | isn't used. That showed up a couple of bugs in CSE. (Only in |
|---|
| 1049 | this sense -- they didn't really matter.) |
|---|
| 1050 | |
|---|
| 1051 | * I've changed the PprCore printer to print "_" for a dead variable. |
|---|
| 1052 | (Use -dppr-debug to see it again.) This reduces clutter quite a |
|---|
| 1053 | bit, and of course it's much more useful with the above change. |
|---|
| 1054 | |
|---|
| 1055 | * Another benefit of the binder-swap change is that I could get rid of |
|---|
| 1056 | the Simplifier hack (working, but hacky) in which the InScopeSet was |
|---|
| 1057 | used to map a variable to a *different* variable. That allowed me |
|---|
| 1058 | to remove VarEnv.modifyInScopeSet, and to simplify lookupInScopeSet |
|---|
| 1059 | so that it doesn't look for a fixpoint. This fixes no bugs, but |
|---|
| 1060 | is a useful cleanup. |
|---|
| 1061 | |
|---|
| 1062 | * Roman pointed out that Id.mkWildId is jolly dangerous, because |
|---|
| 1063 | of its fixed unique. So I've |
|---|
| 1064 | |
|---|
| 1065 | - localied it to MkCore, where it is private (not exported) |
|---|
| 1066 | |
|---|
| 1067 | - renamed it to 'mkWildBinder' to stress that you should only |
|---|
| 1068 | use it at binding sites, unless you really know what you are |
|---|
| 1069 | doing |
|---|
| 1070 | |
|---|
| 1071 | - provided a function MkCore.mkWildCase that emodies the most |
|---|
| 1072 | common use of mkWildId, and use that elsewhere |
|---|
| 1073 | |
|---|
| 1074 | So things are much better |
|---|
| 1075 | |
|---|
| 1076 | * A knock-on change is that I found a common pattern of localising |
|---|
| 1077 | a potentially global Id, and made a function for it: Id.localiseId |
|---|
| 1078 | |
|---|
| 1079 | ] |
|---|
| 1080 | [Gix the ghcii script |
|---|
| 1081 | Ian Lynagh <igloo@earth.li>**20080919174651 |
|---|
| 1082 | The ghc executable name doesn't have a version number on Windows, so |
|---|
| 1083 | don't put one in the script. |
|---|
| 1084 | ] |
|---|
| 1085 | [Create runhaskell as well as runghc |
|---|
| 1086 | Ian Lynagh <igloo@earth.li>**20080919153010] |
|---|
| 1087 | [On Linux use libffi for allocating executable memory (fixed #738) |
|---|
| 1088 | Simon Marlow <marlowsd@gmail.com>**20080919134602] |
|---|
| 1089 | [Move the context_switch flag into the Capability |
|---|
| 1090 | Simon Marlow <marlowsd@gmail.com>**20080919102601 |
|---|
| 1091 | Fixes a long-standing bug that could in some cases cause sub-optimal |
|---|
| 1092 | scheduling behaviour. |
|---|
| 1093 | ] |
|---|
| 1094 | [Fix building the extralibs tarball |
|---|
| 1095 | Ian Lynagh <igloo@earth.li>**20080919133555 |
|---|
| 1096 | We now need to dig the appropriate lines out of packages, rather than |
|---|
| 1097 | just catting libraries/extra-packages, in order to find out what the |
|---|
| 1098 | extralibs are. |
|---|
| 1099 | ] |
|---|
| 1100 | [Install libffi when installing frmo a bindist |
|---|
| 1101 | Ian Lynagh <igloo@earth.li>**20080919130332] |
|---|
| 1102 | [Fix how we put libffi into bindists |
|---|
| 1103 | Ian Lynagh <igloo@earth.li>**20080919125528] |
|---|
| 1104 | [TAG 6.10 branch has been forked |
|---|
| 1105 | Ian Lynagh <igloo@earth.li>**20080919123437] |
|---|
| 1106 | [Don't require Parser.y in a source dist |
|---|
| 1107 | Ian Lynagh <igloo@earth.li>**20080919115831] |
|---|
| 1108 | [Add HpcParser.hs to source dists |
|---|
| 1109 | Ian Lynagh <igloo@earth.li>**20080919115816] |
|---|
| 1110 | [Fix the list of generated files that need to go into the source dists |
|---|
| 1111 | Ian Lynagh <igloo@earth.li>**20080919112522] |
|---|
| 1112 | [Improve documentation of overlapping instances |
|---|
| 1113 | simonpj@microsoft.com**20080919093147] |
|---|
| 1114 | [Put generated files in source dists |
|---|
| 1115 | Ian Lynagh <igloo@earth.li>**20080918194424 |
|---|
| 1116 | We don't want to require that users building source dists have alex/happy |
|---|
| 1117 | ] |
|---|
| 1118 | [Add libraries/syb to .darcs-boring |
|---|
| 1119 | Ian Lynagh <igloo@earth.li>**20080918190116] |
|---|
| 1120 | [Fix a couple of issues with :print |
|---|
| 1121 | pepe**20080918122133 |
|---|
| 1122 | |
|---|
| 1123 | - Ticket #1995: Unsoundness with newtypes |
|---|
| 1124 | - Ticket #2475: "Can't unify" error when stopped at an exception |
|---|
| 1125 | |
|---|
| 1126 | In addition this patch adds the following: |
|---|
| 1127 | |
|---|
| 1128 | - Unfailingness: RTTI cannot panic anymore. |
|---|
| 1129 | In case of failure, it recovers gracefully by returning the "I know nothing" type |
|---|
| 1130 | - A -ddump-rtti flag |
|---|
| 1131 | |
|---|
| 1132 | ] |
|---|
| 1133 | [wibble |
|---|
| 1134 | pepe <mnislaih@gmail.com>**20080418172303] |
|---|
| 1135 | [RichTokenStream support |
|---|
| 1136 | Chaddai Fouche <chaddai.fouche@gmail.com>**20080918165256 |
|---|
| 1137 | |
|---|
| 1138 | This patch adds support for raw token streams, that contain more |
|---|
| 1139 | information than normal token streams (they contains comments at |
|---|
| 1140 | least). The "lexTokenStream" function brings this support to the |
|---|
| 1141 | Lexer module. In addition to that, functions have been added to |
|---|
| 1142 | the GHC module to make easier to recover of the token stream of |
|---|
| 1143 | a module ("getTokenStream"). |
|---|
| 1144 | |
|---|
| 1145 | Building on that, I added what could be called "rich token |
|---|
| 1146 | stream": token stream to which have been added the source string |
|---|
| 1147 | corresponding to each token, the function addSourceToToken takes |
|---|
| 1148 | a StringBuffer and a starting SrcLoc and a token stream and build |
|---|
| 1149 | this rich token stream. getRichTokenStream is a convenience |
|---|
| 1150 | function to get a module rich token stream. "showRichTokenStream" |
|---|
| 1151 | use the SrcLoc information in such a token stream to get a string |
|---|
| 1152 | similar to the original source (except unsignificant |
|---|
| 1153 | whitespaces). Thus "putStrLn . showRichTokenStream =<< |
|---|
| 1154 | getRichTokenStream s mod" should print a valid module source, the |
|---|
| 1155 | interesting part being to modify the token stream between the get |
|---|
| 1156 | and the show of course. |
|---|
| 1157 | ] |
|---|
| 1158 | [When passing gcc -B, also tell it where the mingw include directory is |
|---|
| 1159 | Ian Lynagh <igloo@earth.li>**20080918143312] |
|---|
| 1160 | [Don't put the mingw directory in RTS's package.conf |
|---|
| 1161 | Ian Lynagh <igloo@earth.li>**20080918143118] |
|---|
| 1162 | [Be more forceful when cleaning in compiler/ and ghc/ |
|---|
| 1163 | Ian Lynagh <igloo@earth.li>**20080918134443 |
|---|
| 1164 | Now that the Cabal file is generated by configure, it would be nice |
|---|
| 1165 | if clean worked even if the cabal file is missing. So now we just rm -rf |
|---|
| 1166 | the dist directory. |
|---|
| 1167 | ] |
|---|
| 1168 | [Generate ghc.cabal and ghc-bin.cabal with configure |
|---|
| 1169 | Ian Lynagh <igloo@earth.li>**20080918133636 |
|---|
| 1170 | This allows us to put the proper version number into them |
|---|
| 1171 | ] |
|---|
| 1172 | [Make the ghci scripts point to the versioned GHC program, not just "ghc" |
|---|
| 1173 | Ian Lynagh <igloo@earth.li>**20080918122516] |
|---|
| 1174 | [Fix Trac #1470: improve handling of recursive instances (needed for SYB3) |
|---|
| 1175 | simonpj@microsoft.com**20080918161719 |
|---|
| 1176 | |
|---|
| 1177 | This bug has been hanging around for a long time, as you'll see by its |
|---|
| 1178 | number. The fix implements a feature that is really needed by SYB3, to |
|---|
| 1179 | allow an instance to (rather indirectly) refer to itself. The trickiness |
|---|
| 1180 | comes when solving the superclass constraints. |
|---|
| 1181 | |
|---|
| 1182 | The whoel issue is explained in Note [Recursive instances and superclases] |
|---|
| 1183 | in TcSimplify. |
|---|
| 1184 | |
|---|
| 1185 | In cracking this one I found I could remove the WantSCs argument to the |
|---|
| 1186 | ReduceMe flag, which is a worthwhile simplification. Good! |
|---|
| 1187 | |
|---|
| 1188 | ] |
|---|
| 1189 | [Comments only |
|---|
| 1190 | simonpj@microsoft.com**20080918155602] |
|---|
| 1191 | [Replace ASSERT with WARN, and explain why |
|---|
| 1192 | simonpj@microsoft.com**20080918155245 |
|---|
| 1193 | |
|---|
| 1194 | The DPH library tripped an ASSERT. The code is actually OK, but it's |
|---|
| 1195 | badly-optimised so I changed it to WARN. The issue here is explained |
|---|
| 1196 | in ClosureInfo, Note [Unsafe coerce complications]. |
|---|
| 1197 | |
|---|
| 1198 | ] |
|---|
| 1199 | [Add a missing "prime" (env' --> env'') thereby fixing a tripping WARN. Hurrah! |
|---|
| 1200 | simonpj@microsoft.com**20080918155144] |
|---|
| 1201 | [Fix nasty infelicity: do not short-cut empty substitution in the simplifier |
|---|
| 1202 | simonpj@microsoft.com**20080917162910 |
|---|
| 1203 | |
|---|
| 1204 | I was perplexed about why an arity-related WARN was tripping. It took |
|---|
| 1205 | me _day_ (sigh) to find that it was because SimplEnv.substExpr was taking |
|---|
| 1206 | a short cut when the substitution was empty, thereby not subsituting for |
|---|
| 1207 | Ids in scope, which must be done (CoreSubst Note [Extending the Subst]). |
|---|
| 1208 | |
|---|
| 1209 | The fix is a matter of deleting the "optimisation". Same with |
|---|
| 1210 | CoreSubst.substSpec, although I don't know if that actually caused a |
|---|
| 1211 | probem. |
|---|
| 1212 | |
|---|
| 1213 | ] |
|---|
| 1214 | [Avoid arity reduction when doing eta-reduce |
|---|
| 1215 | simonpj@microsoft.com**20080917162704 |
|---|
| 1216 | |
|---|
| 1217 | We like things with high arity, so when doing eta reduction |
|---|
| 1218 | it's probably a good idea to avoid reducing arity. |
|---|
| 1219 | |
|---|
| 1220 | ] |
|---|
| 1221 | [Add extra WARN test |
|---|
| 1222 | simonpj@microsoft.com**20080917162434 |
|---|
| 1223 | |
|---|
| 1224 | This warning tests that the arity of a function does not decrease. |
|---|
| 1225 | And that it's at least as great as the strictness signature. |
|---|
| 1226 | |
|---|
| 1227 | Failing this test isn't a disater, but it's distinctly odd and |
|---|
| 1228 | usually indicates that not enough information is getting propagated |
|---|
| 1229 | around, and hence you may get more simplifier iterations. |
|---|
| 1230 | |
|---|
| 1231 | ] |
|---|
| 1232 | [Comments only |
|---|
| 1233 | simonpj@microsoft.com**20080917162350] |
|---|
| 1234 | [Re-adjust interaction between -ddump flags and force-recompilation |
|---|
| 1235 | simonpj@microsoft.com**20080917161920 |
|---|
| 1236 | |
|---|
| 1237 | If you say -ddump-xx we effectively add -fforce-recomp, so that you |
|---|
| 1238 | see your dump output. But this works badly in --make mode, because |
|---|
| 1239 | you get the ddump output for every module, which is probably not what |
|---|
| 1240 | you want. This patch forces recompilation with -ddump-X only in one-shot |
|---|
| 1241 | mode. |
|---|
| 1242 | |
|---|
| 1243 | Of course, this only affects people using -ddump options. |
|---|
| 1244 | |
|---|
| 1245 | ] |
|---|
| 1246 | [Add Outputable GhcMode instance |
|---|
| 1247 | simonpj@microsoft.com**20080917161847] |
|---|
| 1248 | [Improve error reporting for 'deriving' (Trac #2604) |
|---|
| 1249 | simonpj@microsoft.com**20080917135104] |
|---|
| 1250 | [Add link to GADT paper re rigid types |
|---|
| 1251 | simonpj@microsoft.com**20080916094521] |
|---|
| 1252 | [Fix MacOS X build: don't believe __GNUC_GNU_INLINE__ on MacOS X |
|---|
| 1253 | Simon Marlow <marlowsd@gmail.com>**20080918112856] |
|---|
| 1254 | [require Alex version 2.1.0 |
|---|
| 1255 | Simon Marlow <marlowsd@gmail.com>**20080918112812 |
|---|
| 1256 | Having 2.0.1 causes some unicode tests to fail |
|---|
| 1257 | ] |
|---|
| 1258 | [Type families: fixes in the new solver |
|---|
| 1259 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080918100934] |
|---|
| 1260 | [ext-core library: Parser fixes; make it build with the HEAD |
|---|
| 1261 | Tim Chevalier <chevalier@alum.wellesley.edu>**20080918090349 |
|---|
| 1262 | |
|---|
| 1263 | In the ext-core parser I guess I never tested: |
|---|
| 1264 | * existential type variable bindings in case alts |
|---|
| 1265 | * empty data declarations |
|---|
| 1266 | |
|---|
| 1267 | That'll learn me! |
|---|
| 1268 | ] |
|---|
| 1269 | [Wibble ghc-pkg imports to fix building on Windows |
|---|
| 1270 | Ian Lynagh <igloo@earth.li>**20080917210813] |
|---|
| 1271 | [ghc-pkg needs to make package.conf with sensible permissions |
|---|
| 1272 | Ian Lynagh <igloo@earth.li>**20080917192155 |
|---|
| 1273 | It was calling openTempFile which uses a 600 permissions mask. |
|---|
| 1274 | ] |
|---|
| 1275 | [Change 'loadWithCompiler' callback argument to just print warnings. |
|---|
| 1276 | Thomas Schilling <nominolo@googlemail.com>**20080917102925 |
|---|
| 1277 | Rename function accordingly. |
|---|
| 1278 | |
|---|
| 1279 | The callback wasn't very flexible to begin with. There's pretty much |
|---|
| 1280 | no way around to calling 'compile' inside that callback since |
|---|
| 1281 | 'upsweep' depends on certain side effects of compile. It therefore |
|---|
| 1282 | makes more sense to restrict the callback to its intended use only, |
|---|
| 1283 | namely to log warnings and errors. |
|---|
| 1284 | ] |
|---|
| 1285 | [Fix: GhcStage2HcOpts were being added to stage 3 too |
|---|
| 1286 | Simon Marlow <marlowsd@gmail.com>**20080917085917] |
|---|
| 1287 | [Type families: unify with family apps in checking mode |
|---|
| 1288 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080917062548] |
|---|
| 1289 | [Type families: bug fixes |
|---|
| 1290 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080916151254] |
|---|
| 1291 | [Keep sysnonyms folded in equalities if possible |
|---|
| 1292 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080916075700] |
|---|
| 1293 | [Type families: apply flattening coercions in the right order |
|---|
| 1294 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080916055136] |
|---|
| 1295 | [TcTyFuns: tidy warning |
|---|
| 1296 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080915031423] |
|---|
| 1297 | [Signature for Inst.isValidWantedEqInst |
|---|
| 1298 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080915030118] |
|---|
| 1299 | [Remember if RewriteInst is swapped & bug fixes |
|---|
| 1300 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080914163639] |
|---|
| 1301 | [Type families: fixed all non-termination in the testsuite |
|---|
| 1302 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080914120638] |
|---|
| 1303 | [Type families: completed the new equality solver |
|---|
| 1304 | Manuel M T Chakravarty <chak@cse.unsw.edu.au>**20080913133631 |
|---|
| 1305 | - Implements normalisation of class constraints containing synonym family |
|---|
| 1306 | applications or skolems refined by local equalities. |
|---|
| 1307 | - Clean up of TcSimplify.reduceContext by using the new equality solver. |
|---|
| 1308 | - Removed all the now unused code of the old algorithm. |
|---|
| 1309 | - This completes the implementation of the new algorithm, but it is largely |
|---|
| 1310 | untested => many regressions. |
|---|
| 1311 | ] |
|---|
| 1312 | [Use the new -optdep flag replacements when building with >= GHC 6.9 |
|---|
| 1313 | Ian Lynagh <igloo@earth.li>**20080916220057 |
|---|
| 1314 | Fix building the HEAD with itself |
|---|
| 1315 | ] |
|---|
| 1316 | [Use "exec" when running ghc in the wrapper |
|---|
| 1317 | Ian Lynagh <igloo@earth.li>**20080915100217] |
|---|
| 1318 | [Add "#!/bin/sh" to runghc.wrapper |
|---|
| 1319 | Ian Lynagh <igloo@earth.li>**20080914153507] |
|---|
| 1320 | [Add a "#!/bin/sh" to ghc.wrapper |
|---|
| 1321 | Ian Lynagh <igloo@earth.li>**20080914153344] |
|---|
| 1322 | [Fixing directory creation to not create "" directories inside hpc report (harmless but needless) |
|---|
| 1323 | andygill@ku.edu**20080916172313] |
|---|
| 1324 | [Fix Trac #2052 Allowing hpc to understand hsc files. |
|---|
| 1325 | andygill@ku.edu**20080916030521] |
|---|
| 1326 | [Fix Trac #2311: creates subdirs for package coverage information |
|---|
| 1327 | andygill@ku.edu**20080915204322] |
|---|
| 1328 | [FIX #2469: sort out our static/extern inline story |
|---|
| 1329 | Simon Marlow <marlowsd@gmail.com>**20080916132222 |
|---|
| 1330 | gcc has changed the meaning of "extern inline" when certain flags are |
|---|
| 1331 | on (e.g. --std=gnu99), and this broke our use of it in the header |
|---|
| 1332 | files. |
|---|
| 1333 | ] |
|---|
| 1334 | [Fix a warning |
|---|
| 1335 | Simon Marlow <marlowsd@gmail.com>**20080916130922] |
|---|
| 1336 | [Make the matching of the filename ghc.exe case insensitive, fixes bug #2603 |
|---|
| 1337 | Neil Mitchell <ndmitchell@gmail.com>**20080916160311] |
|---|
| 1338 | [Stop using mremap() to allocate space for trampolines |
|---|
| 1339 | Simon Marlow <marlowsd@gmail.com>**20080915145924 |
|---|
| 1340 | |
|---|
| 1341 | This was causing problems because sometimes mremap() moved the memory |
|---|
| 1342 | we had allocated from the low 2Gb to above the 2Gb boundary, causing |
|---|
| 1343 | some linkages to fail. There's no MAP_32BIT flag to mremap(). |
|---|
| 1344 | |
|---|
| 1345 | So now we just use mmap(MAP_ANON|MAP_32BIT) to allocated space for the |
|---|
| 1346 | trampolines. People without MAP_32BIT (eg. *BSD) will still have to |
|---|
| 1347 | do something else here, such as allocating memory from a fixed |
|---|
| 1348 | address; so I've made it slightly easier for those guys, but there's |
|---|
| 1349 | still work to do (#2063). |
|---|
| 1350 | |
|---|
| 1351 | One solution (that Simon PJ is advocating) is to turn on -fPIC by |
|---|
| 1352 | default on x86-64. This is a good solution as it removes the need for |
|---|
| 1353 | MAP_32BIT, but doesn't work with -fvia-C, so probably this is for |
|---|
| 1354 | later. |
|---|
| 1355 | ] |
|---|
| 1356 | [add $(GhcStage[123]HcOpts) |
|---|
| 1357 | Simon Marlow <marlowsd@gmail.com>**20080912155549] |
|---|
| 1358 | [Improve handling of -fdph-* flags |
|---|
| 1359 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20080916034746] |
|---|
| 1360 | [Add -fdph-this |
|---|
| 1361 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20080916033710] |
|---|
| 1362 | [Remove last traces of package ndp |
|---|
| 1363 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20080916033428] |
|---|
| 1364 | [Clean up vectorisation error messages |
|---|
| 1365 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20080916013236] |
|---|
| 1366 | [Fix vectoriser bug |
|---|
| 1367 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20080915042823 |
|---|
| 1368 | |
|---|
| 1369 | We were using mkWildId in situations where it cause disastrous shadowing |
|---|
| 1370 | ] |
|---|
| 1371 | [Track changes to dph |
|---|
| 1372 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20080912114028] |
|---|
| 1373 | [Change desugaring of PArr literals |
|---|
| 1374 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20080912015609] |
|---|
| 1375 | [Expose the dph packages automatically if -dph-* is set |
|---|
| 1376 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20080912004403] |
|---|
| 1377 | [Don't panic on non-vectorisable expressions |
|---|
| 1378 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20080911054333] |
|---|
| 1379 | [-Odph implies -fno-spec-constr-count |
|---|
| 1380 | Roman Leshchinskiy <rl@cse.unsw.edu.au>**20080910045339] |
|---|
| 1381 | [Improve warning for SpecConstr |
|---|
| 1382 | simonpj@microsoft.com**20080915154908] |
|---|
| 1383 | [White space only |
|---|
| 1384 | simonpj@microsoft.com**20080915154841] |
|---|
| 1385 | [Minor refactoring to get rid of Type.splitNewTyConApp |
|---|
| 1386 | simonpj@microsoft.com**20080915072946] |
|---|
| 1387 | [Refactor the desugaring of RULE lhss a bit |
|---|
| 1388 | simonpj@microsoft.com**20080915150601 |
|---|
| 1389 | |
|---|
| 1390 | This is just a tidy-up. Previously we were calling occurAnalyse |
|---|
| 1391 | twice on each LHS which was silly and a bit unclean too. |
|---|
| 1392 | |
|---|
| 1393 | This patch should have no overall effect, though. |
|---|
| 1394 | |
|---|
| 1395 | ] |
|---|
| 1396 | [Do not use the Static Arg Transformation by default with -O2 |
|---|
| 1397 | simonpj@microsoft.com**20080915150433 |
|---|
| 1398 | |
|---|
| 1399 | Max has some more heuristics to add, and is meanwhile worried |
|---|
| 1400 | that having SAT on by default will make some highly-tuned array |
|---|
| 1401 | programs worse. So it's off by default. |
|---|
| 1402 | |
|---|
| 1403 | Use -fstatic-argument-transformation to switch it on. |
|---|
| 1404 | |
|---|
| 1405 | ] |
|---|
| 1406 | [Comments, and a couple of asserts, only |
|---|
| 1407 | simonpj@microsoft.com**20080914114641] |
|---|
| 1408 | [Fix Trac #2587: take account of type lets |
|---|
| 1409 | simonpj@microsoft.com**20080914113434 |
|---|
| 1410 | |
|---|
| 1411 | GHC allows a non-recursive let for type varaibles |
|---|
| 1412 | let a = TYPE ty in ... |
|---|
| 1413 | But the free-variable finder had not caught up with this |
|---|
| 1414 | fact. This patch catches up. |
|---|
| 1415 | |
|---|
| 1416 | ] |
|---|
| 1417 | [Don't try to float type-lets |
|---|
| 1418 | simonpj@microsoft.com**20080914113324 |
|---|
| 1419 | |
|---|
| 1420 | A type let shouldn't really occur in SetLevels, but if it does, |
|---|
| 1421 | this patch makes sure it is left alone. |
|---|
| 1422 | |
|---|
| 1423 | ] |
|---|
| 1424 | [add refs and fix a bug (noted by Peter Gammie) in docs of arrow notation |
|---|
| 1425 | Ross Paterson <ross@soi.city.ac.uk>**20080915104757] |
|---|
| 1426 | [Generalise type of 'withExtendedLinkEnv'. |
|---|
| 1427 | Thomas Schilling <nominolo@googlemail.com>**20080915085738] |
|---|
| 1428 | [Use 'GhcMonad' in ghci/InteractiveUI. |
|---|
| 1429 | Thomas Schilling <nominolo@googlemail.com>**20080915085633] |
|---|
| 1430 | [Use 'GhcMonad' in ghci/GhciTags. |
|---|
| 1431 | Thomas Schilling <nominolo@googlemail.com>**20080915084922] |
|---|
| 1432 | [Use 'GhcMonad' in ghci/Debugger. |
|---|
| 1433 | Thomas Schilling <nominolo@googlemail.com>**20080915084738] |
|---|
| 1434 | [Use 'GhcMonad' in ghci/GhciMonad. |
|---|
| 1435 | Thomas Schilling <nominolo@googlemail.com>**20080915084646] |
|---|
| 1436 | [Use 'GhcMonad' in ghc/Main. |
|---|
| 1437 | Thomas Schilling <nominolo@googlemail.com>**20080914232957] |
|---|
| 1438 | [Require PatternSignatures for bootstrapping compiler. |
|---|
| 1439 | Thomas Schilling <nominolo@googlemail.com>**20080914232642] |
|---|
| 1440 | [Use 'GhcMonad' in InteractiveEval. |
|---|
| 1441 | Thomas Schilling <nominolo@googlemail.com>**20080914232454] |
|---|
| 1442 | [Use 'GhcMonad' in GHC and split up checkModule into phases. |
|---|
| 1443 | Thomas Schilling <nominolo@googlemail.com>**20080914232044 |
|---|
| 1444 | |
|---|
| 1445 | I'm not sure I covered all the ways of throwing errors in the code. |
|---|
| 1446 | Some functions throw ProgramErrors, some error messages. It's still |
|---|
| 1447 | quite a mess, but we're getting closer. The missing cases are mostly |
|---|
| 1448 | errors that cannot be fixed by the API client either or are a result |
|---|
| 1449 | of wrong usage, so are in any case fatal. |
|---|
| 1450 | |
|---|
| 1451 | One function, 'getModuleInfo', still returns a 'Maybe', but the |
|---|
| 1452 | documentation suggests it should always succeed. So I may change that |
|---|
| 1453 | soon. |
|---|
| 1454 | |
|---|
| 1455 | The spit-up of of 'checkModule' has pros and cons. The various forms |
|---|
| 1456 | of 'checkModule*' now become: |
|---|
| 1457 | |
|---|
| 1458 | checkAndLoadModule ms False ~~> |
|---|
| 1459 | loadModule =<< typecheckModule =<< parseModule (ms_mod_name ms) |
|---|
| 1460 | |
|---|
| 1461 | checkAndLoadModule ms True ~~> |
|---|
| 1462 | loadModule =<< desugarModule =<< typecheckModule =<< parseModule (ms_mod_name ms) |
|---|
| 1463 | |
|---|
| 1464 | checkModule mn False ~~> |
|---|
| 1465 | typecheckModule =<< parseModule mn |
|---|
| 1466 | |
|---|
| 1467 | checkModule mn True ~~> |
|---|
| 1468 | desugarModule =<< typecheckModule =<< parseModule mn |
|---|
| 1469 | |
|---|
| 1470 | The old APIs cannot easily be provided, since the result type would be |
|---|
| 1471 | different depending on the second argument. However, a more |
|---|
| 1472 | convenient API can be modelled on top of these four functions |
|---|
| 1473 | ({parse,typecheck,desugar,load}Module). |
|---|
| 1474 | ] |
|---|
| 1475 | [Use 'GhcMonad' in DriverPipeline. Also haddockify a bit while we're at it. |
|---|
| 1476 | Thomas Schilling <nominolo@googlemail.com>**20080914220628] |
|---|
| 1477 | [Use 'GhcMonad' in HscMain. |
|---|
| 1478 | Thomas Schilling <nominolo@googlemail.com>**20080914213655] |
|---|
| 1479 | [Use 'GhcMonad' in DriverMkDepend. |
|---|
| 1480 | Thomas Schilling <nominolo@googlemail.com>**20080914212113] |
|---|
| 1481 | [Haddockify DynFlags (partial). |
|---|
| 1482 | Thomas Schilling <nominolo@googlemail.com>**20080914211718] |
|---|
| 1483 | [Haddockify 'IE'. |
|---|
| 1484 | Thomas Schilling <nominolo@googlemail.com>**20080914210016] |
|---|
| 1485 | [Provide accessors for 'ImportDecl'. |
|---|
| 1486 | Thomas Schilling <nominolo@googlemail.com>**20080914205811] |
|---|
| 1487 | [Start haddockifying 'HsBindLR'. |
|---|
| 1488 | Thomas Schilling <nominolo@googlemail.com>**20080914205629] |
|---|
| 1489 | [Document 'parseStaticFlags'. |
|---|
| 1490 | Thomas Schilling <nominolo@googlemail.com>**20080914205316] |
|---|
| 1491 | [Introduce 'GhcMonad' class and two default implementations 'Ghc' and 'GhcT'. |
|---|
| 1492 | Thomas Schilling <nominolo@googlemail.com>**20080914204930 |
|---|
| 1493 | |
|---|
| 1494 | This monad will be required by most public API calls. |
|---|
| 1495 | ] |
|---|
| 1496 | [Give the "Failing due to -Werror" message a name. |
|---|
| 1497 | Thomas Schilling <nominolo@googlemail.com>**20080914173904] |
|---|
| 1498 | [Make typechecker top-level functions also return messages instead of |
|---|
| 1499 | Thomas Schilling <nominolo@googlemail.com>**20080914173228 |
|---|
| 1500 | printing them. |
|---|
| 1501 | ] |
|---|
| 1502 | [Reflect changes of desugarer error reporting in VectMonad. |
|---|
| 1503 | Thomas Schilling <nominolo@googlemail.com>**20080914172711] |
|---|
| 1504 | [Generalise 'handleGhcException' to work with any 'ExceptionMonad'. |
|---|
| 1505 | Thomas Schilling <nominolo@googlemail.com>**20080914172404] |
|---|
| 1506 | [Introduce an 'ExceptionMonad' class. |
|---|
| 1507 | Thomas Schilling <nominolo@googlemail.com>**20080914172154 |
|---|
| 1508 | |
|---|
| 1509 | This monad provides variants of 'catch', 'bracket', and 'finally', so |
|---|
| 1510 | exceptions can be handled in monads that wrap IO. The latter two |
|---|
| 1511 | methods need to be part of the class definition, because GHC uses |
|---|
| 1512 | 'block' and 'unblock' which are used in the definition of those two |
|---|
| 1513 | methods for the IO monad. A perhaps better class interface would |
|---|
| 1514 | consist of 'gcatch', 'gblock', and 'gunblock' and let the latter two |
|---|
| 1515 | default to 'id' like is done for non-GHC implementations of 'bracket' |
|---|
| 1516 | and 'finally'. |
|---|
| 1517 | ] |
|---|
| 1518 | [Provide default MonadIO instance for IO. |
|---|
| 1519 | Thomas Schilling <nominolo@googlemail.com>**20080914164245] |
|---|
| 1520 | [Return instead of print warnings and errors in desugarer. |
|---|
| 1521 | Thomas Schilling <nominolo@googlemail.com>**20080914163641] |
|---|
| 1522 | [Return parser errors and warnings instead of dying. |
|---|
| 1523 | Thomas Schilling <nominolo@googlemail.com>**20080914162644] |
|---|
| 1524 | [Add aliases for bags of warnings and errors. |
|---|
| 1525 | Thomas Schilling <nominolo@googlemail.com>**20080914160337] |
|---|
| 1526 | [Slightly more helpful panic message in DynFlags |
|---|
| 1527 | Tim Chevalier <chevalier@alum.wellesley.edu>**20080915080650] |
|---|
| 1528 | [Comments only: ".core" => ".hcr" |
|---|
| 1529 | Tim Chevalier <chevalier@alum.wellesley.edu>**20080914203645] |
|---|
| 1530 | [We need to tell ghc-pkg to --force if we've only built a profiling library |
|---|
| 1531 | Ian Lynagh <igloo@earth.li>**20080913153142] |
|---|
| 1532 | [If we're profiling GHC, don't bother building the GHC package the vanilla way |
|---|
| 1533 | Ian Lynagh <igloo@earth.li>**20080913144820] |
|---|
| 1534 | [Remove the duplicate show rule in libraries/Makefile |
|---|
| 1535 | Ian Lynagh <igloo@earth.li>**20080913144413] |
|---|
| 1536 | [Move the "show" target from target.mk to boilerplate.mk |
|---|
| 1537 | Ian Lynagh <igloo@earth.li>**20080913141312 |
|---|
| 1538 | target.mk isn't included everywhere, but show is always handy |
|---|
| 1539 | ] |
|---|
| 1540 | [Change how we detect if we are using the bootstrapping compiler or not |
|---|
| 1541 | Ian Lynagh <igloo@earth.li>**20080913104658 |
|---|
| 1542 | I think looking for $(GHC_COMPILER_DIR_ABS) was failing on the Windows |
|---|
| 1543 | buildbot due to different path separators. Now we just look for |
|---|
| 1544 | "inplace". |
|---|
| 1545 | ] |
|---|
| 1546 | [wibble the distrib Makefile |
|---|
| 1547 | Ian Lynagh <igloo@earth.li>**20080912135932 |
|---|
| 1548 | We now need to install driver after ghc |
|---|
| 1549 | ] |
|---|
| 1550 | [Reinstate the driver/ghc directory, to create a versioned GHC program |
|---|
| 1551 | Ian Lynagh <igloo@earth.li>**20080912113619 |
|---|
| 1552 | e.g. $(bindir)/ghc-6.9.20080911 |
|---|
| 1553 | ] |
|---|
| 1554 | [If USE_NEW_MKDEPEND_FLAGS is YES then don't use the deprecated -optdep flags |
|---|
| 1555 | Ian Lynagh <igloo@earth.li>**20080912110316] |
|---|
| 1556 | [Use --force-local when calling tar in bindisttest/ |
|---|
| 1557 | Ian Lynagh <igloo@earth.li>**20080912012855 |
|---|
| 1558 | Otherwise it thinks that c:/foo is a remote file |
|---|
| 1559 | ] |
|---|
| 1560 | [Fix #2586, bug in THUNK_SELECTORs (again) |
|---|
| 1561 | Simon Marlow <marlowsd@gmail.com>**20080912130404 |
|---|
| 1562 | This time, we had forgetten the write barrier in one place. |
|---|
| 1563 | ] |
|---|
| 1564 | [TAG 2008-09-12 2 |
|---|
| 1565 | Ian Lynagh <igloo@earth.li>**20080912132848] |
|---|
| 1566 | Patch bundle hash: |
|---|
| 1567 | 3c3919626714dfd28b1cf2536f392c12317adba7 |
|---|