On 7/1/21 11:08 AM, Tobias Burnus wrote:
Hi all,
this patch came up when discussing Sandra's TS29113 patch internally.
There is presumably also some overlap with José's patches.
This patch tries to rectify the BIND(C) CHARACTER handling on the
diagnostic side, only. That is: what to accept and what
to reject for which Fortran standard.
FAOD, my TS29113 testsuite just posted includes only tests for bind(c)
character features that were added by TS29113, which are all failing
(without this new patch from Tobias) due to the incorrect compile-time
error. Those places in the tests are all currently marked with dg-bogus
referencing PR 92482.
I've been thinking we need to add a further large batch of tests to
systematically exercise all the other character-related bind(c)
functionality; all the combinations of character type, character length,
dummy argument flavor, call direction, and in/out add up to perhaps 600
more things that need to be tested. :-( Of course a single testcase
can test multiple things so it wouldn't require 600 actual new
testcases. Anyway, I thought there was little point in starting work on
that until the compiler was actually accepting the more complicated
dummy argument forms.
I'm a bit backlogged on other things right now but I'll give this patch
a spin when I have time and if it's approved I'll adjust the TS29113
testsuite dg-bogus patterns or whatever accordingly, before reposting a
cleaned-up version.
-Sandra