/*****************************************************************
 ** @author   STF 470 (updated by STF 521)
 ** @version  0.0.2
 ** @purpose  1:15.8, Ensure that template(omit) can be parameter to template(value)
 ** @verdict  pass reject
 *****************************************************************/

module Sem_1508_TemplateRestrictions_047 {

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

	type component GeneralComp {
	}



	template (value) ExampleType m_baseTemplate(template (omit) integer MyintTemplate := omit) :={
		a := MyintTemplate,
		b := true
	}

	testcase TC_Sem_1508_TemplateRestrictions_047() runs on GeneralComp {


		if (ispresent(m_baseTemplate.a) == true) {
      		setverdict(pass);
		} else {
            setverdict(fail);
       }
 }

    control{
        execute(TC_Sem_1508_TemplateRestrictions_047());
    }
}