/***************************************************
 ** @author   STF470
 ** @version  0.0.1
 ** @desc     Test cases for clause 6.2
 ** @purpose  1:6.2, Ensure that assignments with "implicit omit" attribute are correctly handled
 ** @verdict  pass reject
 ***************************************************/
module NegSem_060202_SetTypeValues_002 {

type component GeneralComp {
}

 type set S {
  integer f1,
  integer f2 optional,
  integer f3,
  integer f4 optional,
  integer f5 optional
 }

testcase TC_NegSem_060202_SetTypeValues_002() runs on GeneralComp {

 var S v_assigned := { 1, 2 } with { optional "implicit omit" }
 template S m_check := { 1, omit, 2, omit, omit }

      if (match(v_assigned,m_check)) {  //cannot match undefined components of v_assigned
	    setverdict(pass);
      }

}

control {
    execute(TC_NegSem_060202_SetTypeValues_002());
}

}
