aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2014-10-20slsr-19.c: Make robust against operand order changes.Richard Biener3-3/+8
2014-10-20 Richard Biener <rguenther@suse.de> * gcc.dg/tree-ssa/slsr-19.c: Make robust against operand order changes. * gcc.dg/tree-ssa/reassoc-20.c: Likewise. From-SVN: r216465
2014-10-20Makefile.am: Move ctype.cc, ctype_configure_char.cc and ctype_members.cc to ...Jonathan Wakely38-52/+275
* src/c++98/Makefile.am: Move ctype.cc, ctype_configure_char.cc and ctype_members.cc to ... * src/c++11/Makefile.am: Here. * src/c++98/Makefile.in: Regenerate. * src/c++11/Makefile.in: Regenerate. * src/c++98/ctype.cc: Move file to ... * src/c++11/ctype.cc: Here, define ctype_base::blank. * config/abi/pre/gnu.ver: Export ctype_base::blank. * config/locale/generic/ctype_members.cc (ctype<wchar_t>::_M_convert_to_wmask): Handle blank. Update comments. * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::_M_convert_to_wmask): Likewise. * config/os/aix/ctype_base.h (ctype_base::blank): Declare. * config/os/bionic/ctype_base.h (ctype_base::blank): Likewise. * config/os/bsd/darwin/ctype_base.h (ctype_base::blank): Declare. * config/os/bsd/darwin/ctype_inline.h (ctype<char>::is): Use blank. (ctype<wchar_t::do_is): Likewise. * config/os/bsd/dragonfly/ctype_base.h (ctype_base::blank): Declare. * config/os/bsd/dragonfly/ctype_inline.h (ctype<char>::is): Use blank. (ctype<wchar_t::do_is): Likewise. * config/os/bsd/freebsd/ctype_base.h (ctype_base::blank): Declare. * config/os/bsd/freebsd/ctype_inline.h (ctype<char>::is): Use blank. (ctype<wchar_t::do_is): Likewise. * config/os/bsd/netbsd/ctype_base.h (ctype_base::blank): Declare. * config/os/bsd/openbsd/ctype_base.h (ctype_base::blank): Likewise. * config/os/djgpp/ctype_base.h (ctype_base::blank): Likewise. * config/os/generic/ctype_base.h (ctype_base::blank): Declare. * config/os/generic/ctype_inline.h (ctype<char>::is): Use blank. * config/os/gnu-linux/ctype_base.h (ctype_base::blank): Declare. * config/os/hpux/ctype_base.h (ctype_base::blank): Likewise. * config/os/mingw32-w64/ctype_base.h (ctype_base::blank): Declare. * config/os/mingw32-w64/ctype_configure_char.cc (ctype<char>::classic_table()): Set blank bit for space and tab. * config/os/mingw32/ctype_base.h (ctype_base::blank): Declare. * config/os/mingw32/ctype_configure_char.cc (ctype<char>::classic_table()): Set blank bit for space and tab. * config/os/newlib/ctype_base.h (ctype_base::blank): Declare. * config/os/qnx/qnx6.1/ctype_base.h (ctype_base::blank): Likewise. * config/os/solaris/solaris2.10/ctype_base.h (ctype_base::blank): Likewise. * config/os/tpf/ctype_base.h (ctype_base::blank): Likewise. * config/os/uclibc/ctype_base.h (ctype_base::blank): Likewise. * config/os/vxworks/ctype_base.h (ctype_base::blank): Likewise. * include/bits/locale_facets.h (isblank): Define. * include/bits/localefwd.h (isblank): Declare. * testsuite/22_locale/classification/isblank.cc: New. * testsuite/22_locale/ctype_base/blank.cc: New. From-SVN: r216464
2014-10-20tree-vect-slp.c (vect_get_and_check_slp_defs): Try swapping operands to get ↵Richard Biener2-26/+92
a def operand kind match. 2014-10-20 Richard Biener <rguenther@suse.de> * tree-vect-slp.c (vect_get_and_check_slp_defs): Try swapping operands to get a def operand kind match. Signal mismatches to the parent so we can try swapping its operands. (vect_build_slp_tree): Try swapping operands if they have a mismatched operand kind. From-SVN: r216463
2014-10-20re PR debug/60655 (ICE: output_operand: invalid expression as operand)Alan Modra2-17/+30
PR debug/60655 * simplify-rtx.c (simplify_plus_minus): Delete unused "input_ops". Increase "ops" array size. Correct array size tests. Init n_constants in loop. Break out of innermost loop when finding a trivial CONST expression. From-SVN: r216462
2014-10-20re PR tree-optimization/63583 (ICF does not check that the template strings ↵Martin Liska3-0/+13
are the same) PR ipa/63583 * ipa-icf-gimple.c (func_checker::compare_gimple_asm): Gimple tempate string is compared. * gcc.dg/ipa/pr63595.c: New test. From-SVN: r216458
2014-10-20varasm.c (const_alias_set): Remove.Uros Bizjak2-7/+6
* varasm.c (const_alias_set): Remove. (init_varasm_once): Remove initialization of const_alias_set. (build_constant_desc): Do not set alias set to const_alias_set. From-SVN: r216454
2014-10-20PR 63589 Fix splitting of PATH in find_addr2line.Janne Blomqvist5-19/+51
2014-10-20 Janne Blomqvist <jb@gcc.gnu.org> PR libfortran/63589 * configure.ac: Check for strtok_r. * runtime/main.c (gfstrtok_r): Fallback implementation of strtok_r. (find_addr2line): Use strtok_r to split PATH. * config.h.in: Regenerated. * configure: Regenerated. From-SVN: r216449
2014-10-20Daily bump.GCC Administrator1-1/+1
From-SVN: r216447
2014-10-19Fix race in libstdc++ testsuiteMaxim Kuvyrkov2-12/+23
* testsuite/lib/libstdc++.exp (v3-copy-file): New proc split from ... (v3-copy-files): ... this. Update. (check_v3_target_fileio): Fix race on cin_unget-1.txt file. From-SVN: r216444
2014-10-19re PR fortran/48979 (FRACTION und EXPONENT return invalid results for ↵Francois-Xavier Coudert6-30/+178
infinity/NaN) PR fortran/48979 * trans-const.c (gfc_build_nan): New function. * trans-const.h (gfc_build_nan): New prototype. * trans-intrinsic.c (gfc_conv_intrinsic_exponent): Handle special values. (gfc_conv_intrinsic_minmaxval): Use gfc_build_nan. (gfc_conv_intrinsic_fraction): Handle special values. (gfc_conv_intrinsic_spacing): Likewise. (gfc_conv_intrinsic_rrspacing): Likewise. (gfc_conv_intrinsic_set_exponent): Likewise. * gfortran.dg/ieee/intrinsics_2.F90: New test. From-SVN: r216443
2014-10-19Set SECTION_EXCLUDE flag for LTO sections.Ilya Verbin5-16/+29
gcc/ * configure: Regenerate. * configure.ac: Move the test for section attribute specifier "e" in GAS out to all i[34567]86-*-* | x86_64-*-* targets and add --fatal-warnings. * langhooks.c (lhd_begin_section): Set SECTION_EXCLUDE flag. * varasm.c (default_elf_asm_named_section): Guard SECTION_EXCLUDE with ifdef HAVE_GAS_SECTION_EXCLUDE. From-SVN: r216442
2014-10-19md.texi (RTL Template): Correct equivalent match_operand expression.Andreas Schwab2-48/+53
* doc/md.texi (RTL Template) [match_scratch]: Correct equivalent match_operand expression. From-SVN: r216441
2014-10-19re PR c/63567 (Linux kernel build error due to non-static initializers)Marek Polacek5-1/+31
PR c/63567 * c-typeck.c (output_init_element): Allow initializing objects with static storage duration with compound literals even in C99 and add pedwarn for it. * gcc.dg/pr63567-3.c: New test. * gcc.dg/pr63567-4.c: New test. From-SVN: r216440
2014-10-19rs6000.c (rs6000_atomic_assign_expand_fenv): New function.Adhemerval Zanella4-4/+134
2014-10-19 Adhemerval Zanella <azanella@linux.vnet.ibm.com> David Edelsohn <dje.gcc@gmail.com> * config/rs6000/rs6000.c (rs6000_atomic_assign_expand_fenv): New function. (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): New define. * gcc.dg/atomic/c11-atomic-exec-5.c (test_main_long_double_add_overflow): Define and run only for LDBL_MANT_DIG != 106. (test_main_complex_long_double_add_overflow): Likewise. (test_main_long_double_sub_overflow): Likewise. (test_main_complex_long_double_sub_overflow): Likewise. Co-Authored-By: David Edelsohn <dje.gcc@gmail.com> From-SVN: r216437
2014-10-19Daily bump.GCC Administrator1-1/+1
From-SVN: r216432
2014-10-18invoke.texi (Options to Request or Suppress Warnings): Explain options ↵Manuel López-Ibáñez2-8/+22
precedence. 2014-10-18 Manuel López-Ibáñez <manu@gcc.gnu.org> * doc/invoke.texi (Options to Request or Suppress Warnings): Explain options precedence. (Wtrampolines): Do not indent paragraph. From-SVN: r216429
2014-10-18invoke.texi: Update documentation of hppa -mjump-in-delay option.John David Anglin5-181/+36
* doc/invoke.texi: Update documentation of hppa -mjump-in-delay option. * config/pa/pa-protos.h (pa_following_call): Delete declaration. (pa_jump_in_call_delay): Likewise. * config/pa/pa.c (pa_option_override): Remove jump in call delay override. (pa_output_millicode_call): Remove support for jump in call delay. (pa_output_call): Likewise. (pa_jump_in_call_delay): Delete. (pa_following_call): Likewise. * config/pa/pa.md (in_call_delay): Remove jump in delay check. (uncond_branch): Remove following call check from attribute length. From-SVN: r216428
2014-10-18re PR fortran/63553 ([OOP] Wrong code when assigning a CLASS to a TYPE)Paul Thomas4-58/+115
2014-10-18 Paul Thomas <pault@gcc.gnu.org> PR fortran/63553 * resolve.c (resolve_ordinary_assign): Add data component to rvalue expression for class to type assignment. 2014-10-18 Paul Thomas <pault@gcc.gnu.org> PR fortran/63553 * gfortran.dg/class_to_type_3.f03 : New test From-SVN: r216427
2014-10-18pr58314.c: Fix excess failures caused by switch to GNU11.Oleg Endo2-0/+7
gcc/testsuite/ * gcc.target/sh/torture/pr58314.c: Fix excess failures caused by switch to GNU11. From-SVN: r216426
2014-10-18attr-isr.c: Move SH specific test to ...Oleg Endo2-0/+5
gcc/testsuite/ * gcc.dg/attr-isr.c: Move SH specific test to ... * gcc.target/sh/attr-isr.c: ... here. From-SVN: r216425
2014-10-18re PR target/53513 ([SH] Add support for fpchg insn and improve fenv support)Oleg Endo6-155/+147
gcc/ PR target/53513 * config/sh/sh-modes.def (PSI): Remove. * config/sh/sh-protos.h (get_fpscr_rtx): Remove. * config/sh/sh.c (fpscr_rtx, get_fpscr_rtx): Remove. (sh_reorg): Remove commented out FPSCR code. (fpscr_set_from_mem): Use SImode instead of PSImode. Emit lds_fpscr insn instead of move insn. (sh_hard_regno_mode_ok): Return SImode for FPSCR. (sh_legitimate_address_p, sh_legitimize_reload_address): Remove PSImode handling. (sh_emit_mode_set): Emit lds_fpscr and sts_fpscr insns. (sh1_builtin_p): Uncomment. (SH_BLTIN_UV 25, SH_BLTIN_VU 26): New macros. (bdesc): Add __builtin_sh_get_fpscr and __builtin_sh_set_fpscr. * config/sh/sh/predicates.md (fpscr_operand): Simplify. (fpscr_movsrc_operand, fpscr_movdst_operand): New predicates. (general_movsrc_operand, general_movdst_operand): Disallow fpscr_operand. * config/sh/sh.md (FPSCR_FR): New constant. (push_fpscr): Emit sts_fpscr insn. (pop_fpscr): Emit lds_fpscr_insn. (movsi_ie): Disallow FPSCR operands. (fpu_switch, unnamed related split, extend_psi_si, truncate_si_psi): Remove insns. (lds_fpscr, sts_fpscr): New insns. (toggle_sz, toggle_pr): Use SImode for FPSCR_REG instead of PSImode. From-SVN: r216424
2014-10-18compiler: Don't allow tuple assignments to contain duplicate symbols.Ian Lance Taylor1-0/+12
Fixes issue 8436. From-SVN: r216420
2014-10-18Daily bump.GCC Administrator1-1/+1
From-SVN: r216419
2014-10-17re PR c/63567 (Linux kernel build error due to non-static initializers)Marek Polacek6-2/+38
PR c/63567 * c-typeck.c (digest_init): Allow initializing objects with static storage duration with compound literals even in C99 and add pedwarn for it. * gcc.dg/pr61096-1.c: Change dg-error into dg-warning. * gcc.dg/pr63567-1.c: New test. * gcc.dg/pr63567-2.c: New test. From-SVN: r216416
2014-10-17ipa-inline-transform.c (master_clone_with_noninline_clones_p): New.Eric Botcazou2-1/+24
* ipa-inline-transform.c (master_clone_with_noninline_clones_p): New. (clone_inlined_nodes): Do not overwrite the clone if above predicate returns true. From-SVN: r216415
2014-10-17re PR c/63543 (incomplete type error should suppress duplicates)Marek Polacek8-6/+49
PR c/63543 * c-tree.h (C_TYPE_ERROR_REPORTED): Define. * c-typeck.c (build_indirect_ref): Don't print the "dereferencing..." error multiple times. Print the type. * gcc.dg/pr63543.c: New test. * gcc.dg/array-8.c: Remove dg-error. * gcc.dg/pr48552-1.c: Remove and adjust dg-error. * gcc.dg/pr48552-2.c: Likewise. From-SVN: r216414
2014-10-17re PR c/63549 ([4.8/4.9/5] ICE in build_array_ref with invalid code)Marek Polacek4-0/+20
PR c/63549 * c-typeck.c (build_array_ref): Bail if the index in an incomplete type. * gcc.dg/pr63549.c: New test. From-SVN: r216413
2014-10-17c-opts.c (c_common_post_options): Set warn_implicit_int.Marek Polacek10-5/+71
c-family/ * c-opts.c (c_common_post_options): Set warn_implicit_int. * c.opt (Wimplicit-int): Initialize to -1. c/ * c-decl.c (grokdeclarator): Use OPT_Wimplicit_int unconditionally. (start_function): Use OPT_Wimplicit_int instead of 0. (store_parm_decls_oldstyle): Likewise. testsuite/ * gcc.dg/Wimplicit-int-1.c: New test. * gcc.dg/Wimplicit-int-2.c: New test. * gcc.dg/Wimplicit-int-3.c: New test. * gcc.dg/Wimplicit-int-4.c: New test. From-SVN: r216412
2014-10-17AVX512. 63.1 Update permute expanding.Ilya Tocar3-82/+282
gcc/ 2014-10-17 Ilya Tocar <ilya.tocar@intel.com> * config/i386/i386.c (MAX_VECT_LEN): Move earlier. (expand_vec_perm_d): Ditto. (ix86_expand_vec_perm_vpermi2): Handle V8HImode, V16HImode, V32HImode, V32HImode, V4SImode, V8SImode, V4SFmode, V8SFmode, V2DImode, V4DImode, V4DFmode. (ix86_expand_vec_perm): Update call to ix86_expand_vec_perm_vpermi2. (ix86_expand_sse_unpack): Handle V64QImode. (expand_vec_perm_blend): Update conditions for TARGET, handle V8DFmode, V16SFmode, V32HImode, V64QImode, V16SImode, V8DImode. (expand_vec_perm_pshufb): Handle V64QImode. (expand_vec_perm_1): Handle V64QImode, V32HImode, V16SImode, V16SFmode, V8DFmode, V8DImode, V4DFmode, V2DFmode, V8SFmode, V4SFmode. (ix86_expand_vec_perm_const_1): Call ix86_expand_vec_perm_vpermi2. (ix86_vectorize_vec_perm_const_ok): Handle V32HImode, V64QImode. (ix86_expand_vecop_qihi): Handle V64QImode. * config/i386/sse.md (define_mode_iterator VI1_AVX512): New. (define_mode_iterator VEC_PERM_AVX2): Add V32HI. (define_mode_iterator VEC_PERM_CONST): Add V32HI. (define_insn "<ssse3_avx2>_pshufb<mode>3<mask_name>"): Add masking. (mul<mode>3): Use VI1_AVX512. (<sse2_avx2>_packsswb): Ditto. (<sse2_avx2>_packuswb): Ditto. (<ssse3_avx2>_pshufb<mode>3): Ditto. (<shift_insn><mode>3): Ditto. From-SVN: r216405
2014-10-17Fix bootstrap failure.Kirill Yukhin2-15/+11
gcc/ * config/i386/i386.c (ix86_expand_sse2_mulvxdi3): Refactor conditions to fix bootstrap. From-SVN: r216403
2014-10-17gcc-plugin.h: Add tm.h and flattened includes from function.h.Andrew MacLeod4-6/+15
2014-10-17 Andrew MacLeod <amacleod@redhat.com> * gcc-plugin.h: Add tm.h and flattened includes from function.h. * testsuite/g++.dg/plugin/pragma_plugin.c: Revert flattening, only include function.h. From-SVN: r216402
2014-10-17AVX-512. 75/n. Update vec_init.Alexander Ivchenko3-11/+76
gcc/ * config/i386/i386.c (ix86_expand_vector_init_duplicate): Handle V64QI and V32HI modes, update V8HI, V16QI, V32QI modes handling. (ix86_expand_vector_init_general): Handle V64QI and V32HI modes. * config/i386/sse.md (define_mode_iterator VI48F_512): Rename to ... (define_mode_iterator VF48_I1248): ... this. Extend to AVX-512 modes. (define_expand "vec_init<mode>"): Use VF48_I1248. Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com> Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com> Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com> Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com> Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com> Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com> Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com> From-SVN: r216401
2014-10-17AVX-512. 80/n. Extend expand_sse2_mulvxdi3.Alexander Ivchenko2-1/+28
gcc/ * config/i386/i386.c (ix86_expand_sse2_mulvxdi3): Extend expand_sse2_mulvxdi3. Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com> Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com> Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com> Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com> Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com> Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com> Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com> From-SVN: r216400
2014-10-17Fix ChangeLog spacingKyrylo Tkachov1-2/+2
From-SVN: r216399
2014-10-17hexfloat.cc: Add dg-require-string-conversions.Jonathan Wakely3-1/+8
* testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc: Add dg-require-string-conversions. * testsuite/27_io/headers/cstdio/types_std.cc: Test for fpos_t. From-SVN: r216398
2014-10-17Implement the Library Fundamentals v1 variable templates.Ville Voutilainen5-2/+562
2014-10-17 Ville Voutilainen <ville.voutilainen@gmail.com> Implement the Library Fundamentals v1 variable templates. * include/Makefile.am: Add the new header. * include/Makefile.in: Regenerate. * include/experimental/type_traits: New. * testsuite/experimental/type_traits/value.cc: Likewise. From-SVN: r216397
2014-10-17fold-const.c (fold_comparison): Remove redundant constant folding and ↵Richard Biener3-8/+24
operand swapping. 2014-10-17 Richard Biener <rguenther@suse.de> * fold-const.c (fold_comparison): Remove redundant constant folding and operand swapping. (fold_binary_loc): Do comparison operand swapping here. (fold_ternary_loc): Canonicalize operand order for commutative ternary operations. * tree.c (commutative_ternary_tree_code): Add DOT_PROD_EXPR and FMA_EXPR. From-SVN: r216394
2014-10-17re PR tree-optimization/63464 (compare one character to many: faster)Jakub Jelinek11-49/+576
PR tree-optimization/63464 * gimple.h (gimple_seq_discard): New prototype. * gimple.c: Include stringpool.h and tree-ssanames.h. (gimple_seq_discard): New function. * optabs.h (lshift_cheap_p): New prototype. * optabs.c (lshift_cheap_p): New function, moved from... * tree-switch-conversion.c (lshift_cheap_p): ... here. * tree-ssa-reassoc.c: Include gimplify.h and optabs.h. (reassoc_branch_fixups): New variable. (update_range_test): Add otherrangep and seq arguments. Unshare exp. If otherrange is NULL, use for other ranges array of pointers pointed by otherrangep instead. Emit seq before gimplified statements for tem. (optimize_range_tests_diff): Adjust update_range_test caller. (optimize_range_tests_xor): Likewise. Fix up comment. (extract_bit_test_mask, optimize_range_tests_to_bit_test): New functions. (optimize_range_tests): Adjust update_range_test caller. Call optimize_range_tests_to_bit_test. (branch_fixup): New function. (execute_reassoc): Call branch_fixup. * gcc.dg/torture/pr63464.c: New test. * gcc.dg/tree-ssa/reassoc-37.c: New test. * gcc.dg/tree-ssa/reassoc-38.c: New test. From-SVN: r216393
2014-10-17re PR tree-optimization/63302 (Code with 64-bit long long constants is ↵Jakub Jelinek4-2/+74
miscompiled on 32-bit host) PR tree-optimization/63302 * tree-ssa-reassoc.c (optimize_range_tests_xor, optimize_range_tests_diff): Use !integer_pow2p () instead of tree_log2 () < 0. * gcc.c-torture/execute/pr63302.c: New test. From-SVN: r216391
2014-10-17Temporary fix for PR63566.Martin Liska3-2/+13
* ipa-icf.c (sem_function::merge): Local flags are set to false to enforce equal calling convention to be used. * opts.c (common_handle_option): Indentation fix. From-SVN: r216386
2014-10-17[multiple changes]Arnaud Charlet17-66/+165
2014-10-17 Robert Dewar <dewar@adacore.com> * exp_ch9.adb (Expand_N_Task_Body): Add defense against previous errors. * freeze.adb (Freeze_Entity): Add defense against checking null scope for generic. * restrict.adb (Tasking_Allowed): Add test for No_Run_Time mode. * sem_ch13.adb (Freeze_Entity_Checks): Add defense against previous errors. * sem_ch9.adb (Analyze_Task_Type_Declaration): Give error if in No_Run_Time mode. 2014-10-17 Robert Dewar <dewar@adacore.com> * prj-makr.adb: Minor reformatting. 2014-10-17 Robert Dewar <dewar@adacore.com> * gnatcmd.adb, make.adb, prj-part.adb, gnatlink.adb, prj-nmsc.adb, prj-conf.adb, prj-env.adb: Use Is_Directory_Separator where possible. 2014-10-17 Ed Schonberg <schonberg@adacore.com> * exp_prag.adb (Undo_Initialization): If Initialize_Scalars is enabled, code will be generated for some composite types to initialize an object after its declaration. If there is a subsequent Import pragma for the object, that code must be removed as specified byw the semantics of the pragma, and to prevent out-of-order elaboration issues in the back-end. 2014-10-17 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch4.adb (Expand_N_Op_Concat): Keep concatenation operator wrapping mechanism under debug flag -gnatd.h. * debug.adb: Claim debug switch -gnatd.h. From-SVN: r216384
2014-10-17Makefile.in: Enable the socket runtime bits for Android.Doug Rupp2-3/+6
* gcc-interface/Makefile.in: Enable the socket runtime bits for Android. From-SVN: r216383
2014-10-17sem_ch13.adb (Add_Invariants, [...]): Do not perform the replacement on the ↵Ed Schonberg2-10/+31
expression for an inherited class-wide... 2014-10-17 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Add_Invariants, Replace_Type_References): Do not perform the replacement on the expression for an inherited class-wide invariant if in ASIS_Mode and the type reference is already the prefix of a 'Class attribute reference: the expression has already been preanalyzed and the replacement performed when first encountered on the declaration of the parent type. From-SVN: r216382
2014-10-17sem_ch5.adb, [...]: Minor reformatting.Robert Dewar6-21/+31
2014-10-17 Robert Dewar <dewar@adacore.com> * sem_ch5.adb, sem_ch7.adb, prj-nmsc.adb, sem_ch13.adb, exp_ch3.adb: Minor reformatting. From-SVN: r216381
2014-10-17[multiple changes]Arnaud Charlet6-4/+47
2014-10-17 Ed Schonberg <schonberg@adacore.com> * exp_ch3.adb (Build_Component_Invariant_Call): Retrieve Invariant subprogram from base type. * sem_ch7.adb (Analyze_Package_Specification): Build invariant subprogram for private type, not any of its subtypes. * sem_ch13.adb (Build_Invariant_Procedure_Declaration): Set type of procedure entity, because a call to it may be generated in a client unit before the corresponding subprogram declaration is analyzed. 2014-10-17 Vincent Celier <celier@adacore.com> * prj-nmsc.adb (Get_Directories): Do not create directories when a project is abstract. 2014-10-17 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb (Analyze_Iterator_Specification): If the domain of iteration is given by an expression that is not an array type, verify that its type implements an iterator iterface. From-SVN: r216380
2014-10-17[multiple changes]Arnaud Charlet19-445/+704
2014-10-17 Robert Dewar <dewar@adacore.com> * sem_attr.adb (Eval_Attribute): Ensure that attribute reference is not marked as being a static expression if the prefix evaluation raises CE. 2014-10-17 Robert Dewar <dewar@adacore.com> * exp_pakd.adb: Move bit packed entity tables to spec. * exp_pakd.ads: Move bit packed entity tables here from body. * freeze.adb (Freeze_Array_Type): Check that packed array type is supported. * rtsfind.adb (PRE_Id_Table): New table (Entity_Not_Defined): Specialize messages using PRE_Id_Table. * uintp.ads, uintp.adb (UI_Image): New functional form. 2014-10-17 Robert Dewar <dewar@adacore.com> * aspects.ads, aspects.adb: Add Suppress_Initialization aspect. * einfo.ads, einfo.adb (Suppress_Initialization): Now applies to E_Variable. * exp_ch3.adb (Default_Initialize_Object): Handle Suppress_Initialization. * exp_prag.adb (Expand_Pragma_Suppress_Initialization): New procedure (Expand_N_Pragma): Handle Suppress_Initialization (Expand_Pragma_Import_Or_Interface): Use Undo_Initialization (Undo_Initialization): New procedure. * sem_prag.adb (Analyze_Pragma, case Suppress_Initialization): This is now allowed for E_Variable case. * gnat_rm.texi: Document new aspect Suppress_Initialization Suppress_Initialization aspect/pragma can apply to variable. * einfo.ads: Minor reformatting. 2014-10-17 Arnaud Charlet <charlet@adacore.com> * spark_xrefs.ads: Add documentation pointer to Flow_Computed_Globals. 2014-10-17 Robert Dewar <dewar@adacore.com> * cstand.adb (Create_Standard): Mark Short_Integer as implementation defined. * sem_util.adb (Set_Entity_With_Checks): Avoid blow up for compiler built with assertions for No_Implementation_Identifiers test. From-SVN: r216379
2014-10-17aspects.ads: Documentation fix, aspect Lock_Free does have a corresponding ↵Robert Dewar3-24/+29
pragma. 2014-10-17 Robert Dewar <dewar@adacore.com> * aspects.ads: Documentation fix, aspect Lock_Free does have a corresponding pragma. * gnat_rm.texi: Document implementation defined boolean aspects as boolean. From-SVN: r216378
2014-10-17[multiple changes]Arnaud Charlet6-52/+155
2014-10-17 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Add_Invariants): For a class-wide type invariant, preserve semantic information on the invariant expression (typically a function call) because it may be inherited by a type extension in a different unit, and it cannot be resolved by visibility elsewhere because it may refer to local entities. 2014-10-17 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Document that string literal can be used for pragma Warnings when operating in Ada 83 mode. 2014-10-17 Ed Schonberg <schonberg@adacore.com> * freeze.adb (Find_Aggregate_Component_Desig_Type): New subsidiary function to Freeze_ Expression, used to determine whether an aggregate for an array of access types also freezes the designated type, when some aggregate components are allocators. 2014-10-17 Ed Schonberg <schonberg@adacore.com> * a-strsea.adb (Find_Token): AI05-031 indicates that the procedure must raise Index_Error when Source is not empty and the From parameter is not within the range of the Source string. 2014-10-17 Robert Dewar <dewar@adacore.com> * sem_prag.adb (Is_Static_String_Expression): Allow string literal in Ada 83 mode. From-SVN: r216377
2014-10-17[multiple changes]Arnaud Charlet3-126/+113
2014-10-17 Vincent Celier <celier@adacore.com> * prj-conf.adb (Get_Config_Switches): In CodePeer mode, do not take into account any compiler command from package IDE. 2014-10-17 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Build_Function_Wrapper): The formals of the wrapper must have the same identifiers as those of the formal subprogram, because calls within the generic may use named associations. From-SVN: r216376
2014-10-17sem_ch3.adb, [...]: Minor reformatting.Robert Dewar4-50/+50
2014-10-17 Robert Dewar <dewar@adacore.com> * sem_ch3.adb, a-strsea.adb: Minor reformatting. * par-ch6.adb (P_Subprogram): Fix bad handling of null procedures. From-SVN: r216375