I'm seeing an internal error message when trying to compile a file with icc 13.1 where I'm using some std::thread code. I took the advice in another thread of generating the preprocessed output. In an attempt to see what flags might be responsible for this internal error, I started randomly commenting out command line options. If I remove the -DCXX11 flag from the command line (and thus avoid #including <thread>) then I'm able to get this particular file to compile.
Here's my command line:
$ mpicxx -o build/src/release/linux/2.6/64/x86/icc/13.1/cxx11thread-mpi/protocols/forge/remodel/RemodelGlobalFrame.os -c -std=c++0x -Wp64 -wd279,2259,1682 -ip -O3 -Qoption,c,-ip_ninl_max_stats=500 -Qoption,c,-ip_ninl_max_total_stats=5000 -wd1684 -wd592 -fPIC -DNDEBUG -DMULTI_THREADED -DCXX11 -DUSEMPI -Isrc -Iexternal/include -Isrc/platform/linux/64/icc/13.1 -Isrc/platform/linux/64/icc -Isrc/platform/linux/64 -Isrc/platform/linux -Iexternal/boost_1_46_1 -Iexternal/dbio -I/usr/include -I/usr/local/include src/protocols/forge/remodel/RemodelGlobalFrame.cc
$ mpicxx -v
mpicxx for MVAPICH2 version 1.9a2
icpc version 13.1.0 (gcc version 4.4.7 compatibility)
The preprocessor output is here:
I'm happy to provide any other information that I might have left out here.
Thanks for your help!
Please attach the file to your note (look at the bottom for the button labeled Select Media under Attachments) rather than post a link to it... When I try to save the file from your html page the line feeds disappear and it is not compilable since the preprocessor # directives appear in the middle of the line.
Version 13.1 is no longer being updated. Are you looking for a workaround or information as to whether or not it's fixed in 14.0 or something else? It looks like the internal error is happening inside enclosing_routine_for_local_type() and I don't see any fixes in our database that look like they might have fixed this so it would be nice to get your preprocessed file.
'Thanks for the reproducer. I can reproduce the problem with version 13.1 but not version 14.0 of our compiler. 13.1 is no longer being updated.
I tried to come up with a workaround but it looks like it's happening during mangling of a variadic template and there is no simple workaround.
I would suggest upgrading to our latest supported release (14.0).
Sorry for the inconvenience.