Commit Graph

112080 Commits

Author SHA1 Message Date
Paolo Carlini
a7cee01d32 re PR libstdc++/50529 ([C++0x] std::vector::erase invokes undefined behavior with empty range)
2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/50529
	* include/bits/vector.tcc (vector<>::erase(iterator, iterator)):
	Fix to do nothing if the range is empty.
	* include/bits/stl_bvector.h: Likewise.
	* include/bits/deque.tcc: Likewise.
	* include/debug/vector: Adjust.
	* include/debug/deque: Likewise.
	* testsuite/23_containers/vector/modifiers/erase/50529.cc: New.
	* testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise.
	* testsuite/23_containers/deque/modifiers/erase/3.cc: Adjust.

From-SVN: r179234
2011-09-27 02:39:34 +00:00
Jason Merrill
b92edfe52d fix ChangeLog
From-SVN: r179233
2011-09-26 22:21:24 -04:00
Jason Merrill
9d84dbe6ba re PR c++/45012 (Invalid ambiguity on partial class specialization matching)
PR c++/45102
	* pt.c (tsubst_copy_and_build) [CONST_DECL]: Don't pull out
	constant value if we're still in a template.

From-SVN: r179230
2011-09-26 22:13:00 -04:00
Jason Merrill
69d28b4f42 re PR c++/46105 (Ordering failure among partial specializations with non-deduced context)
PR c++/46105
	* typeck.c (structural_comptypes): Ignore cv-quals on typename scope.

From-SVN: r179229
2011-09-26 22:12:51 -04:00
Jason Merrill
15442c9c4f re PR c++/50508 ([C++0x] ICE cxx_eval_logical_expression cp/semantics.c:6487)
PR c++/50508
	* semantics.c (cxx_eval_logical_expression): Use tree_int_cst_equal
	rather than ==.

From-SVN: r179228
2011-09-26 22:12:42 -04:00
David S. Miller
cb8bbba89e Improve code generation for edge and pixel-compare...
Improve code generation for edge and pixel-compare, specifically avoid
sign and zero extensions on 64-bit and allow such instructions to be
placed in delay slots.

gcc/

	* config/sparc/sparc.md (edge{8,16,32}{,l}): Return Pmode.
	(fcmp{le,ne,gt,eq}{16,32}): Likewise.
	* config/sparc/visintrin.h: Update edge and pixel-compare
	intrinsics to return 'long' instead of 'int'.
	* doc/extend.texi: Update documentation to match.
	* config/sparc/sparc.c (eligible_for_return_delay): When leaf or
	flat, allow any instruction.  Otherwise, when V9 allow parallels
	which consist only of sets to registers outside of %o0 to %o5.
	(sparc_vis_init_builtins): Update VIS builtin types for edge
	and pixel-compare.

gcc/testsuite/

	* gcc.target/sparc/edge.c: Update for new return types.
	* gcc.target/sparc/fcmp.c: Likewise.

From-SVN: r179227
2011-09-26 19:10:10 -07:00
Paolo Carlini
ca17c07b45 re PR c++/45487 (Request to change comma to semicolon in error message)
/cp
2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/45487
	* error.c (dump_template_bindings): Separate bindings with semicolons
	instead of commas.

/testsuite
2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/45487
	* g++.dg/diagnostic/bindings1.C: New.
	* g++.old-deja/g++.pt/memtemp77.C: Adjust.

From-SVN: r179226
2011-09-27 01:56:17 +00:00
GCC Administrator
ab02e565e4 Daily bump.
From-SVN: r179225
2011-09-27 00:18:54 +00:00
Benjamin Kosnik
2799d97293 re PR libstdc++/48698 (gnu-versioned-namespace problems)
2011-09-26  Benjamin Kosnik  <bkoz@redhat.com
            Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/48698
	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Set libtool_VERSION here.
	* configure.ac: Move AC_SUBST of libtool_VERSION past call to
	GLIBCXX_ENABLE_SYMVERS.
	* configure: Regenerate.
	* include/bits/c++config: Use __7 as versioned namespace name.
	* config/abi/pre/gnu-versioned-namespace.ver: Change mangling as
	per above.
	* include/c_global/cwchar: Adjust nested namespaces.
	* testsuite/20_util/bind/48698.cc: Add test case.
	* testsuite/ext/profile/mutex_extensions_neg.cc: Change line number.

