(j3.2006) (SC22WG5.4635) Part 2 of the standard
Dan Nagle
dannagle
Tue Mar 13 19:55:11 EDT 2012
Hi,
Do you have a version of the module you might share?
If it's still too rough I won't complain.
On Mar 13, 2012, at 14:04 , John Reid wrote:
> WG5,
>
> I promised at Garching to look into the conversion to Fortran 2003 of the procedures of the varying length strings module that are not included in Part 1 of the Standard. These are the I/O procedures GET, PUT and PUT_LINE and the substring manipulation procedures EXTRACT, INSERT, REMOVE, REPLACE, and INSERT.
>
> I have made a new module that compiles under the Nag compiler but I have tested it only with new versions of the two example programs that are in Part 2.
>
> Most occurrences of
> type(VARYING_STRING)
> were replaced by
> CHARACTER(LEN=:),ALLOCATABLE
> but
> type(VARYING_STRING),INTENT(IN)
> was replaced by
> CHARACTER(LEN=*),INTENT(IN)
> This resulted in arguments that were previously documented as either of
> type CHARACTER or VARYING_STRING become only of type CHARACTER. The number of specific procedures reduced from 40 to 15.
>
> There were obvious mechanical changes needed within the procedures.
>
> The subroutine SPLIT cannot be elemental because of having an allocatable argument. Note that all the elements of a character array have to have the same character length, so this restriction really is needed.
>
> A similar problem occurs in the vocabulary test, where an array holds words of varying length. I got round this by using a linked list.
>
> This has taken me a day and a bit of work. To get it all tested and documented will be quite a bit more work, probably at least a week. How valuable will this be?
>
> Lawrie, do you have a view? Can you help? For instance, do you have a test deck for the old code?
>
> Cheers,
>
> John.
>
> _______________________________________________
> J3 mailing list
> J3 at j3-fortran.org
> http://j3-fortran.org/mailman/listinfo/j3
--
Cheers!
Dan Nagle
More information about the J3
mailing list