/*****************************************************************
 ** @author   STF 433
 ** @version  0.0.2
 ** @purpose  1:26.2, Ensure that the done operation is not allowed in the control part.
 ** @verdict  pass reject
 *****************************************************************/

module NegSem_2602_TheControlPart_009 {

    type port MyPort message {
        inout charstring
    }

    type component MTCComp {
        port MyPort p;
    }

    function f_myBehavior() runs on MTCComp {
        setverdict(fail);
    }

    function f_createComp() return MTCComp {
        return  MTCComp.create;
    }

    control {
        var MTCComp v_myComp := f_createComp(); // assume create was accepted
        v_myComp.start(f_myBehavior());
        v_myComp.done;
    }

}