Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
29592 ディスカッション

Debugger differences between IFORT and IFX

JohnDrohan
初心者
2,392件の閲覧回数

I've noticed different behavior between compilers when debugging a simple set of nested if conditions.

Simple code below that shows this behavior:

program nestedIfCheck

implicit none

! Variables
integer *4 testVar

testVar = 0

! Body of nestedIfCheck
if(.false.) then            ! Breakpoint here
  if(.false.) then
    testVar = 44
  else
    testVar = 99
  endif
endif

end program nestedIfCheck

If I place a break point at the first if(.false.) then statement, when using IFORT, the debugger will skip straight to the end program nestedIfCheck line.

However, in IFX, with the breakpoint at the same location, the debugger will move one line down as if the first if statement were evaluated as true.  Very confusing. Not sure if this is a bug or if it simply highlights the difference between IFX and IFORT.

0 件の賞賛
3 返答(返信)
Vladislav03
初心者
2,345件の閲覧回数

Confirm. I have the same issue. Moreover it sometimes may stuck between 2 lines making it impossible to debug the code 

andrew_4619
名誉コントリビューター III
2,139件の閲覧回数

yes the same, the carot jumps around in strange ways like when you have optimisations (which we don't on full debug).

Cameron
新規コントリビューター I
2,098件の閲覧回数

Replying to say I also see similar behavior. It makes debugging difficult since I have to question if what I am seeing is true.

返信