This is certainly irritating and probably a minor bug:
integer :: i = 0
real(r_kind) :: dx = one
complex :: c = (two,three)
character(16) :: ch = 'four'
logical :: l = .true.
character(256) :: ch_out
write(ch_out, nml=this_out, iostat=my_iostat, iomsg=my_iomsg)
end subroutine blah
Compilation with /warn: unused shows i, dx, ch, c, and l as unused (if not referenced in ...) when they clearly are used via the inclusion in the namelist.
I am using 22.214.171.1242 [Intel(R) 64]
Just a thought
For more complete information about compiler optimizations, see our Optimization Notice.