test/wrong_multiply.ink:4,18: error: Procedure call did not match any of the possible overloads for 'float4'  found: result : float4 = float4(1.0, foo * res, 0.0, 1.0); ^^^^^^  While matching argument 2 in function call.  result : float4 = float4(1.0, foo * res, 0.0, 1.0); ^  Possible overloads:  float4 :: (float, float, float, float); (test/wrong_multiply.ink:0)  float4 :: (float2, float2); (test/wrong_multiply.ink:0)  float4 :: (float2, float, float); (test/wrong_multiply.ink:0)  float4 :: (float, float2, float); (test/wrong_multiply.ink:0)  float4 :: (float, float, float2); (test/wrong_multiply.ink:0)  float4 :: (float, float3); (test/wrong_multiply.ink:0)  float4 :: (float3, float); (test/wrong_multiply.ink:0)  float4 :: (float4); (test/wrong_multiply.ink:0)  float4 :: (float); (test/wrong_multiply.ink:0) test/wrong_multiply.ink:4,34: error: Type mismatch. Expected float got float2  found: result : float4 = float4(1.0, foo * res, 0.0, 1.0); ^ expected: float got: result : float4 = float4(1.0, foo * res, 0.0, 1.0);