Hi Mikael, > here is a fix for a wrong code issue, where we pass a descriptor with > broken bounds when the actual argument is a transposed array and the > dummy an assumed shape dummy. > The bug comes from the interaction of the transpose optimization, > which creates a descriptor with transposed bounds without copying the > data, and the contiguous optimization, which reuses the descriptor for > passing as argument after the call to internal_pack. > The attached patch makes a copy of the descriptor with the correct > bounds when a transposed scalarization is detected. > > Regression-tested on x86_64-unknown-linux-gnu. > This is not a regression as far as I know, but quite a severe > wrong-code, albeit limited to the corner case of transpose and > assumed shape and contiguous. OK for trunk/4.8/4.7 anyway ?
I would say it's ok for trunk at least. About the branches I'm not sure. Maybe someone else can add an opinion here ... Cheers, Janus