Sorry, I posted the bug too quickly, it's not in numer:
wrong:
(C8) rhs(solve(f(x),x)[1]),rectform,numer;
RAT replaced 28.5 by 57//2 = 28.5
RAT replaced 28.5 by 57//2 = 28.5
RAT replaced 0.5 by 1//2 = 0.5
RAT replaced -4.18055555555556 by -301//72 = -4.18055555555556
(D8) 3.897114317029973*%I+0.75
(C9) rhs(solve(f(x),x)[1]),rectform,float;
RAT replaced 28.5 by 57//2 = 28.5
RAT replaced 28.5 by 57//2 = 28.5
RAT replaced 0.5 by 1//2 = 0.5
RAT replaced -4.18055555555556 by -301//72 = -4.18055555555556
(D9) 3.897114317029973*%I+0.75
nearly correct:
(C10) rhs(solve(f(x),x)[1]),rectform,bfloat;
RAT replaced 28.5 by 57//2 = 28.5
(D10) 3.318006917974609B0-1.387778780781446B-16*%I
correct:
(C12) float(ev(rhs(solve(f(x),x)[1]),rectform));
RAT replaced 28.5 by 57//2 = 28.5
(D12) 3.318006917974609
Unfortunately, I do not have the knowledge to debug this...
Martin