Mailing-List: contact cygwin-apps-help AT sourceware DOT cygnus DOT com; run by ezmlm Sender: cygwin-apps-owner AT sourceware DOT cygnus DOT com List-Subscribe: List-Archive: List-Post: List-Help: , Delivered-To: mailing list cygwin-apps AT sources DOT redhat DOT com Date: Fri, 19 Jan 2001 23:29:50 -0600 Message-ID: <3A69224E.FAB83B84@qwest.net> From: "AJ Reins" To: cygwin-apps AT cygwin DOT com X-Mailer: Mozilla 4.76 [en] (Win95; U) X-Accept-Language: en MIME-Version: 1.0 Subject: Re: libreadline.dll.a missing functions. References: <3A661B21 DOT AA1A4875 AT yahoo DOT com> <3A662B83 DOT C3906A81 AT ece DOT gatech DOT edu> <3A674EC8 DOT 489392B4 AT ece DOT gatech DOT edu> <3A679E0D DOT EA1C4C27 AT yahoo DOT com> <3A67B56E DOT C01AF097 AT ece DOT gatech DOT edu> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit "Charles S. Wilson" wrote: > > Earnie Boyd wrote: > > > > > I was testing configurations of bash-2.04 and decided to try the > > > > > cygreadline.dll. > > [snip] > > > > rl_set_screen_size() is declared in rlprivate.h. It is not supposed to > > > be an external entry point; that's why it is not exported in the dll. > > > It is defined in terminal.c but is not marked 'static' there, presumably > > > because other, internal-to-readline functions call it -- but that > > > non-static designation means that is is exposed in the static library > > > and in unix shared librarys. Just not dll's. However, I can't find > > > *any* other reference to that function, other than the two I just > > > mentioned. So, exteranl apps are not supposed to use > > > rl_set_screen_size(), and readline itself never calls the function. I > > > think rl_set_screen_size() is dead code. > > > > > > What package are you compiling that wants 'rl_set_screen_size()" ? > > > > > > > See the first sentence. ;) > > Doh! > > Well, I poked around in the bash source code, and sure enough -- it > looks like the bash people are calling functions they shouldn't. From > rlprivate.h: > > /* NOTE: Functions and variables prefixed with `_rl_' are > pseudo-global: they are global so they can be shared > between files in the readline library, but are not intended > to be visible to readline callers. */ > > When I wrote the readline.def file, I deliberately did NOT include (a) > any var or function declared in rlprivate.h (except for > rl_untranslate_keyseq, which is ALSO declared in readline.h), nor (b) > any var or function beginning with _rl_. > > You had mentioned, Earnie, that there were other undefined functions. > Can you give me the whole list? I suspect that they also fall into the > categories above, and that they represent a bug in bash. Either bash > should not call library-internal functions, or readline should export > those functions. > > --Chuck This might be the reason that the 'bash people' (which are the same as the 'readline people') put a version of readline inside the bash source, and that this version of the readline library is slightly different than the version that is external? -- AJ Reins - tbispqwest.net -or- tbispmy-deja.com Warning label I would like to see on software: "Before using, read instructions. If you do not understand or cannot read, do no use this product."