From: cgf AT cygnus DOT com (Christopher Faylor) Subject: Re: Defines for ctype, sys_nerr, sys_errlist in B21 (0.8/1/1) 2 Jan 1999 18:30:27 -0800 Message-ID: <19990102210329.A2113.cygnus.cygwin32.developers@cygnus.com> References: <368EC2BE DOT 828D9B80 AT cityweb DOT de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii To: Corinna Vinschen , cygwin32-developers AT cygnus DOT com On Sun, Jan 03, 1999 at 02:07:10AM +0100, Corinna Vinschen wrote: >The above new style for defining > > _ctype_ as __imp__ctype, > sys_nerr as __imp__sys_nerr >and sys_errlist as __imp__sys_errlist > >is a pitfall. Every linkage against libraries, compiled >using B20 'til B21 (0.7/...) breaks now, if this libraries >are using the above variables. Especially _ctype_ is more >or less unavoidable. > >For example: >Tcsh is now linkable against libtermcap.a but unfortunately >not against libncurses. > >This behaviour is really annoying, if you haven't the >sources for the library or you have problems in compiling >the library :-( > >I think, this wasn't the intention of this change, was it? The intent of the change was to share common data in the DLL, that being what DLLs are for. It is not always possible to maintain backwards compatibility when we make improvements. In this case, that means that sources will have to be recompiled to link with the latest snapshot. cgf