1.
[dcraw_api.cc:140]: (warning) Size of pointer 'd' used instead of size of its data.
memcpy(h->cam_mul, d->cam_mul, sizeof d->cam_mul);
2.
[dcraw_api.cc:183]: (warning) Size of pointer 'd' used instead of size of its data.
memcpy(h->xtrans, d->xtrans, sizeof d->xtrans);
3.
[dcraw_api.cc:288]: (warning) Size of pointer 'd' used instead of size of its data.
memcpy(h->rgb_cam, d->rgb_cam, sizeof d->rgb_cam);
4.
[dcraw_api.cc:638]: (warning) Size of pointer 'h' used instead of size of its data.
memcpy(h->post_mul, h->pre_mul, sizeof h->post_mul);
These are not pointers (like float *x), they are array (like float x[4]). sizeof does return the correct size of arrays.