boostorg/rational — pull request #4 by jzmaddock (2014-07-28 12:01:15+00:00)
Title: No float convert

This change disallows conversion from floating-point types - which brings the library into line with it's documentation. Currently:

rational r(0.1);

compiles just fine, but doesn't generate any kind of sensible answer. See discussion: http://lists.boost.org/Archives/boost/2014/07/215504.php

Note that this change includes (and depends upon) two previous pull requests:
https://github.com/boostorg/rational/pull/2
https://github.com/boostorg/rational/pull/3

The only breaking change I can detect with this commit is a currently untested one:

constexpr rational r(3); // fails

this works however:

constexpr rational r(static_cast(3)); // OK

While this is might be fixable, frankly I don't see the point - I suspect that real world usage of rational with shorter-than-int-types is vanishlingly small?