delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/01/24/13:37:20

From: ndm AT shore DOT net (Norman D. Megill)
Newsgroups: comp.os.msdos.djgpp
Subject: Re: djgpp loses characters when pasting to DOS
Organization: Shore.Net; a service of Eco Software, Inc. (info AT shore DOT net)
Lines: 69
Message-ID: <78fodb$9vi@northshore.shore.net>
References: <Pine DOT SUN DOT 3 DOT 91 DOT 990124154845 DOT 25846A-100000 AT is>
Date: 24 Jan 1999 13:22:35 -0500
NNTP-Posting-Host: 192.233.85.1
X-Complaints-To: abuse AT shore DOT net
X-Trace: news.shore.net 917202156 192.233.85.1 (Sun, 24 Jan 1999 13:22:36 EDT)
NNTP-Posting-Date: Sun, 24 Jan 1999 13:22:36 EDT
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

In article <Pine DOT SUN DOT 3 DOT 91 DOT 990124154845 DOT 25846A-100000 AT is>,
Eli Zaretskii  <djgpp AT delorie DOT com> wrote:
>
>On Sun, 24 Jan 1999, Norman D. Megill wrote:
>
>> > Windows doesn't care whether it's AS.EXE or as.exe or aS.eXe--all file 
>> > operations are case insensitive.
>> 
>> Maybe standard Windows utilities, but the OS itself definitely does care -
>> that mere fact that the it's displayed in upper case in one instance and
>> in lower case in the other means the OS has internally distinguished them. 
>
>You are confusing ``display'' and ``care''.
>
>Indeed, Windows sometimes (but not always!) displays the file names as
>they are recorded in the directory.  But it doesn't ``care'' about the
>case, in the sense that the file will be found and operated upon no matter
>what the case is. 
>
>> It is applications that may or may not distinguish them, depending on how
>> they are written.  E.g.: My gnu port of "ls" shows: 
>> 
>> D:\mm>ls *.M
>> MLADEN.M  WOS.M
>>
>> D:\mm>ls *.m
>> dan.m           e.m             miscellanous.m  mladen2.m
>
>This isn't the DJGPP port of `ls', right?  Because the DJGPP port 
>would have shown you all the *.m and *.M files in the second case (it 
>assumes that since you didn't use the upper-case explicitly, you don't 
>care about the case).  It would have also downcased these names in the 
>second example (unless you explicitly tell it otherwise, by 
>setting FNCASE=y in the environment).
>
>> Indeed this inconsistent treatment drives me nuts.
>
>DJGPP's internals work very hard indeed to try to hide at least some of 
>these inconsistencies from you.  That is another reason to use as many 
>DJGPP-compiled programs as you can.

No, djgpp treats file names inconsistently.  It ignores filename case
sometimes and not others:

D:\r>dir bug

 Volume in drive D has no label
 Volume Serial Number is 63AB-4B3F
 Directory of D:\r

BUG      C             124  01-20-99  6:07a bug.c
         1 file(s)            124 bytes
         0 dir(s)     415,465,472 bytes free

D:\r>gcc bug.c -o bug.exe

D:\r>gcc BUG.c -o bug.exe

D:\r>gcc BUG.C -o bug.exe
gcc.exe: installation problem, cannot exec `cc1plus': No such file or directory
(ENOENT)

While you might argue in favor of this, I would say this cute little
"feature" unnecessarily complicates the rules you have to learn while
creating another trap for the unsuspecting novice who gets BUG.C from a
Windows 3.1 floppy.

--Norm

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019