From: Ronan Desplanques <desplanq...@adacore.com> Before this patch, we instrumented code that's only used during the build process to generate more code. This patch marks the code-generating code so it's not instrumented for coverage.
gcc/ada/ChangeLog: * gnat2.gpr: Add library units to coverage exclusion list. Tested on x86_64-pc-linux-gnu, committed on master. --- gcc/ada/gnat2.gpr | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/gcc/ada/gnat2.gpr b/gcc/ada/gnat2.gpr index df648465812..9d9f3b55057 100644 --- a/gcc/ada/gnat2.gpr +++ b/gcc/ada/gnat2.gpr @@ -49,6 +49,23 @@ project Gnat2 is -- of fresh source files from the run-time library. We need gnatcov to not instrument -- those files, so we add the clause below. It's unknown why only putting "GNAT" is sufficient??? -- We also pull in GNAT.Lists for example, but specifying it here triggers a warning. - for Excluded_Units use ("Gnat"); + Overridden_Runtime_Units := ("GNAT"); + + -- We don't want to instrument code generation tools + Codegen_Units := + ("Gen_IL", + "Gen_IL.Gen", + "Gen_IL.Fields", + "Gen_IL.Gen.Gen_Entities", + "Gen_IL.Gen.Gen_Nodes", + "Gen_IL.Internals", + "Gen_IL.Main", + "Gen_IL.Types", + "XSnamesT", + "XUtil", + "XOSCons", + "XLeaps"); + + for Excluded_Units use Overridden_Runtime_Units & Codegen_Units; end Coverage; end Gnat2; -- 2.43.0