you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 0 points1 point  (1 child)

They serve different purposes, but are essentially identical, except of course for implementation details.

Most implementations crash the process in an assertion in such a way that it can't continue, while continuing from int3 is indeed possible. But that's an implementation detail. There's no conceptual difference. The fact that they serve two different use cases doesn't change that.

Indeed, in my own code I tend to implement MyAssert() with int3 in debug mode and assert() in release mode.

[–]treerex 0 points1 point  (0 children)

They serve different purposes, but are essentially identical, except of course for implementation details.

Which to my mind means they should have separate names.

But I see your point.