diff options
author | Fritz O. Reese <fritzoreese@gmail.com> | 2016-11-02 14:56:41 +0000 |
---|---|---|
committer | Fritz Reese <foreese@gcc.gnu.org> | 2016-11-02 14:56:41 +0000 |
commit | 3df19fa0d40019eff5060e31abd6add22ac1df4b (patch) | |
tree | e2e1ae41352244251932989b8cb773e3b130c49b /gcc/fortran/resolve.c | |
parent | eab1ee22545ddc53bbe25ab6c4140f29a8879891 (diff) | |
download | gcc-3df19fa0d40019eff5060e31abd6add22ac1df4b.zip gcc-3df19fa0d40019eff5060e31abd6add22ac1df4b.tar.gz gcc-3df19fa0d40019eff5060e31abd6add22ac1df4b.tar.bz2 |
New warning -Wargument-mismatch for function argument mismatches.
gcc/fortran/
* lang.opt, invoke.texi: New argument -Wargument-mismatch.
* interface.c (compare_parameter, compare_actual_formal,
gfc_check_typebound_override, argument_rank_mismatch): Control argument
mismatch warnings with -Wargument-mismatch.
* resolve.c (resolve_structure_cons, resolve_global_procedure): Ditto.
gcc/testsuite/gfortran.dg/
* warn_argument_mismatch_1.f90: New test.
From-SVN: r241795
Diffstat (limited to 'gcc/fortran/resolve.c')
-rw-r--r-- | gcc/fortran/resolve.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index f9d11be..14685d2 100644 --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -1317,7 +1317,8 @@ resolve_structure_cons (gfc_expr *expr, int init) if (s2 && !gfc_compare_interfaces (comp->ts.interface, s2, name, 0, 1, err, sizeof (err), NULL, NULL)) { - gfc_error ("Interface mismatch for procedure-pointer component " + gfc_error (OPT_Wargument_mismatch, + "Interface mismatch for procedure-pointer component " "%qs in structure constructor at %L: %s", comp->name, &cons->expr->where, err); return false; @@ -2469,7 +2470,8 @@ resolve_global_procedure (gfc_symbol *sym, locus *where, if (!gfc_compare_interfaces (sym, def_sym, sym->name, 0, 1, reason, sizeof(reason), NULL, NULL)) { - gfc_error ("Interface mismatch in global procedure %qs at %L: %s ", + gfc_error (OPT_Wargument_mismatch, + "Interface mismatch in global procedure %qs at %L: %s ", sym->name, &sym->declared_at, reason); goto done; } |