>> in principle I think your idea to tighten up the type check by
>> symmetrizing it is ok.
>
> I actually kind of copied it from the proc-pointer assignment check, which
> does the same.

Btw, I think you refer to this piece of code in expr.c
(gfc_check_pointer_assign), right?


      if (!gfc_compare_interfaces (s1, s2, name, 0, 1,
                   err, sizeof(err), NULL, NULL))
    {
      gfc_error ("Interface mismatch in procedure pointer assignment "
             "at %L: %s", &rvalue->where, err);
      return false;
    }

      if (!gfc_compare_interfaces (s2, s1, name, 0, 1,
                   err, sizeof(err), NULL, NULL))
    {
      gfc_error ("Interface mismatch in procedure pointer assignment "
             "at %L: %s", &rvalue->where, err);
      return false;
    }


Since this will ultimately rely on check_dummy_characteristics, too,
it might even be possible to remove the duplication here, after my
patch introduces the symmetrization on a deeper level ... ?

Cheers,
Janus

Reply via email to