Hi Mikael,

>> The extra
>> argument controls whether we check variable symbols for equality or
>> just their names. For the overriding checks it is sufficient to check
>> for names, because the arguments of the overriding procedure are
>> required to have the same names as in the base procedure.
>
> Unless you extend the flag thing to all the children function of
> gfc_dep_compare_expr (there are zillions of them), it is preferable IMO to
> make the diagnostic a warning, as identical expressions could be missed.

Well, it would not be really satisfying to degrade the error to a
warning, knowing it may be wrong sometimes. So I think one should
rather fix this, which I think is not as hard as you suggest:
gfc_dep_compare_expr doesn't exactly have "zillions" of children, but
just two AFAICS:

 * gfc_are_identical_variables
 * gfc_dep_compare_functions

Apart from those two, it is highly recursive and mostly calls itself,
where the argument is passed on already. So I think it's feasible to
add the extra argument to the above two functions, too (unless anyone
has a better idea).

I'll fix this and send an updated patch soon.

Thanks,
Janus

Reply via email to