[Ada] Do not set Current_Error_Node to a node without location
authorEric Botcazou <ebotcazou@adacore.com>
Sat, 19 Feb 2022 11:20:50 +0000 (12:20 +0100)
committerPierre-Marie de Rodat <derodat@adacore.com>
Thu, 19 May 2022 14:05:33 +0000 (14:05 +0000)
The message "No source file position information available" is displayed
in the bugbox when Current_Error_Node has no location, which is useless.

gcc/ada/

* gcc-interface/trans.cc (gnat_to_gnu): Do not set Current_Error_Node
to a node without location.

gcc/ada/gcc-interface/trans.cc

index b8a0d5d..4577d9f 100644 (file)
@@ -6139,7 +6139,8 @@ gnat_to_gnu (Node_Id gnat_node)
   bool aa_sync;
 
   /* Save node number for error message and set location information.  */
-  Current_Error_Node = gnat_node;
+  if (Sloc (gnat_node) > No_Location)
+    Current_Error_Node = gnat_node;
   Sloc_to_locus (Sloc (gnat_node), &input_location);
 
   /* If we are only annotating types and this node is a statement, return