- 30 Jul, 2014 12 commits
-
-
2014-07-30 Hristian Kirtchev <kirtchev@adacore.com> * aspects.ads Add a comment explaining why SPARK 2014 aspects are not delayed. Update the delay status of most SPARK 2014 aspects. * sem_ch13.adb (Analyze_Aspect_Specifications): Update all calls to Decorate_Aspect_And_Pragma and Insert_Delayed_Pragma to refert to Decorate and Insert_Pragma. Add various comments concerning the delay status of several SPARK 2014 aspects. The insertion of Refined_State now uses routine Insert_After_SPARK_Mode. (Decorate): New routine. (Decorate_Aspect_And_Pragma): Removed. (Insert_Delayed_Pragma): Removed. (Insert_Pragma): New routine. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * inline.adb (Expand_Inlined_Call): In GNATprove mode, emit only a warning, not an error on an attempt to inline a recursive subprogram. From-SVN: r213243
Arnaud Charlet committed -
2014-07-30 Robert Dewar <dewar@adacore.com> * g-forstr.adb: Minor code reorganization (use J rather than I as a variable name). * gnat_rm.texi, sem_prag.adb, sem_util.adb, sem_ch13.adb, g-forstr.ads: Minor reformatting. 2014-07-30 Eric Botcazou <ebotcazou@adacore.com> * sprint.adb (Set_Debug_Sloc): Also reset the end location if we are debugging the generated code. 2014-07-30 Yannick Moy <moy@adacore.com> * sinput.ads, sinput.adb (Comes_From_Inlined_Body): New function that returns True for source pointer for an inlined body. 2014-07-30 Javier Miranda <miranda@adacore.com> * exp_ch4.adb (Apply_Accessibility_Check): Add missing calls to Base_Address(). 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Hanalyze_Subprogram_Body_Helper): In GNATprove mode, subprogram bodies without a previous declaration are also candidates for front-end inlining. From-SVN: r213242
Arnaud Charlet committed -
2014-07-30 Hristian Kirtchev <kirtchev@adacore.com> * aspects.ads Aspects Async_Readers, Async_Writers, Effective_Reads and Effective_Writes do not need to be delayed. * sem_ch13.adb (Analyze_Aspect_Specifications): Propagate the optional Boolean expression when generating the corresponding pragma for an external property aspect. * sem_prag.adb (Analyze_External_Property_In_Decl_Part): Remove local constant Obj. Add local constant Obj_Id. Reimplement the check which ensures that the related variable is in fact volatile. (Analyze_Pragma): Reimplement the analysis of external property pragmas. * sem_util.adb (Is_Enabled): New routine. (Variable_Has_Enabled_Property): Reimplement the detection of an enabled external property. 2014-07-30 Sergey Rybin <rybin@adacore.com frybin> * gnat_ugn.texi, vms_data.ads: gnatstub: describe generating subunits for body stubs. 2014-07-30 Pascal Obry <obry@adacore.com> * g-forstr.adb, g-forstr.ads: New. * gnat_rm.texi, impunit.adb Makefile.rtl: Add new unit GNAT.Formatted_String. From-SVN: r213241
Arnaud Charlet committed -
2014-07-30 Eric Botcazou <ebotcazou@adacore.com> * exp_aggr.adb (Aggr_Assignment_OK_For_Backend): New predicate. (Expand_Array_Aggregate): Also enable in-place expansion for code generated by the compiler. For an object declaration, set the kind of the object in addition to its type. If an in-place assignment is to be generated and it can be directly done by the back-end, do not expand the aggregate. * fe.h (Is_Others_Aggregate): Declare. * gcc-interface/trans.c (gnat_to_gnu) <N_Assignment_Statement>: Add support for an aggregate with a single Others choice on the RHS by means of __builtin_memset. Tidy up. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * gnat_rm.texi: minor reformatting. 2014-07-30 Yannick Moy <moy@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Helper_Body): Remove body to inline in SPARK_Mode Off. From-SVN: r213240
Arnaud Charlet committed -
2014-07-30 Vincent Celier <celier@adacore.com> * prj-strt.adb: Minor comment update. 2014-07-30 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Document additional implementation-defined use of Constrained. From-SVN: r213239
Arnaud Charlet committed -
2014-07-30 Robert Dewar <dewar@adacore.com> * prj-proc.adb, prj-strt.adb: Update comments. From-SVN: r213238
Robert Dewar committed -
2014-07-30 Gary Dismukes <dismukes@adacore.com> * sinfo.ads, einfo.ads, checks.ads: Minor typo fix and reformatting. 2014-07-30 Vincent Celier <celier@adacore.com> * prj-proc.adb (Imported_Or_Extended_Project_From): New Boolean parameter No_Extending, defaulted to False. When No_Extending is True, do not look for an extending project. (Expression): For a variable reference that is not for the current project, get its Id calling Imported_Or_Extended_Project_From with No_Extending set to True. * prj-strt.adb (Parse_Variable_Reference): If a referenced variable is not found in the current project, check if it is defined in one of the projects it extends. From-SVN: r213237
Arnaud Charlet committed -
2014-07-30 Robert Dewar <dewar@adacore.com> * sem_util.adb (Predicate_Tests_On_Arguments): Omit tests for some additional cases of internally generated routines. 2014-07-30 Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Analyze_Proper_Body): When compiling for ASIS, if the compilation unit is a subunit, extend optional processing to all subunits of the current one. This allows gnatstub to supress generation of spurious bodies. From-SVN: r213236
Arnaud Charlet committed -
a-cbmutr.adb (Insert_Child): Use local variable First to keep track of the initial element's index within... 2014-07-30 Hristian Kirtchev <kirtchev@adacore.com> * a-cbmutr.adb (Insert_Child): Use local variable First to keep track of the initial element's index within the tree. From-SVN: r213235
Hristian Kirtchev committed -
From-SVN: r213234
Jan Hubicka committed -
* g++.dg/ipa/devirt-34.C: New testcase. * ipa-devirt.c (polymorphic_call_target_d): Rename nonconstruction_targets to speculative_targets (get_class_context): Fix handling of contextes without outer type; avoid matching non-polymorphic types in LTO. (possible_polymorphic_call_targets): Trun nonconstruction_targetsp parameter to speculative_targetsp; handle speculation. (dump_possible_polymorphic_call_targets): Update dumping. From-SVN: r213232
Jan Hubicka committed -
From-SVN: r213230
GCC Administrator committed
-
- 29 Jul, 2014 28 commits
-
-
(SingleObjContainerPrinter._contained): Use compatibility mixin. From-SVN: r213227
Jonathan Wakely committed -
* testsuite/util/testsuite_allocator.h (tracker_allocator_counter::allocate): Remove new invocation, only collect information. (tracker_allocator_counter::deallocate): Remove delete invocation, only collect information. (check_inconsistent_alloc_value_type): New. (tracker_allocator): Transform as a facade for any allocator type. (uneq_allocator): Likewise. (propagating_allocator): Likewise. * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an explicitly non propagating allocator. * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise. * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise. * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise. * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise. * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc: Likewise. * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc: Likewise. * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc: Likewise. * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise. From-SVN: r213224
François Dumont committed -
PR libstdc++/61947 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to disambiguate unary constructors. (_Tuple_impl): Pass allocator_arg_t arguments. * testsuite/20_util/tuple/61947.cc: New. * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line. From-SVN: r213221
Jonathan Wakely committed -
PR libstdc++/61946 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool, const allocator_type&)): Pass non-const allocator to _S_new_RopeFunction. * testsuite/ext/rope/61946.cc: New. From-SVN: r213220
Jonathan Wakely committed -
2014-07-29 Olivier Hainque <hainque@adacore.com> * config/vxworksae.h (VXWORKS_OVERRIDE_OPTIONS): Define. From-SVN: r213219
Olivier Hainque committed -
2014-07-29 Hristian Kirtchev <kirtchev@adacore.com> * a-cbmutr.adb (Allocate_Node): Remove the two parameter version. (Insert_Child): Add local variable First. Capture the index of the first node being created to ensure correct cursor construction later on. Use the three parameter version of Allocate_Node when creating multiple children as this method allows aspect Default_Value to take effect (if applicable). 2014-07-29 Eric Botcazou <ebotcazou@adacore.com> * exp_aggr.adb (Safe_Slice_Assignment): Remove. (Expand_Array_Aggregate): For a safe slice assignment, just set the target and use the common code path. From-SVN: r213216
Arnaud Charlet committed -
From-SVN: r213214
Arnaud Charlet committed -
PR bootstrap/61914 * gengtype.c (strtoken): New function. (create_user_defined_type): Replace strtok with strtoken. From-SVN: r213213
H.J. Lu committed -
2014-07-29 Robert Dewar <dewar@adacore.com> * sem_util.adb, sem_util.ads, sem_res.adb, exp_ch6.adb: Invert predicate No_Predicate_Test_On_Arguments, new name is Predicate_Tests_On_Arguments (with the opposite sense). 2014-07-29 Hristian Kirtchev <kirtchev@adacore.com> * sem_attr.adb (Resolve_Attribute): Clean up the code for attribute 'Access. Do not generate an elaboration flag for a stand alone expression function. The expression of an expression function is now frozen when the expression function appears as the prefix of attribute 'Access. * sem_ch6.adb (Analyze_Expression_Function): Remove local variable New_Decl and update all references to it after the rewriting has taken place. Establish the linkages between the generated spec and body. From-SVN: r213212
Arnaud Charlet committed -
2014-07-29 Robert Dewar <dewar@adacore.com> * sem_prag.adb (ip, rv): Prevent from being optimized away. * gnatls.adb (gnatls): Set E_Fatal exit status if ali file not found. * s-imgllb.adb, s-imgllw.adb, s-imgwiu.adb, s-imgbiu.adb: Minor reformatting. 2014-07-29 Vincent Celier <celier@adacore.com> * prj-pp.adb: Minor comment update. * frontend.adb: If a target dependency info file has been read through switch -gnateT= add it to the dependencies of the source being compiled. From-SVN: r213211
Arnaud Charlet committed -
2014-07-29 Robert Dewar <dewar@adacore.com> * sem_ch3.adb, prj.adb: Minor reformatting. 2014-07-29 Vincent Celier <celier@adacore.com> * prj-pp.adb (Pretty_Print.Output_Project_File): New procedure to output project file names between quotes without concatenation, even if the line is too long. (Pretty_Print): Use Output_Project_File for project being extended and project imported. From-SVN: r213210
Arnaud Charlet committed -
2014-07-29 Vincent Celier <celier@adacore.com> * gnat_ugn.texi: Document that configuration pragmas files are added to the dependencies, unless they contain only pragmas Source_File_Name_Project. 2014-07-29 Robert Dewar <dewar@adacore.com> * frontend.adb: Minor reformatting. 2014-07-29 Robert Dewar <dewar@adacore.com> * exp_ch6.adb (Add_Call_By_Copy_Code): Minor reformatting (Expand_Actuals): Make sure predicate checks are properly applied for the case of OUT or IN OUT parameters. * sem_res.adb: Minor reformatting (Resolve_Actuals): Skip predicate tests on arguments for Finalize * sem_util.adb (No_Predicate_Test_On_Arguments): Returns True if predicate tests on subprogram arguments should be skipped. * sem_util.ads (No_Predicate_Test_On_Arguments): New function 2014-07-29 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Analyze_Object_Declaration): If there is an address clause for the object and the expression is an aggregate, defer resolution and expansion of the aggregate until the freeze point of the entity. * sem_aggr.adb (Resolve_Aggregate): An others_clause is legal if the parent node is an N_Reference generated during expansion. 2014-07-29 Vincent Celier <celier@adacore.com> * prj.adb (Add_To_Buffer): Effectively double the size of the buffer. From-SVN: r213209
Arnaud Charlet committed -
2014-07-29 Robert Dewar <dewar@adacore.com> * frontend.adb, inline.adb, sem_util.adb, sem_res.adb, prepcomp.ads: Minor reformatting and code clean up. * exp_ch6.adb (Expand_Actuals): Generate predicate test unconditionally for case of OUT or IN OUT actual (before this was generated only for certain subcases, which is wrong, the test is always needed). From-SVN: r213208
Robert Dewar committed -
2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net> PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...> * include/bits/random.h (_Adaptor): static_assert for non floating-point result type. * include/bits/random.tcc (generate_canonical): Ditto. * include/ext/random.tcc (hypergeometric_distribution::operator()): Use double as a rng result type. * testsuite/26_numerics/random/pr60037-neg.cc: New. * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New. From-SVN: r213207
Ed Smith-Rowland committed -
2014-07-29 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb: Move Has_Defaulted_Discriminants to sem_util. * sem_ch4.adb (Analyze_Allocator): Defer resolution of expression until context type is available. * sem_res.adb (Resolve_Allocator): In the case of a qualified expression, complete resolution of expression. (Check_Aliased_Parameter): New procedure within Resolve_Actuals, to apply Ada2012 checks on aliased formals, as well as accesibility checks when the context of the call is an allocator or a qualified expression. * sem_util.ads, sem_util.adb (Has_Defaulted_Discriminants): Moved here from sem_ch3. (Object_Access_Level): Handle properly aliased formals and aggregates. * exp_ch6.adb (Expand_Call): Remove check on aliased parameters, now properly performed in sem_res (Resolve_Actuals, Check_Aliased_Parameter). From-SVN: r213206
Ed Schonberg committed -
* debug.adb Enable GNATprove inlining under debug flag -gnatdQ for now. * inline.ads, inline.adb (Can_Be_Inlined_In_GNATprove_Mode): New function to decide when a subprogram can be inlined in GNATprove mode. (Check_And_Build_Body_To_Inline): Include GNATprove_Mode as a condition for possible inlining. * sem_ch10.adb (Analyze_Compilation_Unit): Remove special case for Inline_Always in GNATprove mode. * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Build inlined body for subprograms in GNATprove mode, under debug flag -gnatdQ. * sem_prag.adb Minor change in comments. * sem_res.adb (Resolve_Call): Only perform GNATprove inlining inside subprograms marked as SPARK_Mode On. * sinfo.ads: Minor typo fix. From-SVN: r213205
Yannick Moy committed -
2014-07-29 Vincent Celier <celier@adacore.com> * frontend.adb: Add dependency on gnat.adc when taken into account and on non-temporary configuration pragmas files specified in switches -gnatec. * prepcomp.ads, prepcomp.adb (Add_Dependency): New procedure to add dependencies on configuration pragmas files. 2014-07-29 Pat Rogers <rogers@adacore.com> * gnat_ugn.texi: Minor clarification to the explanation for the GNATtest -v switch. From-SVN: r213204
Arnaud Charlet committed -
* types.ads (Mechanism_Type): Change range back to -18 .. Int'Last with documentation that explains the need for this extended range (use by C_Pass_By_Copy). From-SVN: r213203
Robert Dewar committed -
From-SVN: r213202
Arnaud Charlet committed -
2014-07-29 Robert Dewar <dewar@adacore.com> * gnat_rm.texi, sem_prag.adb: Minor reformatting. 2014-07-29 Sergey Rybin <rybin@adacore.com frybin> * gnat_ugn.texi: gnatmetric: clarify documentation for cyclomatic complexity metrics. 2014-07-29 Thomas Quinot <quinot@adacore.com> PR ada/60652 * s-oscons-tmplt.c: For Linux, define _BSD_SOURCE in order for CRTSCTS to be visible. 2014-07-29 Bob Duff <duff@adacore.com> * g-trasym.adb, g-trasym.ads: Code cleanup. From-SVN: r213201
Arnaud Charlet committed -
2014-07-29 Doug Rupp <rupp@adacore.com> * sigtramp-vxworks.c: Minor reformatting. From-SVN: r213200
Doug Rupp committed -
2014-07-29 Ed Schonberg <schonberg@adacore.com> * gnat_rm.texi: No doc needed for Ada2012 aspect Implicit_dereference. 2014-07-29 Robert Dewar <dewar@adacore.com> * sem_attr.adb (Attribute_12): New array (Analyze_Attribute): Check impl-defined Ada 2012 attributes. (Check_Ada_2012_Attribute): Removed. 2014-07-29 Doug Rupp <rupp@adacore.com> * init.c (vxworks6): Call sigtramp for RTP (as well as DKM) for ARM, PPC, and e500. * sigtramp-vxworks.c: New file. * sigtramp-armvxw.c, sigtramp-ppcvxw.c: removed files. From-SVN: r213199
Arnaud Charlet committed -
2014-07-29 Ed Schonberg <schonberg@adacore.com> * lib-xref.adb (Output_Refs, Check_Type_Reference): For a derived array type, add information about component type, which was previously missing in ali file. * gnat_rm.texi: Add documentation for Atomic_Always_Lock_Free. From-SVN: r213198
Ed Schonberg committed -
2014-07-29 Thomas Quinot <quinot@adacore.com> * sem_ch3.adb (Constrain_Corresponding_Record): For the case of the subtype created for a record component, do not mark the subtype as frozen. For one thing, this is anomalous (in particular, the base type might not itself be frozen yet); furthermore, proper freezing of the subtype must happen in any case. So, we just mark the subtype as requiring delayed freezing (and we'll actually freeze it when generating the init_proc of the enclosing record). Also change the name of the constrained record subtype (append a 'C' so that it is clearly different from the unconstrained record type, "related_idV") to make debugging easier. (Process_Full_View): When creating a full subtype for a pending private subtype, re-establish the scope of the private subtype so that we get proper visibility on outer discriminants. * exp_ch3.adb (Build_Init_Statements): Freeze any component subtype that is not frozen yet. 2014-07-29 Vincent Celier <celier@adacore.com> * prj-proc.adb (Recursive_Process): Always initialize the environment when the project is an aggregate project, even when it is not the root tree. From-SVN: r213197
Arnaud Charlet committed -
2014-07-29 Robert Dewar <dewar@adacore.com> * exp_ch5.adb, exp_ch9.adb: Minor comment additions. * gnat_rm.texi: Complete list of implementation aspects. * aspects.ads: Minor comment clarification. From-SVN: r213196
Robert Dewar committed -
2014-07-29 Ed Schonberg <schonberg@adacore.com> * exp_ch5.adb (Expand_N_Assignment_Statement): If the target type is a null-excluding access type, do not generate a constraint check if Suppress_Assignment_Checks is set on assignment node. * exp_ch9.adb (Build_Simple_Entry_Call): If actual is an out parameter of a null-excluding access type, there is access check on entry, so set Suppress_Assignment_Checks on generated statement that assigns actual to parameter block. * sinfo.ads: Document additional use of Suppress_Assignment_Checks. 2014-07-29 Javier Miranda <miranda@adacore.com> * types.ads (Kind): Renamed as Rkind to avoid crashing ASIS. * exp_ch11.adb, tbuild.adb Update references to Types.Kind 2014-07-29 Ed Schonberg <schonberg@adacore.com> * par-ch3.adb (P_Type_Declaration): Create end label for limited record declaration, previously omitted. 2014-07-29 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Complete list of implementation pragmas Add dummy sections for impl pragmas needing documentation. From-SVN: r213195
Arnaud Charlet committed -
2014-07-29 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Change theta to @ in documentation of aspect Dimension_System. 2014-07-29 Robert Dewar <dewar@adacore.com> * sem_attr.adb (Uneval_Old_Msg): Flags Uneval_Old_Accept/Warn are now on pragma. * sem_ch13.adb (Analyze_Aspect_Specifications): Remove setting of Uneval_Old_* * sem_prag.adb (Analyze_Pragma): Set Uneval_Old_* flags * sinfo.ads, sinfo.adb: Move Uneval_Old_Accept/Warn to N_Pragma node. 2014-07-29 Javier Miranda <miranda@adacore.com> * types.ads Update documentation on how to add new reason codes for exceptions. (RT_Exception_Code): Keep values ordered by their reason code. Required by the .NET backend. (RT_CE_Exceptions): Subtype declaration removed. (RT_PE_Exceptions): Subtype declaration removed. (RT_SE_Exceptions): Subtype declaration removed. (Kind): New mapping table of RT_Exception_Codes. * exp_ch11.adb (Get_RT_Exception_Entity): Updated to use the new mapping table. * tbuild.adb (Make_Raise_Storage_Error): Updated to use the new mapping table. (Make_Raise_Program_Error): Updated to use the new mapping table. (Make_Raise_Storage_Error): Updated to use the new mapping table. * a-except.adb Keep Rcheck_CE_xxx entities ordered according to their reason code. From-SVN: r213194
Arnaud Charlet committed -
2014-07-29 Thomas Quinot <quinot@adacore.com> * gnat_rm.texi: Document internal attributes used for PolyORB/DSA distributed stubs generation. * exp_ch3.adb: Minor reformatting. 2014-07-29 Yannick Moy <moy@adacore.com> * sinfo.ads: Document constraint between frontend and GNATprove. From-SVN: r213193
Arnaud Charlet committed
-