* find/tree.c (set_new_parent):
* find/parser.c (various parse functions):
* find/find.c (main):
(default_prints): new function
* find/defs.h (struct predicate): added no_default_print
side_effects are no separated from no_default_print. predicates
which cause side effects should not be reordered (optimized).
predicates which cause printing should have printing turned off.
Printing statements also cause side effects.
The old code tested for this at compile-time,
but SunOS 4.1.4 fchdir can fail at run-time.
* find/defs.h (fchdir): Define to -1 if not available.
* find/defs.h (starting_dir, starting_desc):
Always declare. starting_dir now points to const.
* find/find.c (starting_dir, starting_desc): Likewise.
* find/find.c (starting_dir):
Now "." if starting_desc is nonnegative, for benefit of diagnostics.
(main, process_top_path, process_dir):
If open + fchdir fails, fall back on xgetcwd + chdir.
* find/pred.c (launch): Likewise.