aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2011-08-02libgcc.S: Gather related function in the same input section.Georg-Johann Lay2-62/+77
* config/avr/libgcc.S: Gather related function in the same input section. __divmodsi4): Use XCALL/XJMP instead of rcall/rjmp for external references. (__udivmodqi4, __divmodqi4, __udivmodhi4, __divmodhi4, __udivmodsi4, __divmodsi4, __prologue_saves__, __epilogue_restores__, _exit, __tablejump2__, __tablejump__, __do_copy_data, __do_clear_bss, __do_global_ctors, __do_global_dtors, __tablejump_elpm__): Enclose in DEFUN/ENDF. From-SVN: r177133
2011-08-02sem_ch5.adb (Analyze_Iteration_Scheme): Fix typo.Javier Miranda8-45/+83
2011-08-02 Javier Miranda <miranda@adacore.com> * sem_ch5.adb (Analyze_Iteration_Scheme): Fix typo. * gcc-interface/Make-lang.in: Update dependencies. 2011-08-02 Javier Miranda <miranda@adacore.com> * sem_util.ads, sem_util.adb (Is_Variable): Add a new formal to determine if the analysis is performed using N or Original_Node (N). * exp_util.adb (Side_Effect_Free): Code cleanup since the new functionality of routine Is_Variable avoids code duplication. * checks.adb (Determine_Range): Handle temporaries generated by Remove_Side_Effects. 2011-08-02 Javier Miranda <miranda@adacore.com> * exp_ch4.adb (Expand_N_Quantified_Expression): Force reanalysis and expansion of the condition. Required since the previous analysis was done with expansion disabled (see Resolve_Quantified_Expression) and hence checks were not inserted and record comparisons have not been expanded. From-SVN: r177132
2011-08-02[multiple changes]Arnaud Charlet10-24/+82
2011-08-02 Ed Falis <falis@adacore.com> * s-taprop-vxworks.adb, s-intman-vxworks.adb, s-intman-vxworks.ads: Update header. 2011-08-02 Bob Duff <duff@adacore.com> * opt.ads: Minor comment fix. 2011-08-02 Bob Duff <duff@adacore.com> * sem_ch12.adb (Analyze_Package_Instantiation, Analyze_Subprogram_Instantiation): Turn off style checking while analyzing an instance. Whatever style checks that apply to the generic unit should apply, so it makes no sense to apply them in an instance. This was causing trouble when compiling an instance of a runtime unit that violates the -gnatyO switch. * stylesw.adb (Set_Style_Check_Options): "when 'O' =>" was missing from one of the two case statements, causing spurious errors. 2011-08-02 Robert Dewar <dewar@adacore.com> * uname.adb: Minor reformatting. * gnatcmd.adb: Minor reformatting. * exp_attr.adb: Minor reformatting. From-SVN: r177131
2011-08-02[multiple changes]Arnaud Charlet13-191/+311
2011-08-02 Ed Schonberg <schonberg@adacore.com> * exp_ch5.adb (Expand_N_Assignment_Statement): under restriction No_Dispatching_Calls, do not look for the Assign primitive, because predefined primitives are not created in this case. 2011-08-02 Bob Duff <duff@adacore.com> * stylesw.ads: Minor comment fixes. 2011-08-02 Robert Dewar <dewar@adacore.com> * freeze.adb (Add_To_Result): New procedure. 2011-08-02 Jose Ruiz <ruiz@adacore.com> * exp_attr.adb (Find_Stream_Subprogram): When using a configurable run time, if the specific run-time routines for handling streams of strings are not available, use the default mechanism. 2011-08-02 Arnaud Charlet <charlet@adacore.com> * s-regpat.ads: Fix typo. 2011-08-02 Vincent Celier <celier@adacore.com> * prj-conf.adb (Get_Or_Create_Configuration_File): If On_Load_Config is not null, call it to create the in memory config project file without parsing an existing default config project file. 2011-08-02 Eric Botcazou <ebotcazou@adacore.com> * atree.adb (Allocate_Initialize_Node): Remove useless temporaries. 2011-08-02 Ed Schonberg <schonberg@adacore.com> * sem_elim.adb: an abstract subprogram does not need an eliminate pragma for its descendant to be eliminable. 2011-08-02 Ed Falis <falis@adacore.com> * init.c: revert to handling before previous checkin for VxWorks * s-intman-vxworks.adb: delete unnecessary declarations related to using Ada interrupt facilities for handling signals. Delete Initialize_Interrupts. Use __gnat_install_handler instead. * s-intman-vxworks.ads: Import __gnat_install_handler as Initialize_Interrupts. * s-taprop-vxworks.adb: Delete Signal_Mask. (Abort_Handler): change construction of mask to unblock exception signals. From-SVN: r177130
2011-08-02[multiple changes]Arnaud Charlet13-253/+331
2011-08-02 Jerome Guitton <guitton@adacore.com> * a-except-2005.adb (Raise_From_Signal_Handler): Call Debug_Raise_Exception before propagation starts. 2011-08-02 Eric Botcazou <ebotcazou@adacore.com> * exp_ch6.adb (Expand_Call): Guard restriction checks with a call to Restriction_Check_Required. * sem_ch3.adb (Analyze_Object_Declaration): Likewise. * sem_res.adb (Resolve_Call): Likewise. * sem_attr.adb (Check_Stream_Attribute): Likewise. 2011-08-02 Bob Duff <duff@adacore.com> * stylesw.ads: Update comment. * style.adb: Minor: Use Error_Msg_NE instead of Error_Msg_N. * errout.ads: Remove obsolete comment. 2011-08-02 Javier Miranda <miranda@adacore.com> * einfo.ads, einfo.adb (Is_Safe_To_Reevaluate): new function. (Set_Is_Safe_To_Reevaluate): new procedure. * sem_ch5.adb (Analyze_Assignment): Add one assertion to ensure that no assignment is allowed on safe-to-reevaluate variables. (Analyze_Iteration_Schine.Process_Bounds.One_Bound): Decorate the temporary created to remove side effects in expressions that use the secondary stack as safe-to-reevaluate. * exp_util.adb (Side_Effect_Free): Add missing code to handle well variables that are not true constants. From-SVN: r177129
2011-08-02[multiple changes]Arnaud Charlet9-45/+42
2011-08-02 Robert Dewar <dewar@adacore.com> * sem_ch5.adb, sem_ch7.adb, einfo.ads, sem_util.adb, sem_util.ads, sem_res.adb, sem_ch6.adb: Minor reformatting. 2011-08-02 Jerome Guitton <guitton@adacore.com> * a-except-2005.adb (Raise_Current_Excep): Remove obsolete dead code. From-SVN: r177127
2011-08-02sem_ch6.adb (New_Overloaded_Entity, [...]): Do not set Overridden_Operation ↵Ed Schonberg2-2/+13
if subprogram is an initialization procedure. 2011-08-02 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (New_Overloaded_Entity, Check_Overriding_Indicator): Do not set Overridden_Operation if subprogram is an initialization procedure. From-SVN: r177126
2011-08-02par-ch6.adb: Correct obsolete name in commentsYannick Moy10-33/+237
2011-08-02 Yannick Moy <moy@adacore.com> * par-ch6.adb: Correct obsolete name in comments * restrict.adb, restrict.ads (Check_Formal_Restriction): new function which takes two message arguments (existing function takes one), with second message used for continuation. * sem_ch5.adb (Analyze_Block_Statement): in formal mode, only reject block statements that originate from a source block statement, not generated block statements * sem_ch6.adb (Analyze_Function_Call): rename L into Actuals, for symmetry with procedure case * sem_ch7.adb (Check_One_Tagged_Type_Or_Extension_At_Most): new function to issue an error in formal mode if a package specification contains more than one tagged type or type extension. * sem_res.adb (Resolve_Actuals): in formal mode, check that actual parameters matching formals of tagged types are objects (or ancestor type conversions of objects), not general expressions. Issue an error on view conversions that are not involving ancestor conversion of an extended type. (Resolve_Type_Conversion): in formal mode, issue an error on the operand of an ancestor type conversion which is not an object * sem_util.adb, sem_util.ads (Find_Actual): extend the behavior of the procedure so that it works also for actuals of function calls (Is_Actual_Tagged_Parameter): new function which determines if its argument is an actual parameter of a formal of tagged type in a subprogram call (Is_SPARK_Object_Reference): new function which determines if the tree referenced by its argument represents an object in SPARK From-SVN: r177125
2011-08-02[multiple changes]Arnaud Charlet3-169/+237
2011-08-02 Robert Dewar <dewar@adacore.com> * sem_ch3.adb: Minor reformatting Minor comment addition Minor error msg text change 2011-08-02 Javier Miranda <miranda@adacore.com> * sem_ch5.adb (Analyze_Iteration_Scheme.Uses_Secondary_Stack): New function. Used to be more precise when we generate a variable plus one assignment to remove side effects in the evaluation of the Bound expressions. (Analyze_Iteration_Scheme): Clean attribute analyzed in all the nodes of the bound expression to force its re-analysis and thus expand the associated transient scope (if required). Code cleanup replacing the previous code that declared the constant entity by an invocation to routine Force_Evaluation which centralizes this work in the frontend. From-SVN: r177124
2011-08-02[multiple changes]Arnaud Charlet11-208/+386
2011-08-02 Robert Dewar <dewar@adacore.com> * einfo.adb (Is_Base_Type): Improve efficiency by using a flag table (Base_Type): Now uses improved Is_Base_Type function * einfo.ads (Base_Type): Inline this function 2011-08-02 Robert Dewar <dewar@adacore.com> * sem_prag.adb (Analyze_Pragma): Defend against infinite recursion (Analyze_Aspect_Specifications): Fix Sloc values for constructed pragmas 2011-08-02 Arnaud Charlet <charlet@adacore.com> * gcc-interface/Make-lang.in: Update dependencies. * gcc-interface/Makefile.in: Use s-inmapop-vxworks.adb for all VxWorks targets. 2011-08-02 Yannick Moy <moy@adacore.com> * par-ch3.adb (P_Delta_Constraint): issue an error in formal mode on non-simple expression used in delta constraint (P_Index_Or_Discriminant_Constraint): issue an error in formal mode on index constraint which is not a subtype mark * par.adb: With and use Restrict * sem_ch3.adb (Analyze_Component_Declaration): issue an error in formal mode on component type which is not a subtype mark and default expression on component (Analyze_Subtype_Declaration): issue an error in formal mode on subtype of string which does not have a lower index bound equal to 1 (Array_Type_Declaration): issue an error in formal mode on index or component type which is not a subtype mark, and on aliased keyword on component (Derived_Type_Declaration): issue an error in formal mode on interface, limited or abstract type (Record_Type_Declaration): issue an error in formal mode on interface (Record_Type_Definition): issue an error in formal mode on tagged types and type extensions not declared in the specification of a library unit package; on null non-tagged record; on variant part 2011-08-02 Vincent Celier <celier@adacore.com> * prj-nmsc.adb (Check_Library_Attributes): Do not report Library_Dir not declared for qualified library project when Library_Name is not declared, but Library_Dir is. 2011-08-02 Robert Dewar <dewar@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specification): Fix slocs on generated pragmas (affects aspects [Component_]Default_Value (Check_Aspect_At_Freeze_Point): For Component_Default_Value, use component type for the resolution From-SVN: r177123
2011-08-02[multiple changes]Arnaud Charlet3-4/+23
2011-08-02 Eric Botcazou <ebotcazou@adacore.com> * einfo.adb (Base_Type): Tune implementation for speed. 2011-08-02 Robert Dewar <dewar@adacore.com> * freeze.adb: Minor reformatting. From-SVN: r177122
2011-08-02[multiple changes]Arnaud Charlet7-30/+122
2011-08-02 Thomas Quinot <quinot@adacore.com> * scos.ads: Update comments. 2011-08-02 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Build_Derived_Type): Inherit the convention from the base type, because the parent may be a subtype of a private type whose convention is established in a private part. 2011-08-02 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch6.adb (Expand_N_Extended_Return_Statement): Wrap the return statement in a block when the expansion of the return expression has created a finalization chain. * freeze.adb (Freeze_Expression): Alphabetize all choices associated with the parent node. Add N_Extended_Return_Statement to handle the case where a transient object declaration appears in the Return_Object_Declarations list of an extended return statement. 2011-08-02 Matthew Gingell <gingell@adacore.com> * adaint.c (__gnat_is_symbolic_link_attr): Supress warning on possibly unused parameter 'name'. 2011-08-02 Ed Schonberg <schonberg@adacore.com> * sem_elim.adb (Set_Eliminated): If the overridden operation is an inherited operation, check whether its alias, which is the source operastion that it renames, has been marked eliminated. From-SVN: r177121
2011-08-02exp_util.adb (Safe_Prefixed_Reference): Do not consider safe an in-mode ↵Javier Miranda3-15/+43
parameter whose type is an access type since it... 2011-08-02 Javier Miranda <miranda@adacore.com> * exp_util.adb (Safe_Prefixed_Reference): Do not consider safe an in-mode parameter whose type is an access type since it can be used to modify its designated object. Enforce code that handles as safe an access type that is not access-to-constant but it is the result of a previous removal of side-effects. (Remove_Side_Effects): Minor code reorganization of cases which require no action. Done to incorporate documentation on new cases uncovered working in this ticket: no action needed if this routine was invoked too early and the nodes are not yet decorated. * sem_res.adb (Resolve_Slice): Minor code cleanup replacling two calls to routine Remove_Side_Effects by calls to Force_Evaluation since they were issued with actuals that are implicitly provided by Force_Evaluation. From-SVN: r177120
2011-08-02sem_ch3.adb, [...]: Minor reformatting.Robert Dewar3-5/+9
2011-08-02 Robert Dewar <dewar@adacore.com> * sem_ch3.adb, sem_res.adb: Minor reformatting. From-SVN: r177119
2011-08-02[multiple changes]Arnaud Charlet6-12/+97
2011-08-02 Yannick Moy <moy@adacore.com> * sem_attr.adb (Check_Formal_Restriction_On_Attribute): new procedure to issue an error in formal mode on attribute not supported in this mode (Analyze_Attribute): issue errors on standard attributes not supported in formal mode. * sem_ch3.adb (Modular_Type_Declaration): remove obsolete part of comment, and issue error in formal mode on modulus which is not a power of 2. (Process_Range_Expr_In_Decl): issue error in formal mode on non-static range. * sem_ch8.adb (Find_Type): issue error in formal mode on 'Base in subtype mark. * sem_res.adb (Resolve_Unary_Op): issue error in formal mode on unary operator on modular type (except 'not'). 2011-08-02 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Minor reformatting. From-SVN: r177118
2011-08-02[multiple changes]Arnaud Charlet11-126/+136
2011-08-02 Arnaud Charlet <charlet@adacore.com> * s-osinte-linux.ads: Minor comment update and reformatting. * i-cexten.ads: Make this unit pure, as for its parent. Will allow its usage in more contexts if needed. 2011-08-02 Robert Dewar <dewar@adacore.com> * s-utf_32.ads: Minor comment fix. 2011-08-02 Ed Schonberg <schonberg@adacore.com> * sem_res.adb (Resolve_Actuals): if the subprogram is a primitive operation of a tagged synchronized type, handle the case where the controlling argument is overloaded. 2011-08-02 Yannick Moy <moy@adacore.com> * gnat_rm.texi, opt.ads, sem_prag.adb, snames.ads-tmpl: Replace pragma SPARK_95 with pragma Restrictions (SPARK) * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings): set SPARK mode and formal verification mode on processing SPARK restriction * s-rident.ads (Restriction_Id): add SPARK restriction in those not requiring consistency checking. From-SVN: r177117
2011-08-02Minor reformatting.Arnaud Charlet1-17/+15
From-SVN: r177116
2011-08-02sem_res.adb: Minor reformatting.Robert Dewar2-178/+178
2011-08-02 Robert Dewar <dewar@adacore.com> * sem_res.adb: Minor reformatting. From-SVN: r177115
2011-08-02a-cfdlli.ads, [...]: Remove unneeded with of Ada.Containers Remove commented ↵Robert Dewar6-73/+64
out pragma Inline's... 2011-08-02 Robert Dewar <dewar@adacore.com> * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads: Remove unneeded with of Ada.Containers Remove commented out pragma Inline's Move specifications of new subprograms to the actual specs From-SVN: r177114
2011-08-02[multiple changes]Arnaud Charlet7-5/+45
2011-08-02 Yannick Moy <moy@adacore.com> * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads: Update comments. 2011-08-02 Ed Schonberg <schonberg@adacore.com> * sem_attr.adb: add attribute name when 'Result has the wrong prefix. From-SVN: r177113
2011-08-02a-cfdlli.ads, [...]: Minor reformatting.Robert Dewar7-104/+116
2011-08-02 Robert Dewar <dewar@adacore.com> * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads, a-cofove.ads: Minor reformatting. From-SVN: r177112
2011-08-02[multiple changes]Arnaud Charlet9-14/+266
2011-08-02 Claire Dross <dross@adacore.com> * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads, a-cofove.ads: Add comments. 2011-08-02 Yannick Moy <moy@adacore.com> * gnat_rm.texi: Document formal containers. 2011-08-02 Emmanuel Briot <briot@adacore.com> * g-comlin.adb (Goto_Section, Getopt): fix handling of "*" when there are empty sections. From-SVN: r177111
2011-08-02[multiple changes]Arnaud Charlet17-236/+514
2011-08-02 Robert Dewar <dewar@adacore.com> * mlib-prj.adb, restrict.ads, sem_aggr.adb, sem_ch12.adb: Minor reformatting. 2011-08-02 Robert Dewar <dewar@adacore.com> * aspects.adb: New aspects Default_Value and Default_Component_Value New format of Aspect_Names table checks for omitted entries * aspects.ads: Remove mention of Aspect_Cancel and add documentation on handling of boolean aspects for derived types. New aspects Default_Value and Default_Component_Value New format of Aspect_Names table checks for omitted entries * einfo.ads, einfo.adb (Has_Default_Component_Value): New flag (Has_Default_Value): New flag (Has_Default_Component_Value): New flag (Has_Default_Value): New flag * par-ch13.adb (P_Aspect_Specifications): New format of Aspect_Names table. * par-prag.adb: New pragmas Default_Value and Default_Component_Value * sem_ch13.adb (Analyze_Aspect_Specifications): New aspects Default_Value and Default_Component_Value * sem_prag.adb: New pragmas Default_Value and Default_Component_Value New aspects Default_Value and Default_Component_Value * snames.ads-tmpl: New pragmas Default_Value and Default_Component_Value * sprint.adb: Print N_Aspect_Specification node when called from gdb 2011-08-02 Ed Schonberg <schonberg@adacore.com> * sem_res.adb: Add guards in calls to Matching_Static_Array_Bounds. Minor reformatting. 2011-08-02 Robert Dewar <dewar@adacore.com> * i-cstrin.ads: Updates to make Interfaces.C.Strings match RM From-SVN: r177110
2011-08-02Fix typo.Arnaud Charlet4-4/+4
From-SVN: r177109
2011-08-02[multiple changes]Arnaud Charlet9-27/+18
2011-08-02 Yannick Moy <moy@adacore.com> * sem_aggr.adb (Resolve_Aggregate): Fix thinko. 2011-08-02 Robert Dewar <dewar@adacore.com> * impunit.adb: Add comment. From-SVN: r177108
2011-08-02Code clean up.Arnaud Charlet1-1/+2
From-SVN: r177107
2011-08-02Minor reformatting.Arnaud Charlet2-3/+3
From-SVN: r177106
2011-08-02Minor reformatting.Arnaud Charlet2-12/+8
From-SVN: r177105
2011-08-02sem_ch3.adb (Analyze_Full_Type_Declaration): move test that a type has a ↵Arnaud Charlet1-18/+16
discriminant specification so that it does not... * sem_ch3.adb (Analyze_Full_Type_Declaration): move test that a type has a discriminant specification so that it does not include the case of derived types (Derived_Type_Declaration): move here the test that a derived type has a discriminant specification From-SVN: r177104
2011-08-02[multiple changes]Arnaud Charlet13-80/+166
2011-08-02 Yannick Moy <moy@adacore.com> * sem_aggr.adb (Check_Qualified_Aggregate): new procedure which checks qualification of aggregates in formal mode (Is_Top_Level_Aggregate): returns True for an aggregate not contained in another aggregate (Resolve_Aggregate): complete the test that an aggregate is adequately qualified in formal mode 2011-08-02 Pascal Obry <obry@adacore.com> * make.adb, bindgen.adb, gnatbind.adb: Minor reformatting. * mlib-prj.adb: Supress warning when compiling binder generated file. (Build_Library): Supress all warnings when compiling the binder generated file. From-SVN: r177103
2011-08-02[multiple changes]Arnaud Charlet23-40/+15152
2011-08-02 Yannick Moy <moy@adacore.com> * errout.adb, errout.ads (Check_Formal_Restriction): move procedure from here... * restrict.adb, restrict.ads (Check_Formal_Restriction): ...to here * sem_aggr.adb, sem_ch5.adb, sem_util.adb: Add with/use clauses to make Check_Formal_Restriction visible 2011-08-02 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Check_Generic_Actuals): handle properly actual in-parameters when type of the generic formal is private in the generic spec and non-private in the body. 2011-08-02 Claire Dross <dross@adacore.com> * a-cfdlli.adb, a-cfdlli.ads, a-cfhase.adb, a-cfhase.ads, a-cfhama.adb, a-cfhama.ads, a-cforse.adb, a-cforse.ads, a-cforma.adb, a-cforma.ads, a-cofove.adb, a-cofove.ads: New files implementing formal containers. * impunit.adb, Makefile.rtl: Take new files into account. From-SVN: r177102
2011-08-02[multiple changes]Arnaud Charlet1-0/+10
2011-08-02 Vincent Celier <celier@adacore.com> * prj-nmsc.adb (Check_Library_Attributes): For virtual library project, inherit library kind. 2011-08-02 Robert Dewar <dewar@adacore.com> * sem_aggr.adb, sem_ch3.adb, sem_ch5.adb, make.adb, sem_res.adb, sem_attr.adb, sem_ch6.adb, sem_ch8.adb: Minor reformatting. From-SVN: r177101
2011-08-02sem_aggr.adb (Resolve_Aggregate): disable incorrectly placed check in formal ↵Yannick Moy4-18/+78
mode 2011-08-02 Yannick Moy <moy@adacore.com> * sem_aggr.adb (Resolve_Aggregate): disable incorrectly placed check in formal mode * sem_util.adb (Matching_Static_Array_Bounds): proper detection of matching static array bounds, taking into account the special case of string literals * sem_ch3.adb: Typo in comment. From-SVN: r177100
2011-08-02errout.adb, errout.ads (Check_Formal_Restriction): new procedure which ↵Yannick Moy15-569/+328
issues an error in formal mode if... 2011-08-02 Yannick Moy <moy@adacore.com> * errout.adb, errout.ads (Check_Formal_Restriction): new procedure which issues an error in formal mode if its argument node is originally from source * sem_ch3.adb (Analyze_Full_Type_Declaration): move test that a type has a discriminant specification so that it does not include the case of derived types (Derived_Type_Declaration): move here the test that a derived type has a discriminant specification * sem_aggr.adb (Resolve_Record_Aggregate): test the presence of the first element of a component association before accessing its choices (presence of component association is not enough) * exp_ch6.adb (Expand_N_Subprogram_Declaration): test if a subprogram declaration is a library item before accessing the next element in a list, as library items are not member of lists * sem_attr.adb, sem_ch11.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch8.adb, sem_ch9.adb, sem_res.adb, sem_util.adb: use Check_Formal_Restriction whenever possible. From-SVN: r177099
2011-08-02[multiple changes]Arnaud Charlet4-6/+36
2011-08-02 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Find_Type_Of_Object): In ASIS mode, create an itype reference when needed. 2011-08-02 Bob Duff <duff@adacore.com> * gnat_ugn.texi: Fix typo. 2011-08-02 Vincent Celier <celier@adacore.com> * make.adb (Gnatmake): Use MLib.Tgt.Archive_Ext as the extension of archive file name. Do not use the full path name of archives for Open VMS. From-SVN: r177097
2011-08-02re PR target/47766 ([x32] -fstack-protector doesn't work)Uros Bizjak2-4/+9
PR target/47766 * doc/md.texi (stack_protect_set): The pattern moves ptr_mode value. (stack_protect_test): The pattern compares ptr_mode value. From-SVN: r177096
2011-08-02sem_ch12.adb, [...]: New calling sequence for Analyze_Aspect_SpecificationsRobert Dewar15-312/+298
2011-08-02 Robert Dewar <dewar@adacore.com> * sem_ch12.adb, sem_ch11.adb: New calling sequence for Analyze_Aspect_Specifications * sem_ch13.adb (Analyze_Aspect_Specifications): New handling for boolean aspects * sem_ch13.ads (Analyze_Aspect_Specifications): New calling sequence * sem_ch3.adb, sem_ch6.adb, sem_ch7.adb, sem_ch9.adb: New calling sequence for Analyze_Aspect_Specifications * sem_prag.adb (Analyze_Pragma): Remove use of Aspect_Cancel entirely * sinfo.ads, sinfo.adb (Aspect_Cancel): Remove, no longer used 2011-08-02 Robert Dewar <dewar@adacore.com> * freeze.adb (Freeze_Entity): Remove handling of delayed boolean aspects, since these no longer exist. 2011-08-02 Robert Dewar <dewar@adacore.com> * par-ch13.adb (Aspect_Specifications_Present): Always return false on semicolon, do not try to see if there are aspects following it. * par-ch3.adb (P_Declarative_Items): Better message for unexpected aspect spec. From-SVN: r177095
2011-08-02[multiple changes]Arnaud Charlet5-11/+47
2011-08-02 Robert Dewar <dewar@adacore.com> * sem_ch8.adb, aspects.ads: Minor reformatting. 2011-08-02 Eric Botcazou <ebotcazou@adacore.com> * sem_ch13.ads (Analyze_Aspect_Specification): Add pragma Inline. * sem_ch13.adb (Analyze_Non_Null_Aspect_Specifications): New procedure extracted from... (Analyze_Aspect_Specifications): ...here. Call above procedure. From-SVN: r177094
2011-08-02[multiple changes]Arnaud Charlet8-47/+258
2011-08-02 Yannick Moy <moy@adacore.com> * exp_ch6.adb (Expand_N_Subprogram_Declaration): issue error in formal mode on subprogram declaration outside of package specification, unless it is followed by a pragma Import * sem_ch3.adb (Access_Definition, Access_Subprogram_Declaration, Access_Type_Declaration): issue error in formal mode on access type (Analyze_Incomplete_Type_Decl): issue error in formal mode on incomplete type (Analyze_Object_Declaration): issue error in formal mode on object declaration which does not respect SPARK restrictions (Analyze_Subtype_Declaration): issue error in formal mode on subtype declaration which does not respect SPARK restrictions (Constrain_Decimal, Constrain_Float, Constrain_Ordinary_Fixed): issue error in formal mode on digits or delta constraint (Decimal_Fixed_Point_Type_Declaration): issue error in formal mode on decimal fixed point type (Derived_Type_Declaration): issue error in formal mode on derived type other than type extensions of tagged record types * sem_ch6.adb (Process_Formals): remove check in formal mode, redundant with check on access definition * sem_ch9.adb (Analyze_Protected_Definition): issue error in formal mode on protected definition. (Analyze_Task_Definition): issue error in formal mode on task definition 2011-08-02 Robert Dewar <dewar@adacore.com> * make.adb, sem_ch8.adb, s-inmaop-vxworks.adb: Minor reformatting. From-SVN: r177093
2011-08-02[multiple changes]Arnaud Charlet11-155/+490
2011-08-02 Javier Miranda <miranda@adacore.com> * sem_ch6.adb (Can_Override_Operator): New function. (Verify_Overriding_Indicator): Add missing code to check overriding indicator in operators. Fixes regression. (Check_Overriding_Indicator): Minor reformating after replacing the code that evaluates if the subprogram can override an operator by invocations to the above new function. * einfo.adb (Write_Field26_Name): Add missing code to ensure that, following the documentation in einfo.ads, this field is not shown as attribute "Static_Initialization" on non-dispatching functions. 2011-08-02 Jose Ruiz <ruiz@adacore.com> * sem_res.adb (Resolve_Call): A call to Ada.Real_Time.Timing_Events.Set_Handler violates restriction No_Relative_Delay (AI-0211) only when it sets a relative timing event, i.e., when the second parameter is of type Time_Span. 2011-08-02 Vincent Celier <celier@adacore.com> * make.adb (Gnatmake): use <library dir>/lib<library name>.a to link with an archive instead of -L<library dir> -l<library name>. 2011-08-02 Ed Schonberg <schonberg@adacore.com> * sem_ch8.adb (Analyze_Use_Type): If the clause is being re-analyzed, mark the base types In_Use in addition to making the operations use_visible. 2011-08-02 Ed Falis <falis@adacore.com> * init.c: add and setup __gnat_signal_mask for the exception signals * s-inmaop-vxworks.adb: new file. * s-intman-vxworks.adb: remove unnecessary initializations and simplify remaining * s-intman-vxworks.ads: remove unnecessary variable * s-taprop-vxworks.adb: simplify signal initialization From-SVN: r177092
2011-08-02sem_ch8.adb: Minor code reorganization, comment updates.Robert Dewar5-78/+97
2011-08-02 Robert Dewar <dewar@adacore.com> * sem_ch8.adb: Minor code reorganization, comment updates. 2011-08-02 Robert Dewar <dewar@adacore.com> * sem_res.adb (Matching_Static_Array_Bounds): Moved to Sem_Util * sem_util.ads, sem_util.adb (Matching_Static_Array_Bounds): Moved here from Sem_Res. (Matching_Static_Array_Bounds): Use Is_Ok_Static_Expression (Matching_Static_Array_Bounds): Moved here from Sem_Res From-SVN: r177091
2011-08-02atree.h, [...]: New subprograms to manipulate Elist5.Ed Schonberg8-50/+185
2011-08-02 Ed Schonberg <schonberg@adacore.com> * atree.h, atree.ads, atree.adb: New subprograms to manipulate Elist5. * par_ch8.adb (P_Use_Type): initialize Used_Operations for node. * sinfo.ads, sinfo.adb (Used_Operations): new attribute of use_type_clauses, to handle more efficiently use_type and use_all_type constructs. * sem_ch8.adb: Rewrite Use_One_Type and End_Use_Type to handle the Ada2012 Use_All_Type clause. (Use_Class_Wide_Operations): new procedure. From-SVN: r177090
2011-08-02[multiple changes]Arnaud Charlet12-295/+461
2011-08-02 Robert Dewar <dewar@adacore.com> * exp_util.adb, par-ch10.adb, par-ch6.adb, sem.adb, sem_ch6.adb, sem_ch6.ads, sinfo.adb, sinfo.ads, sprint.adb: Change parameterized expression to expression function. 2011-08-02 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb: transform simple Ada2012 membership into equality only if types are compatible. 2011-08-02 Yannick Moy <moy@adacore.com> * sem_res.adb (Matching_Static_Array_Bounds): new function which returns True if its argument array types have same dimension and same static bounds at each index. (Resolve_Actuals): issue an error in formal mode on actuals passed as OUT or IN OUT paramaters which are not view conversions in SPARK. (Resolve_Arithmetic_Op): issue an error in formal mode on multiplication or division with operands of fixed point types which are not qualified or explicitly converted. (Resolve_Comparison_Op): issue an error in formal mode on comparisons of Boolean or array type (except String) operands. (Resolve_Equality_Op): issue an error in formal mode on equality operators for array types other than String with non-matching static bounds. (Resolve_Logical_Op): issue an error in formal mode on logical operators for array types with non-matching static bounds. Factorize the code in Matching_Static_Array_Bounds. (Resolve_Qualified_Expression): issue an error in formal mode on qualified expressions for array types with non-matching static bounds. (Resolve_Type_Conversion): issue an error in formal mode on type conversion for array types with non-matching static bounds From-SVN: r177089
2011-08-02[multiple changes]Arnaud Charlet3-24/+32
2011-08-02 Robert Dewar <dewar@adacore.com> * par-ch10.adb: Minor code reorganization (use Nkind_In). 2011-08-02 Ed Schonberg <schonberg@adacore.com> * par-ch9.adb: save location of entry for proper error message. From-SVN: r177088
2011-08-02sem_type.ads, [...] (Is_Ancestor): Addition of a new formal (Use_Full_View) ↵Javier Miranda12-37/+105
which permits this routine to climb... 2011-08-02 Javier Miranda <miranda@adacore.com> * sem_type.ads, sem_type.adb (Is_Ancestor): Addition of a new formal (Use_Full_View) which permits this routine to climb through the ancestors using the full-view of private parents. * sem_util.adb (Collect_Interfaces_Info, Implements_Interface): Set Use_Full_View to true in calls to Is_Ancestor. * sem_disp.adb (Override_Dispatching_Operation): Set Use_Full_View to true in call to Is_Ancestor. * exp_ch3.adb (Build_Offset_To_Top_Functions, Initialize_Tag): Set Use_Full_View to true in call to Is_Ancestor. * exp_ch7.adb (Controller_Component): Set Use_Full_View to true in call to Is_Ancestor. * exp_ch4.adb (Expand_N_Type_Conversion, Tagged_Membership): Set Use_Full_View to true in calls to Is_Ancestor. * exp_disp.adb (Expand_Interface_Actuals, Make_Secondary_DT, Make_DT, Make_Select_Specific_Data_Table, Register_Primitive, Set_All_DT_Position): Set Use_Full_View to true in calls to Is_Ancestor. * exp_intr.adb (Expand_Dispatching_Constructor_Call): Set Use_Full_View to true in call to Is_Ancestor. * exp_util.adb (Find_Interface_ADT, Find_Interface_Tag): Set Use_Full_View to true in calls to Is_Ancestor. * exp_cg.adb (Write_Call_Info): Set Use_Full_View to true in call to Is_Ancestor. (Write_Type_Info): Set Use_Full_View to true in call to Is_Ancestor. From-SVN: r177087
2011-08-02[multiple changes]Arnaud Charlet15-50/+355
2011-08-02 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Minor reformatting. * sem_prag.adb: Minor reformatting. 2011-08-02 Tristan Gingold <gingold@adacore.com> * vms_data.ads: Add VMS qualifier for -gnateP. 2011-08-02 Robert Dewar <dewar@adacore.com> * par-ch13.adb (P_Aspect_Specification): New meaning of Decl = Empty * par-ch7.adb (P_Package): Proper placement of aspects for package decl/instantiation. * par-endh.adb (Check_End): Ad Is_Sloc parameter (End_Statements): Add Is_Sloc parameterr * par.adb (P_Aspect_Specification): New meaning of Decl = Empty (Check_End): Ad Is_Sloc parameter (End_Statements): Add Is_Sloc parameterr 2011-08-02 Vincent Celier <celier@adacore.com> * ug_words: Add VMS qualifier equivalent to -gnateP: /SYMBOL_PREPROCESSING. 2011-08-02 Jose Ruiz <ruiz@adacore.com> * gnat-style.texi: For hexadecimal numeric literals the typical grouping of digits is 4 to represent 2 bytes. A procedure spec which is split into several lines is indented two characters. 2011-08-02 Yannick Moy <moy@adacore.com> * exp_aggr.adb (Is_Others_Aggregate): move function to other unit. * sem_aggr.adb, sem_aggr.ads (Is_Others_Aggregate): move function here (Resolve_Aggregate): issue errors in formal modes when aggregate is not properly qualified (Resolve_Array_Aggregate): issue errors in formal modes on non-static choice in array aggregate (Resolve_Extension_Aggregate): issue errors in formal modes on subtype mark as ancestor (Resolve_Record_Aggregate): issue errors in formal modes on mixed positional and named aggregate for record, or others in record aggregate, or multiple choice in record aggregate * sem_res.adb (Resolve_Logical_Op): issue errors in formal mode when array operands to logical operations AND, OR and XOR do not have the same static lower and higher bounds * sem_ch5.adb, sinfo.ads: Correct typos in comments From-SVN: r177086
2011-08-02rs6000.c (rs6000_emit_prologue): Add REG_CFA_RESTORE note for ↵Alan Modra2-0/+6
save_LR_around_toc_setup sequence. * config/rs6000/rs6000.c (rs6000_emit_prologue): Add REG_CFA_RESTORE note for save_LR_around_toc_setup sequence. From-SVN: r177084
2011-08-01Replace long with long long on __lzcnt64.H.J. Lu2-3/+8
2011-08-01 H.J. Lu <hongjiu.lu@intel.com> * config/i386/lzcntintrin.h (__lzcnt64): Replace long with long long. From-SVN: r177081
2011-08-02Daily bump.GCC Administrator1-1/+1
From-SVN: r177080
2011-08-01Makefile.in (hwint.o): Depend on DIAGNOSTIC_CORE_H.Sebastian Pop5-68/+116
2011-08-01 Sebastian Pop <sebastian.pop@amd.com> Joseph Myers <joseph@codesourcery.com> * Makefile.in (hwint.o): Depend on DIAGNOSTIC_CORE_H. * hwint.c: Include diagnostic-core.h. (abs_hwi): New. (gcd): Moved here... (pos_mul_hwi): New. (mul_hwi): New. (least_common_multiple): Moved here... * hwint.h (gcd): ... from here. (least_common_multiple): ... from here. (HOST_WIDE_INT_MIN): New. (HOST_WIDE_INT_MAX): New. (abs_hwi): Declared. (gcd): Declared. (pos_mul_hwi): Declared. (mul_hwi): Declared. (least_common_multiple): Declared. * omega.c (check_pos_mul): Removed. (check_mul): Removed. (omega_solve_geq): Use pos_mul_hwi instead of check_pos_mul and mul_hwi instead of check_mul. Co-Authored-By: Joseph Myers <joseph@codesourcery.com> From-SVN: r177075