[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Fri, 6 Jan 2017 11:19:47 +0000 (12:19 +0100)
committerArnaud Charlet <charlet@gcc.gnu.org>
Fri, 6 Jan 2017 11:19:47 +0000 (12:19 +0100)
2017-01-06  Yannick Moy  <moy@adacore.com>

* sem_attr.adb (Analyze_Attribute/Attribute_Loop_Entry): Analyze node
in tree, which means not analyzing the previous prefix if the node has
been rewritten into its prefix.

2017-01-06  Gary Dismukes  <dismukes@adacore.com>

* s-tpobop.adb: Minor reformatting.

From-SVN: r244137

gcc/ada/ChangeLog
gcc/ada/s-tpobop.adb
gcc/ada/sem_attr.adb

index ce482e34e0ed8a44d5f1ac987a9fd6cfaf425093..e2fe43ef6841690ced1018ac95e07dcc83886a37 100644 (file)
@@ -1,3 +1,13 @@
+2017-01-06  Yannick Moy  <moy@adacore.com>
+
+       * sem_attr.adb (Analyze_Attribute/Attribute_Loop_Entry): Analyze node
+       in tree, which means not analyzing the previous prefix if the node has
+       been rewritten into its prefix.
+
+2017-01-06  Gary Dismukes  <dismukes@adacore.com>
+
+       * s-tpobop.adb: Minor reformatting.
+
 2017-01-06  Ed Schonberg  <schonberg@adacore.com>
 
        * checks.adb (Ensure_Valid): Do not generate a validity check
index a6f6c993d4e927ac135d5476b7e2f88c5f598d80..3a884c5d8943ecdf4092c26ac4037b9d18c38b21 100644 (file)
@@ -348,17 +348,17 @@ package body System.Tasking.Protected_Objects.Operations is
            or else Object.Entry_Queue_Maxes /= null
          then
             --  Need to check the queue length. Computing the length is an
-            --  unusual case and is slow (need to walk the queue)
+            --  unusual case and is slow (need to walk the queue).
 
             Queue_Length := Queuing.Count_Waiting (Object.Entry_Queues (E));
 
             if (Run_Time_Restrictions.Set (Max_Entry_Queue_Length)
-                and then Queue_Length >=
+                 and then Queue_Length >=
                    Run_Time_Restrictions.Value (Max_Entry_Queue_Length))
               or else
-              (Object.Entry_Queue_Maxes /= null
-                 and then Object.Entry_Queue_Maxes (Index) /= 0
-                 and then Queue_Length >= Object.Entry_Queue_Maxes (Index))
+                (Object.Entry_Queue_Maxes /= null
+                  and then Object.Entry_Queue_Maxes (Index) /= 0
+                  and then Queue_Length >= Object.Entry_Queue_Maxes (Index))
             then
                --  This violates the Max_Entry_Queue_Length restriction or the
                --  Max_Queue_Length bound, raise Program_Error.
index db2f23d18c4a2bb7af33aac74289f24890d3caa9..188872e483fa607f5e805537171fa7b5ab8db36a 100644 (file)
@@ -4488,9 +4488,11 @@ package body Sem_Attr is
 
          if Is_Ignored (Enclosing_Pragma) then
             Rewrite (N, Relocate_Node (P));
-         end if;
+            Preanalyze_And_Resolve (N);
 
-         Preanalyze_And_Resolve (P);
+         else
+            Preanalyze_And_Resolve (P);
+         end if;
       end Loop_Entry;
 
       -------------