• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Qiskit / qiskit / 33652752907
88%

Build:
DEFAULT BRANCH: main
Ran 02 Sep 2026 04:41PM UTC
Jobs 1
Files 961
Run time 3min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

02 Sep 2026 03:38PM UTC coverage: 87.801% (+0.004%) from 87.797%
33652752907

push

github

web-flow
Implement `Drop` for `SymbolExpr` iteratively (#16775)

* Implement `Drop` for `SymbolExpr` iteratively

The derived `Drop` impl is naturally recursive, which will take a long
time and overflow the stack for deeply nested expressions.  Instead, we
do an iterative depth-first post-order traversal of any tree of `Binary`
nodes, dropping the children and following temporary backrefs back up
the tree to the next node.

This implementation is specifically intending to avoid large-scale
allocation within the `Drop` implementation, for performance.

The testing strategy here is intended to cause stack overflows in the
test suite in various cases if we ever failed to break the recursion.
The assertions against the `strong_count` are for completeness and
indicate what should happen at every point, but realistically, since
there's no interior mutability in `SymbolExpr` and no `unsafe` in the
`Drop` implementation, Rust's ownership guarantees should prevent us
from creating a true reference cycle; the risk is much more that we
accidentally fail to become fully iterative.

* Fix typo

261 of 262 new or added lines in 1 file covered. (99.62%)

29 existing lines in 4 files now uncovered.

115720 of 131798 relevant lines covered (87.8%)

989028.11 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
79.9
1.66% crates/circuit/src/parameter/symbol_expr.rs

Coverage Regressions

Lines Coverage ∆ File
12
97.16
-0.95% crates/qasm2/src/parse.rs
10
79.9
1.66% crates/circuit/src/parameter/symbol_expr.rs
6
91.26
-1.03% crates/qasm2/src/lex.rs
1
90.31
0.0% crates/circuit/src/parameter/parameter_expression.rs
Jobs
ID Job ID Ran Files Coverage
1 33652752907.1 02 Sep 2026 04:41PM UTC 961
87.8
GitHub Action Run
Source Files on build 33652752907
  • Tree
  • List 961
  • Changed 4
  • Source Changed 1
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #33652752907
  • 8f560d6e on github
  • Prev Build on gh-readonly-queue/main/pr-16771-b49bc279db3a7f99eb9c7306b11c9e05ee8de2f9 (#33649947234)
  • Next Build on main (#33687521527)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc