Commit graph

120896 commits

Author SHA1 Message Date
Uros Bizjak
5858fcd997 re PR middle-end/55597 (internal compiler error: in plus_constant, at explow.c:88)
PR target/55597
	* config/i386/i386.c (legitimize_tls_address): Zero-extend x to Pmode,
	before using it as insn or call equivalent.

testsuite/ChangeLog:

	PR target/55597
	* gcc.target/i386/pr55597.c: New test.

From-SVN: r194274
2012-12-06 23:05:21 +01:00
Peter Bergner
957fee09af configure.tgt: Enable build on powerpc*-linux.
libsanitizer/
	* configure.tgt: Enable build on powerpc*-linux.

gcc/
	* config/rs6000/sysv4.h (TARGET_ASAN_SHADOW_OFFSET): Define.
	* config/rs6000/rs6000.c (rs6000_asan_shadow_offset): New function.
	* config/rs6000/rs6000.h (FRAME_GROWS_DOWNWARD): Disable if using ASAN.

From-SVN: r194273
2012-12-06 15:53:36 -06:00
Jakub Jelinek
789b6d0559 re PR fortran/55395 (libgfortran bootstrap failure on powerpc-linux-gnu and arm-linux-gnueabi)
PR fortran/55395
	* varpool.c (varpool_remove_node): Don't drop DECL_INITIAL
	if -g and emitting DWARF2+.

From-SVN: r194272
2012-12-06 21:34:55 +01:00
Pat Haugen
6c64e50fc8 rs6000.c (rs6000_option_override_internal): Set default loop peeling limits.
* config/rs6000/rs6000.c (rs6000_option_override_internal): Set
	default loop peeling limits.

From-SVN: r194271
2012-12-06 20:32:37 +00:00
Jason Merrill
5cd5a78c9b re PR c++/54744 (internal compiler error: Segmentation fault, by dependent base, member typedef and ctor-initializer)
PR c++/54744
	* pt.c (resolve_typename_type): Check TYPENAME_IS_RESOLVING_P on scope.
	* init.c (expand_member_init): Check for being in a template first.
	* parser.c (cp_parser_mem_initializer_list): Only check class types
	for equivalence to the current class.

From-SVN: r194267
2012-12-06 15:21:08 -05:00
Jason Merrill
1e8671f733 re PR c++/54913 (qualified lookup in ctor of class template fails to find static member of reference type)
PR c++/54913
	* semantics.c (finish_qualified_id_expr): convert_from_reference
	after building a SCOPE_REF.

From-SVN: r194266
2012-12-06 15:20:52 -05:00
Jason Merrill
0fe4913b32 re PR c++/55032 (Internal compiler error: in strip_typedefs, at cp/tree.c:1199)
PR c++/55032
	* tree.c (build_array_type_1): Re-layout if we found it in the
	hash table.

