я так и не нашел утверждения напрямую, что это невозможно, но очень похоже на то, что это основа языка - в выражениях функции выдают только один выходной аргумент, в общем случае такое никак не провернуть
выражение
с = 3*real(c)+1i*imag(c);
делает тоже самое, или в общем случае
с = U(real(c),imag(c))+1i*V(real(c),imag(c));
тоже, что и
x0 = real(c);
y0 = imag(c);
x = U(x0,y0);
y = V(x0,y0);
с = complex(x,y);