I thought `| should keep the order when used on arrays:
Pike v7.3 release 62 running Hilfe v3.5 (Incremental Pike Frontend)
> ({1,2,3}) | ({2,4,1,17});
(1) Result: ({ /* 5 elements */
3,
2,
4,
1,
17
})
Looks like it keeps the order in the second array, but the remaining
elements in the first are swapped in this case. I furthermore expected
the elements in the first array to remain unchanged with precedence
over those in the second, since that makes it behave more consistently
when used as |=, in which case all the elements in the left operand
would remain on the same indices.
Wasn't this discussed and supposedly fixed some time ago (half a year
or so)?