aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
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-01Add x32 libstdc++ baseline_symbols.txt.H.J. Lu2-0/+3619
2011-08-01 H.J. Lu <hongjiu.lu@intel.com> * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Generated. From-SVN: r177076
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
2011-08-01re PR c++/49932 ([C++0x] ICE on instantiating decltype(expr)::type with ↵Jason Merrill7-2/+57
template) PR c++/49932 gcc/cp/ * mangle.c (write_prefix): Handle decltype. libiberty/ * cp-demangle.c (d_prefix): Handle decltype. From-SVN: r177074
2011-08-01re PR c++/49924 ([C++0X] [constexpr] can't initialize a non-static member ↵Jason Merrill4-12/+38
array of a literal type as a constexpr) PR c++/49924 * semantics.c (cxx_eval_vec_init_1): Fix logic. From-SVN: r177073
2011-08-01re PR target/49881 ([AVR] Inefficient stack manipulation around calls)Richard Henderson3-27/+35
PR target/49881 * config/avr/avr.h (PUSH_ROUNDING): New. * config/avr/avr.md (pushqi1): Rename from *pushqi. (*pushhi, *pushsi, *pushsf): Remove. (MPUSH): New mode iterator. (push<MPUSH>1): New expander. From-SVN: r177071
2011-08-01re PR c++/49813 ([C++0x] sinh vs asinh vs constexpr)Paolo Carlini2-4/+8
2011-08-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/49813 * include/c_global/cmath (isinf): Remove workaround. From-SVN: r177070
2011-08-01mmix.h (PREFERRED_RELOAD_CLASS, [...]): Remove macro.Anatoly Sokolov4-16/+25
* config/mmix/mmix.h (PREFERRED_RELOAD_CLASS, PREFERRED_OUTPUT_RELOAD_CLASS): Remove macro. * config/mmix/mmix-protos.h (mmix_preferred_reload_class, mmix_preferred_output_reload_class): Remove. * config/mmix/mmix.c (mmix_preferred_reload_class, mmix_preferred_output_reload_class): Make static. Change rclass argument and return type to reg_class_t. (TARGET_PREFERRED_RELOAD_CLASS, TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define. From-SVN: r177069
2011-08-01mode-switching.c (optimize_mode_switching): Fix bug in MODE_AFTER handling.Joern Rennecke2-2/+11
* mode-switching.c (optimize_mode_switching): Fix bug in MODE_AFTER handling. From-SVN: r177068
2011-08-01Use ptr_mode for stack protector.H.J. Lu2-17/+33
2011-08-01 H.J. Lu <hongjiu.lu@intel.com> PR target/47766 * config/i386/i386.md (PTR): New. (stack_protect_set: Check TARGET_LP64 instead of TARGET_64BIT. (stack_protect_test): Likewise. (stack_protect_set_<mode>): Replace ":P" with ":PTR". (stack_tls_protect_set_<mode>): Likewise. (stack_tls_protect_test_<mode>): Likewise. From-SVN: r177067
2011-08-01re PR c++/49813 ([C++0x] sinh vs asinh vs constexpr)Jason Merrill4-27/+39
PR c++/49813 * semantics.c (potential_constant_expression_1): Allow any builtin. (morally_constexpr_builtin_function_p): Remove. From-SVN: r177066
2011-08-01re PR target/49927 (ice in spill_failure, at reload1.c:2120)Uros Bizjak4-20/+59
PR target/49927 * config/i386/i386.c (ix86_address_subreg_operand): New. (ix86_decompose_address): Use ix86_address_subreg_operand. (ix86_legitimate_address_p): Do not assert that subregs satisfy register_no_elim_operand in DImode. testsuite/ChangeLog: PR target/49927 * gcc.target/i386/pr49927.c: New test. From-SVN: r177064
2011-08-01re PR tree-optimization/49926 (ice in process_use, at tree-vect-stmts.c:405)Ira Rosen4-10/+51
PR tree-optimization/49926 * tree-vect-loop.c (vect_is_slp_reduction): Check that a statement in a chain doesn't have uses both inside and outside the loop. From-SVN: r177063
2011-08-01sem_util.ads, [...] (Last_Source_Statement): Replaces ↵Robert Dewar18-202/+191
Last_Source_Node_In_Sequence. 2011-08-01 Robert Dewar <dewar@adacore.com> * sem_util.ads, sem_util.adb, sem_ch6.adb (Last_Source_Statement): Replaces Last_Source_Node_In_Sequence. * err_vars.ads (Error_Msg_Lang): 16 is OK, don't need 4K * errout.adb (Set_Error_Msg_Lang): Takes arg with no parens, but stores parens and blank in string (this was inconsistently implemented). * errout.ads (Set_Error_Msg_Lang): Takes arg with no parens, but stores parens and blank in string (this was inconsistently implemented). * gnat1drv.adb (Set_Global_Switches): Set formal mode switches appropriately * opt.ads, opt.adb: Formal mode is now global switches, more consistent * par-prag.adb (Analyze_Pragma, case SPARK_95): Set opt switches appropriately and call Set_Error_Msg_Lang to set "spark" as language name. * par.adb: Remove unnecessary call to set formal language for errout * sem_prag.adb (P_Pragma, case SPARK_95): Set opt switches appropriately and call Set_Error_Msg_Lang to set "spark" as language name. * sem_ch4.adb (Analyze_Concatenation_Operand): remove procedure and calls to it, moved after resolution so that types are known * sem_res.adb (Resolve_Op_Concat): issue an error in formal mode if result of concatenation is not of type String (Resolve_Op_Concat_Arg): issue an error in formal mode if an operand of concatenation is not properly restricted * gnat_rm.texi: Add doc on pragma Spark_95. * gcc-interface/Makefile.in: Remove obsolete target pairs for Interfaces.C.* on VMS. Remove s-parame-vms-restrict.ads. * gcc-interface/Make-lang.in: Update dependencies. From-SVN: r177061
2011-08-01[multiple changes]Arnaud Charlet5-9/+34
2011-08-01 Javier Miranda <miranda@adacore.com> * sem_disp.adb (Override_Dispatching_Operation): Enforce strictness of condition that detects if the overridden operation must replace an existing entity. 2011-08-01 Javier Miranda <miranda@adacore.com> * exp_ch4.adb (Expand_N_Case_Expression): Propagate to the expanded code declarations inserted by Insert_Actions in each alternative of the N_Case_Expression node. 2011-08-01 Robert Dewar <dewar@adacore.com> * sem_ch6.adb: Minor code reorganization. * sem_util.adb: Minor reformatting. From-SVN: r177059
2011-08-01prj-env.adb: Remove <prefix>/lib/gpr/<target> project search path.Pascal Obry3-21/+59
2011-08-01 Pascal Obry <obry@adacore.com> * prj-env.adb: Remove <prefix>/lib/gpr/<target> project search path. * gnat_ugn.texi: Add documentation for VERSIONINFO Windows resource. From-SVN: r177058
2011-08-01[multiple changes]Arnaud Charlet12-40/+249
2011-08-01 Yannick Moy <moy@adacore.com> * par-ch4.adb (P_Name): issue a syntax error in SPARK mode on character literal or operator symbol which is prefixed * sem_attr.adb (Analyze_Access_Attribute): issue an error in formal mode on access attributes. * sem_ch4.adb (Analyze_Concatenation_Operand): new procedure to check that concatenation operands are properly restricted in formal mode (Analyze_Concatenation, Analyze_Concatenation_Rest): call new procedure Analyze_Concatenation_Operand. Issue an error in formal mode if the result of the concatenation has a type different from String. (Analyze_Conditional_Expression, Analyze_Explicit_Dereference, Analyze_Quantified_Expression, Analyze_Slice, Analyze_Null): issue an error in formal mode on unsupported constructs * sem_ch5.adb (Analyze_Block_Statement): only issue error on source block statement * sem_util.ads, sem_util.adb (Last_Source_Node_In_Sequence): new function which returns the last node in a list of nodes for which Comes_From_Source returns True, if any * sem_ch6.adb (Check_Missing_Return): minor refactoring to use Last_Source_Node_In_Sequence * sem_ch8.adb (Analyze_Exception_Renaming, Analyze_Generic_Renaming, Analyze_Object_Renaming, Analyze_Use_Package): issue an error in formal mode on unsupported constructs * sem_ch9.adb Do not return after issuing error in formal mode, as the rest of the actions may be needed later on since the error is marked as not serious. * sinfo.ads: Typos in comments. 2011-08-01 Pascal Obry <obry@adacore.com> * projects.texi: Minor editing. From-SVN: r177057
2011-08-01err_vars.ads (Error_Msg_Lang, [...]): new variables for insertion character ~~Yannick Moy20-153/+221
2011-08-01 Yannick Moy <moy@adacore.com> * err_vars.ads (Error_Msg_Lang, Error_Msg_Langlen): new variables for insertion character ~~ * errout.ads, errout.adb (Formal_Error_Msg_...): remove procedures (Set_Error_Msg_Lang): new procedure which fixes the language for use with insertion character ~~ (Set_Msg_Text): treat insertion character ~~ * par-ch4.adb, par-ch5.adb, par-endh.adb, sem_attr.adb, sem_ch11.adb, sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_util.adb: Replace calls to Formal_Error_Msg_... procedures by equivalent Error_Msg_... procedures. Favor calls to Error_Msg_F(E) over Error_Msg_N(E). Make errors related to the formal language restriction not serious (insertion character |). * par.adb (Par): set formal language for error messages if needed * sem_ch6.adb (Check_Missing_Return): take into account possible generated statements at the end of the function * snames.ads-tmpl (Name_SPARK_95, Pragma_SPARK_95): new variable and enumeration value to define a new pragma SPARK_95 * opt.ads, opt.adb (SPARK_Version_Type, SPARK_Version_Default, SPARK_Version): new type and variables to store the SPARK version (none by default). (SPARK_Mode): return True when SPARK_Version is set * par-prag.adb: Correct indentation (Prag): take Pragma_SPARK_95 into account * sem_prag.adb (Set_Mechanism_Value, Sig_Flags): take Pragma_SPARK_95 into account. From-SVN: r177056
2011-08-01sem_ch3.adb, [...]: Minor reformattingRobert Dewar15-95/+115
2011-08-01 Robert Dewar <dewar@adacore.com> * sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, prj-part.adb, par-ch4.adb, sem_util.adb, sem_ch4.adb, sem_ch6.adb, sem_ch6.ads, sem_ch8.adb, sem_ch8.ads, sem_ch13.ads, par-ch5.adb, prj-env.ads: Minor reformatting From-SVN: r177055
2011-08-01prj-part.ads, [...] (Parse): Add Target_Name parameter.Pascal Obry8-29/+80
2011-08-01 Pascal Obry <obry@adacore.com> * prj-part.ads, prj-part.adb (Parse): Add Target_Name parameter. Pass Target_Name to Get_Path call. (Parse_Single_Project): Likewise. (Post_Parse_Context_Clause): Likewise. * prj-env.ads, prj-env.adb (Find_Project): Add Target_Name parameter. Call Initialise_Project_Path with the proper Target_Name. (Initialize_Project_Path): Add <gnat_root>/<target_name>/lib/gnat search path. (Get_Path): Add Target_Name parameter. Call Initialise_Project_Path with the proper Target_Name. * prj-conf.adb (Get_Or_Create_Configuration_File): Pass Target_Name to Part.Parse routine. (Parse_Project_And_Apply_Config): Likewise. * prj-makr.adb (Initialize): Pass empty Target_Name to Parse routine. This is fine as this part of the code is supporting only native compilation. * prj-pars.adb (Parse): Pass empty Target_Name to Parse routine. This is fine as this part of the code is supporting only native compilation. From-SVN: r177054
2011-08-01[multiple changes]Arnaud Charlet8-27/+92
2011-08-01 Yannick Moy <moy@adacore.com> * sem_util.adb (Enter_Name): issue error in formal mode on declaration of homonym, unless the homonym is one of the cases allowed in SPARK * par-ch5.adb (Parse_Decls_Begin_End): issue error in SPARK mode for package declaration occurring after a body. 2011-08-01 Robert Dewar <dewar@adacore.com> * checks.adb, exp_ch4.adb: Minor reformatting. 2011-08-01 Javier Miranda <miranda@adacore.com> * einfo.ads (Access_Disp_Table): Fix documentation. (Dispatch_Table_Wrappers): Fix documentation. 2011-08-01 Pascal Obry <obry@adacore.com> * prj-env.adb, prj-env.ads: Minor reformatting. From-SVN: r177053
2011-08-01[multiple changes]Arnaud Charlet15-55/+169
2011-08-01 Yannick Moy <moy@adacore.com> * sem_util.ads, sem_util.adb, par.adb, par_util.adb (Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move procedures out of these packages. * errout.ads, errout.adb (Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move procedures in of this package (Formal_Error_Msg_NE): new procedure for wrapper on Error_Msg_NE * par-ch5.adb (Parse_Decls_Begin_End): issue syntax error in SPARK mode on misplaced later vs initial declarations, like in Ada 83 * sem_attr.adb (Processing for Analyze_Attribute): issue error in formal mode on attribute of private type whose full type declaration is not visible * sem_ch3.adb (Analyze_Declarations): issue error in formal mode on a package declaration inside a package specification (Analyze_Full_Type_Declaration): issue error in formal mode on controlled type or discriminant type * sem_ch6.adb (Analyze_Subprogram_Specification): only issue error on user-defined operator means that it should come from the source (New_Overloaded_Entity): issue error in formal mode on overloaded entity. * sem_ch6.ads, sem_ch13.ads: typos in comments. 2011-08-01 Thomas Quinot <quinot@adacore.com> * atree.adb: Minor reformatting. * checks.adb: Minor reformatting. From-SVN: r177052
2011-08-01[multiple changes]Arnaud Charlet10-298/+224
2011-08-01 Vincent Celier <celier@adacore.com> * s-parame-vms-ia64.ads: Fix typo in comment Minor reformatting * s-parame-vms-restrict.ads: Removed, unused. 2011-08-01 Javier Miranda <miranda@adacore.com> * exp_ch3.adb (Is_Variable_Size_Array): Remove local subprogram Is_Constant_Bound. * sem_ch3.adb (Constrain_Index): Remove side effects in the evaluation of the bounds. * sem_ch3.ads, sem_ch3.adb (Is_Constant_Bound): New extended version of the subprogram that was previously located inside function Exp_Ch3.Is_Variable_Size_Array. Moved here since it is shared by routines of sem_ch3 and exp_ch3. * sem_aux.ads (Constant_Value): Fix typo in comment. * checks.adb (Generate_Index_Checks): New implementation which, for array objects with constant bounds, generates the runtime check referencing the bounds of the array type. For other cases this routine provides its previous behavior obtaining such values from the array object. * sem_res.adb (Set_Slice_Subtype): Link a copied range subtree with its parent type. * atree.adb (New_Copy): Reset flag Is_Overloaded in the new copy since we cannot have semantic interpretations of the new node. From-SVN: r177051
2011-08-01[multiple changes]Arnaud Charlet15-78/+151
2011-08-01 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Fully_Conformant_Expressions): handle quantified expressions. 2011-08-01 Arnaud Charlet <charlet@adacore.com> * sem_ch8.adb: Minor code editing. * s-vxwext.adb: Remove trailing space. * freeze.adb, freeze.ads, errout.ads, erroutc.adb: Fix GPLv3 header for consistency with other files. 2011-08-01 Thomas Quinot <quinot@adacore.com> * s-auxdec.ads, s-auxdec-vms_64.ads: Minor reformatting. 2011-08-01 Ed Schonberg <schonberg@adacore.com> * par-ch10.adb: reject parameterized expressions as compilation unit. * sem_ch4.adb: handle properly conditional expression with overloaded then_clause and no else_clause. 2011-08-01 Tristan Gingold <gingold@adacore.com> * s-parame-vms-alpha.ads, s-parame-vms-ia64.ads: Redeclare C_Address like done by System.Aux_DEC. * env.c (__gnat_setenv) [VMS]: Put logicals into LNM$PROCESS table. From-SVN: r177050
2011-08-01avr.h (mcu_type_s): Add errata_skip field.Georg-Johann Lay6-173/+212
* config/avr/avr.h (mcu_type_s): Add errata_skip field. * config/avr/avr-devices.c (avr_mcu_types): Use it. * config/avr/avr-mcus.def (AVR_MCU): Use it. * config/avr/avr-c.c (avr_cpu_cpp_builtins): Use it to builtin define __AVR_ERRATA_SKIP__ and __AVR_ERRATA_SKIP_JMP_CALL__. * config/avr/libgcc.S (__mulshisi3, __ffshi2, __fmulsu_exit): Use __AVR_ERRATA_SKIP_JMP_CALL__ instead of __AVR_HAVE_JMP_CALL__ to detect if XJMP must not be skipped. From-SVN: r177049
2011-08-01par-endh.adb (Check_End): issue a syntax error in SPARK mode for missing ↵Yannick Moy7-0/+72
label at end of declaration... 2011-08-01 Yannick Moy <moy@adacore.com> * par-endh.adb (Check_End): issue a syntax error in SPARK mode for missing label at end of declaration (subprogram or package) * par-ch4.adb (P_Name): issue a syntax error in SPARK mode for mixing of positional and named parameter association * par.adb, par-util.adb (Formal_Error_Msg_SP): new wrapper on Error_Msg_SP which adds a prefix to the error message giving the name of the formal language analyzed * sem_ch6.adb (Analyze_Return_Type): issue an error in formal mode for access result type in subprogram, unconstrained array as result type,. (Analyze_Subprogram_Declaration): issue an error in formal mode for null procedure * sem_ch8.adb: Code clean up. From-SVN: r177048
2011-08-01[multiple changes]Arnaud Charlet13-120/+302
2011-08-01 Javier Miranda <miranda@adacore.com> * sem_ch7.adb (Uninstall_Declarations): Remove useless code. * einfo.ads (Access_Disp_Table): Fix documentation. (Dispatch_Table_Wrappers): Fix documentation. * einfo.adb (Access_Disp_Table, Dispatch_Table_Wrappers, Set_Access_Disp_Table, Set_Dispatch_Table_Wrappers): Fix the assertions to enforce the documentation of this attribute. (Set_Is_Interface): Cleanup the assertion. * exp_ch4.adb (Expand_Allocator_Expression, Tagged_Membership): Locate the Underlying_Type entity before reading attribute Access_Disp_Table. * exp_disp.adb (Expand_Dispatching_Call, Expand_Interface_Conversion): Locate the Underlying_Type before reading attribute Access_Disp_Table. * exp_aggr.adb (Build_Array_Aggr_Code, Build_Record_Aggr_Code): Locate the Underlying_Type entity before reading attribute Access_Disp_Table. * exp_ch3.adb (Build_Record_Init_Proc, Expand_N_Object_Declaration): Locate the Underlying_Type entity before reading attribute Access_Disp_Table. 2011-08-01 Ed Schonberg <schonberg@adacore.com> * s-poosiz.ads: Additional overriding indicators. 2011-08-01 Yannick Moy <moy@adacore.com> * sem_ch5.adb (Analyze_Exit_Statement): add return after error in formal mode. (Analyze_Iteration_Scheme): issue error in formal mode when loop parameter specification does not include a subtype mark. * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): issue error in formal mode on abstract subprogram. (Analyze_Subprogram_Specification): issue error in formal mode on user-defined operator. (Process_Formals): issue error in formal mode on access parameter and default expression. * sem_ch9.adb (Analyze_Abort_Statement, Analyze_Accept_Statement, Analyze_Asynchronous_Select, Analyze_Conditional_Entry_Call, Analyze_Delay_Relative, Analyze_Delay_Until, Analyze_Entry_Call_Alternative, Analyze_Requeue, Analyze_Selective_Accept, Analyze_Timed_Entry_Call): issue error in formal mode on such constructs * sem_ch11.adb (Analyze_Raise_Statement, Analyze_Raise_xxx_Error): issue error in formal mode on user-defined raise statement. From-SVN: r177047
2011-08-01[multiple changes]Arnaud Charlet4-5/+47
2011-08-01 Thomas Quinot <quinot@adacore.com> * sem_ch6.adb (Enter_Overloaded_Entity): Do not warn about a declaration being hidden when overriding an implicit inherited subprogram. * par-ch10.adb (P_Compilation_Unit): In syntax check only mode (-gnats), do not complain about a source file that contains only a pragma No_Body. 2011-08-01 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Iterator_Scheme): Do not overwrite type of loop variable if already set. From-SVN: r177046
2011-08-01Update header.Arnaud Charlet1-6/+5
From-SVN: r177045
2011-08-01Update header.Arnaud Charlet1-5/+4
From-SVN: r177044
2011-08-01Switch to GPLv3 run-time license.Arnaud Charlet5-72/+62
From-SVN: r177043
2011-08-01Update to GPLv3 run-time license.Arnaud Charlet7-79/+87
From-SVN: r177042
2011-08-02linux-unwind.h (frob_update_context <__powerpc64__>): Restore for indirect ↵Alan Modra5-29/+57
call bcrtl from correct stack slot... libgcc/ * config/rs6000/linux-unwind.h (frob_update_context <__powerpc64__>): Restore for indirect call bcrtl from correct stack slot, and only if cfa+40 isn't valid. gcc/ * config/rs6000/rs6000-protos.h (rs6000_save_toc_in_prologue_p): Delete. * config/rs6000/rs6000.c (rs6000_save_toc_in_prologue_p): Make static. (rs6000_emit_prologue): Don't prematurely return when TARGET_SINGLE_PIC_BASE. Don't emit eh_frame info in save_toc_in_prologue case. (rs6000_call_indirect_aix): Only disallow save_toc_in_prologue for calls_alloca. From-SVN: r177041