@@ -30,12 +30,13 @@ void tests() {
30
30
G g;
31
31
D d;
32
32
const int N = 100 ;
33
- std::vector<Frequency> u (d.max ()+1 );
33
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
34
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
34
35
for (int i = 0 ; i < N; ++i)
35
36
{
36
37
typename D::result_type v = d (g);
37
38
assert (d.min () <= v && v <= d.max ());
38
- u[v ]++;
39
+ u[static_cast <std:: size_t >(v) ]++;
39
40
}
40
41
std::vector<double > prob = d.probabilities ();
41
42
for (unsigned i = 0 ; i < u.size (); ++i)
@@ -48,12 +49,13 @@ void tests() {
48
49
double p0[] = {.3 };
49
50
D d (p0, p0+1 );
50
51
const int N = 100 ;
51
- std::vector<Frequency> u (d.max ()+1 );
52
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
53
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
52
54
for (int i = 0 ; i < N; ++i)
53
55
{
54
56
typename D::result_type v = d (g);
55
57
assert (d.min () <= v && v <= d.max ());
56
- u[v ]++;
58
+ u[static_cast <std:: size_t >(v) ]++;
57
59
}
58
60
std::vector<double > prob = d.probabilities ();
59
61
for (unsigned i = 0 ; i < u.size (); ++i)
@@ -66,12 +68,13 @@ void tests() {
66
68
double p0[] = {.75 , .25 };
67
69
D d (p0, p0+2 );
68
70
const int N = 1000000 ;
69
- std::vector<Frequency> u (d.max ()+1 );
71
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
72
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
70
73
for (int i = 0 ; i < N; ++i)
71
74
{
72
75
typename D::result_type v = d (g);
73
76
assert (d.min () <= v && v <= d.max ());
74
- u[v ]++;
77
+ u[static_cast <std:: size_t >(v) ]++;
75
78
}
76
79
std::vector<double > prob = d.probabilities ();
77
80
for (unsigned i = 0 ; i < u.size (); ++i)
@@ -84,12 +87,13 @@ void tests() {
84
87
double p0[] = {0 , 1 };
85
88
D d (p0, p0+2 );
86
89
const int N = 1000000 ;
87
- std::vector<Frequency> u (d.max ()+1 );
90
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
91
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
88
92
for (int i = 0 ; i < N; ++i)
89
93
{
90
94
typename D::result_type v = d (g);
91
95
assert (d.min () <= v && v <= d.max ());
92
- u[v ]++;
96
+ u[static_cast <std:: size_t >(v) ]++;
93
97
}
94
98
std::vector<double > prob = d.probabilities ();
95
99
assert ((double )u[0 ]/N == prob[0 ]);
@@ -102,12 +106,13 @@ void tests() {
102
106
double p0[] = {1 , 0 };
103
107
D d (p0, p0+2 );
104
108
const int N = 1000000 ;
105
- std::vector<Frequency> u (d.max ()+1 );
109
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
110
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
106
111
for (int i = 0 ; i < N; ++i)
107
112
{
108
113
typename D::result_type v = d (g);
109
114
assert (d.min () <= v && v <= d.max ());
110
- u[v ]++;
115
+ u[static_cast <std:: size_t >(v) ]++;
111
116
}
112
117
std::vector<double > prob = d.probabilities ();
113
118
assert ((double )u[0 ]/N == prob[0 ]);
@@ -120,12 +125,13 @@ void tests() {
120
125
double p0[] = {.3 , .1 , .6 };
121
126
D d (p0, p0+3 );
122
127
const int N = 10000000 ;
123
- std::vector<Frequency> u (d.max ()+1 );
128
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
129
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
124
130
for (int i = 0 ; i < N; ++i)
125
131
{
126
132
typename D::result_type v = d (g);
127
133
assert (d.min () <= v && v <= d.max ());
128
- u[v ]++;
134
+ u[static_cast <std:: size_t >(v) ]++;
129
135
}
130
136
std::vector<double > prob = d.probabilities ();
131
137
for (unsigned i = 0 ; i < u.size (); ++i)
@@ -138,12 +144,13 @@ void tests() {
138
144
double p0[] = {0 , 25 , 75 };
139
145
D d (p0, p0+3 );
140
146
const int N = 1000000 ;
141
- std::vector<Frequency> u (d.max ()+1 );
147
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
148
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
142
149
for (int i = 0 ; i < N; ++i)
143
150
{
144
151
typename D::result_type v = d (g);
145
152
assert (d.min () <= v && v <= d.max ());
146
- u[v ]++;
153
+ u[static_cast <std:: size_t >(v) ]++;
147
154
}
148
155
std::vector<double > prob = d.probabilities ();
149
156
for (unsigned i = 0 ; i < u.size (); ++i)
@@ -159,12 +166,13 @@ void tests() {
159
166
double p0[] = {25 , 0 , 75 };
160
167
D d (p0, p0+3 );
161
168
const int N = 1000000 ;
162
- std::vector<Frequency> u (d.max ()+1 );
169
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
170
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
163
171
for (int i = 0 ; i < N; ++i)
164
172
{
165
173
typename D::result_type v = d (g);
166
174
assert (d.min () <= v && v <= d.max ());
167
- u[v ]++;
175
+ u[static_cast <std:: size_t >(v) ]++;
168
176
}
169
177
std::vector<double > prob = d.probabilities ();
170
178
for (unsigned i = 0 ; i < u.size (); ++i)
@@ -180,12 +188,13 @@ void tests() {
180
188
double p0[] = {25 , 75 , 0 };
181
189
D d (p0, p0+3 );
182
190
const int N = 1000000 ;
183
- std::vector<Frequency> u (d.max ()+1 );
191
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
192
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
184
193
for (int i = 0 ; i < N; ++i)
185
194
{
186
195
typename D::result_type v = d (g);
187
196
assert (d.min () <= v && v <= d.max ());
188
- u[v ]++;
197
+ u[static_cast <std:: size_t >(v) ]++;
189
198
}
190
199
std::vector<double > prob = d.probabilities ();
191
200
for (unsigned i = 0 ; i < u.size (); ++i)
@@ -201,12 +210,13 @@ void tests() {
201
210
double p0[] = {0 , 0 , 1 };
202
211
D d (p0, p0+3 );
203
212
const int N = 100 ;
204
- std::vector<Frequency> u (d.max ()+1 );
213
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
214
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
205
215
for (int i = 0 ; i < N; ++i)
206
216
{
207
217
typename D::result_type v = d (g);
208
218
assert (d.min () <= v && v <= d.max ());
209
- u[v ]++;
219
+ u[static_cast <std:: size_t >(v) ]++;
210
220
}
211
221
std::vector<double > prob = d.probabilities ();
212
222
for (unsigned i = 0 ; i < u.size (); ++i)
@@ -222,12 +232,13 @@ void tests() {
222
232
double p0[] = {0 , 1 , 0 };
223
233
D d (p0, p0+3 );
224
234
const int N = 100 ;
225
- std::vector<Frequency> u (d.max ()+1 );
235
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
236
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
226
237
for (int i = 0 ; i < N; ++i)
227
238
{
228
239
typename D::result_type v = d (g);
229
240
assert (d.min () <= v && v <= d.max ());
230
- u[v ]++;
241
+ u[static_cast <std:: size_t >(v) ]++;
231
242
}
232
243
std::vector<double > prob = d.probabilities ();
233
244
for (unsigned i = 0 ; i < u.size (); ++i)
@@ -243,12 +254,13 @@ void tests() {
243
254
double p0[] = {1 , 0 , 0 };
244
255
D d (p0, p0+3 );
245
256
const int N = 100 ;
246
- std::vector<Frequency> u (d.max ()+1 );
257
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
258
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
247
259
for (int i = 0 ; i < N; ++i)
248
260
{
249
261
typename D::result_type v = d (g);
250
262
assert (d.min () <= v && v <= d.max ());
251
- u[v ]++;
263
+ u[static_cast <std:: size_t >(v) ]++;
252
264
}
253
265
std::vector<double > prob = d.probabilities ();
254
266
for (unsigned i = 0 ; i < u.size (); ++i)
@@ -264,12 +276,13 @@ void tests() {
264
276
double p0[] = {33 , 0 , 0 , 67 };
265
277
D d (p0, p0+3 );
266
278
const int N = 1000000 ;
267
- std::vector<Frequency> u (d.max ()+1 );
279
+ std::vector<Frequency> u (static_cast <std::size_t >(d.max ()+1 ));
280
+ assert (u.max_size () > static_cast <unsigned long long >(d.max ()));
268
281
for (int i = 0 ; i < N; ++i)
269
282
{
270
283
typename D::result_type v = d (g);
271
284
assert (d.min () <= v && v <= d.max ());
272
- u[v ]++;
285
+ u[static_cast <std:: size_t >(v) ]++;
273
286
}
274
287
std::vector<double > prob = d.probabilities ();
275
288
for (unsigned i = 0 ; i < u.size (); ++i)
0 commit comments