Nikolay Sivov (@nsivov) commented about dlls/oleaut32/tests/vartest.c:
V_VT(&exp) = VT_##rvt; V_##rvt(&exp) = rval; \ test_var_call2( __LINE__, pVarAnd, &left, &right, &exp )
-#define VARANDCY(vt1,val1,val2,rvt,rval) \ +#define VARANDRCY(vt1,val1,val2,rvt,rval) \ V_VT(&left) = VT_##vt1; V_##vt1(&left) = val1; \ V_VT(&right) = VT_CY; V_CY(&right).int64 = val2; \ V_VT(&exp) = VT_##rvt; V_##rvt(&exp) = rval; \ test_var_call2( __LINE__, pVarAnd, &left, &right, &exp )
+#define VARANDLCY(val1,vt2,val2,rvt,rval) \
V_VT(&left) = VT_CY; V_CY(&left) .int64 = val1; \
V_VT(&right) = VT_##vt2; V_##vt2(&right) = val2; \
V_VT(&exp) = VT_##rvt; V_##rvt(&exp) = rval; \
test_var_call2( __LINE__, pVarAnd, &left, &right, &exp )
Why do you need this new macro?