diff mbox

[Ada] for CodePeer, don't expand Image, Wide_Image, Wide_Wide_Image attributes

Message ID 20170427095719.GA48380@adacore.com
State New
Headers show

Commit Message

Arnaud Charlet April 27, 2017, 9:57 a.m. UTC
This change has no user-visible effect except when Gnat2scil is running.

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

2017-04-27  Steve Baird  <baird@adacore.com>

	* exp_attr.adb (Expand_N_Attribute_Reference):
	Don't expand Image, Wide_Image, Wide_Wide_Image attributes
	for CodePeer.
diff mbox

Patch

Index: exp_attr.adb
===================================================================
--- exp_attr.adb	(revision 247293)
+++ exp_attr.adb	(working copy)
@@ -3598,6 +3598,14 @@ 
       --  Image attribute is handled in separate unit Exp_Imgv
 
       when Attribute_Image =>
+
+         --  Leave attribute unexpanded in CodePeer mode: the gnat2scil
+         --  back-end knows how to handle this attribute directly.
+
+         if CodePeer_Mode then
+            return;
+         end if;
+
          Exp_Imgv.Expand_Image_Attribute (N);
 
       ---------
@@ -6995,6 +7003,14 @@ 
       --  Wide_Image attribute is handled in separate unit Exp_Imgv
 
       when Attribute_Wide_Image =>
+
+         --  Leave attribute unexpanded in CodePeer mode: the gnat2scil
+         --  back-end knows how to handle this attribute directly.
+
+         if CodePeer_Mode then
+            return;
+         end if;
+
          Exp_Imgv.Expand_Wide_Image_Attribute (N);
 
       ---------------------
@@ -7004,6 +7020,14 @@ 
       --  Wide_Wide_Image attribute is handled in separate unit Exp_Imgv
 
       when Attribute_Wide_Wide_Image =>
+
+         --  Leave attribute unexpanded in CodePeer mode: the gnat2scil
+         --  back-end knows how to handle this attribute directly.
+
+         if CodePeer_Mode then
+            return;
+         end if;
+
          Exp_Imgv.Expand_Wide_Wide_Image_Attribute (N);
 
       ----------------