[haiku-development] Re: gcc4 issues (again)

  • From: "Fredrik Holmqvist" <fredrik.holmqvist@xxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Mon, 10 Mar 2008 22:35:30 +0100

2008/3/10, Maurice Kalinowski <haiku@xxxxxxxxxxxxx>:
> Hey,
>
>  we have had a lot of discussions about problems regarding a gcc4 build.
>  I for myself prefer to use that one and as you know, I currently try to
>  get Cortex a little bit more stable.
>
>  Some days ago I tried to investigate a crash of Cortex and after some
>  time I recognized that this only happens on a gcc4 compiled system. To
>  be honest the backtrace does not help me at all.
>
>  When you try to close the application the call stack is the following:
>
>  BLooper::RemoveHandler()
>  BLooper::~BLooper()
>  BWindow::~BWindow()
>  RouteWindow::~RouteWindow()
>  BLooper::_task0_()
>  thread_entry().
>
>  So it ends up in libbe somewhere, but what is even more confusing, in a
>  debug build it stops in line 349 of Looper.cpp (to be a little bit more
>  precise). At that point we already have verified that the handler should
>  be ok, and I guess BList does not behave differently on these system.
>
>  Anyone have an idea? Especially why this only occurs on gcc4?

No, but I've seen similar things myself. A longshot but maybe it has
something to do with virtual / non virtual destructors and how the
different gcc treat them?

-- 
Fredrik Holmqvist
Chaordic: things that thrive on the edge of chaos with just enough order to
give them pattern, but not so much to slow their adaptation and learning.

Other related posts: