www.digitalmars.com         C & C++   DMDScript  

c++ - scppn.exe process crash

reply "Matthew Wilson" <dmd synesis.com.au> writes:
Walter

Just had another nasty - a crash rather than an ICE - which had an
interesting cause. On earlier compilers, it compiled fine, but 8.31+ it was
toast.

It was caused by an iterator class - a helper for a TREEVIEW-wrapping
sequence class - that had previously relied on operator ==() and operator
!=() being free functions. In making the code work for other compilers
(notably Intel, GCC & Metrowerks) they required that the operators be
changed to public const member functions. However, I forgot to remove the
free functions. All other compilers (and previous versions of DMC++) happily
ignored the free-functions, but 8.31+ was very cross.

Don't know if this is helpful, but thought I'd let you know. I would imagine
you'd rather the compiler report an error (although I'm pretty sure it's not
an error - it would seem like a pretty stern situation - albeit that it is a
useless thing to have) than crash.

Matthew
Dec 23 2002
parent "Walter" <walter digitalmars.com> writes:
I need a test case that causes the crash so I can fix it. Thanks, -Walter

"Matthew Wilson" <dmd synesis.com.au> wrote in message
news:au87l2$rgh$1 digitaldaemon.com...
 Walter

 Just had another nasty - a crash rather than an ICE - which had an
 interesting cause. On earlier compilers, it compiled fine, but 8.31+ it

 toast.

 It was caused by an iterator class - a helper for a TREEVIEW-wrapping
 sequence class - that had previously relied on operator ==() and operator
 !=() being free functions. In making the code work for other compilers
 (notably Intel, GCC & Metrowerks) they required that the operators be
 changed to public const member functions. However, I forgot to remove the
 free functions. All other compilers (and previous versions of DMC++)

 ignored the free-functions, but 8.31+ was very cross.

 Don't know if this is helpful, but thought I'd let you know. I would

 you'd rather the compiler report an error (although I'm pretty sure it's

 an error - it would seem like a pretty stern situation - albeit that it is

 useless thing to have) than crash.

 Matthew

Dec 24 2002