From-SVN: r179221
2011-09-27 00:02:54 +00:00
Cary Coutant
59d605ad39 re PR lto/47247 (Linker plugin specification makes it difficult to handle COMDATs)
PR lto/47247
	* plugin-api.h (enum ld_plugin_symbol_resolution): Add
	LDPR_PREVAILING_DEF_IRONLY_EXP.
	(enum ld_plugin_tag): Add LDPT_GET_SYMBOLS_V2.

From-SVN: r179220
2011-09-26 16:32:13 -07:00
Ian Lance Taylor
16e40fef8f Pass $(MATH_LIBS) $(NET_LIBS) when linking tests.
From-SVN: r179219
2011-09-26 22:33:31 +00:00
Ian Lance Taylor
f0f91207e4 Fix sysinfo.go on systems which don't need to import "unsafe".
From-SVN: r179216
2011-09-26 21:49:08 +00:00
David S. Miller
1b946b2764 Add rdgsr, edge, and pixel-compare VIS tests.
gcc/testsuite/

	* gcc.target/sparc/rdgsr.c: New test.
	* gcc.target/sparc/edge.c: New test.
	* gcc.target/sparc/fcmp.c: New test.

From-SVN: r179215
2011-09-26 14:09:06 -07:00
David S. Miller
caa0691633 Fix sparc %gsr write elimination and add a testcase.
gcc/

	* config/sparc/sparc.c (sparc_conditional_register_usage): When VIS
	is enabled, mark %gsr as global.
	* config/sparc/sparc.md (UNSPEC_WRGSR): Delete.
	(wrgsr_vis, *wrgsr_sp64, wrgsr_v8plus): Don't wrap in an unspec.

gcc/testsuite/

	* gcc.target/sparc/wrgsr.c: New test.

From-SVN: r179214
2011-09-26 13:21:19 -07:00
Janus Weil
ef71fdd925 re PR fortran/50515 (gfortran should not accept an external that is a common (r178939))
2011-09-26  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/50515
	* resolve.c (resolve_common_blocks): Check for EXTERNAL attribute.

	PR fortran/50517
	* interface.c (gfc_compare_interfaces): Bugfix in check for result type.


2011-09-26  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/50515
	* gfortran.dg/common_15.f90: New.

	PR fortran/50517
	* gfortran.dg/dummy_procedure_5.f90: New.
	* gfortran.dg/interface_26.f90: Modified error message.
	* gfortran.dg/proc_ptr_11.f90: Ditto.
	* gfortran.dg/proc_ptr_15.f90: Ditto.
	* gfortran.dg/proc_ptr_comp_20.f90: Ditto.
	* gfortran.dg/proc_ptr_result_5.f90: Ditto.

From-SVN: r179213
2011-09-26 22:05:43 +02:00
Ian Lance Taylor
fbaec95026 Fix location of error about unused import "unsafe".
From-SVN: r179211
2011-09-26 19:36:06 +00:00
David S. Miller
8d12174db5 Move target CPP macro handling to C file and add __VIS/__VIS__.
* config/sparc/sparc-c.c: New file implementing sparc_target_macros,
	which will now define __VIS and __VIS__ when -mvis is enabled.
	* config/sparc/t-sparc: Likewise.
	* config.gcc: Add sparc-c.o to c_target_objs and cxx_target_objs,
	and add t-sparc to tmake_file for all sparc targets.
	* config/sparc/sparc-protos.h (sparc_target_macros): Declare.
	* config/sparc/sparc.h (TARGE_CPU_CPP_BUILTINS): Call it.

From-SVN: r179210
2011-09-26 12:04:35 -07:00
Jason Merrill
6cb1ef5143 re PR c++/50512 (surprising change in overloading resolution)
PR c++/50512
	* call.c (compare_ics): Only consider rvaluedness_matches_p
	if the target type is the same or it too differs in rvalueness.

From-SVN: r179208
2011-09-26 13:55:04 -04:00
Georg-Johann Lay
31fd727b4d avr.md (peephole casesi+2): Use -1 instead of 65536.
* config/avr/avr.md (peephole casesi+2): Use -1 instead of 65536.
	* config/avr/avr.c (avr_out_compare): Print shorter sequence for
	EQ/NE comparisons against +/-1 in the case of unused-after,
	non-ld-regs target.

From-SVN: r179206
2011-09-26 16:55:55 +00:00
Jakub Jelinek
2186081438 gimple-fold.c (gimplify_and_update_call_from_tree): Set gctx.into_ssa after push_gimplify_context.
* gimple-fold.c (gimplify_and_update_call_from_tree): Set
	gctx.into_ssa after push_gimplify_context.

	* gimple.c (gimple_build_call_valist): New function.
	* gimple.h (gimple_build_call_valist): New prototype.
	* tree-ssa-propagate.c (finish_update_gimple_call): New function.
	(update_gimple_call): Likewise.
	(update_call_from_tree): Use finish_update_gimple_call.
	* tree-ssa-propagate.h (update_gimple_call): New prototype.

From-SVN: r179204
2011-09-26 18:19:55 +02:00
Jason Merrill
12b03642cb re PR c++/50523 (C++ FE apparently incorrectly rejects tramp3d)
PR c++/50523
	* call.c (implicit_conversion): Mask out inappropriate LOOKUP
	flags at the top of the function.

From-SVN: r179203
2011-09-26 11:47:17 -04:00
Jason Merrill
fcb7afc20f * pt.c (tsubst_copy) [PARM_DECL]: Handle 'this' in NSDMI.
From-SVN: r179201
2011-09-26 10:26:56 -04:00
Paolo Carlini
8fb3401bdc pt.c (convert_nontype_argument): Handle NULLPTR_TYPE.
/cp
2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>

	* pt.c (convert_nontype_argument): Handle NULLPTR_TYPE.

/testsuite
2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp0x/nullptr25.C: New.

From-SVN: r179199
2011-09-26 13:58:47 +00:00
Paolo Carlini
734e01f0a3 re PR c++/26747 (bad break/continue is not detected until the gimplifier)
2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/26747
	* cp-gimplify.c (get_bc_label): Remove obsolete diagnostics.

From-SVN: r179198
2011-09-26 13:51:52 +00:00
Richard Guenther
f8a7df4594 re PR tree-optimization/50472 (Volatile qualification in data is not enough to avoid optimization over pointer to data)
2011-09-26  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/50472
	* gimple-fold.c (fold_const_aggregate_ref_1): Do not fold
	volatile references.

	* gcc.dg/torture/pr50472.c: New testcase.

From-SVN: r179196
2011-09-26 12:58:35 +00:00
Bingfeng Mei
b5bcaa4a74 tm.texi: Correct documentation for TARGET_ADDR_SPACE_SUBSET_P.
2011-09-26  Bingfeng Mei <bmei@broadcom.com>
	* doc/tm.texi: Correct documentation for TARGET_ADDR_SPACE_SUBSET_P.
	* target.def: (addr_space_subset_p): Likewise.

From-SVN: r179195
2011-09-26 12:46:09 +00:00
Eric Botcazou
412dd7641e opt22.adb: New test.
2011-09-26  Eric Botcazou  <ebotcazou@adacore.com>

	* gnat.dg/opt22.adb: New test.
	* gnat.dg/opt22_pkg.ad[sb]: New helper.

From-SVN: r179194
2011-09-26 12:41:17 +00:00
Tom de Vries
703ffc3005 tree-ssa-alias.h (pt_solution_singleton_p): Declare.
2011-09-26  Tom de Vries  <tom@codesourcery.com>

	* tree-ssa-alias.h (pt_solution_singleton_p): Declare.
	* tree-ssa-structalias.c (pt_solution_singleton_p): New function.
	* tree-ssa-ccp.c (fold_builtin_alloca_for_var): Set points-to solution
	of new var.

From-SVN: r179193
2011-09-26 12:36:56 +00:00
Tristan Gingold
750db0248d 2011-09-26 Tristan Gingold <gingold@adacore.com>
* inclhack.def (ms_define_can_use_extern_prefix):
	(vms_use_pragma_extern_model, vms_disable_decc_string_builtins):
	New fixes.
	* fixincl.x: Regenerate.
	* tests/base/rtldef/string.h: New test.
	* tests/base/rtldef/decc$types.h: Likewise.
	* tests/base/testing.h: Update

