File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -806,6 +806,16 @@ public:
806806 {
807807 objectStart();
808808 jsonProperties(d);
809+ if (d.members)
810+ {
811+ propertyStart(" members" );
812+ arrayStart();
813+ foreach (member; (* d.members))
814+ {
815+ member.accept(this );
816+ }
817+ arrayEnd();
818+ }
809819 objectEnd();
810820 }
811821
Original file line number Diff line number Diff line change 1+ /*
2+ REQUIRED_ARGS: -Xf- -o-
3+ PERMUTE_ARGS:
4+ TEST_OUTPUT:
5+ ----
6+ [
7+ {
8+ "kind" : "module",
9+ "file" : "compilable$?:windows=\\|/$json18518.d",
10+ "members" : [
11+ {
12+ "kind" : "template",
13+ "protection" : "public",
14+ "line" : $n$,
15+ "char" : $n$,
16+ "name" : "Mix",
17+ "parameters" : [
18+ {
19+ "name" : "T",
20+ "kind" : "type"
21+ }
22+ ],
23+ "members" : [
24+ {
25+ "name" : "mixmember",
26+ "kind" : "variable",
27+ "line" : $n$,
28+ "char" : $n$,
29+ "type" : "T"
30+ }
31+ ]
32+ },
33+ {
34+ "name" : "S",
35+ "kind" : "struct",
36+ "protection" : "public",
37+ "line" : $n$,
38+ "char" : $n$,
39+ "members" : [
40+ {
41+ "name" : "Mix!int",
42+ "kind" : "mixin",
43+ "protection" : "public",
44+ "line" : $n$,
45+ "char" : $n$,
46+ "members" : [
47+ {
48+ "name" : "mixmember",
49+ "kind" : "variable",
50+ "protection" : "public",
51+ "line" : $n$,
52+ "char" : $n$,
53+ "deco" : "i",
54+ "originalType" : "T",
55+ "offset" : 0
56+ }
57+ ]
58+ }
59+ ]
60+ }
61+ ]
62+ }
63+ ]
64+ ----
65+
66+ https://github.com/dlang/dmd/issues/18518
67+ */
68+
69+ mixin template Mix(T)
70+ {
71+ T mixmember;
72+ }
73+
74+ struct S
75+ {
76+ mixin Mix! int ;
77+ }
You can’t perform that action at this time.
0 commit comments