I have been involved in the development of large code bases that grew to millions lines of code over the course of multiple years and where the amount of warnings grew out of control because it was not a concern for the initial developers. Technical debt accumulated and now, I would like to pay it back.
Do you know of any process, method, or steps to decrease this type of technical debt and make sure that it remains in check once it has been eliminated?
How would you attack the problem of large numbers of warnings? Would you eliminate warnings in low level libraries and work your way up? Start with high level libraries first? One type of warning at a time? Do you involve one individual? One team?
I am looking for practical experiences with this type of problem and I am equally interested in what worked and what did not work.
EDIT: Language used is C++.