On FreeBSD we may not have fdescfs(5) mounted, in which case bash's cmd <(foo) syntax won't work.
In my local test ninja check-profile reports:
diff: /dev/fd/63: No such file or directory diff: /dev/fd/62: No such file or directory diff: /dev/fd/63: No such file or directory diff: /dev/fd/62: No such file or directory
Modify this script to use temp files for diff instead, and then switch to /bin/sh.