@note Any old dictionary present is discarded and replaced with a copy of the new one. The caller still owns val is and responsible for freeing it.
See Implementation
@note Any old dictionary present is discarded and replaced with a copy of the new one. The caller still owns val is and responsible for freeing it.