Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Valued Contributor III
33 Views

Debugger error for BLOCK / END BLOCK variable.

Consider

Program bloky
    implicit none
    real  ::  t(2)
    t = 1.0
    print *, t
    block
        real :: t((2)
        t = 2.0
    end block
    print *, t
end program

The Fortran works OK but the debugger thinks t is [2.0, 2.0] after the end block. Also if t was not declared outside the block the debugger still things it is valid both before and after the block. ( VS2013 Upd 5, Fortran XE2017 Upd 4)

0 Kudos
3 Replies
Highlighted
Valued Contributor III
33 Views

Additionally the size of t is redefined by the definition in the block so if it was shorter part if the array is then not accessible to the debugger or if it was longer the debugger is presumably looking at some junk location?

0 Kudos
Highlighted
Employee
33 Views

I created a complete reproducer and submitted this to our Debugger developers.

(Internal tracking id: DEBGGR-3091)

0 Kudos
Highlighted
Valued Contributor III
33 Views

thanks, I would guess the issues all have the same root cause.

0 Kudos