sem_ch4.adb (Complete_Object_Operation): Do not insert 'Access for reference types...
authorPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Mon, 18 Sep 2017 09:52:11 +0000 (09:52 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Mon, 18 Sep 2017 09:52:11 +0000 (09:52 +0000)
commit2eda24e95cb9232031a0b7e0be3ca109cfd86a2d
tree87fb901cfb539e595e3225fafc799a20de13ddb8
parentf1e3a534a0f331c40cf76318812e915e1482b45c
sem_ch4.adb (Complete_Object_Operation): Do not insert 'Access for reference types in the access-to-access case.

gcc/ada/

2017-09-18  Bob Duff  <duff@adacore.com>

* sem_ch4.adb (Complete_Object_Operation): Do not insert 'Access for
reference types in the access-to-access case.

2017-09-18  Eric Botcazou  <ebotcazou@adacore.com>

* sem_attr.adb (Analyze_Access_Attribute): Move check for the presence
of the "aliased" keyword on the prefix from here to...
(Resolve_Attribute) <Attribute_Access>: ...here.  Remove useless call
to Check_No_Implicit_Aliasing.
* sinfo.ads (Non_Aliased_Prefix): Delete.
(Set_Non_Aliased_Prefix): Likewise.
* sinfo.adb (Non_Aliased_Prefix): Delete.
(Set_Non_Aliased_Prefix): Likewise.

2017-09-18  Bob Duff  <duff@adacore.com>

* exp_ch5.adb (Build_Formal_Container_Iteration,
Expand_Formal_Container_Element_Loop): Convert the container to the
root type before passing it to the iteration operations, so it will be
of the right type.

2017-09-18  Bob Duff  <duff@adacore.com>

* einfo.ads, validsw.ads, treepr.ads, sem_util.ads: Comment fixes.

2017-09-18  Bob Duff  <duff@adacore.com>

* exp_ch3.adb (Build_Array_Init_Proc): If validity checking is enabled,
and it's a bit-packed array, pass False to the Consider_IS parameter of
Needs_Simple_Initialization.

2017-09-18  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch6.adb (Check_Inline_Pragma): Link the newly generated spec to
the preexisting body.
* sem_prag.adb (Check_Inline_Always_Placement): New routine.
(Process_Inline): Verify the placement of pragma Inline_Always. The
pragma must now appear on the initial declaration of the related
subprogram.

2017-09-18  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Analyze_Declarations): In ASIS mode,  At the end of the
declarative list in a subprogram body, analyze aspext specifications to
provide basic semantic information, because otherwise the aspect
specifications might only be snalyzed during expansion, when related
subprograms are generated.

2017-09-18  Bob Duff  <duff@adacore.com>

* exp_ch9.adb (Is_Simple_Barrier_Name): Follow Original_Node, in case
validity checks have rewritten the tree.

2017-09-18  Bob Duff  <duff@adacore.com>

* sem_util.adb: Comment fixes, and remove redundant Is_Itype check.

2017-09-18  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Save_References_In_Aggregate): When constructing a
qualified exxpression for an aggregate in a generic unit, verify that
the scope of the type is itself visible and not hidden, so that the
qualified expression is correctly resolved in any instance.

gcc/testsuite/

2017-09-18  Bob Duff  <duff@adacore.com>

* gnat.dg/validity_check.adb: New testcase.

2017-09-18  Eric Botcazou  <ebotcazou@adacore.com>

* gnat.dg/overload.ads, gnat.dg/overload.adb: New testcase.

2017-09-18  Bob Duff  <duff@adacore.com>

* gnat.dg/tagged_prefix_call.adb: New testcase.

From-SVN: r252916
22 files changed:
gcc/ada/ChangeLog
gcc/ada/einfo.ads
gcc/ada/exp_ch3.adb
gcc/ada/exp_ch5.adb
gcc/ada/exp_ch9.adb
gcc/ada/sem_attr.adb
gcc/ada/sem_ch12.adb
gcc/ada/sem_ch3.adb
gcc/ada/sem_ch4.adb
gcc/ada/sem_ch6.adb
gcc/ada/sem_prag.adb
gcc/ada/sem_util.adb
gcc/ada/sem_util.ads
gcc/ada/sinfo.adb
gcc/ada/sinfo.ads
gcc/ada/treepr.ads
gcc/ada/validsw.ads
gcc/testsuite/ChangeLog
gcc/testsuite/gnat.dg/overload.adb [new file with mode: 0644]
gcc/testsuite/gnat.dg/overload.ads [new file with mode: 0644]
gcc/testsuite/gnat.dg/tagged_prefix_call.adb [new file with mode: 0644]
gcc/testsuite/gnat.dg/validity_check.adb [new file with mode: 0644]