Doesn't seem like an issue to me, because I'm fairly sure not all events can be halted with the ^ prefix and haltdef to begin with.

I don't really want to surpress error messages, I just want to be able to parse the error message when it occurs and be able to appropriately take action.

Why someone would want to surpress errors goes beyond me, but I'm sure someone has some silly reason to do so.