delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/1997/01/30/12:12:19

From: shankar AT chromatic DOT com (Shankar Unni)
Subject: <string.h> .vs. <String.h>
30 Jan 1997 12:12:19 -0800 :
Approved: cygnus DOT gnu-win32 AT cygnus DOT com
Distribution: cygnus
Message-ID: <32F0EDF7.6942.cygnus.gnu-win32@chromatic.com>
Mime-Version: 1.0
X-Mailer: Mozilla 3.0Gold (X11; I; SunOS 5.5.1 sun4u)
Original-To: gnu-win32 AT cygnus DOT com
Original-Sender: owner-gnu-win32 AT cygnus DOT com

There are a couple of reasons why we have this problem:

Technically, the ANSI C++ committee is off the hook, because they have
mandated that C++ include files be included simply as <String>,
<iostream>, etc., and so it should be possible to distinguish between
<String> and <string.h>.

In practice, however, 100% of all C++ installations still ship their
files using a .h suffix, and we have a clash. Remember that ANSI C++
still grandfathers in the <string.h> file from C, so we have a situation
in which C++ implementations have to ship both files, and given the
case-insensitive nature of many file systems, they have a problem on
their hands.

This situation won't fix itself until either the String name is changed
(very, very unlikely), or until GNU C++ moves to using the <String>
notation for all its C++ header filenames (which will hopefully be
sooner - there are ways to minimise the pain of migration when this
happens).

-- 
Shankar Unni                                  shankar AT chromatic DOT com
Chromatic Research                            (408) 752-9488
-
For help on using this list, send a message to
"gnu-win32-request AT cygnus DOT com" with one line of text: "help".

- Raw text -


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