Why would you want to allow a build to succeed with known defects?
Because sometimes, you have time constraints. Or because the bug is so minor that it doesn'tisn't really worth delaying the shipment of the product for a few days needed to unit test and fix it.
Also, what's the point in breaking the buildsbuild intentionally every time you find a bug? If you found it, fix it (or assign it to the person who will fix it), without disturbing your whole team. If you want to remember to fix a bug, then you need to mark it as very important in your bug tracking system.