/*************************************************** ** @author STF 470 ** @version 0.0.1 ** @purpose 1:6.2.3, referencing non-existent element of set of value (left-hand side) ** @verdict pass accept, ttcn3verdict:pass ***************************************************/ // The following requirement is tested: // If an indexing operator at the left-hand side of an assignment refers to // a non-existent element, the value at the right-hand side is assigned to // the element and all elements with an index smaller than the actual index // and without assigned value are created with an undefined value. module Sem_060203_records_and_sets_of_single_types_020 { type component GeneralComp { } type set of integer SoI; testcase TC_Sem_060203_records_and_sets_of_single_types_020() runs on GeneralComp { var SoI v_set := { 0, 1 }; v_set[3] := 3; // {0, 1, -, 3} if (match(v_set[0], 0) and match(v_set[1], 1) and not isbound(v_set[2]) and match(v_set[3], 3)) { setverdict(pass); } else { setverdict(fail); } } control { execute(TC_Sem_060203_records_and_sets_of_single_types_020()); } }