public void addExceptionalSuccessor(BlockImpl b,TypeMirror cause){
  if (exceptionalSuccessors == null) {
    exceptionalSuccessors=new HashMap<>();
  }
  Set<Block> blocks=exceptionalSuccessors.get(cause);
  if (blocks == null) {
    blocks=new HashSet<Block>();
    exceptionalSuccessors.put(cause,blocks);
  }
  blocks.add(b);
  b.addPredecessor(this);
}

public void addExceptionalSuccessor ( BlockImpl b , TypeMirror cause ) { if ( exceptionalSuccessors == null ) { exceptionalSuccessors = new HashMap < > ( ) ; } Set < Block > blocks = exceptionalSuccessors . get ( cause ) ; if ( blocks == null ) { blocks = new HashSet < Block > ( ) ; exceptionalSuccessors . put ( cause , blocks ) ; } blocks . add ( b ) ; b . addPredecessor ( this ) ; }
add an exceptional successor .
