Commit Graph

123126 Commits

Author SHA1 Message Date
Steven Bosscher
96fba5210e re PR middle-end/43631 (var-tracking inserts notes with non-NULL BLOCK_FOR_INSN in between basic blocks)
PR middle-end/43631
	* emit-rtl.c (make_note_raw): New function.
	(link_insn_into_chain): New static inline function.
	(add_insn): Use it.
	(add_insn_before, add_insn_after): Factor insn chain linking code...
	(add_insn_before_nobb, add_insn_after_nobb): ...here, new functions
	using link_insn_into_chain.
	(note_outside_basic_block_p): New helper function for emit_note_after
	and emit_note_before.
	(emit_note_after): Use nobb variant of add_insn_after if the note
	should not be contained in a basic block.
	(emit_note_before): Use nobb variant of add_insn_before if the note
	should not be contained in a basic block.
	(emit_note_copy): Use make_note_raw.
	(emit_note): Likewise.
	* bb-reorder.c (insert_section_boundary_note): Remove hack to set
	BLOCK_FOR_INSN to NULL manually for NOTE_INSN_SWITCH_TEXT_SECTIONS.
	* jump.c (cleanup_barriers): Use reorder_insns_nobb to avoid making
	the moved barrier the tail of the basic block it follows.
	* var-tracking.c (pass_variable_tracking): Add TODO_verify_flow.

From-SVN: r197994
2013-04-16 06:24:47 +00:00
Uros Bizjak
996943bea7 devirt-c-7.C: Require nonpic effective target.
* g++.dg/ipa/devirt-c-7.C: Require nonpic effective target.
	* gcc.c-torture/execute/pr33992.x: Remove.
	* gcc.c-torture/execute/pr33992.c (foo): Declare as static.
	* gcc.dg/uninit-pred-5_a.c (foo): Ditto.
	* gcc.dg/uninit-pred-5_b.c (foo): Ditto.

From-SVN: r197993
2013-04-16 07:15:00 +02:00
GCC Administrator
609e36b344 Daily bump.
From-SVN: r197992
2013-04-16 00:16:32 +00:00
Jason Merrill
099b933482 * pt.c (tsubst) [DECLTYPE_TYPE]: Use tsubst_copy_and_build.
From-SVN: r197983
2013-04-15 11:24:11 -04:00
Jason Merrill
4da97565d3 re PR c++/52748 ([C++11] N3276 changes to decltype)
PR c++/52748
	* pt.c (tsubst) [DECLTYPE_TYPE]: If ~id is an expression
	rather than a destructor name, it isn't an unqualified-name.
	(tsubst_copy_and_build): Pass down decltype_flag to operator
	handling code, too.

From-SVN: r197982
2013-04-15 11:24:03 -04:00
Jason Merrill
a68329c23e re PR c++/56388 (catch(...) in lambda rejected)
PR c++/56388
	* semantics.c (insert_capture_proxy): Just use index 1 in the
	stmt_list_stack.

From-SVN: r197981
2013-04-15 11:23:53 -04:00
Jakub Jelinek
7b8265ba38 re PR tree-optimization/56962 (SLSR caused miscompilation of fftw)
PR tree-optimization/56962
	* gimple-ssa-strength-reduction.c (record_increment): Only set
	initializer if gimple_assign_rhs_code is {,POINTER_}PLUS_EXPR and
	either rhs1 or rhs2 is equal to c->base_expr.

	* gcc.c-torture/execute/pr56962.c: New test.

From-SVN: r197978
2013-04-15 16:56:36 +02:00
Richard Biener
5185d248d5 re PR tree-optimization/56933 (Vectorizer missing read-write dependency for interleaved accesses)
2013-04-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/56933
	* tree-vectorizer.h (struct _stmt_vec_info): Remove read_write_dep
	member.
	(GROUP_READ_WRITE_DEPENDENCE): Remove.
	(STMT_VINFO_GROUP_READ_WRITE_DEPENDENCE): Likewise.
	* tree-vect-data-refs.c (vect_analyze_group_access): Move
	dependence check ...
	vect_analyze_data_ref_dependence (vect_analyze_data_ref_dependence):
	... here.
	* tree-vect-stmts.c (new_stmt_vec_info): Do not initialize
	GROUP_READ_WRITE_DEPENDENCE.

	* gcc.dg/vect/pr56933.c: New testcase.

