Commit aba56e87 authored by Matthias Simon's avatar Matthias Simon
Browse files

Merge branch 'add-variadic-functions' into 'main'

Add variadic functions

See merge request k3/ttcn3-conformance-tests!2
parents 4276ba0c f0c7b31b
Loading
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -3,6 +3,8 @@ stages:
  - package
  - deploy

default:
  image: alpine
  before_script:
    - apk add bash git

+8 −0
Original line number Diff line number Diff line
 // @author   TTF23
 // @purpose  1:5.4.3, Ensure variadic formal parameters are at the end of the formal parameter list.
 // @verdict  pass reject
module NegSem_050403_variadic_parameters_001 {

	function f(in integer i..., in integer max) {}

}
+8 −0
Original line number Diff line number Diff line
 // @author   TTF23
 // @purpose  1:5.4.3, Ensure only one variadic formal parameter per formal parameter list is allowed.
 // @verdict  pass reject
module NegSem_050403_variadic_parameters_002 {

function f(in integer a..., in integer b...) {}

}
+9 −0
Original line number Diff line number Diff line
 // @author   TTF23
 // @purpose  1:5.4.3, Ensure variadic parameters are in parameters.
 // @verdict  pass reject
module NegSem_050403_variadic_parameters_003 {

function f1(inout integer x...) {}
function f2(out integer x...) {}

}
+21 −0
Original line number Diff line number Diff line
 // @author   TTF23
 // @purpose  1:5.4.3, Ensure actual variadic parameter results in an equivalent record of in their declaration order.
 // @verdict  pass reject
module NegSem_050403_variadic_parameters_004 {

type record of integer RoI;
type component GeneralComp {}

function f(in integers... args) return RoI {
    return args
}

testcase TC_NegSem_050403_variadic_parameters_004() runs on GeneralComp {
	f(-, -); // Reject: f() has only one variadic parameter to omit.
}

control {
    execute(TC_NegSem_050403_variadic_parameters_004());
}

}
Loading