Failing to implement required features makes the code incomplete. It doesn't mean the code contains any bugs.
That's an utterly weird definition of not having bugs.
Ah, bug religion. Good stuff. I also come from the school of "required features are enhancements, not bugs." Each feature is an enhancement of "nothing."
Each product release will incorporate required new features, existing feature enhancements, and existing feature bugfixes. If the required features and enhancements are not done, the release is not complete.
An important issue here is that a product can be released, whether its "dev complete" or not. Now whether those unimplemented features become "bugs" or not really depends on the documentation and marketing. It's a bug for a customer if the docs say a feature exists when it doesn't. Whether its treated as a functional bug or a documentation bug though... well that's a business decision.