Thread overview
[Issue 16495] __traits(fullyQualifedName) instead of std.traits.fullyQualifiedName
Feb 13, 2019
Basile-z
Feb 13, 2019
Stefan Koch
Feb 13, 2019
Basile-z
Mar 21, 2020
Basile-z
Dec 17, 2022
Iain Buclaw
Dec 17, 2022
Walter Bright
Dec 17, 2022
Walter Bright
Dec 18, 2022
Dlang Bot
Jan 15, 2023
Walter Bright
Jan 22, 2023
Dlang Bot
February 13, 2019
https://issues.dlang.org/show_bug.cgi?id=16495

Basile-z <b2.temp@gmx.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |b2.temp@gmx.com
           Hardware|x86_64                      |All
                 OS|Windows                     |All

--- Comment #1 from Basile-z <b2.temp@gmx.com> ---
I've added and tested such a new __trait. There are problems when using the raw
output as produced by the compiler (Type.toPrettyChars(true) or
DSymbol.toPrettyChars)

1. complex combinations of type qualifiers are not like expected by phobos
unittests
2. template declarations include the constraints
3. handling of single template parameter (so w/o parens) is different

It's probable that toPrettyChars uses the header gen, which is not adapted to produce the fqn. It's rather used to format the errors.

But 80% of the tests pass.

--
February 13, 2019
https://issues.dlang.org/show_bug.cgi?id=16495

Stefan Koch <uplink.coder@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |uplink.coder@gmail.com

--- Comment #2 from Stefan Koch <uplink.coder@gmail.com> ---
I've already tried my hand at this.
https://github.com/UplinkCoder/dmd/tree/fqn_trait
please take what you like from this branch.

--
February 13, 2019
https://issues.dlang.org/show_bug.cgi?id=16495

--- Comment #3 from Basile-z <b2.temp@gmx.com> ---
Thanks I was sure you did something (i remember you made a video about the fqn
perfs). I'm no surprised to see you didn't use the toPrettyChar but otherwise i
see a difference in the way you get the symbol from the arg (for now I do like
this
https://github.com/Basile-z/dmd/commit/53f87a8575735d17b1a07a5e7d11ce2610d1b505#diff-ebdced6ed94b108576dceefdf3c3e021R1803)
and i suspect this wan't working in some cases.

So finally why didn't you make a PR ?

--
March 21, 2020
https://issues.dlang.org/show_bug.cgi?id=16495

Basile-z <b2.temp@gmx.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|b2.temp@gmx.com             |

--
December 17, 2022
https://issues.dlang.org/show_bug.cgi?id=16495

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P1                          |P4

--
December 17, 2022
https://issues.dlang.org/show_bug.cgi?id=16495

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla@digitalmars.com

--- Comment #4 from Walter Bright <bugzilla@digitalmars.com> ---
fullyQualifiedName implementation:

https://github.com/dlang/phobos/blob/master/std/traits.d#L565

--
December 17, 2022
https://issues.dlang.org/show_bug.cgi?id=16495

--- Comment #5 from Walter Bright <bugzilla@digitalmars.com> ---
There might be a way to use a modified toPrettyChars to produce the same thing. Basile-z can you be more specific in the differences?

--
December 18, 2022
https://issues.dlang.org/show_bug.cgi?id=16495

Dlang Bot <dlang-bot@dlang.rocks> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull

--- Comment #6 from Dlang Bot <dlang-bot@dlang.rocks> ---
@WalterBright created dlang/dmd pull request #14711 "fix Issue 16495 - __traits(fullyQualifedName) instead of std.traits.f…" fixing this issue:

- fix Issue 16495 - __traits(fullyQualifedName) instead of
std.traits.fullyQualifiedName

https://github.com/dlang/dmd/pull/14711

--
January 15, 2023
https://issues.dlang.org/show_bug.cgi?id=16495

Walter Bright <bugzilla@digitalmars.com> changed:

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

--
January 22, 2023
https://issues.dlang.org/show_bug.cgi?id=16495

Dlang Bot <dlang-bot@dlang.rocks> changed:

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

--- Comment #7 from Dlang Bot <dlang-bot@dlang.rocks> ---
dlang/dmd pull request #14711 "fix Issue 16495 - __traits(fullyQualifedName) instead of std.traits.f…" was merged into master:

- 4dc346fc31d69326c9c7d780c57c92c3a7fa9efe by Walter Bright:
  fix Issue 16495 - __traits(fullyQualifedName) instead of
std.traits.fullyQualifiedName

https://github.com/dlang/dmd/pull/14711

--