delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/1998/04/01/22:54:03

From: fjh AT cs DOT mu DOT OZ DOT AU (Fergus Henderson)
Subject: Re: gcc & g77 trouble with library routines: "linked to missing export CYGWIN.DLL:strlwr"
1 Apr 1998 22:54:03 -0800 :
Message-ID: <19980402055259.54949.cygnus.gnu-win32@murlibobo.cs.mu.OZ.AU>
References: <351CC6D3 DOT 5E47 AT helix DOT nih DOT gov>
Mime-Version: 1.0
To: Wolz AT helix DOT nih DOT gov
Cc: gnu-win32 AT cygnus DOT com, mykrafone AT aol DOT com

On 28-Mar-1998, Wolz <Wolz AT helix DOT nih DOT gov> wrote:
> I prepared the following test program to demonstrate:
> 
> #testc.c
> 
> #include "string.h"
> extern char * strlwr(char *);
> main () {
>   char testchar[]="X";
>   strlwr(testchar);
> }

strlwr() is a non-standard function.
Any programs that use it will not be portable.

My guess as to why it links but won't run is that
the old (b18) cygwin.dll used to export strlwr(),
whereas cygwinb19.dll does not export it, but when
removing the function someone forgot to remove it from
the export list.

> One solution would be to write replacement routines, where necessary.

Right.

But don't call the replacement strlwr(), since names starting with str[a-z]*
are reserved for use by the implementation.  Call it say my_strlwr().

-- 
Fergus Henderson <fjh AT cs DOT mu DOT oz DOT au>  |  "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh>  |  of excellence is a lethal habit"
PGP: finger fjh AT 128 DOT 250 DOT 37 DOT 3        |     -- the last words of T. S. Garp.
-
For help on using this list (especially unsubscribing), 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