Dear Intel support team
When I compile the attached example with "debugging" flags I obtain an ICE.
With "release" flags it compiles fine, but at least one (required!) symbol is missing in the generated object file
I also added a version where I removed an another subroutine which makes everything work fine.
I tried to attach all required module files generated on Linux 64: DownloadDownload
Regards
Melven
Detailed output:
> tar xJf intel_bug.tar.xz> cd intel_bug/ intel_bug> cat compile.sh echo version ifort -V echo "test_abstract_config_.F90 works:" ifort -DDOUBLE -DHAVE_LONG_LINES -DHAVE_PREPROCESSOR_STRINGIFICATION -DINTEL -DUSE_MPI -DUSE_OPENMP -I./include -fpp -std08 -diag-disable=5268 -diag-disable=5462 -assume norealloc_lhs -mkl -O3 -xHOST -real-size 64 -double-size 64 -qopenmp -assume realloc_lhs -c test_abstract_config_.F90 -o test_abstract_config_.F90.o echo "expecting: 000000000000bc90 T test_abstract_config_suite_" nm test_abstract_config_.F90.o | grep "T test_abstract_config_suite" ## differs only in another subroutine, see #diff test_abstract_config_.F90 test_abstract_config.F90 echo "test_abstract_config.F90 fails (missing symbol!):" ifort -DDOUBLE -DHAVE_LONG_LINES -DHAVE_PREPROCESSOR_STRINGIFICATION -DINTEL -DUSE_MPI -DUSE_OPENMP -I./include -fpp -std08 -diag-disable=5268 -diag-disable=5462 -assume norealloc_lhs -mkl -O3 -xHOST -real-size 64 -double-size 64 -qopenmp -assume realloc_lhs -c test_abstract_config.F90 -o test_abstract_config.F90.o echo "expecting: 000000000000bc90 T test_abstract_config_suite_" nm test_abstract_config.F90.o | grep "T test_abstract_config_suite" echo "test_abstract_config.F90 with debug flag fails (ICE):" ifort -DDEBUG -DDOUBLE -DHAVE_LONG_LINES -DHAVE_PREPROCESSOR_STRINGIFICATION -DINTEL -DUSE_MPI -DUSE_OPENMP -I./include -fpp -std08 -diag-disable=5268 -diag-disable=5462 -assume norealloc_lhs -mkl -warn all -g -O0 -traceback -check all -check noarg_temp_created -real-size 64 -double-size 64 -qopenmp -assume realloc_lhs -c test_abstract_config.F90 -o test_abstract_config.F90.o echo "expecting: 000000000000bc90 T test_abstract_config_suite_" nm test_abstract_config.F90.o | grep "T test_abstract_config_suite" intel_bug> sh compile.sh version Intel(R) Fortran Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 16.0.3.210 Build 20160415 Copyright (C) 1985-2016 Intel Corporation. All rights reserved. test_abstract_config_.F90 works: fpp: warning: keyword redefined: DOUBLE expecting: 000000000000bc90 T test_abstract_config_suite_ 000000000000bc90 T test_abstract_config_suite_ test_abstract_config.F90 fails (missing symbol!): fpp: warning: keyword redefined: DOUBLE expecting: 000000000000bc90 T test_abstract_config_suite_ test_abstract_config.F90 with debug flag fails (ICE): fpp: warning: keyword redefined: DOUBLE /tmp/ifort70yPuT.i90: catastrophic error: **Internal compiler error: segmentation violation signal raised** Please report this error along with the circumstances in which it occurred in a Software Problem Report. Note: File and line given may not be explicit cause of this error. compilation aborted for test_abstract_config.F90 (code 1) expecting: 000000000000bc90 T test_abstract_config_suite_ nm: 'test_abstract_config.F90.o': No such file