[PATCH] C++ math constants
Daniel Krügler
daniel.kruegler@gmail.com
Thu Feb 21 17:01:00 GMT 2013
2013/2/21 Ulrich Drepper <drepper@gmail.com>:
> How about the attached file as a start for <ext/math>. I used the
> constexpr approach (instead of function calls) and replicated the
> constants that are available in <math.h> in Unix.
1) In this case I miss the corresponding variable definitions, because
you violate the ODR, when you have something like the following:
#include <iostream>
template<class T>
void print(const T& t) { std::cout << t; }
int main() {
print(__math_constants<double>::__pi);
}
2) You need to use either braced initializers *or* using initializers
with equal, a parenthesized initializer isn't supported
(/brace-or-equal-initializer/).
- Daniel
More information about the Libstdc++
mailing list