      static double mp_vector_lerp(_cimg_math_parser& mp) {
        unsigned int siz = (unsigned int)mp.opcode[2];
        double *ptrd = &_mp_arg(1) + 1;
        const double
          *ptrs1 = &_mp_arg(3) + 1,
          *ptrs2 = &_mp_arg(4) + 1,
          t = _mp_arg(5);
        for (unsigned int k = 0; k<siz; ++k) ptrd[k] = ptrs1[k]*(1-t) + ptrs2[k]*t;
        return cimg::type<double>::nan();
      }
      static double mp_vector_lerp(_cimg_math_parser& mp) {
        unsigned int siz = (unsigned int)mp.opcode[2];
        double *ptrd = &_mp_arg(1) + 1;
        const double
          *ptrs1 = &_mp_arg(3) + 1,
          *ptrs2 = &_mp_arg(4) + 1,
          t = _mp_arg(5);
        for (unsigned int k = 0; k<siz; ++k) ptrd[k] = ptrs1[k]*(1-t) + ptrs2[k]*t;
        return cimg::type<double>::nan();
      }