There always would be enough new workers to pay for retirees' Social Security and Medicare. Benefits were raised on the assumption that the baby boom generation would produce a baby boom of its own. Oops. Birth rates near replacement levels, which we have now, are not enough. The ratio of workers to retirees is in inexorable decline.
General Motors always would be a big enough company to pay for the pensions and health benefits promised to hundreds of thousands of retirees. Turned out it wasn't.
Congress recognized the fact that both employers and employees have incentives to under-fund defined benefit pensions (it's more fun to spend the money now) and passed ERISA in 1974. But when companies fail, ERISA's Pension Benefit Guaranty Corp. doesn't pay the full amount of many private pensions.
Defined benefit policies assume a static society. But we live in a dynamic society, and defined benefit policies cannot keep up with constant change.
Social Security and defined benefit pensions assumed that people wouldn't live very long after turning 65. Now we do. Medicare didn't provide a prescription drug benefit because prescription drugs weren't a big deal in 1965. It took 38 years before a prescription drug benefit was added in 2003.
Defined benefit pensions are now mostly a thing of the past, replaced by defined contribution pensions, which place some risk directly on individuals rather than promise them full protection, which turns out to be highly risky when big entities out of their control fail.
We need to adjust defined benefit public policies to shift some short-term risk to individuals while reducing toward zero the huge systemic risk that exists now.
Barack Obama seems to believe we can shore up these policies by taxing high earners more. But there's not enough money there to keep things going as they are, and a big tax increase on high and middle earners would increase the risk that our current sluggish economy becomes the norm. That's not a risk worth taking.