aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Koenig <tkoenig@gcc.gnu.org>2025-02-10 21:25:37 +0100
committerThomas Koenig <tkoenig@gcc.gnu.org>2025-02-10 21:29:37 +0100
commitd2ff1b78d70731db1b7adc1cbac7e44688828370 (patch)
tree7520c2cbb54cea92d81c8fe89f2dbe4569efb834
parent118a6c3247bb30ef932341cec3ca15e2c6304b69 (diff)
downloadgcc-d2ff1b78d70731db1b7adc1cbac7e44688828370.zip
gcc-d2ff1b78d70731db1b7adc1cbac7e44688828370.tar.gz
gcc-d2ff1b78d70731db1b7adc1cbac7e44688828370.tar.bz2
This improves an error message, avoiding at ... at.
gcc/fortran/ChangeLog: PR fortran/24878 * interface.cc (compare_parameter): Better wording on error message. gcc/testsuite/ChangeLog: PR fortran/24878 * gfortran.dg/interface_51.f90: Adjust expected error message.
-rw-r--r--gcc/fortran/interface.cc6
-rw-r--r--gcc/testsuite/gfortran.dg/interface_51.f904
2 files changed, 5 insertions, 5 deletions
diff --git a/gcc/fortran/interface.cc b/gcc/fortran/interface.cc
index 49677f1..fdde84d 100644
--- a/gcc/fortran/interface.cc
+++ b/gcc/fortran/interface.cc
@@ -2521,9 +2521,9 @@ compare_parameter (gfc_symbol *formal, gfc_expr *actual,
gcc_assert (formal->attr.function);
if (!gfc_compare_types (&global_asym->ts, &formal->ts))
{
- gfc_error ("Type mismatch passing global function %qs "
- "declared at %L at %L (%s/%s)",
- actual_name, &gsym->where, &actual->where,
+ gfc_error ("Type mismatch at %L passing global "
+ "function %qs declared at %L (%s/%s)",
+ &actual->where, actual_name, &gsym->where,
gfc_typename (&global_asym->ts),
gfc_dummy_typename (&formal->ts));
return false;
diff --git a/gcc/testsuite/gfortran.dg/interface_51.f90 b/gcc/testsuite/gfortran.dg/interface_51.f90
index c8371e8..7f7576d 100644
--- a/gcc/testsuite/gfortran.dg/interface_51.f90
+++ b/gcc/testsuite/gfortran.dg/interface_51.f90
@@ -14,7 +14,7 @@ program memain
call foo(subr) ! { dg-error "Passing global subroutine" }
call bar(i4) ! { dg-error "Passing global function" }
- call baz(r4) ! { dg-error "Type mismatch passing global function" }
+ call baz(r4) ! { dg-error "Type mismatch" }
end program memain
subroutine foo(ifun)
@@ -39,7 +39,7 @@ integer(kind=4) function i4() ! { dg-error "Passing global function" }
i4 = 42
end function i4
-real(kind=4) function r4() ! { dg-error "Type mismatch passing global function" }
+real(kind=4) function r4() ! { dg-error "Type mismatch" }
r4 = 1.0
end function r4