From-SVN: r179192
2011-09-26 12:12:51 +00:00
Georg-Johann Lay
8a6a05ce93 re PR target/50465 ([avr] Use insn attribute to depict if and how instruction lengths have to be adjusted)
PR target/50465
	* config/avr/avr-protos.h (output_reload_insisf): Don't pass insn.
	* config/avr/avr.md (*reload_insi, *reload_insf): Change call to
	output_reload_insisf.
	(adjust_len): Set default to "no".
	Remove alternative "yes".  Add alternatives: "mov8", "mov16",
	"mov32", "ashlqi", "ashrqi", "lshrqi", "ashlhi", "ashrhi",
	"lshrhi", "ashlsi, "ashrsi", "lshrsi".
	(*movqi, *movhi, *movsi, *ashlqi3, ashlhi3, ashlsi3,
	*ashlhi3_const, *ashlsi3_const, ashrqi3, ashrhi3, ashrsi3,
	*ashrhi3_const, *ashrsi3_const, *lshrqi3, lshrhi3, *lshrhi3_const,
	*lshrsi3_const): Set attribute "adjust_len".
	* config/avr/avr.c (output_reload_insisf): Remove parameter "insn".
	(output_movsisf): Don't pass insn to output_reload_insisf.
	(adjust_insn_length): Handle new alternatives to adjust_len.
	Remove handling of ADJUST_LEN_YES.  Clean-up code.

From-SVN: r179191
2011-09-26 11:53:40 +00:00
Eric Botcazou
2d0dd51a1a Fix oversight
From-SVN: r179190
2011-09-26 11:43:08 +00:00
Rainer Orth
58666503ad Restore Ada bootstrap on Solaris 8, 9/x86
From-SVN: r179189
2011-09-26 10:54:33 +00:00
Eric Botcazou
ce438663a8 ifcvt.c (noce_try_cmove_arith): Use may_trap_or_fault_p in lieu of may_trap_p to detect loads that may trap of...
* ifcvt.c (noce_try_cmove_arith): Use may_trap_or_fault_p in lieu of
	may_trap_p to detect loads that may trap of fault.

From-SVN: r179188
2011-09-26 09:49:02 +00:00
Eric Botcazou
bdbebf669e utils2.c (build_allocator): Set TREE_THIS_NOTRAP on the dereference of the pointer to the storage area.
* gcc-interface/utils2.c (build_allocator): Set TREE_THIS_NOTRAP on the
	dereference of the pointer to the storage area.  Remove useless type
	conversions and factor out common code.

From-SVN: r179187
2011-09-26 09:21:01 +00:00
Eric Botcazou
1aa291f7d1 utils.c (maybe_unconstrained_array): Declare TYPE local variable and use it throughout.
* gcc-interface/utils.c (maybe_unconstrained_array): Declare TYPE local
	variable and use it throughout.
	<UNCONSTRAINED_ARRAY_TYPE>: Add 'break' at the end.
	<RECORD_TYPE>: Do not unconditionally convert to the unpadded type as a
	first step.  Also convert to the unpadded type as a last step.

From-SVN: r179186
2011-09-26 09:03:52 +00:00
Eric Botcazou
7d76717db8 gigi.h (create_subprog_decl): Replace TREE_CHAIN with DECL_CHAIN in comment.
* gcc-interface/gigi.h (create_subprog_decl): Replace TREE_CHAIN with
	DECL_CHAIN in comment.
	* gcc-interface/trans.c (gigi): Likewise.
	(Attribute_to_gnu): Likewise.
	(build_function_stub): Likewise.
	(gnat_to_gnu): Likewise.
	* gcc-interface/utils.c (create_subprog_decl): Likewise.
	(convert_vms_descriptor64): Likewise.
	(convert_vms_descriptor32): Likewise.

From-SVN: r179185
2011-09-26 08:50:16 +00:00
Eric Botcazou
42acad07c0 trans.c (assoc_to_constructor): Minor tweaks.
* gcc-interface/trans.c (assoc_to_constructor): Minor tweaks.
	* gcc-interface/utils2.c (build_simple_component_ref): Fix formatting
	issues.  Use COMPLETE_TYPE_P in assertion.  Also set TREE_READONLY if
	the type of the record is TYPE_READONLY.

From-SVN: r179184
2011-09-26 08:45:36 +00:00
Eric Botcazou
a1d7228158 sem_ch6.adb (Set_Formal_Mode): Set Can_Never_Be_Null on an IN or IN OUT formal parameter which is of an...
* sem_ch6.adb (Set_Formal_Mode): Set Can_Never_Be_Null on an IN or IN
	OUT formal parameter which is of an null-exclusion access subtype.

