aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2013-04-11[multiple changes]Arnaud Charlet17-495/+1911
2013-04-11 Johannes Kanig <kanig@adacore.com> * debug.adb: Document usage of -gnatd.Q switch. 2013-04-11 Matthew Heaney <heaney@adacore.com> * a-crbtgk.adb (Ceiling, Find, Floor): Adjust locks before element comparisons. (Generic_Conditional_Insert, Generic_Conditional_Insert_With_Hint): Ditto. * a-crbtgo.adb, a-rbtgbo.adb (Generic_Equal): Adjust locks before element comparisons. * a-rbtgso.adb (Difference, Intersection): Adjust locks before element comparisons. (Is_Subset, Overlap): Ditto (Symmetric_Difference, Union): Ditto * a-btgbso.adb (Set_Difference, Set_Intersection): Adjust locks before element comparisons. (Set_Subset, Set_Overlap): Ditto (Set_Symmetric_Difference, Set_Union): Ditto * a-coorse.adb, a-ciorse.adb, a-cborse.adb (Update_Element_Preserving_Key): Adjust locks before element comparisons (Replace_Element): Ditto 2013-04-11 Pascal Obry <obry@adacore.com> * prj-attr.adb, projects.texi, snames.ads-tmpl: Remove Build_Slaves attribute. 2013-04-11 Ed Schonberg <schonberg@adacore.com> * exp_ch3.adb (Build_Equivalent_Aggregate): Subsidiary of Expand_N_Object_Declaration, used to construct an aggregate with static components whenever possible, so that objects of a discriminated type can be initialized without calling the init. proc for the type. 2013-04-11 Vincent Celier <celier@adacore.com> * prj-makr.adb (Process_Directory): On VMS, always delete, then recreate the temporary file with Create_Output_Text_File, otherwise the output redirection does not work properly. 2013-04-11 Eric Botcazou <ebotcazou@adacore.com> * urealp.ads: Fix minor typo. 2013-04-11 Fabien Chouteau <chouteau@adacore.com> * cio.c (mktemp): Don't use tmpnam function from the system on VxWorks in kernel mode. From-SVN: r197784
2013-04-11make.adb (Compile): Clarify the error message reported when gnatmake refuses ↵Vincent Celier3-37/+53
to compile a runtime... 2013-04-11 Vincent Celier <celier@adacore.com> * make.adb (Compile): Clarify the error message reported when gnatmake refuses to compile a runtime source. (Start_Compile_If_Possible): Ditto. 2013-04-11 Vincent Celier <celier@adacore.com> * gnat_ugn.texi: Add documentation about -gnatc and gnatmake. From-SVN: r197783
2013-04-11switch-c.adb: Document internal switches.Vincent Celier3-65/+69
2013-04-11 Vincent Celier <celier@adacore.com> * switch-c.adb: Document internal switches. * usage.adb: Remove lines for internal switches: -gnatea, -gnateO, -gnatez and -gnateO. From-SVN: r197782
2013-04-11[multiple changes]Arnaud Charlet9-36/+73
2013-04-11 Ed Schonberg <schonberg@adacore.com> * par-ch6.adb (P_Subprogram): Attach aspects to subprogram stub. * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Allow aspects on subprogram stubs. * sem_ch13.adb (Analyze_Aspect_Specifications): Analyze generated pre/post pragmas at once before analyzing the proper body. * sem_prag.adb (Chain_PPC): Handle pragma that comes from an aspect on a subprogram stub. * aspects.adb: Aspect specifications can appear on a subprogram_Body_Stub. 2013-04-11 Vincent Celier <celier@adacore.com> * gnatname.adb: Minor comment fix. 2013-04-11 Vincent Celier <celier@adacore.com> * prj-makr.adb (Process_Directory): Create a new temporary file for each invocation of the compiler, in directory pointed by environment variable TMPDIR if it exists. 2013-04-11 Arnaud Charlet <charlet@adacore.com> * gnat_ugn.texi: Minor editing/clean ups. From-SVN: r197781
2013-04-11re PR c++/56913 ([C++11] SFINAE for ill-formed pointer-to-member operators ↵Paolo Carlini4-4/+49
with incompatible ref-qualifiers) /cp 2013-04-11 Paolo Carlini <paolo.carlini@oracle.com> PR c++/56913 * typeck2.c (build_m_component_ref): Protect error calls with (complain & tf_error). /testsuite 2013-04-11 Paolo Carlini <paolo.carlini@oracle.com> PR c++/56913 * g++.dg/cpp0x/sfinae44.C: New. From-SVN: r197780
2013-04-11sem_ch6.adb (Analyze_Null_Procedure): New subprogram...Ed Schonberg2-76/+162
2013-04-11 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Null_Procedure): New subprogram, mostly extracted from Analyze_Subprogram_Declaration, to handle null procedure declarations that in ada 2012 can be completions of previous declarations. From-SVN: r197779
2013-04-11[multiple changes]Arnaud Charlet5-54/+67
2013-04-11 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Entity_Of): Moved to Exp_Util. * exp_util.ads, exp_util.adb (Entity_Of): New routine. 2013-04-11 Robert Dewar <dewar@adacore.com> * g-spipat.ads: Minor comment fix. From-SVN: r197778
2013-04-11[multiple changes]Arnaud Charlet6-40/+59
2013-04-11 Robert Dewar <dewar@adacore.com> * sem_prag.adb, sem_util.adb, sem_res.adb, exp_ch4.adb: Minor reformatting. 2013-04-11 Thomas Quinot <quinot@adacore.com> * exp_util.ads (Fully_Qualified_Name_String): Document that the constructed literal is the entity name in all upper case. From-SVN: r197777
2013-04-11[multiple changes]Arnaud Charlet4-3/+31
2013-04-11 Thomas Quinot <quinot@adacore.com> * sem_util.adb (Set_Entity_With_Style_Check): Fix logic of check for implementation defined identifiers. 2013-04-11 Yannick Moy <moy@adacore.com> * checks.adb (Apply_Type_Conversion_Checks): Add an explanation of why range check and length are put on different nodes. * exp_ch4.adb (Apply_Type_Conversion_Checks): Remove check marks when doing their expansion. From-SVN: r197776
2013-04-11[multiple changes]Arnaud Charlet10-43/+182
2013-04-11 Ed Schonberg <schonberg@adacore.com> * sem_util.ads, sem_util.adb (Get_Incomplete_View_Of_Ancestor): New function to implement the notion introduced in RM 7.3.1 (5.2/3): in a child unit, a derived type is within the derivation class of an ancestor declared in a parent unit, even if there is an intermediate derivation that does not see the full view of that ancestor. * sem_res.adb (Valid_Conversion): if all else fails, examine if an incomplete view of an ancestor makes a numeric conversion legal. 2013-04-11 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb: in Ada2012 operators can only have in parameters. 2013-04-11 Vincent Celier <celier@adacore.com> * makeutl.adb (Create_Binder_Mapping_File): Do not put into the mapping file ALI files of sources that have been replaced. 2013-04-11 Vincent Celier <celier@adacore.com> * projects.texi: Add subsection Duplicate Sources in Projects. 2013-04-11 Vincent Celier <celier@adacore.com> * gnat_ugn.texi: Add documentation for gnatmake switch -droot_dir/** 2013-04-11 Arnaud Charlet <charlet@adacore.com> * init.c (__gnat_install_handler): Only set up an alternate stack when installing a signal handler for SIGSEGV. 2013-04-11 Thomas Quinot <quinot@adacore.com> * g-socket.adb (Connect_Socket, timeout version): Call underlying connect operation directly, not through the 2-argument Connect_Socket thick binding, in order to avoid raising a junk exception for the EINPROGRESS return. From-SVN: r197775
2013-04-11[multiple changes]Arnaud Charlet11-43/+796
2013-04-11 Robert Dewar <dewar@adacore.com> * a-cdlili.adb: Minor addition of pragma Warnings (Off). 2013-04-11 Robert Dewar <dewar@adacore.com> * hostparm.ads: Minor reformatting. 2013-04-11 Hristian Kirtchev <kirtchev@adacore.com> * aspects.ads, aspects.adb: Add Aspect_Depends to all the relevant tables. * elists.ads, elists.adb (Contains): New routine. * par-prag.adb: Pragma Depends does not need any special treatment by the parser. * sem_ch13.adb (Analyze_Aspect_Specifications): Transform aspect Depends into a corresponding pragma. (Check_Aspect_At_Freeze_Point): Aspect Depends does not need inspection at its freeze point. * sem_prag.adb (Analyze_Pragma): Perform analysis and normalization of pragma Depends. Remove the use of function Is_Duplicate_Item. Use End_Scope to uninstalle the formal parameters of a subprogram. Add a value for pragma Depends in table Sig_Flags. (Is_Duplicate_Item): Removed. * snames.ads-tmpl: Add predefined name for Depends as well as a pragma identifier. From-SVN: r197774
2013-04-11[multiple changes]Arnaud Charlet10-539/+587
2013-04-11 Arnaud Charlet <charlet@adacore.com> * gnat1drv.adb: Minor code clean up. 2013-04-11 Arnaud Charlet <charlet@adacore.com> * debug.adb, sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Ignore enumeration rep clauses by default in CodePeer mode, unless -gnatd.I is specified. 2013-04-11 Ed Schonberg <schonberg@adacore.com> * sem_util.adb (Safe_To_Capture_Value): If the node belongs to an expression that has been attached to the else_actions of an if-expression, the capture is not safe. 2013-04-11 Yannick Moy <moy@adacore.com> * checks.adb (Apply_Type_Conversion_Checks): Put check mark on type conversion for arrays. 2013-04-11 Robert Dewar <dewar@adacore.com> * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb: Minor reformatting. 2013-04-11 Johannes Kanig <kanig@adacore.com> * adabkend.adb: Minor comment addition. From-SVN: r197773
2013-04-11run_all.sh: Remove special handling of -gnat95 switch.Arnaud Charlet3-36/+6
* ada/acats/run_all.sh: Remove special handling of -gnat95 switch. * ada/acats/ada95.lst: Remove special handling of -gnat95 switch. From-SVN: r197772
2013-04-11[multiple changes]Arnaud Charlet7-307/+1056
2013-04-11 Matthew Heaney <heaney@adacore.com> * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb ("="): Increment lock counts before entering loop. (Find): Ditto. (Is_Sorted, Merge, Sort): Ditto. (Reverse_Find): Ditto. (Splice_Internal): Internal operation to refactor splicing logic. (Splice): Some logic moved into Splice_Internal. 2013-04-11 Johannes Kanig <kanig@adacore.com> * adabkend.adb (Scan_Compiler_Arguments): Do not call Set_Output_Object_File_Name in Alfa_Mode * gnat1drv.adb (Adjust_Global_Switches): Take Alfa_Mode into account. * opt.ads: Fix documentation. From-SVN: r197771
2013-04-11re PR tree-optimization/56878 (Issue with candidate choice in ↵Richard Biener4-9/+80
vect_gen_niters_for_prolog_loop.) 2013-04-11 Richard Biener <rguenther@suse.de> PR tree-optimization/56878 * tree-flow.h (outermost_invariant_loop_for_expr): Declare. * tree-ssa-loop-ivopts.c (outermost_invariant_loop_for_expr): New function. * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Prefer to align the DR with the most invariant base address. From-SVN: r197769
2013-04-11sem_res.adb: Minor code reorganization and comment fixes.Robert Dewar4-15/+25
2013-04-11 Robert Dewar <dewar@adacore.com> * sem_res.adb: Minor code reorganization and comment fixes. * sem_type.adb: Minor reformatting. From-SVN: r197768
2013-04-11[multiple changes]Arnaud Charlet4-120/+155
2013-04-11 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch4.adb (Process_Transient_Object): Add new local variable Fin_Call. Remove and explain ??? comment. Use the Actions of logical operators "and then" and "or else" to insert the generated finalization call. 2013-04-11 Eric Botcazou <ebotcazou@adacore.com> * gnat_rm.texi: Fix typo. 2013-04-11 Ed Schonberg <schonberg@adacore.com> * sem_res.adb: Minor reformatting. From-SVN: r197767
2013-04-11[multiple changes]Arnaud Charlet15-168/+650
2013-04-11 Robert Dewar <dewar@adacore.com> * atree.h: Add declarations for Flag255-Flag289 Fix declaration of Field30 (was wrong, but no effect, since not yet referenced by back end) Add declarations for Field31-Field35 Add declarations for Node31-Node35. * einfo.ads, einfo.adb (Has_Invariants): No longer applies to procedures. (Has_Predicates): No longer applies to functions. (Is_Predicate_Function): New flag. (Is_Predicate_Function_M): New flag. (Is_Invariant_Procedure): New flag. (Predicate_Function_M): New function. (Set_Predicate_Function_M): New procedure. * exp_ch11.adb (Expand_N_Raise_Expression): Take care of special case of appearing in predicate used for membership test. * exp_ch3.adb (Insert_Component_Invariant_Checks): Set Is_Invariant_Procedure flag. * exp_ch4.adb (Expand_Op_In): Call special predicate function that takes care of raise_expression nodes in the predicate. * exp_util.ads, exp_util.adb (Make_Predicate_Call): Add argument Mem for membership case. * sem_ch13.adb (Build_Predicate_Functions): New name for Build_Predicate_Function. Major rewrite to take care of raise expression in predicate for membership tests. * sem_res.adb (Resolve_Actuals): Include both predicate functions in defense against infinite predicate function loops. * sinfo.ads, sinfo.adb (Convert_To_Return_False): New flag. 2013-04-11 Robert Dewar <dewar@adacore.com> * sem_prag.adb: Minor reformatting. 2013-04-11 Ed Schonberg <schonberg@adacore.com> * lib-xref.adb: Generate reference for component of anonymous access type. From-SVN: r197766
2013-04-11[multiple changes]Arnaud Charlet5-514/+1022
2013-04-11 Robert Dewar <dewar@adacore.com> * stand.ads: Minor reformatting. 2013-04-11 Matthew Heaney <heaney@adacore.com> * a-convec.adb, a-coinve.adb, a-cobove.adb ("="): Increment lock counts before entering loop. (Find, Find_Index): Ditto. (Is_Sorted, Merge, Sort): Ditto. (Reverse_Find, Reverse_Find_Index): Ditto. From-SVN: r197765
2013-04-11exp_ch11.ads, [...] (Expand_N_Raise_Expression): New procedure.Robert Dewar16-20/+256
2013-04-11 Robert Dewar <dewar@adacore.com> * exp_ch11.ads, exp_ch11.adb (Expand_N_Raise_Expression): New procedure. * exp_util.adb (Insert_Actions): Add entry for N_Raise_Expression. * expander.adb: Add call to Expand_N_Raise_Expression. * par-ch11.adb (P_Raise_Expression): New procedure. * par-ch4.adb (P_Relation): Handle Raise_Expression. * par.adb (P_Raise_Expression): New procedure. * sem.adb: Add handling for N_Raise_Expression. * sem_ch11.ads, sem_ch11.adb (Analyze_Raise_Expression): New procedure. * sem_res.adb (Resolve): Add handling for N_Raise_Expression. * sinfo.ads, sinfo.adb (N_Raise_Expression): New node. * sprint.adb (Sprint_Node_Actual): Add handling for N_Raise_Expression. * stand.ads (Any_Type): Document use with N_Raise_Expression. From-SVN: r197764
2013-04-11[multiple changes]Arnaud Charlet3-83/+18
2013-04-11 Vincent Celier <celier@adacore.com> * gnat_ugn.texi: Remove section "The Development Environments" now that all predefined attributes are documented, including those in package IDE. 2013-04-11 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb: Preserve parent link in copy of expression. From-SVN: r197763
2013-04-11[multiple changes]Arnaud Charlet3-174/+1292
2013-04-11 Vincent Celier <celier@adacore.com> * projects.texi: Complete rewrite of the subsection Attributes in section "Project file Reference". 2013-04-11 Robert Dewar <dewar@adacore.com> * exp_ch4.adb: Minor reformatting. From-SVN: r197762
2013-04-11exp_ch4.adb (Expand_Concatenate): Remove wrapping in expression-with-actions ↵Robert Dewar5-95/+72
node. 2013-04-11 Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Expand_Concatenate): Remove wrapping in expression-with-actions node. No longer needed given fix to sem_prag and caused loss of some useful warnings. * sem.ads: Minor reformatting. * sem_prag.adb (Check_Disabled): Removed, to be replaced by not Check_Enabled. These two routines were curiously incompatible causing confusion. (Analyze_Pragma, case Check): Make sure we do not expand the string argument if the check is disabled. Avoid use of Check_Disabled, which resulted in missing analysis in some cases. * sem_prag.ads (Check_Disabled): Removed, to be replaced by not Check_Enabled. These two routines were curiously incompatible causing confusion. From-SVN: r197761
2013-04-11[multiple changes]Arnaud Charlet3-6/+32
2013-04-11 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch4.adb (Process_Transient_Object): Use an unchecked conversion when associating a transient controlled object with its "hook". 2013-04-11 Ed Schonberg <schonberg@adacore.com> * sem_prag.adb (Analyze_Pragma, case Preelaborable_Initialization): The pragma is legal if it comes from an aspect on the private view of the type, even though its analysis point takes place later at the freeze point. From-SVN: r197760
2013-04-11[multiple changes]Arnaud Charlet6-100/+100
2013-04-11 Robert Dewar <dewar@adacore.com> * sem_ch6.adb: Minor reformatting. 2013-04-11 Yannick Moy <moy@adacore.com> * ali-util.adb (Read_Withed_ALIs): Do not consider it an error to read ALI files with No_Object=True in Alfa mode. * gnat1drv.adb: Set appropriately Back_End_Mode in Alfa mode, whether this is during frame condition generation of translation to Why. 2013-04-11 Robert Dewar <dewar@adacore.com> * exp_ch4.adb: Minor code reorganization * types.ads: Minor reformatting. From-SVN: r197759
2013-04-11[multiple changes]Arnaud Charlet4-14/+42
2013-04-11 Johannes Kanig <kanig@adacore.com> * opt.ads New global boolean Frame_Condition_Mode to avoid referring to command line switch. * gnat1drv.adb (Gnat1drv) set frame condition mode when -gnatd.G is present, and disable Code generation in that case. Disable ALI file generation when switch is *not* present. 2013-04-11 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Expression_Function): Perform the pre-analysis on a copy of the expression, to prevent downstream visbility issues involving operators and instantiations. From-SVN: r197758
2013-04-11debug.adb: Reservation and documentation for -gnatd.G switch.Johannes Kanig3-2/+24
2013-04-11 Johannes Kanig <kanig@adacore.com> * debug.adb: Reservation and documentation for -gnatd.G switch. * gnat1drv.adb (Adjust_Global_Switches) Take into account -gnatd.G switch, and set ALI file generation accordingly. From-SVN: r197757
2013-04-11exp_ch4.adb, [...]: Minor reformatting.Robert Dewar5-4/+18
2013-04-11 Robert Dewar <dewar@adacore.com> * exp_ch4.adb, exp_dist.adb: Minor reformatting. * gnat_rm.texi, gnat_ugn.texi: -020 Add documentation clarifying that check names introduced with pragma Check_Name are suppressed by -gnatp. From-SVN: r197756
2013-04-11gnat_ugn.texi, [...]: Move chapter "Tools Supporting Project Files" from ↵Vincent Celier3-963/+970
projects.texi to gnat_ugn.texi. 2013-04-11 Vincent Celier <celier@adacore.com> * gnat_ugn.texi, projects.texi: Move chapter "Tools Supporting Project Files" from projects.texi to gnat_ugn.texi. From-SVN: r197755
2013-04-11* gcc-interface/Make-lang.in: Update dependencies.Arnaud Charlet2-9/+13
From-SVN: r197754
2013-04-11[multiple changes]Arnaud Charlet5-40/+88
2013-04-11 Yannick Moy <moy@adacore.com> * gnat1drv.adb (Adjust_Global_Switches): Allow missing body in Alfa mode. 2013-04-11 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch4.adb (Expand_N_Allocator): Detect the allocation of an anonymous controlled object where the type of the context is named. Use the pool and finalization master of the named access type to allocate the object. 2013-04-11 Vincent Celier <celier@adacore.com> * gnat_ugn.texi: Remove most mentions of gprbuild. * projects.texi: Remove all mentions of asociative array attributes. From-SVN: r197753
2013-04-11[multiple changes]Arnaud Charlet11-51/+83
2013-04-11 Robert Dewar <dewar@adacore.com> * sem_prag.adb, sem_attr.adb, gnat1drv.adb, prj-makr.adb, opt.ads, sem_ch13.adb: Minor reformatting. * debug.adb: Minor comment fix (remove junk .I doc). 2013-04-11 Thomas Quinot <quinot@adacore.com> * rtsfind.ads, exp_dist.adb, exp_dist.ads (Rtsfind.PCS_Version, case PolyORB): Bump to 6. (Exp_Dist.PolyORB_Support): Replace TC_Build with Build_Complex_TC. From-SVN: r197752
2013-04-11[multiple changes]Arnaud Charlet12-52/+136
2013-04-11 Arnaud Charlet <charlet@adacore.com> * debug.adb, sem_prag.adb, par-ch2.adb, sem_attr.adb, gnat1drv.adb, exp_disp.adb, opt.ads, sem_ch13.adb (Relaxed_RM_Semantics): New flag. Enable this flag in CodePeer mode, and also via -gnatd.M. Replace some uses of CodePeer_Mode by Relaxed_RM_Semantics. 2013-04-11 Ed Schonberg <schonberg@adacore.com> * sem_ch8.adb (Check_Constrained_Object): If a subtype is created from the renamed object in an object renaming declaration with an unconstrained nominal subtype, freeze the created subtype at once, to prevent order of elaboration issues in the backend. 2013-04-11 Arnaud Charlet <charlet@adacore.com> * exp_aggr.adb (Aggr_Size_OK): Refine setting of Max_Aggr_Size in particular in CodePeer mode. 2013-04-11 Vincent Celier <celier@adacore.com> * gnat_ugn.texi: Add documentation for backup copies of project files for gnatname. From-SVN: r197751
2013-04-11[multiple changes]Arnaud Charlet5-10/+65
2013-04-11 Tristan Gingold <gingold@adacore.com> * gnat_rm.texi: Add Detect_BLocking in the ravenscar profile pragma list. 2013-04-11 Vincent Celier <celier@adacore.com> * gnatname.adb (Scan_Args): Recognize new switch --no-backup (Usage): Add line for --no-backup. * opt.ads (No_Nackup): New Boolean variable, initialized to False. * prj-makr.adb (Initialize): Create a backup for an existing project file if gnatname is not invoked with --no-backup. From-SVN: r197750
2013-04-11[multiple changes]Arnaud Charlet1-0/+9
2013-04-11 Thomas Quinot <quinot@adacore.com> * exp_ch4.adb: Minor code improvement: replace various calls to Make_If_Statement in expansion with Make_Implicit_If_Statement. 2013-04-11 Eric Botcazou <ebotcazou@adacore.com> * ali.adb: Fix minor typo. From-SVN: r197749
2013-04-11[multiple changes]Arnaud Charlet3-9/+19
2013-04-11 Thomas Quinot <quinot@adacore.com> * exp_ch4.adb (Find_Enclosing_Context): Add missing case of N_Procedure_Call_Statement. 2013-04-11 Robert Dewar <dewar@adacore.com> * debug.adb: Minor comment fix. From-SVN: r197748
2013-04-11[multiple changes]Arnaud Charlet3-40/+59
2013-04-11 Johannes Kanig <kanig@adacore.com> * debug.adb: Remove comment for -gnatd.G. 2013-04-11 Thomas Quinot <quinot@adacore.com> * exp_ch4.adb (Expand_Record_Equality.Suitable_Element): Remove recursive routine, replace with... (Expand_Record_Equality.Element_To_Compare): New subroutine, implement iterative search for next element to compare. Add explanatory comment in the tagged case. From-SVN: r197747
2013-04-11sem_ch5.adb: remove spurious warning from non-empty loop.Ed Schonberg3-294/+228
2013-04-11 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb: remove spurious warning from non-empty loop. * sem_ch8.adb (Enclosing_Instance): Make public to other routines in the package, in order to suppress redundant semantic checks on subprogram renamings in nested instantiations. From-SVN: r197746
2013-04-11[multiple changes]Arnaud Charlet6-193/+285
2013-04-11 Robert Dewar <dewar@adacore.com> * errout.ads: Minor reformatting. * sem_eval.adb (Why_Not_Static): Now issues continuation messages (Why_Not_Static): Test for aggregates behind string literals. * sem_eval.ads (Why_Not_Static): Now issues continuation messages. 2013-04-11 Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Expand_Concatenation): Wrap expansion in Expressions_With_Actions. 2013-04-11 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Base_Types_Match): For an actual type in an instance, the base type may itself be a subtype, so find true base type to determine compatibility. From-SVN: r197745
2013-04-11[multiple changes]Arnaud Charlet12-76/+226
2013-04-11 Robert Dewar <dewar@adacore.com> * s-osprim-mingw.adb, sem_ch3.adb, sem_prag.adb, sem_util.adb. makeutl.adb, sem_ch8.adb: Minor reformatting. 2013-04-11 Vincent Celier <celier@adacore.com> * gnat_ugn.texi: Minor fixes for VMS. * ug_words: Minor addition: -gnato? => /OVERFLOW_CHECKS=?. 2013-04-11 Robert Dewar <dewar@adacore.com> * usage.adb (Usage): Minor edit to -gnatW message 2013-04-11 Robert Dewar <dewar@adacore.com> * exp_aggr.adb (Expand_N_Aggregate): Add circuit for handling others for string literal case. Also add big ??? comment about this new code, which should be redundant, but is not. * sem_eval.adb (Eval_Concatenation): Handle non-static case properly (Eval_String_Literal): Handle non-static literal properly From-SVN: r197744
2013-04-11opts.c (common_handle_option): Fix formatting and add FALLTHRU comment.Senthil Kumar Selvaraj2-4/+9
* opts.c (common_handle_option): Fix formatting and add FALLTHRU comment. From-SVN: r197743
2013-04-11re PR c++/54216 (Missing diagnostic for ill-formed anonymous enum declarations)Paolo Carlini5-1/+31
/cp 2013-04-11 Paolo Carlini <paolo.carlini@oracle.com> PR c++/54216 * parser.c (cp_parser_enum_specifier): Check for empty anonymous enums and anonymous scoped enums. /testsuite 2013-04-11 Paolo Carlini <paolo.carlini@oracle.com> PR c++/54216 * g++.dg/cpp0x/enum26.C: New. * g++.old-deja/g++.pt/mangle1.C: Adjust. From-SVN: r197742
2013-04-11[PATCH, AARCH64] Fix unrecognizable insn issue with vcond against 0.0fJames Greenhalgh10-11/+71
gcc/ * config/aarch64/aarch64-simd.md (aarch64_vcond_internal): Fix floating-point vector comparisons against 0. gcc/testsuite/ * gcc.target/aarch64/vect-fcm.x: Add check for zero forms of inverse operands. * gcc.target/aarch64/vect-fcm-eq-d.c: Check that new zero form loop is vectorized. * gcc.target/aarch64/vect-fcm-eq-f.c: Likewise. * gcc.target/aarch64/vect-fcm-ge-d.c: Check that new zero form loop is vectorized and that the correct instruction is generated. * gcc.target/aarch64/vect-fcm-ge-f.c: Likewise. * gcc.target/aarch64/vect-fcm-gt-d.c: Likewise. * gcc.target/aarch64/vect-fcm-gt-f.c: Likewise. From-SVN: r197741
2013-04-11re PR tree-optimization/56899 (Wrong constant folding)Jakub Jelinek4-2/+62
PR tree-optimization/56899 * fold-const.c (extract_muldiv_1): Apply distributive law only if TYPE_OVERFLOW_WRAPS (ctype). * gcc.c-torture/execute/pr56899.c: New test. From-SVN: r197692
2013-04-11re PR rtl-optimization/56124 (Redundant reload for loading from memory)Bin Cheng2-2/+11
PR target/56124 * ira-costs.c (scan_one_insn): Check whether the source rtx of loading has side effect. From-SVN: r197691
2013-04-11Daily bump.GCC Administrator1-1/+1
From-SVN: r197687
2013-04-11Replace enum gfc_try with bool type.Janne Blomqvist36-4989/+4849
2013-04-11 Janne Blomqvist <jb@gcc.gnu.org> * gfortran.h: Remove enum gfc_try, replace gfc_try with bool type. * arith.c: Replace gfc_try with bool type. * array.c: Likewise. * check.c: Likewise. * class.c: Likewise. * cpp.c: Likewise. * cpp.h: Likewise. * data.c: Likewise. * data.h: Likewise. * decl.c: Likewise. * error.c: Likewise. * expr.c: Likewise. * f95-lang.c: Likewise. * interface.c: Likewise. * intrinsic.c: Likewise. * intrinsic.h: Likewise. * io.c: Likewise. * match.c: Likewise. * match.h: Likewise. * module.c: Likewise. * openmp.c: Likewise. * parse.c: Likewise. * parse.h: Likewise. * primary.c: Likewise. * resolve.c: Likewise. * scanner.c: Likewise. * simplify.c: Likewise. * symbol.c: Likewise. * trans-intrinsic.c: Likewise. * trans-openmp.c: Likewise. * trans-stmt.c: Likewise. * trans-types.c: Likewise. From-SVN: r197682
2013-04-10sparc.c: Include tree-pass.h.Steven Bosscher3-106/+152
* config/sparc/sparc.c: Include tree-pass.h. (TARGET_MACHINE_DEPENDENT_REORG): Do not redefine. (sparc_reorg): Rename to sparc_do_work_around_errata. Move to head of file. Change return type. Split off gate function. (sparc_gate_work_around_errata): New function. (pass_work_around_errata): New pass definition. (insert_pass_work_around_errata) New pass insert definition to insert pass_work_around_errata just after delayed-branch scheduling. (sparc_option_override): Insert the pass. * config/sparc/t-sparc (sparc.o): Add TREE_PASS_H dependence. From-SVN: r197681
2013-04-10Fix sparc assembler specs for supersparc and hypersparc.David S. Miller2-0/+5
gcc/ * config/sparc/sparc.h (ASM_CPU_SPEC): Pass -Av8 if -mcpu=supersparc or -mcpu=hypersparc. From-SVN: r197680
2013-04-10Improve cstore code generation on 64-bit sparc.David S. Miller14-97/+230
One major suboptimal area of the sparc back end is cstore generation on 64-bit. Due to the way arguments and return values of functions must be promoted, the ideal mode for cstore's result would be DImode. But this hasn't been done because of a fundamental limitation of the cstore patterns. They require a fixed mode be used for the boolean result value. I've decided to work around this by building a target hook which specifies the type to use for conditional store results, and then I use a special predicate for operans 0 in the cstore expanders so that they still match even when we use DImode. The default version of the target hook just does what it does now, so no other target should be impacted by this at all. Regstrapped on 32-bit sparc-linux-gnu and I've run the testsuite with "-m64" to validate the 64-bit side. gcc/ * target.def (cstore_mode): New hook. * target.h: Include insn-codes.h * targhooks.c: Likewise. (default_cstore_mode): New function. * targhooks.h: Declare it. * doc/tm.texi.in: New hook slot for TARGET_CSTORE_MODE. * doc/tm.texi: Rebuild. * expmed.c (emit_cstore): Obtain cstore boolean result mode using target hook, rather than inspecting the insn_data. * config/sparc/sparc.c (sparc_cstore_mode): New function. (TARGET_CSTORE_MODE): Redefine. (emit_scc_insn): When TARGET_ARCH64, emit new 64-bit boolean result patterns. * config/sparc/predicates.md (cstore_result_operand): New special predicate. * config/sparc/sparc.md (cstoresi4, cstoredi4, cstore<F:mode>4): Use it for operand 0. (*seqsi_special): Rewrite using 'P' mode iterator on operand 0. (*snesi_special): Likewise. (*snesi_zero): Likewise. (*seqsi_zero): Likewise. (*sltu_insn): Likewise. (*sgeu_insn): Likewise. (*seqdi_special): Make operand 0 and comparison operation be of DImode. (*snedi_special): Likewise. (*snedi_special_vis3): Likewise. (*neg_snesi_zero): Rename to *neg_snesisi_zero. (*neg_snesi_sign_extend): Rename to *neg_snesidi_zero. (*snesi_zero_extend): Delete, covered by 'P' mode iterator. (*neg_seqsi_zero): Rename to *neg_seqsisi_zero. (*neg_seqsi_sign_extend): Rename to *neg_seqsidi_zero. (*seqsi_zero_extend): Delete, covered by 'P' mode iterator. (*sltu_extend_sp64): Likewise. (*neg_sltu_insn): Rename to *neg_sltusi_insn. (*neg_sltu_extend_sp64): Rename to *neg_sltudi_insn. (*sgeu_extend_sp64): Delete, covered by 'P' mode iterator. (*neg_sgeu_insn): Rename to *neg_sgeusi_insn. (*neg_sgeu_extend_sp64): Rename to *neg_sgeudi_insn. gcc/testsuite/ * gcc.target/sparc/setcc-4.c: New test. * gcc.target/sparc/setcc-5.c: New test. From-SVN: r197679