[BC] Block Closures, Version 2
John M McIntosh
johnmci at smalltalkconsulting.com
Tue Feb 19 20:45:52 UTC 2002
>Anthony,
>
>> Acting like a new user, I downloaded a fresh 3.2gamma-4743 image
>
> I did that and load it into official Windows VM 3.1A6
>
>> Then I downloaded and filed-in CGeneratorEnhancements-ajh.cs,
>BCIntepreter-ajh.cs
>
> Did that, and generated interp.c. Plug it into Windows 3.1A6
>source tree, edit sqPlatformSpecific.h
>
> #define squeakFileOffsetType long
>
>and sqVirtualMachine.h to accommodate
>
> #define squeakInt64 __int64
>
Phil I should point out that by defining squeakFileOffsetType to
32bits you restrict the file system logic to 32 bits. So in your note
earlier where you talk about
__int64 _lseeki64( int handle, __int64 offset, int origin );
__int64 _telli64( int handle );
and if you set squeakFileOffsetType to long then you restrict numbers
to a signed 32bit range. Also which wasn't clear was that you must
redefine
fseek
ftell
ie
#define ftell(f) _telli64(f)
for example.
Also from an code viewpoint you should review usage of
squeakFileOffsetType in the VM support code and their interface to
the plugin slang. Other places where this comes into play is
directory lookup prim, file size prim, and file truncate prim.
--
--
===========================================================================
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com
===========================================================================
More information about the Squeak-dev
mailing list
|