From df9ad6bc4901bf25c40b136fa6c1b39a78d76f41 Mon Sep 17 00:00:00 2001 From: Arnaud Charlet Date: Thu, 12 Nov 2015 12:54:53 +0100 Subject: [multiple changes] 2015-11-12 Gary Dismukes * gnat1drv.adb, opt.ads: Minor reformatting. 2015-11-12 Ed Schonberg * sem_ch3.adb (Analyze_Number_Declaration): Call Analyze_Dimension, to propagate dimension information from expression to named number. * sem_dim.ads: Documentation: number declaration and explicit dereference can carry dimension information. * sem_dim.adb (Analyze_Dimension_Number_Declaration): New procedure, to propagate dimension information from expression of declaration to named number, whose type becomes one of the dimensioned base types rather than universal real. (Analyze_Dimension_Binary_Op): a) If one operand is a literal that is the value of a declared constant after constant-foloding, use the dimensions of the declared constant. b) If an operand is a literal that is a contant-folded expression, and expander is active, do not report a dimension mismatch if literal does not carry them, because dimension matching will have been checked previously. From-SVN: r230244 --- gcc/ada/sem_dim.ads | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'gcc/ada/sem_dim.ads') diff --git a/gcc/ada/sem_dim.ads b/gcc/ada/sem_dim.ads index 7393bf6..d1521e9 100644 --- a/gcc/ada/sem_dim.ads +++ b/gcc/ada/sem_dim.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 2011-2013, Free Software Foundation, Inc. -- +-- Copyright (C) 2011-2015, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -116,8 +116,10 @@ package Sem_Dim is -- * compontent declaration -- * extended return statement -- * expanded name + -- * explicit dereference -- * identifier -- * indexed component + -- * number declaration -- * object declaration -- * object renaming declaration -- * procedure call statement -- cgit v1.1