On Wednesday, 10 June 2015 at 18:13:53 UTC, Dave wrote:
Another backwards annotation is nothrow. I don't really care if something doesn't throw, I care when it throws, because then I have to do
something (or my program may crash unexpectedly).

I recently debugged such "no crash" bug: the code decided that the program shouldn't crash and caught exception and silenced it, the program indeed didn't crash, but misbehaved. It was a critical bug, which blew into the face of the customer, there was nothing in the log, we had to connect to the customer's database and debugged with catching first chance exceptions. What we should do if we had no access to the customer's database? If the code wouldn't catch the exception, the application would crash and we would have an entry in the log and debugged it quickly. That's how nothrow works in practice.

Reply via email to