From-SVN: r197972
2013-04-15 14:08:41 +00:00
Andreas Krebbel
a24243a0e5 emit-rtl.c (reset_all_used_flags): New function.
2013-04-15  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* emit-rtl.c (reset_all_used_flags): New function.
	(verify_rtl_sharing): Call reset_all_used_flags before and after
	performing the checks.

From-SVN: r197971
2013-04-15 13:09:50 +00:00
Tobias Burnus
3c63e93e6d intrinsic.texi (SYSTEM_CLOCK): Recommend kind=8.
2013-04-15  Tobias Burnus  <burnus@net-b.de>

        * intrinsic.texi (SYSTEM_CLOCK): Recommend kind=8.

From-SVN: r197970
2013-04-15 14:51:20 +02:00
Tobias Burnus
95bd9622ab list_read.c (finish_separator): Initialize variable.
2013-04-15  Tobias Burnus  <burnus@net-b.de>

        * list_read.c (finish_separator): Initialize variable.

From-SVN: r197969
2013-04-15 14:45:06 +02:00
Janne Blomqvist
83584eab1b PR 56919 Improve SYSTEM_CLOCK intrinsic on Windows.
frontend ChangeLog:

2013-04-15  Janne Blomqvist  <jb@gcc.gnu.org>

	PR fortran/56919
	* intrinsics.texi (SYSTEM_CLOCK): Update documentation.


libgfortran ChangeLog:

2013-04-15  Janne Blomqvist  <jb@gcc.gnu.org>

	PR fortran/56919
	* intrinsics/time_1.h: Check __CYGWIN__ in addition to
	__MINGW32__.
	* intrinsics/system_clock.c (GF_CLOCK_MONOTONIC): Check
	_POSIX_MONOTONIC_CLOCK as well.
	(system_clock_4): Use GetTickCount on Windows.
	(system_clock_8): Use QueryPerformanceCounter and
	QueryPerformanceCounterFrequency on Windows.

From-SVN: r197968
2013-04-15 15:43:15 +03:00
Kyrylo Tkachov
1c50eadaae arm.c (const_ok_for_dimode_op): Handle AND case.
2013-04-15  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.c (const_ok_for_dimode_op): Handle AND case.
	* config/arm/arm.md (*anddi3_insn): Change to insn_and_split.
	* config/arm/constraints.md (De): New constraint.
	* config/arm/neon.md (anddi3_neon): Delete.
	(neon_vand<mode>): Expand to standard anddi3 pattern.
	* config/arm/predicates.md (imm_for_neon_inv_logic_operand):
	Move earlier in the file.
	(neon_inv_logic_op2): Likewise.
	(arm_anddi_operand_neon): New predicate.

testsuite:
	* gcc.target/arm/anddi3-opt.c: New test.
	* gcc.target/arm/anddi3-opt2.c: Likewise.

From-SVN: r197965
2013-04-15 10:43:43 +00:00
Rainer Orth
e927b6ad35 Use -z ignore instead of --as-needed on Solaris
* configure.ac (gcc_cv_ld_as_needed): Set
	gcc_cv_ld_as_needed_option, gcc_cv_no_as_needed_option.
	Use -z ignore, -z record on *-*-solaris2*.
	(HAVE_LD_AS_NEEDED): Update comment.
	(LD_AS_NEEDED_OPTION, LD_NO_AS_NEEDED_OPTION): Define.
	* configure: Regenerate.
	* config.in: Regenerate.
	* gcc.c (init_gcc_specs) [USE_LD_AS_NEEDED]: Use
	LD_AS_NEEDED_OPTION, LD_NO_AS_NEEDED_OPTION.
	* config/sol2.h [HAVE_LD_AS_NEEDED] (USE_LD_AS_NEEDED): Define.
	* doc/tm.texi.in (USE_LD_AS_NEEDED): Allow for --as-needed
	equivalents.  Fix markup.
	* doc/tm.texi: Regenerate.

