I am using VS22 and the latest IFX compiler of OneApi. The IN and OUT “dummy” parameters of one of the subroutines are declared as derived type. Using the debugger and stopping in the subroutine, none of sub-parameters (IN%a, or OUT%a) could be seen. However recompiling the program with the IFORT compiler everything is working. Using IFX is there a way to overcome this problem?
The flag for including debug symbols is the same in both compilers: -g
(Linux), /debug:full
(Windows).
For other differences see this page: https://www.intel.com/content/www/us/en/developer/articles/guide/porting-guide-for-ifort-to-ifx.html
@TKibedi ,
You may want to inquire at the Intel Fortran forum also where you can receive specific help from Intel Fortran users.
You will likely be asked to provide specific information including your system and toolset details and some illustration based on your actual code i.e., a minimal working example you can carve out of your situation.
Note in ordinary circumstances around supported versions (see this link), graphical debugging using IFX
and IFORT
works similarly and in a usable fashion for most users - see screen snip below:
Is there an issue with the program running, or just seeing derived type values in debugging? The flaky debug behavior is well known. I believe Intel has said a 2025 version of IFX will significantly rework the debug symbol structure, which hopefully will be an improvement.