/*****************************************************************
 ** @author   STF 470
 ** @version  0.0.1
 ** @purpose  1:15.8, Ensure that template(present) can't be parameter to a template(omit) if contains anyvalueornone(*)
 ** @verdict  pass reject
 *****************************************************************/

module NegSem_1508_TemplateRestrictions_036 {

    type record ExampleType {	// Exampletype record integer and a boolean
       	integer a,
		boolean b
       }

	type component GeneralComp {
	}



	template (omit) ExampleType m_baseTemplate(template (present) integer MyintTemplate := *) :={
		a := MyintTemplate,	// template (present) MyintTemplate contains anyvalueornone(*), which is not allowed in omit restriction
		b := true
	}

	testcase TC_NegSem_1508_TemplateRestrictions_036() runs on GeneralComp {


		if (valueof(m_baseTemplate.b) == true) {
      		setverdict(pass);
		} else {
            setverdict(fail);
       }
 }

    control{
        execute(TC_NegSem_1508_TemplateRestrictions_036());
    }
}