// Commentary: // // This model demonstrates undesirable or illegal behavior in a // component. Here the component does not accept the w.world which // leads to failing the illegal check. // // Code: interface ihello { in void hello(); behavior { on hello: {} } } interface iworld { in void hello(); out void world(); behavior { on hello: world; } } component hello_illegal { provides ihello h; requires iworld w; behavior { on h.hello(): w.hello(); // on w.world(): {} // commenting this out leads to an implicit illegal // on w.world(): illegal; // an implicit illegal can also be made explicit } }