From-SVN: r194265
2012-12-06 15:20:34 -05:00
Jakub Jelinek
84fd832c03 re PR c++/54207 ([C++0x] ICE in build_noexcept_spec when bool is #defined/typedef'd)
PR c++/54207
	* except.c (build_noexcept_spec): Avoid direct comparison
	with boolean_true_node or boolean_false_node, instead use
	operand_equal_p and/or INTEGER_CST check.
	* pt.c (tsubst_exception_specification): Likewise.
	* typeck2.c (merge_exception_specifiers): Likewise.

	* g++.dg/cpp0x/noexcept18.C: New test.

From-SVN: r194263
2012-12-06 19:55:48 +01:00
Jakub Jelinek
947f720f7d re PR c++/55573 (ICE in adjust_temp_type, at cp/semantics.c:6454)
PR c++/55573
	* semantics.c (adjust_temp_type): Handle VECTOR_CST.

	* g++.dg/cpp0x/constexpr-55573.C: New test.

From-SVN: r194262
2012-12-06 19:54:25 +01:00
Jack Howarth
3157880f53 Fix PR55599/sanitizer by disabling static libasan on darwin
From-SVN: r194257
2012-12-06 14:49:44 +00:00
Jason Merrill
9e04d8a2a0 re PR c++/54947 ([C++11] lambda cannot capture-by-copy inside braced-init-list)
PR c++/54947
	* parser.c (cp_parser_initializer_list): Don't require an
	expression in [] to be constant until we know it's a C99
	designator.

From-SVN: r194256
2012-12-06 09:45:11 -05:00
Kostya Serebryany
695edbac5c [libsanitizer] merge from upstream r169392
From-SVN: r194255
2012-12-06 14:43:11 +00:00
Jakub Jelinek
c8211767c5 re PR middle-end/43631 (var-tracking inserts notes with non-NULL BLOCK_FOR_INSN in between basic blocks)
PR middle-end/43631
	* var-tracking.c (emit_note_insn_var_location, emit_notes_in_bb):
	Clear BLOCK_FOR_INSN on notes emitted in between basic blocks,
	don't adjust BB_END when inserting note after BB_END of some bb.

From-SVN: r194252
2012-12-06 15:37:59 +01:00
Jason Merrill
7d9fe08e13 re PR c++/55015 (Lambda functions not found at link time when declared in an inline function)
PR c++/55015
	PR c++/53821
	* semantics.c (maybe_add_lambda_conv_op): Revert earlier change.
	* decl.c (start_preparsed_function): Make local class methods comdat
	in templates, too.

From-SVN: r194251
2012-12-06 09:37:13 -05:00
Jakub Jelinek
5442fe4818 re PR c++/55137 (Unexpected static structure initialization)
PR c++/55137
	* fold-const.c (fold_binary_loc) <associate>: Don't introduce
	TREE_OVERFLOW through reassociation.  If type doesn't have defined
	overflow, but one or both of the operands do, use the wrapping type
	for reassociation and only convert to type at the end.

	* g++.dg/opt/pr55137.C: New test.
	* gcc.c-torture/execute/pr55137.c: New test.

From-SVN: r194250
2012-12-06 15:37:09 +01:00
Jason Merrill
d8169a0d2a re PR c++/54653 (tsubst_template_parms ICE)
PR c++/54653
	* parser.c (cp_parser_class_head): A partial specialization scope
	counts as a template.
	* pt.c (tsubst_template_parms): Handle template template parm parms.
	(tsubst_decl) [TEMPLATE_DECL]: Handle getting a template template
	argument back.

From-SVN: r194249
2012-12-06 09:37:04 -05:00
Jason Merrill
5128e01493 re PR c++/55564 (internal error using decltype of a template type parameter for late-specified function result type)
PR c++/55564
	* pt.c (unify) [ARRAY_TYPE]: Unify the element type before the bounds.

From-SVN: r194248
2012-12-06 09:36:55 -05:00
Richard Biener
37376165be gimple-fold.c (fold_stmt_1): Remove code handling folding stmts away.
2012-12-06  Richard Biener  <rguenther@suse.de>

	* gimple-fold.c (fold_stmt_1): Remove code handling folding
	stmts away.

From-SVN: r194247
2012-12-06 11:00:23 +00:00
Kyrylo Tkachov
71aa66e4fd sourcebuild.texi: Document arm_v8_neon_ok.
2012-12-06  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	gcc/
	* doc/sourcebuild.texi: Document arm_v8_neon_ok.

	gcc/testsuite/
	* lib/target-supports.exp (check_effective_target_arm_v8_neon_ok):
	New procedure.
	(add_options_for_arm_v8_neon): Likewise.

From-SVN: r194245
2012-12-06 10:07:41 +00:00
Kyrylo Tkachov
7973996540 arm.c (neon_itype): Define NEON_RINT enum element.
2012-12-06  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.c (neon_itype): Define NEON_RINT enum element.
	(neon_builtin_data): Register vrintn, vrinta, vrintp, vrintm,
	vrintz,	vrintx neon builtins.
	(arm_init_neon_builtins): Handle NEON_RINT.
	(arm_expand_neon_builtin): Likewise.
	* config/arm/unspecs.md: New file.
	* config/arm/arm.md ("unspec"): Move to unspecs.md.
	* config/arm/iterators.md (NEON_VRINT): New int iterator.
	(nvrint_variant): New int attribute.
	* config/arm/neon.md 
	(neon_vrint<NEON_VRINT:nvrint_variant><VCVTF:mode>): New pattern.
	("unspec"): Move to unspecs.md.
	* config/arm/iwmmxt2.md ("unspec"): Move to unspecs.md.

From-SVN: r194244
2012-12-06 09:55:45 +00:00
Uros Bizjak
4f2b3dc2b4 sfp-machine.h (FP_EX_ALL): Define.
* config/i386/sfp-machine.h (FP_EX_ALL): Define.
	(FP_TRAPPING_EXCEPTIONS): Define.
	* config/i386/32/sfp-machine.h (FP_EX_SHIFT): Define.
	* config/i386/64/sfp-machine.h (FP_EX_SHIFT): Ditto.

From-SVN: r194243
2012-12-06 10:49:43 +01:00
Ian Lance Taylor
cb0a70cac9 compiler: Correct test for whether go/defer arg is parenthesized.
From-SVN: r194240
2012-12-06 04:11:54 +00:00
Ian Lance Taylor
4d901dd735 os: Clean up directory reading code.
From-SVN: r194237
2012-12-06 02:00:13 +00:00
John David Anglin
d698104260 pa.md: Use "const_int 0" instead of match_test to simplify opaque cond in all call insns.
* config/pa/pa.md: Use "const_int 0" instead of match_test to simplify
	opaque cond in all call insns.

From-SVN: r194235
2012-12-06 01:38:00 +00:00
GCC Administrator
955948756e Daily bump.
From-SVN: r194234
2012-12-06 00:18:38 +00:00
Steven Bosscher
2412b9b097 * g++.dg/pr55604.C: New test.
From-SVN: r194231
2012-12-05 23:57:17 +00:00
Steven Bosscher
85f9ce675d re PR rtl-optimization/55604 (ICE while dumping in remove_some_program_points_and_update_live_ranges)
PR rtl-optimization/55604
	* lra-lives.c (lra_create_live_ranges): If there are no referenced
	pseudos left, do not compute live ranges.

From-SVN: r194230
2012-12-05 23:55:28 +00:00
Steven Bosscher
aeb9f7cf3c tm.texi.in (TARGET_CLASS_LIKELY_SPILLED_P): Update documentation.
* doc/tm.texi.in (TARGET_CLASS_LIKELY_SPILLED_P): Update documentation.
	* doc/tm.texi: Regenerate.
	* regs.h (REG_LIVE_LENGTH): Update comments to not refer to no longer
	existing files global.c and local-alloc.c.
	* regmove.c (copy_src_to_dest): Likewise.
	* function.h (struct rtl_data): Likewise.
	* ira-color.c (allocno_priority_compare_func): Likewise.
	* regstat.c (regstat_compute_ri): Likewise.
	* config/epiphany/epiphany.h, config/vax/vax.h, config/cris/cris.h,
	config/h8300/h8300.h, config/alpha/alpha.h, config/sparc/sparc.h,
	config/rs6000/rs6000.h, config/pdp11/pdp11.h, config/pa/pa.h,
	config/v850/v850.h, config/mn10300/mn10300.h, config/m32r/m32r.h,
	config/i386/i386.h, config/mcore/mcore.h, config/sh/sh.h,
	config/arm/arm.h (REGNO_OK_FOR_BASE_P): Likewise.

From-SVN: r194229
2012-12-05 23:16:52 +00:00
Aldy Hernandez
833fe7dadc re PR target/54160 (gcc should not define __OBJC2__ when lang is not set to ObjC (gcc 4.6 and later))
PR target/54160
	* config/t-darwin (darwin-c.o): Depend on $(CPP_INTERNAL_H).
	* config/darwin-c.c (darwin_cpp_builtins): Only set __OBJC2__
	when in obj mode.
	Include libcpp/internal.h.

From-SVN: r194227
2012-12-05 21:10:18 +00:00
Michael Eager
b08c12cb46 re PR rtl-optimization/54739 (FAIL: gcc.dg/lower-subreg-1.c scan-rtl-dump subreg1 "Splitting reg")
PR rtl-optimization/54739
	* config/microblaze/microblaze.md: (anddi3, iordi3, xordi3): Delete patterns.

From-SVN: r194226
2012-12-05 17:27:05 +00:00
Tobias Burnus
d07e82f92b resolve.c (generate_component_assignments): Fix memleak.
2012-12-05  Tobias Burnus  <burnus@net-b.de>

        * resolve.c (generate_component_assignments): Fix memleak.

From-SVN: r194225
2012-12-05 16:45:32 +01:00
Kostya Serebryany
a040845458 [libsanitizer] merge from upstream r169371
From-SVN: r194221
2012-12-05 13:19:55 +00:00
James Greenhalgh
cc4d934fa0 [AARCH64] Add zip{1, 2}, uzp{1, 2}, trn{1, 2} support
for vector permute.

gcc/

	* config/aarch64/aarch64-simd-builtins.def: Add new builtins.
	* config/aarch64/aarch64-simd.md (simd_type): Add uzp.
	(aarch64_<PERMUTE:perm_insn><PERMUTE:perm_hilo><mode>): New.
	* config/aarch64/aarch64.c (aarch64_evpc_trn): New.
	(aarch64_evpc_uzp): Likewise.
	(aarch64_evpc_zip): Likewise.
	(aarch64_expand_vec_perm_const_1): Check for trn, zip, uzp patterns.
	* config/aarch64/iterators.md (unspec): Add neccessary unspecs.
	(PERMUTE): New.
	(perm_insn): Likewise.
	(perm_hilo): Likewise.

From-SVN: r194219
2012-12-05 11:42:37 +00:00
James Greenhalgh
88b080739a [AARCH64] Implement Vector Permute Support.
gcc/

	* config/aarch64/aarch64-protos.h
	(aarch64_split_combinev16qi): New.
	(aarch64_expand_vec_perm): Likewise.
	(aarch64_expand_vec_perm_const): Likewise.
	* config/aarch64/aarch64-simd.md (vec_perm_const<mode>): New.
	(vec_perm<mode>): Likewise.
	(aarch64_tbl1<mode>): Likewise.
	(aarch64_tbl2v16qi): Likewise.
	(aarch64_combinev16qi): New.
	* config/aarch64/aarch64.c
	(aarch64_vectorize_vec_perm_const_ok): New.
	(aarch64_split_combinev16qi): Likewise.
	(MAX_VECT_LEN): Define.
	(expand_vec_perm_d): New.
	(aarch64_expand_vec_perm_1): Likewise.
	(aarch64_expand_vec_perm): Likewise.
	(aarch64_evpc_tbl): Likewise.
	(aarch64_expand_vec_perm_const_1): Likewise.
	(aarch64_expand_vec_perm_const): Likewise.
	(aarch64_vectorize_vec_perm_const_ok): Likewise.
	(TARGET_VECTORIZE_VEC_PERM_CONST_OK): Likewise.
	* config/aarch64/iterators.md
	(unspec): Add UNSPEC_TBL, UNSPEC_CONCAT.
	(V_cmp_result): Add mapping for V2DF.

gcc/testsuite/

	* lib/target-supports.exp
	(check_effective_target_vect_perm): Allow aarch64*-*-*.
	(check_effective_target_vect_perm_byte): Likewise.
	(check_effective_target_vect_perm_short): Likewise.
	(check_effective_target_vect_char_mult): Likewise.
	(check_effective_target_vect_extract_even_odd): Likewise.
	(check_effective_target_vect_interleave): Likewise.

From-SVN: r194218
2012-12-05 11:36:00 +00:00
Arnaud Charlet
246ff1aef6 [multiple changes]
2012-12-05  Robert Dewar  <dewar@adacore.com>

	* par_sco.adb, sem_prag.adb, put_scos.adb, get_scos.adb: Minor
	reformatting.

2012-12-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb: Code clean up.

From-SVN: r194217
2012-12-05 12:25:23 +01:00
Arnaud Charlet
f957d41e03 Make-lang.in: Update dependencies.
* gcc-interface/Make-lang.in: Update dependencies.
	* gcc-interface/lang.opt: New language AdaSCIL.
	* gcc-interface/lang-specs.h: Add specs for adascil language.

From-SVN: r194216
2012-12-05 12:24:07 +01:00
Arnaud Charlet
1c66c4f5b7 [multiple changes]
2012-12-05  Thomas Quinot  <quinot@adacore.com>

	* par_sco.adb (Traverse_Aspects): Ensure we always have
	an entry in the sloc -> SCO map for invariants, since
	Set_SCO_Pragma_Enabled is called with that sloc when checks
	are enabled.

2012-12-05  Thomas Quinot  <quinot@adacore.com>

	* exp_ch4.adb: Minor reformatting.

2012-12-05  Hristian Kirtchev  <kirtchev@adacore.com>

	* par-prag.adb: Checks and processing of pragma Assume are
	carried out by Sem_Prag.
	* sem_prag.adb (Analyze_Pragma): Check the legality of pragma
	Assume.
	* snames.ads-tmpl: Add new name Assume. Add a pragma identifier
	for Assume.

From-SVN: r194215
2012-12-05 12:21:32 +01:00
Ed Schonberg
c116143c22 aspects.ads, [...]: Add aspect Relative_Deadline.
2012-12-05  Ed Schonberg  <schonberg@adacore.com>

	* aspects.ads, aspects.adb: Add aspect Relative_Deadline.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Process aspect
	Relative_Deadline, and introduce the corresponding pragma within
	the task definition of the task type to which it applies.
	(Check_Aspect_At_Freeze_Point): Expression in a Relative_Deadline
	aspect is of type Time_Span.

From-SVN: r194214
2012-12-05 12:20:13 +01:00
Arnaud Charlet
5e0c742b7a [multiple changes]
2012-12-05  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Check_Loop_Invariant_Variant_Placement): When pragma
	Loop_[In]variant does not appear immediately within the statements
	of a loop, it must appear in a chain of nested blocks.

