This article applies to the BlackBerry® Device Software 4.1 and later.
When you compile your application with Device Software 4.1 and later, you receive the following error:
Vtable record size of 65708 exceeds max record size of 65508
There are too many virtual methods in your class hierarchy.
Note: A virtual method is a function that, when overridden by a subclass, is used by the base class. Each sibling COD file contains virtual method tables (vtables) that must fit into a single record with a 64 KB limit. Each virtual method table needs two bytes per method; therefore, you receive this error when you have a COD file with a large number of classes and each class has a large virtual method table.
To resolve this problem, do one of the following:
Reconsider your class hierarchy to reduce the number of classes. As a result, the number of virtual methods in the virtual method table are reduced.
Use the RAPC -vtablefull=nnn option to reduce the number of classes going into each member of a sibling component COD file set. The default value used by RAPC for this option is 61440. This option can reduce the number of classes in each sibling component, which increases the number of sibling components in your COD file. Therefore, an increase in the number of sibling components reduces the risk of having one sibling component exceed the maximum size of the virtual method table.
This RAPC option was introduced in BlackBerry Device Software 4.0.