Literalmente o erro se refere ao primeiro argumento, que deve ser um ponteiro, seria resolvido antecedendo a variável por &, dessa forma:
Código:
memcpy(&s->d[j],...
Porém provavelmente irá gerar um erro de memória por apontar para um endereço inválido, devido cálculo matemático feito no segundo argumento, que também deveria ser um ponteiro para double, portanto o calculo que efetuou não vai alterar o dado e sim o ponteiro (a não ser que este seja sua intenção)!
Talvez o que você esteja procurando fazer seja resolvido com uma simples atribuição:
Código:
s->d[j] = *((double*)bdata + 64 + (8 * j));
At.te,