From ccfe725bc63fb3e3f279f1995a13b8b585bd6468 Mon Sep 17 00:00:00 2001 From: Johannes Kanig Date: Wed, 7 Jan 2015 10:24:46 +0000 Subject: [PATCH] lib-xref-spark_specific.adb (Collect_SPARK_Xrefs): Skip unneeded cross ref files. 2015-01-07 Johannes Kanig * lib-xref-spark_specific.adb (Collect_SPARK_Xrefs): Skip unneeded cross ref files. From-SVN: r219292 --- gcc/ada/ChangeLog | 5 +++++ gcc/ada/lib-xref-spark_specific.adb | 16 ++++++++++++---- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index a422194de6f..526bf38027b 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,8 @@ +2015-01-07 Johannes Kanig + + * lib-xref-spark_specific.adb (Collect_SPARK_Xrefs): Skip unneeded + cross ref files. + 2015-01-07 Robert Dewar * s-taprop-linux.adb, clean.adb: Minor reformatting. diff --git a/gcc/ada/lib-xref-spark_specific.adb b/gcc/ada/lib-xref-spark_specific.adb index 28677060aae..b38d65b23dd 100644 --- a/gcc/ada/lib-xref-spark_specific.adb +++ b/gcc/ada/lib-xref-spark_specific.adb @@ -889,10 +889,18 @@ package body SPARK_Specific is 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; -- 2.30.2