/*****************************************************************
 ** @author   STF 470
 ** @version  0.0.1
 ** @purpose  1:15.8, Ensure that unrestricted template can be parameter to template(value)
 ** @verdict  pass accept, ttcn3verdict:pass
 *****************************************************************/

module Sem_1508_TemplateRestrictions_045 {

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

	type component GeneralComp {
	}



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

	testcase TC_Sem_1508_TemplateRestrictions_045() runs on GeneralComp {


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

    control{
        execute(TC_Sem_1508_TemplateRestrictions_045());
    }
}