Swift, like any other complex tech, has in it good decisions, decisions that could be better and can be fixed over time, decisions restricted by legacy and backward compatibility with an eco-system, and like anything, can be constructively criticized.
I have a hard time, however, accepting arguments like “if you write code without bugs, old unsafe language Swift replaces also does not crash”. This is like saying you don't need seat belts if you never crash your car.