When -no-canonical-prefixes option is used and argv0 contains only
a program name, we need to do a PATH lookup to get an executable path,
otherwise the return value won't be a valid path and any subsequent
uses of it (e.g. invoking -cc1) will fail with an error.
This patch fixes PR9576.
What if "clang" is in the current directory? Presumably that should then be preferred over PATH.. will we get that right with this patch?
Another way would be to check access() on Argv0, which is what we do when trying to execute anyway. Is there any downside to that?