GCC Newspaper
JUNE 15, 2026
Date
/
Architectures
Components
Topics
News & Policy
Other
ada

Ada: Fixes SPARK RM 6.9 Rule 32 check

This commit fixes a SPARK rule check to only apply to user-defined equality operations.

This commit corrects the SPARK RM 6.9 Rule 32 check in the Ada compiler to ensure it only applies to user-defined equality operations. By supplying the operation’s type as an argument, the compiler can accurately identify and validate user-defined equality, improving the precision of SPARK’s static analysis.

In Details

This commit modifies ghost.adb, ghost.ads, and sem_ch6.adb to refine the Check_Ghost_Equality_Op function. SPARK is a formal verification toolset, and this change specifically affects the checks related to ghost code and equality operations. No interaction with other subsystems is apparent.

For Context

SPARK is a tool used with Ada to formally prove the absence of certain errors in code. This commit fixes a specific rule check related to equality operations within SPARK. The fix ensures that the check only applies to equality operations that are explicitly defined by the programmer, preventing false positives and improving the accuracy of the verification process.

Filed Under: adasparkverification