Skip to content

Commit 2cf78d4

Browse files
committed
[libc++] Remove unused variable warnings
Since D100581, Clang started flagging this variable which is set but never read. Based on comparing this function with __match_at_start_posix_nosubs (which is very similar), I am pretty confident that `__j` was simply left behind as an oversight in Howard's 6afe8b0. Also workaround some unused variable warnings in the <random> tests. It's pretty lame that we're not asserting the skew and kurtosis of the binomial and negative binomial distributions, but that should be tackled separately. Differential Revision: https://reviews.llvm.org/D103533
1 parent 6b265f9 commit 2cf78d4

File tree

3 files changed

+56
-53
lines changed

3 files changed

+56
-53
lines changed

libcxx/include/regex

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5884,7 +5884,6 @@ basic_regex<_CharT, _Traits>::__match_at_start_posix_subs(
58845884
{
58855885
vector<__state> __states;
58865886
__state __best_state;
5887-
ptrdiff_t __j = 0;
58885887
ptrdiff_t __highest_j = 0;
58895888
ptrdiff_t _Np = _VSTD::distance(__first, __last);
58905889
__node* __st = __start_.get();
@@ -5945,7 +5944,6 @@ basic_regex<_CharT, _Traits>::__match_at_start_posix_subs(
59455944
__states.pop_back();
59465945
break;
59475946
case __state::__accept_and_consume:
5948-
__j += __s.__current_ - __current;
59495947
__current = __s.__current_;
59505948
break;
59515949
case __state::__repeat:

libcxx/test/std/numerics/rand/rand.dis/rand.dist.bern/rand.dist.bern.bin/eval.pass.cpp

Lines changed: 50 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,6 @@
2020
#include <vector>
2121
#include <cassert>
2222

23-
#include "test_macros.h"
24-
2523
template <class T>
2624
inline
2725
T
@@ -188,24 +186,25 @@ test4()
188186
kurtosis += d2 * d2;
189187
}
190188
var /= u.size();
191-
//double dev = std::sqrt(var);
189+
double dev = std::sqrt(var);
192190
// In this case:
193191
// skew computes to 0./0. == nan
194192
// kurtosis computes to 0./0. == nan
195193
// x_skew == inf
196194
// x_kurtosis == inf
197-
// These tests are commented out because UBSan warns about division by 0
198-
// skew /= u.size() * dev * var;
199-
// kurtosis /= u.size() * var * var;
200-
// kurtosis -= 3;
195+
skew /= u.size() * dev * var;
196+
kurtosis /= u.size() * var * var;
197+
kurtosis -= 3;
201198
double x_mean = d.t() * d.p();
202199
double x_var = x_mean*(1-d.p());
203-
// double x_skew = (1-2*d.p()) / std::sqrt(x_var);
204-
// double x_kurtosis = (1-6*d.p()*(1-d.p())) / x_var;
200+
double x_skew = (1-2*d.p()) / std::sqrt(x_var);
201+
double x_kurtosis = (1-6*d.p()*(1-d.p())) / x_var;
205202
assert(mean == x_mean);
206203
assert(var == x_var);
207-
// assert(skew == x_skew);
208-
// assert(kurtosis == x_kurtosis);
204+
// assert(skew == x_skew);
205+
(void)skew; (void)x_skew;
206+
// assert(kurtosis == x_kurtosis);
207+
(void)kurtosis; (void)x_kurtosis;
209208
}
210209

211210
void
@@ -237,24 +236,25 @@ test5()
237236
kurtosis += d2 * d2;
238237
}
239238
var /= u.size();
240-
// double dev = std::sqrt(var);
239+
double dev = std::sqrt(var);
241240
// In this case:
242241
// skew computes to 0./0. == nan
243242
// kurtosis computes to 0./0. == nan
244243
// x_skew == -inf
245244
// x_kurtosis == inf
246-
// These tests are commented out because UBSan warns about division by 0
247-
// skew /= u.size() * dev * var;
248-
// kurtosis /= u.size() * var * var;
249-
// kurtosis -= 3;
245+
skew /= u.size() * dev * var;
246+
kurtosis /= u.size() * var * var;
247+
kurtosis -= 3;
250248
double x_mean = d.t() * d.p();
251249
double x_var = x_mean*(1-d.p());
252-
// double x_skew = (1-2*d.p()) / std::sqrt(x_var);
253-
// double x_kurtosis = (1-6*d.p()*(1-d.p())) / x_var;
250+
double x_skew = (1-2*d.p()) / std::sqrt(x_var);
251+
double x_kurtosis = (1-6*d.p()*(1-d.p())) / x_var;
254252
assert(mean == x_mean);
255253
assert(var == x_var);
256-
// assert(skew == x_skew);
257-
// assert(kurtosis == x_kurtosis);
254+
// assert(skew == x_skew);
255+
(void)skew; (void)x_skew;
256+
// assert(kurtosis == x_kurtosis);
257+
(void)kurtosis; (void)x_kurtosis;
258258
}
259259

