For me there are many real world cases which can't be handled without showing the user a fatal error.
E.g. - the developer asks for an runtime created asset that doesn't exist anymore or there's a condition under which a block of code runs forever (actually in this case the flash runtime stops after 15 seconds of activity and allows the user to kill it but it's still a "crash" insofar as the user is concerned.