From-SVN: r197964
2013-04-15 10:31:57 +00:00
Andrew Hsieh
e0ea8797bb i386.opt: New option mstack-protector-guard=.
* config/i386/i386.opt: New option mstack-protector-guard=.
	* config/i386/i386-opts.h: Add enum stack_protector_guard.
	* config/i386/i386.h: Define TARGET_SSP_GLOBAL_GUARD and
	TARGET_SSP_TLS_GUARD.
	* config/i386/i386.c (ix86_option_override_internal): Set
	ix86_stack_protector_guard.
	* config/i386/i386.md (stack_protect_set): Enable for
	TARGET_SSP_TLS_GUARD only.
	(stack_protect_set_<mode>): Ditto.
	(stack_protect_test): Ditto.
	(stack_protect_test_<mode>): Ditto.
	* doc/invoke.texi (i386 Option): Document.

From-SVN: r197963
2013-04-15 12:03:48 +02:00
Tobias Burnus
adede54ce9 class.c (gfc_find_intrinsic_vtab): Removed unused var.
2013-04-15  Tobias Burnus  <burnus@net-b.de>

        * class.c (gfc_find_intrinsic_vtab): Removed unused var.
        * dependency.c (check_data_pointer_types): Fix check.
        * frontend-passes.c (check_data_pointer_types): Remove
        superfluous statement.
        * parse.c (decode_omp_directive): Add missing break.
        * resolve.c (resolve_typebound_subroutine: Free variable.
        * trans-decl.c (create_function_arglist): Correct condition.

From-SVN: r197961
2013-04-15 11:40:28 +02:00
Eric Botcazou
811b72f9c9 re PR target/56890 (invalid fdtox instruction in 64-bit mode with -O2)
PR target/56890
	* config/sparc/sparc.c (enum sparc_mode_class): Add H_MODE value.
	(S_MODES): Set H_MODE bit.
	(SF_MODES): Set only S_MODE and SF_MODE bits.
	(DF_MODES): Set SF_MODES and only D_MODE and DF_MODE bits.
	(sparc_init_modes) <MODE_INT>: Set H_MODE bit for sub-word modes.
	<MODE_VECTOR_INT>: Do not set SF_MODE for sub-word modes.
	<MODE_FLOAT>: Likewise.

From-SVN: r197958
2013-04-15 08:28:41 +00:00
Joey Ye
5529fdd6b9 * config/arm/arm.c (thumb_far_jump_used_p): Fix typo in comments.
From-SVN: r197957
2013-04-15 07:48:28 +00:00
Joey Ye
517b1da274 arm.c (thumb1_final_prescan_insn): Assert lr save for real far jump.
2013-04-15  Joey Ye  <joey.ye@arm.com>

    * config/arm/arm.c (thumb1_final_prescan_insn): Assert lr save
    for real far jump.
    (thumb_far_jump_used_p): Count instruction size and set
    far_jump_used.

testsuite:
    * gcc.target/arm/thumb1-far-jump-1.c: New test.
    * gcc.target/arm/thumb1-far-jump-2.c: New test.

From-SVN: r197956
2013-04-15 07:41:27 +00:00
GCC Administrator
c21f34f1e1 Daily bump.
From-SVN: r197954
2013-04-15 00:16:53 +00:00
Gerald Pfeifer
cdbaf71ac2 gcj.texi (Configure-time Options): Refer to GCC, not gcc.
* gcj.texi (Configure-time Options): Refer to GCC, not gcc.
	(Resources): Adjust reference to Mauve.
	Remove link to java.sun.com.
	Refer to GCC, not gcc.

From-SVN: r197951
2013-04-14 21:16:58 +00:00
Mikael Morin
a5e5226441 re PR fortran/56816 (ICE in delete_root)
fortran/
	PR fortran/56816
	* match.c (gfc_match_select_type): Add syntax error. Move namespace
	allocation and cleanup...
	* parse.c (decode_statement): ... here.

testsuite/
	PR fortran/56816
	* gfortran.dg/select_type_33.f03: New test.

From-SVN: r197950
2013-04-14 17:50:57 +00:00
Eric Botcazou
01007ae044 reorg.c (fill_simple_delay_slots): Reindent block of code.
* reorg.c (fill_simple_delay_slots): Reindent block of code.
	* resource.c (mark_target_live_regs): Reformat conditional block.

From-SVN: r197949
2013-04-14 09:46:02 +00:00
GCC Administrator
da98a6a1bb Daily bump.
From-SVN: r197948
2013-04-14 00:16:43 +00:00
Steven Bosscher
c46f658021 sched-deps.c (deps_analyze_insn): Do not check for EH_REGION insn notes, they are emitted only just before final.
* sched-deps.c (deps_analyze_insn): Do not check for EH_REGION insn
	notes, they are emitted only just before final.
	* sched-int.h: Include insn-attr.h before checking INSN_SCHEDULING.

From-SVN: r197945
2013-04-13 18:08:19 +00:00
Janus Weil
9c9c61994c re PR fortran/55959 ([OOP] ICE in in gfc_simplify_expr, at fortran/expr.c:1920)
2013-04-13  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/55959
	* expr.c (gfc_simplify_expr): Branch is not unreachable.


2013-04-13  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/55959
	* gfortran.dg/typebound_proc_29.f03: New.

From-SVN: r197943
2013-04-13 12:52:31 +02:00
Steven Bosscher
1f397f45b3 emit-rtl.c (remove_insn): Do not call df_insn_delete here.
* emit-rtl.c (remove_insn): Do not call df_insn_delete here.
	* cfgrtl.c (delete_insn): Call it here instead.
	* lra-spills.c (lra_final_code_change): Use delete_insn.
	* haifa-sched.c (sched_remove_insn): Likewise.
	* sel-sched-ir.c (return_nop_to_pool): Clear INSN_DELETED_P for nops
	returning to the nop pool.
	(sel_remove_insn): Simplify the only_disconnect case via remove_insn,
	use delete_insn for definitive removal.  Clear BLOCK_FOR_INSN.

From-SVN: r197942
2013-04-13 10:04:09 +00:00
GCC Administrator
0e50ab072a Daily bump.
From-SVN: r197940
2013-04-13 00:16:43 +00:00
Steven Bosscher
58a5136910 tm.texi.in (LOOP_ALIGN): Remove loop note references.
* doc/tm.texi.in (LOOP_ALIGN): Remove loop note references.
	* doc/tm.texi: Regenerated.

From-SVN: r197937
2013-04-12 23:32:28 +00:00
Janus Weil
236e381528 re PR fortran/56266 ([OOP] ICE on invalid in gfc_match_varspec)
2013-04-12  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/56266
	* primary.c (gfc_match_varspec): Turn gcc_assert into MATCH_ERROR.


2013-04-12  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/56266
	* gfortran.dg/typebound_proc_28.f03: New.

From-SVN: r197936
2013-04-12 23:41:50 +02:00
Jeff Law
701de10f52 vrp87.c: Do not run test on ppc and xtensa either.
* gcc.dg/tree-ssa/vrp87.c: Do not run test on ppc and xtensa
        either.

From-SVN: r197935
2013-04-12 15:08:13 -06:00
Uros Bizjak
331598668d i386.c (ix86_hard_regno_mode_ok): Use ANY_QI_REGNO_P in QImode checks.
* config/i386/i386.c (ix86_hard_regno_mode_ok): Use ANY_QI_REGNO_P in
	QImode checks.

From-SVN: r197933
2013-04-12 20:23:27 +02:00
Tobias Burnus
14c96bcafd re PR fortran/56929 ([OOP] [F08] ICE on dummy argument child class with coarray inside parent)
2013-04-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56929
        * trans-array.c (duplicate_allocatable): Fix handling
        of scalar coarrays.

2013-04-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56929
        * gfortran.dg/coarray/alloc_comp_2.f90: New.

From-SVN: r197930
2013-04-12 19:55:48 +02:00
Steven Bosscher
226e378f4d df-core.c (df_find_def): Compare register numbers.
* df-core.c (df_find_def): Compare register numbers.
	(df_find_use): Likewise.

From-SVN: r197929
2013-04-12 17:53:55 +00:00
Vladimir Makarov
fafb9b1865 re PR rtl-optimization/56903 (gcc is 4.8.0 fails to compile netdev.c from the linux kernel [internal compiler error: Maximum number of LRA constraint passes is achieved])
2013-04-12  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/56903
	* config/i386/i386.c (ix86_hard_regno_mode_ok): Add
	lra_in_progress for return.

2013-04-12  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/56903
	* gcc.target/i386/pr56903.c: New test.

From-SVN: r197927
2013-04-12 17:09:10 +00:00
Greta Yorsh
9a946fd66c arm.md (mov_scc,mov_negscc,mov_notscc): Convert define_insn into define_insn_and_split and emit movsicc patterns.
2013-04-12  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/arm.md (mov_scc,mov_negscc,mov_notscc): Convert
	define_insn into define_insn_and_split and emit movsicc patterns.

From-SVN: r197925
2013-04-12 16:22:06 +01:00
Jakub Jelinek
0ea6237867 crontab: Disable snapshots from gcc-4_6-branch.
* crontab: Disable snapshots from gcc-4_6-branch.
	* update_version_svn: Ignore gcc-4_6-branch.

From-SVN: r197924
2013-04-12 17:07:38 +02:00
Janus Weil
96486998bc re PR fortran/56261 ([OOP] seg fault call procedure pointer on polymorphic array)
2013-04-12  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/56261
	* gfortran.h (gfc_explicit_interface_required): New prototype.
	* expr.c (gfc_check_pointer_assign): Check if an explicit interface is
	required in a proc-ptr assignment.
	* interface.c (check_result_characteristics): Extra check.
	* resolve.c (gfc_explicit_interface_required): New function.
	(resolve_global_procedure): Use new function
	'gfc_explicit_interface_required'. Do a full interface check.


2013-04-12  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/56261
	* gfortran.dg/auto_char_len_4.f90: Add -pedantic. Changed error.
	* gfortran.dg/assumed_rank_4.f90: Modified error wording.
	* gfortran.dg/block_11.f90: Fix invalid test case.
	* gfortran.dg/function_types_3.f90: Add new error message.
	* gfortran.dg/global_references_1.f90: Ditto.
	* gfortran.dg/import2.f90: Remove unneeded parts.
	* gfortran.dg/import6.f90: Fix invalid test case.
	* gfortran.dg/proc_decl_2.f90: Ditto.
	* gfortran.dg/proc_decl_9.f90: Ditto.
	* gfortran.dg/proc_decl_18.f90: Ditto.
	* gfortran.dg/proc_ptr_40.f90: New.
	* gfortran.dg/whole_file_7.f90: Modified error wording.
	* gfortran.dg/whole_file_16.f90: Ditto.
	* gfortran.dg/whole_file_17.f90: Add -pedantic.
	* gfortran.dg/whole_file_18.f90: Modified error wording.
	* gfortran.dg/whole_file_20.f03: Ditto.
	* gfortran.fortran-torture/execute/intrinsic_associated.f90: Fix
	invalid test case.

From-SVN: r197922
2013-04-12 16:21:39 +02:00
Greta Yorsh
41b83758ed arm.c (gen_operands_ldrd_strd): Initialize "base".
2013-04-12  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/arm.c (gen_operands_ldrd_strd): Initialize "base".

From-SVN: r197921
2013-04-12 15:19:10 +01:00
Robert Dewar
5bd66d23fc makeutl.adb, [...]: Minor reformatting.
2013-04-12  Robert Dewar  <dewar@adacore.com>

	* makeutl.adb, prj-nmsc.adb: Minor reformatting.

2013-04-12  Robert Dewar  <dewar@adacore.com>

	* exp_util.adb (Make_Invariant_Call): Use Check_Kind instead
	of Check_Enabled.
	* gnat_rm.texi (Check_Policy): Update documentation for new
	Check_Policy syntax.
	* sem_prag.adb (Check_Kind): Replaces Check_Enabled
	(Analyze_Pragma, case Check_Policy): Rework to accomodate new
	syntax (like Assertion_Policy).
	* sem_prag.ads (Check_Kind): Replaces Check_Enabled.

From-SVN: r197920
2013-04-12 15:45:25 +02:00
Arnaud Charlet
e952150cf6 Update dependencies.
From-SVN: r197919
2013-04-12 15:43:43 +02:00
Arnaud Charlet
4bc0caddeb [multiple changes]
2013-04-12  Doug Rupp  <rupp@adacore.com>

	* init.c (SS$_CONTROLC, SS$_CONTINUE) [VMS]: New macros.
	(__gnat_handle_vms_condition) [VMS]: Dispatch on the Crtl/C user
	handler if installed.
	* ctrl_c.c (__gnat_install_int_handler)
	[VMS]: Install a dummy sigaction handler to trigger the real
	user handler dispatch in init.c/__gnat_handle_vms_condition.
	(__gnat_uninstall_int_handler) [VMS]: Likewise.

2013-04-12  Vincent Celier  <celier@adacore.com>

	* clean.adb (Parse_Cmd_Line): Set Directories_Must_Exist_In_Projects
	to False if switch is specified.
	* makeutl.adb (Initialize_Source_Record): Do not look for the
	object file if there is no object directory.
	* opt.ads (Directories_Must_Exist_In_Projects): New Boolean
	variable, defaulted to True.
	* prj-nmsc.adb (Check_Library_Attributes): Do not fail if library
	directory does not exist when Directories_Must_Exist_In_Projects is
	False.
	(Get_Directories): Do not fail when the object or the exec directory
	do not exist when Directories_Must_Exist_In_Projects is False.

From-SVN: r197918
2013-04-12 15:42:39 +02:00
Arnaud Charlet
b69cd36a46 [multiple changes]
2013-04-12  Robert Dewar  <dewar@adacore.com>

	* namet.adb, namet.ads: Minor addition (7 arg version of Nam_In).
	* exp_prag.adb, sem_ch3.adb, sem_intr.adb, sem_type.adb, exp_util.adb,
	sem_aux.adb, exp_ch9.adb, sem_ch7.adb, sem_ch10.adb, sem_prag.adb,
	par-ch2.adb, tbuild.adb, rtsfind.adb, freeze.adb, sem_util.adb,
	sem_res.adb, sem_attr.adb, exp_ch2.adb, prj-makr.adb, sem_elab.adb,
	exp_ch4.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, par-prag.adb,
	prj-nmsc.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb, par-util.adb,
	sem_eval.adb, exp_intr.adb, sem_ch13.adb, exp_cg.adb, lib-xref.adb,
	sem_disp.adb, exp_ch3.adb: Minor code reorganization (use Nam_In).

2013-04-12  Doug Rupp  <rupp@adacore.com>

	* init.c: Don't clobber condition code on VMS.

From-SVN: r197917
2013-04-12 15:41:03 +02:00
Robert Dewar
7893514cf6 exp_aggr.adb: Minor reformatting.
2013-04-12  Robert Dewar  <dewar@adacore.com>

	* exp_aggr.adb: Minor reformatting.
	* namet.ads, namet.adb (Nam_In): New functions.

From-SVN: r197916
2013-04-12 15:39:09 +02:00
Arnaud Charlet
aab45d22d2 [multiple changes]
2013-04-12  Robert Dewar  <dewar@adacore.com>

	* einfo.adb (Has_Dynamic_Predicate_Aspect): New flag.
	(Has_Static_Predicate_Aspect): New flag.
	* einfo.ads (Has_Dynamic_Predicate_Aspect): New flag.
	(Has_Static_Predicate_Aspect): New flag.
	* exp_ch9.adb: Minor reformatting.
	* exp_util.adb (Make_Invariant_Call): Check_Enabled now handles
	synonyms.
	* gnat1drv.adb: Remove setting of Debug_Pragmas_Enabled,
	since this switch is gone and control of Debug is done with
	Assertions_Enabled.
	* gnat_rm.texi: Update documentation for Assertion_Policy and
	Check_Policy pragmas.
	* opt.adb (Debug_Pragmas_Disabled[_Config]): Removed
	(Debug_Pragmas_Enabled[_Config]): Removed Since debug now
	controlled by Assertion_Enabled.
	* opt.ads (Debug_Pragmas_Disabled[_Config]): Removed
	(Debug_Pragmas_Enabled[_Config]): Removed Since debug now
	controlled by Assertion_Enabled.
	* par-ch2.adb (Scan_Pragma_Argument_Association): Allow new
	'Class forms.
	* sem_attr.adb: Minor reformatting.
	* sem_ch13.adb (Analyze_Aspect_Specification): Disable aspect
	if DISABLE policy applies.
	* sem_ch6.adb (Grab_PPC): Check original name of aspect for
	aspect from pragma (Process_PPCs): Properly check assertion policy.
	* sem_prag.adb (Check_Enabled): Rewritten for new Assertion_Policy
	(Check_Appicable_Policy): New procedure.
	(Is_Valid_Assertion_Kind): New function.
	(Rewrite_Assertion_Kind): New procedure.
	(Analyze_Pragma): Handle case of disabled assertion pragma.
	(Analyze_Pragma, case Assertion_Policy): Rewritten for Ada 2012.
	(Analyze_Pragma, case Check): Deal with 'Class possibilities.
	(Analyze_Pragma, case Check_Policy): Deal with 'Class possibilities.
	(Analyze_Pragma, case Contract_Class): New handling of ignored pragma.
	(Analyze_Pragma, case Debug): New control with Assertion_Policy.
	(Analyze_Pragma, case Debug_Policy): Now consistent with
	Assertion_Policy.
	(Analyze_Pragma, case Loop_Invariant): New handling of ignored
	pragma.
	(Analyze_Pragma, case Loop_Variant): New handling of ignored pragma.
	(Analyze_Pragma, case Precondition): Use proper name for Check pragma.
	(Analyze_Pragma, case Check_Enabled): Rewritten for new policy stuff.
	* sem_prag.ads (Check_Enabled): Rewritten for new
	Assertion_Policy stuff.
	(Check_Appicable_Policy): New procedure.
	* sinfo.adb (Is_Disabled): New flag.
	(Is_Ignored): New flag.
	* sinfo.ads (Is_Disabled): New flag.
	(Is_Ignored): New flag.
	(N_Pragma_Argument_Association): New 'Class forms.
	* snames.ads-tmpl: New names Name_uPre, Name_uPost,
	Name_uType_Invariant, Name_uInvariant.
	* switch-c.adb: Remove setting of Debug_Pragmas_Enabled for -gnata.
	* tree_io.ads (ASIS_Version_Number): Updated (remove
	read write of obsolete flags Debug_Pragmas_Disabled and
	Debug_Pragmas_Enabled.

2013-04-12  Ed Schonberg  <schonberg@adacore.com>

	* exp_aggr.adb (Get_Explicit_Discriminant_Value): Subsidiary
	of Build_Record_Aggr_Code, used to retrieve explicit values
	for inherited discriminants in an extension aggregate, when the
	ancestor type is unconstrained.

From-SVN: r197915
2013-04-12 15:35:06 +02:00
Arnaud Charlet
beaa97abbf [multiple changes]
2013-04-12  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Check_Stream_Attribute): If restriction
	No_Default_Stream_Attributes is active, it is illegal to use a
	predefined elementary type stream attribute either by itself,
	or more importantly as part of the attribute subprogram for a
	composite type. However, if the broader restriction No_Streams
	is active, then stream operations are not generated, and there
	is no error.

2013-04-12  Robert Dewar  <dewar@adacore.com>

	* gnatbind.adb: Minor reformatting.

From-SVN: r197914
2013-04-12 15:31:37 +02:00
Bob Duff
97b9064f51 sem_attr.adb (Analyze_Access_Attribute): Treat P'Access like a call only in the static elaboration model.
2013-04-12  Bob Duff  <duff@adacore.com>

	* sem_attr.adb (Analyze_Access_Attribute): Treat P'Access like a
	call only in the static elaboration model.

From-SVN: r197913
2013-04-12 15:24:37 +02:00
Arnaud Charlet
ce532f42a7 [multiple changes]
2013-04-12  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Input_List): Detect an illegal dependency
	clause where both input and output lists are null.
	(Analyze_Pragma): Update the grammar of pragma Depends.

