Bug#299568: hugs: CTime incompatibility with new version

2005-03-15 Thread Ross Paterson
 This code worked in the previous version of Hugs.  It seems that CTime
 is no longer Integral, but I don't know why.

This was a deliberate library change, affecting all Haskell
implementations.  See rev. 1.22 in

http://cvs.haskell.org/cgi-bin/cvsweb.cgi/fptools/libraries/base/Foreign/C/Types.hs


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#299568: hugs: CTime incompatibility with new version

2005-03-15 Thread John Goerzen
On Tue, Mar 15, 2005 at 10:25:42AM +, Ross Paterson wrote:
  This code worked in the previous version of Hugs.  It seems that CTime
  is no longer Integral, but I don't know why.
 
 This was a deliberate library change, affecting all Haskell
 implementations.  See rev. 1.22 in
 
 http://cvs.haskell.org/cgi-bin/cvsweb.cgi/fptools/libraries/base/Foreign/C/Types.hs

Couldn't it also be an Integral, using the round . realToFrac to
implement it?

 


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#299568: hugs: CTime incompatibility with new version

2005-03-15 Thread John Goerzen
On Tue, Mar 15, 2005 at 03:08:36PM +, Ross Paterson wrote:
  Couldn't it also be an Integral, using the round . realToFrac to
  implement it?
 
 That was Sven Panne, but ...
 
 You could use round . realToFrac to implement toInteger, but types in
 Integral are supposed to be, well, integral, and time_t need not be.

I understand, but that would probably help backwards compatibility a
good deal.

-- John



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#299568: hugs: CTime incompatibility with new version

2005-03-15 Thread Ross Paterson
On Tue, Mar 15, 2005 at 08:07:19AM -0600, John Goerzen wrote:
 On Tue, Mar 15, 2005 at 10:25:42AM +, Ross Paterson wrote:
   This code worked in the previous version of Hugs.  It seems that CTime
   is no longer Integral, but I don't know why.
  
  This was a deliberate library change, affecting all Haskell
  implementations.  See rev. 1.22 in
  
  http://cvs.haskell.org/cgi-bin/cvsweb.cgi/fptools/libraries/base/Foreign/C/Types.hs
 
 Couldn't it also be an Integral, using the round . realToFrac to
 implement it?

That was Sven Panne, but ...

You could use round . realToFrac to implement toInteger, but types in
Integral are supposed to be, well, integral, and time_t need not be.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#299568: hugs: CTime incompatibility with new version

2005-03-14 Thread John Goerzen
Package: hugs
Version: 98.200503.08-1
Severity: normal

I'm getting this error:

ERROR /home/jgoerzen/tree/projects/missingh/MissingH/IO/HVFS.hs:199 - 
Implementation of vGetModificationTime requires extra context
*** Expected type   : HVFS a = a - FilePath - IO ClockTime
*** Missing context : Integral CTime

That corresponds the third line of code in this snippet:

vGetModificationTime fs fp = 
do s - vGetFileStatus fs fp
   return $ TOD (fromIntegral (withStat s vModificationTime)) 0

The type of (withStat s vModificationTime) is EpochTime, which is
defined in System.Posix.Types as:

type EpochTime  = CTime

This code worked in the previous version of Hugs.  It seems that CTime
is no longer Integral, but I don't know why.


-- System Information:
Debian Release: 3.1
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.9
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Versions of packages hugs depends on:
ii  libc6   2.3.2.ds1-20 GNU C Library: Shared libraries an
ii  libncurses5 5.4-4Shared libraries for terminal hand
ii  libreadline44.3-15   GNU readline and history libraries

-- no debconf information


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]