-
Notifications
You must be signed in to change notification settings - Fork 221
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Begin to systematically remove direct use of lexical_cast in favour o… #742
Conversation
…f existing abstractions.
@mborland : this began as the "simple" task of revising unchecked_factorial.hpp and trying to remove your lexical_cast workaround to see what failed.... it's grown rather larger into replacing lots of lexical_cast usages in favour of existing abstractions. More soon... |
Correct silly typo in unchecked_factorial.hpp. Remove TEST_STD define in config.hpp as it needlessly breaks the TR1 tests. Remove lexical_cast.hpp workaround file. Correct #pragma in tr1.hpp.
Stop referencing boost::lexical_cast even in templates which aren't instantiated. Fix missing macro definition in tr1.hpp. Correct include order in some tests so we get consistent definitions for BOOST_HAS_FLOAT128.
One stalled test, merging. |
On second thoughts this is a big diff, I'll wait and see if anyone wants to comment. |
For a few days, I've been meaning to address a possibly related issue. At the time of writing this post, the rework of Anyway, all my jobs failed because this line prevents my math-bindings from getting Ordinarily I would just patch my sub-project. And ordinarily-ordinarily I'd write a full Multiprecision backend instead of just bindings. But the point is --- something changed on develop branch where I run nightlies. So I feel it's worth addressing. I did not yet see if John's rework here addresses this problem. Cc: @jzmaddock and @mborland and @NAThompson |
Sorry about the noise, ... the As a final comment... does this line serve any purpose. I am torn and confused by it. On the one hand, i think only user-defined types will end up instantiating those templates, none of which will have any meaning with Cc: @jzmaddock and @mborland and @NAThompson. |
Regular floating point types (float, double, long double and __float128) are addressed in other specializations, so yes, this template was intended for multiprecision types only. However, there is a bug report somewhere that if you're foolish enough to instantiate So... I'll push some comments to that effect. |
@jzmaddock This looks good to me. Thanks for removing my workarounds. |
…f existing abstractions.