In Fortran one can specify the intent of variables thus if all arguments have
INTENT(IN) then GCC should be able to detect that alist in the call to cshift
is uninitialized.

This depends on the middle end support of intents (PR31094) plus using these in
gfortran.

Example (using an intrinsic function):

program testcshft
  integer :: alist(4)
  alist =cshift(alist,-1)
  write(*,*) alist
end program testcshft


-- 
           Summary: Uninitialized warning for call-by-reference arguments
                    with known intent(in)
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Keywords: diagnostic
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: burnus at gcc dot gnu dot org
 BugsThisDependsOn: 31094


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31279

Reply via email to