From: Ghjuvan Lacambre Date: Thu, 27 May 2021 12:54:14 +0000 (+0200) Subject: [Ada] Duplicated D lines in ali files X-Git-Tag: basepoints/gcc-13~6150 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d75dde1a7234c4ff556bd9e6ab55ca95baa00262;p=thirdparty%2Fgcc.git [Ada] Duplicated D lines in ali files gcc/ada/ * lib-writ.ads: Mention SCOs dependency as reason for duplicates. * lib.ads (Units): Update documentation to mention duplicated units. --- diff --git a/gcc/ada/lib-writ.ads b/gcc/ada/lib-writ.ads index b8370fab42a0..ce5398b62591 100644 --- a/gcc/ada/lib-writ.ads +++ b/gcc/ada/lib-writ.ads @@ -1053,6 +1053,9 @@ package Lib.Writ is -- The Object parameter is true if an object file is created, and false -- otherwise. Note that the pseudo-object file generated in GNATprove mode -- does count as an object file from this point of view. + -- May output duplicate D lines caused by generic instantiations. This is + -- by design as GNATcoverage relies on them for its coverage of generic + -- instantiations, although this may be revisited in the future. procedure Add_Preprocessing_Dependency (S : Source_File_Index); -- Indicate that there is a dependency to be added on a preprocessing data diff --git a/gcc/ada/lib.ads b/gcc/ada/lib.ads index 1450124c99ef..f2c6ef3553cc 100644 --- a/gcc/ada/lib.ads +++ b/gcc/ada/lib.ads @@ -926,7 +926,9 @@ private -- The following table records a mapping between a name and the entry in -- the units table whose Unit_Name is this name. It is used to speed up -- the Is_Loaded function, whose original implementation (linear search) - -- could account for 2% of the time spent in the front end. Note that, in + -- could account for 2% of the time spent in the front end. When the unit + -- is an instance of a generic, the unit might get duplicated in the unit + -- table - see Make_Instance_Unit for more information. Note that, in -- the case of source files containing multiple units, the units table may -- temporarily contain two entries with the same Unit_Name during parsing, -- which means that the mapping must be to the first entry in the table.