Compiled test.osl -> test.oso
parameter initialization: param1 = 0.5 1.5 2.5 3.5
parameter initialization: param2 = 10 20 30 40

PASS: param1 == vector4(0.5, 1.5, 2.5, 3.5)
PASS: -param1 == vector4(-0.5, -1.5, -2.5, -3.5)
PASS: param1 != param2
PASS: param1 + param2 == vector4(10.5, 21.5, 32.5, 43.5)
PASS: param1 + 1 == vector4(1.5, 2.5, 3.5, 4.5)
PASS: param1 + 1.0 == vector4(1.5, 2.5, 3.5, 4.5)
PASS: 1 + param1 == vector4(1.5, 2.5, 3.5, 4.5)
PASS: 1.0 + param1 == vector4(1.5, 2.5, 3.5, 4.5)
PASS: param2 - param1 == vector4(9.5, 18.5, 27.5, 36.5)
PASS: param1 - 1 == vector4(-0.5, 0.5, 1.5, 2.5)
PASS: param1 - 1.0 == vector4(-0.5, 0.5, 1.5, 2.5)
PASS: 1 - param1 == vector4(0.5, -0.5, -1.5, -2.5)
PASS: 1.0 - param1 == vector4(0.5, -0.5, -1.5, -2.5)
PASS: param1 * param2 == vector4(5.0, 30.0, 75.0, 140.0)
PASS: param1 * 2 == vector4(1.0, 3.0, 5.0, 7.0)
PASS: param1 * 2.0 == vector4(1.0, 3.0, 5.0, 7.0)
PASS: 2 * param1 == vector4(1.0, 3.0, 5.0, 7.0)
PASS: 2.0 * param1 == vector4(1.0, 3.0, 5.0, 7.0)
PASS: param1 / param2 == vector4(0.05, 1.5/20.0, 2.5/30.0, 3.5/40.0)
PASS: param1 / 2 == vector4(0.25, 0.75, 1.25, 1.75)
PASS: param1 / 2.0 == vector4(0.25, 0.75, 1.25, 1.75)
PASS: 2 / param1 == vector4(4.0, 2.0/1.5, 2.0/2.5, 2.0/3.5)
PASS: 2.0 / param1 == vector4(4.0, 2.0/1.5, 2.0/2.5, 2.0/3.5)
PASS: abs(vector4(0.5, 1.5, 2.5, 3.5)) == vector4(abs(xcomp(vector4(0.5, 1.5, 2.5, 3.5))), abs(ycomp(vector4(0.5, 1.5, 2.5, 3.5))), abs(zcomp(vector4(0.5, 1.5, 2.5, 3.5))), abs(wcomp(vector4(0.5, 1.5, 2.5, 3.5))))
PASS: abs(vector4(-0.5, -1.5, -2.5, -3.5)) == vector4(abs(xcomp(vector4(-0.5, -1.5, -2.5, -3.5))), abs(ycomp(vector4(-0.5, -1.5, -2.5, -3.5))), abs(zcomp(vector4(-0.5, -1.5, -2.5, -3.5))), abs(wcomp(vector4(-0.5, -1.5, -2.5, -3.5))))
PASS: ceil(vector4(0.5, 1.5, 2.5, 3.5)) == vector4(ceil(xcomp(vector4(0.5, 1.5, 2.5, 3.5))), ceil(ycomp(vector4(0.5, 1.5, 2.5, 3.5))), ceil(zcomp(vector4(0.5, 1.5, 2.5, 3.5))), ceil(wcomp(vector4(0.5, 1.5, 2.5, 3.5))))
PASS: ceil(vector4(-0.5, -1.5, -2.5, -3.5)) == vector4(ceil(xcomp(vector4(-0.5, -1.5, -2.5, -3.5))), ceil(ycomp(vector4(-0.5, -1.5, -2.5, -3.5))), ceil(zcomp(vector4(-0.5, -1.5, -2.5, -3.5))), ceil(wcomp(vector4(-0.5, -1.5, -2.5, -3.5))))
PASS: floor(vector4(0.5, 1.5, 2.5, 3.5)) == vector4(floor(xcomp(vector4(0.5, 1.5, 2.5, 3.5))), floor(ycomp(vector4(0.5, 1.5, 2.5, 3.5))), floor(zcomp(vector4(0.5, 1.5, 2.5, 3.5))), floor(wcomp(vector4(0.5, 1.5, 2.5, 3.5))))
PASS: floor(vector4(-0.5, -1.5, -2.5, -3.5)) == vector4(floor(xcomp(vector4(-0.5, -1.5, -2.5, -3.5))), floor(ycomp(vector4(-0.5, -1.5, -2.5, -3.5))), floor(zcomp(vector4(-0.5, -1.5, -2.5, -3.5))), floor(wcomp(vector4(-0.5, -1.5, -2.5, -3.5))))
PASS: sqrt(vector4(0.5, 1.5, 2.5, 3.5)) == vector4(sqrt(xcomp(vector4(0.5, 1.5, 2.5, 3.5))), sqrt(ycomp(vector4(0.5, 1.5, 2.5, 3.5))), sqrt(zcomp(vector4(0.5, 1.5, 2.5, 3.5))), sqrt(wcomp(vector4(0.5, 1.5, 2.5, 3.5))))
PASS: exp(vector4(0.5, 1.5, 2.5, 3.5)) == vector4(exp(xcomp(vector4(0.5, 1.5, 2.5, 3.5))), exp(ycomp(vector4(0.5, 1.5, 2.5, 3.5))), exp(zcomp(vector4(0.5, 1.5, 2.5, 3.5))), exp(wcomp(vector4(0.5, 1.5, 2.5, 3.5))))
PASS: log(vector4(0.5, 1.5, 2.5, 3.5)) == vector4(log(xcomp(vector4(0.5, 1.5, 2.5, 3.5))), log(ycomp(vector4(0.5, 1.5, 2.5, 3.5))), log(zcomp(vector4(0.5, 1.5, 2.5, 3.5))), log(wcomp(vector4(0.5, 1.5, 2.5, 3.5))))
PASS: log2(vector4(0.5, 1.5, 2.5, 3.5)) == vector4(log2(xcomp(vector4(0.5, 1.5, 2.5, 3.5))), log2(ycomp(vector4(0.5, 1.5, 2.5, 3.5))), log2(zcomp(vector4(0.5, 1.5, 2.5, 3.5))), log2(wcomp(vector4(0.5, 1.5, 2.5, 3.5))))
PASS: mix(vector4(1.0, 2.0, 3.0, 4.0), vector4(21.0, 22.0, 23.0, 24.0), 0.0) == vector4(1.0, 2.0, 3.0, 4.0)
PASS: mix(vector4(1.0, 2.0, 3.0, 4.0), vector4(21.0, 22.0, 23.0, 24.0), 1.0) == vector4(21.0, 22.0, 23.0, 24.0)
PASS: mix(vector4(1.0, 2.0, 3.0, 4.0), vector4(21.0, 22.0, 23.0, 24.0), 0.5) == vector4(11.0, 12.0, 13.0, 14.0)
PASS: vec4ToVec3(vector4(1.0, 2.0, 3.0, 1.0)) == vector(1.0, 2.0, 3.0)
PASS: dot(param1, param2) == 0.5*10.0 + 1.5*20.0 + 2.5*30.0 + 3.5*40.0
PASS: length(vector4(3.0, 4.0, 5.0, 6.0)) == sqrt(3.0*3.0 + 4.0*4.0 + 5.0*5.0 + 6.0*6.0)
PASS: smoothstep(vector4(1.0, 2.0, 3.0, 4.0), vector4(11.0, 12.0, 13.0, 14.0), vector4(0.0, 0.0, 0.0, 0.0)) == vector4(0.0, 0.0, 0.0, 0.0)
PASS: smoothstep(vector4(1.0, 2.0, 3.0, 4.0), vector4(11.0, 12.0, 13.0, 14.0), vector4(20.0, 20.0, 20.0, 20.0)) == vector4(1.0, 1.0, 1.0, 1.0)
PASS: smoothstep(vector4(1.0, 2.0, 3.0, 4.0), vector4(11.0, 12.0, 13.0, 14.0), vector4(6.0, 7.0, 8.0, 9.0)) == vector4(0.5, 0.5, 0.5, 0.5)
PASS: clamp(vector4(0.0, 0.0, 0.0, 0.0), vector4(1.0, 2.0, 3.0, 4.0), vector4(2.0, 3.0, 4.0, 5.0)) == vector4(1.0, 2.0, 3.0, 4.0)
PASS: clamp(vector4(10.0, 10.0, 10.0, 10.0), vector4(1.0, 2.0, 3.0, 4.0), vector4(2.0, 3.0, 4.0, 5.0)) == vector4(2.0, 3.0, 4.0, 5.0)
PASS: clamp(vector4(1.5, 2.5, 3.5, 4.5), vector4(1.0, 2.0, 3.0, 4.0), vector4(2.0, 3.0, 4.0, 5.0)) == vector4(1.5, 2.5, 3.5, 4.5)
PASS: clamp(vector4(0.25, 0.5, 0.75, 0.8), 1.0, 2.0) == vector4(1.0, 1.0, 1.0, 1.0)
PASS: clamp(vector4(2.25, 2.5, 3.5, 4.5), 1.0, 2.0) == vector4(2.0, 2.0, 2.0, 2.0)
PASS: clamp(vector4(1.25, 1.5, 1.75, 1.875), 1.0, 2.0) == vector4(1.25, 1.5, 1.75, 1.875)
PASS: max(vector4(1.0, 4.0, 2.0, 5.0), vector4(2.0, 3.0, 3.5, 4.0)) == vector4(2.0, 4.0, 3.5, 5.0)
PASS: min(vector4(1.0, 4.0, 2.0, 5.0), vector4(2.0, 3.0, 3.5, 4.0)) == vector4(1.0, 3.0, 2.0, 4.0)
PASS: normalize(v) == v/length(v)
PASS: fmod(vector4(5.0, 8.0, 10.0, 13.0), vector4(2.0, 3.0, 4.0, 5.0)) == vector4(fmod(xcomp(vector4(5.0, 8.0, 10.0, 13.0)), xcomp(vector4(2.0, 3.0, 4.0, 5.0))), fmod(ycomp(vector4(5.0, 8.0, 10.0, 13.0)), ycomp(vector4(2.0, 3.0, 4.0, 5.0))), fmod(zcomp(vector4(5.0, 8.0, 10.0, 13.0)), zcomp(vector4(2.0, 3.0, 4.0, 5.0))), fmod(wcomp(vector4(5.0, 8.0, 10.0, 13.0)), wcomp(vector4(2.0, 3.0, 4.0, 5.0))))
PASS: pow(vector4(2.0, 3.0, 4.0, 5.0), vector4(-1.0, 2.0, 0.5, 3.0)) == vector4(pow(xcomp(vector4(2.0, 3.0, 4.0, 5.0)), xcomp(vector4(-1.0, 2.0, 0.5, 3.0))), pow(ycomp(vector4(2.0, 3.0, 4.0, 5.0)), ycomp(vector4(-1.0, 2.0, 0.5, 3.0))), pow(zcomp(vector4(2.0, 3.0, 4.0, 5.0)), zcomp(vector4(-1.0, 2.0, 0.5, 3.0))), pow(wcomp(vector4(2.0, 3.0, 4.0, 5.0)), wcomp(vector4(-1.0, 2.0, 0.5, 3.0))))
PASS: sign(vector4(0.5, -0.6, 0.7, -0.8)) == vector4(sign(xcomp(vector4(0.5, -0.6, 0.7, -0.8))), sign(ycomp(vector4(0.5, -0.6, 0.7, -0.8))), sign(zcomp(vector4(0.5, -0.6, 0.7, -0.8))), sign(wcomp(vector4(0.5, -0.6, 0.7, -0.8))))
PASS: sign(vector4(-0.5, 0.6, -0.7, 0.8)) == vector4(sign(xcomp(vector4(-0.5, 0.6, -0.7, 0.8))), sign(ycomp(vector4(-0.5, 0.6, -0.7, 0.8))), sign(zcomp(vector4(-0.5, 0.6, -0.7, 0.8))), sign(wcomp(vector4(-0.5, 0.6, -0.7, 0.8))))
PASS: sin(vector4(0.5, 1.5, 2.5, 3.5)) == vector4(sin(xcomp(vector4(0.5, 1.5, 2.5, 3.5))), sin(ycomp(vector4(0.5, 1.5, 2.5, 3.5))), sin(zcomp(vector4(0.5, 1.5, 2.5, 3.5))), sin(wcomp(vector4(0.5, 1.5, 2.5, 3.5))))
PASS: cos(vector4(0.5, 1.5, 2.5, 3.5)) == vector4(cos(xcomp(vector4(0.5, 1.5, 2.5, 3.5))), cos(ycomp(vector4(0.5, 1.5, 2.5, 3.5))), cos(zcomp(vector4(0.5, 1.5, 2.5, 3.5))), cos(wcomp(vector4(0.5, 1.5, 2.5, 3.5))))
PASS: tan(vector4(0.5, 1.5, 2.5, 3.5)) == vector4(tan(xcomp(vector4(0.5, 1.5, 2.5, 3.5))), tan(ycomp(vector4(0.5, 1.5, 2.5, 3.5))), tan(zcomp(vector4(0.5, 1.5, 2.5, 3.5))), tan(wcomp(vector4(0.5, 1.5, 2.5, 3.5))))
PASS: asin(vector4(0.5, 0.25, 0.75, 0.125)) == vector4(asin(xcomp(vector4(0.5, 0.25, 0.75, 0.125))), asin(ycomp(vector4(0.5, 0.25, 0.75, 0.125))), asin(zcomp(vector4(0.5, 0.25, 0.75, 0.125))), asin(wcomp(vector4(0.5, 0.25, 0.75, 0.125))))
PASS: acos(vector4(0.5, 0.25, 0.75, 0.125)) == vector4(acos(xcomp(vector4(0.5, 0.25, 0.75, 0.125))), acos(ycomp(vector4(0.5, 0.25, 0.75, 0.125))), acos(zcomp(vector4(0.5, 0.25, 0.75, 0.125))), acos(wcomp(vector4(0.5, 0.25, 0.75, 0.125))))
PASS: atan2(vector4(0.5, 1.5, 2.5, 3.5), vector4(10.0, 20.0, 30.0, 40.0)) == vector4(atan2(xcomp(vector4(0.5, 1.5, 2.5, 3.5)), xcomp(vector4(10.0, 20.0, 30.0, 40.0))), atan2(ycomp(vector4(0.5, 1.5, 2.5, 3.5)), ycomp(vector4(10.0, 20.0, 30.0, 40.0))), atan2(zcomp(vector4(0.5, 1.5, 2.5, 3.5)), zcomp(vector4(10.0, 20.0, 30.0, 40.0))), atan2(wcomp(vector4(0.5, 1.5, 2.5, 3.5)), wcomp(vector4(10.0, 20.0, 30.0, 40.0))))
PASS: atan2(vector4(2.0, 0.5, 1.0, 0.25), 1.0) == vector4(atan2(2.0, 1.0), atan2(0.5, 1.0), atan2(1.0, 1.0), atan2(0.25, 1.0))

