Again, a very welcome and highly appreciated post, highlighting to me the existance of and difference between "if" and "or".
I won't pretend to understand the meaning of precedence in this context but I don't think that stops me understanding the pertinent points of your post.
That said, looking closely at the if solution I would have thought that would die if the system call actually succeeded. Am I missing something?