1. 14 Aug, 2001 3 commits
    • sewardj's avatar
      [project @ 2001-08-14 13:40:07 by sewardj] · bc5c8021
      sewardj authored
      Change the story about POSIX headers in C compilation.
      
      Until now, all C code in the RTS and library cbits has by default been
      compiled with settings for POSIXness enabled, that is:
         #define _POSIX_SOURCE   1
         #define _POSIX_C_SOURCE 199309L
         #define _ISOC9X_SOURCE
      If you wanted to negate this, you'd have to define NON_POSIX_SOURCE
      before including headers.
      
      This scheme has some bad effects:
      
      * It means that ccall-unfoldings exported via interfaces from a
        module compiled with -DNON_POSIX_SOURCE may not compile when
        imported into a module which does not -DNON_POSIX_SOURCE.
      
      * It overlaps with the feature tests we do with autoconf.
      
      * It seems to have caused borkage in the Solaris builds for some
        considerable period of time.
      
      The New Way is:
      
      * The default changes to not-being-in-Posix mode.
      
      * If you want to force a C file into Posix mode, #include as
        the **first** include the new file ghc/includes/PosixSource.h.
        Most of the RTS C sources have this include now.
      
      * NON_POSIX_SOURCE is almost totally expunged.  Unfortunately
        we have to retain some vestiges of it in ghc/compiler so that
        modules compiled via C on Solaris using older compilers don't
        break.
      bc5c8021
    • simonmar's avatar
      [project @ 2001-08-14 11:41:19 by simonmar] · b19d9770
      simonmar authored
      Fix example code in the generics section.
      b19d9770
    • simonpj's avatar
      [project @ 2001-08-14 06:35:56 by simonpj] · 2767767f
      simonpj authored
      1. Arrange that w/w records unfoldings
         And that the simplifier preserves them
      
      2. Greatly improve structure of checking user types in the typechecker
         Main changes:
      	TcMType.checkValidType checks for a valid type
      	TcMonoType.tcHsSigType uses checkValidType
      	Type and class decls use TcMonoType.tcHsType (which does not
      		check for validity) inside the knot in TcTyClsDecls,
      		and then runs TcTyDecls.checkValidTyCon
      		or TcClassDcl.checkValidClass to check for validity
      		once the knot is tied
      2767767f
  2. 13 Aug, 2001 14 commits
  3. 12 Aug, 2001 1 commit
    • simonmar's avatar
      [project @ 2001-08-12 12:10:22 by simonmar] · 7ae38197
      simonmar authored
      Update the hc-build script to the recipe I'm using for the FreeBSD
      package build.  The main improvement is that after running this script
      the resulting tree should be ready for a 'make install' from the top
      level.  This is highly fragile and relies on touching various files to
      avoid having to recompile anything that will fail :-)
      
      The FreeBSD package that this derives from is well tested, but I
      haven't tested the script itself yet.
      7ae38197
  4. 10 Aug, 2001 13 commits
  5. 09 Aug, 2001 7 commits
  6. 08 Aug, 2001 2 commits