code: private static Set<String> findPossibleCatchSignatures(List<CatchInfo> infos, int pc) {
          Set<String> catchTypes = new HashSet<>(6);
          ListIterator<CatchInfo> it = infos.listIterator(infos.size());
          while (it.hasPrevious()) {
              CatchInfo ci = it.previous();
              if ((pc >= ci.getStart()) && (pc < ci.getFinish())) {
                  catchTypes.add(ci.getSignature());
              } else {
                  break;
              }
          }
  
          return catchTypes;
      }
docs: returns an array of catch types that the current pc is in
  
  @param infos the list of catch infos for this method
  @param pc    the current pc
  @return an set of catch exception types that the pc is currently in