einfo.ads (Size_Depends_On_Discriminant): Adjust description.
authorEric Botcazou <ebotcazou@adacore.com>
Thu, 24 Mar 2011 16:08:50 +0000 (16:08 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Thu, 24 Mar 2011 16:08:50 +0000 (16:08 +0000)
commite3c4580e400367dfceec3e4c0539b43fcb4ed340
treeb9005d8dcb786199a152d4e3d91717ba40010452
parentcf4a36dfe1135dce070ac1d5a570e00a3eaac0be
einfo.ads (Size_Depends_On_Discriminant): Adjust description.

* einfo.ads (Size_Depends_On_Discriminant): Adjust description.
* layout.adb (Compute_Size_Depends_On_Discriminant): New procedure
to compute Set_Size_Depends_On_Discriminant.
(Layout_Type): Call it on array types in back-end layout mode.
* sem_util.adb (Requires_Transient_Scope): Return true for array
types only if the size depends on the value of discriminants.
* gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Use the RHS
type if the RHS is a call to a function that returns an unconstrained
type with default discriminant.

From-SVN: r171402
gcc/ada/ChangeLog
gcc/ada/einfo.ads
gcc/ada/gcc-interface/utils2.c
gcc/ada/layout.adb
gcc/ada/sem_util.adb
gcc/testsuite/ChangeLog
gcc/testsuite/gnat.dg/array16.adb [new file with mode: 0644]
gcc/testsuite/gnat.dg/array16.ads [new file with mode: 0644]
gcc/testsuite/gnat.dg/array16_pkg.ads [new file with mode: 0644]