Merge pull request #3609 from mwiebe/fill_struct_from_tuple

Bugfix: Regression when filling struct from tuple
TST: Add test for reduceat ufunc regression on zero-sized array
BUG: Fix ufunc.reduceat regression with empty index (gh-2892)
TST: Change reduceat empty test to use i4 indices

On 32-bit platforms, was failing in casting the test
i8 index to i4. It may be desirable to allow this
in reduceat, but that change is independent of this pull
request.
TST: Add test for additional ufunc.reduceat empty parameter case
BUG: Fix additional zero-sized index case for ufunc.reduceat