aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include/std/complex
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2015-05-13 14:32:31 +0100
committerJonathan Wakely <redi@gcc.gnu.org>2015-05-13 14:32:31 +0100
commitd0cad9fef03ed3cac4b33cfdaa0a33cacb1a8af4 (patch)
tree53ad1f99c8f9402103e9da3c07be9af5d6404510 /libstdc++-v3/include/std/complex
parentac68f97cfe269d57f3d6d7ed2960cb738eb192e8 (diff)
downloadgcc-d0cad9fef03ed3cac4b33cfdaa0a33cacb1a8af4.zip
gcc-d0cad9fef03ed3cac4b33cfdaa0a33cacb1a8af4.tar.gz
gcc-d0cad9fef03ed3cac4b33cfdaa0a33cacb1a8af4.tar.bz2
* include/std/complex (polar): Check for negative rho (LWG 2459).
From-SVN: r223159
Diffstat (limited to 'libstdc++-v3/include/std/complex')
-rw-r--r--libstdc++-v3/include/std/complex5
1 files changed, 4 insertions, 1 deletions
diff --git a/libstdc++-v3/include/std/complex b/libstdc++-v3/include/std/complex
index 585683c..f2a6cf9 100644
--- a/libstdc++-v3/include/std/complex
+++ b/libstdc++-v3/include/std/complex
@@ -667,7 +667,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Tp>
inline complex<_Tp>
polar(const _Tp& __rho, const _Tp& __theta)
- { return complex<_Tp>(__rho * cos(__theta), __rho * sin(__theta)); }
+ {
+ _GLIBCXX_DEBUG_ASSERT( __rho >= 0 );
+ return complex<_Tp>(__rho * cos(__theta), __rho * sin(__theta));
+ }
template<typename _Tp>
inline complex<_Tp>