[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Thu, 12 Nov 2015 11:54:53 +0000 (12:54 +0100)
committerArnaud Charlet <charlet@gcc.gnu.org>
Thu, 12 Nov 2015 11:54:53 +0000 (12:54 +0100)
commitdf9ad6bc4901bf25c40b136fa6c1b39a78d76f41
treeaa3b21fc032f8c4cdeea20baf480c8adda10a71f
parent549cc9c2bcb93b5424c9a0967016d4e51e587311
[multiple changes]

2015-11-12  Gary Dismukes  <dismukes@adacore.com>

* gnat1drv.adb, opt.ads: Minor reformatting.

2015-11-12  Ed Schonberg  <schonberg@adacore.com>

* 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/ChangeLog
gcc/ada/gnat1drv.adb
gcc/ada/opt.ads
gcc/ada/sem_ch3.adb
gcc/ada/sem_dim.adb
gcc/ada/sem_dim.ads