Remove string "Str" from list of strings witFirstString,h first element "DirstString" and delete string.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(tString), | intent(inout), | POINTER | :: | Str |
String to delete |
SUBROUTINE DeleteString(Str) ! MODULES IMPLICIT NONE !----------------------------------------------------------------------------------------------------------------------------------- ! INPUT VARIABLES TYPE(tString),POINTER,INTENT(INOUT) :: Str !! String to delete !----------------------------------------------------------------------------------------------------------------------------------- ! OUTPUT VARIABLES !----------------------------------------------------------------------------------------------------------------------------------- ! LOCAL VARIABLES !=================================================================================================================================== IF (ASSOCIATED(Str%NextStr)) Str%NextStr%PrevStr=>Str%PrevStr IF (ASSOCIATED(Str,FirstString)) THEN FirstString=>Str%NextStr ELSE Str%PrevStr%NextStr=>Str%NextStr END IF #if (!defined(NVHPC)) DEALLOCATE(Str%Str) #endif /* ONLY NVHPC COMPILER DOES NOT SEEM TO WORK WITH ALLOCATABLE CHARACTERS (SIGSEV!) */ DEALLOCATE(Str) NULLIFY(Str) END SUBROUTINE DeleteString