Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: 5.8: LTO exposes some new issues
- X-seq: zsh-workers 46274
- From: Peter Stephenson <p.w.stephenson@xxxxxxxxxxxx>
- To: Zsh hackers list <zsh-workers@xxxxxxx>
- Subject: Re: 5.8: LTO exposes some new issues
- Date: Tue, 28 Jul 2020 09:25:24 +0100 (BST)
- Importance: Medium
- In-reply-to: <20200728075343.2cfb1ebf@tarpaulin.shahaf.local2>
- List-help: <mailto:zsh-workers-help@zsh.org>
- List-id: Zsh Workers List <zsh-workers.zsh.org>
- List-post: <mailto:zsh-workers@zsh.org>
- List-unsubscribe: <mailto:zsh-workers-unsubscribe@zsh.org>
- Mailing-list: contact zsh-workers-help@xxxxxxx; run by ezmlm
- References: <CABB28CwZXqp6AEr1Gnk_VFBOqeFNhPVnUnTJGTae=ePkqeMFkw@mail.gmail.com> <ca26b639-1878-4e72-9fad-a4037912038a@www.fastmail.com> <CAH+w=7aCiU6ZAeh1JwRg+b+A=WrFTz4_8st9_UXOy_VYZ9M77Q@mail.gmail.com> <CABB28CxSD5w-SY-iCVYuQ4kJfBpNJOWhpk4HOrS1DNPfMVztgw@mail.gmail.com> <CAH+w=7Z0oDO18u7uRVoOhjG0-0ydvi65zt2mMHD_wb636C9F1w@mail.gmail.com> <35bf1c7b-163f-4baf-9d5a-c1d7e72459ec@www.fastmail.com> <CABB28Cxo3HAvDf-MhpRyNVuK_TjNXpT+nhfWsSax=BK8+RTUhQ@mail.gmail.com> <CAN=4vMoe4z=QqGK6FOxqo4FBYXj7oOU2NQJNk58iqtXR9agk1Q@mail.gmail.com> <CAN=4vMpxGgZTcvhmqjzvNFvybqiJTqjTZvs+Ky17F9=7OxU0QA@mail.gmail.com> <20200728075343.2cfb1ebf@tarpaulin.shahaf.local2>
- Sender: zsh-workers@xxxxxxx
> On 28 July 2020 at 08:53 Daniel Shahaf <d.s@xxxxxxxxxxxxxxxxxx> wrote:
> Roman Perepelitsa wrote on Mon, 27 Jul 2020 14:19 +0200:
> > +++ b/Src/zsh.h
> > @@ -1205,9 +1207,15 @@ struct hashtable {
> > -#ifdef HASHTABLE_INTERNAL_MEMBERS
> > - HASHTABLE_INTERNAL_MEMBERS /* internal use in hashtable.c */
> > -#endif
> > + /* HASHTABLE INTERNAL MEMBERS */
> > + ScanStatus scan; /* status of a scan over this hashtable */
> > +
> > +#ifdef ZSH_HASH_DEBUG
> > + /* Members of struct hashtable used for debugging hash tables */ \
> > + HashTable next, last; /* linked list of all hash tables */ \
> > + char *tablename; /* string containing name of the hash table */ \
> > + PrintTableStats printinfo; /* pointer to function to print table stats */
> > +#endif /* !ZSH_HASH_DEBUG */
> > };
>
> Thanks for looking into this.
>
> It's clearly correct, but as written, the patch loses the distinction
> that these members are private to hashtable.c and should not be accessed
> by other parts of the code. Could you address that, please? If
> there's an easy way to have the compiler enforce this restriction,
> great; else, we can at least add a comment.
One way is to have a "struct { ... } private" substructure,
which it makes it clear what's going on within the code (though comments
are obviously useful, too).
pws
Messages sorted by:
Reverse Date,
Date,
Thread,
Author