This is the mail archive of the mailing list for the glibc project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Y2038: add struct __timespec64

Hi Joseph,

On Wed, 19 Sep 2018 15:00:33 +0000, Joseph Myers
<> wrote :

> On Wed, 19 Sep 2018, Joseph Myers wrote:
> > The bit-fields needs to be *anonymous* for initializers to work as 
> > intended.  It can't have the name tv_pad that it has in this patch, or any 
> > other name, with our without leading underscores.  
> Ignore this, I see you are distinguishing between an internal type here 
> with a named field and a public type with an anonymous field.

Indeed I am, and rather than ignoring your remark, I'll take it as a
sign that my comment is possibly confusing and needs to make it
explicit that there are two types, one private to glibc and one public.

> *But* I wouldn't expect the internal type to be declared in any public 
> header at all.  That is, this should not be a bits/ header at all, not an 
> installed header, because it would only be used in implementation code, 
> not from any public interface.  So you need to rename the header out of 
> the bits/ namespace, which is purely for installed headers, and remove all 
> the #includes from installed headers.


> Regarding the comment you have on this type: 2038, not 2036; things, not 
> tings; don't reference timeval at all (describing timespec in terms of 
> timeval is a very historical way of writing a comment, that may have made 
> sense when timeval was the established type and timespec was the new one, 
> but doesn't make sense for over 20 years now; rather, comments on timeval 
> should describe it as a legacy type, superseded by timespec).

Will fix.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]