nodes: 0, module; 1, function_definition; 2, function_name:_debug_check; 3, parameters; 4, block; 5, identifier:self; 6, expression_statement; 7, comment:# old_start = 0; 8, expression_statement; 9, expression_statement; 10, for_statement; 11, comment:"""
          Iterates over list checking segments with same sort do not overlap
  
          :raise: Exception: if segments overlap space with same sort
          """; 12, assignment; 13, assignment; 14, identifier:segment; 15, attribute; 16, block; 17, identifier:old_end; 18, integer:0; 19, identifier:old_sort; 20, string:""; 21, identifier:self; 22, identifier:_list; 23, if_statement; 24, comment:# old_start = start; 25, expression_statement; 26, expression_statement; 27, boolean_operator; 28, block; 29, assignment; 30, assignment; 31, comparison_operator:segment.start <= old_end; 32, comparison_operator:segment.sort == old_sort; 33, raise_statement; 34, identifier:old_end; 35, attribute; 36, identifier:old_sort; 37, attribute; 38, attribute; 39, identifier:old_end; 40, attribute; 41, identifier:old_sort; 42, call; 43, identifier:segment; 44, identifier:end; 45, identifier:segment; 46, identifier:sort; 47, identifier:segment; 48, identifier:start; 49, identifier:segment; 50, identifier:sort; 51, identifier:AngrCFGError; 52, argument_list; 53, string:"Error in SegmentList: blocks are not merged"
code: def _debug_check(self):
          """
          Iterates over list checking segments with same sort do not overlap
  
          :raise: Exception: if segments overlap space with same sort
          """
          # old_start = 0
          old_end = 0
          old_sort = ""
          for segment in self._list:
              if segment.start <= old_end and segment.sort == old_sort:
                  raise AngrCFGError("Error in SegmentList: blocks are not merged")
              # old_start = start
              old_end = segment.end
              old_sort = segment.sort