docs: public void addCatchClause(TypeId<? extends Throwable> toCatch, Label catchClause) {
          if (catchTypes.contains(toCatch)) {
              throw new IllegalArgumentException("Already caught: " + toCatch);
          }
          adopt(catchClause);
          catchTypes.add(toCatch);
          catches = toTypeList(catchTypes);
          catchLabels.add(catchClause);
      }