http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54463

Tobias Burnus <burnus at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |burnus at gcc dot gnu.org
           Severity|enhancement                 |normal

--- Comment #2 from Tobias Burnus <burnus at gcc dot gnu.org> 2012-09-03 
06:14:22 UTC ---
The following should work. I am not too kind to have magic numbers, maybe that
part could be improved.

--- a/gcc/fortran/trans-intrinsic.c
+++ b/gcc/fortran/trans-intrinsic.c
@@ -2364,4 +2364,3 @@ gfc_conv_intrinsic_funcall (gfc_se * se, gfc_expr * expr)
          && (sym->ts.type == BT_REAL || sym->ts.type == BT_COMPLEX)
-         && (sym->ts.kind == gfc_default_real_kind
-             || sym->ts.kind == gfc_default_double_kind))
+         && (sym->ts.kind == 4 || sym->ts.kind == 8))
        {
@@ -2371,3 +2370,3 @@ gfc_conv_intrinsic_funcall (gfc_se * se, gfc_expr * expr)
            {
-             if (sym->ts.kind == gfc_default_real_kind)
+             if (sym->ts.kind == 4)
                gemm_fndecl = gfor_fndecl_sgemm;
@@ -2378,3 +2377,3 @@ gfc_conv_intrinsic_funcall (gfc_se * se, gfc_expr * expr)
            {
-             if (sym->ts.kind == gfc_default_real_kind)
+             if (sym->ts.kind == 4)
                gemm_fndecl = gfor_fndecl_cgemm;

Reply via email to