exp_ch4.adb (Expand_N_In): Replace test of expression in its own type by valid…
exp_ch4.adb (Expand_N_In): Replace test of expression in its own type by valid test and generate warning. 2005-09-01 Robert Dewar <dewar@adacore.com> Gary Dismukes <dismukes@adacore.com> Javier Miranda <miranda@adacore.com> * exp_ch4.adb (Expand_N_In): Replace test of expression in its own type by valid test and generate warning. (Tagged_Membership): Generate call to the run-time subprogram IW_Membership in case of "Iface_CW_Typ in Typ'Class" Change formal name Subtype_Mark to Result_Definition in several calls to Make_Function_Specification. (Expand_Allocator_Expression): Add tests for suppression of the AI-344 check for proper accessibility of the operand of a class-wide allocator. The check can be left out if checks are suppressed or if the expression has a specific tagged type whose level is known to be safe. * exp_ch5.adb (Expand_N_Assignment_Statement): Simplify the code that generates the run-time check associated with null-excluding entities. (Expand_N_Return_Statement): Add tests to determine if the accessibility check on the level of the return expression of a class-wide function can be elided. The check usually isn't needed if the expression has a specific type (unless it's a conversion or a formal parameter). Also add a test for whether accessibility checks are suppressed. Augment the comments to describe the conditions for performing the check. From-SVN: r103849
Showing
This diff is collapsed.
Click to expand it.
Please
register
or
sign in
to comment