Locally, the routine performs consistently with its documentation:
Init signature: sage.rings.continued_fraction.ContinuedFraction_real(x)
Docstring:
Continued fraction of a real (exact) number.
This class simply wraps a real number into an attribute (that can be
accessed through the method "value()"). The number is assumed to be
irrational.
A fully rigorous verson would require a proof of irrationality of x as part of the input; probably.
The value error from `list` is specific to the type, so its terminology could be toned down, but worse things happen if the constructor gets called with a rational argument:
sage: sage.rings.continued_fraction.ContinuedFraction_real(355/113)
[3; 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...]
compare with:
sage: continued_fraction(355/113)
[3; 7, 16]
Concerning:
sage: QQ(catalan)
TypeError: unable to convert catalan to a rational
that's entirely reasonable, since sage doesn't know catalan to be rational and hence cannot do the conversion. No claim about the rationality of catalan is made.