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;