------------------------------------------------------------------------------
with Atree; use Atree;
-with Csets; use Csets;
with Einfo; use Einfo;
with Namet; use Namet;
with Nlists; use Nlists;
with Snames; use Snames;
with Uintp; use Uintp;
+with System.Case_Util;
+
package body Pprint is
List_Name_Count : Natural := 0;
when N_Attribute_Reference =>
if Take_Prefix then
declare
- function To_Mixed_Case (S : String) return String;
- -- Transform given string into the corresponding one in
- -- mixed case form.
-
- -------------------
- -- To_Mixed_Case --
- -------------------
-
- function To_Mixed_Case (S : String) return String is
- Result : String (S'Range);
- Ucase : Boolean := True;
-
- begin
- for J in S'Range loop
- if Ucase then
- Result (J) := Fold_Upper (S (J));
- else
- Result (J) := Fold_Lower (S (J));
- end if;
-
- Ucase := (S (J) = '_');
- end loop;
-
- return Result;
- end To_Mixed_Case;
-
Id : constant Attribute_Id :=
Get_Attribute_Id (Attribute_Name (Expr));
Str : constant String :=
Expr_Name (Prefix (Expr))
& "'"
- & To_Mixed_Case
+ & System.Case_Util.To_Mixed
(Get_Name_String (Attribute_Name (Expr)));
N : Node_Id;