1 /* TEST_OUTPUT:
2 ---
3 fail_compilation/diag16976.d(44): Error: foreach: key cannot be of non-integral type `float`
4 fail_compilation/diag16976.d(45): Error: foreach: key cannot be of non-integral type `float`
5 fail_compilation/diag16976.d(46): Error: foreach: key cannot be of non-integral type `float`
6 fail_compilation/diag16976.d(47): Error: foreach: key cannot be of non-integral type `float`
7 fail_compilation/diag16976.d(48): Error: foreach: key cannot be of non-integral type `float`
8 fail_compilation/diag16976.d(49): Error: foreach: key cannot be of non-integral type `float`
9 fail_compilation/diag16976.d(50): Error: foreach: key cannot be of non-integral type `float`
10 fail_compilation/diag16976.d(51): Error: foreach: key cannot be of non-integral type `float`
11 fail_compilation/diag16976.d(52): Error: foreach: key cannot be of non-integral type `float`
12 fail_compilation/diag16976.d(53): Error: foreach: key cannot be of non-integral type `float`
13 fail_compilation/diag16976.d(54): Error: foreach: key cannot be of non-integral type `float`
14 fail_compilation/diag16976.d(55): Error: foreach: key cannot be of non-integral type `float`
15 fail_compilation/diag16976.d(56): Error: foreach: key cannot be of non-integral type `float`
16 fail_compilation/diag16976.d(57): Error: foreach: key cannot be of non-integral type `float`
17 fail_compilation/diag16976.d(58): Error: foreach: key cannot be of non-integral type `float`
18 fail_compilation/diag16976.d(59): Error: foreach: key cannot be of non-integral type `float`
19 fail_compilation/diag16976.d(65): Error: foreach: key cannot be of non-integral type `float`
20 fail_compilation/diag16976.d(66): Error: foreach: key cannot be of non-integral type `float`
21 fail_compilation/diag16976.d(67): Error: foreach: key cannot be of non-integral type `float`
22 fail_compilation/diag16976.d(68): Error: foreach: key cannot be of non-integral type `float`
23 fail_compilation/diag16976.d(69): Error: foreach: key cannot be of non-integral type `float`
24 fail_compilation/diag16976.d(70): Error: foreach: key cannot be of non-integral type `float`
25 fail_compilation/diag16976.d(71): Error: foreach: key cannot be of non-integral type `float`
26 fail_compilation/diag16976.d(72): Error: foreach: key cannot be of non-integral type `float`
27 fail_compilation/diag16976.d(73): Error: foreach: key cannot be of non-integral type `float`
28 fail_compilation/diag16976.d(74): Error: foreach: key cannot be of non-integral type `float`
29 fail_compilation/diag16976.d(75): Error: foreach: key cannot be of non-integral type `float`
30 fail_compilation/diag16976.d(76): Error: foreach: key cannot be of non-integral type `float`
31 fail_compilation/diag16976.d(77): Error: foreach: key cannot be of non-integral type `float`
32 fail_compilation/diag16976.d(78): Error: foreach: key cannot be of non-integral type `float`
33 fail_compilation/diag16976.d(79): Error: foreach: key cannot be of non-integral type `float`
34 fail_compilation/diag16976.d(80): Error: foreach: key cannot be of non-integral type `float`
35 ---
36 */
37
main()38 void main()
39 {
40 int[] dyn = [1,2,3,4,5];
41 int[5] sta = [1,2,3,4,5];
42 char[] str = ['1','2','3','4','5'];
43 char[5] chr = ['1','2','3','4','5'];
44 foreach(float f, i; dyn) {}
45 foreach(float f, i; sta) {}
46 foreach(float f, i; str) {}
47 foreach(float f, i; chr) {}
48 foreach(float f, dchar i; dyn) {}
49 foreach(float f, dchar i; sta) {}
50 foreach(float f, dchar i; str) {}
51 foreach(float f, dchar i; chr) {}
52 foreach_reverse(float f, i; dyn) {}
53 foreach_reverse(float f, i; sta) {}
54 foreach_reverse(float f, i; str) {}
55 foreach_reverse(float f, i; chr) {}
56 foreach_reverse(float f, dchar i; dyn) {}
57 foreach_reverse(float f, dchar i; sta) {}
58 foreach_reverse(float f, dchar i; str) {}
59 foreach_reverse(float f, dchar i; chr) {}
60
61 immutable int[] idyn = [1,2,3,4,5];
62 immutable int[5] ista = [1,2,3,4,5];
63 immutable char[] istr = ['1','2','3','4','5'];
64 immutable char[5] ichr = ['1','2','3','4','5'];
65 static foreach(float f, i; idyn) {}
66 static foreach(float f, i; ista) {}
67 static foreach(float f, i; istr) {}
68 static foreach(float f, i; ichr) {}
69 static foreach(float f, dchar i; idyn) {}
70 static foreach(float f, dchar i; ista) {}
71 static foreach(float f, dchar i; istr) {}
72 static foreach(float f, dchar i; ichr) {}
73 static foreach_reverse(float f, i; idyn) {}
74 static foreach_reverse(float f, i; ista) {}
75 static foreach_reverse(float f, i; istr) {}
76 static foreach_reverse(float f, i; ichr) {}
77 static foreach_reverse(float f, dchar i; idyn) {}
78 static foreach_reverse(float f, dchar i; ista) {}
79 static foreach_reverse(float f, dchar i; istr) {}
80 static foreach_reverse(float f, dchar i; ichr) {}
81 }
82