Co-Authored-By: Robert Dewar <dewar@adacore.com>

From-SVN: r179183
2011-09-26 08:37:32 +00:00
Eric Botcazou
a1c7d7973c ada-tree.h (DECL_CAN_NEVER_BE_NULL_P): New macro.
* gcc-interface/ada-tree.h (DECL_CAN_NEVER_BE_NULL_P): New macro.
	* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Set the flag.
	(gnat_to_gnu_param): Likewise.
	* gcc-interface/utils.c (convert) <UNCONSTRAINED_ARRAY_REF>: Invoke
	maybe_unconstrained_array instead of doing the work manually.
	(maybe_unconstrained_array): Propagate the TREE_THIS_NOTRAP flag.
	* gcc-interface/utils2.c (build_unary_op) <INDIRECT_REF>: If operand
	is a DECL with the flag, set TREE_THIS_NOTRAP on the reference.
	(gnat_stabilize_reference_1): Propagate the TREE_THIS_NOTRAP flag.
	(gnat_stabilize_reference): Likewise.

From-SVN: r179182
2011-09-26 08:26:37 +00:00
Georg-Johann Lay
20633efc34 avr-protos.h (output_reload_inhi): Change prototype.
* config/avr/avr-protos.h (output_reload_inhi): Change prototype.
	* config/avr/avr.md (adjust_len): Add "reload_in16" alternative.
	(*reload_inhi): Use it.  Adapt call to output_reload_inhi to new
	prototype.
	(*movhi): Split constraint alternative "r,rL" into "r,r" and "r,L".
	* config/avr/avr.c: Rename output_reload_insisf_1 to
	output_reload_in_const.
	(avr_popcount_each_byte): Handle SFmode, too.
	(output_reload_in_const): Change so it can handle HI loads, too.
	Use avr_popcount_each_byte to work out if scratch register must be
	created on the fly.
	(output_reload_inhi): Rewrite using output_reload_in_const and...
	(output_movhi): ...use it to print constants' loads.
	(adjust_insn_length): New case ADJUST_LEN_RELOAD_IN16. Cleanup code.

From-SVN: r179181
2011-09-26 08:14:25 +00:00
Eric Botcazou
50179d5882 ada-tree.h (TYPE_NULL_BOUNDS): New macro.
* gcc-interface/ada-tree.h (TYPE_NULL_BOUNDS): New macro.
	(SET_TYPE_NULL_BOUNDS): Likewise.
	* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Set again
	TREE_THIS_NOTRAP on the INDIRECT_REF node built for the template.
	* gcc-interface/trans.c (Identifier_to_gnu): Return initializers of fat
	pointer types.
	* gcc-interface/utils.c (create_var_decl_1): If the object is external,
	check that the initializer is a valid constant expression for use in
	initializing a static variable.  Add missing guard.
	(update_pointer_to): Adjust TYPE_NULL_BOUNDS if set.
	(convert_to_fat_pointer): In the null fat pointer case, build a valid
	pointer for the bounds.
	* gcc-interface/utils2.c (compare_fat_pointers): New function.
	(build_binary_op) <EQ_EXPR>: Call it to compare fat pointers.

From-SVN: r179180
2011-09-26 07:52:58 +00:00
Jason Merrill
382346e535 parser.c (inject_this_parameter): Split out from cp_parser_late_return_type_opt.
* parser.c (inject_this_parameter): Split out from
	cp_parser_late_return_type_opt.
	(cp_parser_class_specifier_1): Use it for NSDMIs.
	* tree.c (bot_replace): Replace NSDMI 'this' with real 'this'.

From-SVN: r179179
2011-09-25 23:56:10 -04:00
GCC Administrator
02aaf894b5 Daily bump.
From-SVN: r179178
2011-09-26 00:19:12 +00:00
David S. Miller
e8b141b593 Add support for floating-point fused multiply-add on Sparc.
* configure.ac: Add feature check to make sure the assembler
	supports the FMAF, HPC, and VIS 3.0 instructions found on
	Niagara-3 and later cpus.
	* configure: Rebuild.
	* config.in: Likewise.
	* config/sparc/sparc.opt: New option '-mfmaf'.
	* config/sparc/sparc.md: Add float fused multiply-add patterns.
	* config/sparc/sparc.h (AS_NIAGARA3_FLAG): New macro.
	(ASM_CPU64_DEFAULT_SPEC, ASM_CPU_SPEC): Use it, as needed.
	* config/sparc/sol2.h (ASM_CPU32_DEFAULT_SPEC,
	ASM_CPU64_DEFAULT_SPEC, ASM_CPU_SPEC): Likewise.
	* config/sparc/sparc.c (sparc_option_override): Turn MASK_FMAF on
	by default for Niagara-3 and later.  Turn it off if TARGET_FPU is
	disabled.
	(sparc_rtx_costs): Handle 'FMA'.
	* doc/invoke.texi: Document -mfmaf.

