aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/contracts.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@adacore.com>2021-03-19 03:54:38 -0400
committerPierre-Marie de Rodat <derodat@adacore.com>2021-06-18 04:36:52 -0400
commit4edcee5b2bf6ca2c0f7dcf5edcbe6daf715fc26a (patch)
tree48c0a2969337c977ad99871cd42d99880d2a2d0a /gcc/ada/contracts.adb
parent33a3b5f3a5034c3b41bd34fdf145da9a20743a28 (diff)
downloadgcc-4edcee5b2bf6ca2c0f7dcf5edcbe6daf715fc26a.zip
gcc-4edcee5b2bf6ca2c0f7dcf5edcbe6daf715fc26a.tar.gz
gcc-4edcee5b2bf6ca2c0f7dcf5edcbe6daf715fc26a.tar.bz2
[Ada] Premature freezing of types
gcc/ada/ * exp_ch4.adb (Expand_N_Quantified_Expression): Ensure the type of the name of a "for of" loop is frozen. * exp_disp.adb (Check_Premature_Freezing): Complete condition to take into account a private type completed by another private type now that the freezing rule are better implemented. * freeze.adb (Freeze_Entity.Freeze_Profile): Do not perform an early freeze on types if not in the proper scope. Special case expression functions that requires access to the dispatch table. (Should_Freeze_Type): New. * sem_ch13.adb (Resolve_Aspect_Expressions): Prevent assert failure in case of an invalid tree (previous errors detected). * sem_res.adb (Resolve): Remove kludge related to entities causing incorrect premature freezing. * sem_util.adb (Ensure_Minimum_Decoration): Add protection against non base types.
Diffstat (limited to 'gcc/ada/contracts.adb')
0 files changed, 0 insertions, 0 deletions