Right now gcj will make a vtable slot for a non-static private method. We speculate that this is done for CNI. However, there's no point to a private method having a vtable slot, since private methods are never inherited. Ideally both gcj and g++ would emit calls to private methods directly (not via the vtable). This may mean that private methods will have to check for this==null, or perhaps their callers will (the latter may be preferable since most calls will be on 'this', and thus the check can be removed). link.cc already omits private methods from the constructed vtables.
Closing as won't fix as the Java front-end has been removed from the trunk.