libraries affected by common factor gcd and lcm namespace change moving from math to integer library

A quick grep (for gcd_ and lcm_ in *.*pp) suggests that the following libraries are affected by gcd and lcm namespace change moving from math to integer library. At present, math_fwd.hpp provides some typedefs and declarations needed for these, and a copy of the common factor codes, so nothing may fail immediately, but these duplicate will be removed after at least one release. Chrono Interprocess Math Multiprecision Ratio Rational Units All libraries should use the declarations in integer/integer_fwd.hpp and /integer/common_factor_ct.hpp and /integer/common_factor_rt.hpp. (And there may be documentation changes too?) Something needs to be done ;-) (If you want *me* to resolve anything, then I need write access to your library). Paul --- Paul A. Bristow Prizet Farmhouse Kendal UK LA8 8AB +44 (0) 1539 561830

________________________________________ From: Boost [boost-bounces@lists.boost.org] on behalf of Paul A. Bristow [pbristow@hetp.u-net.com] Sent: 29 January 2015 14:34 To: boost@lists.boost.org Subject: [boost] libraries affected by common factor gcd and lcm namespace change moving from math to integer library
(If you want *me* to resolve anything, then I need write access to your library).
Paul
Paul I would like to suggest that you provide a workaround which points from the old usage to the new usage so that no library is broken in the meantime. As I found yesterday, some of the libraries are in turn used by others to provide a lot of different things. Best wishes John _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Le 29/01/15 15:34, Paul A. Bristow a écrit :
A quick grep (for gcd_ and lcm_ in *.*pp) suggests that the following libraries are affected by gcd and lcm namespace change moving from math to integer library.
At present, math_fwd.hpp provides some typedefs and declarations needed for these, and a copy of the common factor codes, so nothing may fail immediately, but these duplicate will be removed after at least one release.
Chrono
Interprocess
Math
Multiprecision
Ratio
Rational
Units
All libraries should use the declarations in integer/integer_fwd.hpp and /integer/common_factor_ct.hpp and /integer/common_factor_rt.hpp.
(And there may be documentation changes too?)
Something needs to be done ;-)
(If you want *me* to resolve anything, then I need write access to your library).
Paul you should refine your grep. Lastly there were some libraries that changed already from math:: to integer. IMO, the single library I see is using math::gcd/lcm is multiprecision, and I'm not sure removing this dependency is really needed. Please provide the result of your grep. I don't think we should remove math::gcd/lcm, just forward to the interger::gcd/lcm. Best, Vicente

-----Original Message----- From: Boost [mailto:boost-bounces@lists.boost.org] On Behalf Of Vicente J. Botet Escriba Sent: 29 January 2015 17:58 To: boost@lists.boost.org Subject: Re: [boost] libraries affected by common factor gcd and lcm namespace change moving from math to integer library
Le 29/01/15 15:34, Paul A. Bristow a écrit :
A quick grep (for gcd_ and lcm_ in *.*pp) suggests that the following libraries are affected by gcd and lcm namespace change moving from math to integer library.
At present, math_fwd.hpp provides some typedefs and declarations needed for these, and a copy of the common factor codes, so nothing may fail immediately, but these duplicate will be removed after at least one release.
Chrono
Interprocess
Math
Multiprecision
Ratio
Rational
Units
All libraries should use the declarations in integer/integer_fwd.hpp and /integer/common_factor_ct.hpp and /integer/common_factor_rt.hpp.
(And there may be documentation changes too?)
Something needs to be done ;-)
(If you want *me* to resolve anything, then I need write access to your library).
Paul you should refine your grep. Lastly there were some libraries that changed already from math:: to integer.
IMO, the single library I see is using math::gcd/lcm is multiprecision, and I'm not sure removing
this
dependency is really needed. Please provide the result of your grep.
I don't think we should remove math::gcd/lcm, just forward to the integer::gcd/lcm.
I'm not suggesting removal (yet) and we will provide a forwarding, but wasn't the Big Idea that we reduced interdependence between libraries? I was just suggesting authors of libraries that use gcd or lcm might like to make a very small change to use the Boost.Integer library instead of Boost.Math (if they haven't already)? Or am misunderstanding? Paul --- Paul A. Bristow Prizet Farmhouse Kendal UK LA8 8AB +44 (0) 1539 561830

Paul A. Bristow wrote:
I was just suggesting authors of libraries that use gcd or lcm might like to make a very small change to use the Boost.Integer library instead of Boost.Math (if they haven't already)?
Vicente's point was that most of the libraries in your list have already been changed to use Integer.
participants (4)
-
Fletcher, John P
-
Paul A. Bristow
-
Peter Dimov
-
Vicente J. Botet Escriba