'Post-CFG-construction.
:return: None'

def _post_analysis(self):

    self._make_completed_functions()
    new_changes = self._iteratively_analyze_function_features()
    functions_do_not_return = new_changes['functions_do_not_return']
    self._update_function_callsites(functions_do_not_return)
    for (_, edges) in self._pending_edges.iteritems():
        for (src_node, dst_node, data) in edges:
            self._graph_add_edge(src_node, dst_node, **data)
    self._remove_non_return_edges()
    CFGBase._post_analysis(self)
    self._detect_loops()
