We can certainly weaken the precondition and have the following precondition to
allow for empty arrays for which we have `upper + 1 = lower':
subcopy (other: ARRAY [like item]; start_pos, end_pos, index_pos: INTEGER)
-- Copy items of `other' within bounds `start_pos' and
`end_pos'
-- to current array starting at index `index_pos'.
require
other_not_void: other /= Void
valid_start_pos: start_pos >= other.lower
valid_end_pos: end_pos <= other.upper
valid_bounds: (start_pos <= end_pos) or (start_pos =
end_pos + 1)
valid_index_pos: index_pos >= other.lower
enough_space: (upper - index_pos) >= (end_pos - start_pos)
> P.S. Execution of the workbench code shows the violated precondition but
> if I execute the code in the debugger (which I did first) I get a
> strange catcall warning. If I activate execution recording and execute
> the code in the debugger ES dies with the message
> "GLib:ERROR:gmain.c:2095:g_main_dispatch: assertion failed: (source)"
Can you submit a problem report for that which reproduces this?
Thanks,
Manu
------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensing option that enables unlimited
royalty-free distribution of the report engine for externally facing
server and web deployment.
http://p.sf.net/sfu/businessobjects_______________________________________________
freeelks-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/freeelks-devel