260260
void
@@ -390,24 +390,25 @@ test9()
390390
kurtosis += d2 * d2;
391391
}
392392
var /= u.size();
393-
// double dev = std::sqrt(var);
393+
double dev = std::sqrt(var);
394394
// In this case:
395395
// skew computes to 0./0. == nan
396396
// kurtosis computes to 0./0. == nan
397397
// x_skew == inf
398398
// x_kurtosis == inf
399-
// These tests are commented out because UBSan warns about division by 0
400-
// skew /= u.size() * dev * var;
401-
// kurtosis /= u.size() * var * var;
402-
// kurtosis -= 3;
399+
skew /= u.size() * dev * var;
400+
kurtosis /= u.size() * var * var;
401+
kurtosis -= 3;
403402
double x_mean = d.t() * d.p();
404403
double x_var = x_mean*(1-d.p());
405-
// double x_skew = (1-2*d.p()) / std::sqrt(x_var);
406-
// double x_kurtosis = (1-6*d.p()*(1-d.p())) / x_var;
404+
double x_skew = (1-2*d.p()) / std::sqrt(x_var);
405+
double x_kurtosis = (1-6*d.p()*(1-d.p())) / x_var;
407406
assert(mean == x_mean);
408407
assert(var == x_var);
409-
// assert(skew == x_skew);
410-
// assert(kurtosis == x_kurtosis);
408+
// assert(skew == x_skew);
409+
(void)skew; (void)x_skew;
410+
// assert(kurtosis == x_kurtosis);
411+
(void)kurtosis; (void)x_kurtosis;
411412
}
412413

413414
void
@@ -439,24 +440,25 @@ test10()
439440
kurtosis += d2 * d2;
440441
}
441442
var /= u.size();
442-
// double dev = std::sqrt(var);
443+
double dev = std::sqrt(var);
443444
// In this case:
444445
// skew computes to 0./0. == nan
445446
// kurtosis computes to 0./0. == nan
446447
// x_skew == inf
447448
// x_kurtosis == inf
448-
// These tests are commented out because UBSan warns about division by 0
449-
// skew /= u.size() * dev * var;
450-
// kurtosis /= u.size() * var * var;
451-
// kurtosis -= 3;
449+
skew /= u.size() * dev * var;
450+
kurtosis /= u.size() * var * var;
451+
kurtosis -= 3;
452452
double x_mean = d.t() * d.p();
453453
double x_var = x_mean*(1-d.p());
454-
// double x_skew = (1-2*d.p()) / std::sqrt(x_var);
455-
// double x_kurtosis = (1-6*d.p()*(1-d.p())) / x_var;
454+
double x_skew = (1-2*d.p()) / std::sqrt(x_var);
455+
double x_kurtosis = (1-6*d.p()*(1-d.p())) / x_var;
456456
assert(mean == x_mean);
457457
assert(var == x_var);
458-
// assert(skew == x_skew);
459-
// assert(kurtosis == x_kurtosis);
458+
// assert(skew == x_skew);
459+
(void)skew; (void)x_skew;
460+
// assert(kurtosis == x_kurtosis);
461+
(void)kurtosis; (void)x_kurtosis;
460462
}
461463

462464
void
@@ -488,24 +490,25 @@ test11()
488490
kurtosis += d2 * d2;
489491
}
490492
var /= u.size();
491-
// double dev = std::sqrt(var);
493+
double dev = std::sqrt(var);
492494
// In this case:
493495
// skew computes to 0./0. == nan
494496
// kurtosis computes to 0./0. == nan
495497
// x_skew == -inf
496498
// x_kurtosis == inf
497-
// These tests are commented out because UBSan warns about division by 0
498-
// skew /= u.size() * dev * var;
499-
// kurtosis /= u.size() * var * var;
500-
// kurtosis -= 3;
499+
skew /= u.size() * dev * var;
500+
kurtosis /= u.size() * var * var;
501+
kurtosis -= 3;
501502
double x_mean = d.t() * d.p();
502503
double x_var = x_mean*(1-d.p());
503-
// double x_skew = (1-2*d.p()) / std::sqrt(x_var);
504-
// double x_kurtosis = (1-6*d.p()*(1-d.p())) / x_var;
504+
double x_skew = (1-2*d.p()) / std::sqrt(x_var);
505+
double x_kurtosis = (1-6*d.p()*(1-d.p())) / x_var;
505506
assert(mean == x_mean);
506507
assert(var == x_var);
507-
// assert(skew == x_skew);
508-
// assert(kurtosis == x_kurtosis);
508+
// assert(skew == x_skew);
509+
(void)skew; (void)x_skew;
510+
// assert(kurtosis == x_kurtosis);
511+
(void)kurtosis; (void)x_kurtosis;
509512
}
510513

511514
int main(int, char**)

libcxx/test/std/numerics/rand/rand.dis/rand.dist.bern/rand.dist.bern.negbin/eval.pass.cpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,6 @@
2020
#include <vector>
2121
#include <cassert>
2222

23-
#include "test_macros.h"
24-
2523
template <class T>
2624
inline
2725
T
@@ -194,10 +192,14 @@ test4()
194192
kurtosis -= 3;
195193
double x_mean = d.k() * (1 - d.p()) / d.p();
196194
double x_var = x_mean / d.p();
197-
// double x_skew = (2 - d.p()) / std::sqrt(d.k() * (1 - d.p()));
198-
// double x_kurtosis = 6. / d.k() + sqr(d.p()) / (d.k() * (1 - d.p()));
195+
double x_skew = (2 - d.p()) / std::sqrt(d.k() * (1 - d.p()));
196+
double x_kurtosis = 6. / d.k() + sqr(d.p()) / (d.k() * (1 - d.p()));
199197
assert(mean == x_mean);
200198
assert(var == x_var);
199+
// assert(skew == x_skew);
200+
(void)skew; (void)x_skew;
201+
// assert(kurtosis == x_kurtosis);
202+
(void)kurtosis; (void)x_kurtosis;
201203
}
202204

203205
void

0 commit comments

Comments
 (0)