Re: Re: [UnixOS2] libc

Stefan Neis <neis-RCUrBZHvLvKSHq+C5vT0LZQlNPQFfrerqZSUQi4AVrg@public.gmane.org> Tue, 24 Jun 2003 18:13:51 +0200 (CEST)
Newsgroups gmane.comp.ide.emx.devel
Message-ID <Pine.GSO.4.21.0306241752200.1316-100000@cdc-ultra4.cdc.informatik.tu-darmstadt.de>
On Tue, 24 Jun 2003, Ilya Zakharevich wrote:

> I do not see how this could be a problem.  First of all, EMX CRT DLL
> has no exports by name, right?  [Can't check it now.]

I think so yes. But (static) libraries typically don't reference DLL
entry points, do they? I think they just reference function names which
get resolved to DLL entry points or whatever at link time?

> The problem with libraries which I meant is that a function could take
> off_t as an argument (or a return value).  If the meaning of off_t
> changes in the calling program, but not in the library (or visa
> versa), this leads to problems which are extremely hard to debug.

Oh, yes. That's something I learned under Solaris and Linux and that's
why I keep saying that following their scheme is not a very good idea.
OTOH, if you want to continue existing libraries without recompilation,
that's impossible to avoid.
Personally, I tend to recommend to recompile everything once and be done
with the problem, instead of fighting with those flags for years (and get
"extremely hard to debug" problems every now and then because some library
you are using was compiled the wrong way...), but I do see your point.

	Regards,
		Stefan
-- 
Micro$oft is not an answer. It is a question. The answer is 'no'.