Never mind, false lead anyway - there's a bug in the assignment operator of mpfr_float_backend - the operator:
thanks for researching this, John!
mpfr_float_backend& operator=(const mpfr_float_backend& o)
Needs to be a no-op in the case of self-assignment, otherwise the call to mpfr_set_prec sets the value to NaN, even though the precision and value doesn't actually change in this case :(
There'll be an official patch shortly, but I need to wait for the revised tests to complete first (to make sure they catch this).
I have four questions regarding a patch. Please pardon if they are trivial, but this seems like the quickest way to receive answers, and searches didn't reveal the answers for me. 1) Do I need to do anything to report this bug, or has a report on this one been filed? 2) Will the patch be contained in the 1.58 release? 3) If not, once a patch for this bug is released, will the patch show up in http://www.boost.org/patches/ ? And one last question -- 4) Is there a way to detect whether a patch has been applied, and refuse to compile my program if it hasn't? Thanks a ton for the help, I truly appreciate it. Daniel