/***************************************************
 ** @author   STF 409
 ** @version  0.0.1
 ** @purpose  1:6.3.2, Ensure that the IUT rejects assignments from incompatible types or type ranges
 ** @verdict  pass reject
 ***************************************************/

module NegSem_060302_structured_types_003 {

	type record RecordType {
 	 integer  a(0..10) optional,
 	 integer  b(0..10) optional,
 	 boolean  c
	}
	type record ModifiedRecord {
 	 integer  e 	   optional,
 	 integer  f(0..5)  optional,
 	 boolean  g
	}


type component GeneralComp {
}

testcase TC_NegSem_060302_structured_types_003() runs on GeneralComp {

    var ModifiedRecord v_rec1:={e:=15,f:=4,g:=false};
    var RecordType v_rec2;

    v_rec2:=v_rec1;		//subtyping range mismatch
	setverdict(pass);

}

control{
    execute(TC_NegSem_060302_structured_types_003());
}

}
