From: Garance A Drosihn Date: 2003-07-26T12:59:21+09:00 Subject: Re: ruby 1.8.0 preview4 At 7:11 AM +0900 7/26/03, Brian Candler wrote: >On Sat, Jul 26, 2003, Yukihiro Matsumoto wrote: > > |readline.c: In function `readline_readline': >> |readline.c:51: warning: implicit declaration of function `isatty' >> >> Do you mean isatty(3) is not declared in on FreeBSD? > >No, it is declared there. I think the problem is here: > >#ifdef HAVE_UNISTD_H >#include >#endif > >but config.h (via ruby.h) has not been included at that point, >so unistd.h is not being included. FreeBSD does spend some effort to minimize namespace pollution, such that symbols from one include library (such as unistd.h) will not show up when some other library is included, unless the standards say those symbols must show up. And even then, we try to only bring in the symbols that must be brought in, and not the entire include file. So, in other OS's you could very well bring in the symbols you want from unistd.h (or even *all* of unistd.h) even if you never explicitly #include it. -- Garance Alistair Drosehn = gad@gilead.netel.rpi.edu Senior Systems Programmer or gad@freebsd.org Rensselaer Polytechnic Institute or drosih@rpi.edu