docs: public void returnValue(Local<?> result) {
          if (!result.type.equals(method.returnType)) {
              // TODO: this is probably too strict.
              throw new IllegalArgumentException("declared " + method.returnType
                      + " but returned " + result.type);
          }
          addInstruction(new PlainInsn(Rops.opReturn(result.type.ropType), sourcePosition,
                  null, RegisterSpecList.make(result.spec())));
      }