From 7ded77bbce506b12a4f2bbe751b304ebdcb9af27 Mon Sep 17 00:00:00 2001 From: Justin Squirek Date: Mon, 3 Jan 2022 08:26:44 +0000 Subject: [Ada] Improve error messages to include full package name This patch improves error messages in the compiler so that missing 'with' error messages show the complete package name instead of a limited number of selectors. gcc/ada/ * err_vars.ads: Add new error message names and nodes. * erroutc.adb (Set_Msg_Insertion_Name, Set_Msg_Insertion_Name_Literal): Likewise. * errout.adb (Set_Msg_Insertion_Node): Likewise. * errout.ads: Likewise. * exp_disp.adb (Check_Premature_Freezing): Modify setting of Error_Msg_Node_2 to occur directly before Error_Msg call where applicable. * sem_ch8.adb (Error_Missing_With_Of_Known_Unit): Added to handle the printing of full package names of known units. (Undefined, Find_Expanded_Name): Replace error printing with call to Error_Missing_With_Of_Known_Unit. --- gcc/ada/errout.ads | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'gcc/ada/errout.ads') diff --git a/gcc/ada/errout.ads b/gcc/ada/errout.ads index 950dd55..ff36344 100644 --- a/gcc/ada/errout.ads +++ b/gcc/ada/errout.ads @@ -468,6 +468,9 @@ package Errout is Error_Msg_Name_1 : Name_Id renames Err_Vars.Error_Msg_Name_1; Error_Msg_Name_2 : Name_Id renames Err_Vars.Error_Msg_Name_2; Error_Msg_Name_3 : Name_Id renames Err_Vars.Error_Msg_Name_3; + Error_Msg_Name_4 : Name_Id renames Err_Vars.Error_Msg_Name_4; + Error_Msg_Name_5 : Name_Id renames Err_Vars.Error_Msg_Name_5; + Error_Msg_Name_6 : Name_Id renames Err_Vars.Error_Msg_Name_6; -- Name_Id values for % insertion characters in message Error_Msg_File_1 : File_Name_Type renames Err_Vars.Error_Msg_File_1; @@ -481,6 +484,10 @@ package Errout is Error_Msg_Node_1 : Node_Id renames Err_Vars.Error_Msg_Node_1; Error_Msg_Node_2 : Node_Id renames Err_Vars.Error_Msg_Node_2; + Error_Msg_Node_3 : Node_Id renames Err_Vars.Error_Msg_Node_3; + Error_Msg_Node_4 : Node_Id renames Err_Vars.Error_Msg_Node_4; + Error_Msg_Node_5 : Node_Id renames Err_Vars.Error_Msg_Node_5; + Error_Msg_Node_6 : Node_Id renames Err_Vars.Error_Msg_Node_6; -- Node_Id values for & insertion characters in message Error_Msg_Qual_Level : Nat renames Err_Vars.Error_Msg_Qual_Level; -- cgit v1.1