I am getting really tired of this; I have been working with C++ for almost 20 years and I have found bugs in almost every compiler. But the Intel compiler is by far the worst ever. So this morning I updated to the C++ 2013 Compiler for Windows Update 2, 2013.2.149, hoping for some fixes. 2 Minutes later I get a compiler crash:
2>P:\genlibs\dlcl\include\DLPersist.h(13,15): error : assertion failed: dump_type_declaration: bad type kind [error] (shared/cfe/edgglue/edg_type.c, line 433)
The line in question is approximately 15 years old:
const DLULong MaxDLPersistID =1000;
(DLULong is a typedef to unsigned long).
Unfortunately I can't leave ICC behind until MS implements a bit more of C++11, so... How can I help you find out what the hell this bug is? Clearly this code in itself can't be problematic, not even for ICC and in any case the compiler shouldn't crash! Don't expect too much of an effort from my side on this though, I am done with ICC, it is costing far too much of my time; right now I have to deinstall it and reinstall an older version because I will not work around compiler bugs for simple code like this and obviously I also can't wait for an update which might or might not fix this.
Pretty much the only reason for this report and an offer to help you identify this bug is that I have no doubt I will find more bugs in Update 1 and at some point I might have to upgrade; who knows when VC will support the features I need.