diff mbox

[Ada] disable some files for SPARK cross references

Message ID 20150107102454.GA11135@adacore.com
State New
Headers show

Commit Message

Arnaud Charlet Jan. 7, 2015, 10:24 a.m. UTC
Some "D" files do not correspond to Ada units, and as such present no interest
for SPARK cross references. Skip these files, as printing their name may
require printing the full name with spaces, which is not handled in the code
doing I/O of SPARK cross references.

Tested on x86_64-pc-linux-gnu, committed on trunk

2015-01-07  Johannes Kanig  <kanig@adacore.com>

	* lib-xref-spark_specific.adb (Collect_SPARK_Xrefs): Skip unneeded
	cross ref files.
diff mbox

Patch

Index: lib-xref-spark_specific.adb
===================================================================
--- lib-xref-spark_specific.adb	(revision 219191)
+++ lib-xref-spark_specific.adb	(working copy)
@@ -889,10 +889,18 @@ 
             D2 := D1;
          end if;
 
-         Add_SPARK_File
-           (Ubody => Sdep_Table (D1),
-            Uspec => Sdep_Table (D2),
-            Dspec => D2);
+         --  Some files do not correspond to Ada units, and as such present no
+         --  interest for SPARK cross references. Skip these files, as printing
+         --  their name may require printing the full name with spaces, which
+         --  is not handled in the code doing I/O of SPARK cross references.
+
+         if Present (Cunit_Entity (Sdep_Table (D1))) then
+            Add_SPARK_File
+              (Ubody => Sdep_Table (D1),
+               Uspec => Sdep_Table (D2),
+               Dspec => D2);
+         end if;
+
          D1 := D2 + 1;
       end loop;