Skip to content

Commit 8ed3189

Browse files
author
Cameron Custer
committed
note gcc bug 118291 at pass-self lambda sites; drop obsolete #define filter in grep check
1 parent 03e2eec commit 8ed3189

8 files changed

Lines changed: 8 additions & 3 deletions

File tree

library/trees/hld.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ template<bool VALS_EDGES> struct HLD {
1414
int n;
1515
vi p, siz, rt, tin;
1616
HLD(auto& g): n(sz(g)), p(n), siz(n, 1), rt(n), tin(n) {
17+
// pass-self, not deducing this: gcc bug 118291
1718
auto dfs1 = [&](auto dfs1, int u) -> void {
1819
for (int& v : g[u]) {
1920
erase(g[v], p[v] = u);

library/trees/lca_rmq.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ struct LCA {
1616
LCA(const auto& g):
1717
n(sz(g)), tin(n), siz(n, 1), d(n), p(n) {
1818
vi order;
19+
// pass-self, not deducing this: gcc bug 118291
1920
auto dfs = [&](auto&& dfs, int u) -> void {
2021
tin[u] = sz(order), order.push_back(u);
2122
for (int v : g[u])

library/trees/linear_lca.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ struct linear_lca {
1313
linear_lca(const auto& g):
1414
n(sz(g)), d(n), in(n), asc(n), head(n + 1) {
1515
vector<pii> order;
16+
// pass-self, not deducing this: gcc bug 118291
1617
auto dfs = [&](auto&& dfs, int u, int p) -> void {
1718
order.emplace_back(u, p), in[u] = sz(order);
1819
for (int v : g[u])

library/trees/tree_lift.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
struct tree_lift {
1212
vi d, p, j;
1313
tree_lift(const auto& g): d(sz(g)), p(d), j(d) {
14+
// pass-self, not deducing this: gcc bug 118291
1415
auto dfs = [&](auto&& dfs, int u) -> void {
1516
int up = d[u] + d[j[j[u]]] == 2 * d[j[u]] ? j[j[u]]
1617
: u;

library/trees/uncommon/hagerup_kth_par.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ template<int K = 2> struct hagerup {
2121
jmp[t] = st[max(0, s - K * (t & -t))];
2222
t++;
2323
};
24+
// pass-self, not deducing this: gcc bug 118291
2425
auto dfs = [&](auto&& dfs, int u, int p) -> void {
2526
int& l = leaf[u] = st[d[u]] = u;
2627
pos[u] = t;

library/trees/uncommon/ladder_decomposition.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ struct ladder {
2020
n(sz(g)), d(n), p(n), idx(n), lad(2 * n) {
2121
int i = 0;
2222
vi st(n);
23+
// pass-self, not deducing this: gcc bug 118291
2324
auto dfs = [&](auto&& dfs, int u) -> vi {
2425
vi path;
2526
st[d[u]] = u;

library/trees/uncommon/linear_kth_par.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ struct linear_kth_par {
2323
jmp[t] += st[du - k];
2424
d_tour[t++] = du;
2525
};
26+
// pass-self, not deducing this: gcc bug 118291
2627
auto dfs = [&](auto&& dfs, int u, int p) -> vi {
2728
vi path;
2829
tin[st[d[u]] = u] = t;

tests/scripts/grep_clangformat_cppcheck.sh

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,7 @@ echo "check vi instead of vector<int>"
2727
grep "vector<int>" --recursive ../library/**/*.hpp && exit 1
2828

2929
echo "check begin(arr) instead of arr.begin(), similarly for end, rbegin, rend, empty, size:"
30-
# TODO: remove this define filter if/when we move to -std=c++20
31-
grep --invert-match --fixed-strings "#define" --recursive ../library/ library_checker_aizu_tests/ |
32-
grep --fixed-strings --regexp=".begin()" --regexp=".rbegin()" --regexp=".end()" --regexp=".rend()" --regexp=".empty()" --regexp=".size()" && exit 1
30+
grep --recursive ../library/ library_checker_aizu_tests/ --fixed-strings --regexp=".begin()" --regexp=".rbegin()" --regexp=".end()" --regexp=".rend()" --regexp=".empty()" --regexp=".size()" && exit 1
3331

3432
echo "check that there are no empty lines"
3533
grep "^$" ../library/**/*.hpp && exit 1

0 commit comments

Comments
 (0)