Ed, I'm checking this in as it looks correct anyway, quite apart from the fact it fixes a warning, but could you please double check it?
* include/tr1/legendre_function.tcc (__sph_legendre): Avoid warning about signed/unsigned comparison. Tested x86_64-linux, committed to trunk.
commit 67aca02fcfb8cde961480ebb1a2d19d1439d2e98 Author: Jonathan Wakely <jwak...@redhat.com> Date: Thu Aug 16 17:57:58 2018 +0100 Fix warning with -Wsign-compare -Wsystem-headers * include/tr1/legendre_function.tcc (__sph_legendre): Avoid warning about signed/unsigned comparison. diff --git a/libstdc++-v3/include/tr1/legendre_function.tcc b/libstdc++-v3/include/tr1/legendre_function.tcc index 85ca7969f5b..e75414c5296 100644 --- a/libstdc++-v3/include/tr1/legendre_function.tcc +++ b/libstdc++-v3/include/tr1/legendre_function.tcc @@ -284,7 +284,7 @@ namespace tr1 _Tp __y_lm = _Tp(0); // Compute Y_l^m, l > m+1, upward recursion on l. - for ( int __ll = __m + 2; __ll <= __l; ++__ll) + for (unsigned int __ll = __m + 2; __ll <= __l; ++__ll) { const _Tp __rat1 = _Tp(__ll - __m) / _Tp(__ll + __m); const _Tp __rat2 = _Tp(__ll - __m - 1) / _Tp(__ll + __m - 1);