2012-12-05  Thomas Quinot  <quinot@adacore.com>

	* sem_ch13.adb: Minor reformatting.
	 Remove redundant assertion.

From-SVN: r194213
2012-12-05 12:17:09 +01:00
Arnaud Charlet
ce95786742 Minor reformatting.
From-SVN: r194212
2012-12-05 12:16:09 +01:00
Arnaud Charlet
06ad40d3ec [multiple changes]
2012-12-05  Thomas Quinot  <quinot@adacore.com>

	* par_sco.adb, scos.ads, put_scos.adb, put_scos.ads,
	get_scos.adb: Generation of SCOs for aspects.

2012-12-05  Thomas Quinot  <quinot@adacore.com>

	* sem_prag.adb (Check_Precondition_Postcondition): Remove
	redundant call to Set_SCO_Pragma_Enabled (the pragma will be
	rewritten into a pragma Check later on, and the call will be
	made when processing the rewritten pragma).
	(Analyze_Pragma, case Pragma_Check): Omit call to
	Set_SCO_Pragma_Enabled if Split_PPC is set.

2012-12-05  Olivier Hainque  <hainque@adacore.com>

	* tracebak.c: Add partial support for Lynx178.

2012-12-05  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_attr.adb (Analyze_Attribute): Improve
	the error message related to loop assertions.

