CodeQL library for C#
codeql/csharp-all 1.0.1 (changelog, source)

Member predicate BasicBlock::strictlyPostDominates

Holds if this basic block strictly post-dominates basic block bb.

That is, all paths reaching a normal exit point basic block from basic block bb must go through this basic block (which must be different from bb).


int M(string s) {
  try {
    return s.Length;
  finally {

The basic block on line 6 strictly post-dominates the basic block on line 3 (all paths to the exit point of M from return s.Length; must go through the WriteLine call).

predicate strictlyPostDominates(BasicBlock bb)