numpy/numpy — pull request #3188 by asford (2013-04-02 06:06:57+00:00)
Title: Fixing numpy.void pickling.

During call to `PyArray_scalar` a `PyVoidScalarObject` is created, and
it's `obval` field set to a newly allocated block of memory of the
correct item size. With a null `base` member, the subsequent call to
`copyswap` can not determine an item size and returns without copying.
Adding direct copy of input data if no `base` is provided, as no swap is
required.

Adding regression test for constructor and original pickle repro case.

Resolves numpy/numpy#1550.