--- CBOR-XS/XS.pm 2016/04/26 16:07:04 1.58 +++ CBOR-XS/XS.pm 2016/04/26 16:25:49 1.59 @@ -1208,9 +1208,11 @@ sub Math::BigRat::TO_CBOR { my ($n, $d) = $_[0]->parts; - $d == 1 - ? $n - : tag 30, [$n, $d] + # older versions of BigRat need *=1, as they not always return numbers + + $d*1 == 1 + ? $n*1 + : tag 30, [$n*1, $d*1] } sub Time::Piece::TO_CBOR {