2012-12-05  Gary Dismukes  <dismukes@adacore.com>

	* atree.ads: Minor reformatting.

From-SVN: r194211
2012-12-05 12:15:35 +01:00
Arnaud Charlet
af31bd5750 [multiple changes]
2012-12-05  Robert Dewar  <dewar@adacore.com>

	* atree.ads, par-ch4.adb, sem_attr.adb, sem_ch13.adb: Minor
	reformatting.

2012-12-05  Eric Botcazou  <ebotcazou@adacore.com>

	* gnat_ugn.texi (Switches for gcc): Document -flto and reorder.

2012-12-05  Ed Schonberg  <schonberg@adacore.com>

	* par-ch5.adb (P_Condition): Handle properly Ada 2012
	expressions that must be parenthesized before checking for
	redundant parentheses when that check is enabled.

From-SVN: r194210
2012-12-05 12:11:28 +01:00
Arnaud Charlet
7b55fea6d7 [multiple changes]
2012-12-05  Ed Schonberg  <schonberg@adacore.com>

	* par-ch4.adb (P_Allocator): In Ada 2012 (AI05-0104)  an
	uninitialized allocator cannot carry an explicit not null
	indicator.
	* sem_ch4.adb (Analyze_Allocator): Remove code that implements
	the check for AI05-0104, the check is syntactic and performed
	in the parser.

