diff options
Diffstat (limited to 'gcc/ada/ChangeLog')
-rw-r--r-- | gcc/ada/ChangeLog | 760 |
1 files changed, 757 insertions, 3 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index f8d6489ac83..77fd4bf15d1 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,11 +1,765 @@ +2011-11-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * s-taprop-tru64.adb (Create_Task): Use Unrestricted_Access. + +2011-11-23 Thomas Quinot <quinot@adacore.com> + + * thread.c, s-oscons-tmplt.c: Generate __gnat_pthread_condattr_setup + only on platforms where this is required, as determined by + s-oscons.h. + +2011-11-23 Ed Schonberg <schonberg@adacore.com> + + * sem_ch9.adb: No check on entry index if error on index. + +2011-11-23 Gary Dismukes <dismukes@adacore.com> + + * sem_ch6.adb (Analyze_Return_Statement): Improve error messages for + return statements nested inside an extended_return_statement. + * gcc-interface/Make-lang.in: Update dependencies. + * gcc-interface/Makefile.in (MISCLIB): Add -lutil for BSD targets. + +2011-11-23 Ed Schonberg <schonberg@adacore.com> + + * freeze.adb (Freeze_All_Ent): An incomplete type is not + frozen by a subprogram body that does not come from source. + +2011-11-23 Pascal Obry <obry@adacore.com> + + * s-oscons-tmplt.c: Add PTY_Library constant. It contains + the library for pseudo terminal support. + * g-exptty.ads: Add pseudo-terminal library into a Linker_Options + pragma. + +2011-11-23 Ed Schonberg <schonberg@adacore.com> + + * sem_ch9.adb: No check on entry family index if generic. + +2011-11-23 Thomas Quinot <quinot@adacore.com> + + * sem_ch9.adb, s-taprop.ads, s-taprop-hpux-dce.adb, s-taprop-irix.adb, + s-taprop-posix.adb, s-taprop-rtx.adb, s-taprop-solaris.adb, + s-taprop-tru64.adb, s-taprop-vxworks.adb: Move dependency on + System.OS_Constants from shared spec of + System.Tasking.Primitive_Operations to the specific body variants + that really require this dependency. + +2011-11-23 Ed Schonberg <schonberg@adacore.com> + + * sem_ch8.adb (Analyze_Subprogram_Renaming_Declaration): + If the declaration has aspects, analyze them so they can be + properly rejected. + +2011-11-23 Hristian Kirtchev <kirtchev@adacore.com> + + * a-comutr.adb, a-coorma.adb, a-coorse.adb, a-convec.adb, a-cihase.adb, + a-cimutr.adb, a-coinve.adb, a-ciorma.adb, a-ciorse.adb, a-cobove.adb, + a-cohama.adb, a-cihama.adb, a-cidlli.adb, a-cdlili.adb, a-cbhama.adb, + a-cbhase.adb, a-cbmutr.adb, a-cborma.adb, a-cborse.adb, a-cbdlli.adb: + Add with and use clause for Ada.Finalization. Type + Iterator and Child_Iterator are now derived from Limited_Controlled. + (Finalize): New routine. + (Iterate): Add a renaming of counter Busy and + increment it. Update the return aggregate. + (Iterate_Children): Add a renaming of + counter Busy and increment it. Update the return aggregate. + (Iterate_Subtree): Add a renaming of counter Busy and increment + it. Update the return aggregate. + * a-cdlili.ads, a-cidlli.ads: Type List_Access is now a general access + type. + * a-cihama.ads: Type Map_Access is now a general access type. + * a-comutr.ads, a-cimutr.ads: Use type Natural for the two locks + associated with the tree. + * a-cohama.ads: Type Map_Access is now a general access type. + * a-coinve.ads, a-convec.ads: Type Vector_Access is now a general + access type. + * exp_ch5.adb (Expand_Iterator_Loop): Do not create a block + to wrap the loop as this is done at an earlier step, during + analysis. The declarations of the iterator and the cursor use + the usual Insert_Action mechanism when added into the tree. + * sem_ch5.adb (Analyze_Loop_Statement): Remove local constant + Loop_Statement and replace all respective uses by N. Add local + constant Loc. Preanalyze the loop iterator to discover whether + it is a container iterator and if it is, wrap the loop in a + block. This ensures that any controlled temporaries produced + by the iteration scheme share the same lifetime of the loop. + (Is_Container_Iterator): New routine. + (Is_Wrapped_In_Block): New routine. + (Pre_Analyze_Range): Move spec and body to the library level. + +2011-11-23 Sergey Rybin <rybin@adacore.com frybin> + + * gnat_ugn.texi, vms_data.ads: Add documentation for new gnatpp option + that controls casing of type and subtype names. + +2011-11-23 Yannick Moy <moy@adacore.com> + + * sem_ch3.adb: Minor addition of comments. + +2011-11-23 Thomas Quinot <quinot@adacore.com> + + * prj-part.adb (Extension_Withs): New global variable, + contains the head of the list of WITH clauses from the EXTENDS + ALL projects for which virtual packages are being created. + (Look_For_Virtual_Projects_For): When recursing through + an EXTENDS ALL, add the WITH clauses of the extending + project to Extension_Withs. When adding a project to the + Virtual_Hash, record the associated Extension_Withs list. + (Create_Virtual_Extending_Project): Add a copy of the appropriate + Extension_Withs to the virtual project. + +2011-11-23 Thomas Quinot <quinot@adacore.com> + + * mlib-tgt-specific-vxworks.adb: Minor reformatting. + +2011-11-23 Thomas Quinot <quinot@adacore.com> + + * Make-generated.in (Sdefault.Target_Name): Set to + $(target_noncanonical) instead of $(target) for consistency. + +2011-11-23 Matthew Heaney <heaney@adacore.com> + + * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb (Iterator): Declared + Iterator type as limited (First, Last): Cursor return value + depends on iterator node value (Iterate): Use start position as + iterator node value (Next, Previous): Forward to corresponding + cursor-based operation. + +2011-11-23 Matthew Heaney <heaney@adacore.com> + + * a-coorse.ads, a-ciorse.ads, a-cborse.ads (Set_Iterator_Interfaces): + Renamed from Ordered_Set_Iterator_Interfaces. + * a-coorse.adb, a-ciorse.adb, a-cborse.adb (Iterator): Declared + Iterator type as limited (First, Last): Cursor return value + depends on iterator node value (Iterate): Use start position as + iterator node value (Next, Previous): Forward to corresponding + cursor-based operation. + * a-cohase.ads, a-cohase.adb: Implemented forward iterator. + * a-cihase.adb, a-cbhase.adb (Iterator): Removed unnecessary + node component (First, Next): Forward call to corresponding + cursor-based operation (Iterate): Representation of iterator no + longer has node component + +2011-11-23 Hristian Kirtchev <kirtchev@adacore.com> + + * exp_intr.adb (Expand_Unc_Deallocation): Ensure that the + dereference has a proper type before the side effect removal + mechanism kicks in. + * sem_ch3.adb (Analyze_Subtype_Declaration): Handle a rare case + where the base type of the subtype is a private itype created + to act as the partial view of a constrained record type. This + scenario manifests with equivalent class-wide types for records + with unknown discriminants. + +2011-11-23 Jerome Guitton <guitton@adacore.com> + + * s-osprim-vxworks.adb (Clock): Use Clock_RT_Ada. + +2011-11-23 Thomas Quinot <quinot@adacore.com> + + * s-oscons-tmplt.c: Fix unbalanced preprocessor directives Minor + reformatting/reorganization. + +2011-11-23 Thomas Quinot <quinot@adacore.com> + + * g-htable.ads: Remove old comments. + +2011-11-23 Thomas Quinot <quinot@adacore.com> + + * exp_imgv.adb: Minor reformatting. + +2011-11-23 Robert Dewar <dewar@adacore.com> + + * sem_ch9.adb (Analyze_Entry_Declaration): Check for entry + family bounds out of range. + +2011-11-23 Matthew Heaney <heaney@adacore.com> + + * a-cohama.adb, a-cihama.adb, a-cbhama.adb (Iterator): Declare + type as limited, and remove node component. + (First, Next): Forward call to corresponding cursor-based operation. + (Iterate): Representation of iterator no longer has node component. + +2011-11-23 Yannick Moy <moy@adacore.com> + + * exp_util.adb: Revert previous change to remove side-effects in Alfa + mode, which is not the correct thing to do for renamings. + +2011-11-23 Thomas Quinot <quinot@adacore.com> + + * s-osinte-hpux.ads, s-taprop-vxworks.adb, s-taprop-tru64.adb, + s-osinte-vxworks.ads, s-osinte-aix.ads, s-osinte-lynxos.ads, + s-osinte-solaris-posix.ads, s-taprop-solaris.adb, a-exetim-posix.adb, + s-osinte-irix.ads, s-osinte-solaris.ads, s-oscons-tmplt.c, + s-taprop-irix.adb, s-osinte-hpux-dce.ads, Makefile.rtl, + s-osinte-tru64.ads, s-osinte-darwin.ads, s-taprop.ads, + s-osinte-freebsd.ads, s-osinte-lynxos-3.ads, s-taprop-hpux-dce.adb, + s-taprop-posix.adb: Remove hard-coded clock ids; + instead, generate them in System.OS_Constants. + (System.OS_Constants.CLOCK_RT_Ada): New constant denoting the + id of the clock providing Ada.Real_Time.Monotonic_Clock. + * thread.c: New file. + (__gnat_pthread_condattr_setup): New function. For platforms where + CLOCK_RT_Ada is not CLOCK_REALTIME, set appropriate condition + variable attribute. + +2011-11-23 Yannick Moy <moy@adacore.com> + + * sem_ch3.adb: Restore the use of Expander_Active instead of + Full_Expander_Active, so that the evaluation is forced in Alfa + mode too. Otherwise, we end up with an unexpected insertion in a + place where it is not supposed to happen, on default parameters + of a call. + +2011-11-23 Thomas Quinot <quinot@adacore.com> + + * prj-pp.adb, prj-pp.ads: Minor new addition: wrapper procedure "wpr" + for Pretty_Print, for use from within gdb. + +2011-11-23 Ed Schonberg <schonberg@adacore.com> + + * exp_ch5.adb (Expand_Iterator_Loop): Wrap the expanded loop + and the cursor declarations in a block, so that the loop variable + is local to the construct. + +2011-11-23 Matthew Heaney <heaney@adacore.com> + + * a-coorma.ads, a-ciorma.ads, a-cborma.ads (Iterate): Returns + type Reversible_Iterator'Class. + * a-coorma.adb, a-ciorma.adb, a-cborma.adb (Iterator): + Declare type as limited. + (First, Last): Return value depends on iterator's start node value. + (Next, Previous): Call corresponding Cursor-based operation. + (Iterate): Indicate whether complete or partial iteration + +2011-11-23 Robert Dewar <dewar@adacore.com> + + * errout.adb: Minor reformattin (Finalize): Take templates into + account for warning suppression. + * errout.ads (Set_Specific_Warning_Off): Add Used parameter. + * erroutc.adb: Minor reformatting (Finalize): Take generic + templates into account for warning suppress. + * erroutc.ads (Set_Specific_Warning_Off): Add Used parameter. + * sem_prag.adb: Minor reformatting (Analyze_Pragma, + case Warnings): Provide Used parameter in call to + Set_Specific_Warnings_Off (to deal with generic template case). + +2011-11-23 Pascal Obry <obry@adacore.com> + + * sem_prag.adb (Process_Convention): Better error message for + stdcall convention on dispatching calls. + +2011-11-23 Gary Dismukes <dismukes@adacore.com> + + * sem_ch4.adb, sem_ch13.adb: Minor reformatting. + +2011-11-23 Javier Miranda <miranda@adacore.com> + + * exp_ch6.adb (Expand_Simple_Function_Return): Add missing + implicit type conversion when the returned object is allocated + in the secondary stack and the type of the returned object is + an interface. Done to force generation of displacement of the + "this" pointer. + +2011-11-23 Pascal Obry <obry@adacore.com> + + * impunit.adb: Add g-exptty and g-tty units. + +2011-11-23 Robert Dewar <dewar@adacore.com> + + * exp_imgv.adb: Minor code reorganization (use Make_Temporary). + +2011-11-23 Robert Dewar <dewar@adacore.com> + + * exp_util.adb, par-ch6.adb, sem_res.adb, par-util.adb: Minor + reformatting. + +2011-11-23 Yannick Moy <moy@adacore.com> + + * sem_ch13.adb (Analyze_Aspect_Specifications): Place error on + line of precondition/ postcondition/invariant. + +2011-11-23 Pascal Obry <obry@adacore.com> + + * g-exptty.ads, g-exptty.adb, g-tty.ads, g-tty.adb, + terminals.c: New files. + Makefile.rtl: Add these new files. + * gnat_rm.texi: Add documentation for GNAT.Expect.TTY. + * gcc-interface/Makefile.in: Add g-exptty, g-tty, terminals.o + * gcc-interface/Make-lang.in: Update dependencies. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * exp_imgv.adb (Expand_Width_Attribute): Handle case of Discard_Names. + * sem_attr.adb (Eval_Attribute, case Width): Ditto. + +2011-11-21 Thomas Quinot <quinot@adacore.com> + + * sinfo.ads: Minor reformatting. + +2011-11-21 Yannick Moy <moy@adacore.com> + + * exp_util.adb: Minor reformatting. Update comments. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * exp_prag.adb, exp_util.adb, sinfo.ads, sem_res.adb, s-stposu.adb, + sem_attr.adb, s-stposu.ads, s-taprop-solaris.adb, s-taprop-irix.adb, + sem_ch6.adb: Minor reformatting. + +2011-11-21 Arnaud Charlet <charlet@adacore.com> + + * s-taprop-irix.adb, s-taprop-solaris.adb (Create_Task): Use + Unrestricted_Access to deal with fact that we properly detect the + error if Access is used. + * gcc-interface/Make-lang.in: Update dependencies. + +2011-11-21 Yannick Moy <moy@adacore.com> + + * exp_prag.adb (Expand_Pragma_Check): Place error on first character + of expression. + * sem_res.adb (Resolve_Short_Circuit): Place error on first + character of expression. + +2011-11-21 Yannick Moy <moy@adacore.com> + + * exp_util.adb (Remove_Side_Effects): Do nothing in Alfa mode. + +2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> + + * exp_attr.adb (Expand_N_Attribute_Reference, case + Max_Size_In_Storage_Elements): Account for the size of the + hidden list header which precedes controlled objects allocated + on the heap. + * rtsfind.ads: Add RE_Header_Size_With_Padding to the runtime + tables. + * sinfo.adb (Header_Size_Added): New routine. + (Set_Header_Size_Added): New routine. + * sinfo.ads: Add flag Controlled_Header_Added along with + associated comment. + (Header_Size_Added): New inlined routine. + (Set_Header_Size_Added): New inlined routine. + * s-stposu.adb (Allocate_Any_Controlled): Use + Header_Size_With_Padding to calculate the proper + size of the header. + (Deallocate_Any_Controlled): Use + Header_Size_With_Padding to calculate the proper size + of the header. (Header_Size_With_Padding): New routine. + (Nearest_Multiple_Rounded_Up): Removed along with its uses. + * s-stposu.ads (Header_Size_With_Padding): New routine. + +2011-11-21 Ed Schonberg <schonberg@adacore.com> + + * aspects.adb: Aspect specifications are allowed on renaming + declarations + * par-ch6.adb (P_Subprogram): Parse aspect specifications in a + subprogram renaming declaration + +2011-11-21 Tristan Gingold <gingold@adacore.com> + + * env.c: Remove unused declaration. + +2011-11-21 Pascal Obry <obry@adacore.com> + + * s-os_lib.ads: Minor style fix. + +2011-11-21 Pascal Obry <obry@adacore.com> + + * adaint.c (__gnat_dup2): When fd are stdout, stdin or stderr and + identical, do nothing on Windows XP. + +2011-11-21 Yannick Moy <moy@adacore.com> + + * sem_ch3.adb (Constrain_Index, Process_Range_Expr_In_Decl): + Use Full_Expander_Active instead of Expander_Active to control + the forced evaluation of expressions for the sake of generating + checks. + +2011-11-21 Thomas Quinot <quinot@adacore.com> + + * init.c: On FreeBSD, stack checking failures may raise SIGBUS. + +2011-11-21 Tristan Gingold <gingold@adacore.com> + + * sysdep.c (mode_read_text, mode_write_text, mode_append_text, + mode_read_binary, mode_write_binary, mode_append_binary, + mode_read_text_plus, mode_write_text_plus, mode_append_text_plus, + mode_read_binary_plus, mode_write_binary_plus, + mode_append_binary_plus): Remove unused declarations. + +2011-11-21 Yannick Moy <moy@adacore.com> + + * gnat_rm.texi: Minor rewording. + +2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> + + * exp_imgv.adb (Expand_Width_Attribute): Emit + an error message rather than a warning when pragma Discard_Names + prevents the computation of 'Width. Do not emit an error through + the use of RE_Null. + +2011-11-21 Javier Miranda <miranda@adacore.com> + + * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Add + implicit type conversion when the type of the allocator is an + interface. Done to force generation of displacement of the "this" + pointer when required. + +2011-11-21 Ed Schonberg <schonberg@adacore.com> + + * sinfo.ads, sinfo.adb: Corresponding_Spec applies to expression + functions, and is set when the expression is a completion of a + previous declaration. + * sem_ch6.adb (Analyze_Expression_Function): To determine properly + whether an expression function completes a previous declaration, + use Find_Corresponding_Spec, as when analyzing a subprogram body. + +2011-11-21 Steve Baird <baird@adacore.com> + + * sem_util.adb (Deepest_Type_Access_Level): Improve comment. + (Type_Access_Level): Improve comment. + +2011-11-21 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/Makefile.in (INCLUDES_FOR_SUBDIR): Add $(fsrcdir) by + means of -iquote unconditionally. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * sem_ch3.adb, sem_util.adb, sem_res.adb, sem_attr.adb: Minor + reformatting. + +2011-11-21 Arnaud Charlet <charlet@adacore.com> + + * s-taprop-posix.adb (Create_Task): Use Unrestricted_Access + to deal with fact that we properly detect the error if Access + is used. + +2011-11-21 Steve Baird <baird@adacore.com> + + * sem_util.ads: Update comment describing function + Deepest_Access_Level. + * sem_util.adb (Deepest_Type_Access_Level): Return Int'Last for a + generic formal type. + (Type_Access_Level): Return library level + for a generic formal type. + * sem_attr.adb (Resolve_Attribute): Replace two Type_Access_Level + calls with calls to Deepest_Type_Access_Level. + * sem_ch3.adb (Analyze_Component_Declaration): replace a + Type_Access_Level call with a call to Deepest_Type_Access_Level. + * sem_res.adb (Resolve_Allocator.Check_Allocator_Discrim_Accessibility): + Replace three Type_Access_Level calls with calls to + Deepest_Type_Access_Level. + (Resolve_Allocator): Replace a Type_Access_Level call with a call to + Deepest_Type_Access_Level. + (Valid_Conversion.Valid_Array_Conversion): Replace a + Type_Access_Level call with a call to Deepest_Type_Access_Level. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * sem_ch3.adb, s-taprop-vms.adb, opt.ads: Minor reformatting. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * sinput.ads: Minor comment fix. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * exp_attr.adb (Expand_N_Attribute_Reference, case First_Bit, + Last_Bit, Position): Handle 2005 case. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * s-atocou-builtin.adb (Decrement): Use Unrestricted_Access + to deal with fact that we properly detect the error if Access + is used. + (Increment): Same fix. + * s-taprop-linux.adb (Create_Task): Use Unrestricted_Access + to deal with fact that we properly detect the error if Access + is used. + * sem_util.adb (Is_Volatile_Object): Properly record that A.B is + volatile if the B component is volatile. This affects the check + for passing such a by reference volatile actual to a non-volatile + formal (which should be illegal) + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * freeze.adb (Freeze_Enumeration_Type): Make sure to set both + size and alignment for foreign convention enumeration types. + * layout.adb (Set_Elem_Alignment): Redo setting of alignment + when size is set. + +2011-11-21 Yannick Moy <moy@adacore.com> + + * checks.adb (Apply_Access_Check, Apply_Arithmetic_Overflow_Check, + Apply_Discriminant_Check, Apply_Divide_Check, + Apply_Selected_Length_Checks, Apply_Selected_Range_Checks, + Build_Discriminant_Checks, Insert_Range_Checks, Selected_Length_Checks, + Selected_Range_Checks): Replace reference to Expander_Active + with reference to Full_Expander_Active, so that expansion of + checks is not performed in Alfa mode + +2011-11-21 Tristan Gingold <gingold@adacore.com> + + * s-taprop-vms.adb (Create_Task): Use Unrestricted_Access to deal with + fact that we properly detect the error if Access is used. + +2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> + + * par-ch4.adb (P_Quantified_Expression): Add an Ada 2012 check. + +2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> + + * exp_imgv.adb: Add with and use clause for Errout. + (Expand_Width_Attribute): Emit a warning when in + configurable run-time mode to provide a better diagnostic message. + +2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> + + * s-finmas.adb (Finalize): Add comment concerning double finalization. + +2011-11-21 Ed Schonberg <schonberg@adacore.com> + + * sem_ch3.adb (Access_Definition): If the access definition + is itself the return type of an access to function definition + which is ultimately the return type of an access to subprogram + declaration, its scope is the enclosing scope of the ultimate + access to subprogram. + +2011-11-21 Steve Baird <baird@adacore.com> + + * sem_res.adb (Valid_Conversion): If a conversion was legal + in the body of a generic, then the corresponding conversion is + legal in the expanded body of an instance of the generic. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * sem_ch3.adb: Minor reformatting. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * s-utf_32.adb (Is_UTF_32_Line_Terminator): Recognize NEL as + line terminator. + * sinput.ads: Add section on Handling of Source Line Terminators. + * types.ads (Line_Terminator): Adjust comments. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * frontend.adb (Frontend): Capture restrictions from config files + * lib-load.adb (Load_Unit): Save/set/restore restriction pragma + information + * lib-xref.adb (Generate_Reference): Fix handling of obsolescent + references. This was noticed during debugging, but it is not + known if it causes real bugs. + * restrict.ads, restrict.adb: New routines to save/set/restore + non-partition-wide restrictions. + * s-rident.ads: Comment changes for new handling of + No_Elaboration_Code + * sem.adb (Sem): Save/Set/Restore non-partition-wide restrictions + * sem_ch10.adb (Analyze_Compilation_Unit): Remove incomplete + attempt to save/restore non-partition-wide restrictions (now + this work is all done in Sem). + * sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings): + Special handling for restriction No_Elaboration_Code. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * gnat_ugn.texi: Document new handling of restrictions pragmas. + +2011-11-21 Pascal Obry <obry@adacore.com> + + * s-taprop-linux.adb (Initialize_Lock): Do not allocate a cond + attribute as not needed. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * sem_prag.adb: Minor reformatting. + +2011-11-21 Pascal Obry <obry@adacore.com> + + * gnat_rm.texi: Document restriction for stdcall convention on + dispatching calls. + +2011-11-21 Pascal Obry <obry@adacore.com> + + * sem_prag.adb (Process_Convention): A dispatching call cannot + have a stdcall calling convention. + +2011-11-21 Pascal Obry <obry@adacore.com> + + * s-taprop-linux.adb (Initialize_Lock): Do not allocate a + mutex attribute as not needed. + (Initialize_TCB): Likewise. + (Initialize): Likewise. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * sem_ch6.adb (Is_Public_Subprogram_For): New procedure + (Process_PPCs): Invariants only apply to public subprograms. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * sem_util.adb, sem_util.ads, sem_attr.adb, restrict.adb, + restrict.ads: Fix for No_Implicit_Aliasing in the renames case. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * a-finali.ads: Use pragma Pure_12 for this unit + * aspects.adb: Add aspect Pure_12 + * aspects.ads: Add aspect Pure_12 + * opt.ads: Add note on Pure_12 + * par-prag.adb: Add dummy entry for Pure_12 + * sem_prag.adb: Implement Pure_12 pragma + * snames.ads-tmpl: Add Entry for Pure_12 + +2011-11-21 Sergey Rybin <rybin@adacore.com frybin> + + * vms_data.ads: Add qualifiers for new gnatpp options + '--call_threshold' and '--par_threshold". + * gnat_ugn.texi: Add description for new gnatpp options + '--call_threshold' and '--par_threshold". + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * lib.ads: Minor reformatting. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * lib-load.ads: Add comment. + +2011-11-21 Gary Dismukes <dismukes@adacore.com> + + * sem_elab.adb: Minor reformatting + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * exp_ch6.adb: Minor reformatting. + +2011-11-21 Ed Schonberg <schonberg@adacore.com> + + * sem_ch12.adb (Check_Formal_Package_Instance): If a formal + subprogram of the formal package is covered by an others + association with a box initialization, no check is needed + against the actual in the instantiation of the formal package. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * sem_elab.adb (Check_Internal_Call_Continue): Suppress junk + elab warning from within precondition/postcondition etc. + +2011-11-21 Ed Schonberg <schonberg@adacore.com> + + * exp_ch6.adb (Expand_Actuals): In Ada 2012, a function call + with out parameters may generate assignments to force constraint + checks. These checks must be properly placed in the code after the + declaration or statement that contains the call. + +2011-11-21 Fedor Rybin <frybin@adacore.com> + + * gnat_ugn.texi: Adding info on current gnattest limitations an + support of -X option. + +2011-11-21 Robert Dewar <dewar@adacore.com> + + * a-cfdlli.adb, a-cbdlli.adb: Minor reformatting. + +2011-11-20 Robert Dewar <dewar@adacore.com> + + * exp_ch6.adb, exp_util.adb: Minor reformatting + +2011-11-20 Eric Botcazou <ebotcazou@adacore.com> + + * sinfo.ads (Reference): Document that it is OK to set + Is_Known_Non_Null on a temporary initialized to a N_Reference + node. + +2011-11-20 Matthew Heaney <heaney@adacore.com> + + * a-cbdlli.adb, a-cfdlli.adb (Move): Set Last component to 0 + for Source list. + +2011-11-20 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): + Declare NEW_EXPR local variable and attach the + temporary to it. Set Is_Known_Non_Null on the temporary. + (Make_Build_In_Place_Call_In_Object_Declaration): Likewise. + * exp_util.adb (Remove_Side_Effects): Set Is_Known_Non_Null on + the temporary created to hold the 'Reference of the expression, + if any. + * checks.adb (Install_Null_Excluding_Check): Bail out for the + Get_Current_Excep.all.all idiom generated by the expander. + +2011-11-20 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/trans.c (struct language_function): Add GNAT_RET. + (f_gnat_ret): New macro. + (struct nrv_data): Add GNAT_RET. + (finalize_nrv_unc_r): New helper function. + (finalize_nrv): Add GNAT_RET parameter. Copy it into DATA. If the + function returns unconstrained, use finalize_nrv_unc_r as callback. + (return_value_ok_for_nrv_p): Test the alignment of RET_OBJ only if + RET_OBJ is non-null. + (Subprogram_Body_to_gnu): Pass GNAT_RET to finalize_nrv. + (gnat_to_gnu) <N_Return_Statement>: In the return-unconstrained case, + if optimization is enabled, record candidates for the Named Return + Value optimization. + +2011-11-20 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/trans.c (Subprogram_Body_to_gnu): Add comment. + (gnat_to_gnu) <N_Return_Statement>: Add 'else' to avoid doing a useless + test. Tweak default case. + <N_Goto_Statement>: Use better formatting. + * gcc-interface/utils2.c (maybe_wrap_malloc): Use INIT_EXPR instead of + MODIFY_EXPR to initialize the storage. + (build_allocator): Likewise. + +2011-11-20 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Adjust + call to components_to_record. + (components_to_record): Add FIRST_FREE_POS parameter. For the variant + part, reuse enclosing union even if there is a representation clause + on the Unchecked_Union. If there is a variant part, compute the new + first free position, if any. Adjust call to self. Use a single field + directly only if it hasn't got a representation clause or is placed at + offset zero. Create the variant part at offset 0 if all the fields + down to this level have a rep clause. Do not chain the variant part + immediately and adjust downstream. + Do not test ALL_REP before moving the fields without rep clause to the + previous level. Call create_rep_part to create the REP part and force + a minimum size on it if necessary. Do not chain it immediately. + Create a fake REP part if there are fields without rep clause that need + to be laid out starting from FIRST_FREE_POS. + At the end, chain the REP part and then the variant part. + (create_rep_part): New function. + (get_rep_part): Minor tweak. + * gcc-interface/utils.c (tree_code_for_record_type): Minor tweak. + +2011-11-18 Iain Sandoe <iains@gcc.gnu.org> + + PR target/50678 + * init.c (__gnat_error_handler) [Darwin]: Move workaround to the + bug filed as radar #10302855 from __gnat_error_handler to... + (__gnat_adjust_context_for_raise) [Darwin]: ...here. New function. + (HAVE_GNAT_ADJUST_CONTEXT_FOR_RAISE) [Darwin]: Define. + +2011-11-18 Tristan Gingold <gingold@adacore.com> + Iain Sandoe <iains@gcc.gnu.org> + + PR target/49992 + * mlib-tgt-specific-darwin.adb (Archive_Indexer_Options): Remove. + * gcc-interface/Makefile.in (darwin): Remove ranlib special-casing. + 2011-11-12 Iain Sandoe <iains@gcc.gnu.org> * gcc-interface/Makefile.in (stamp-gnatlib-$(RTSDIR)): Don't link s-oscons.ads. (OSCONS_CPP, OSCONS_EXTRACT): New. - (./bldtools/oscons/xoscons): New Target. - ($(RTSDIR)/s-oscons.ads): New Target. - (gnatlib): Depend on $(RTSDIR)/s-oscons.ads. + (./bldtools/oscons/xoscons): New target. + ($(RTSDIR)/s-oscons.ads): Likewise. + (gnatlib): Depend on $(RTSDIR)/s-oscons.ads. * gcc-interface/Make-lang.in (ada/s-oscons.ads) Remove as dependency. * Make-generated.in: Remove machinery to generate xoscons and ada/s-oscons.ads. |