diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ada/freeze.adb | 1 | ||||
-rw-r--r-- | gcc/ada/sem_ch3.adb | 2 |
3 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 8a676d8..c279bce 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,9 @@ +2017-01-23 Justin Squirek <squirek@adacore.com> + + * sem_ch3.adb (Analyze_Declarations): Correct comments + * freeze.adb (Find_Constant): Add detection of deferred constants + so they are not incorrectly flagged as premature. + 2017-01-23 Ed Schonberg <schonberg@adacore.com> * scans.ads: New token At_Sign. Remove '@' from list of illegal diff --git a/gcc/ada/freeze.adb b/gcc/ada/freeze.adb index c1dbd33..c8eef9c 100644 --- a/gcc/ada/freeze.adb +++ b/gcc/ada/freeze.adb @@ -1356,6 +1356,7 @@ package body Freeze is N_Object_Declaration and then not Is_Imported (Entity (Nod)) and then not Has_Completion (Entity (Nod)) + and then not Is_Frozen (Entity (Nod)) then Error_Msg_NE ("premature use of& in call or instance", N, Entity (Nod)); diff --git a/gcc/ada/sem_ch3.adb b/gcc/ada/sem_ch3.adb index 9cc64b3..fb42f6a 100644 --- a/gcc/ada/sem_ch3.adb +++ b/gcc/ada/sem_ch3.adb @@ -2637,7 +2637,7 @@ package body Sem_Ch3 is -- Check for an edge case that may cause premature freezing of a -- private type. - -- If there is an array type which uses a private type from an + -- If there is an type which depends on a private type from an -- enclosing package that is in the same scope as a non-completing -- expression function then we cannot freeze here. |