2012-12-05  Geert Bosch  <bosch@adacore.com>

	* sem_attr.adb (Analyze_Attribute): Use base type for floating
	point attributes.

2012-12-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb (Analyze_Aspect_Specifications,
	Ahalyze_Aspect_Default_Value): For a scalar type attach default
	value to base type as well, because it is a type-specific aspect
	even though it can be specified on a first subtype.

From-SVN: r194209
2012-12-05 12:09:27 +01:00
Yufeng Zhang
c6fc9e439a aarch64.c (aarch64_simd_mangle_map_entry): New typedef.
gcc/

2012-12-05  Yufeng Zhang  <yufeng.zhang@arm.com>

	* config/aarch64/aarch64.c (aarch64_simd_mangle_map_entry): New
	typedef.
	(aarch64_simd_mangle_map): New table.
	(aarch64_mangle_type): Locate and return the mangled name for
	a given AdvSIMD vector type.

gcc/testsuite/

2012-12-05  Yufeng Zhang  <yufeng.zhang@arm.com>

	* g++.dg/abi/mangle-neon-aarch64.C: New test.

From-SVN: r194208
2012-12-05 11:08:43 +00:00
Arnaud Charlet
18a2ad5d46 [multiple changes]
2012-12-05  Yannick Moy  <moy@adacore.com>

	* urealp.ads: Minor rewording.

