In my opinion, there are two kinds of dead ends:
1) Forgetting an item. Ideally this can be avoided by letting the player go back for it, but obviously, in some situations it just doesn't make sense. I'm okay with this kind of dead end, since it's usually fairly obvious that you're entering an area that you might not be able to return, so you can leave a save behind. A good example is King's Quest 3. You know that once you get on the boat, you won't be returning to that area.
2) Doing something wrong. This is, in my opinion, a much worse dead end, and should be avoided whenever possible, mostly because these are usually extremely difficult if not impossible to notice ahead of time. Failing to save the rat from the cat in King's Quest V is one thing. Obviously you were supposed to save her. Feeding the pie to the eagle is another. There's no indication that you did anything wrong, and even when you reach the yeti, it's such an obscure solution that you're unlikely to think "If only I still had that pie!"
In short: i think dead ends should be avoided, but not at the cost of story or logic, but there should always be some sort of indicator that you might want to leave a save behind.