1 // PERMUTE_ARGS: 2 // REQUIRED_ARGS: -D -Dd${RESULTS_DIR}/compilable -o- 3 // POST_SCRIPT: compilable/extra-files/ddocAny-postscript.sh 4 5 module ddoc648; 6 7 /// Mixin declaration 8 mixin template Mixin1() 9 { 10 /// struct S 11 struct S { } 12 } 13 14 /// class A 15 class A 16 { 17 /// field x 18 int x; 19 20 /// no docs for mixin statement (only for expanded members) 21 mixin Mixin1!(); 22 } 23 24 /// class AB 25 class AB 26 { 27 /// field x 28 int x; 29 30 // no docs for mixin or its contents, must be a ddoc comment 31 mixin Mixin1!(); 32 } 33 34 /// Mixin declaration2 35 mixin template Mixin2() 36 { 37 /// struct S2 38 struct S2 { } 39 } 40 41 /// Mixin declaration3 42 mixin template Mixin3() 43 { 44 /// another field 45 int f; 46 47 /// no docs for mixin statement (only for expanded members) 48 mixin Mixin2!(); 49 } 50 51 /// class B1 52 class B1 53 { 54 /// no docs for mixin statement (only for expanded members) 55 mixin Mixin3!(); 56 } 57 58 59 /// Mixin declaration3 60 mixin template Mixin4() 61 { 62 /// another field 63 int f; 64 65 // no docs at all for non-ddoc comment 66 mixin Mixin2!(); 67 } 68 69 /// class B2 70 class B2 71 { 72 /// no docs for mixin statement (only for expanded members) 73 mixin Mixin4!(); 74 } 75 76 /// no docs for mixin statement (only for expanded members) 77 mixin Mixin3!(); 78 79 /// 80 struct TS(T) 81 { 82 mixin template MT() 83 { 84 } 85 86 mixin MT; /// avoid calling semantic 87 88 /// 89 int field; 90 }