[Issue 3753] New: ICE eh.c 49: Related to exception handling and alloca.
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Fri Jan 29 15:04:59 PST 2010
http://d.puremagic.com/issues/show_bug.cgi?id=3753
Summary: ICE eh.c 49: Related to exception handling and
alloca.
Product: D
Version: 2.039
Platform: Other
OS/Version: Linux
Status: NEW
Keywords: ice-on-valid-code
Severity: major
Priority: P2
Component: DMD
AssignedTo: nobody at puremagic.com
ReportedBy: dsimcha at yahoo.com
--- Comment #0 from David Simcha <dsimcha at yahoo.com> 2010-01-29 15:04:57 PST ---
I can't seem to reduce this one to a small test case, but I think this comment
from where the assert fires at least gives a hint that it involves some
combination of exceptions and alloca:
// BUG: alloca() changes the stack size, which is not reflected
// in the fixed eh tables.
assert(!usedalloca);
Also, in the (too large to post to Bugzilla) program that this issue occurred
in, removing the alloca() calls and replacing them with GC.malloc() fixed the
problem.
This assert is in a #if TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD ||
TARGET_SOLARIS statement, so I guess it only happens on those OS's. The code
that triggers it definitely works on Windows.
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list