diff options
Diffstat (limited to 'dev-ada/gnatcoll')
-rw-r--r-- | dev-ada/gnatcoll/files/gnatcoll-2017-gentoo.patch | 62 | ||||
-rw-r--r-- | dev-ada/gnatcoll/gnatcoll-2017.ebuild | 2 |
2 files changed, 63 insertions, 1 deletions
diff --git a/dev-ada/gnatcoll/files/gnatcoll-2017-gentoo.patch b/dev-ada/gnatcoll/files/gnatcoll-2017-gentoo.patch index 36da82626f4c..f0ec53f368ea 100644 --- a/dev-ada/gnatcoll/files/gnatcoll-2017-gentoo.patch +++ b/dev-ada/gnatcoll/files/gnatcoll-2017-gentoo.patch @@ -142,3 +142,65 @@ GNAT_Version => GNAT_Version, Errors => Local_On_Error'Unrestricted_Access); Free (GNAT_Version); +--- a/src/gnatcoll-projects.adb 2018-11-14 18:47:27.760365233 +0100 ++++ b/src/gnatcoll-projects.adb 2018-11-14 19:10:43.961337201 +0100 +@@ -3273,9 +3273,9 @@ + Status : out Status_Type; + Result : out GNATCOLL.VFS.File_Array_Access) + is +- Mains_Str_List : String_List_Access; ++ Mains_Str_List : String_Vectors.Vector; + Closure_Status : GPR.Util.Status_Type; +- Closures_List : String_List_Access; ++ Closures_List : String_Vectors.Vector; + begin + Trace (Me, "Get_Closures"); + +@@ -3287,25 +3287,18 @@ + return; + end if; + +- Mains_Str_List := new String_List (Mains'First .. Mains'Last); + for I in Mains'Range loop +- Mains_Str_List (I) := new String'(Mains (I).Display_Base_Name); ++ Mains_Str_List.Append (Mains (I).Display_Base_Name); + end loop; + + GPR.Util.Get_Closures + (Project.Get_View, Project.Tree_View, +- Mains => Mains_Str_List.all, ++ Mains => Mains_Str_List, + All_Projects => All_Projects, + Include_Externally_Built => Include_Externally_Built, + Status => Closure_Status, + Result => Closures_List); + +- -- Freeing temporary list of mains. +- for I in Mains_Str_List'Range loop +- Free (Mains_Str_List (I)); +- end loop; +- Free (Mains_Str_List); +- + case Closure_Status is + when Success => + Status := Success; +@@ -3321,17 +3314,10 @@ + end case; + + if Closure_Status in Success | Incomplete_Closure then +- for I in Closures_List'Range loop +- Append (Result, Create (+Closures_List (I).all)); ++ for Closure of Closures_List loop ++ Append (Result, Create (+Closure)); + end loop; + end if; +- +- -- Freeing temporary list of closures. +- for I in Closures_List'Range loop +- Free (Closures_List (I)); +- end loop; +- Free (Closures_List); +- + end Get_Closures; + + ---------------- diff --git a/dev-ada/gnatcoll/gnatcoll-2017.ebuild b/dev-ada/gnatcoll/gnatcoll-2017.ebuild index 8790026af64c..20e5c844541b 100644 --- a/dev-ada/gnatcoll/gnatcoll-2017.ebuild +++ b/dev-ada/gnatcoll/gnatcoll-2017.ebuild @@ -35,7 +35,7 @@ RDEPEND="gnat_2016? ( dev-lang/gnat-gpl:4.9.4 ) postgres? ( dev-db/postgresql:* ) sqlite? ( dev-db/sqlite ) projects? ( - ~dev-ada/libgpr-2017[gnat_2016=,gnat_2017=,shared?,static-libs?] + ~dev-ada/libgpr-2018[gnat_2016=,gnat_2017=,shared?,static-libs?] dev-ada/xmlada[shared?,static-libs?] )" DEPEND="${RDEPEND} |