This should make it work for any virtual class' vftable regardless of compiler. Well, except for gcc v2 versions which had some io classes with a vptr at an offset other than 0 for some reason.
Just a side note though, you should be careful about setting the function namespace of the functions in the vftable. Functions in a vftable may actually belong to an inherited class if they are not being overridden.
This should make it work for any virtual class' vftable regardless of compiler. Well, except for gcc v2 versions which had some io classes with a vptr at an offset other than 0 for some reason.
Just a side note though, you should be careful about setting the function namespace of the functions in the vftable. Functions in a vftable may actually belong to an inherited class if they are not being overridden.