------- Comment #1 from pault at gcc dot gnu dot org 2007-05-15 13:49 ------- This does the trick on all fronts:
Index: gcc/fortran/check.c =================================================================== *** gcc/fortran/check.c (révision 124614) --- gcc/fortran/check.c (copie de travail) *************** gfc_check_atan2 (gfc_expr *y, gfc_expr * *** 649,661 **** try gfc_check_besn (gfc_expr *n, gfc_expr *x) { ! if (scalar_check (n, 0) == FAILURE) ! return FAILURE; if (type_check (n, 0, BT_INTEGER) == FAILURE) return FAILURE; if (type_check (x, 1, BT_REAL) == FAILURE) return FAILURE; return SUCCESS; --- 649,667 ---- try gfc_check_besn (gfc_expr *n, gfc_expr *x) { ! char buffer[80]; if (type_check (n, 0, BT_INTEGER) == FAILURE) return FAILURE; if (type_check (x, 1, BT_REAL) == FAILURE) + return FAILURE; + + /* Note arg[0] is misnamed, for besjn and besyn, as 'ncopies' in + intrinsic.c (add_functions). */ + snprintf (buffer, 80, "arguments 'n' and '%s' for intrinsic '%s'", + gfc_current_intrinsic_arg[1], gfc_current_intrinsic); + if (gfc_check_conformance (buffer, n, x) == FAILURE) return FAILURE; return SUCCESS; Paul -- pault at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at gcc dot gnu |pault at gcc dot gnu dot org |dot org | Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|0000-00-00 00:00:00 |2007-05-15 13:49:12 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31930