CodeQL library for C#
codeql/csharp-all 0.7.5 ( 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 )