From owner-freebsd-chat Tue Sep 8 13:25:40 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id NAA06480 for freebsd-chat-outgoing; Tue, 8 Sep 1998 13:25:40 -0700 (PDT) (envelope-from owner-freebsd-chat@FreeBSD.ORG) Received: from cons.org (knight.cons.org [194.233.237.86]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id NAA06469 for ; Tue, 8 Sep 1998 13:25:32 -0700 (PDT) (envelope-from cracauer@cons.org) Received: (from cracauer@localhost) by cons.org (8.8.8/8.7.3) id WAA13141; Tue, 8 Sep 1998 22:25:15 +0200 (CEST) Message-ID: <19980908222515.A13117@cons.org> Date: Tue, 8 Sep 1998 22:25:15 +0200 From: Martin Cracauer To: Terry Lambert , Martin Cracauer Cc: freebsd-chat@FreeBSD.ORG Subject: Re: Standardizing a BSD/ELF ABI... References: <19980908172807.A12626@cons.org> <199809081902.MAA05059@usr07.primenet.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.93.1i In-Reply-To: <199809081902.MAA05059@usr07.primenet.com>; from Terry Lambert on Tue, Sep 08, 1998 at 07:02:56PM +0000 Sender: owner-freebsd-chat@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org [Moved to -chat] Well, I have to admit your examples prove you right. Is there any example code or literature about linking schemes that check that the size of data fields at runtime is the same at link time? In <199809081902.MAA05059@usr07.primenet.com>, Terry Lambert wrote: > > That's all? I'm afraid I have to rate that as lame :-) > > I did say "technically"... > > > You are using data from a library or provide data to a library that is > > not specified in the interface. > > The old libtermcap used to require exactly this for lines, columns, > and I-forget-what-character-array. > > The use of sys_errlist directly (allowed unde POSIX) instead of using > strerror(3) falls into this category, and counts as a break between > versions of RedHat releases, as do a number of libvga accesses. > > > > It could have been declared in an interface file with a certain size, > > in that case, you wouldn't be able to compile the pieces of code that > > don't fit together. > > It wasn't, and in any case, the dynamic linker would have to examine > the difference, since it would be between shared library revisions. > > > > Or you declare a pointer only, in that case you > > can't make any assumptions about the size, all you can do is to call a > > function in the same unit the data has been declared in, which knows > > the real size. So no problem either way as long as you strickly > > implement and obey to the published interfaces. > > You are assuming that the people writing this code are professional > programmers (who are paid to due grunt work), as opposed to students. > > > Terry Lambert > terry@lambert.org > --- > Any opinions in this posting are my own and not those of my present > or previous employers. -- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Martin Cracauer http://www.cons.org/cracauer Tel.: (private) +4940 5221829 Fax.: (private) +4940 5228536 Paper: (private) Waldstrasse 200, 22846 Norderstedt, Germany To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-chat" in the body of the message