2012-12-05  Yannick Moy  <moy@adacore.com>

	* aspects.ads (No_Duplicates_Allowed): Forbid use of duplicate
	Contract_Cases aspects.
	* sem_prag.adb (Analyze_Pragma/Pragma_Contract_Case): Rename
	POST_CASE into CONTRACT_CASE in both grammar and code, to be
	consistent with current language definition.  Issue a more precise
	error message when the pragma duplicates another pragma or aspect.

2012-12-05  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_attr.adb (Expand_N_Attribute_Reference): Add processing
	for attribute Update.
	(Expand_Update_Attribute): New routine.
	* par-ch4.adb (P_Name): The sole expression of attribute Update
	is an aggregate, parse it accordingly.
	* sem_attr.adb (Analyze_Attribute): Verify the legality of
	attribute Update.
	(Eval_Attribute): Attribute Update does not
	need evaluation because it is never static.
	* snames.ads-tmpl: Add Name_Update to the list of special names
	recognized by the compiler. Add an Attribute_Id for Update.

2012-12-05  Ed Schonberg  <schonberg@adacore.com>

	* exp_util.adb (Remove_Side_Effects): For purposes of removing
	side effects, qualified expressions do not receive a special
	treatment, even though in Ada 2012 they are defined  as object
	references.

2012-12-05  Thomas Quinot  <quinot@adacore.com>

	* par-ch3.adb: Minor reformatting.

From-SVN: r194207
2012-12-05 12:06:35 +01:00
Thomas Quinot
baad98300a exp_dist.adb (Build_From_Any_Call, [...]): For a used-defined subtype, always go to the first subtype of the base type.
2012-12-05  Thomas Quinot  <quinot@adacore.com>

	* exp_dist.adb (Build_From_Any_Call, Build_To_Any_Call,
	Build_TypeCode_Call): For a used-defined subtype, always go to
	the first subtype of the base type.

From-SVN: r194206
2012-12-05 12:03:15 +01:00
Arnaud Charlet
0f4be53552 [multiple changes]
2012-12-05  Thomas Quinot  <quinot@adacore.com>

	* exp_dist.adb: Minor reformatting.

2012-12-05  Tristan Gingold  <gingold@adacore.com>

	* Make-generated.in: Remove the VMS host specific part, as VMS
	compilers aren't built anymore on VMS.

2012-12-05  Thomas Quinot  <quinot@adacore.com>

	* sem.adb, errout.ads, atree.adb, atree.ads (Check_Error_Detected):
	Only return quietly if a serious error of configurable run time
	violation has been found.

2012-12-05  Yannick Moy  <moy@adacore.com>

	* sem_res.adb (Resolve_Type_Conversion): In Alfa_Mode, do not apply
	conversion checks.

From-SVN: r194205
2012-12-05 12:02:24 +01:00
Arnaud Charlet
a53c56136d [multiple changes]
2012-12-05  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch5.adb (Expand_N_Assignment_Statement): Handle properly
	the generation of discriminant checks when the left-hand side
	has a type with hidden discriminants.
	* sem_ch3.ads (Is_Visible_Component): Add defaulted parameter to
	specify the node on which component visibility is being checked.
	* sem_ch3.adb (Is_Visible_Component): Use new parameter to
	determine whether the reference comes from a type conversion to
	a full view of a private type with unknown discriminants.
	* sem_ch4.adb (Analyze_Selected_Component): Call
	Is_Visible_Component with added parameter.

