bad vtable since wx2.8 on msw

Riccardo Cohen rcohen at articque.com
Tue Jan 29 03:34:18 PST 2008


Hi
I have a strange crash problem. Basically I built a class A that inherit =

from wxWindow, and another B that inherit from A. They both have virtual =

functions. I don't use overloading, all functions have different names.

All that worked perfectly on all plateforms with 2.7. When we tried to =

compile the same code on 2.8 on windows, there was some problems with =

vtable at run time : some virtual functions were mixed, and when you =

write objectB->load(), the program executes objectB->save().... (both =

are virtual). The functions are not called in the constructor.

So we got back to wx2.7. Now I'm working with 2.9 and have the same problem.

I tried to inspect this and found nothing that could cause this in my =

code or in wx code... I tried to reproduce on a small sample, but then =

of course there is no problem.

It is probably a compiler bug (it works all right on mac/linux). The =

virtual table seems in a mess!

In the image joined, you can see vs2005 watch lines, At the top the =

functions found may differ from the asked (one is even NULL!), and at =

the bottom all is good, (it is my little sample)

Does someone have an idea ?
Thanks

PS: built on ms2005, ansi static

-- =

Tr=E8s cordialement,

Riccardo Cohen
-------------------------------------------
Articque
http://www.articque.com
149 av G=E9n=E9ral de Gaulle
37230 Fondettes - France
tel : 02-47-49-90-49
fax : 02-47-49-91-49
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vtable.png
Type: image/png
Size: 17860 bytes
Desc: not available
Url : http://lists.wxwidgets.org/pipermail/wx-users/attachments/20080129/33=
41d119/vtable.png


More information about the wx-users mailing list