1. 27 May, 2001 2 commits
    • sof's avatar
      [project @ 2001-05-27 06:08:24 by sof] · 4e8b2b5b
      sof authored
      wibble
      4e8b2b5b
    • sof's avatar
      [project @ 2001-05-27 05:00:08 by sof] · 72efdb49
      sof authored
      'flex' or 'lex' is required to compile up fptools/ (e.g., reqd in
      glafp-utils/sgmlverb). autoconf's standard macro AC_PROG_LEX just
      defaults to 'lex' if 'flex' isn't found, but doesn't actually
      check whether 'lex' is available along PATH.
      
      Added AC_PROG_LEX_STRICT, which extends AC_PROG_LEX by checking
      for the presence of 'lex' if 'flex' isn't found. It bails
      out with an error message if 'lex' cannot be found.
      72efdb49
  2. 25 May, 2001 16 commits
  3. 24 May, 2001 7 commits
    • dsyme's avatar
      [project @ 2001-05-24 15:10:19 by dsyme] · 508aae27
      dsyme authored
      Various changes for ILX backend and type-passing compilers, code reviewed by SimonPJ
      508aae27
    • simonpj's avatar
      [project @ 2001-05-24 15:01:33 by simonpj] · e266b13a
      simonpj authored
      wibble
      e266b13a
    • simonpj's avatar
      [project @ 2001-05-24 13:59:09 by simonpj] · cbdeae8f
      simonpj authored
      ------------------------------------------------------
      	More stuff towards generalising 'foreign' declarations
      	------------------------------------------------------
      
      This is the second step towards generalising 'foreign' declarations to
      handle langauges other than C.  Now I can handle
      
        foreign import dotnet type T
        foreign import dotnet "void Foo.Baz.f( T )" f :: T -> IO ()
      
      
      
      			** WARNING **
      	I believe that all the foreign stuff for C should
      	work exactly as before, but I have not tested it
      	thoroughly.  Sven, Manuel, Marcin: please give it a
      	whirl and compare old with new output.
      
      
      Lots of fiddling around with data types.  The main changes are
      
      * HsDecls.lhs
      	The ForeignDecl type and its friends
      	Note also the ForeignType constructor to TyClDecl
      
      * ForeignCall.lhs
      	Here's where the stuff that survives right through
      	compilation lives
      
      * TcForeign.lhs DsForeign.lhs
      	Substantial changes driven by the new data types
      
      * Parser.y ParseIface.y RnSource
      	Just what you'd expect
      cbdeae8f
    • simonpj's avatar
      [project @ 2001-05-24 13:49:32 by simonpj] · f70aaa98
      simonpj authored
      Tiny delta towards .NET
      f70aaa98
    • simonmar's avatar
      [project @ 2001-05-24 10:46:08 by simonmar] · ebe6fa32
      simonmar authored
      Fixes for the hsc2hs rules.
      ebe6fa32
    • simonmar's avatar
      [project @ 2001-05-24 10:41:13 by simonmar] · 5cdecabd
      simonmar authored
      Make hGetContents work on DuplexHandles, and some small cleanups.
      5cdecabd
    • simonpj's avatar
      [project @ 2001-05-24 06:49:28 by simonpj] · 93c01cb9
      simonpj authored
      Import assertPanic to support the ASSERT
      93c01cb9
  4. 23 May, 2001 6 commits
  5. 22 May, 2001 9 commits
    • sof's avatar
      [project @ 2001-05-22 20:49:47 by sof] · 0303b0f1
      sof authored
      wibble
      0303b0f1
    • qrczak's avatar
      [project @ 2001-05-22 19:25:49 by qrczak] · 7a805529
      qrczak authored
      Remove module dependency loop: don't import PrelIOBase in PrelRead.
      readIO is in PrelIO, remove it from PrelRead. Derive instance Read
      BufferMode automatically.
      7a805529
    • sof's avatar
      [project @ 2001-05-22 19:07:39 by sof] · be077db3
      sof authored
      Added the -h (header) option; it prefixes the unlit'ed output with a pair
      of line pragmas, e.g.,
      
        foo$ unlit -h foo.lhs foo.lhs - | head -3
        # 1 "foo.lhs"
        {-# LINE 1 "foo.lhs" #-}
        module Foo where
        foo$
      
      Using -h saves the main user of 'unlit', GHC, from having to do the
      prepending of line pragmas via shellular magic. (=> GHC is able to
      drop the dependency on there being a UNIX-like shell underneath when
      using System.system).
      be077db3
    • qrczak's avatar
      [project @ 2001-05-22 16:45:41 by qrczak] · e6ba1800
      qrczak authored
      Fix small callconv-related import mismatches etc.
      e6ba1800
    • simonmar's avatar
      [project @ 2001-05-22 15:58:57 by simonmar] · cd543332
      simonmar authored
      front panel wibble.
      cd543332
    • simonmar's avatar
      [project @ 2001-05-22 15:06:47 by simonmar] · df75591b
      simonmar authored
      - System.exitWith now raises a (new) exception,
      	ExitException ExitCode.
      
      - While I was there I cleaned up System.getArgs and
        System.getProgName, using foriegn label and removing progargs.c
      df75591b
    • simonmar's avatar
      [project @ 2001-05-22 14:48:28 by simonmar] · 51724722
      simonmar authored
      Need to make ghc/utils in the second stage before we clean in
      ghc/lib/std, because hsc2hs is needed to boot ghc/lib/std, but the
      libraries are needed to build hsc2hs itself.
      
      *** MERGE ***
      51724722
    • rrt's avatar
      [project @ 2001-05-22 14:10:25 by rrt] · 23a67d06
      rrt authored
      Merge from 4.08 branch.
      23a67d06
    • simonpj's avatar
      [project @ 2001-05-22 13:43:14 by simonpj] · f16228e4
      simonpj authored
      -------------------------------------------
      	Towards generalising 'foreign' declarations
      	-------------------------------------------
      
      This is a first step towards generalising 'foreign' declarations to
      handle langauges other than C.  Quite a lot of files are touched,
      but nothing has really changed.  Everything should work exactly as
      before.
      
      	But please be on your guard for ccall-related bugs.
      
      Main things
      
      Basic data types: ForeignCall.lhs
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      * Remove absCSyn/CallConv.lhs
      
      * Add prelude/ForeignCall.lhs.  This defines the ForeignCall
        type and its variants
      
      * Define ForeignCall.Safety to say whether a call is unsafe
        or not (was just a boolean).  Lots of consequential chuffing.
      
      * Remove all CCall stuff from PrimOp, and put it in ForeignCall
      
      
      Take CCallOp out of the PrimOp type (where it was always a glitch)
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      * Add IdInfo.FCallId variant to the type IdInfo.GlobalIdDetails,
      	along with predicates Id.isFCallId, Id.isFCallId_maybe
      
      * Add StgSyn.StgOp, to sum PrimOp with FCallOp, because it
        *is* useful to sum them together in Stg and AbsC land.  If
        nothing else, it minimises changes.
      
      
      Also generally rename "CCall" stuff to "FCall" where it's generic
      to all foreign calls.
      f16228e4