PSXE 2017 Update 2 - Internal Compiler Error(s) involving PARAMETER constants and /debug-parameters /debug options
A defect (regression) has been found in the Intel® Parallel Studio XE 2017 Update 2 (17.0 compiler) release involving the use of PARAMETER constants along with the /debug-parameter and /debug options. The combined use can led to multiple internal compiler errors.
The following example (complements of andrew_4619) demonstrates usage that will trigger the internal error:
module ice implicit none integer, parameter :: ld=82 contains subroutine thingy call bob(ld) end subroutine thingy subroutine bob(I) integer,intent(in) :: I print *, I end subroutine bob end module ice
Users may experience several internal errors during a build attempt for the Debug configuration under Visual Studio where it is common to have /debug-parameter and /debug options enabled simultaneously.
Users can work around the defect by either:
- Under Visual Studio, disabling the /debug-parameters option under: Properties > Fortran > Debugging > Information for PARAMETER Constants set to None
- Under Visual Studio, using only minimal /debug information (i.e. Properties > Fortran > Debugging > Information set to Line Numbers Only) with any setting for /debug-parameters (see the property setting in #1 above).
- On the compiler command-line, removing all occurrences of the /debug-parameters from compiler command-line or within application build scripts when using /debug:full
- On the compiler command-line, using /debug:minimal with any setting for /debug-parameters on the compiler command-line or within application build scripts.
The internal tracking id for this defect is: DPD200418283. A fix will be available in the next 17.0 update due to be released in a couple of months.