Oh yeah - what may not happen is the following hypothetical example
1. route=mtb (set line) (can be merged and reversed)
2. highway=x (set road - is not reversed merged - maybe because of oneway tag)
3. route=hiking (set line - however because the 2. highway was not reversed, while the 1 route was reversed - this is now using a different direction than 1).
1. and 3. while being possible to be reversed - have to be reversed identical. (because in my style mtb routes are on the right side, hiking routes on the left side). 2. can be reversed because it is in the center. I do not are if 1. and 3 are exchanged. Meaning it is fine if they are left or right, but they are not allowed to be both left or both right. So they can be reversed, but if 1. is reversed, 3 had to be reversed to. I have quite a few such cases in my style and as long as the reversing is consistent, and not dependent on the order in the style, this is fine.
e.g this could create a problem?
1. route=mtb (can be reversed)
2. highway=oneway (downhill only at high priority) [set oneway=1} continue (sometimes with, sometimes without actions) - cannot be reversed because of oneway.
3. {delette oneway if for 2. continue with actions was used I use intermediary keys to restore an actual oneway should there have been one.}
3. route=hiking (can be reversed - but if it is reversed also route=mtb has to be reversed).