This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: gcc writing to /dev/null actually writes to /dev/null.exe
- From: Ryan Johnson <ryan dot johnson at cs dot utoronto dot ca>
- To: cygwin at cygwin dot com
- Date: Mon, 09 Sep 2013 13:36:00 -0400
- Subject: Re: gcc writing to /dev/null actually writes to /dev/null.exe
- Authentication-results: sourceware.org; auth=none
- References: <CAJty3Zx2dRRsp31kwN6OGM-mJkGO6YsVVLHg9Y2JDsjH+0op7Q at mail dot gmail dot com>
On 09/09/2013 12:24 PM, Adam Kellas wrote:
Is this a bug which is fixable in Cygwin or just something to be lived with?
% gcc -o /dev/null devnull.c
% ls -ld /dev/null*
crw-rw-rw- 1 dboyce Domain Users 1, 3 Sep 9 09:14 /dev/null
-rwxrwxr-x+ 1 dboyce Domain Users 53827 Sep 9 09:14 /dev/null.exe
% file /dev/null.exe
/dev/null.exe: PE32 executable (console) Intel 80386, for MS Windows
I'm aware of the .exe back story but this should be a special case, I think.
I don't think this is actually cygwin's fault; gcc is just helpfully
(and silently) adding .exe to the requested filename (or maybe ld does
that?). Cygwin file handling wouldn't come into the picture until you
tried to invoke the resulting binary without the .exe extension...
It would probably cause all kinds of trouble to remove the automatic
extension-adding feature entirely, but maybe a case could be made for
not adding .exe to a file name that already exists in the filesystem?
Meanwhile, I've always used `gcc -o- devnull.c >/dev/null' for stuff
like that...
Ryan
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple