I got this error trying to build gcc using cygwin 1.5.11. This problem is easily reproduced:
X:> touch Tfoo.exe X:> chmod a+rx Tfoo X:> ls -l Tfoo -rwxrwxrwx 1 earlch mkpasswd 0 Oct 8 22:08 Tfoo X:> mv Tfoo foo mv: `Tfoo' and `foo' are the same file
Huh?
Digging deeper, I see that ls uses stat(), which eventually gets to stat_worker() which uses build_fh_name() passing it the suffix table:
suffix_info stat_suffixes[] = { suffix_info ("", 1), suffix_info (".exe", 1), suffix_info (NULL) };
The function build_fh_name() uses path_conv and gives it the suffix table to use to find the target.
OTOH rename() goes straight to using path_conv without a suffix table, and fails to find the file.
Should rename() pass stat_suffixes[] to the path_conv ctor?
Is there some subtle reason for suffixes only to be passed for stat() processing?
Earl
-- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/