diff options
author | David Seifert <soap@gentoo.org> | 2016-05-05 21:06:06 +0200 |
---|---|---|
committer | David Seifert <soap@gentoo.org> | 2016-05-05 21:06:06 +0200 |
commit | c3c7b1fd5e5c3f2925ad71c73bd5ae12eb2e5956 (patch) | |
tree | 023bc7b06dfae8e165dd40a3708e7dd6924e9ad8 /sci-libs/pastix/files | |
parent | sci-mathematics/cgal: Move cmake files back to /usr/libdir (diff) | |
download | gentoo-c3c7b1fd5e5c3f2925ad71c73bd5ae12eb2e5956.tar.gz gentoo-c3c7b1fd5e5c3f2925ad71c73bd5ae12eb2e5956.tar.bz2 gentoo-c3c7b1fd5e5c3f2925ad71c73bd5ae12eb2e5956.zip |
sci-libs/pastix: Add cast to double for C99 isnan macro
Gentoo-Bug: 580422
* Move patches into PATCHES bash array
Package-Manager: portage-2.2.28
Diffstat (limited to 'sci-libs/pastix/files')
-rw-r--r-- | sci-libs/pastix/files/pastix-5.2.2.22-isnan-floating-point-cast.patch | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/sci-libs/pastix/files/pastix-5.2.2.22-isnan-floating-point-cast.patch b/sci-libs/pastix/files/pastix-5.2.2.22-isnan-floating-point-cast.patch new file mode 100644 index 000000000000..8aa7c06e5c93 --- /dev/null +++ b/sci-libs/pastix/files/pastix-5.2.2.22-isnan-floating-point-cast.patch @@ -0,0 +1,47 @@ +Add missing cast to floating-point type: +* sopalin/src/variable_csc.c: In function ‘vcsc_add_node’: +* sopalin/src/variable_csc.c:138:13: error: non-floating-point argument in call to function ‘__builtin_isnan’ +* if (isnan(vcsc->values[COL-1][i*dof2 + ii])) { +See also: +https://bugs.gentoo.org/show_bug.cgi?id=580422 + +--- src/common/src/errors.h ++++ src/common/src/errors.h +@@ -140,7 +140,7 @@ + * expr - The value to check. + */ + #define CHECK_NAN(expr) { \ +- ASSERT_DEBUG(!isnan(expr), DBG_SOPALIN_NAN); \ ++ ASSERT_DEBUG(!isnan(((double) expr)), DBG_SOPALIN_NAN); \ + ASSERT_DEBUG(!isinf(expr), DBG_SOPALIN_INF); \ + } + #else +--- src/sopalin/src/variable_csc.c ++++ src/sopalin/src/variable_csc.c +@@ -135,7 +135,7 @@ + #endif + + for (ii = 0; ii < dof2; ii++) { +- if (isnan(vcsc->values[COL-1][i*dof2 + ii])) { ++ if (isnan(((double) vcsc->values[COL-1][i*dof2 + ii]))) { + vcsc->values[COL-1][i*dof2 + ii] = VALUE[ii]; + } else { + vcsc->values[COL-1][i*dof2 + ii] = op(vcsc->values[COL-1][i*dof2 + ii], +@@ -252,7 +252,7 @@ + vcsc->rows[COL_NODE][i]); + } + #endif +- if (isnan(vcsc->values[COL_NODE][idx])) { ++ if (isnan(((double) vcsc->values[COL_NODE][idx]))) { + vcsc->values[COL_NODE][idx] = VALUE; + } else { + vcsc->values[COL_NODE][idx] = op(vcsc->values[COL_NODE][idx], +@@ -660,7 +660,7 @@ + } else { + INTS iterdof; + for (iterdof = 0; iterdof < dof2; iterdof++) { +- if (!isnan(vcsc->values[MYCOL-1][dof2*iter2+iterdof])) { ++ if (!isnan(((double) vcsc->values[MYCOL-1][dof2*iter2+iterdof]))) { + /* ignore NaN values from VCSC */ + (*values_o)[dof2*iter3+iterdof] = op( + (*values_o)[dof2*iter3+iterdof], |