From 5ee52820e3bfb83231b7d3488b953f83821e2c31 Mon Sep 17 00:00:00 2001 From: charlet Date: Wed, 27 Apr 2016 13:05:41 +0000 Subject: 2016-04-27 Ed Schonberg * sem_util.ads, sem_util.adb (Is_Null_Record_Type): New predicate to determine whether a record type is a null record. * sem_ch3.adb (Analyze_Object_Declaration): If the type is a null record and there is no expression in the declaration, no predicate check applies to the object. 2016-04-27 Hristian Kirtchev * sem_ch7.adb (Analyze_Package_Body_Helper): The body of an instantiated package should not cause freezing of previous contracts. 2016-04-27 Ed Schonberg * sem_dim.adb (Analyze_Dimension): Handle subtype declarations that do not come from source. (Analyze_Dimension_Subtype_Declaration): Allow confirming dimensions on subtype entity, either inherited from base type or provided by aspect specification. 2016-04-27 Ed Schonberg * s-gearop.ads (Matrix_Vector_Solution, Matrix_Matrix_Solution): Add scalar formal object Zero, to allow detection and report when the matrix is singular. * s-gearop.adb (Matrix_Vector_Solution, Matrix_Matrix_Solution): Raise Constraint_Error if the Forward_Eliminate pass has determined that determinant is Zero.o * s-ngrear.adb (Solve): Add actual for Zero in corresponding instantiations. * s-ngcoar.adb (Solve): Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@235499 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ada/sem_util.ads | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gcc/ada/sem_util.ads') diff --git a/gcc/ada/sem_util.ads b/gcc/ada/sem_util.ads index 0845bf7be40..fb049ef4551 100644 --- a/gcc/ada/sem_util.ads +++ b/gcc/ada/sem_util.ads @@ -1481,6 +1481,10 @@ package Sem_Util is -- assertion expression of pragma Default_Initial_Condition and if it does, -- the encapsulated expression is nontrivial. + function Is_Null_Record_Type (T : Entity_Id) return Boolean; + -- Determine whether T is declared with a null record definition or a + -- null component list. + function Is_Object_Reference (N : Node_Id) return Boolean; -- Determines if the tree referenced by N represents an object. Both -- variable and constant objects return True (compare Is_Variable). -- cgit v1.2.1