Dear Paul,

thanks for the review.

Paul Richard Thomas wrote:
I have a couple of remarks:
(i) The DTYPE_TYPE_MASK is 0x38 so that we saturated it a long time
since!  At the moment it does not cause any problems because of the
extremely limited use of the dtype 'type'.  Whilst the array
descriptor revamp will eliminate such worries, we should be mindful of
this; and

Thanks for the reminder. I kind of expected such an issue - and decided not to worry about it.

(ii) By making such substantial use of scan-tree-dump-times in the
dg-run test case, you are potentially building in instability against
future development, I suppose?  Are the runtime tests not sufficient?

In principle, run-time tests are sufficient. But they rely on C tests - or at least on a working C_LOC. However, one currently cannot use C_LOC() on assumed-shape variables nor BIND(C) for assumed-shape dummies. [Which is allowed in TS29113.] Besides, the C program needs then to make use of gfortran's array descriptor to really check.

I tried a bit, but it gets rather complicated so that at some point, I gave up, deleted the traces of the C code and surrendered. I checked the argument manually and added them to the scan-tree-dump-times. I tried carefully to use them such that they should work on all targets. However, if the array descriptor will change, they might break. However, the work to fix them once or twice might be less than writing a run-time test.


Reply via email to