Sorry, I thought I was testing with your new test in this PR, but I wasn't.  

It does work to replace

```
obj[()] = obj._result
```

with 

```
obj.data = obj._result.data
```

in the contiguous case.

So, maybe we could do:

```
                    if obj.flags['C_CONTIGUOUS']:
                        obj.data = obj._result.data
                    else:
                        obj[()] = obj._result
```

It makes the contiguous case fast, because it just moves the data "pointer", and does the re-laying-out in the case of the noncontiguous array.