THis patch removes a spurious error on mismatched dimensions in the body of a
subprogram that is inlined for SPARK purposes.

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

2017-01-13  Ed Schonberg  <>

        * sem_ch8.adb (Analyze_Expanded_Name): Perfrom dimension analysis
        even if entity is already set, because the node may be renalyzed
        after inlining transformations.

Index: sem_ch8.adb
--- sem_ch8.adb (revision 244418)
+++ sem_ch8.adb (working copy)
@@ -609,11 +609,12 @@
             Set_Etype (N, Etype (Entity (N)));
          end if;
-         return;
          Find_Expanded_Name (N);
       end if;
+      --  In either case, propagate dimension of entity to expanded name
       Analyze_Dimension (N);
    end Analyze_Expanded_Name;

Reply via email to