Jump to page: 1 2
Thread overview
[Issue 15371] __traits(getMember) should bypass the protection
Nov 21, 2015
bb.temp@gmx.com
Dec 01, 2015
bb.temp@gmx.com
Jan 19, 2016
b2.temp@gmx.com
May 31, 2016
b2.temp@gmx.com
Jun 01, 2016
Jacob Carlborg
Aug 12, 2016
Martin Nowak
Aug 27, 2016
b2.temp@gmx.com
Aug 30, 2016
b2.temp@gmx.com
Apr 24, 2017
b2.temp@gmx.com
Oct 22, 2018
Walter Bright
Mar 26, 2019
RazvanN
Apr 10, 2019
Dlang Bot
Apr 12, 2019
Dlang Bot
Jan 17, 2021
Dlang Bot
November 21, 2015
https://issues.dlang.org/show_bug.cgi?id=15371

--- Comment #1 from bb.temp@gmx.com ---
something like that:

https://github.com/Blumerline/dmd/commit/53419e71b93b0870574d93cbb83ebb7ccbb5e325

or maybe change in the Scope struct the module that indicates where the template should be instantiated (since it function that contains traits code will always be a template).

--
December 01, 2015
https://issues.dlang.org/show_bug.cgi?id=15371

--- Comment #2 from bb.temp@gmx.com ---
https://github.com/D-Programming-Language/dmd/pull/5289


On n'est jamais mieux servi que par soi-même.

--
January 19, 2016
https://issues.dlang.org/show_bug.cgi?id=15371

--- Comment #3 from b2.temp@gmx.com ---
Also if a template would be instantiated in the module that use it...

--
May 31, 2016
https://issues.dlang.org/show_bug.cgi?id=15371

--- Comment #4 from b2.temp@gmx.com ---
In the meantime, when the trait code is for a struct or a class it's possible to use its '.tupleof' property. It's not affected by the visibility.

Instead of all member:

    import std.meta: aliasSeqOf;
    import std.range: iota;
    foreach(i;  aliasSeqOf!(iota(0, T.tupleof.length)))
    {
        alias MT = typeof(T.tupleof[i]);
        ...
    }
June 01, 2016
https://issues.dlang.org/show_bug.cgi?id=15371

Jacob Carlborg <doob@me.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |doob@me.com

--- Comment #5 from Jacob Carlborg <doob@me.com> ---
A pointer can be used as well to bypass the protection. It works for other symbols than fields.

--
August 12, 2016
https://issues.dlang.org/show_bug.cgi?id=15371

Martin Nowak <code@dawg.eu> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |code@dawg.eu

--- Comment #6 from Martin Nowak <code@dawg.eu> ---
(In reply to b2.temp from comment #3)
> Also if a template would be instantiated in the module that use it...

Well, there are plenty of reasons to not do that, foremost being that template
instantiations should be independent of instantiation scope.
That's why we have mixin template as an alternative.

--
August 27, 2016
https://issues.dlang.org/show_bug.cgi?id=15371

--- Comment #7 from b2.temp@gmx.com ---
related https://issues.dlang.org/show_bug.cgi?id=10267

--
August 30, 2016
https://issues.dlang.org/show_bug.cgi?id=15371

b2.temp@gmx.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |WONTFIX

--- Comment #8 from b2.temp@gmx.com ---
With the direction took by https://github.com/dlang/dmd/pull/6078 this improvement is now impossible.

--
April 24, 2017
https://issues.dlang.org/show_bug.cgi?id=15371

b2.temp@gmx.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|WONTFIX                     |---

--
October 22, 2018
https://issues.dlang.org/show_bug.cgi?id=15371

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           See Also|                            |https://issues.dlang.org/sh
                   |                            |ow_bug.cgi?id=19326

--
« First   ‹ Prev
1 2