1. 20 Mar, 2002 3 commits
  2. 19 Mar, 2002 2 commits
    • simonpj's avatar
      [project @ 2002-03-19 11:37:38 by simonpj] · efaab402
      simonpj authored
      Unravel accidental module loop (sorry)
      efaab402
    • simonmar's avatar
      [project @ 2002-03-19 11:24:51 by simonmar] · 7d4b7f77
      simonmar authored
      Fix 64-bit shift operations.
      
      - Move the declarations of the 64-bit "primops" from PrimOps.h to
        HsBase.h where they more properly belong.
      
      - change the names of the 64-bit shift ops to include the "unchecked"
        prefix
      
      - add checked versions of these primops to GHC.Int and GHC.Word, and
        use them.
      
      - update the FFI declarations in GHC.Int and GHC.Word while I'm there.
      7d4b7f77
  3. 18 Mar, 2002 10 commits
  4. 15 Mar, 2002 2 commits
  5. 14 Mar, 2002 10 commits
    • simonmar's avatar
      [project @ 2002-03-14 17:10:14 by simonmar] · c228a724
      simonmar authored
      No need to compile Printf.lhs with -fvia-c now.
      c228a724
    • simonmar's avatar
      [project @ 2002-03-14 17:09:46 by simonmar] · 6f288c6f
      simonmar authored
      The foreign declaration for snprintf was wrong, because we need to
      give the type of the C function after applying C's type promotion
      rules.  Hence the Float argument should be a Double, because it
      occurs in the vararg section of the function type.
      6f288c6f
    • simonmar's avatar
      [project @ 2002-03-14 17:05:13 by simonmar] · ab73ca61
      simonmar authored
      Back out previous fix, it was wrong.
      ab73ca61
    • simonmar's avatar
      [project @ 2002-03-14 16:22:31 by simonmar] · 0e8e53db
      simonmar authored
      Misc cleanup: remove the iface pretty-printing style, and clean up
      bits of StringBuffer that aren't required any more.
      0e8e53db
    • simonmar's avatar
      [project @ 2002-03-14 15:52:13 by simonmar] · 8c845163
      simonmar authored
      undo accidental commits
      8c845163
    • simonpj's avatar
      [project @ 2002-03-14 15:49:36 by simonpj] · 71f50414
      simonpj authored
      Documentation about type system extensions
      71f50414
    • simonmar's avatar
      [project @ 2002-03-14 15:47:52 by simonmar] · b9312420
      simonmar authored
      Remove the interface file parser, and move .hi-boot parsing into the
      main parser.  The syntax of .hi-boot files is now greatly improved in
      terms of readability; here's an example:
      
      	module M where
      	data T
      	f :: T -> GHC.Base.Int
      
      note that
      	(a) layout can be used
      	(b) there's no explcit export list; everything declared
      	    is implicitly exported
      	(c) Z-encoding of names is no longer required
      	(d) Any identifier not declared in the current module must
      	    still be quailified with the module which originally
      	    defined it (eg. GHC.Base.Int above).
      
      We'd like to relax (d), but that will come later.
      b9312420
    • simonpj's avatar
      [project @ 2002-03-14 15:27:15 by simonpj] · 1553c778
      simonpj authored
      ------------------------
      	Change
      		GlobalName --> ExternalName
      		LocalName  ->  InternalName
      	------------------------
      
      For a long time there's been terminological confusion between
      
      	GlobalName vs LocalName	 (property of a Name)
      	GlobalId vs LocalId	 (property of an Id)
      
      I've now changed the terminology for Name to be
      
      	ExternalName vs InternalName
      
      I've also added quite a bit of documentation in the Commentary.
      1553c778
    • simonpj's avatar
      [project @ 2002-03-14 15:26:53 by simonpj] · 057e3f0d
      simonpj authored
      Lots of stuff about external and internal names
      057e3f0d
    • simonmar's avatar
      [project @ 2002-03-14 11:23:42 by simonmar] · 09f96da1
      simonmar authored
      Turn "return e" into "return $! e" in several places to improve
      performance.
      09f96da1
  6. 13 Mar, 2002 7 commits
  7. 12 Mar, 2002 6 commits
    • simonmar's avatar
      [project @ 2002-03-12 16:48:52 by simonmar] · c50d5acc
      simonmar authored
      Fix a bug in the native code generator's handling of floating-point
      arguments to ccalls: it wasn't correctly promoting float arguments to
      doubles.  Amazingly this has gone undetected for quite a while.
      
      Fixes bug #523996.
      c50d5acc
    • simonmar's avatar
      [project @ 2002-03-12 16:45:59 by simonmar] · d0bf18ef
      simonmar authored
      Forced commit: note that the previous revision also improved the error
      message for a compiler stack overflow slightly.
      d0bf18ef
    • simonmar's avatar
      [project @ 2002-03-12 16:40:57 by simonmar] · 2bc259ae
      simonmar authored
      eek!  Somehow, I managed to make -fvia-C the default on the HEAD and
      nobody noticed for two months.
      2bc259ae
    • simonpj's avatar
      [project @ 2002-03-12 15:55:26 by simonpj] · 72c2f581
      simonpj authored
      ------------------------
      	Fix a type-invariant bug
      	------------------------
      
      We need to call Type.mkGenTyConApp from Type.mkAppTy, in
      case there's a partially applied type synonym.  Explanation
      with Type.mkAppTy.  All part of GHC's rather liberal treatment
      of type synonyms.
      
      Shown up by a program from Ralf Laemmel:
      
      	type Generic i o = forall x. i x -> o x
      	type Id x = x
      	comb :: Generic Id Id
      
      Test is typecheck/should_compile/tc149.hs
      72c2f581
    • simonmar's avatar
      [project @ 2002-03-12 15:28:25 by simonmar] · a03714e2
      simonmar authored
      Add a magic number to the beginning of interface files (0x1face :-) to
      avoid trying to read old text-style interfaces as binary (the usual
      result is an attempt to allocate a ByteArray larger than the available
      memory size and an obscure crash).
      a03714e2
    • simonmar's avatar
      [project @ 2002-03-12 13:57:11 by simonmar] · 5eedab2c
      simonmar authored
      If we are in a deadlock situation but there are signal handlers
      installed, pause() instead of reporting deadlock.  One of the signal
      handlers may allow the process to continue after being triggered.
      
      Fixes bug #525772.
      
      I've made a half-hearted attempt to clean up the deadlock code in the
      scheduler, it now looks slightly better.
      5eedab2c