https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90169

            Bug ID: 90169
           Summary: allocatable character in type
           Product: gcc
           Version: 7.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: menospaamthereaper at hotmail dot com
  Target Milestone: ---

The following code does not produce the correct result on gfortran 7.3.0 (and
probably other versions):

 Program Main
   implicit none
   type str
      character(len=:),allocatable :: CStr(:)
    end type
    type(str) :: tstr

    allocate(character(len=2) :: tstr%CStr(2))

    tstr%CStr(1) = "20"
    tstr%CStr(2) = "30"

    print *,'First: ',tstr%CStr(1)   
    print *,'Second:',tstr%CStr(2) 
 End Program Main

The expected result is

 First: 20                  
 Second:30 

but the actual result is

 First: 30                  
 Second:30 

Note that this works as expected if CStr is not inside of a type. The details
used in this example of the length, etc. do not matter.

(This problem is also listed in 78578 but was not perhaps properly discussed
and so was marked resolved / invalid)

Reply via email to