Bill Currie wrote:
On 27 Oct 97 at 8:50, Frank Heckenbach wrote:
I think I can do the RTS part, if you send me a patch for your changes, along with a short description about how you did it.
I'll have to sort though my mods to bring them up to date with the latest beta.
Fine! Don't hurry, I've got some other programming to do currently...
- After calling an I/O function, if {$I+} is turned on, the calling
program must check InOutRes. The code to be generated (perhaps you've already done so) would look like "if InOutRes<>0 then _p_ioerror;" where _p_ioerror will be a RTS function I can provide. (The check "if InOutRes<>0" could also be done in the function (like in BP!), but that's inefficient, because the function has to be called after each I/O operation then.)
Actually, that's almost exactly what my mods do. If IO checking is enabled ( {$I+} ), a proceedure taking no parameters is called that would check the InOutRes state (though I used a different name) and if it's set dumps a dirty message and aborts the program.
I might modify this procedure a bit to use the (current) standard way of handling runtime errors (_p_generic and such), but this shouldn't be a problem. However, if you could move the check into the program, this would gain some efficiency.
On 28 Oct 97 at 20:15, Frank Heckenbach wrote:
Fine! Don't hurry, I've got some other programming to do currently...
Same here (lfn driver for dos)
I might modify this procedure a bit to use the (current) standard way of handling runtime errors (_p_generic and such), but this shouldn't be a problem. However, if you could move the check into the program, this would gain some efficiency.
Shouldn't be too difficult. I'll just have to figure out which expression tree's I need (a call is easier to build, that's all).
Bill -- Leave others their otherness.