From-SVN: r179174
2011-09-25 14:28:51 -07:00
David S. Miller
7cbcf85bf9 Generate 'fone' and 'fones' sparc instructions when possible.
* config/sparc/constraints.md (C, P, Z): New constraints for
	const_doube, const_int, and const_vector "all ones" values.
	Make unused constraint letters comment match reality.
	* config/sparc/predicates.md (const_all_ones_operand,
	register_or_zero_or_all_ones_operand): New predicates.
	* config/sparc/sparc.c (sparc_expand_move): Allow all ones
	as well as zero constants when VIS.
	(sparc_legitimate_constant_p): Likewise.
	* config/sparc/sparc.md (movsi_insn): Add fones alternative.
	(movsf_insn): Likewise
	(movdi_insn_sp64): Add fone alternative.
	(movdf_insn_sp32_v9): Likewise.
	(movdf_insn_sp64): Likewise.

From-SVN: r179173
2011-09-25 14:03:53 -07:00
Paolo Carlini
a0ce4616fb revert: testsuite_error.h: Add empty default constructor to __gnu_test::test_category and...
2011-09-25  Paolo Carlini  <paolo.carlini@oracle.com>

	Revert (no longer necessary post r179130):

	2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>

	* testsuite/util/testsuite_error.h: Add empty default constructor
	to __gnu_test::test_category and
	__gnu_test::test_derived_category.
	* src/future.cc: Add empty default constructor to
	future_error_category.
	* src/system_error.cc: Add default ctor to generic_error_category
	and system_error_category.

From-SVN: r179172
2011-09-25 20:58:46 +00:00
Eric Botcazou
ad1d36bafd ada-tree.h (TREE_THIS_NOTRAP): Redefine.
* gcc-interface/ada-tree.h (TREE_THIS_NOTRAP): Redefine.
	* gcc-interface/trans.c (Identifier_to_gnu): Factor out common code in
	the by-ref case.  Do not set TREE_READONLY on a renamed object.  Set
	TREE_THIS_NOTRAP on UNCONSTRAINED_ARRAY_REF nodes.
	(Attribute_to_gnu) <Attr_Length>: Expand the use of the parameter cache
	to the indirect case.
	* gcc-interface/utils.c (convert) <UNCONSTRAINED_ARRAY_REF>: Preserve
	the TREE_THIS_NOTRAP flag.

From-SVN: r179171
2011-09-25 20:40:10 +00:00
Eric Botcazou
6162cec0d9 trans.c (Loop_Statement_to_gnu): In the case of an iteration scheme...
* gcc-interface/trans.c (Loop_Statement_to_gnu): In the case of an
	iteration scheme, always generate the do-while form if optimization
	is enabled.  Use more straightforward test at the end.

From-SVN: r179169
2011-09-25 20:27:37 +00:00
Eric Botcazou
dee12fcd11 decl.c (gnat_to_gnu_entity): Use XNEW instead of xmalloc.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Subtype>: Use
	XNEW instead of xmalloc.  Do not build useless pointer type.
	<E_Anonymous_Access_Subprogram_Type>: Use XNEW instead of xmalloc.
	* gcc-interface/trans.c (gnat_to_gnu) <N_Raise_Constraint_Error>: Tidy.
	* gcc-interface/utils2.c (build_unary_op): Remove local variable.

From-SVN: r179168
2011-09-25 20:15:10 +00:00
Eric Botcazou
dea976c480 decl.c (gnat_to_gnu_entity): Do not promote the alignment if this doesn't prevent BLKmode access to the object.
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not promote
	the alignment if this doesn't prevent BLKmode access to the object.

From-SVN: r179167
2011-09-25 15:42:00 +00:00