https://gcc.gnu.org/g:65feeb215dd8f81964708b7c1efd1af03b12139b
commit r17-1285-g65feeb215dd8f81964708b7c1efd1af03b12139b Author: Johannes Kanig <[email protected]> Date: Fri Apr 10 00:06:45 2026 +0000 ada: Call back-end even in case of errors In GNATprove mode, still invoke the back end when frontend compilation errors are present, so the back-end has a chance to emit error messages for SARIF report generation. gcc/ada/ChangeLog: * gnat1drv.adb (Gnat1drv): In GNATprove mode, call the back end before exiting on compilation errors. Diff: --- gcc/ada/gnat1drv.adb | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/gcc/ada/gnat1drv.adb b/gcc/ada/gnat1drv.adb index 03cbb30b5f59..e4357d5fc8d8 100644 --- a/gcc/ada/gnat1drv.adb +++ b/gcc/ada/gnat1drv.adb @@ -1194,6 +1194,23 @@ begin if Compilation_Errors then Ecode := E_Errors; + + if GNATprove_Mode then + Atree.Lock; + Elists.Lock; + Fname.UF.Lock; + Ghost.Lock; + Inline.Lock; + Lib.Lock; + Namet.Lock; + Nlists.Lock; + Sem.Lock; + Sinput.Lock; + Stringt.Lock; + + Back_End.Call_Back_End (Declarations_Only); + end if; + Treepr.Tree_Dump; Errout.Finalize (Last_Call => True); Errout.Output_Messages (Ecode);
