struct SomeStruct { u64[N] f; } def myFct(SomeStruct ignored) -> u32[N2] { assert(2*N == N2); return [N3; N2]; } const u32 N = 3; const u32 N2 = 2*N; def main(SomeStruct arg) -> u32 { u32[N2] someVariable = myFct::<_, _, 42>(arg); return someVariable[0]; }