Message ID | 20230526073624.2069067-1-poulhies@adacore.com |
---|---|
State | New |
Headers | show |
Series | [COMMITTED] ada: Reorder components in Ada.Containers.Restricted_Doubly_Linked_Lists | expand |
diff --git a/gcc/ada/libgnat/a-crdlli.ads b/gcc/ada/libgnat/a-crdlli.ads index d9c45177ddd..fa4fe15e420 100644 --- a/gcc/ada/libgnat/a-crdlli.ads +++ b/gcc/ada/libgnat/a-crdlli.ads @@ -314,11 +314,11 @@ private type Node_Array is array (Count_Type range <>) of Node_Type; type List (Capacity : Count_Type) is tagged limited record - Nodes : Node_Array (1 .. Capacity); Free : Count_Type'Base := -1; First : Count_Type := 0; Last : Count_Type := 0; Length : Count_Type := 0; + Nodes : Node_Array (1 .. Capacity); end record; type List_Access is access all List;
From: Eric Botcazou <ebotcazou@adacore.com> An instantiation of the package compiled with -gnatw.q yields: warning: in instantiation at a-crdlli.ads:317 [-gnatw.q] warning: record layout may cause performance issues [-gnatw.q] warning: in instantiation at a-crdlli.ads:317 [-gnatw.q] warning: component "Nodes" whose length depends on a discriminant [-gnatw.q] warning: in instantiation at a-crdlli.ads:317 [-gnatw.q] warning: comes too early and was moved down [-gnatw.q] gcc/ada/ * libgnat/a-crdlli.ads (List): Move Nodes component to the end. Tested on x86_64-pc-linux-gnu, committed on master. --- gcc/ada/libgnat/a-crdlli.ads | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)