Skip to content
Snippets Groups Projects
  1. Aug 05, 2011
  2. Aug 04, 2011
    • Benjamin Kosnik's avatar
      build_hacking.xml: Use relative fileref for PNG imagedata. · a6aff075
      Benjamin Kosnik authored
      2011-08-04  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* doc/xml/manual/build_hacking.xml: Use relative fileref for PNG
      	imagedata.
      	* doc/xml/manual/test_policy_data_structures.xml: Same.
      	* doc/xml/manual/policy_data_structures.xml: Same.
      
      	* doc/Makefile.am (stamp-html-docbook-images)
      	(stamp-html-docbook-lwg, stamp-html-docbook-data): New.
      	(xml_extra): Add lwg html file dependencies.
      	(xml_images): Add image html file dependencies.
      	* doc/Makefile.in: Regenerate.
      	(stamp-html): Change to stamp-html-docbook-data.
      	(stamp-html-copy): Remove.
      
      From-SVN: r177418
      a6aff075
    • Mikael Morin's avatar
      Add directory to filenames in the ChangeLog · d2ff573e
      Mikael Morin authored
      From-SVN: r177416
      d2ff573e
    • Mikael Morin's avatar
      dependency_26.f90: Add a module to the cleanup directive. · e863e4de
      Mikael Morin authored
      2011-08-04  Mikael Morin  <mikael.morin@sfr.fr>
      
      	* gfortran.dg/dependency_26.f90: Add a module to the cleanup directive.
      	* gfortran.dg/trim_optimize_2.f90: Add a module cleanup directive.
      	* gfortran.dg/ldist-pr43023.f90: Ditto.
      	* gfortran.dg/namelist_52.f90: Ditto.
      	* gfortran.dg/interface_proc_end.f90: Ditto.
      	* gfortran.dg/vector_subscript_bound_1.f90: Ditto.
      	* gfortran.dg/generic_typebound_operator_1.f90: Ditto.
      
      From-SVN: r177415
      e863e4de
    • Paolo Carlini's avatar
      atomic.cc: Use noexcept. · bdc05efb
      Paolo Carlini authored
      2011-08-04  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* src/atomic.cc: Use noexcept.
      	* include/std/atomic: Likewise.
      	* include/bits/atomic_0.h: Likewise.
      	* include/bits/atomic_2.h: Likewise.
      	* include/bits/atomic_base.h: Likewise.
      
      From-SVN: r177413
      bdc05efb
    • Kai Tietz's avatar
      i386.c (setup_incoming_varargs_ms_64): Set ix86_varargs_gpr_size and ix86_varargs_fpr_size to zero. · c1ea7f07
      Kai Tietz authored
      2011-08-04  Kai Tietz  <ktietz@redhat.com>
      
              * config/i386/i386.c (setup_incoming_varargs_ms_64): Set
              ix86_varargs_gpr_size and ix86_varargs_fpr_size to zero.
      
      From-SVN: r177412
      c1ea7f07
    • Ira Rosen's avatar
      tree-vectorizer.h (struct _stmt_vec_info): Add new field for pattern def... · 1107f3ae
      Ira Rosen authored
      tree-vectorizer.h (struct _stmt_vec_info): Add new field for pattern def statement, and its access macro.
      
      
              * tree-vectorizer.h (struct _stmt_vec_info): Add new field for
              pattern def statement, and its access macro.
              (NUM_PATTERNS): Set to 5.
              * tree-vect-loop.c (vect_determine_vectorization_factor): Handle
              pattern def statement.
              (vect_transform_loop): Likewise.
              * tree-vect-patterns.c (vect_vect_recog_func_ptrs): Add new
              function vect_recog_over_widening_pattern ().
              (vect_operation_fits_smaller_type): New function.
              (vect_recog_over_widening_pattern, vect_mark_pattern_stmts):
              Likewise.
              (vect_pattern_recog_1): Move the code that marks pattern
              statements to vect_mark_pattern_stmts (), and call it.  Update
              documentation.
              * tree-vect-stmts.c (vect_supportable_shift): New function.
              (vect_analyze_stmt): Handle pattern def statement.
              (new_stmt_vec_info): Initialize pattern def statement.
      
      From-SVN: r177409
      1107f3ae
    • Richard Henderson's avatar
      re PR bootstrap/49964 (Bootstrap failed with AVX turned on) · 6394830f
      Richard Henderson authored
      PR target/49964
              * config/i386/i386.c (ix86_expand_call): Don't create nested
              PARALLELs for TARGET_VZEROUPPER.
              (ix86_split_call_vzeroupper): Fix extraction of the original call.
              * config/i386/i386.md (*call_rex64_ms_sysv_vzeroupper): Don't
              recognize nested PARALLELs.
              (*call_pop_vzeroupper, *sibcall_pop_vzeroupper,
              *call_value_rex64_ms_sysv_vzeroupper, *call_value_pop_vzeroupper,
              *sibcall_value_pop_vzeroupper): Likewise.
      
      From-SVN: r177408
      6394830f
    • Arnaud Charlet's avatar
      [multiple changes] · 276e7ed0
      Arnaud Charlet authored
      2011-08-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_util.ads, sem_unit.adb (Type_Without_Stream_Operation): determine
      	whether a type lacks user-defined Read or Write operations, or has a
      	component that lacks them.
      	* sem_attr.adb (Check_Stream_Attribute): if restriction
      	No_Default_Stream_Attributes is active, verify that all subcomponent
      	types of the target have user-defined stream operations, and report
      	error otherwise.
      	* exp_ch3.adb (Stream_Operqtion_OK): use Type_Without_Stream_Operation.
      	* exp_strm.adb: Build_Elementary_Input_Call,
      	Build_Elementary_Write_Call): remove checks for restriction
      	No_Default_Stream_Attributes, now checked in semantics.
      
      2011-08-04  Vincent Celier  <celier@adacore.com>
      
      	* prj-conf.ads, prj-conf.adb (Do_Autoconf): If there is no --RTS
      	switches on the command line, look for all valid --RTS switches in the
      	Builder switches and for each language use the first runtime name found
      	to invoke gprconfig.
      	(Get_Or_Create_Configuration_File): Warn if --RTS is specified on the
      	command line and there is no auto-configuration.
      	(Runtime_Name_Set_For): New function.
      
      2011-08-04  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch7.adb (Build_Object_Declarations): Do not generate the
      	elaborate initialization expression for variable Abort when processing
      	a package body or a declaration.
      	(Create_Finalizer): Propagate the package context when creating the
      	exception-related variables.
      	* exp_ch7.ads (Build_Object_Declarations): New formal parameter
      	For_Package along with usage comment.
      
      From-SVN: r177407
      276e7ed0
    • Arnaud Charlet's avatar
      Makefile.in: Clean up targets. · 19172ae9
      Arnaud Charlet authored
      	* gcc-interface/Makefile.in: Clean up targets.
      	Enable new package for atomic counters and copy-on-write implementation
      	of unbounded strings on x86 platforms.
      	* gcc-interface/Make-lang.in: Update dependencies.
      
      From-SVN: r177405
      19172ae9
    • Richard Henderson's avatar
      re PR middle-end/49968 (ICE in calls.c:3141 / assert after emit_stack_restore) · faf7a23d
      Richard Henderson authored
      PR middle-end/49968
              * calls.c (expand_call): Use fixup_args_size_notes for
              emit_stack_restore.
              * expr.c (fixup_args_size_notes): Allow STACK_POINTER_REGNUM sets
              in non-standard modes.
      
      From-SVN: r177404
      faf7a23d
    • Arnaud Charlet's avatar
      [multiple changes] · 0319cacc
      Arnaud Charlet authored
      2011-08-04  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch7.adb: Minor reformatting.
      
      2011-08-04  Robert Dewar  <dewar@adacore.com>
      
      	* exp_strm.adb: Minor reformatting.
      
      2011-08-04  Vadim Godunko  <godunko@adacore.com>
      
      	* s-atocou.adb: Replace by dummy version and use on targets where atomic
      	operations are not supported.
      	* s-atocou-builtin.adb: Renamed from s-atocou.adb.
      	* s-atocou-x86.adb: New file.
      	* Makefile.rtl: Add s-atocou.o file
      
      2011-08-04  Arnaud Charlet  <charlet@adacore.com>
      
      	* make.adb (Compile): Move setting of CodePeer_Mode to ...
      	(Compilation_Phase): ... here.
      	(Scan_Make_Arg): Now bind and link by default in CodePeer mode.
      
      2011-08-04  Thomas Quinot  <quinot@adacore.com>
      
      	* Make-generated.in: Fix minor typo in comment.
      
      From-SVN: r177403
      0319cacc
    • Arnaud Charlet's avatar
      [multiple changes] · 26e7e1a0
      Arnaud Charlet authored
      2011-08-04  Thomas Quinot  <quinot@adacore.com>
      
      	* gnatls.adb: Use Prj.Env.Initialize_Default_Project_Path to retrieve
      	the project path.
      
      2011-08-04  Robert Dewar  <dewar@adacore.com>
      
      	* a-coinho.adb: Minor reformatting.
      
      2011-08-04  Robert Dewar  <dewar@adacore.com>
      
      	* a-coinho.ads: Minor reformatting.
      
      2011-08-04  Vadim Godunko  <godunko@adacore.com>
      
      	* s-atocou.ads, s-atocou.adb: New files.
      	* a-strunb-shared.ads, a-strunb-shared.adb, a-stwiun-shared.ads,
      	a-stwiun-shared.adb, a-stzunb-shared.ads, a-stzunb-shared.adb: Remove
      	direct use of GCC's atomic builtins and replace them by use of new
      	atomic counter package.
      
      2011-08-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_strm.adb: better error message for No_Default_Stream_Attributes.
      
      2011-08-04  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* a-tags.adb (Unregister_Tag): Replace the complex address arithmetic
      	with a call to Get_External_Tag.
      	* exp_ch7.adb (Build_Cleanup_Statements): Update the comment on
      	subprogram usage. Remove the guard against package declarations and
      	bodies since Build_Cleanup_Statements is no longer invoked in that
      	context.
      	(Build_Components): Initialize Tagged_Type_Stmts when the context
      	contains at least one library-level tagged type.
      	(Build_Finalizer): New local variables Has_Tagged_Types and
      	Tagged_Type_Stmts along with associated comments on usage. Update the
      	logic to include tagged type processing.
      	(Create_Finalizer): Insert all library-level tagged type unregistration
      	code before the jump block circuitry.
      	(Expand_N_Package_Body): Remove the call to Build_Cleanup_Statements.
      	(Expand_N_Package_Declaration): Remove the call to
      	Build_Cleanup_Statements.
      	(Process_Tagged_Type_Declaration): New routine. Generate a call to
      	unregister the external tag of a tagged type.
      	(Processing_Actions): Reimplemented to handle tagged types.
      	(Process_Declarations): Detect the declaration of a library-level
      	tagged type and carry out the appropriate actions.
      	(Unregister_Tagged_Types): Removed. The machinery has been directly
      	merged with Build_Finalizer.
      
      From-SVN: r177401
      26e7e1a0
    • Arnaud Charlet's avatar
      [multiple changes] · 7483c888
      Arnaud Charlet authored
      2011-08-04  Robert Dewar  <dewar@adacore.com>
      
      	* bindgen.ads, gnatlink.adb, sem_ch4.adb, gnatbind.adb, put_alfa.adb,
      	gnatls.adb, exp_ch3.adb: Minor reformatting.
      
      2011-08-04  Marc Sango  <sango@adacore.com>
      
      	* sem_attr.adb (Analyze_Attribute): Replace the message
      	"invisible attribute of}" of the spark restriction violation in
      	attribute reference by the simple message "invisible attribute of type".
      	Indeed, the node value Error_Msg_Node_1 used is in conflit with the
      	two insertion characters: '&' and '}'.
      
      2011-08-04  Vadim Godunko  <godunko@adacore.com>
      
      	* impunit.adb (Non_Imp_File_Names_12): Add "a-coinho".
      	* a-coinho.ads, a-coinho.adb: New file.
      	* Makefile.rtl: Add Ada.Containers.Indefinite_Holders.
      
      From-SVN: r177400
      7483c888
    • Arnaud Charlet's avatar
      [multiple changes] · 5207696c
      Arnaud Charlet authored
      2011-08-04  Nicolas Roche  <roche@adacore.com>
      
      	* alfa_test.adb: Not all ali files are containing alfa information even
      	if compiled with -gnatd.F. So suppress warning about missing ALFA
      	information.
      
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* lib-xref-alfa.adb (Add_ALFA_Scope): use non-empty unique name for
      	scope.
      	* put_alfa.adb: Check that scope name is not empty.
      
      2011-08-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch3.adb (Stream_Operation_Ok): new predicate
      	Needs_Elementary_Stream_Operation, to determine whether user-defined
      	Read and Write attributes are available for the elementary components
      	of the given type. If only the predefined attributes are available,
      	then when restriction No_Default_Stream_Attributes is active the
      	predefined stream attributes for the composite type cannot be created.
      
      2011-08-04  Robert Dewar  <dewar@adacore.com>
      
      	* bindgen.adb: Fix obsolete comments and names from Ada/C days.
      	Put routines in alpha order
      
      From-SVN: r177399
      5207696c
    • Jose Ruiz's avatar
      Makefile.in: Remove xenomai specific versions of system. · 2bd2d858
      Jose Ruiz authored
      2011-08-04  Jose Ruiz  <ruiz@adacore.com>        
      
      	* gcc-interface/Makefile.in: Remove xenomai specific versions of system.
      	* gcc-interface/Make-lang.in: Update dependencies.
      
      From-SVN: r177398
      2bd2d858
    • Arnaud Charlet's avatar
      lang.opt: Add AdaWhy language, simimlar to Ada. · 8fae6016
      Arnaud Charlet authored
      	* gcc-interface/lang.opt: Add AdaWhy language, simimlar to Ada.
      	* gcc-interface/lang-specs.h: Add handling of AdaWhy specs (calls       
      	gnat1why).
      
      From-SVN: r177396
      8fae6016
    • Arnaud Charlet's avatar
      [multiple changes] · a54d0eb4
      Arnaud Charlet authored
      2011-08-04  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch3.adb, make.adb, a-cohata.ads, sem_prag.adb, makeutl.adb,
      	lib-xref-alfa.adb: Minor reformatting.
      
      2011-08-04  Marc Sango  <sango@adacore.com>
      
      	* sem_ch12.adb (Analyze_Generic_Package_Declaration,
      	Analyze_Generic_Subprogram_Declaration, Analyze_Package_Instantiation,
      	Analyze_Subprogram_Instantiation): Check absence of generic in SPARK
      	mode.
      
      2011-08-04  Tristan Gingold  <gingold@adacore.com>
      
      	* bindgen.adb (Gen_Adainit_C): Remove.
      	(Gen_Adafinal_C): Ditto.
      	(Gen_Elab_Externals_C): Ditto.
      	(Gen_Elab_Calls_C): Ditto.
      	(Gen_Elab_Order_C): Ditto.
      	(Gen_Elab_Defs_C): Ditto.
      	(Gen_Finalize_Library_C): Ditto.
      	(Gen_Finalize_Library_Defs_C): Ditto.
      	(Gen_Main_C): Ditto.
      	(Gen_Output_File_C): Ditto.
      	(Gen_Restrictions_C): Ditto.
      	(Gen_Versions_C): Ditto.
      	(Write_Info_Ada_C): Ditto.
      	(Gen_Object_Files_Options): Call WBI instead of Write_Info_Ada_C
      	(Gen_Output_File): Do not force Ada_Bind_File anymore.
      	Always call Gen_Output_File_Ada.
      	* gnatlink.adb (Begin_Info): Now a constant.
      	(End_Info): Ditto.
      	(Ada_Bind_File): Remove
      	(Process_Args): Do not handle -A/-C.  Remove not Ada_Bind_File cases.
      	* switch-b.adb (Scan_Binder_Switches): Do not handle -C.
      	* gnatbind.adb (Gnatbind): Remove not Ada_Bind_File cases.
      	* opt.ads (Ada_Bind_File): Remove.
      
      2011-08-04  Thomas Quinot  <quinot@adacore.com>
      
      	* projects.texi: Document target-specific directory in default project
      	path for gnatmake.
      
      2011-08-04  Thomas Quinot  <quinot@adacore.com>
      
      	* gnatls.adb, prj-env.adb: Add $prefix/share/gpr to default project
      	path in all cases .
      
      From-SVN: r177395
      a54d0eb4
    • Jakub Jelinek's avatar
      gcc.c (self_spec): New variable. · 84f405a1
      Jakub Jelinek authored
      	* gcc.c (self_spec): New variable.
      	(static_specs): Add self_spec.
      	(main): Call do_self_spec on "self_spec" specs after reading
      	user specs files.  Move compare_debug handling right after that.
      
      From-SVN: r177394
      84f405a1
    • Richard Guenther's avatar
      tree-vrp.c (vrp_expr_computes_nonnegative): Remove. · 4d320da4
      Richard Guenther authored
      2011-08-04  Richard Guenther  <rguenther@suse.de>
      
      	* tree-vrp.c (vrp_expr_computes_nonnegative): Remove.
      	(value_range_nonnegative_p): New function.
      	(ssa_name_nonnegative_p): Use it.
      	(value_range_constant_singleton): New function.
      	(op_with_constant_singleton_value_range): Use it.
      	(extract_range_from_binary_expr_1): New function, split out from ...
      	(extract_range_from_binary_expr): ... this.  Remove fallback
      	constant folding done here.
      
      From-SVN: r177393
      4d320da4
    • Richard Guenther's avatar
      re PR middle-end/49806 (FAIL: gcc.dg/tree-ssa/vrp47.c) · 7e29ba60
      Richard Guenther authored
      2011-08-04  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/49806
      	* tree-vrp.c (op_with_boolean_value_range_p): New function.
      	(simplify_truth_ops_using_ranges): Simplify.  Allow inserting
      	a new statement for a final conversion to bool.
      
      From-SVN: r177392
      7e29ba60
    • Arnaud Charlet's avatar
      [multiple changes] · 24558db8
      Arnaud Charlet authored
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* sem_ch3.adb, sem_ch5.adb, sem_util.adb, sem_ch4.adb, sem_ch8.adb,
      	opt.ads, lib-xref.ads: Code clean up.
      
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* gnat_rm.texi: Update description of Test_Case
      	* gnat_ugn.texi: Typo.
      
      2011-08-04  Ed Falis  <falis@adacore.com>
      
      	* adaint.c (__gnat_get_number_of_cpus): fix typo in last checkin.
      
      2011-08-04  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch4.adb (Suitable_Element): Skip field _parent on .NET/JVM when
      	it is of type Root_Controlled. This action eliminates fields Prev and
      	Next from type equality.
      
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* lib-xref-alfa.adb: Correct typo.
      
      2011-08-04  Matthew Heaney  <heaney@adacore.com>
      
      	* a-cohata.ads (Hash_Table_Type): default-initialize the Nodes
      	component.
      
      From-SVN: r177390
      24558db8
    • Arnaud Charlet's avatar
      [multiple changes] · 1f9939b5
      Arnaud Charlet authored
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* sem_prag.adb (Check_Arg_Is_String_Literal): remove useless procedure
      	(Analyze_Pragma): allow static string expression for name of Test_Case,
      	instead of simply string literals.
      	* sem_util.adb (Get_Name_From_Test_Case_Pragma): adapt to static string
      	expressions.
      
      2011-08-04  Vincent Celier  <celier@adacore.com>
      
      	* makeutl.adb (Complete_Mains.Find_File_Add_Extension): Use canonical
      	case suffixes to find truncated main sources.
      
      2011-08-04  Tristan Gingold  <gingold@adacore.com>
      
      	* impunit.adb (Non_Imp_File_Names_95): Add g-tastus.
      	s-stusta.adb (Compute_All_Task): Use Put_Line instead of Put.
      	(Compute_Current_Task): Ditto.
      
      2011-08-04  Tristan Gingold  <gingold@adacore.com>
      
      	* gnat_ugn.texi: Mention GNAT.Task_Stack_Usage.
      
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* lib-xref-alfa.adb (Is_Global_Constant): new function that detects
      	library-level constant.
      	(Add_ALFA_Xrefs): ignore global constants in ALFA xref.
      	* sem_res.adb (Resolve_Actuals): do not add cross-reference to Formal
      	used as selector of parameter association, in ALFA mode.
      
      From-SVN: r177389
      1f9939b5
    • Arnaud Charlet's avatar
      [multiple changes] · 15d8a51d
      Arnaud Charlet authored
      2011-08-04  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch5.adb, exp_ch7.adb, exp_util.adb, bindgen.adb, sem_prag.adb,
      	s-tassta.adb, exp_ch4.adb, exp_disp.adb, s-stausa.adb: Minor
      	reformatting.
      
      2011-08-04  Arnaud Charlet  <charlet@adacore.com>
      
      	* make.adb (Linking_Phase): Set source search path before calling
      	gnatlink in CodePeer mode.
      
      From-SVN: r177388
      15d8a51d
    • Arnaud Charlet's avatar
      [multiple changes] · f46faa08
      Arnaud Charlet authored
      2011-08-04  Javier Miranda  <miranda@adacore.com>
      
      	* exp_ch7.adb (Expand_N_Package_Body, Expand_N_Package_Declaration):
      	Remove code which takes care of building TSDs.
      	* rtsfind.ads (RE_Check_Interface_Conversion): New entity.
      	* exp_ch4.adb (Apply_Accessibility_Check): Add support for generating
      	the accessibility check in VM targets.
      	* exp_disp.adb (Make_VM_TSD): Spec moved to exp_disp.ads
      	(Building_Static_DT): Now returns false for VM targets.
      	(Build_VM_TSDs): Removed.
      	(Expand_Interface_Conversion): Generate missing runtime check for
      	conversions to interface types whose target type is unknown at compile
      	time.
      	(Make_VM_TSD): Add missing code to disable the generation of calls to
      	Check_TSD if the tagged type is not defined at library level, or not
      	has a representation clause specifying its external tag, or -gnatdQ is
      	active.
      	* exp_disp.ads (Build_VM_TSDs): Removed.
      	(Make_VM_TSDs): Spec relocated from exp_disp.adb
      	* sem_disp.adb (Check_Dispatching_Operation): No code required to
      	register primitives in the dispatch tables in VM targets.
      	* exp_ch3.adb (Expand_N_Object_Declaration): Remove wrong expansion of
      	initialization of class-wide interface objects in VM targets.
      	(Expand_Freeze_Record_Type): For VM targets call Make_VM_TSD (instead
      	of Make_DT).
      
      2011-08-04  Jerome Lambourg  <lambourg@adacore.com>
      
      	* gnatlink.adb (Gnatlink): Correct missleading error message displayed
      	when dotnet-ld cannot be found.
      
      2011-08-04  Arnaud Charlet  <charlet@adacore.com>
      
      	* bindgen.adb: Simplify significantly generation of binder body file in
      	CodePeer mode.
      	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Prevent assert failure
      	when compiling binder generated file in CodePeer mode (xxx'Elab_Spec
      	not expanded).
      
      From-SVN: r177387
      f46faa08
    • Arnaud Charlet's avatar
      [multiple changes] · 2ba7e31e
      Arnaud Charlet authored
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* sem_prag.adb, sem.ads: Code cleanup.
      
      2011-08-04  Tristan Gingold  <gingold@adacore.com>
      
      	* s-tassta.adb (Task_Wrapper): Rewrite the dynamic stack usage part.
      	* s-stausa.adb, s-stausa.ads: Major rewrite. Now provides accurate
      	results if possible.
      	* s-stusta.adb (Print): Adjust after changes in s-stausa.
      	* gnat_ugn.texi: Update dynamic stack usage section.
      
      2011-08-04  Steve Baird  <baird@adacore.com>
      
      	* bindgen.adb (Gen_CodePeer_Wrapper): new procedure.
      	Generate (if CodePeer_Mode is set) a "wrapper" subprogram which
      	contains only a call to the user-defined main subprogram.
      	(Gen_Main_Ada) - If CodePeer_Mode is set, then
      	call the "wrapper" subprogram instead of directly
      	calling the user-defined main subprogram.
      
      2011-08-04  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch5.adb (Expand_N_Case_Statement): Check the statements of all
      	alternatives of a case statement for controlled objects. Rename local
      	variable A to Dead_Alt.
      	(Expand_N_If_Statement): Check the then and else statements of an if
      	statement for controlled objects. Check the then statements of all
      	elsif parts of an if statement for controlled objects.
      	(Expand_N_Loop_Statement): Check the statements of a loop for controlled
      	objects.
      	* exp_ch7.adb (Process_Transient_Objects): Rewrite the condition which
      	detects a loop associated with the expansion of an array object.
      	Augment the processing of the loop statements to account for a possible
      	wrap done by Process_Statements_For_Controlled_Objects.
      	* exp_ch9.adb (Expand_N_Asynchronous_Select): Check the triggering
      	statements and abortable part of an asynchronous select for controlled
      	objects.
      	(Expand_N_Conditional_Entry_Call): Check the else statements of a
      	conditional entry call for controlled objects.
      	(Expand_N_Selective_Accept): Check the alternatives of a selective
      	accept for controlled objects.
      	(Expand_N_Timed_Entry_Call): Check the entry call and delay
      	alternatives of a timed entry call for controlled objects.
      	* exp_ch11.adb (Expand_Exception_Handlers): Check the statements of an
      	exception handler for controlled objects.
      	* exp_util.adb (Requires_Cleanup_Actions (List_Id, Boolean, Boolean)):
      	Add formal parameter Nested_Constructs along with its associated
      	comment.
      	(Requires_Cleanup_Actions (Node_Id)): Update all calls to
      	Requires_Cleanup_Actions.
      	(Process_Statements_For_Controlled_Objects): New routine.
      	* exp_util.ads (Process_Statements_For_Controlled_Objects): New
      	routine. Inspect a node which contains a non-handled sequence of
      	statements for controlled objects. If such an object is found, the
      	statements are wrapped in a block.
      
      From-SVN: r177386
      2ba7e31e
    • Arnaud Charlet's avatar
      [multiple changes] · 1bf773bb
      Arnaud Charlet authored
      2011-08-04  Bob Duff  <duff@adacore.com>
      
      	* sem_type.adb (Covers): If T2 is a subtype of a class-wide type, we
      	need to compare with Class_Wide_Type (T2), in order to get at the
      	original class-wide type node.
      	* sem_type.ads (Covers): Improve the comment.
      	* einfo.ads (Class_Wide_Type): Improve the comment.
      	* exp_intr.adb (Expand_Unc_Deallocation): Remove unnecessary setting of
      	the type of the Deref.
      
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* gnat_rm.texi: Document that Test_Case pragma can only appear on
      	separate declarations.
      	* sem_prag.adb (procedure Check_Identifier_Is_One_Of): new procedure to
      	check identifier of pragma argument.
      	(Chain_TC): check that no other test case associated to the same entity
      	share the same name.
      	(Check_Test_Case): disallow test case inside subprogram body
      	(Analyze_Pragma): correct call to check identifier and not argument
      	* sem_util.adb, sem_util.ads (Get_Name_From_Test_Case_Pragma): new
      	function gets name from test case pragma.
      
      From-SVN: r177385
      1bf773bb
    • Yannick Moy's avatar
      gnat_rm.texi: Document new pragma and aspect. · dac3bede
      Yannick Moy authored
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* gnat_rm.texi: Document new pragma and aspect.
      	* aspects.adb, aspects.ads (Aspect_Id): new value Aspect_Test_Case
      	(No_Duplicates_Allowed): new constant array defining whether duplicates
      	aspects of each kind can appear on the same declaration.
      	* einfo.adb, einfo.ads (Spec_PPC_List): replace field with Contract
      	field, which points to a node holding the previous Spec_PPC_List.
      	* exp_ch9.adb, sem_ch6.adb, sem_prag.adb: Reach to Spec_PPC_List
      	through the indirection with Contract.
      	* exp_util.adb (Insert_Actions): raise Program_Error on N_Contract node
      	* par-prag.adb (Prag): do nothing on Test_Case pragma
      	* sem.adb (Analyze): abort on N_Contract, on which Analyze should not
      	be called directly.
      	* sem_attr.adb (Analyze_Attribute): allow attribute 'Result in
      	component Ensures of Test_Case.
      	* sem_ch12.adb, sem_ch6.adb, sem_ch9.adb
      	(Analyze_Generic_Subprogram_Declaration,
      	Analyze_Subprogram_Instantiation,
      	Analyze_Abstract_Subprogram_Declaration,
      	Analyze_Subprogram_Body_Helper,
      	Analyze_Subprogram_Specification, Analyze_Entry_Declaration):
      	insert contract in subprogram node at point of definition
      	* sem_ch13.adb
      	(Aspect_Loop): do not raise error on duplicate Test_Case aspect
      	(Analyze_Aspect_Specifications): analyze Test_Case aspect and create
      	corresponding pragma
      	(Check_Aspect_At_Freeze_Point): raise Program_Error on Test_Case aspect
      	* sem_ch3.adb (Analyze_Declarations): insert analysis of test-cases,
      	similar to the analysis of pre/post
      	(Derive_Subprogram): insert contract in subprogram node at point of
      	derivation.
      	* sem_prag.adb, sem_prag.ads
      	(Check_Arg_Is_String_Literal, Check_Identifier):
      	new checking procedures to be called in treatment of pragmas
      	(Check_Test_Case): new procedure to check that a Test_Case aspect or
      	pragma is well-formed. This does not check currently that 'Result is
      	used only in the Ensures component of a Test_Case.
      	(Analyze_Pragma): add case for Test_Case
      	(Analyze_TC_In_Decl_Part): pre-analyze the Requires and Ensures
      	components of a Test_Case.
      	(Preanalyze_TC_Args): new procedure to preanalyze the boolean
      	expressions in the 3rd (and 4th if present) arguments of a Test_Case
      	pragma, treated as spec expressions.
      	(Sig_Flags): add value -1 for Test_Case.
      	* sem_util.adb, sem_util.ads (Get_Ensures_From_Test_Case_Pragma,
      	Get_Requires_From_Test_Case_Pragma): getters for both expression
      	components of a Test_Case.
      	* sinfo.adb, sinfo.ads (N_Contract): new kind of node used as
      	indirection between an entry or [generic] subprogram entity and its
      	pre/post + test-cases.
      	(Spec_PPC_List, Spec_TC_List, Set_Spec_PPC_List, Set_Spec_TC_List):
      	get/set for fields of an N_Contract node.
      	* snames.ads-tmpl (Name_Test_Case, Name_Ensures, Name_Mode,
      	Name_Normal, Name_Requires, Name_Robustness, Pragma_Test_Case): new
      	names and pragma for Test_Case.
      	* sprint.adb (Sprint_Node): raise Program_Error on N_Contract node
      
      From-SVN: r177384
      dac3bede
    • Arnaud Charlet's avatar
      [multiple changes] · 6a2e5d0f
      Arnaud Charlet authored
      2011-08-04  Vincent Celier  <celier@adacore.com>
      
      	* gnat_ugn.texi: Improve documentation of gnatmake switch
      	--source-info-file=.
      
      2011-08-04  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch7.adb (Make_Final_Call): Add local variable Atyp (assertion
      	type). Initialize Atyp to the appropriate type which is later checked
      	for completion. Rewrite the assertion associated with private type
      	completion.
      
      2011-08-04  Ed Falis  <falis@adacore.com>
      
      	* adaint.c: Add call to vxCpuConfiguredGet for VxWorks SMP to
      	initialize the number of CPUs.
      
      2011-08-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_type.adb (Disambiguate): New subsidiary routine
      	In_Same_Declaration_List, to implement AI05-0020: a user-defined
      	equality on an anonymous access type whose designated type is private
      	does not lead to an ambiguity with the universal access equality
      	operator in the body or child units of the defining package. The same
      	is true for a multiplication operator on a private type completed with
      	a fixed-point-type.
      
      2011-08-04  Javier Miranda  <miranda@adacore.com>
      
      	* opt.ads (Init_Or_Norm_Scalars_Config): Removed.
      	(Normalize_Scalars_Config): Removed.
      	* opt.adb
      	(Register_Opt_Config_Switches): Remove registering config values of
      	Init_Or_Norm_Scalars_Config and Normalize_Scalars_Config.
      	(Restore_Opt_Config_Switches): Remove code which restores the values of
      	Init_Or_Norm_Scalars and Normalize_Scalars. Recalculate value of
      	Init_Or_Norm_Scalars.
      	(Save_Opt_Config_Switches): Remove code which saves values of
      	Init_Or_Norm_Scalars and Normalize_Scalars.
      	(Set_Opt_Config_Switches): Remove code which restores config values of
      	Init_Or_Norm_Scalars and Normalize_Scalars. Recalculate value of
      	Init_Or_Norm_Scalars.
      
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* frontend.adb (Frontend): remove previous patch to avoid full
      	qualification in ALFA mode.
      	* lib-xref-alfa.adb (Add_ALFA_Xrefs): use unique name for variables.
      	* sem_util.adb, sem_util.ads (Unique_Name): new function to define a
      	unique name for an entity, which could be used to identify the entity
      	across compilation units.
      
      2011-08-04  Thomas Quinot  <quinot@adacore.com>
      
      	* prj-env.adb
      	(Initialize_Default_Project_Path): Add target specific directory
      	($prefix/$target/lib/gnat) in front of project path in all cases
      	(making gnatmake's behaviour consistent with gprbuild).
      	* gnatcmd.adb, make.adb, prj-makr.adb, clean.adb:
      	Pass target name from Sdefault to project subsystem.
      	* gnatls.adb: Show new target specific default project directory.
      
      2011-08-04  Johannes Kanig  <kanig@adacore.com>
      
      	* cstand.adb: Add Information to Identifier in Standard
      	(Identifer_For): Set Entity to the corresponding entity
      
      From-SVN: r177383
      6a2e5d0f
    • Arnaud Charlet's avatar
      [multiple changes] · 483361a6
      Arnaud Charlet authored
      2011-08-04  Sergey Rybin  <rybin@adacore.com>
      
      	* gnat_ugn.texi: Update doc on gnatcheck.
      
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* lib-xref-alfa.adb (Add_ALFA_Xrefs): correct definition of ranges of
      	xrefs in a scope.
      
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* exp_prag.adb (Expand_Pragma_Check): in ALFA mode, return without
      	performing expansion.
      	* sem_ch6.adb (Analyze_Subprogram_Body_Helper,
      	Analyze_Generic_Subprogram_Body): protect call to Process_PCCs so that
      	it is not called in ALFA mode.
      
      From-SVN: r177382
      483361a6
    • Arnaud Charlet's avatar
      [multiple changes] · ef5569c6
      Arnaud Charlet authored
      2011-08-04  Emmanuel Briot  <briot@adacore.com>
      
      	* make.adb, osint.adb, osint.ads (Reset_Command_Line_Files): not used
      	after all, so removed.
      
      2011-08-04  Sergey Rybin  <rybin@adacore.com>
      
      	* vms_data.ads: Add missing VMS qualifiers.
      
      From-SVN: r177381
      ef5569c6
    • Emmanuel Briot's avatar
      make.adb, [...] (Check_Mains): rebuild the list of files on the command line... · 1ab4a286
      Emmanuel Briot authored
      make.adb, [...] (Check_Mains): rebuild the list of files on the command line after processing it through...
      
      2011-08-04  Emmanuel Briot  <briot@adacore.com>
      
      	* make.adb, makeutl.adb, osint.adb, osint.ads (Check_Mains): rebuild
      	the list of files on the command line after processing it through
      	Complete_Mains.
      
      From-SVN: r177380
      1ab4a286
    • Arnaud Charlet's avatar
      [multiple changes] · 7ae0d98c
      Arnaud Charlet authored
      2011-08-04  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch7.adb (Build_Raise_Statement): Remove the specialized
      	processing for .NET/JVM. These targets can now benefit from
      	Raise_From_Controlled_Operation and they share the same processing with
      	standard targets.
      	(Establish_Transient_Scope): Remove the restriction for .NET/JVM.
      	These targets need transient scopes in order to properly finalize short
      	lived controlled objects.
      	(Make_Handler_For_Ctrl_Operation): Remove the specialized processing for
      	 NET/JVM. These targets can now benefit from
      	Raise_From_Controlled_Operation and they share the same processing with
      	standard targets.
      
      2011-08-04  Geert Bosch  <bosch@adacore.com>
      
      	* tracebak.c (STOP_FRAME): Stop at any next pointer outside the stack
      
      2011-08-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_aggr.adb (Has_Visible_Private_Ancestor): subsidiary routine to
      	Expand_Record_Aggregate, to determine whether aggregate must be
      	expanded into assignments. This is the case if the ancestor part is
      	private, regarless of the setting of the flag Has_Private_Ancestor.
      
      2011-08-04  Ed Falis  <falis@adacore.com>
      
      	* vxaddr2line.adb: Add support for e500v2 and for Linux hosts
      
      2011-08-04  Bob Duff  <duff@adacore.com>
      
      	* sinfo.ads: Fix comment.
      
      2011-08-04  Steve Baird  <baird@adacore.com>
      
      	* bindgen.adb (Get_Ada_Main_Name): If CodePeer_Mode is set, then
      	choose a package name in much the same way as is
      	done for JGNAT when VM_Target /= No_VM, except that
      	a slightly more distinctive prefix string is used.
      
      2011-08-04  Emmanuel Briot  <briot@adacore.com>
      
      	* makeutl.adb (Complete_Mains): no longer accept unit names on the
      	gnatmake command line.
      	This behavior was never documented (and was supported only because of
      	an early bug in the code). This case might lead to ambiguous cases
      	(between unit names and truncated base names without suffixes).
      
      From-SVN: r177379
      7ae0d98c
    • Arnaud Charlet's avatar
      [multiple changes] · 87729e5a
      Arnaud Charlet authored
      2011-08-04  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* a-tags.ads, a-tags.adb (Unregister_Tag): New routine.
      	Remove the external tag of a tagged type from the internal hash table.
      	* exp_ch7.adb (Build_Cleanup_Statements): Update the comment on the
      	expanded usage of the routine. Strenghten the check for Is_Master. Add
      	processing for tagged types.
      	(Build_Finalizer): Create all the necessary lists used in finalizer
      	creation when the processed context is a package that may contain
      	tagged types.
      	(Expand_Cleanup_Actions): Rename the call to Has_Controlled_Objects to
      	Requires_Cleanup_Actions.
      	(Expand_N_Package_Body): Package bodies may need clean up code
      	depending on whether they contain tagged types.
      	(Expand_N_Package_Declaration): Package declarations may need clean up
      	code depending on whether they contain tagged types.
      	(Unregister_Tagged_Types): New routine. Search through a list of
      	declarations or statements, looking for non-abstract Ada tagged types.
      	For each such type, generate code to unregister the external tag.
      	* exp_util.adb (Has_Controlled_Objects (Node_Id)): Renamed to
      	Requires_Cleanup_Actions.
      	(Requires_Cleanup_Actions (List_Id, Boolean)): New routine. Search
      	through a list of declarations or statements looking for non-abstract
      	Ada tagged types or controlled objects.
      	* exp_util.ads (Has_Controlled_Objects (Node_Id)): Renamed to
      	Requires_Cleanup_Actions.
      	(Has_Controlled_Objects (List_Id, Boolean)): Removed.
      	* rtsfind.ads: Add entry RE_Unregister_Tag to tables RE_Id and
      	RE_Unit_Table.
      
      2011-08-04  Vincent Celier  <celier@adacore.com>
      
      	* prj-env.adb (For_All_Source_Dirs.For_Project): Check if project Prj
      	has Ada sources, not project Project, because if the root project
      	Project has no sources of its own, all projects will be deemed without
      	sources.
      
      2011-08-04  Gary Dismukes  <dismukes@adacore.com>
      
      	* bindgen.adb (Gen_Adainit_Ada): Move the generation of the declaration
      	of the No_Param_Proc acc-to-subp type used for initialization of
      	__gnat_finalize_library_objects so that it's declared at library level
      	rather than nested inside of the adainit routine.
      
      2011-08-04  Javier Miranda  <miranda@adacore.com>
      
      	* exp_disp.adb (Make_DT): Generate code to check the external tag ONLY
      	if the tagged type has a representation clause which specifies its
      	external tag.
      
      2011-08-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* einfo.ads, einfo.adb (Has_Private_Ancestor): now a flag on types.
      	Remove previous procedure with that name.
      	* sem_ch3.adb (Build_Derived_Record_Type): set Has_Private_Ancestor
      	when appropriate.
      	* sem_aggr.adb (Resolve_Extension_Aggregate): if the ancestor part is a
      	subtype mark, the ancestor cannot have unknown discriminants.
      	(Resolve_Record_Aggregate): if the type has invisible components
      	because of a private ancestor, the aggregate is illegal.
      
      2011-08-04  Vincent Celier  <celier@adacore.com>
      
      	* switch-m.adb (Normalize_Compiler_Switches): Recognize and take into
      	account switches -gnat2005, -gnat12 and -gnat2012.
      
      2011-08-04  Bob Duff  <duff@adacore.com>
      
      	* s-tasdeb.ads: Minor comment fix.
      
      2011-08-04  Arnaud Charlet  <charlet@adacore.com>
      
      	* gnatlink.adb (Gnatlink): Pass -gnat83/95/05/12 switch to gcc in
      	CodePeer mode.
      	* switch.ads, switch.adb (Is_Language_Switch): New function.
      
      2011-08-04  Vincent Celier  <celier@adacore.com>
      
      	* switch-c.adb: Minor comment addition.
      
      2011-08-04  Vincent Celier  <celier@adacore.com>
      
      	* vms_conv.adb (Process_Argument): Fail graciously when qualifier
      	ending with '=' is followed by a space (missing file name).
      
      2011-08-04  Pascal Obry  <obry@adacore.com>
      
      	* g-regist.ads: Fix size of HKEY on x86_64-windows.
      
      2011-08-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb (Analyze_Associations): New routine
      	Check_Overloaded_Formal_Subprogram to reject a formal package when
      	there is a named association or a box initialisation for an overloaded
      	formal subprogram of the corresponding generic.
      
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* alfa.ads (ALFA_Xref_Record): add component for type of entity
      	* get_alfa.adb, put_alfa.adb: Read and write new component of
      	cross-reference.
      	* lib-xref-alfa.adb (Collect_ALFA): generate new component.
      
      From-SVN: r177378
      87729e5a
    • Arnaud Charlet's avatar
      [multiple changes] · 88f47280
      Arnaud Charlet authored
      2011-08-04  Pascal Obry  <obry@adacore.com>
      
      	* urealp.adb: Minor reformatting.
      
      2011-08-04  Tristan Gingold  <gingold@adacore.com>
      
      	* exp_ch7.adb (build_finalizer.process_declarations.processing_actions):
      	Handle the case when Cleanup_Protected_Object returns Empty.
      
      2011-08-04  Yannick Moy  <moy@adacore.com>
      
      	* frontend.adb (Frontend): only qualify names in non-ALFA mode
      
      2011-08-04  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch4.adb (Try_Class_Wide_Operation): if the context is a procedure
      	call, ignore functions.
      
      From-SVN: r177377
      88f47280
    • Geert Bosch's avatar
      urealp.adb (Equivalent_Decimal_Exponent): Avoid the use of floating point. · 05c53a69
      Geert Bosch authored
      2011-08-04  Geert Bosch  <bosch@adacore.com>
      
      	* urealp.adb (Equivalent_Decimal_Exponent): Avoid the use of floating
      	point.
      
      From-SVN: r177376
      05c53a69
Loading