freeze.adb (Check_Inherited_Conditions): Perform two passes over the primitive operat...
authorEd Schonberg <schonberg@adacore.com>
Mon, 4 Jul 2016 10:03:34 +0000 (10:03 +0000)
committerArnaud Charlet <charlet@gcc.gnu.org>
Mon, 4 Jul 2016 10:03:34 +0000 (12:03 +0200)
commit002e3d16cbf86f160bc6467983ca515471c4156d
tree7e114335e52346e0606bbed08edca8aaef5be224
parent10edebe7b49ee1903bca94e03d4cf9c8194c3905
freeze.adb (Check_Inherited_Conditions): Perform two passes over the primitive operations of the type...

2016-07-04  Ed Schonberg  <schonberg@adacore.com>

* freeze.adb (Check_Inherited_Conditions): Perform two passes over
the primitive operations of the type: one over source overridings
to build the primitives mapping, and one over inherited operations
to check for the need to create wrappers, and to check legality
of inherited condition in SPARK.
* sem_prag.ads (Update_Primitive_Mapping): Make public, for use
in freeze actions.
* sem_prag.adb (Build_Pragma_Check_Equivalent): Refine error
message in the case of an inherited condition in SPARK that
includes a call to some other overriding primitive.

From-SVN: r237960
gcc/ada/ChangeLog
gcc/ada/freeze.adb
gcc/ada/sem_prag.adb
gcc/ada/sem_prag.ads