You can remove private functions that are not virtual if the implementation no longer references them. This includes references from inline functions.
You can remove virtual privates (or change to nonvirtual) if you did not specify in your documentation that they can be overridden.
You can change a private function from nonvirtual to virtual, but you must recompile all your own code that calls it.