2013-04-12  Vincent Celier  <celier@adacore.com>

	* gnatbind.adb (No_Restriction_List): Exclude restrictions that
	take a parameter value, not a count.
	* prj.ads, prj.adb (Remove_All_Restricted_Languages): New procedure.
	* projects.texi: Complete documentation of attribute Roots.

2013-04-12  Thomas Quinot  <quinot@adacore.com>

	* exp_ch3.adb, exp_util.ads, checks.adb, freeze.adb, sem_attr.adb,
	sem_ch3.adb: Minor reformatting.
	* exp_ch4.adb (Size_In_Storage_Elements): Minor documentation
	improvement: note that the computation is pessimistic for bit
	packed arrays.
	* gnat_rm.texi (Range_Length): Fix minor error in description
	of attribute.

From-SVN: r197912
2013-04-12 15:23:23 +02:00
Hristian Kirtchev
d62520f3cf aspects.adb (Find_Aspect): New routine.
2013-04-12  Hristian Kirtchev  <kirtchev@adacore.com>

	* aspects.adb (Find_Aspect): New routine.
	(Find_Value_Of_Aspect): New routine.
	(Has_Aspect): Reimplemented.
	* aspects.ads (Find_Aspect): New routine.
	(Find_Value_Of_Aspect): New routine, previously known as Find_Aspect.
	* exp_ch5.adb (Expand_Iterator_Loop): Update the call to Find_Aspect.
	* exp_util.adb (Is_Iterated_Container): Update the call to Find_Aspect.
	* sem_ch4.adb (Try_Container_Indexing): Update calls to Find_Aspect.
	* sem_ch5.adb (Analyze_Iterator_Specification): Update
	the call to Find_Aspect. Use function Has_Aspect for better
	readability.
	(Preanalyze_Range): Use function Has_Aspect for better readability.
	* sem_ch13.adb (Check_One_Function): Update the call to Find_Aspect.
	* sem_prag.adb (Analyze_Pragma): There is no longer need to
	look at the parent to extract the corresponding pragma for
	aspect Global.

From-SVN: r197911
2013-04-12 15:20:29 +02:00
Arnaud Charlet
489c6e198e [multiple changes]
2013-04-12  Robert Dewar  <dewar@adacore.com>

	* checks.adb, sem_elab.adb, repinfo.adb, sem_ch4.adb, restrict.adb,
	restrict.ads: Minor reformatting.

2013-04-12  Ed Schonberg  <schonberg@adacore.com>

	* lib-xref.adb: Retrieve original name of classwide type if any.

2013-04-12  Thomas Quinot  <quinot@adacore.com>

	* exp_ch11.ads: Minor reformatting.

From-SVN: r197910
2013-04-12 15:19:15 +02:00