Your comments

This is planned, but won't happen anytime soon. The reason is that it makes shader code writing quite complex, at least if it needs to look good, which I'm trying to stick to at all times.

Sort of duplicate of: https://shaderforge.userecho.com/topic/333322-stat...
That's strange. Were the objects marked as static?
This shouldn't be an issue. Unity should make it read the semantics, not have silly platform specific naming like this :/
It could simply be that the function needs to be defined before the tessellation passes. Although you should use float3 in DX11 displacement though, that could break it as well

It will take a while. But essentially, you need to move a variable definition up. node_150, in your case, is defined in a limited scope, and something beyond that scope thinks the variable node_150 is defined, while it's not
It should work, but it all depends on what you type in there. You may also not be able to use the code node in the DX11 inputs
Does PS mobile work with texcoord then? Or does that one have to be texcoord0?
You'll have to edit it manually afterwards, moving a single line of code, making sure it's defined before you use it. (I think)
It's an old bug that should go away when the new dependency system is done