Landing: c6e0eb60dfda
Project / Subsystem
gcc / ada
Date
2026-05-13
Author
Piotr Trojanek
Commit
c6e0eb60dfdad5be8b4ee30c6cfe264f63214e2e
Source
github
Perf win
Yes
Breaking
No
All attributes
- project
- gcc
- subsystem
- ada
- patch_id
- —
- commit_hash
- c6e0eb60dfdad5be8b4ee30c6cfe264f63214e2e
- source_type
- github
- headline
- Inline for proof without creating extra objects
- tldr
- The GNATprove tool now avoids creating unnecessary object declarations when inlining subprograms for proof, streamlining its process.
- author
- Piotr Trojanek
- outcome
- committed
- performance_win
- true
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • ada
- • compiler
- • gnatprove
- • optimization
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-05-13T00:00:00.000Z
This commit modifies the GNATprove mode in the Ada compiler to optimize how it handles inlined subprogram calls. Previously, the tool would generate extra object declarations to ensure certain checks were performed after object renamings. With Ada 2022’s updated requirements, GNATprove now inherently generates these checks, eliminating the need for these superfluous temporary objects and simplifying the inlining process during proof generation.