diff options
Diffstat (limited to 'libgfortran/generated/sum_c8.c')
-rw-r--r-- | libgfortran/generated/sum_c8.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/libgfortran/generated/sum_c8.c b/libgfortran/generated/sum_c8.c index 5b41f546aa4..55454e06d62 100644 --- a/libgfortran/generated/sum_c8.c +++ b/libgfortran/generated/sum_c8.c @@ -220,6 +220,16 @@ msum_c8 (gfc_array_c8 * const restrict retarray, index_type mdelta; int mask_kind; + if (mask == NULL) + { +#ifdef HAVE_BACK_ARG + sum_c8 (retarray, array, pdim, back); +#else + sum_c8 (retarray, array, pdim); +#endif + return; + } + dim = (*pdim) - 1; rank = GFC_DESCRIPTOR_RANK (array) - 1; @@ -399,7 +409,7 @@ ssum_c8 (gfc_array_c8 * const restrict retarray, index_type dim; - if (*mask) + if (mask == NULL || *mask) { #ifdef HAVE_BACK_ARG sum_c8 (retarray, array, pdim, back); |