
Hi yzt,
Many thanks for getting back to me, your help is much appreciated.
On Thu, Mar 27, 2008 at 11:51 PM, Yaser Zhian Tabasy
a a wrote:
I have a simple program to test boost::variant. Under Visual C++ 2005, configuration Release (/MD), the build fails with C1060 (out of heap space). The program compiles and runs as expected under Visual C++ 2005 Debug (/MTd), and under Visual C++ 2008 Express, Release and Debug.
Since I don't have VC2005 I can't be sure, but it's possible that you can solve this problem using the "/ZmXXX" compiler switch. You should replace the XXX with a suitable value (try 100, 200 or 500; basically, you should do a binary search for the best value!) Also, you should read the MSDN entry for the "/Zm" switch.
I tried switch /ZmXXX with a couple of different values for XXX, this seems to have no effect on the problem and still the VC8 Release build crashes with C1060. The documentation says that /Zm "Determines the amount of memory that the compiler allocates to construct precompiled headers". Can you give a little more detail on how you think that C1060 could be avoided in this case by changing the memory allocation for precompiled headers? The example I provided in the original post is a sole cpp file, I haven't myself created any headers, precompiled or otherwise. The code #includes various headers from STL and boost, are you saying that those #includes are picking up precompiled headers such that the behavior of the build could be influenced by /Zm? Thanks, Eric