diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2021-07-12 08:41:54 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2021-07-12 08:41:54 +0100 |
commit | 4df3bf9762850b34cd1ead5c80374d1a0fc3362e (patch) | |
tree | 3080c5cb7ad17abcb63776a9f21c4947845546a6 /dev-lang/gnat-gpl/files | |
parent | 814f4cf860e299a046b649eaee5463427984c09c (diff) |
gentoo resync : 12.07.2021
Diffstat (limited to 'dev-lang/gnat-gpl/files')
-rw-r--r-- | dev-lang/gnat-gpl/files/gcc-spec-env-r1.patch | 87 | ||||
-rw-r--r-- | dev-lang/gnat-gpl/files/gnat-gpl-2016-bootstrap.patch | 66 | ||||
-rw-r--r-- | dev-lang/gnat-gpl/files/gnat-gpl-2016-finalization.patch | 220 | ||||
-rw-r--r-- | dev-lang/gnat-gpl/files/gnat-gpl-2016-gentoo.patch | 57 | ||||
-rw-r--r-- | dev-lang/gnat-gpl/files/gnat-gpl-2016-profile.patch | 113 |
5 files changed, 0 insertions, 543 deletions
diff --git a/dev-lang/gnat-gpl/files/gcc-spec-env-r1.patch b/dev-lang/gnat-gpl/files/gcc-spec-env-r1.patch deleted file mode 100644 index a58926836e4e..000000000000 --- a/dev-lang/gnat-gpl/files/gcc-spec-env-r1.patch +++ /dev/null @@ -1,87 +0,0 @@ -2013-08-22 Magnus Granberg <zorry@gentoo.org> - - * gcc/gcc.c (main): Add support for external spec file via the GCC_SPECS env var - and move the process of the user specifed specs. - - This allows us to easily control pie/ssp defaults with gcc-config profiles. - Original patch by Rob Holland - Extended to support multiple entries separated by ':' by Kevin F. Quinn - Modified to use getenv instead of poisoned GET_ENVIRONMENT by Ryan Hill - Modified to process the GCC_SPECS env var befor DRIVER_SELF_SPECS by Magnus Granberg - ---- gcc-4.8-20130210/gcc/gcc.c 2013-02-05 16:55:31.000000000 +0100 -+++ gcc-4.8-20130210-work/gcc/gcc.c 2013-07-26 02:32:14.625089864 +0200 -@@ -6427,6 +6428,48 @@ main (int argc, char **argv) - do_option_spec (option_default_specs[i].name, - option_default_specs[i].spec); - -+#if !(defined (__MSDOS__) || defined (OS2) || defined (VMS) || defined (WIN32)) -+ /* Add specs listed in GCC_SPECS. Note; in the process of separating -+ * each spec listed, the string is overwritten at token boundaries -+ * (':') with '\0', an effect of strtok_r(). -+ */ -+ specs_file = getenv ("GCC_SPECS"); -+ if (specs_file && (strlen(specs_file) > 0)) -+ { -+ char *spec, *saveptr; -+ for (spec=strtok_r(specs_file,":",&saveptr); -+ spec!=NULL; -+ spec=strtok_r(NULL,":",&saveptr)) -+ { -+ struct user_specs *user = (struct user_specs *) -+ xmalloc (sizeof (struct user_specs)); -+ user->next = (struct user_specs *) 0; -+ user->filename = spec; -+ if (user_specs_tail) -+ user_specs_tail->next = user; -+ else -+ user_specs_head = user; -+ user_specs_tail = user; -+ } -+ } -+#endif -+ /* Process any user specified specs in the order given on the command -+ * line. */ -+ for (uptr = user_specs_head; uptr; uptr = uptr->next) -+ { -+ char *filename = find_a_file (&startfile_prefixes, uptr->filename, -+ R_OK, true); -+ read_specs (filename ? filename : uptr->filename, false, true); -+ } -+ /* Process any user self specs. */ -+ { -+ struct spec_list *sl; -+ for (sl = specs; sl; sl = sl->next) -+ if (sl->name_len == sizeof "self_spec" - 1 -+ && !strcmp (sl->name, "self_spec")) -+ do_self_spec (*sl->ptr_spec); -+ } -+ - /* Process DRIVER_SELF_SPECS, adding any new options to the end - of the command line. */ - -@@ -6535,24 +6578,6 @@ main (int argc, char **argv) - PREFIX_PRIORITY_LAST, 0, 1); - } - -- /* Process any user specified specs in the order given on the command -- line. */ -- for (uptr = user_specs_head; uptr; uptr = uptr->next) -- { -- char *filename = find_a_file (&startfile_prefixes, uptr->filename, -- R_OK, true); -- read_specs (filename ? filename : uptr->filename, false, true); -- } -- -- /* Process any user self specs. */ -- { -- struct spec_list *sl; -- for (sl = specs; sl; sl = sl->next) -- if (sl->name_len == sizeof "self_spec" - 1 -- && !strcmp (sl->name, "self_spec")) -- do_self_spec (*sl->ptr_spec); -- } -- - if (compare_debug) - { - enum save_temps save; diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2016-bootstrap.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2016-bootstrap.patch deleted file mode 100644 index aed1ad0e90be..000000000000 --- a/dev-lang/gnat-gpl/files/gnat-gpl-2016-bootstrap.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 41a4aa66eac45c8862a79351647ec06dd03bd1f5 Mon Sep 17 00:00:00 2001 -From: jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> -Date: Sat, 13 Dec 2014 11:24:37 +0000 -Subject: [PATCH] PR bootstrap/64023 * Makefile.tpl - (EXTRA_TARGET_FLAGS): Set STAGE1_LDFLAGS to POSTSTAGE1_LDFLAGS and - STAGE1_LIBS to POSTSTAGE1_LIBS. Add -B to libstdc++-v3/src/.libs and - libstdc++-v3/libsupc++/.libs to CXX. * Makefile.in: Regenerated. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218705 138bc75d-0d04-0410-961f-82ee72b054a4 ---- - ChangeLog | 9 +++++++++ - Makefile.in | 6 +++++- - Makefile.tpl | 6 +++++- - 3 files changed, 19 insertions(+), 2 deletions(-) - -diff --git a/Makefile.in b/Makefile.in -index ba5ae4c2ecb..8ffc313f157 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -835,7 +835,9 @@ EXTRA_TARGET_FLAGS = \ - 'AS=$(COMPILER_AS_FOR_TARGET)' \ - 'CC=$$(CC_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \ - 'CFLAGS=$$(CFLAGS_FOR_TARGET)' \ -- 'CXX=$$(CXX_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \ -+ 'CXX=$$(CXX_FOR_TARGET) -B$$r/$$(TARGET_SUBDIR)/libstdc++-v3/src/.libs \ -+ -B$$r/$$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs \ -+ $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \ - 'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \ - 'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \ - 'GCJ=$$(GCJ_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \ -@@ -853,6 +855,8 @@ EXTRA_TARGET_FLAGS = \ - 'WINDRES=$$(WINDRES_FOR_TARGET)' \ - 'WINDMC=$$(WINDMC_FOR_TARGET)' \ - 'XGCC_FLAGS_FOR_TARGET=$(XGCC_FLAGS_FOR_TARGET)' \ -+ 'STAGE1_LDFLAGS=$$(POSTSTAGE1_LDFLAGS)' \ -+ 'STAGE1_LIBS=$$(POSTSTAGE1_LIBS)' \ - "TFLAGS=$$TFLAGS" - - TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) -diff --git a/Makefile.tpl b/Makefile.tpl -index dcbc6b1b143..bb8227eaafa 100644 ---- a/Makefile.tpl -+++ b/Makefile.tpl -@@ -641,7 +641,9 @@ EXTRA_TARGET_FLAGS = \ - 'AS=$(COMPILER_AS_FOR_TARGET)' \ - 'CC=$$(CC_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \ - 'CFLAGS=$$(CFLAGS_FOR_TARGET)' \ -- 'CXX=$$(CXX_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \ -+ 'CXX=$$(CXX_FOR_TARGET) -B$$r/$$(TARGET_SUBDIR)/libstdc++-v3/src/.libs \ -+ -B$$r/$$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs \ -+ $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \ - 'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \ - 'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \ - 'GCJ=$$(GCJ_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \ -@@ -659,6 +661,8 @@ EXTRA_TARGET_FLAGS = \ - 'WINDRES=$$(WINDRES_FOR_TARGET)' \ - 'WINDMC=$$(WINDMC_FOR_TARGET)' \ - 'XGCC_FLAGS_FOR_TARGET=$(XGCC_FLAGS_FOR_TARGET)' \ -+ 'STAGE1_LDFLAGS=$$(POSTSTAGE1_LDFLAGS)' \ -+ 'STAGE1_LIBS=$$(POSTSTAGE1_LIBS)' \ - "TFLAGS=$$TFLAGS" - - TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) --- -2.15.0 - diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2016-finalization.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2016-finalization.patch deleted file mode 100644 index 44503ae6b72e..000000000000 --- a/dev-lang/gnat-gpl/files/gnat-gpl-2016-finalization.patch +++ /dev/null @@ -1,220 +0,0 @@ ---- a/gcc/ada/exp_attr.adb 2018-11-16 20:23:21.775906196 +0100 -+++ b/gcc/ada/exp_attr.adb 2018-11-16 20:25:57.418211404 +0100 -@@ -3121,6 +3121,121 @@ - Analyze_And_Resolve (N, Standard_String); - end External_Tag; - -+ ----------------------- -+ -- Finalization_Size -- -+ ----------------------- -+ -+ when Attribute_Finalization_Size => Finalization_Size : declare -+ function Calculate_Header_Size return Node_Id; -+ -- Generate a runtime call to calculate the size of the hidden header -+ -- along with any added padding which would precede a heap-allocated -+ -- object of the prefix type. -+ -+ --------------------------- -+ -- Calculate_Header_Size -- -+ --------------------------- -+ -+ function Calculate_Header_Size return Node_Id is -+ begin -+ -- Generate: -+ -- Universal_Integer -+ -- (Header_Size_With_Padding (Pref'Alignment)) -+ -+ return -+ Convert_To (Universal_Integer, -+ Make_Function_Call (Loc, -+ Name => -+ New_Occurrence_Of (RTE (RE_Header_Size_With_Padding), Loc), -+ -+ Parameter_Associations => New_List ( -+ Make_Attribute_Reference (Loc, -+ Prefix => New_Copy_Tree (Pref), -+ Attribute_Name => Name_Alignment)))); -+ end Calculate_Header_Size; -+ -+ -- Local variables -+ -+ Size : Entity_Id; -+ -+ -- Start of Finalization_Size -+ -+ begin -+ -- An object of a class-wide type first requires a runtime check to -+ -- determine whether it is actually controlled or not. Depending on -+ -- the outcome of this check, the Finalization_Size of the object -+ -- may be zero or some positive value. -+ -- -+ -- In this scenario, Pref'Finalization_Size is expanded into -+ -- -+ -- Size : Integer := 0; -+ -- -+ -- if Needs_Finalization (Pref'Tag) then -+ -- Size := -+ -- Universal_Integer -+ -- (Header_Size_With_Padding (Pref'Alignment)); -+ -- end if; -+ -- -+ -- and the attribute reference is replaced with a reference to Size. -+ -+ if Is_Class_Wide_Type (Ptyp) then -+ Size := Make_Temporary (Loc, 'S'); -+ -+ Insert_Actions (N, New_List ( -+ -+ -- Generate: -+ -- Size : Integer := 0; -+ -+ Make_Object_Declaration (Loc, -+ Defining_Identifier => Size, -+ Object_Definition => -+ New_Occurrence_Of (Standard_Integer, Loc), -+ Expression => Make_Integer_Literal (Loc, 0)), -+ -+ -- Generate: -+ -- if Needs_Finalization (Pref'Tag) then -+ -- Size := -+ -- Universal_Integer -+ -- (Header_Size_With_Padding (Pref'Alignment)); -+ -- end if; -+ -+ Make_If_Statement (Loc, -+ Condition => -+ Make_Function_Call (Loc, -+ Name => -+ New_Occurrence_Of (RTE (RE_Needs_Finalization), Loc), -+ -+ Parameter_Associations => New_List ( -+ Make_Attribute_Reference (Loc, -+ Prefix => New_Copy_Tree (Pref), -+ Attribute_Name => Name_Tag))), -+ -+ Then_Statements => New_List ( -+ Make_Assignment_Statement (Loc, -+ Name => New_Occurrence_Of (Size, Loc), -+ Expression => Calculate_Header_Size))))); -+ -+ Rewrite (N, New_Occurrence_Of (Size, Loc)); -+ -+ -- The prefix is known to be controlled at compile time. Calculate -+ -- Finalization_Size by calling function Header_Size_With_Padding. -+ -+ elsif Needs_Finalization (Ptyp) then -+ Rewrite (N, Calculate_Header_Size); -+ -+ -- The prefix is not an object with controlled parts, so its -+ -- Finalization_Size is zero. -+ -+ else -+ Rewrite (N, Make_Integer_Literal (Loc, 0)); -+ end if; -+ -+ -- Due to cases where the entity type of the attribute is already -+ -- resolved the rewritten N must get re-resolved to its appropriate -+ -- type. -+ -+ Analyze_And_Resolve (N, Typ); -+ end Finalization_Size; -+ - ----------- - -- First -- - ----------- ---- a/gcc/ada/snames.ads-tmpl 2016-05-16 11:29:28.000000000 +0200 ---- b/gcc/ada/snames.ads-tmpl 2016-05-16 11:29:28.000000000 +0200 -@@ -884,6 +884,7 @@ - Name_Exponent : constant Name_Id := N + $; - Name_External_Tag : constant Name_Id := N + $; - Name_Fast_Math : constant Name_Id := N + $; -- GNAT -+ Name_Finalization_Size : constant Name_Id := N + $; -- GNAT - Name_First : constant Name_Id := N + $; - Name_First_Bit : constant Name_Id := N + $; - Name_First_Valid : constant Name_Id := N + $; -- Ada 12 -@@ -1523,6 +1524,7 @@ - Attribute_Exponent, - Attribute_External_Tag, - Attribute_Fast_Math, -+ Attribute_Finalization_Size, - Attribute_First, - Attribute_First_Bit, - Attribute_First_Valid, ---- a/gcc/ada/sem_attr.ads 2018-11-16 21:35:46.821279875 +0100 -+++ b/gcc/ada/sem_attr.ads 2018-11-16 21:36:00.028057464 +0100 -@@ -242,6 +242,16 @@ - -- enumeration value. Constraint_Error is raised if no value of the - -- enumeration type corresponds to the given integer value. - -+ ----------------------- -+ -- Finalization_Size -- -+ ----------------------- -+ -+ Attribute_Finalization_Size => True, -+ -- For every object or non-class-wide-type, Finalization_Size returns -+ -- the size of the hidden header used for finalization purposes as if -+ -- the object or type was allocated on the heap. The size of the header -+ -- does take into account any extra padding due to alignment issues. -+ - ----------------- - -- Fixed_Value -- - ----------------- ---- a/gcc/ada/sem_attr.adb 2018-11-16 21:35:49.698231429 +0100 -+++ b/gcc/ada/sem_attr.adb 2018-11-16 21:36:00.028057464 +0100 -@@ -3828,6 +3828,42 @@ - Check_Standard_Prefix; - Rewrite (N, New_Occurrence_Of (Boolean_Literals (Fast_Math), Loc)); - -+ ----------------------- -+ -- Finalization_Size -- -+ ----------------------- -+ -+ when Attribute_Finalization_Size => -+ Check_E0; -+ -+ -- The prefix denotes an object -+ -+ if Is_Object_Reference (P) then -+ Check_Object_Reference (P); -+ -+ -- The prefix denotes a type -+ -+ elsif Is_Entity_Name (P) and then Is_Type (Entity (P)) then -+ Check_Type; -+ Check_Not_Incomplete_Type; -+ -+ -- Attribute 'Finalization_Size is not defined for class-wide -+ -- types because it is not possible to know statically whether -+ -- a definite type will have controlled components or not. -+ -+ if Is_Class_Wide_Type (Etype (P)) then -+ Error_Attr_P -+ ("prefix of % attribute cannot denote a class-wide type"); -+ end if; -+ -+ -- The prefix denotes an illegal construct -+ -+ else -+ Error_Attr_P -+ ("prefix of % attribute must be a definite type or an object"); -+ end if; -+ -+ Set_Etype (N, Universal_Integer); -+ - ----------- - -- First -- - ----------- -@@ -8264,6 +8300,13 @@ - Fold_Uint (N, - Eval_Fat.Exponent (P_Base_Type, Expr_Value_R (E1)), Static); - -+ ----------------------- -+ -- Finalization_Size -- -+ ----------------------- -+ -+ when Attribute_Finalization_Size => -+ null; -+ - ----------- - -- First -- - ----------- diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2016-gentoo.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2016-gentoo.patch deleted file mode 100644 index 959ed5183124..000000000000 --- a/dev-lang/gnat-gpl/files/gnat-gpl-2016-gentoo.patch +++ /dev/null @@ -1,57 +0,0 @@ ---- a/patch/09_all_default-ssp.patch 2017-01-08 16:14:09.377755019 +0100 -+++ b/patch/09_all_default-ssp.patch 2017-01-08 16:15:48.792764201 +0100 -@@ -78,14 +78,14 @@ - optimizing. The default value is 32. - --- a/gcc/cp/lang-specs.h - +++ b/gcc/cp/lang-specs.h --@@ -46,7 +46,7 @@ along with GCC; see the file COPYING3. If not see -+@@ -46,7 +46,7 @@ - %(cpp_options) %2 -o %{save-temps*:%b.ii} %{!save-temps*:%g.ii} \n}\ - cc1plus %{save-temps*|no-integrated-cpp:-fpreprocessed %{save-temps*:%b.ii} %{!save-temps*:%g.ii}}\ - %{!save-temps*:%{!no-integrated-cpp:%(cpp_unique_options)}}\ - - %(cc1_options) %2\ - + %(cc1_options) %(ssp_default) %2\ -- %{!fsyntax-only:%{!fdump-ada-spec*:-o %g.s %{!o*:--output-pch=%i.gch}\ -- %W{o*:--output-pch=%*}}%V}}}}", -+ %{!fsyntax-only:-o %g.s %{!fdump-ada-spec*:%{!fdump-xref*:%{!o*:--output-pch=%i.gch}\ -+ %W{o*:--output-pch=%*}}}%V}}}}", - CPLUSPLUS_CPP_SPEC, 0, 0}, - @@ -57,11 +57,11 @@ along with GCC; see the file COPYING3. If not see - %(cpp_options) %2 -o %{save-temps*:%b.ii} %{!save-temps*:%g.ii} \n}\ -@@ -151,14 +151,14 @@ - /* This contains cpp options which are not passed when the preprocessor - output will be used by another program. */ - @@ -1015,9 +1024,9 @@ static const struct compiler default_compilers[] = -- %{save-temps*|traditional-cpp|no-integrated-cpp:%(trad_capable_cpp) \ -+ %{save-temps*|fdump-scos|traditional-cpp|no-integrated-cpp:%(trad_capable_cpp) \ - %(cpp_options) -o %{save-temps*:%b.i} %{!save-temps*:%g.i} \n\ - cc1 -fpreprocessed %{save-temps*:%b.i} %{!save-temps*:%g.i} \ - - %(cc1_options)}\ - + %(cc1_options) %(ssp_default)}\ -- %{!save-temps*:%{!traditional-cpp:%{!no-integrated-cpp:\ --- cc1 %(cpp_unique_options) %(cc1_options)}}}\ --+ cc1 %(cpp_unique_options) %(cc1_options) %(ssp_default)}}}\ -+ %{!save-temps*:%{!fdump-scos:%{!traditional-cpp:%{!no-integrated-cpp:\ -+- cc1 %(cpp_unique_options) %(cc1_options)}}}}\ -++ cc1 %(cpp_unique_options) %(cc1_options) %(ssp_default)}}}}\ - %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 1}, - {"-", - "%{!E:%e-E or -x required when input is from standard input}\ ---- a/gcc-4.9-gpl-2016-src/gcc/ada/osint.adb 2017-03-10 21:58:02.600710156 +0100 -+++ b/gcc-4.9-gpl-2016-src/gcc/ada/osint.adb 2017-03-10 21:59:38.033983293 +0100 -@@ -2229,14 +2229,11 @@ - for J in Start_Of_Prefix .. Name_Len - Prog'Length + 1 loop - if Name_Buffer (J .. J + Prog'Length - 1) = Prog then - End_Of_Prefix := J - 1; -+ Start_Of_Suffix := J + Prog'Length; - exit; - end if; - end loop; - -- if End_Of_Prefix > 1 then -- Start_Of_Suffix := End_Of_Prefix + Prog'Length + 1; -- end if; -- - -- Create the new program name - - return new String' diff --git a/dev-lang/gnat-gpl/files/gnat-gpl-2016-profile.patch b/dev-lang/gnat-gpl/files/gnat-gpl-2016-profile.patch deleted file mode 100644 index 561c012a23e6..000000000000 --- a/dev-lang/gnat-gpl/files/gnat-gpl-2016-profile.patch +++ /dev/null @@ -1,113 +0,0 @@ ---- a/gcc/ada/s-rident.ads 2018-11-18 18:47:39.042412895 +0100 -+++ b/gcc/ada/s-rident.ads 2018-11-18 19:02:31.736559044 +0100 -@@ -378,15 +378,17 @@ - type Profile_Name is - (No_Profile, - No_Implementation_Extensions, -+ Restricted_Tasking, -+ Restricted, - Ravenscar, - GNAT_Extended_Ravenscar, -- Restricted); -+ GNAT_Ravenscar_EDF); - -- Names of recognized profiles. No_Profile is used to indicate that a - -- restriction came from pragma Restrictions[_Warning], as opposed to - -- pragma Profile[_Warning]. - - subtype Profile_Name_Actual is Profile_Name -- range No_Implementation_Extensions .. Restricted; -+ range No_Implementation_Extensions .. Profile_Name'Last; - -- Actual used profile names - - type Profile_Data is record -@@ -456,6 +458,40 @@ - Max_Task_Entries => 0, - others => 0)), - -+ -- Restricted_Tasking Profile -+ -+ Restricted_Tasking => -+ -+ -- Restrictions for Restricted_Tasking profile -+ -+ (Set => -+ (No_Abort_Statements => True, -+ No_Asynchronous_Control => True, -+ No_Dynamic_Attachment => True, -+ No_Dynamic_Priorities => True, -+ No_Entry_Queue => True, -+ No_Local_Protected_Objects => True, -+ No_Protected_Type_Allocators => True, -+ No_Requeue_Statements => True, -+ No_Task_Allocators => True, -+ No_Task_Attributes_Package => True, -+ No_Task_Hierarchy => True, -+ No_Terminate_Alternatives => True, -+ Max_Asynchronous_Select_Nesting => True, -+ Max_Protected_Entries => True, -+ Max_Select_Alternatives => True, -+ Max_Task_Entries => True, -+ others => False), -+ -+ -- Value settings for Restricted profile -+ -+ Value => -+ (Max_Asynchronous_Select_Nesting => 0, -+ Max_Protected_Entries => 1, -+ Max_Select_Alternatives => 0, -+ Max_Task_Entries => 0, -+ others => 0)), -+ - -- Ravenscar Profile - - -- Note: the table entries here only represent the -@@ -509,6 +545,49 @@ - Max_Task_Entries => 0, - others => 0)), - -+ GNAT_Ravenscar_EDF => -+ -+ -- Restrictions for Ravenscar = Restricted profile .. -+ -+ (Set => -+ (No_Abort_Statements => True, -+ No_Asynchronous_Control => True, -+ No_Dynamic_Attachment => True, -+ No_Dynamic_Priorities => True, -+ No_Entry_Queue => True, -+ No_Local_Protected_Objects => True, -+ No_Protected_Type_Allocators => True, -+ No_Requeue_Statements => True, -+ No_Task_Allocators => True, -+ No_Task_Attributes_Package => True, -+ No_Task_Hierarchy => True, -+ No_Terminate_Alternatives => True, -+ Max_Asynchronous_Select_Nesting => True, -+ Max_Protected_Entries => True, -+ Max_Select_Alternatives => True, -+ Max_Task_Entries => True, -+ -+ -- plus these additional restrictions: -+ -+ No_Calendar => True, -+ No_Implicit_Heap_Allocations => True, -+ No_Local_Timing_Events => True, -+ No_Relative_Delay => True, -+ No_Select_Statements => True, -+ No_Specific_Termination_Handlers => True, -+ No_Task_Termination => True, -+ Simple_Barriers => True, -+ others => False), -+ -+ -- Value settings for Ravenscar (same as Restricted) -+ -+ Value => -+ (Max_Asynchronous_Select_Nesting => 0, -+ Max_Protected_Entries => 1, -+ Max_Select_Alternatives => 0, -+ Max_Task_Entries => 0, -+ others => 0)), -+ - GNAT_Extended_Ravenscar => - - -- Restrictions for GNAT_Extended_Ravenscar = |