Re: SCSH status and future
Daniel Hagerty <[email protected]> Mon, 20 Feb 2006 05:55:50 +0100 (MET)
| Newsgroups | gmane.lisp.scheme.scsh |
|---|---|
| Message-ID | <[email protected]> |
> I had already removed features to work around the lack of support of
> large files (64 bit C off_t type) in scsh. These features are now back
> in with the switch to guile.
Try the attached patch and test program. It works for me on a
system with 64 bit off_t. It's not terribly tested.
At a minimum, it should be validated on:
* Big endian machines
* Machines with 32 bit off_t (should work, but not tested).
and I don't know exactly what linux does for 32 bit machines
talking to large file support; I assume that's #define
LARGEFILE_SUPPORT or some such, and you get a 64 bit off_t.
I'm not testing this further, as I've had two computers die on me
in the last 4 hours, and I'm a little fed up with planet earth.
Caveats and known areas of improvement:
* There's some scheme code that should be checking for bounds errors
and isn't (marked XXX). This should be addressed.
* I figure out the size of off_t by calling out to C for every routine
that needs to know. That's strikes me as a little goofy, and should
probably be detected at autoconf time and smashed into configure.scm
or some such.
* I didn't do anything like an exaustive search for off_t users and
fix them all up; this should give you the basic idea of what to do.
Hopefully this gives you something to work with.
patch
(application/octet-stream, 9 KB) - not displayed
tst.scm
(application/octet-stream, 570 B) - not displayed