Altstep parameterization problem
( copy of https://gitlab.eclipse.org/eclipse/titan/titan.core/-/issues/614 )
## Summary
TITAN allows activated altstep to have out parameter, while the standard does not.
## Steps and/or TTCN-3 code to reproduce
Create a module with the following content:
```
type port pt_intport message{
inout integer
}with{extension "internal"}
type component ct_twointports{
port pt_intport P;
var template integer tv := ?;
}
testcase tc_out_inout_parameters_for_templates_activated_altsteps_1() runs on ct_twointports{ //shall result in error
connect(self:P,self:P);
var default d := activate(as_out_inout_parameters_for_templates_activated_altsteps_1(tv));
P.send(2);
P.receive(1);
if(valueof(tv)==2){setverdict(pass);}
deactivate(d);
}
altstep as_out_inout_parameters_for_templates_activated_altsteps_1(out template integer p) runs on ct_twointports{
[] P.receive(2) {setverdict(pass);p:=2}
}
```
Then compile and execute.
## What is the current bug behavior?
The test case runs and passes. This mean that the out parameter of the activated altstep gets an out value indeed.
## What is the expected correct behavior?
According to clause 5.4.1.2 (b) this shall not work. This means that it should either result in a compilation error or a dynamic test case error. (Note: I don't see any reason why this is logical, but the standars states so.) Also, this should be the result for an inout parameter as well.
## Relevant logs and/or screenshots
## Possible fixes
## Titan version
8.1.2
Microsoft Windows 10 Enterprise 10.0.19042
issue