[Issue 18884] New: getSymbolsByUDA fails on AliasSeq members
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Sun May 20 07:42:59 UTC 2018
https://issues.dlang.org/show_bug.cgi?id=18884
Issue ID: 18884
Summary: getSymbolsByUDA fails on AliasSeq members
Product: D
Version: D2
Hardware: All
OS: All
Status: NEW
Severity: regression
Priority: P1
Component: phobos
Assignee: nobody at puremagic.com
Reporter: elpenguino+D at gmail.com
The following code started failing after DMD 2.078:
--------
unittest {
import std.meta;
import std.traits;
struct X {
alias A = AliasSeq!(ulong, uint);
}
alias x = getSymbolsByUDA!(X, X);
}
--------
DMD 2.080.0 produces this error:
--------
/path/to/dmd.linux/dmd2/linux/bin64/../../src/phobos/std/traits.d(8377): Error:
template `std.meta.Alias` does not match any template declaration
/path/to/dmd.linux/dmd2/linux/bin64/../../src/phobos/std/traits.d(8194): Error:
template instance `std.traits.getSymbolsByUDAImpl!(X, X, "A")` error
instantiating
onlineapp.d(9): instantiated from here: `getSymbolsByUDA!(X, X)`
--------
The flawed line appears to be here: `alias member = Alias!(__traits(getMember,
symbol, names[0]));`
--
More information about the Digitalmars-d-bugs
mailing list