PR# 19896 Error within implementation of {ARRAYED_SET}.move_item
Problem Report Summary
Submitter: rosivaldo
Category: EiffelBase
Priority: Low
Date: 2023/07/23
Class: Bug
Severity: Serious
Number: 19896
Release: 22.12 (22.12.10.6463 - win64)
Confidential: No
Status: Closed
Responsible:
Environment: win64
Synopsis: Error within implementation of {ARRAYED_SET}.move_item
Description
{ARRAYED_SET}.move_item does not fulfill {ARRAYED_SET}.put_left precondition clause not_before: not before.
To Reproduce
- Extract files within st.7z (attached). - Open and compile st_bugs.ecf project, reproduce_arrayed_set_move_item_bug target. - Run the system (F5). - Eventually the exception below will raise. not_before: PRECONDITION_VIOLATION raised (PRECONDITION_VIOLATION) ******************************** Thread exception ***************************** In thread Root thread 0x0 (thread id) ******************************************************************************* ------------------------------------------------------------------------------- Class / Object Routine Nature of exception Effect ------------------------------------------------------------------------------- ARRAYED_SET put_left @2 not_before: <000000000423E5E8> (From ARRAYED_LIST) Precondition violated. Fail ------------------------------------------------------------------------------- ARRAYED_SET move_item @14 <000000000423E5E8> (From LINEAR_SUBSET) Routine failure. Fail ------------------------------------------------------------------------------- APPLICATION reproduce_arrayed_set_move_item_bug @3 <000000000423E5A8> Routine failure. Fail ------------------------------------------------------------------------------- APPLICATION root's creation <000000000423E5A8> Routine failure. Exit -------------------------------------------------------------------------------
Problem Report Interactions
Probably move_item (v: G) should also have the precondition "not_before: not before" To be continued in other related bug report. Closing this one for now.