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