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.