Discussion:
msvc vc 6.0 SP6 internal heap limit reached
Ira
2005-02-07 13:28:21 UTC
Permalink
All,

I am a newbie who is trying out the serialization library. In that article,
there is a demo program (demo.cpp) that i am trying to build. Along with
several warnings ('dynamic_cast' used on polymorphic type...), the compiler is
generating the following error:

fatal error C1076: compiler limit : internal heap limit reached; use /Zm to
specify a higher limit

I have tried various values for /Zm (200 is recomended) and either i still
receive this error, or if increase the value too much, the compiler generates
the following error:

fatal error C1204: compiler limit : internal structure overflow

Since this seesaw response doesn't seem correct, i am wondering if there is a
particular flag or combination thereof that would correct this problem?

Thank you.
Arkadiy Vertleyb
2005-02-07 19:25:49 UTC
Permalink
Post by Ira
fatal error C1204: compiler limit : internal structure overflow
This VC6 compiler limit can usually be worked around by spliting your source
into multiple ones.

HTH,

Arkadiy
Joaquin M Lopez Munoz
2005-02-07 19:43:06 UTC
Permalink
Post by Ira
All,
I am a newbie who is trying out the serialization library. In that article,
there is a demo program (demo.cpp) that i am trying to build. Along with
several warnings ('dynamic_cast' used on polymorphic type...), the compiler is
fatal error C1076: compiler limit : internal heap limit reached; use /Zm to
specify a higher limit
I have tried various values for /Zm (200 is recomended) and either i still
receive this error, or if increase the value too much, the compiler generates
fatal error C1204: compiler limit : internal structure overflow
You can use values for /Zm as high as 800 or 1200. Have you topped
at 200 only?

Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
Robert Ramey
2005-02-07 20:53:41 UTC
Permalink
I use /Zm800 when building boost - including the serialization library

I've been unable to make the demo.cpp to compile and execute successfully on
msvc 6. Same problem as you have.

My test matrix does show demo_xml building a running as advertised.

The test matrix shows a fair number of failures for msvc 6 - its the
platform with the worst results. I had to spend a lot of time just get it
to pass as much as it does.

If you expect to make good usage of boost you should find a way to upgrate
to VC 7.1 - its much, much better in this context.

Robert Ramey
Post by Ira
All,
I am a newbie who is trying out the serialization library. In that
article, there is a demo program (demo.cpp) that i am trying to
build. Along with several warnings ('dynamic_cast' used on
fatal error C1076: compiler limit : internal heap limit reached; use
/Zm to specify a higher limit
I have tried various values for /Zm (200 is recomended) and either i
still receive this error, or if increase the value too much, the
fatal error C1204: compiler limit : internal structure overflow
Since this seesaw response doesn't seem correct, i am wondering if
there is a particular flag or combination thereof that would correct
this problem?
Thank you.
Ira Greenstein
2005-02-08 14:28:15 UTC
Permalink
Post by Ira
All,
I am a newbie who is trying out the serialization library. In that article,
there is a demo program (demo.cpp) that i am trying to build. Along with
several warnings ('dynamic_cast' used on polymorphic type...), the compiler is
fatal error C1076: compiler limit : internal heap limit reached; use /Zm to
specify a higher limit
I have tried various values for /Zm (200 is recomended) and either i still
receive this error, or if increase the value too much, the compiler generates
fatal error C1204: compiler limit : internal structure overflow
Since this seesaw response doesn't seem correct, i am wondering if there is a
particular flag or combination thereof that would correct this problem?
Thank you.
Thank you to all who responded! To answer some questions:

Arkadiy Vertleyb:

In the recesses of mind i did know that one point :).
My thoughts at the time of the original post were that if i could not get "demo"
program to build, using this library in a large system (using VC6) might be an
excercise in futility.

Joaquin M Lopez Munoz:

I did increase the value of /Zm. At around /Zm400, the compiler generated the
following message:

fatal error C1204: compiler limit : internal structure overflow

For grins i took it up to /Zm1000, with no change (i was not expecting one).

Robert Ramey:

So, i'm not crazy! One less thing to worry about :).
Unfortunately, VC6 is what the client has on site and VC 7.1 just is not in the
cards right now.
So, it's back to a light weight serialization scheme until they can bring in a
new compiler.
Martin
2005-02-08 15:13:31 UTC
Permalink
For me the problem only occured when compiling a source that also generated
pre-compiled header-file.

My solution was to first build the pre-compiled headers via an empty source
file (e.g. stdafx.cpp).

After that the other source files compiled without problems.

Loading...