or download this
# BSD documentation says 'X' is to be ignored unless
# the operator is '+'. GNU, HP, SunOS and Solaris handle
...
# GNU and SunOS get this wrong;
# Solaris, HP and OpenBSD get it right.
next unless -d $file || grep {$orig {$_} & 1} @ugo
+;