[Ada] ACATS 4.1H - BC60005 - null exclusion matching for formal subprograms
authorArnaud Charlet <charlet@adacore.com>
Sun, 10 May 2020 20:36:00 +0000 (16:36 -0400)
committerPierre-Marie de Rodat <derodat@adacore.com>
Tue, 7 Jul 2020 09:26:57 +0000 (05:26 -0400)
commite378df6d39e76bc5cdc56b3d7c8c57601fe8d6c0
tree1b2b836e029bb96e12ef374a10008c0fcb0c0202
parentdae09f9b557b1a38b4743a4213f7ca47c48eec81
[Ada] ACATS 4.1H - BC60005 - null exclusion matching for formal subprograms

gcc/ada/

* sem_ch6.adb (Check_Conformance): Remove unnecessary (and
wrong) code.
* sem_ch8.adb (Check_Null_Exclusion): Post error at proper
location.  Introduce new helper Null_Exclusion_Mismatch and fix
implementation wrt formal subprograms used in generic bodies.
(Analyze_Subprogram_Renaming): Fix missing setting of
Error_Msg_Sloc.
(Analyze_Object_Renaming): Replace "in Anonymous_Access_Kind" by
Is_Anonymous_Access_Type.
* sem_util.adb (Has_Null_Exclusion): Fix handling of
N_Parameter_Specification.
* sem_ch12.adb (Instantiate_Object): Replace "in
Anonymous_Access_Kind" by Is_Anonymous_Access_Type.
gcc/ada/sem_ch12.adb
gcc/ada/sem_ch6.adb
gcc/ada/sem_ch8.adb
gcc/ada/sem_util.adb