On Thursday, 5 January 2017 at 09:49:16 UTC, Jonathan M Davis wrote:
On Thursday, January 05, 2017 04:43:12 Basile B. via Digitalmars-d-announce wrote:
On Wednesday, 4 January 2017 at 19:22:33 UTC, Andrei Alexandrescu

> We release a brief Vision document summarizing the main > goals we plan to pursue in the coming six months. This half > we are focusing on three things: safety, lifetime > management, and static introspection.
> https://wiki.dlang.org/Vision/2017H1
> Andrei

quote from the document:
> Redoing compiler code into lowerings and __traits-based > introspection that leverage client code, thus moving > compiler smarts into simpler library facilities

To simplify introspection with library traits that use the compiler "__traits()" someone has to remove the restrictions related to protection attributes. This is not a new topic. Without this, the new library traits won't work well and people won't use them.

IIRC, it was already agreed that they had to be removed and would be soon, but we couldn't do it right away either because of code breakage or because it was a point release that was trying to get out the door. I'm thinking that it's supposed to be fixed in 2.073, but I'm not 100% sure..

- Jonathan M Davis

I don't known what did you decide in intern but when the discussion between users was hot (just after version 2.071.1 I think) I've proposed that: https://github.com/BBasile/DIPs/blob/3d5e3f81c541c6e23c69555a230b4d42a7bb6de6/DIPs/DIP8484.md

There's no need to DIP this, the idea is just to add an optional parameter that remove the compliance with the protection attributes. Anyway if this or any alternative is planned for the next version that's perfect.

Reply via email to