aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2011-11-06re PR c++/47695 ([C++0X] Calling a deleted function fails twice)Paolo Carlini4-14/+25
2011-11-06 Paolo Carlini <paolo.carlini@oracle.com> PR c++/47695 * decl2.c (mark_used): Early return false after error or sorry. * cp-tree.h (mark_used): Adjust declaration. * semantics.c (finish_id_expression): Check mark_used return value. From-SVN: r181042
2011-11-06tree-cfg.c (gimple_can_merge_blocks_p): For -O0 don't remove any user labels.Jakub Jelinek2-2/+7
* tree-cfg.c (gimple_can_merge_blocks_p): For -O0 don't remove any user labels. From-SVN: r181040
2011-11-06pa.c (pa_hpux_init_libfuncs): Rename to pa_init_libfuncs.John David Anglin2-45/+56
* config/pa/pa.c (pa_hpux_init_libfuncs): Rename to pa_init_libfuncs. Remove dependence of declaration and target define on definition of HPUX_LONG_DOUBLE_LIBRARY. Update implementation. From-SVN: r181038
2011-11-06Check in patch/merge from cxx-mem-model BranchAndrew Macleod105-1323/+9335
From-SVN: r181031
2011-11-06Remove unwanted svn:executable properties that svn add had decided to add.Joern Rennecke8-0/+0
From-SVN: r181030
2011-11-062011-11-6 Richard Guenther <rguenther@suse.de>Richard Guenther2-1/+9
* ipa-prop.c (ipa_modify_call_arguments): Re-compute inlinable flag. From-SVN: r181027
2011-11-06tree-vectorizer.h (vectorizable_condition): Add argument.Ira Rosen9-79/+561
* tree-vectorizer.h (vectorizable_condition): Add argument. * tree-vect-loop.c (vectorizable_reduction): Fail for condition in SLP. Update calls to vectorizable_condition. * tree-vect-stmts.c (vect_is_simple_cond): Add basic block info to the arguments. Pass it to vect_is_simple_use_1. (vectorizable_condition): Add slp_node to the arguments. Support vectorization of basic blocks. Fail for reduction in SLP. Update calls to vect_is_simple_cond and vect_is_simple_use. Support SLP: call vect_get_slp_defs to get vector operands. (vect_analyze_stmt): Update calls to vectorizable_condition. (vect_transform_stmt): Likewise. * tree-vect-slp.c (vect_create_new_slp_node): Handle COND_EXPR. (vect_get_and_check_slp_defs): Handle COND_EXPR. Allow pattern def stmts. (vect_build_slp_tree): Handle COND_EXPR. (vect_analyze_slp_instance): Push pattern statements to root node. (vect_get_constant_vectors): Fix comments. Handle COND_EXPR. From-SVN: r181026
2011-11-05More improvements to sparc VIS vec_init code generation.David S. Miller17-100/+743
gcc/ * config/sparc/sparc.md (UNSPEC_SHORT_LOAD): New unspec. (zero-extend_v8qi_vis, zero_extend_v4hi_vis): New expanders. (*zero_extend_v8qi_<P:mode>_insn, *zero_extend_v4hi_<P:mode>_insn): New insns. * config/sparc/sparc.c (vector_init_move_words, vector_init_prepare_elts, sparc_expand_vector_init_vis2, sparc_expand_vector_init_vis1): New functions. (vector_init_bshuffle): Rewrite to handle more cases and make use of locs[] array prepared by vector_init_prepare_elts. (vector_init_fpmerge, vector_init_faligndata): Delete. (sparc_expand_vector_init): Rewrite using new infrastructure. gcc/testsuite/ * lib/test-supports.exp (check_effective_target_ultrasparc_vis2_hw): New proc. (check_effective_target_ultrasparc_vis3_hw): New proc. * gcc.target/sparc/vec-init-1.inc: New vector init common code. * gcc.target/sparc/vec-init-2.inc: Likewise. * gcc.target/sparc/vec-init-3.inc: Likewise. * gcc.target/sparc/vec-init-1-vis1.c: New test. * gcc.target/sparc/vec-init-1-vis2.c: New test. * gcc.target/sparc/vec-init-1-vis3.c: New test. * gcc.target/sparc/vec-init-2-vis1.c: New test. * gcc.target/sparc/vec-init-2-vis2.c: New test. * gcc.target/sparc/vec-init-2-vis3.c: New test. * gcc.target/sparc/vec-init-3-vis1.c: New test. * gcc.target/sparc/vec-init-3-vis2.c: New test. * gcc.target/sparc/vec-init-3-vis3.c: New test. From-SVN: r181024
2011-11-06Daily bump.GCC Administrator1-1/+1
From-SVN: r181021
2011-11-05* decl.c (cp_finish_decl): Mostly revert previous change.Jason Merrill2-5/+11
From-SVN: r181017
2011-11-05config.gcc (epiphany-*-*): New architecture.Joern Rennecke37-9/+7723
gcc: * config.gcc (epiphany-*-*): New architecture. (epiphany-*-elf): New configuration. * config/epiphany, common/config/epiphany : New directories. * doc/extend.texi (disinterrupt attribute): Add Epiphany. (interrupt attribute): Add Epiphany. (long_call, short_call attribute): Add Epiphany. * doc/invoke.texi (Options): Add Epiphany options. * doc/md.texi (Machine Constraints): Add Epiphany constraints. * doc/install.texi (Options specification): Add --with-stack-offset=@var{num} description. (host/target specific issues): Add epiphany-*-elf. * doc/contrib.texi (Contributors): Mention Epiphany port. gcc/testsuite: * gcc.c-torture/execute/ieee/mul-subnormal-single-1.x: Disable test on Epiphany. * gcc.c-torture/execute/20101011-1.c: Disable test on Epiphany. * gcc.dg/stack-usage-1.c [__epiphany__] (SIZE): Define. * gcc.dg/pragma-pack-3.c: Disable test on Epiphany. * g++.dg/parse/pragma3.C: Likewise. * stackalign/builtin-apply-2.c (STACK_ARGUMENTS_SIZE): Define. (bar): Use it. * gcc.dg/weak/typeof-2.c [epiphany-*-*]: Add option -mshort-calls. * gcc.dg/tls/thr-cse-1.c: Likewise. * g++.dg/opt/devirt2.C: Likewise. * gcc.dg/20020312-2.c [epiphany-*-*] (PIC_REG): Define. * gcc.dg/builtin-apply2.c [__epiphany__]: (STACK_ARGUMENTS_SIZE): 20. * gcc.target/epiphany: New directory. libgcc: * config.host (epiphany-*-elf*): New configuration. * config/epiphany: New Directory. contrib: * contrib-list.mk: Add Epiphany configurations. From-SVN: r181016
2011-11-05quad_2.f90: New.Tobias Burnus2-4/+71
2011-11-05 Tobias Burnus <burnus@net-b.de> * gfortran.dg/quad_2.f90: New. From-SVN: r181015
2011-11-05re PR tree-optimization/50693 (Loop optimization restricted by GOTOs)Jakub Jelinek11-7/+122
PR tree-optimization/50693 * tree-cfg.c (gimple_can_merge_blocks_p): Allow merging with non-forced user labels. (gimple_merge_blocks): Turn non-forced user labels into debug bind stmt with the label as first operand and reset value. (gimple_duplicate_bb): Don't duplicate label debug stmts. * dwarf2out.c (gen_label_die): Handle NOTE_INSN_DELETED_DEBUG_LABEL. * final.c (final_scan_insn): Likewise. (rest_of_clean_state): Don't dump NOTE_INSN_DELETED_DEBUG_LABEL. * var-tracking.c (debug_label_num): New variable. (delete_debug_insns): Don't delete DEBUG_INSNs for LABEL_DECLs, instead turn them into NOTE_INSN_DELETED_DEBUG_LABEL notes. * cfglayout.c (skip_insns_after_block, duplicate_insn_chain): Handle NOTE_INSN_DELETED_DEBUG_LABEL. (duplicate_insn_chain): Don't duplicate LABEL_DECL DEBUG_INSNs. * insn-notes.def (DELETED_DEBUG_LABEL): New note kind. * print-rtl.c (print_rtx): Handle NOTE_INSN_DELETED_DEBUG_LABEL. * gengtype.c (adjust_field_rtx_def): Likewise. * config/i386/i386.c (ix86_output_function_epilogue): For MachO clear CODE_LABEL_NUMBER of NOTE_INSN_DELETED_DEBUG_LABEL if their are at the end of function and nop hasn't been emitted. * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Likewise. From-SVN: r181014
2011-11-05Fix typo in entry for r180962.Georg-Johann Lay1-1/+1
From-SVN: r181012
2011-11-05re PR rtl-optimization/50448 (Missed optimization accessing struct component ↵Georg-Johann Lay2-2/+20
with integer address) PR rtl-optimization/50448 * cprop.c (try_replace_reg): Also try to replace uses of FROM that appear in SET_DEST. From-SVN: r181011
2011-11-05Tweak previous commitEric Botcazou1-0/+1
From-SVN: r181010
2011-11-05strlenopt-22g.c: New wrapper around...Eric Botcazou3-4/+21
* gcc.dg/strlenopt-22g.c: New wrapper around... * gcc.dg/strlenopt-22.c: ...this. Do not define USE_GNU and adjust. From-SVN: r181009
2011-11-05Fix malformated ChangeLog entries.Ralf Corsepius1-2/+2
From-SVN: r181007
2011-11-05rtems.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Extend rs6000_spe handling.Peter Dufault2-0/+10
2011-11-05 Peter Dufault <dufault@hda.com>, Sebastian Huber <sebastian.huber@embedded-brains.de> * config/rs6000/rtems.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Extend rs6000_spe handling. Co-Authored-By: Sebastian Huber <sebastian.huber@embedded-brains.de> From-SVN: r181006
2011-11-05t-rtems: Add -mcpu=8540/-mfloat-gprs=double multilib.Ralf Corsepius3-18/+43
2011-11-05 Ralf Corsépius <ralf.corsepius@rtems.org> * config/rs6000/t-rtems: Add -mcpu=8540/-mfloat-gprs=double multilib. Remove -mcpu=601 multilib. Remove -Dmpc8260 multilib. * config/rs6000/rtems.h: Allow --float-gprs=... to override grps on E500 targets. From-SVN: r181005
2011-11-04re PR c++/26714 (violation of [class.temporary]/5)Jason Merrill5-1/+140
PR c++/26714 * init.c (perform_member_init): Strip TARGET_EXPR around NSDMI. Do temporary lifetime extension. From-SVN: r181002
2011-11-04re PR c++/48370 (G++ fails to extend reference temporary lifetime in some ↵Jason Merrill4-10/+18
situations) PR c++/48370 * decl.c (cp_finish_decl): Run cleanups in the right order. From-SVN: r181001
2011-11-05Piledriver f16cintrin.h fix.Quentin Neill3-59/+104
2011-11-04 Quentin Neill <quentin.neill@amd.com> Piledriver f16cintrin.h fix. * config/i386/f16cintrin.h: Contents moved from immintrin.h. * config/config.gcc: Add f16cintrin.h. From-SVN: r180999
2011-11-05Daily bump.GCC Administrator1-1/+1
From-SVN: r180996
2011-11-04Fix select { case v, ok := <-c: }.Ian Lance Taylor2-4/+49
From-SVN: r180992
2011-11-04re PR c++/50608 (cannot apply 'offsetof' to a non-constant address)Eric Botcazou11-46/+75
2011-11-04 Eric Botcazou <ebotcazou@adacore.com> PR c++/50608 * c-parser.c (c_parser_postfix_expression) <RID_OFFSETOF>: Adjust call to fold_offsetof. * c-typeck.c (build_unary_op) <ADDR_EXPR>: Call fold_offsetof_1. c-family/ * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1. (fold_offsetof_1): Make global.  Remove STOP_REF argument and adjust. <INDIRECT_REF>: Return the argument. <ARRAY_REF>: Remove special code for negative offset. Call fold_build_pointer_plus instead of size_binop. (fold_offsetof): Remove STOP_REF argument and adjust. * c-common.h (fold_offsetof_1): Declare. (fold_offsetof): Remove STOP_REF argument. cp/ * semantics.c (finish_offsetof): Adjust call to fold_offsetof. * typeck.c (cp_build_addr_expr_1): Call fold_offsetof_1. From-SVN: r180986
2011-11-05reload1.c (gen_reload): Don't use REGNO on SUBREGs.Alan Modra3-6/+10
* reload1.c (gen_reload): Don't use REGNO on SUBREGs. * print-rtl.c (print_rtx): Don't segfault on negative regno. From-SVN: r180983
2011-11-04Fix sparc regression due to recent movcc pattern changes.David S. Miller2-7/+15
PR target/49965 * config/sparc/sparc.c (sparc_expand_conditional_move): Handle the fact that sparc_emit_float_lib_cmp modifies the comparison in operands[1]. From-SVN: r180982
2011-11-04config.gcc (bfin*-rtems*): Add newlib-stdint.h.Ralf Corsepius3-0/+27
2010-10-09 Ralf Corsépius <ralf.corsepius@rtems.org> * config.gcc (bfin*-rtems*): Add newlib-stdint.h. * config.gcc (lm32*-rtems*): Add newlib-stdint.h. From-SVN: r180974
2011-11-04gcc-dg.exp (gcc_force_conventional_output): New global variable, default ↵Hans-Peter Nilsson3-0/+39
empty, -ffat-lto-objects for effective_target_lto. * lib/gcc-dg.exp (gcc_force_conventional_output): New global variable, default empty, -ffat-lto-objects for effective_target_lto. (gcc-dg-test-1): Add options from dg-final methods. * lib/scanasm.exp (scan-assembler_required_options) (scan-assembler-not_required_options): New procs. From-SVN: r180972
2011-11-04typeck.c (build_indirect_ref): Use ATTRIBUTE_UNUSED.Paolo Carlini3-3/+8
2011-11-04 Paolo Carlini <paolo.carlini@oracle.com> * typeck.c (build_indirect_ref): Use ATTRIBUTE_UNUSED. * mangle.c (write_unnamed_type_name): Likewise. From-SVN: r180970
2011-11-04parser.c (cp_parser_enumerator_list): Do not warn about trailing commas in ↵Magnus Fromreide5-2/+26
C++0x mode. * parser.c (cp_parser_enumerator_list): Do not warn about trailing commas in C++0x mode. From-SVN: r180967
2011-11-04re PR target/50979 (architecture mismatch: "mul32" not enabled for "smul" or ↵Eric Botcazou2-0/+6
"umul") PR target/50979 * config/sparc/sparc.h (ASM_CPU_SPEC): Pass -Av8 if -mcpu=v8. From-SVN: r180966
2011-11-04re PR c++/50965 (C++11 Non static member initializer are not run when class ↵Olivier Goffart5-5/+23
is initialized with {}) PR c++/50965 * class.c (check_field_decls): NSDMI makes a class non-aggregate. Co-Authored-By: Jason Merrill <jason@redhat.com> From-SVN: r180965
2011-11-04re PR rtl-optimization/38644 (Optimization flag -O1 -fschedule-insns2 causes ↵Jiangning Liu4-0/+25
wrong code) 2011-11-04 Jiangning Liu <jiangning.liu@arm.com> PR rtl-optimization/38644 * config/arm/arm.c (thumb1_expand_epilogue): Add memory barrier for epilogue having stack adjustment. testcase: * gcc.target/arm/stack-red-zone.c: New. From-SVN: r180964
2011-11-04re PR c++/48420 (Missed -Wconversion-null warning when passing const bool to T*)Paolo Carlini4-1/+21
/cp 2011-11-04 Paolo Carlini <paolo.carlini@oracle.com> PR c++/48420 * call.c (conversion_null_warnings): For 'false' to NULL pointer, just check that TREE_TYPE (expr) is a BOOLEAN_TYPE. /testsuite 2011-11-04 Paolo Carlini <paolo.carlini@oracle.com> PR c++/48420 * g++.dg/warn/Wconversion-null-3.C: New. From-SVN: r180963
2011-11-04re PR target/50931 ([avr] Support a 24-bit scalar integer mode)Georg-Johann Lay7-94/+1282
gcc/ PR target/50931 * config/avr/avr-modes.def: New file defining PSImode. * config/avr/avr-c.c (__INT24_MAX__, __INT24_MIN__, __UINT24_MAX__): New built-in defines. * config/avr/avr.md (adjust_len): Add tstpsi, mov24, reload_in24, ashlpsi, ashrpsi, lshrpsi. (QISO, QIDI, HISI, HIDI, MPUSH, rotx, rotsmode): Add PSI. (MOVMODE): New mode iterator. (movpsi): New expander. (movqi, movhi, movsi, movsf, movpsi): Write as one using MOVMODE. (*reload_inpsi, *movpsi): New insns. (*reload_inpsi): New RTL peephole. (addpsi3, *addpsi3_zero_extend.qi, *addpsi3_zero_extend.hi, *addpsi3_sign_extend.hi): New insns. (subpsi3, *subpsi3_zero_extend.qi, *subpsi3_zero_extend.hi, *subpsi3_sign_extend.hi): New insns. (divmodpsi4, udivmodpsi4): New define insn-and-split. (*divmodpsi4_call, *udivmodpsi4_call): New insns. (andpsi3, iorpsi3, xorpsi3): New insns. (*rotlpsi2.1, *rotlpsi2.23): New insns. (*rotw<mode>): Insn condition only allow even-sized modes. (*rotb<mode>): Insn condition allows odd-sized modes. (ashlpsi3, ashrpsi3, lshrpsi3, *addpsi3.lt0): New insns. (negpsi2, one_cmplpsi2): New insns. (extendqipsi2, extendhipsi2, extendpsisi2): New insns. (zero_extendqipsi2, zero_extendhipsi2, zero_extendpsisi2): New insn-and-splits. (*cmppsi, *negated_tstpsi, *reversed_tstpsi): New insns. (cbranchpsi4): New expander. * config/avr/constraints.md (Ca3, Co3, Cx3): New constraints. * config/avr/avr-protos.h (avr_out_tstpsi, avr_out_movpsi, avr_out_ashlpsi3, avr_out_ashrpsi3, avr_out_lshrpsi3, avr_out_reload_inpsi): New prototypes. * config/avr/avr.c (TARGET_SCALAR_MODE_SUPPORTED_P): Define to... (avr_scalar_mode_supported_p): ...this new static function. (avr_asm_len): Always return "". (avr_out_load_psi, avr_out_store_psi): New static functions. (avr_out_movpsi, avr_out_reload_inpsi): New functions. (avr_out_tstpsi): New function. (avr_out_ashlpsi3, avr_out_ashrpsi3, avr_out_lshrpsi3): New functions. (avr_out_plus_1, output_reload_in_const): Handle 3-byte types. (avr_simplify_comparison_p): Ditto. (adjust_insn_length): Handle ADJUST_LEN_RELOAD_IN24, ADJUST_LEN_MOV24, ADJUST_LEN_TSTPSI, ADJUST_LEN_ASHLPSI, ADJUST_LEN_ASHRPSI, ADJUST_LEN_LSHRPSI. (avr_rtx_costs_1): Report PSI costs. (avr_libcall_value): Handle odd-sized parameters. (avr_init_builtin_int24): New static function to define built-in 24-bit types __int24 and __uint24. (avr_init_builtins): Use it. libgcc/ PR target/50931 * config/t-avr (LIB1ASMFUNCS): Add _divmodpsi4, _udivmodpsi4. * config/lib1funcs.S (__udivmodpsi4, __divmodpsi4): New functions. From-SVN: r180962
2011-11-04re PR c++/50941 ([C++0x] user-defined string literals provide incorrect ↵Ed Smith-Rowland4-2/+58
length for wchar_t, char16_t, and char32_t) PR c++/50941 * parser.c (cp_parser_userdef_string_literal): Fix string length. From-SVN: r180961
2011-11-04* gcc-interface/Make-lang.in: Update dependencies.Arnaud Charlet2-5/+10
From-SVN: r180960
2011-11-04re PR target/50980 (arm-rtems multilib not matching for -mfpu=vfp ↵Thomas Doerfler3-4/+45
-mfloat-abi=soft) 2011-11-04 Thomas Doerfler <thomas.doerfler@embedded-brains.de> PR target/50980 * config/arm/rtems-elf.h, config/arm/t-rtems: Add optional support for VFP floating point model. From-SVN: r180959
2011-11-04Minor reformatting.Arnaud Charlet1-2/+1
From-SVN: r180957
2011-11-04gnat_ugn.texi (Performance Considerations): New sub-section.Eric Botcazou1-4/+102
2011-11-04 Eric Botcazou <ebotcazou@adacore.com> * gnat_ugn.texi (Performance Considerations) <Vectorization of loops>: New sub-section. <Other Optimization Switches>: Minor tweak. From-SVN: r180956
2011-11-04[multiple changes]Arnaud Charlet11-13/+89
2011-11-04 Robert Dewar <dewar@adacore.com> * sprint.adb (Sprint_Node_Actual, case Qualified_Expression): Avoid junk semicolon after argument of machine code Asm operand. 2011-11-04 Robert Dewar <dewar@adacore.com> * exp_ch11.adb (Generate_Push_Pop): Inhibit push/pop nodes in CodePeer mode or if restriction No_Exception_Handlers is present. * exp_ch6.adb (Expand_N_Subprogram_Body): (Inhibit push/pop nodes in CodePeer mode or if restriction No_Exception_Handlers is present. 2011-11-04 Robert Dewar <dewar@adacore.com> * s-tassta.adb, atree.ads, errout.adb, sinput.adb: Minor reformatting. 2011-11-04 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Specification): The specification is legal if it is a function that returns an abstract type, if it comes from an attribute renaming of a stream attribute of an abstract type. 2011-11-04 Gary Dismukes <dismukes@adacore.com> * exp_util.adb (Is_Possibly_Unaligned_Object): In case of indexed components, check whether recursively check whether the prefix denotes an unaligned object. 2011-11-04 Ed Schonberg <schonberg@adacore.com> * sem_prag.adb (Analyze_Pragma, case Debug): The argument of the pragma is legal if it is an expanded name that denotes a procedure that be can called without parameters. 2011-11-04 Eric Botcazou <ebotcazou@adacore.com> * gnat_ugn.texi (Performance Considerations) <Vectorization of loops>: New sub-section. <Other Optimization Switches>: Minor tweak. From-SVN: r180955
2011-11-04[multiple changes]Arnaud Charlet13-31/+149
2011-11-04 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Minor reformatting. 2011-11-04 Matthew Heaney <heaney@adacore.com> * a-convec.adb, a-coinve.adb, a-cobove.adb (Merge): Raise PE when Target and Source denote same non-empty object * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb (Merge): Ditto 2011-11-04 Robert Dewar <dewar@adacore.com> * exp_attr.adb: Minor reformatting. 2011-11-04 Ed Schonberg <schonberg@adacore.com> * exp_ch5.adb (Expand_Assign_Record): Do not generate a discriminant assignment within an initialization proc if the record is an unchecked union, as it can only come from the initialization of an unchecked union component. 2011-11-04 Robert Dewar <dewar@adacore.com> * gnat_ugn.texi: Minor reformatting. 2011-11-04 Robert Dewar <dewar@adacore.com> * par-labl.adb (Rewrite_As_Loop): Generate info msg rather than warning message. 2011-11-04 Robert Dewar <dewar@adacore.com> * exp_ch4.adb: Minor code reorganization (remove junk obsolete var Save_Space). From-SVN: r180954
2011-11-04exp_alfa.adb: Add local constant Disable_Processing_Of_Renamings;Hristian Kirtchev3-49/+52
2011-11-04 Hristian Kirtchev <kirtchev@adacore.com> * exp_alfa.adb: Add local constant Disable_Processing_Of_Renamings; (Expand_Alfa_N_Object_Renaming_Declaration): Disable the name evaluation of object renamings for now. (Expand_Potential_Renaming): Do not perform the substitution for now. * exp_util.adb (Remove_Side_Effects): Remove processing for functions with side effects in Alfa mode. From-SVN: r180953
2011-11-04[multiple changes]Arnaud Charlet7-39/+158
2011-11-04 Gary Dismukes <dismukes@adacore.com> * bindgen.adb (Gen_Elab_Calls): In the case of the AAMP target, set elaboration entities to 1 rather than incrementing. 2011-11-04 Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Install_Limited_With_Unit): To establish the proper entities on the ancestors of a child unit that appear in a limited_with clause, follow the unit links because the units are not analyzed and scope information is incomplete. 2011-11-04 Eric Botcazou <ebotcazou@adacore.com> * exp_ch4.adb (Expand_N_Selected_Component): Refine code setting the Atomic_Sync_Required flag to detect one more case. * exp_util.adb (Activate_Atomic_Synchronization): Refine code setting the Atomic_Sync_Required flag to exclude more cases, depending on the parent of the node to be examined. 2011-11-04 Bob Duff <duff@adacore.com> * g-excact.adb: Minor: use named notation. 2011-11-04 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb: Improve error messages for illegal iterators. From-SVN: r180952
2011-11-04[multiple changes]Arnaud Charlet7-136/+254
2011-11-04 Hristian Kirtchev <kirtchev@adacore.com> * exp_alfa.adb: Add with and use clauses for Exp_Ch8 and Sem_Util. (Expand_Alfa): Alphabetize cases on first choice. Add processing for object renaming declarations, identifiers and expanded names. (Expand_Alfa_N_In): Remove useless return. (Expand_Alfa_N_Object_Renaming_Declaration): New routine. (Expand_Potential_Renaming): New routine. * exp_ch8.adb (Evaluate_Name): Moved to the top level. (Expand_N_Object_Declaration): Alphabetize local variables. Move Evaluate_Name out to the top level. * exp_ch8.ads (Evaluate_Name): Moved from body to package spec. * exp_util.adb (Remove_Side_Effects): Add processing for functions with side effects in Alfa mode. 2011-11-04 Hristian Kirtchev <kirtchev@adacore.com> * gnat_rm.texi: Add entries for restrictions No_Relative_Delay, No_Requeue_Statements and No_Stream_Optimizations. 2011-11-04 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb: Set type of entity in prefixed call, for completeness in a generic context. From-SVN: r180951
2011-11-04[multiple changes]Arnaud Charlet10-83/+125
2011-11-04 Yannick Moy <moy@adacore.com> * sem_prag.adb: Minor refactoring (renaming of a parameter). 2011-11-04 Robert Dewar <dewar@adacore.com> * atree.ads: Minor reformatting. 2011-11-04 Robert Dewar <dewar@adacore.com> * checks.adb (Atomic_Synchronization_Disabled): Check -gnatd.d and -gnatd.e here * exp_ch2.adb (Expand_Entity_Reference): Use Activate_Atomic_Synchronization * exp_ch4.adb (Expand_N_Explicit_Dereference): Use Activate_Atomic_Synchronization (Expand_N_Indexed_Compoonent): Activate_Atomic_Synchronization (Expand_N_Selected_Component): Use Activate_Atomic_Synchronization * exp_util.ads, exp_util.adb (Activate_Atomic_Synchronization): New procedure. * sinfo.ads, sinfo.adb (Atomic_Sync_Required): Can now apply to N_Selected_Component node From-SVN: r180950
2011-11-04sem_prag.adb, [...]: Minor reformatting.Robert Dewar5-12/+22
2011-11-04 Robert Dewar <dewar@adacore.com> * sem_prag.adb, atree.ads, prj-env.adb, prj-env.ads: Minor reformatting. From-SVN: r180949
2011-11-04[multiple changes]Arnaud Charlet14-230/+470
2011-11-04 Yannick Moy <moy@adacore.com> * atree.adb, atree.ads (Set_Original_Node): New set procedure. * sem_ch13.adb (Analyze_Aspect_Specifications/Pre_Post_Aspects): In ASIS mode, no splitting of aspects between conjuncts. (Analyze_Aspect_Specifications/Aspect_Test_Case): Make pragma expressions refer to the original aspect expressions through the Original_Node link. This is used in semantic analysis for ASIS mode, so that the original expression also gets analyzed. * sem_prag.adb (Preanalyze_TC_Args, Check_Precondition_Postcondition, Analyze_Pragma/Pragma_Test_Case): In ASIS mode, for a pragma generated from a source aspect, also analyze the original aspect expression. (Check_Expr_Is_Static_Expression): New procedure similar to existing procedure Check_Arg_Is_Static_Expression, except called on expression inside pragma. 2011-11-04 Tristan Gingold <gingold@adacore.com> * prj-env.adb, prj-env.ads (Find_Name_In_Path): New function, from Find_Project.Try_Path_Name. (Find_Project): Use Find_Name_In_Path to implement Try_Path_Name. 2011-11-04 Eric Botcazou <ebotcazou@adacore.com> * s-atocou.ads (Atomic_Counter): Remove redundant pragma Volatile. 2011-11-04 Pascal Obry <obry@adacore.com> * projects.texi: Add short description for qualifiers aggregate and aggregate library. 2011-11-04 Matthew Heaney <heaney@adacore.com> * Makefile.rtl, impunit.adb: Added a-cogeso.ad[sb] * a-cgaaso.adb: Replaced implementation with instantiation of Generic_Sort. * a-cogeso.ad[sb] This is the new Ada 2012 unit Ada.Containers.Generic_Sort From-SVN: r180948