They are not referenced from any public or protected inline function that is available to clients or derived classes (part of the Taligent API or SPI).
Doing so doesn't change the offset of a data member that is referenced from any public or protected inline function. It can be hard to determine the impact on portability, as different processors align data differently. It's not clear at this point whether this includes changing the vtable pointer offset. To avoid this latter problem, declare a virtual function before any data members (always place public declarations first).
Doing so doesn't change the size of the class.
If your class is more complex than the very simplest (such as TGRect), take these steps to leave yourself room for future data expansion.
void *fExtension; // room for growth
TFooExtension *fExtension;
NOTE Some C++ runtimes allow you to change sizes of objects without such workarounds, but it is not clear when or if Taligent will support such a feature.