herd / herdtools7

The Herd toolsuite to deal with .cat memory models (version 7.xx)
Other
215 stars 54 forks source link

[herd] Systematic delaying of failures. #886

Closed maranget closed 1 month ago

maranget commented 1 month ago

The first phases of herd should behave as follows:

When some operation fails by raising some exception, the general rule is to delay the failure, hoping that the corresponding candidate execution will be eliminate when solving equations.

However, this behaviour may complicate debugging. Hence the command line option -debug exception replace it with immediately raising the exception.

This PR generalises the expected behaviour.

Notice that exceptions used for controlling herd engine (Undetermined, Contradiction and Timeout) follow their own rules

maranget commented 1 month ago

Quick merge of this simple PR. The problem fixed has been discovered while debugging the asl-vmsa branch.