
<snip>
mpf_float<0> is the only type we have that has variable precision at runtime, and the std lib routines that call these constants aren't supported in that use case (which should be documented somewhere - I'll check). And they're not supported largely because of the caching mechanism. You should get a compiler error if you try and use that type with those templates, but I'll double check that. John.
Got it!
PS Although it's possible to support variable runtime precision, it complicates things enough not to support it unless folks get really worked up about it ;-)
I categorically reject dynamic digit modification but do use precision control in limited instances such as Newton iteration. But you're right. It's a can of worms. Best regards, Chris.