[PATCH] D95573: [ASTMatchers] Avoid pathological traversal over nested lambdas

Alexander Kornienko via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Jan 28 04:06:27 PST 2021


alexfh accepted this revision.
alexfh added a comment.
This revision is now accepted and ready to land.

This fixes the issue with exponential traversal times for deeply nested lambdas. Please add a test though. For example, this one:

  void f() {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    [] {
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
    }();
  }


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D95573/new/

https://reviews.llvm.org/D95573



More information about the cfe-commits mailing list