My IDE is: Visual Studio 2010 ( Intel Parallel XE 2011 )
This is test code:
program test
implicit none
character(:), allocatable :: glo_isp_gre
character(*), parameter :: glo_isp_aaa = "abcd!"
allocate( character( len(glo_isp_aaa) ) :: glo_isp_gre)
glo_isp_gre = glo_isp_aaa
print *, len(glo_isp_gre), len(glo_isp_aaa)
deallocate( glo_isp_gre)
print *, len(glo_isp_gre)
end program test
The result of program execution is: 5 5
and 5
The length of glo_isp_gre
is 5 after deallocation. Why?