[squeak-dev] VM 4.4 build nastinesses - part 1 of probably many

David T. Lewis lewis at mail.msen.com
Tue Feb 12 03:40:51 UTC 2013


On Mon, Feb 11, 2013 at 05:53:14PM -0800, tim Rowledge wrote:
> Can anyone (Bert?) provide the intended effect and limits of ioSetCursorARGB() ? This is a new one on me and the implementations I see in the SVN tree mean very little.
> 
> Can anyone explain why totally inappropriate and highly OS dependant code like push/popOutputFile() are in CROSS/sqVirtualMachine.c? The definition of stdin/out/err is not a safe one to assume everywhere. Not every OS trivially maps a FILE* to a number.
> 

I think it is from the oscog branch, and some better review of things like
this would be helpful. But we should take that discussion over to the vm-dev
list for follow up as required.

BTW those stdin/out/err file numbers are not safe to assume for unix either
because dup() can change them.

> It looks like the primitiveFunctionPointer global got changed fro mvoid* in 4.0 to void(*)() in 4.4. This is a good thing *if* the matching usages are correctly modified; which they aren't. For example in primitiveExecuteMethodArgsArray(). On my compiler that is a fatal error - as it should be. Is anyone currently fixing that or shall I? Possibly as a side effect primitiveFunctionPointer is no longer in the global struct, which may well adversely impact performance. 
> 

I'm not sure. It might be something that is detected by your compiler,
in which case you should probably go ahead and fix it. Please update the
minor version number in VMMaker class>>versionString for each such update.

Dave



More information about the Squeak-dev mailing list