1. 12 Oct, 2010 2 commits
  2. 11 Oct, 2010 38 commits
    • linux-atomic.c (__sync_val_compare_and_swap_4): Return actual_oldval. · 5dbae367
      	* config/pa/linux-atomic.c (__sync_val_compare_and_swap_4): Return
      	actual_oldval.  Use __builtin_expect.
      	(SUBWORD_VAL_CAS): Likewise.
      
      From-SVN: r165339
      John David Anglin committed
    • [multiple changes] · a0a2a399
      2010-10-11  Jonathan Wakely  <jwakely.gcc@gmail.com>
      
      	* testsuite/23_containers/bitset/cons/2.cc: Tweak.
      
      2010-10-11  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* include/std/bitset (bitset<>::bitset(const _CharT*,
      	typename std::basic_string<>::size_type, _CharT, _CharT)):
      	Implement new proposed resolution for DR 1325.
      	* include/debug/bitset: Likewise.
      	* include/profile/bitset: Likewise.
      	* testsuite/23_containers/bitset/cons/dr1325-1.cc: New.
      	* testsuite/23_containers/bitset/cons/dr1325-2.cc: Likewise.
      
      From-SVN: r165338
      Paolo Carlini committed
    • recog.c (nonmemory_operand): Call immediate_operand for CONSTANT_P operands. · 2c8865f1
      	* recog.c (nonmemory_operand): Call immediate_operand for
      	CONSTANT_P operands.
      
      From-SVN: r165334
      Nathan Froyd committed
    • api.xml: Add link to 4.5 generated docs. · 63835102
      2010-10-11  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* doc/xml/api.xml: Add link to 4.5 generated docs.
      
      From-SVN: r165332
      Benjamin Kosnik committed
    • i386.md (movmem<mode>): Macroize expander from movmem{si,di} using SWI48 mode iterator. · bbc8841b
      	* config/i386/i386.md (movmem<mode>): Macroize expander from
      	movmem{si,di} using SWI48 mode iterator.
      	(*strmovsi_1): Macroize insn pattern from *strmovsi_1 and
      	*strmovsi_rex_1 using P mode iterator.
      	(*strmovhi_1): Ditto from *strmovhi_1 and *strmovhi_rex_1.
      	(*strmovqi_1): Ditto from *strmovqi_1 and *strmovqi_rex_1.
      	(*rep_movsi): Ditto from *rep_movsi and *rep_movsi_rex64.
      	(*rep_movqi): Ditto from *rep_movqi and *rep_movqi_rex64.
      	(setmem<mode>): Macroize expander from setmem{si,di} using
      	SWI48 mode iterator.
      	(*strsetsi_1): Macroize insn pattern from *strsetsi_1 and
      	*strsetsi_rex_1 using P mode iterator.
      	(*strsethi_1): Ditto from *strsethi_1 and *strsethi_rex_1.
      	(*strsetqi_1): Ditto from *strsetqi_1 and *strsetqi_rex_1.
      	(*rep_stossi): Ditto from *rep_stossi and *rep_stossi_rex64.
      	(*rep_stosqi): Ditto from *rep_stosqi and *rep_stosqi_rex64.
      	(*cmpstrnqi_nz_1): Ditto from *cmpstrnqi_nz_1 and *cmpstrnqi_nz_rex_1.
      	(*cmpstrnqi_1): Ditto from *cmpstrnqi_1 and *cmpstrnqi_rex_1.
      	(strlen<mode>): Macroize expander from strlen{si,di} using SWI48x
      	mode iterator.
      	(*strlenqi_1): Macroize insn pattern from *strlenqi_1 and
      	*strlenqi_rex_1 using P mode iterator.
      
      From-SVN: r165331
      Uros Bizjak committed
    • re PR c++/45562 (ICE: SIGSEGV in cp_build_unary_op (typeck.c:5083) with… · 7c663eb0
      re PR c++/45562 (ICE: SIGSEGV in cp_build_unary_op (typeck.c:5083) with -std=gnu++0x -fipa-cp-clone -fcompare-debug)
      
      2010-10-11  Martin Jambor  <mjambor@suse.cz>
      
      	PR c++/45562
      	* cp/cp-tree.h (current_class_ref): Check that cp_function_chain is
      	non-NULL.
      	* cp/call.c (build_cxx_call): Likewise.
      
      From-SVN: r165330
      Martin Jambor committed
    • re PR bootstrap/45445 (ARM bootstrap failure: comparison failures after stage 3) · 579c1bf3
      	PR bootstrap/45445
      	* ira-lives.c (mark_pseudo_reg_live, mark_pseudo_reg_dead): New
      	static functions.
      	(mark_ref_live, mark_ref_dead): Use them.
      	(make_pseudo_conflict): New arg ORIG_DREG.  All callers changed.
      	Save the original reg, and use the new functions.
      	(check_and_make_def_use_conflict): New arg ORIG_DREG.  All callers
      	changed.
      	(check_and_make_def_conflict): Save the original reg.
      
      From-SVN: r165329
      Bernd Schmidt committed
    • dyn_load.c: Fix typo. · 30aeeca4
      	* dyn_load.c: Fix typo.
      	* pthread_support.c (GC_get_thread_stack_base) [DEBUG_THREADS]:
      	Use GC_printf0.
      
      From-SVN: r165328
      Rainer Orth committed
    • re PR middle-end/45699 (Incorrect copy constructor generated with -O) · 3f1f0ae3
      2010-10-11  Martin Jambor  <mjambor@suse.cz>
      
      	PR middle-end/45699
      	* gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Choose among
      	thunks.
      
      	* testsuite/g++.dg/torture/pr45699.C: New test.
      	* testsuite/g++.dg/otr-fold-1.C: Adjusted.
      	* testsuite/g++.dg/otr-fold-1.C: Likewise.
      
      From-SVN: r165327
      Martin Jambor committed
    • In libobjc/: 2010-10-11 Nicola Pero <nicola.pero@meta-innovation.com> · 90a2689f
      In libobjc/:
      2010-10-11  Nicola Pero  <nicola.pero@meta-innovation.com>
      
              * class.c (objc_getClassList): New.
              (objc_getRequiredClass): New.
              (objc_getMetaClass): New.
              (objc_lookupClass): New.
              (objc_getClass): New.
              (__objc_get_unknown_class_handler): New.
              (objc_setGetUnknownClassHandler): New.
              (objc_get_class): Use __objc_get_unknown_class_handler.
              (objc_lookup_class): Call objc_getClass.
              * objc/objc-api.h: Updated comment and copyright notice.
              * objc/runtime.h: Updated comments.
              (objc_getClass): New.
              (objc_lookupClass): New.
              (objc_getMetaClass): New.
              (objc_getRequiredClass): New.
              (objc_getClassList): New.
              (objc_setGetUnknownClassHandler): New.
              (objc_get_unknown_class_handler): New.
              * objc-private/runtime.h: Use __objc_private_runtime_INCLUDE_GNU
              instead of __objc_runtime_INCLUDE_GNU as include guard.
              * objc-private/error.h (_objc_abort): Mark as noreturn.
      
      From-SVN: r165326
      Nicola Pero committed
    • New contrib/test_recheck script to rerun unsuccessful tests. · 6c009867
      contrib/:
      	* test_recheck: New script.
      
      From-SVN: r165324
      Ralf Wildenhues committed
    • Fix quoting for RUNTESTFLAGS in gcc/. · 9dd57a6e
      gcc/:
      	* Makefile.in ($(lang_checks_parallel))
      	($(lang_checks_parallelized)): Use single quotes for
      	$(RUNTESTFLAGS), to allow passing quoted content.
      
      From-SVN: r165323
      Ralf Wildenhues committed
    • Fix PR bootstrap/35855: awk character classes. · e4590d63
      gcc/:
      	PR bootstrap/35855
      	* opt-functions.awk (BEGIN): New section.
      	(lower, upper, digit, alnum): New variables.
      	(static_var, opt_sanitized_name): Use alnum instead of character
      	classes, for non-C locale.
      	* optc-gen.awk: Likewise.
      	* opth-gen.awk: Likewise.
      
      From-SVN: r165322
      Ralf Wildenhues committed
    • target.def (preferred_reload_class): New hook. · fba42e24
      	* target.def (preferred_reload_class): New hook.
      	* doc/tm.texi.in (TARGET_PREFERRED_RELOAD_CLASS): Document.
      	* doc/tm.texi: Regenerate.
      	* targhooks.c (default_preferred_reload_class): New function.
      	* targhooks.h (default_preferred_reload_class): Declare.
      	* reload.c (find_dummy_reload): Change preferred_class variable type
      	from enum reg_class to reg_class_t. Use TARGET_PREFERRED_RELOAD_CLASS
      	target hook.
      	(find_reloads): Change goal_alternative array type from int to
      	reg_class_t. Use TARGET_PREFERRED_RELOAD_CLASS target hook.
      	(push_reload, find_reloads_address_part): Use
      	TARGET_PREFERRED_RELOAD_CLASS target hook.
      	* reload1.c (emit_input_reload_insns): Ditto.
      	* ira-costs.c (copy_cost): Use TARGET_PREFERRED_RELOAD_CLASS target
      	hook. Change rclass argument and secondary_class variable types from
      	'enum reg_class' to reg_class_t.
      
      	* config/i386/i386.h (PREFERRED_RELOAD_CLASS): Remove.
      	* config/i386/i386-protos (ix86_preferred_reload_class): Remove.
      	* config/i386/i386.c (ix86_preferred_reload_class): Make static.
      	Change regclass argument and result types from enum reg_class to
      	reg_class_t.
      	(TARGET_PREFERRED_RELOAD_CLASS): Define.
      
      From-SVN: r165321
      Anatoly Sokolov committed
    • simplify-rtx.c (simplify_unary_operation_1): Use unsigned arithmetics in masking operations. · 43c36287
      	* simplify-rtx.c (simplify_unary_operation_1): Use unsigned arithmetics
      	in masking operations.
      	(simplify_const_unary_operation): Likewise.
      	(simplify_binary_operation_1): Likewise.
      	(simplify_const_binary_operation): Likewise.
      	(simplify_const_relational_operation): Likewise.
      	(simplify_ternary_operation): Likewise.
      	(simplify_immed_subreg): Likewise.
      
      From-SVN: r165320
      Eric Botcazou committed
    • re PR middle-end/45862 (SUPPORTS_WEAK is documented as a C expression, used as a… · 74b90fe2
      re PR middle-end/45862 (SUPPORTS_WEAK is documented as a C expression, used as a compile time constant)
      
      	PR middle-end/45862
      	* doc/tm.texi.in (SUPPORTS_WEAK): Update.
      	(TARGET_SUPPORTS_WEAK): New.
      	* doc/tm.texi: Regenerate.
      	* defaults.h (SUPPORTS_WEAK): Update comment.
      	(TARGET_SUPPORTS_WEAK): New.
      	* dwarf2asm.c (USE_LINKONCE_INDIRECT): Update define.
      	* varasm.c (assemble_external): Use TARGET_SUPPORTS_WEAK instead of
      	SUPPORTS_WEAK.
      	(merge_weak, declare_weak, do_assemble_alias, supports_one_only,
      	make_decl_one_only): Likewise.
      	* config/pa/som.h (SUPPORTS_WEAK): Rename defines to
      	TARGET_SUPPORTS_WEAK.
      	(SUPPORTS_ONE_ONLY, MAKE_DECL_ONE_ONLY): Use TARGET_SUPPORTS_WEAK
      	instead of SUPPORTS_WEAK.
      
      From-SVN: r165319
      John David Anglin committed
    • * config/sparc/gmon-sol2.c: Don't include coretypes.h, tm.h. · 2861cfa1
      From-SVN: r165318
      Rainer Orth committed
    • decl.c (java_init_decl_processing): Use build_function_type_list instead of build_function_type. · 9dc1704f
      	* decl.c (java_init_decl_processing): Use build_function_type_list
      	instead of build_function_type.
      	* jcf-parse.c (java_emit_static_constructor): Likewise.
      	* builtins.c (initialize_builtins): Likewise.
      
      From-SVN: r165317
      Nathan Froyd committed
    • [multiple changes] · 1928f450
      2010-10-11  Robert Dewar  <dewar@adacore.com>
      
      	* debug.adb: Remove d.A flag to delay address clause (not needed any
      	more). Add d.A flag to enable tree read/write of aspect spec hash table
      	* sem_ch13.adb (Analyze_Aspect_Specifications): Properly delay address
      	clause.
      	(Rep_Item_Too_Late): No need for special processing for delayed rep
      	items (and it caused difficulties in the address case).
      	* tree_gen.adb: Only write aspect spec hash table if -gnatd.A is set
      	* tree_in.adb: Only write aspect spec hash table if -gnatd.A is set
      
      2010-10-11  Pat Rogers  <rogers@adacore.com>
      
      	* gnat_ugn.texi: Minor editing.
      
      From-SVN: r165316
      Arnaud Charlet committed
    • pr44197.c: Require visibility support. · 40b7ae58
              * gcc.c-torture/compile/pr44197.c: Require visibility support.
              Allow for a user label prefix.
      
      From-SVN: r165315
      Nick Clifton committed
    • vec.h (VEC_qsort): Define. · 5095da95
      gcc/
      	* vec.h (VEC_qsort): Define.
      	* dbxout.c (output_used_types): Use it.
      	* df-scan.c (df_sort_and_compress_refs): Likewise.
      	(df_sort_and_compress_mws): Likewise.
      	* genautomata.c (uniq_sort_alt_states): Likewise.
      	(evaluate_equiv_classes): Likewise.
      	(output_trans_table): Likewise.
      	(output_state): Likewise.
      	* gimplify.c (compare_case_labels): Likewise.
      	* graphite-sese-to-poly.c (graphite_sort_dominated_info): Likewise.
      	* ipa.c (build_cdtor_fns): Likewise.
      	* lto.c (lto_wpa_write_files): Likewise.
      	* sel-sched.c (fill_vec_av_set): Likewise.
      	* tree-predcom.c (determine_roots_comp): Likewise.
      	* tree-sra.c (sort_and_spliace_var_accesses): Likewise.
      	(splice_param_accesses): Likewise.
      	* tree-ssa-live.c (dump_enumerated_decls): Likewise.
      	* tree-ssa-reassoc.c (undistribute_ops_list): Likewise.
      	(reassociate_bb): Likewise.
      	* tree-ssa-sccvn.c (sort_scc): Likewise.
      	* tree-ssa-structalias.c (sort_fieldstack): Likewise.
      
      gcc/ada/
      	* gcc-interface/utils2.c (gnat_build_constructor): Use VEC_qsort.
      
      From-SVN: r165314
      Nathan Froyd committed
    • tree.h (TREE_THIS_NOTRAP): Use TREE_CHECK5. · 3748f5c9
      	* tree.h (TREE_THIS_NOTRAP): Use TREE_CHECK5.
      	* emit-rtl.c (set_mem_attributes_minus_bitpos): Only check
      	TREE_THIS_NOTRAP when appropriate.
      	(get_spill_slot_decl): Don't set TREE_THIS_NOTRAP on the new
      	VAR_DECL.
      	* gimplify.c (gimplify_expr): Copy NOTRAP from INDIRECT_REF to
      	newly created MEM_REF.
      
      From-SVN: r165313
      Ian Lance Taylor committed
    • picochip-protos.h (picochip_function_arg): Delete. · c159751b
      	* config/picochip/picochip-protos.h (picochip_function_arg): Delete.
      	(picochip_incoming_function_arg): Delete.
      	(picochip_arg_advance): Delete.
      	* config/picochip/picochip.h (FUNCTION_ARG): Delete.
      	(FUNCTION_INCOMING_ARG): Delete.
      	(FUNCTION_ARG_ADVANCE): Delete.
      	* config/picochip/picochip.c (picochip_function_arg): Take a
      	const_tree and a bool.
      	(picochip_incoming_function_arg): Likewise.
      	(picochip_arg_advance): Likewise.
      	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
      	(TARGET_FUNCTION_ARG_ADVANCE): Define.
      
      From-SVN: r165312
      Hariharan Sandanagobalane committed
    • Add missing ChangeLog. · 3414bf53
      From-SVN: r165311
      Andi Kleen committed
    • lto-plugin.c (dump_symtab): Correct printf argument type. · 9df2493c
      2010-10-11  Kai Tietz  <kai.tietz@onevision.com>
      
              * lto-plugin.c (dump_symtab): Correct printf argument type.
              (finish_conflict_resolution): Initialize resolution.
      
      From-SVN: r165310
      Kai Tietz committed
    • Fix typo in earlier checksum change · a2a997ba
      I'm checking in a fix as obvious for this typo in the earlier checksum
      change.
      
      gcc/objcp
      
      2010-10-11  Andi Kleen  <ak@linux.intel.com>
      
      	* Make-lang.in (cc1objplus-checksum.c): Use correct temporary
      	name.
      
      From-SVN: r165309
      Andi Kleen committed
    • re PR middle-end/45955 (FAIL: gcc.dg/initpri1.c (test for excess errors)) · 7d26a391
      	PR middle-end/45955
      	* ipa.c (build_cdtor): Delete endless loop.
      
      From-SVN: r165308
      John David Anglin committed
    • pt.c (tsubst_default_argument): Handle DEFAULT_ARG. · e90b1c4a
      	* pt.c (tsubst_default_argument): Handle DEFAULT_ARG.
      	(tsubst_default_arguments): Only do this once for cloned fns.
      	(tsubst): Use typedef_variant_p.  Handle LANG_TYPE.  Don't
      	handle expressions.
      	(tsubst_expr): Avoid calling tsubst_expr for non-expressions.
      	(tsubst_copy_and_build): Likewise.
      	(tsubst_initializer_list): Likewise.
      	(tsubst_copy): Change default to gcc_unreachable.  Handle
      	OVERLOAD and PTRMEM_CST.
      
      From-SVN: r165307
      Jason Merrill committed
    • re PR lto/45959 (ICE: tree code 'template_type_parm' is not supported in gimple… · 9c3c8ad7
      re PR lto/45959 (ICE: tree code 'template_type_parm' is not supported in gimple streams with -flto/-fwhopr)
      
      	PR lto/45959
      	PR lto/45960
      	* pt.c (tsubst_copy) [INTEGER_CST]: Instantiate the type.
      
      From-SVN: r165306
      Jason Merrill committed
    • Build compiler checksum from object files v2 · d6d5951a
      gcc/
      
      2010-10-07  Andi Kleen  <ak@linux.intel.com>
      
      	* Makefile.in (MOSTLYCLEANFILES): Remove cc1*dummy, add
      	checksum-options.
      	(checksum-options): Add.
      	(cc1-dummy): Remove.
      	(cc1-checksum): Change to run checksum over object files
      	and options only.
      	* dummy-checksum.c: Remove.
      	* genchecksum.c: Update copyright.
      	(usage): Allow multiple arguments.
      	(BLOCKSIZE): Add.
      	(dosum): Change for incremental checksum. Remove C output.
      	(main): Iterate over all argument files. Add C output.
      
      gcc/cp
      
      2010-10-07  Andi Kleen  <ak@linux.intel.com>
      
      	* Make-lang.in (c++_OBJS): Remove dummy-checksum.o.
      	(cc1plus-dummy): Remove.
      	(cc1plus-checksum): Change to run checksum over object files
              and options only.
      
      gcc/objc
      
      2010-10-07  Andi Kleen  <ak@linux.intel.com>
      
      	* Make-lang.in (cc1obj-dummy): Remove.
      	(cc1obj-checksum): Change to run checksum over object files
              and options only.
      
      gcc/objcp
      
      2010-10-07  Andi Kleen  <ak@linux.intel.com>
      
      	* Make-lang.in (cc1objplus-dummy): Remove.
      	(cc1objplus-checksum): Change to run checksum over object files
              and options only.
      
      From-SVN: r165305
      Andi Kleen committed
    • params.c (set_param_value_internal): New. · 128dc8e2
      	* params.c (set_param_value_internal): New.
      	(set_param_value): Use set_param_value_internal.
      	(maybe_set_param_value, set_default_param_value): New.
      	* params.h (PARAM_VALUE, PARAM_SET_P): Make into rvalues.
      	(maybe_set_param_value, set_default_param_value): Declare.
      	* config/arm/arm.c (arm_option_override): Use
      	maybe_set_param_value.
      	* config/i386/i386.c (ix86_option_override_internal): Use
      	maybe_set_param_value.
      	* config/ia64/ia64.c (ia64_option_default_params,
      	TARGET_OPTION_DEFAULT_PARAMS): New.
      	(ia64_option_optimization): Move some code to
      	ia64_option_default_params.
      	* config/picochip/picochip.c (picochip_option_override): Use
      	maybe_set_param_value.
      	* config/rs6000/rs6000.c (rs6000_option_default_params,
      	TARGET_OPTION_DEFAULT_PARAMS): New.
      	(rs6000_option_override_internal): Use maybe_set_param_value.
      	(rs6000_option_optimization): Move some code to
      	rs6000_option_default_params.
      	* config/s390/s390.c (s390_option_override): Use
      	maybe_set_param_value.
      	* config/sh/sh.c (sh_option_default_params,
      	TARGET_OPTION_DEFAULT_PARAMS): New.
      	(sh_option_optimization): Move some code to
      	sh_option_default_params.
      	* config/sparc/sparc.c (sparc_option_override): Use
      	maybe_set_param_value.
      	* config/spu/spu.c (spu_option_default_params,
      	TARGET_OPTION_DEFAULT_PARAMS): New.
      	(spu_option_optimization): Move some code to
      	spu_option_default_params.
      	(spu_option_override): Use maybe_set_param_value.
      	* doc/tm.texi.in (TARGET_OPTION_DEFAULT_PARAMS): New @hook.
      	* doc/tm.texi: Regenerate.
      	* ggc-common.c (init_ggc_heuristics): Use set_default_param_value.
      	* opts.c (init_options_once): Use PARAM_VALUE not direct access to
      	compiler_params.
      	(default_options_optimization): Use maybe_set_param_value.
      	(finish_options): Use maybe_set_param_value.
      	* target.def (target_option.default_params): New hook.
      	* toplev.c (general_init): Call
      	targetm.target_option.default_params.
      
      From-SVN: r165303
      Joseph Myers committed
    • re PR tree-optimization/45902 (CPU2006 benchmark sphinx3 fails with vectorization) · 49077698
      
      	PR tree-optimization/45902
      	* tree-vect-slp.c (vect_get_constant_vectors): Use statement's
      	vector type for constants, unless it's a pointer.
      
      From-SVN: r165302
      Ira Rosen committed
    • s390.md (*mov<mode>cc): lgoc -> locg and stgoc -> stocg. · a6510374
      2010-10-11  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* config/s390/s390.md (*mov<mode>cc): lgoc -> locg and stgoc -> stocg.
      
      From-SVN: r165301
      Andreas Krebbel committed
    • [multiple changes] · c159409f
      2010-10-11  Robert Dewar  <dewar@adacore.com>
      
      	* g-htable.ads (Get_First): New procedural version for Simple_HTable
      	(Get_Next): New procedural version for Simple_HTable
      	* s-htable.adb (Get_First): New procedural version for Simple_HTable
      	(Get_Next): New procedural version for Simple_HTable
      	* s-htable.ads (Get_First): New procedural version for Simple_HTable
      	(Get_Next): New procedural version for Simple_HTable
      
      2010-10-11  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_aggr.adb (Propagate_Discriminants): To gather the components of a
      	variant part, use the association list of the subaggregate, which
      	already includes the values of the needed discriminants.
      
      2010-10-11  Robert Dewar  <dewar@adacore.com>
      
      	* aspects.ads, aspects.adb: Changes to accomodate aspect delay
      	(Tree_Write): New procedure.
      	* atree.ads, atree.adb: Flag3 is now Has_Aspects and applies to all
      	nodes.
      	* atree.h: Flag3 is now Has_Aspects and applies to all nodes
      	* debug.adb: Add debug flag gnatd.A
      	* einfo.adb (Has_Delayed_Aspects): New flag
      	(Get_Rep_Item_For_Entity): New function
      	* einfo.ads (Has_Delayed_Aspects): New flag
      	(Get_Rep_Item_For_Entity): New function
      	* exp_ch13.adb (Expand_N_Freeze_Entity): Insert delayed aspects into
      	tree.
      	* exp_ch3.adb, exp_ch6.adb, exp_ch9.adb, exp_disp.adb: New calling
      	sequence for Freeze_Entity.
      	* freeze.ads, freeze.adb (Freeze_Entity): Takes node rather than source
      	ptr. All calls are changed to this new interface.
      	(Freeze_And_Append): Same change
      	(Freeze_Entity): Evaluate deferred aspects
      	* sem_attr.adb: New calling sequence for Freeze_Entity
      	(Eval_Attribute): Don't try to evaluate attributes of unfrozen types
      	when we are in spec expression preanalysis mode.
      	* sem_ch10.adb: New calling sequence for Freeze_Entity
      	* sem_ch11.adb: Simplify analysis of aspect specifications now that the
      	flag Has_Aspects applies to all nodes (no need to save aspects).
      	* sem_ch12.adb: Simplify analysis of aspect specifications now that the
      	flag Has_Aspects applies to all nodes (no need to save aspects).
      	* sem_ch13.adb (Analyze_Aspect_Specifications): Major rewrite to
      	accomodate delaying aspect evaluation to the freeze point.
      	(Duplicate_Clause): Simplify using Get_Rep_Item_For_Entity, and also
      	accomodate delayed aspects.
      	(Rep_Item_Too_Late): Deal with delayed aspects case
      	* sem_ch13.ads (Rep_Item_Too_Late): Document handling of delayed aspects
      	* sem_ch3.adb (Analyze_Subtype_Declaration): Make sure that generic
      	actual types are properly frozen (this is needed because of the new
      	check in Eval_Attribute that declines to evaluate attributes
      	for unfrozen types).
      	Simplify analysis of aspect specifications now that the flag
      	Has_Aspects applies to all nodes (no need to save aspects).
      	* sem_ch3.ads (Preanalyze_Spec_Expression): Note use for delayed aspects
      	* sem_ch5.adb: Simplify analysis of aspect specifications now that the
      	flag Has_Aspects applies to all nodes (no need to save aspects).
      	New calling sequence for Freeze_Entity.
      	* sem_ch9.adb, sem_ch7.adb, sem_ch6.adb: Simplify analysis of aspect
      	specifications now that the flag Has_Aspects applies to all nodes
      	(no need to save aspects).
      	New calling sequence for Freeze_Entity
      	* sem_prag.adb (Check_Duplicate_Pragma): Simplify using
      	Get_Rep_Item_For_Entity
      	(Get_Pragma_Arg): Moved to Sinfo
      	* sinfo.ads, sinfo.adb (Aspect_Rep_Item_: New field
      	(Is_Delayed_Aspect): New flag
      	(Next_Rep_Item): Document use for aspects
      	(Get_Pragma_Arg): Moved here from Sem_Prag
      	* sprint.adb (Sprint_Aspect_Specifications): Now called after semicolon
      	is output and removes semicolon (simplifies interface).
      	(Sprint_Node_Actual): Simplify handling of aspects now that Has_Aspects
      	applies to any node.
      	* tree_gen.adb: Write contents of Aspect_Specifications hash table
      	* tree_in.adb: Read and initialize Aspect_Specifications hash table
      	* treepr.adb (Print_Node): Print Has_Aspects flag
      	(Print_Node): Print Aspect_Specifications in Has_Aspects set
      	* xtreeprs.adb: Remove obsolete references to Flag1,2,3
      
      From-SVN: r165300
      Arnaud Charlet committed
    • [multiple changes] · 0f1a6a0b
      2010-10-11  Robert Dewar  <dewar@adacore.com>
      
      	* aspects.ads, aspects.adb: Major revision of this package for 2nd
      	stage of aspects implementation.
      	* gcc-interface/Make-lang.in: Add entry for aspects.o
      	* gcc-interface/Makefile.in: Add aspects.o to GNATMAKE_OBJS
      	* par-ch13.adb (Aspect_Specifications_Present): New function
      	(P_Aspect_Specifications): New procedure
      	* par-ch3.adb (P_Type_Declaration): Handle aspect specifications
      	(P_Derived_Type_Def_Or_Private_Ext_Decl): Handle aspect specifications
      	(P_Identifier_Declarations): Handle aspect specifications
      	(P_Component_Items): Handle aspect specifications
      	(P_Subtype_Declaration): Handle aspect specifications
      	* par-ch6.adb (P_Subprogram): Handle aspect specifications
      	* par-ch9.adb (P_Entry_Declaration): Handle aspect specifications
      	* par.adb (Aspect_Specifications_Present): New function
      	(P_Aspect_Specifications): New procedure
      	* sem.adb (Analyze_Full_Type_Declaration): New name for
      	Analyze_Type_Declaration.
      	(Analyze_Formal_Package_Declaration): New name (add _Declaration)
      	(Analyze_Formal_Subprogram_Declaration): New name (add _Declaration)
      	(Analyze_Protected_Type_Declaration): New name (add _Declaration)
      	(Analyze_Single_Protected_Declaration): New name (add _Declaration)
      	(Analyze_Single_Task_Declaration): New name (add _Declaration)
      	(Analyze_Task_Type_Declaration): New name (add _Declaration)
      	* sem_cat.adb (Analyze_Full_Type_Declaration): New name for
      	Analyze_Type_Declaration.
      	* sem_ch11.adb (Analyze_Exception_Declaration): Analyze aspect
      	specifications.
      	* sem_ch12.adb (Analyze_Formal_Object_Declaration): Handle aspect
      	specifications.
      	(Analyze_Formal_Package_Declaration): New name (add _Declaration)
      	(Analyze_Formal_Package_Declaration): Handle aspect specifications
      	(Analyze_Formal_Subprogram_Declaration): New name (add _Declaration)
      	(Analyze_Formal_Subprogram_Declaration): Handle aspect specifications
      	(Analyze_Formal_Type_Declaration): Handle aspect specifications
      	(Analyze_Generic_Package_Declaration): Handle aspect specifications
      	(Analyze_Generic_Subprogram_Declaration): Handle aspect specifications
      	(Analyze_Package_Instantiation): Handle aspect specifications
      	(Analyze_Subprogram_Instantiation): Handle aspect specifications
      	* sem_ch12.ads (Analyze_Formal_Package_Declaration): New name (add
      	_Declaration).
      	(Analyze_Formal_Subprogram_Declaration): New name (add _Declaration)
      	* sem_ch13.adb (Analyze_Aspect_Specifications): New procedure
      	(Duplicate_Clause): New function, calls to this function are added to
      	processing for all aspects.
      	* sem_ch13.ads (Analyze_Aspect_Specifications): New procedure
      	* sem_ch3.adb (Analyze_Full_Type_Declaration): New name for
      	Analyze_Type_Declaration.
      	* sem_ch3.ads (Analyze_Full_Type_Declaration): New name for
      	Analyze_Type_Declaration.
      	* sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Analyze aspect
      	specifications.
      	(Analyze_Subprogram_Declaration): Analyze aspect specifications
      	* sem_ch7.adb (Analyze_Package_Declaration): Analyze aspect
      	specifications.
      	(Analyze_Private_Type_Declaration): Analyze aspect specifications
      	* sem_ch9.adb (Analyze_Protected_Type_Declaration): Analyze aspect
      	specifications.
      	(Analyze_Protected_Type_Declaration): New name (add _Declaration)
      	(Analyze_Single_Protected_Declaration): Analyze aspect specifications
      	(Analyze_Single_Protected_Declaration): New name (add _Declaration)
      	(Analyze_Single_Task_Declaration): Analyze aspect specifications
      	(Analyze_Single_Task_Declaration): New name (add _Declaration)
      	(Analyze_Task_Type_Declaration): Analyze aspect specifications
      	(Analyze_Task_Type_Declaration): New name (add _Declaration)
      	* sem_ch9.ads (Analyze_Protected_Type_Declaration): New name (add
      	_Declaration).
      	(Analyze_Single_Protected_Declaration): New name (add _Declaration)
      	(Analyze_Single_Task_Declaration): New name (add _Declaration)
      	(Analyze_Task_Type_Declaration): New name (add _Declaration)
      	* sem_prag.adb: Use Get_Pragma_Arg systematically so that we do not
      	have to generate unnecessary pragma argument associations (this matches
      	the doc).
      	Throughout do changes to accomodate aspect specifications, including
      	specializing messages, handling the case of not going through all
      	homonyms, and allowing for cancellation.
      	* sinfo.ads, sinfo.adb: Clean up obsolete documentation for Flag1,2,3
      	(Aspect_Cancel): New flag
      	(From_Aspect_Specification): New flag
      	(First_Aspect): Removed flag
      	(Last_Aspect): Removed flag
      	* sprint.adb (Sprint_Aspect_Specifications): New procedure
      	(Sprint_Node_Actual): Add calls to Sprint_Aspect_Specifications
      
      2010-10-11  Bob Duff  <duff@adacore.com>
      
      	* sem_res.adb (Resolve_Actuals): Minor change to warning messages so
      	they match in Ada 95, 2005, and 2012 modes, in the case where the
      	language didn't change. Same thing for the run-time exception message.
      
      2010-10-11  Javier Miranda  <miranda@adacore.com>
      
      	* debug.adb Document that switch -gnatd.p enables the CIL verifier.
      
      2010-10-11  Robert Dewar  <dewar@adacore.com>
      
      	* s-htable.adb: Minor reformatting.
      
      From-SVN: r165299
      Arnaud Charlet committed
    • [multiple changes] · 1237d6ef
      2010-10-11  Javier Miranda  <miranda@adacore.com>
      
      	* debug.adb: Update comment.
      
      2010-10-11  Vincent Celier  <celier@adacore.com>
      
      	* gnatcmd.adb (GNATCmd): Set Opt.Unchecked_Shared_Lib_Imports to True
      	unconditionally as for "gnat make" the projects are not processed in
      	the GNAT driver.
      
      2010-10-11  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch10.ads, sem_ch10.adb (Load_Needed_Body): Add parameter to
      	suppress semantic analysis of the body when inlining, prior to
      	verifying that the body does not have a with_clause on a descendant
      	unit.
      	* inline.adb (Analyze_Inlined_Bodies): Do not inline a body if it has a
      	with_clause on a descendant. 
      	(Scope_In_Main_Unit): Simplify.
      
      From-SVN: r165298
      Arnaud Charlet committed
    • exp_ch6.adb, freeze.adb: Minor reformatting. · 3cae7f14
      2010-10-11  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch6.adb, freeze.adb: Minor reformatting.
      
      From-SVN: r165297
      Robert Dewar committed
    • [multiple changes] · 76b5b000
      2010-10-11  Vincent Celier  <celier@adacore.com>
      
      	* gnatcmd.adb (GNATCmd): For all tools other than gnatmake, allow
      	shared library projects to import projects that are not shared library
      	projects.
      
      2010-10-11  Javier Miranda  <miranda@adacore.com>
      
      	* debug.adb: Document that switch -gnatd.o generates the CIL listing.
      
      2010-10-11  Arnaud Charlet  <charlet@adacore.com>
      
      	* sem_prag.adb (Process_Suppress_Unsuppress): Only ignore
      	Suppress/Unsuppress pragmas in codepeer mode on user code.
      
      From-SVN: r165296
      Arnaud Charlet committed