This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gcc writing to /dev/null actually writes to /dev/null.exe


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]