[Ada] ACATS 4.1H - BC60005 - null exclusion matching for formal subprograms

Pierre-Marie de Rodat derodat@adacore.com
Tue Jul 7 09:27:36 GMT 2020


This ACATS test shows that we had several inconsistencies in the
checking of null exclusion matching. We also realized that some old code
in sem_ch6.adb was wrong and no longer necessary, so removed it.

Tested on x86_64-pc-linux-gnu, committed on trunk

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.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.diff
Type: text/x-diff
Size: 11515 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc-patches/attachments/20200707/e5456bff/attachment-0001.bin>


More information about the Gcc-patches mailing list