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

--- Comment #1 from urbanjost at comcast dot net ---
I expect the following call to storage_size() to return the value 80 whether
called from within a select or not. I did not see the same issue with any other
type, including a type such as

   type string
      character(len=10) :: chars
   enddtype string

program testit
   use iso_c_binding
   implicit none
   character(len=10) :: string='abcdefghij'
   call psize(string)
contains
   subroutine psize(chars)
      class(*) :: chars
      select type(chars)
       type is(character(len=*))
         write(*,*)'in select ',chars,storage_size(chars)
      end select
      write(*,*)'not in select',storage_size(chars)
   end subroutine psize
end program testit

Results:

$ ./a.exe
 in select abcdefghij          80
 not in select           8

Reply via email to