2012-12-05  Arnaud Charlet  <charlet@adacore.com>

	* make.adb: Minor comment update.

2012-12-05  Arnaud Charlet  <charlet@adacore.com>

	* gnatlink.adb: Also use -x adascil in CodePeer mode when
	calling gcc.
	* exp_ch5.adb: Minor reformatting.

2012-12-05  Bob Duff  <duff@adacore.com>

	* exp_ch4.adb: Minor comment.

2012-12-05  Bob Duff  <duff@adacore.com>

	* par-ch4.adb: Set Paren_Count correctly for a parenthesized expression
	containing a conditional expression or quantified expression.
	* sprint.adb: Update comment.

2012-12-05  Bob Duff  <duff@adacore.com>

	* style.adb, scans.ads, styleg.adb: Update comments.

2012-12-05  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch8.adb (Find_Selected_Component): Handle properly an
	expanded name whose prefix is the expanded name of an enclosing
	entry,	that is to say a construct such as T.E.X, where T is an
	enclosing concurrent type and E is an enclosing entry.

From-SVN: r194204
2012-12-05 11:59:09 +01:00
Arnaud Charlet
5e29ae8259 [multiple changes]
2012-12-05  Robert Dewar  <dewar@adacore.com>

	* lib-writ.adb (Write_ALI): Output T lines.
	* lib-writ.ads: Minor reformatting. Add documentation of T lines.
	* opt.ads (Generate_Target_Dependent_Info): New flag.
	* switch-c.adb (Scan_Switches): Recognize -gnatet switch
	(target dependent info).
	* ttypes.ads: Add four letter codes to declarations (for target
	dependent info).
	* usage.adb: Add line for -gnatet switch.

2012-12-05  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_prag.adb (Expand_N_Pragma): Add a call to expand
	pragma Loop_Variant.
	(Expand_Pragma_Loop_Assertion): Removed.
	(Expand_Pragma_Loop_Variant): New routine.
	* par-prag.adb: Remove Pragma_Loop_Assertion and add two new
	Pragma_Loop_Invariant and Pragma_Loop_Variant entries.
	* sem_attr.adb (Analyze_Attribute): Update the code which
	locates the enclosing pragma.
	* sem_prag.adb (Analyze_Pragma): Remove the code which analyzes
	pragma Loop_Assertion as the pragma is now obsolete. Add the
	machinery to checks the semantics of pragmas Loop_Invariant
	and Loop_Variant.
	(Check_Loop_Invariant_Variant_Placement): New routine.
	* snames.ads-tmpl: Remove name Loop_Assertion. Add new names
	Loop_Invariant and Loop_Variant.  Rename Name_Decreasing
	to Name_Decreases and Name_Increasing to Name_Increases.
	Remove the pragma Id for Loop_Assertion and add two new Ids for
	Loop_Invariant and Loop_Variant.

From-SVN: r194203
2012-12-05 11:55:42 +01:00
Arnaud Charlet
b9daa96e70 [multiple changes]
2012-12-05  Robert Dewar  <dewar@adacore.com>

	* gnatchop.adb, sem_attr.ads, sem_ch4.adb, sem_ch6.adb, exp_disp.adb,
	atree.adb, sem_eval.adb: Minor reformatting.

2012-12-05  Yannick Moy  <moy@adacore.com>

	* uintp.adb (UI_Div_Rem): Correct algorithm D to remove potential
	overflow.

2012-12-05  Robert Dewar  <dewar@adacore.com>

	* exp_ch4.adb (Expand_N_Op_Mod): Minor comment additions.
	(Expand_N_Op_Rem): Ditto.

2012-12-05  Robert Dewar  <dewar@adacore.com>

	* sem_attr.adb: Minor reformatting.

2012-12-05  Robert Dewar  <dewar@adacore.com>

	* usage.adb: Update lines for -gnato? switch.

From-SVN: r194202
2012-12-05 11:50:26 +01:00