On Monday 03 October 2011 23:02:15 Janus Weil wrote: > Hi all, > > here is a patch for a rather long-standing PR. It continues my ongoing > campaign of improving the checks for "procedure characteristics" (cf. > F08 chapter 12.3), which are relevant for dummy procedures, procedure > pointer assignments, overriding of type-bound procedures, etc. > > This particular patch checks for the correct shape of array arguments, > in a manner similar to the recently added check for the string length > (PR 49638), namely via 'gfc_dep_compare_expr'. > > The hardest thing about this PR was to find out what exactly the > standard requires (cf. c.l.f. thread linked in comment #12): Only the > shape of the argument has to match (i.e. upper minus lower bound), not > the bounds themselves (no matter if the bounds are constant or not). > > I also added a FIXME, in order to remind myself of adding the same > check for function results soon. > > The patch was regtested on x86_64-unknown-linux-gnu. Ok for trunk? >
The patch is basically OK. Any reason to keep this disabled? + case -2: + /* FIXME: Implement a warning for this case. + gfc_warning ("Possible shape mismatch in argument '%s'", + s1->name);*/ + break; + Mikael