Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Feb 2008 23:58:55 -0500 (EST)
From:      Daniel Eischen <deischen@freebsd.org>
To:        Garrett Wollman <wollman@hergotha.csail.mit.edu>
Cc:        arch@freebsd.org
Subject:   Re: Cleaning up FILE in stdio..
Message-ID:  <Pine.GSO.4.64.0802262351060.11586@sea.ntplx.net>
In-Reply-To: <200802262251.m1QMp7bV021709@hergotha.csail.mit.edu>
References:  <200802262251.m1QMp7bV021709@hergotha.csail.mit.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 26 Feb 2008, Garrett Wollman wrote:

> In article <200802261524.30384.jhb@FreeBSD.org> you write:
>
>> This is assuming that the contents and layout of FILE are not a
>> public ABI (i.e. we malloc the things internally and consumers should
>> just treat the pointer value as a cookie and not grub around in the
>> internals).
>
> Most interpreted languages grub around in the internals, as
> (historically) do a number of <stdio.h> macros.  Historically Emacs
> did so as well (I suppose you can call it an interpreted language).

Yech.  I also forgot about the macros in <stdio.h>, like __sfeof()
and friends.

>> Comments?
>
> I think you have the right idea but this will break the ABI in a way
> that can't be fudged with symbol versioning.

Well, you can if you add compat symbols for all functions with FILE
as an argument.

I'd like us to say that the innards of FILE are not part of our
ABI, but we would still have to do something to keep at least
enough of the ABI for any macros.

-- 
DE



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.64.0802262351060.11586>