https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77325
--- Comment #1 from Gerhard Steinmetz <gerhard.steinmetz.fort...@t-online.de> --- Slightly simplified, indicating an uninitialized variable : $ cat z3.f90 program p character(1), parameter :: c(3) = ['a', 'b', 'c'] character(:), allocatable :: z(:) z = c(1) print *, z end $ gfortran-7-20160821 -g -O0 -Wall -fcheck=all -c z3.f90 z3.f90:3:0: character(:), allocatable :: z(:) Warning: '.z' may be used uninitialized in this function [-Wmaybe-uninitialized]