This change introduces a flag in the Pass class to mark passes that have
valid results. The flag is set when the pass is run and cleared if it is
skipped or freed.
The flag allows to avoid verification when it is not possible. With the change more
than 500 failing test now pass in the builds with expensive checks enabled.
I wouldn't put the doxygen comment here (or use end-of-line doxygen generally). Instead see my comment below...