Yury Gribov [Wed, 14 May 2014 08:33:45 +0000 (08:33 +0000)]
re PR sanitizer/61100 (asan/tsan should have the sanitizer includes)
2014-05-14 Yury Gribov <y.gribov@samsung.com>
PR sanitizer/61100
* Makefile.am (nodist_saninclude_HEADERS): Install
public headers.
* Makefile.in: Regenerate.
* c-c++-common/asan/asan-interface-1.c: New test.
* lib/asan-dg.exp (asan_include_flags): New function.
(asan_init): Call asan_include_flags to obtain path
to sanitizer headers.
From-SVN: r210413
GCC Administrator [Wed, 14 May 2014 00:17:12 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r210410
Peter Bergner [Tue, 13 May 2014 23:44:42 +0000 (18:44 -0500)]
sourcebuild.texi: (dfp_hw): Document.
gcc/
* doc/sourcebuild.texi: (dfp_hw): Document.
(p8vector_hw): Likewise.
(powerpc_eabi_ok): Likewise.
(powerpc_elfv2): Likewise.
(powerpc_htm_ok): Likewise.
(ppc_recip_hw): Likewise.
(vsx_hw): Likewise.
gcc/testsuite/
* lib/target-support.exp (check_dfp_hw_available): New function.
(is-effective-target): Check $arg for dfp_hw.
(is-effective-target-keyword): Likewise.
* gcc.target/powerpc/pack03.c: (dg-require-effective-target):
Change target to dfp_hw.
From-SVN: r210404
Eric Botcazou [Tue, 13 May 2014 21:17:07 +0000 (21:17 +0000)]
* gcc-interface/decl.c (annotate_value): Fix thinko in latest change.
From-SVN: r210403
Jason Merrill [Tue, 13 May 2014 21:10:03 +0000 (17:10 -0400)]
call.c (print_error_for_call_failure): Say "no match" rather than "ambiguous" if there were no strict matches.
* call.c (print_error_for_call_failure): Say "no match" rather
than "ambiguous" if there were no strict matches.
(build_new_method_call_1): Likewise.
From-SVN: r210402
Cary Coutant [Tue, 13 May 2014 17:55:30 +0000 (17:55 +0000)]
Force the use of -ggnu-pubnames when using -gsplit-dwarf.
gcc/
* opts.c (finish_options): Use -ggnu-pubnames with -gsplit-dwarf.
From-SVN: r210395
Jason Merrill [Tue, 13 May 2014 17:54:00 +0000 (13:54 -0400)]
re PR c++/61151 (ICE with lambda)
PR c++/61151
* semantics.c (is_this_parameter): Allow capture proxies too.
From-SVN: r210394
Marek Polacek [Tue, 13 May 2014 17:41:12 +0000 (17:41 +0000)]
re PR c/61162 (possibly bad error location with -Wc++-compat)
PR c/61162
* c-typeck.c (convert_for_assignment): Pass location to
WARN_FOR_ASSIGNMENT instead of input_location.
* gcc.dg/pr61162.c: New test.
From-SVN: r210393
Marek Polacek [Tue, 13 May 2014 17:37:40 +0000 (17:37 +0000)]
pr50459.c: Move cdtor tests to a separate testcase.
* c-c++-common/pr50459.c: Move cdtor tests to a separate testcase.
* c-c++-common/pr50459-2.c: New test.
From-SVN: r210390
Jonathan Wakely [Tue, 13 May 2014 17:22:08 +0000 (18:22 +0100)]
re PR libstdc++/60497 (unique_ptr<T> tries to complete its type T even though it's not required to be a complete type)
PR libstdc++/60497
* include/debug/array (get): Qualify call to other get overload.
* include/profile/array (get): Likewise.
* include/std/array (get): Likewise.
* include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
* include/std/mutex (unique_lock, call_once): Use __addressof.
(__unlock_impl): Remove unused template.
(__try_to_lock): Declare inline.
(__try_lock_impl::__do_try_lock): Qualify function calls.
(lock): Avoid narrowing conversion.
* testsuite/20_util/bind/60497.cc: New.
* testsuite/23_containers/array/element_access/60497.cc: New.
* testsuite/30_threads/call_once/60497.cc: New.
* testsuite/30_threads/unique_lock/cons/60497.cc: New.
From-SVN: r210388
Bernd Edlinger [Tue, 13 May 2014 16:23:11 +0000 (16:23 +0000)]
Enable Java on Cygwin-64
Currently it is not possible to build GCC's libjava support on Cygwin-64.
This patch fixes the current build-problems on Cygwin-64 and the most
fundamental bugs on that platform.
Note you must still add --enable-threads=posix to successfully build the
java language support.
boehm-gc/ChangeLog:
2014-05-13 Bernd Edlinger <bernd.edlinger@hotmail.de>
Fix current cygwin-64 build problems.
* include/gc_config_macros.h (GC_PTHREADS): Use __CYGWIN__ instead
of __CYGWIN32__ here.
* win32_threads.c (GC_push_all_stacks): Push all X86_64 registers.
(GC_get_thread_stack_base): Get the stack base for X86_64.
libffi/ChangeLog:
2014-05-13 Bernd Edlinger <bernd.edlinger@hotmail.de>
Fix current cygwin-64 build problems.
* src/java_raw_api.c: Remove if !defined(FFI_NO_RAW_API).
* src/x86/ffi.c: Add if defined(__CYGWIN__).
* src/x86/win64.S (ffi_closure_win64, ffi_call_win64): Added
handling for FFI_TYPE_UINT64, FFI_TYPE_POINTER and FFI_TYPE_INT.
Added SEH information. Fixed formatting.
libgcc/ChangeLog:
2014-05-13 Bernd Edlinger <bernd.edlinger@hotmail.de>
* unwind-seh.c (_Unwind_Backtrace): Uncommented, finished
implementation.
libjava/ChangeLog:
2014-05-13 Bernd Edlinger <bernd.edlinger@hotmail.de>
Fix current cygwin-64 build problems.
* configure.host: Added handling for x86_64-*-cygwin/mingw.
* boehm.cc (_Jv_GCAttachThread, _Jv_GCDetachThread): Don't compile if
GC_WIN32_THREADS is defined.
* java/lang/natClass.cc (_Jv_InterfaceAssignableFrom): Rename interface
to source_interface.
libjava/classpath/ChangeLog:
2014-05-13 Bernd Edlinger <bernd.edlinger@hotmail.de>
Fix current cygwin-64 build problems.
* native/fdlibm/mprec.c (_REENT_CHECK_MP, _REENT_MP_FREELIST,
_REENT_MP_P5S, __ULong, __Long): Undefine previous definitions.
From-SVN: r210386
Paolo Carlini [Tue, 13 May 2014 16:14:19 +0000 (16:14 +0000)]
re PR c++/54310 (Order of operations during overload resolution)
2014-05-13 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/54310
* g++.dg/template/pr54310.C: New.
From-SVN: r210385
David Malcolm [Tue, 13 May 2014 15:17:34 +0000 (15:17 +0000)]
gengtype: Support explicit pointers in template arguments
gcc/
2014-05-13 David Malcolm <dmalcolm@redhat.com>
* gengtype-parse.c (require3): Eliminate in favor of...
(require4): New.
(require_template_declaration): Update to support optional single *
on a type.
* gengtype.c (get_ultimate_base_class): Add a non-const overload.
(create_user_defined_type): Handle a single level of explicit
pointerness within template arguments.
(struct write_types_data): Add field "kind".
(filter_type_name): Handle "*" character.
(write_user_func_for_structure_ptr): Require a write_types_data
rather than just a prefix string, so that we can look up the kind
of the wtd and use it as an index into wrote_user_func_for_ptr,
ensuring that such functions are written at most once. Support
subclasses by invoking the marking function of the ultimate base
class.
(write_user_func_for_structure_body): Require a write_types_data
rather than just a prefix string, so that we can pass this to
write_user_func_for_structure_ptr.
(write_func_for_structure): Likewise.
(ggc_wtd): Add initializer of new "kind" field.
(pch_wtd): Likewise.
* gengtype.h (enum write_types_kinds): New.
(struct type): Add field wrote_user_func_for_ptr to the "s"
union member.
From-SVN: r210379
Richard Sandiford [Tue, 13 May 2014 13:51:32 +0000 (13:51 +0000)]
fold-const.c (optimize_bit_field_compare): Use wi:: operations instead of const_binop.
gcc/
* fold-const.c (optimize_bit_field_compare): Use wi:: operations
instead of const_binop.
(fold_binary_loc): Likewise.
From-SVN: r210378
Richard Sandiford [Tue, 13 May 2014 13:51:20 +0000 (13:51 +0000)]
tree-dfa.h (get_addr_base_and_unit_offset_1): Update array index calculation to match get_ref_base_and_extent.
gcc/
* tree-dfa.h (get_addr_base_and_unit_offset_1): Update array index
calculation to match get_ref_base_and_extent.
From-SVN: r210377
Catherine Moore [Tue, 13 May 2014 13:36:56 +0000 (09:36 -0400)]
configure.ac: Fix assembly for explicit JALR relocation check.
2014-05-13 Catherine Moore <clm@codesourcery.com>
Sandra Loosemore <sandra@codesourcery.com>
gcc/
* configure.ac: Fix assembly for explicit JALR relocation check.
* configure: Regenerate.
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r210375
Nathan Sidwell [Tue, 13 May 2014 13:35:20 +0000 (13:35 +0000)]
loongson-simd.c: Disable micromips too.
2014-05-13 Nathan Sidwell <nathan@codesourcery.com>
Sandra Loosemore <sandra@codesourcery.com>
gcc/testsuite/
* gcc.target/mips/loongson-simd.c: Disable micromips too.
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r210374
Kyrylo Tkachov [Tue, 13 May 2014 13:02:33 +0000 (13:02 +0000)]
[ARM] Remove builtins for vzup, vuzp, vtrn and cleanup.
* config/arm/arm.c (neon_itype): Remove NEON_RESULTPAIR.
(arm_init_neon_builtins): Remove handling of NEON_RESULTPAIR.
Remove associated type declarations and initialisations.
(arm_expand_neon_builtin): Likewise.
(neon_emit_pair_result_insn): Delete.
* config/arm/arm_neon_builtins (vtrn, vzip, vuzp): Delete.
* config/arm/neon.md (neon_vtrn<mode>): Delete.
(neon_vzip<mode>): Likewise.
(neon_vuzp<mode>): Likewise.
From-SVN: r210369
Catherine Moore [Tue, 13 May 2014 12:51:39 +0000 (12:51 +0000)]
near-far-1.c: Adjust expected output to allow the JALS instruction.
2014-05-13 Catherine Moore <clm@cm00re.com>
* gcc.target/mips/near-far-1.c: Adjust expected output
to allow the JALS instruction.
* gcc.target/mips/near-far-2.c: Likewise.
* gcc.target/mips/near-far-4.c: Likewise.
From-SVN: r210368
Jonathan Wakely [Tue, 13 May 2014 11:18:01 +0000 (12:18 +0100)]
re PR libstdc++/60497 (unique_ptr<T> tries to complete its type T even though it's not required to be a complete type)
PR libstdc++/60497
* include/std/tuple (get, __tuple_compare): Qualify more calls to
prevent ADL. Cast comparison results to bool.
* testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
* testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
From-SVN: r210366
Richard Biener [Tue, 13 May 2014 11:04:44 +0000 (11:04 +0000)]
re PR ipa/60973 (Invalid propagation of a tail call in devirt pass)
2014-05-13 Richard Biener <rguenther@suse.de>
PR ipa/60973
* tree-inline.c (remap_gimple_stmt): Clear tail call flag,
it needs revisiting whether the call still may be tail-called.
From-SVN: r210364
Richard Sandiford [Tue, 13 May 2014 10:39:16 +0000 (10:39 +0000)]
rtl.def (SYMBOL_REF): Remove middle "0" field.
gcc/
* rtl.def (SYMBOL_REF): Remove middle "0" field.
* rtl.h (block_symbol): Reduce number of fields to 2.
(rtx_def): Add u2.symbol_ref_flags.
(SYMBOL_REF_FLAGS): Use it.
(SYMBOL_REF_DATA, SET_SYMBOL_REF_DECL, SYMBOL_REF_DECL)
(SET_SYMBOL_REF_CONSTANT, SYMBOL_REF_CONSTANT): Lower index.
* gengtype.c (adjust_field_rtx_def): Remove SYMBOL_REF_FLAGS handling.
Lower index of SYMBOL_REF_DATA.
* print-rtl.c (print_rtx): Lower index for SYMBOL_REF_DATA.
Print SYMBOL_REF_FLAGS at the same time.
* genattrtab.c (attr_rtx_1): Only initialize 1 "0" SYMBOL_REF field.
From-SVN: r210363
Richard Sandiford [Tue, 13 May 2014 10:39:08 +0000 (10:39 +0000)]
rtl.def (VAR_LOCATION): Remove "i" field.
gcc/
* rtl.def (VAR_LOCATION): Remove "i" field.
* rtl.h (rtx_def): Add u2.var_location_status.
(PAT_VAR_LOCATION_STATUS): Use it.
(gen_rtx_VAR_LOCATION): Declare.
* gengenrtl.c (excluded_rtx): Add VAR_LOCATION.
* emit-rtl.c (gen_rtx_VAR_LOCATION): New function.
* var-tracking.c (emit_note_insn_var_location): Remove casts.
From-SVN: r210362
Richard Sandiford [Tue, 13 May 2014 10:38:57 +0000 (10:38 +0000)]
rtl.def (scratch): Fix outdated comment and remove "0" field.
gcc/
* rtl.def (scratch): Fix outdated comment and remove "0" field.
* gengtype.c (adjust_field_rtx_def): Update accordingly.
From-SVN: r210361
Richard Sandiford [Tue, 13 May 2014 10:38:50 +0000 (10:38 +0000)]
gcc/
* rtl.def (DEBUG_INSN, INSN, JUMP_INSN, CALL_INSN, JUMP_TABLE_DATA)
(BARRIER, CODE_LABEL, NOTE): Remove first "i" field.
* rtl.h (rtx_def): Add insn_uid to u2 field.
(RTX_FLAG_CHECK8): Delete in favor of...
(RTL_INSN_CHAIN_FLAG_CHECK): ...this new macro.
(INSN_DELETED_P): Update accordingly.
(INSN_UID): Use u2.insn_uid.
(INSN_CHAIN_CODE_P): Define.
(PREV_INSN, NEXT_INSN, BLOCK_FOR_INSN, PATTERN, INSN_LOCATION)
(INSN_CODE, REG_NOTES, CALL_INSN_FUNCTION_USAGE, CODE_LABEL_NUMBER)
(NOTE_DATA, NOTE_DELETED_LABEL_NAME, NOTE_BLOCK, NOTE_EH_HANDLER)
(NOTE_BASIC_BLOCK, NOTE_VAR_LOCATION, NOTE_CFI, NOTE_LABEL_NUMBER)
(NOTE_KIND, LABEL_NAME, LABEL_NUSES, JUMP_LABEL, LABEL_REFS): Lower
indices accordingly.
* print-rtl.c (print_rtx): Print INSN_UIDs before the main loop.
Update indices for insn-chain rtxes.
* gengtype.c (gen_rtx_next): Adjust test for insn-chain rtxes.
(adjust_field_rtx_def): Lower '0' indices for all insn-chain rtxes.
* emit-rtl.c (gen_label_rtx): Update gen_rtx_LABEL call.
* caller-save.c (init_caller_save): Update gen_rtx_INSN calls.
* combine.c (try_combine): Likewise.
* ira.c (setup_prohibited_mode_move_regs): Likewise.
From-SVN: r210360
Richard Sandiford [Tue, 13 May 2014 10:38:38 +0000 (10:38 +0000)]
rtl.def (REG): Remove middle field.
gcc/
* rtl.def (REG): Remove middle field.
* rtl.h (rtx_def): Add orignal_regno to u2.
(ORIGINAL_REGNO): Use it instead of field 1.
(REG_ATTRS): Lower field index accordingly.
* gengtype.c (adjust_field_rtx_def): Remove handling of
ORIGINAL_REGNO. Move REG_ATTRS index down.
* print-rtl.c (print_rtx): Move ORIGINAL_REGNO handling to the
code that prints the REGNO.
From-SVN: r210359
Richard Sandiford [Tue, 13 May 2014 10:38:27 +0000 (10:38 +0000)]
print-rtl.c (print_rtx): Guard whole '0' block with ifndef GENERATOR_FILE.
gcc/
* print-rtl.c (print_rtx): Guard whole '0' block with ifndef
GENERATOR_FILE.
From-SVN: r210358
Richard Sandiford [Tue, 13 May 2014 10:38:17 +0000 (10:38 +0000)]
rtl.h (rtx_def): Mark u2 as GTY ((skip)).
gcc/
* rtl.h (rtx_def): Mark u2 as GTY ((skip)).
From-SVN: r210357
Bin Cheng [Tue, 13 May 2014 10:09:54 +0000 (10:09 +0000)]
tree-ssa-loop-ivopts.c (contain_complex_addr_expr): New.
* tree-ssa-loop-ivopts.c (contain_complex_addr_expr): New.
(alloc_iv): Lower base expressions containing ADDR_EXPR.
* gcc.dg/tree-ssa/ivopts-lower_base.c: New test.
From-SVN: r210356
Ian Bolton [Tue, 13 May 2014 09:28:35 +0000 (09:28 +0000)]
Implement HARD_REGNO_CALLER_SAVE_MODE for AArch64
* config/aarch64/aarch64-protos.h
(aarch64_hard_regno_caller_save_mode): New prototype.
* config/aarch64/aarch64.c (aarch64_hard_regno_caller_save_mode):
New function.
* config/aarch64/aarch64.h (HARD_REGNO_CALLER_SAVE_MODE): New macro.
From-SVN: r210355
Christian Bruel [Tue, 13 May 2014 08:50:51 +0000 (10:50 +0200)]
target.def (mode_switching): New hook vector.
2014-05-13 Christian Bruel <christian.bruel@st.com>
* target.def (mode_switching): New hook vector.
(mode_emit, mode_needed, mode_after, mode_entry): New hooks.
(mode_exit, modepriority_to_mode): Likewise.
* mode-switching.c (MODE_NEEDED, MODE_AFTER, MODE_ENTRY): Hookify.
(MODE_EXIT, MODE_PRIORITY_TO_MODE, EMIT_MODE_SET): Likewise.
(default_priority_to_mode): Define.
* targhooks.h (default_priority_to_mode): Declare.
* target.h: Include tm.h and hard-reg-set.h.
* doc/tm.texi.in (EMIT_MODE_SET, MODE_NEEDED, MODE_AFTER, MODE_ENTRY)
(MODE_EXIT, MODE_PRIORITY_TO_MODE): Delete and hookify.
* doc/tm.texi Regenerate.
* config/sh/sh.h (MODE_NEEDED, MODE_AFTER, MODE_ENTRY): Delete
(MODE_EXIT, MODE_PRIORITY_TO_MODE, EMIT_MODE_SET): Likewise.
* config/sh/sh.c (sh_emit_mode_set, sh_mode_priority): Hookify.
(sh_mode_needed, sh_mode_after, sh_mode_entry, sh_mode_exit): Likewise.
* config/i386/i386.h (MODE_NEEDED, MODE_AFTER, MODE_ENTRY): Delete
(MODE_EXIT, MODE_PRIORITY_TO_MODE, EMIT_MODE_SET): Likewise.
* config/i386/i386-protos.h (ix86_mode_needed, ix86_mode_after)
(ix86_mode_entrym, ix86_emit_mode_set): Remove external declaration.
* config/i386/i386.c (ix86_mode_needed, ix86_mode_after, ix86_mode_exit,
(ix86_mode_entry, ix86_mode_priority, ix86_emit_mode_set): Hookify.
* config/epiphany/epiphany.h (MODE_NEEDED, MODE_AFTER, MODE_ENTRY):
Delete
(MODE_EXIT, MODE_PRIORITY_TO_MODE, EMIT_MODE_SET): Likewise.
* config/sh/sh.h (MODE_NEEDED, MODE_AFTER, MODE_ENTRY): Delete
(MODE_EXIT, MODE_PRIORITY_TO_MODE, EMIT_MODE_SET): Likewise.
* config/sh/sh.c (sh4_emit_mode_set, sh4_mode_needed): Hookify.
(sh4_mode_after, sh4_mode_entry, sh4_mode_exit): Likewise.
* config/epiphany/epiphany-protos.h (epiphany_mode_needed)
(emit_set_fp_mode, epiphany_mode_entry_exit, epiphany_mode_after)
(epiphany_mode_priority_to_mode): Remove declaration.
* config/epiphany/epiphany.c (emit_set_fp_mode): Hookify.
(epiphany_mode_needed, epiphany_mode_priority_to_mode): Likewise.
(epiphany_mode_entry, epiphany_mode_exit, epiphany_mode_after):
Likewise.
(epiphany_mode_priority_to_mode): Change priority type. Hookify.
(epiphany_mode_needed, epiphany_mode_entry_exit): Hookify.
(epiphany_mode_after, epiphany_mode_entry, emit_set_fp_mode): Hookify.
From-SVN: r210354
Jakub Jelinek [Tue, 13 May 2014 08:28:53 +0000 (10:28 +0200)]
re PR target/61060 (ICE: in int_mode_for_mode, at stor-layout.c:400 with -free-ter)
PR target/61060
* config/i386/i386.c (ix86_expand_set_or_movmem): If count_exp
is const0_rtx, return immediately. Don't test count == 0 when
it is always true.
* gcc.dg/pr61060.c: New test.
From-SVN: r210352
Zhenqiang Chen [Tue, 13 May 2014 07:05:46 +0000 (07:05 +0000)]
Makefile.in: add shrink-wrap.o.
2014-05-13 Zhenqiang Chen <zhenqiang.chen@linaro.org>
* Makefile.in: add shrink-wrap.o.
* config/i386/i386.c: include "shrink-wrap.h"
* function.c: Likewise.
(requires_stack_frame_p, next_block_for_reg,
move_insn_for_shrink_wrap, prepare_shrink_wrap,
dup_block_and_redirect): Move to shrink-wrap.c
(thread_prologue_and_epilogue_insns): Extract three code segments
as functions in shrink-wrap.c
* function.h: Move #ifdef HAVE_simple_return ... #endif block to
shrink-wrap.h
* shrink-wrap.c: New file.
* shrink-wrap.h: New file.
From-SVN: r210351
Jason Merrill [Tue, 13 May 2014 03:21:18 +0000 (23:21 -0400)]
call.c (maybe_print_user_conv_context): New.
* call.c (maybe_print_user_conv_context): New.
(convert_like_real): Use it. Print call context for bad
user-defined conversion.
(build_over_call): Print call context for bad 'this' conversion.
From-SVN: r210350
GCC Administrator [Tue, 13 May 2014 00:17:03 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r210349
David Wohlferd [Mon, 12 May 2014 22:37:23 +0000 (22:37 +0000)]
extend.texi: Reflect current numbers of pragmas.
* doc/extend.texi: Reflect current numbers of pragmas. Remove
reference to Solaris.
From-SVN: r210343
DJ Delorie [Mon, 12 May 2014 22:12:31 +0000 (18:12 -0400)]
sibcall-3.c: MSP430 doesn't have sibcall.
* gcc.dg/sibcall-3.c: MSP430 doesn't have sibcall.
* gcc.dg/sibcall-4.c: Likewise.
From-SVN: r210341
Mike Stump [Mon, 12 May 2014 21:22:20 +0000 (21:22 +0000)]
re PR other/31778 (genattrtab.c doesn't record filename)
PR other/31778
* genattrtab.c (filename): Add.
(convert_set_attr_alternative): Improve error message.
(check_defs): Restore read_md_filename for error messages.
(gen_insn): Save filename.
From-SVN: r210340
Dimitris Papavasiliou [Mon, 12 May 2014 20:55:54 +0000 (20:55 +0000)]
invoke.texi: Document new switches -Wno-shadow-ivar, -fno-local-ivars and -fivar-visibility.
2014-05-12 Dimitris Papavasiliou <dpapavas@gmail.com>
* doc/invoke.texi: Document new switches -Wno-shadow-ivar,
-fno-local-ivars and -fivar-visibility.
* c-family/c.opt: Make -Wshadow also implicitly enable
-Wshadow-ivar.
testsuite:
* objc.dg/shadow-1.m: New test.
* objc.dg/shadow-2.m: New test.
* objc.dg/ivar-scope-1.m: New test.
* objc.dg/ivar-scope-2.m: New test.
* objc.dg/ivar-scope-3.m: New test.
* objc.dg/ivar-scope-4.m: New test.
* objc.dg/ivar-visibility-1.m: New test.
* objc.dg/ivar-visibility-2.m: New test.
* objc.dg/ivar-visibility-3.m: New test.
* objc.dg/ivar-visibility-4.m: New test.
Now, actuatally add the files....
From-SVN: r210339
Janne Blomqvist [Mon, 12 May 2014 19:23:11 +0000 (22:23 +0300)]
Fix stack overflow crash in getcwd intrinsic.
2014-05-12 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/61035
* intrinsics/getcwd.c (getcwd_i4_sub): Avoid potentially large
stack allocation, avoid extra copying in the common case.
From-SVN: r210335
Janne Blomqvist [Mon, 12 May 2014 19:20:50 +0000 (22:20 +0300)]
Use -std=gnu11 instead of -std=gnu99 for libgfortran C code.
2014-05-12 Janne Blomqvist <jb@gcc.gnu.org>
* configure.ac (AM_CFLAGS): Use -std=gnu11.
(CFLAGS): Likewise.
* configure: Regenerated.
From-SVN: r210334
Dimitris Papavasiliou [Mon, 12 May 2014 19:12:27 +0000 (19:12 +0000)]
invoke.texi: Document new switches -Wno-shadow-ivar, -fno-local-ivars and -fivar-visibility.
2014-05-12 Dimitris Papavasiliou <dpapavas@gmail.com>
* doc/invoke.texi: Document new switches -Wno-shadow-ivar,
-fno-local-ivars and -fivar-visibility.
* c-family/c.opt: Make -Wshadow also implicitly enable
-Wshadow-ivar.
testsuite:
* objc.dg/shadow-1.m: New test.
* objc.dg/shadow-2.m: New test.
* objc.dg/ivar-scope-1.m: New test.
* objc.dg/ivar-scope-2.m: New test.
* objc.dg/ivar-scope-3.m: New test.
* objc.dg/ivar-scope-4.m: New test.
* objc.dg/ivar-visibility-1.m: New test.
* objc.dg/ivar-visibility-2.m: New test.
* objc.dg/ivar-visibility-3.m: New test.
* objc.dg/ivar-visibility-4.m: New test.
From-SVN: r210333
Jason Merrill [Mon, 12 May 2014 19:07:55 +0000 (15:07 -0400)]
call.c (convert_like_real): Use inform for identifying the declaration point.
* call.c (convert_like_real): Use inform for identifying the
declaration point.
From-SVN: r210332
Tobias Burnus [Mon, 12 May 2014 19:00:08 +0000 (21:00 +0200)]
re PR fortran/60127 (ICE with OpenMP and DO CONCURRENT)
2014-05-12 Tobias Burnus <burnus@net-b.de>
PR fortran/60127
* openmp.c (resolve_omp_do): Reject do concurrent loops.
2014-05-12 Tobias Burnus <burnus@net-b.de>
PR fortran/60127
* gfortran.dg/gomp/omp_do_concurrent.f90: New.
From-SVN: r210331
David Wohlferd [Mon, 12 May 2014 16:22:15 +0000 (16:22 +0000)]
tm.texi: Remove reference to deleted macro.
2014-05-12 David Wohlferd <dw@LimeGreenSocks.com>
* doc/tm.texi: Remove reference to deleted macro.
* doc/tm.texi.in: Likewise.
From-SVN: r210330
Thomas Koenig [Mon, 12 May 2014 16:17:09 +0000 (16:17 +0000)]
re PR fortran/60834 ([OOP] ICE with ASSOCIATE construct (gimplify_var_or_parm_decl, at gimplify.c:1721))
2014-05-12 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/60834
* frontend-passes.c (in_assoc_list): New variable.
(optimize_namespace): Initialize in_assoc_list
(combine_array_constructor): Don't try to combine
assoc lists.
(gfc_code_walker): Keep track of in_assoc_list.
2014-05-12 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/60834
* gfortran.dg/associate_16.f90: New test.
From-SVN: r210329
Paolo Carlini [Mon, 12 May 2014 15:33:35 +0000 (15:33 +0000)]
cvt.c (cp_convert_to_pointer): Don't call error_at if complain & tf_error is false.
2014-05-12 Paolo Carlini <paolo.carlini@oracle.com>
* cvt.c (cp_convert_to_pointer): Don't call error_at if
complain & tf_error is false.
* decl.c (make_unbound_class_template): Prefer inform for
"declared here"-type message.
From-SVN: r210326
Senthil Kumar Selvaraj [Mon, 12 May 2014 15:33:00 +0000 (15:33 +0000)]
re PR target/60991 ([avr] Stack corruption when using 24-bit integers __int24 or __memx pointers in large stack frame)
gcc/ChangeLog
PR target/60991
* config/avr/avr.c (avr_out_store_psi): Use correct constant
to restore Y.
gcc/testsuite/ChangeLog
PR target/60991
* gcc.target/avr/pr60991.c: New testcase.
From-SVN: r210325
Paolo Carlini [Mon, 12 May 2014 09:17:46 +0000 (09:17 +0000)]
re PR c++/60054 ([c++1y] ICE with auto* cast)
2014-05-12 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60054
* g++.dg/cpp1y/pr60054.C: New.
From-SVN: r210323
Georg-Johann Lay [Mon, 12 May 2014 09:02:36 +0000 (09:02 +0000)]
arm.h (License): Add GCC Runtime Library Exception.
gcc/
* config/arm/arm.h (License): Add GCC Runtime Library Exception.
* config/arm/aout.h (License): Same.
* config/arm/bpabi.h (License): Same.
* config/arm/elf.h (License): Same.
* config/arm/linux-elf.h (License): Same.
* config/arm/linux-gas.h (License): Same.
* config/arm/netbsd-elf.h (License): Same.
* config/arm/uclinux-eabi.h (License): Same.
* config/arm/uclinux-elf.h (License): Same.
* config/arm/vxworks.h (License): Same.
libgcc/
* config/arm/bpabi-lib.h (License): Add GCC Runtime Library Exception.
From-SVN: r210322
Paolo Carlini [Mon, 12 May 2014 08:42:41 +0000 (08:42 +0000)]
re PR c++/51199 ([C++11][DR 547] gcc forms impossible types derived from function types with cv-qualifier-seq)
2014-05-12 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51199
* g++.dg/template/pr51199.C: New.
From-SVN: r210321
GCC Administrator [Mon, 12 May 2014 00:17:17 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r210319
Hans-Peter Nilsson [Sun, 11 May 2014 20:48:31 +0000 (20:48 +0000)]
* gcc.c-torture/execute/
20101011-1.c [__MMIX__] (DO_TEST): Define as 0.
From-SVN: r210315
Jakub Jelinek [Sun, 11 May 2014 20:26:36 +0000 (22:26 +0200)]
tree.h (OMP_CLAUSE_LINEAR_STMT): Define.
* tree.h (OMP_CLAUSE_LINEAR_STMT): Define.
* tree.c (omp_clause_num_ops): Increase OMP_CLAUSE_LINEAR
number of operands to 3.
(walk_tree_1): Walk all operands of OMP_CLAUSE_LINEAR.
* tree-nested.c (convert_nonlocal_omp_clauses,
convert_local_omp_clauses): Handle OMP_CLAUSE_DEPEND.
* gimplify.c (gimplify_scan_omp_clauses): Handle
OMP_CLAUSE_LINEAR_STMT.
* omp-low.c (lower_rec_input_clauses): Fix typo.
(maybe_add_implicit_barrier_cancel, lower_omp_1): Add
cast between Fortran boolean_type_node and C _Bool if
needed.
gcc/fortran/
* gfortran.h (gfc_statement): Add ST_OMP_CANCEL,
ST_OMP_CANCELLATION_POINT, ST_OMP_TASKGROUP, ST_OMP_END_TASKGROUP,
ST_OMP_SIMD, ST_OMP_END_SIMD, ST_OMP_DO_SIMD, ST_OMP_END_DO_SIMD,
ST_OMP_PARALLEL_DO_SIMD, ST_OMP_END_PARALLEL_DO_SIMD and
ST_OMP_DECLARE_SIMD.
(gfc_omp_namelist): New typedef.
(gfc_get_omp_namelist): Define.
(OMP_LIST_UNIFORM, OMP_LIST_ALIGNED, OMP_LIST_LINEAR,
OMP_LIST_DEPEND_IN, OMP_LIST_DEPEND_OUT): New clause list kinds.
(gfc_omp_proc_bind_kind, gfc_omp_cancel_kind): New enums.
(gfc_omp_clauses): Change type of lists to gfc_omp_namelist *.
Add inbranch, notinbranch, cancel, proc_bind, safelen_expr and
simdlen_expr fields.
(gfc_omp_declare_simd): New typedef.
(gfc_get_omp_declare_simd): Define.
(gfc_namespace): Add omp_declare_simd field.
(gfc_exec_op): Add EXEC_OMP_CANCEL, EXEC_OMP_CANCELLATION_POINT,
EXEC_OMP_TASKGROUP, EXEC_OMP_SIMD, EXEC_OMP_DO_SIMD and
EXEC_OMP_PARALLEL_DO_SIMD.
(gfc_omp_atomic_op): Add GFC_OMP_ATOMIC_MASK, GFC_OMP_ATOMIC_SEQ_CST
and GFC_OMP_ATOMIC_SWAP.
(gfc_code): Change type of omp_namelist field to gfc_omp_namelist *.
(gfc_free_omp_namelist, gfc_free_omp_declare_simd,
gfc_free_omp_declare_simd_list, gfc_resolve_omp_declare_simd): New
prototypes.
* trans-stmt.h (gfc_trans_omp_declare_simd): New prototype.
* symbol.c (gfc_free_namespace): Call gfc_free_omp_declare_simd.
* openmp.c (gfc_free_omp_clauses): Free safelen_expr and
simdlen_expr. Use gfc_free_omp_namelist instead of
gfc_free_namelist.
(gfc_free_omp_declare_simd, gfc_free_omp_declare_simd_list): New
functions.
(gfc_match_omp_variable_list): Add end_colon, headp and
allow_sections arguments. Handle parsing of array sections.
Use *omp_namelist* instead of *namelist* data structure and
functions/macros. Allow termination at : character.
(OMP_CLAUSE_ALIGNED, OMP_CLAUSE_DEPEND, OMP_CLAUSE_INBRANCH,
OMP_CLAUSE_LINEAR, OMP_CLAUSE_NOTINBRANCH, OMP_CLAUSE_PROC_BIND,
OMP_CLAUSE_SAFELEN, OMP_CLAUSE_SIMDLEN, OMP_CLAUSE_UNIFORM): Define.
(gfc_match_omp_clauses): Change first and needs_space variables
into arguments with default values. Parse inbranch, notinbranch,
proc_bind, safelen, simdlen, uniform, linear, aligned and
depend clauses.
(OMP_PARALLEL_CLAUSES): Add OMP_CLAUSE_PROC_BIND.
(OMP_DECLARE_SIMD_CLAUSES, OMP_SIMD_CLAUSES): Define.
(OMP_TASK_CLAUSES): Add OMP_CLAUSE_DEPEND.
(gfc_match_omp_do_simd): New function.
(gfc_match_omp_flush): Use *omp_namelist* instead of *namelist*
data structure and functions/macros.
(gfc_match_omp_simd, gfc_match_omp_declare_simd,
gfc_match_omp_parallel_do_simd): New functions.
(gfc_match_omp_atomic): Handle seq_cst clause. Handle atomic swap.
(gfc_match_omp_taskgroup, gfc_match_omp_cancel_kind,
gfc_match_omp_cancel, gfc_match_omp_cancellation_point): New
functions.
(resolve_omp_clauses): Add where, omp_clauses and ns arguments.
Use *omp_namelist* instead of *namelist* data structure and
functions/macros. Resolve uniform, aligned, linear, depend,
safelen and simdlen clauses.
(resolve_omp_atomic): Adjust for GFC_OMP_ATOMIC_{MASK,SEQ_CST,SWAP}
addition, recognize atomic swap.
(gfc_resolve_omp_parallel_blocks): Use gfc_omp_namelist instead
of gfc_namelist. Handle EXEC_OMP_PARALLEL_DO_SIMD the same as
EXEC_OMP_PARALLEL_DO.
(gfc_resolve_do_iterator): Use *omp_namelist* instead of *namelist*
data structure and functions/macros.
(resolve_omp_do): Likewise. Handle EXEC_OMP_SIMD, EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD.
(gfc_resolve_omp_directive): Handle EXEC_OMP_SIMD, EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD and EXEC_OMP_CANCEL. Adjust
resolve_omp_clauses caller.
(gfc_resolve_omp_declare_simd): New function.
* parse.c (decode_omp_directive): Parse cancellation point, cancel,
declare simd, end do simd, end simd, end parallel do simd,
end taskgroup, parallel do simd, simd and taskgroup directives.
(case_executable): Add ST_OMP_CANCEL and ST_OMP_CANCELLATION_POINT.
(case_exec_markers): Add ST_OMP_TASKGROUP, case ST_OMP_SIMD,
ST_OMP_DO_SIMD and ST_OMP_PARALLEL_DO_SIMD.
(case_decl): Add ST_OMP_DECLARE_SIMD.
(gfc_ascii_statement): Handle ST_OMP_CANCEL,
ST_OMP_CANCELLATION_POINT, ST_OMP_TASKGROUP, ST_OMP_END_TASKGROUP,
ST_OMP_SIMD, ST_OMP_END_SIMD, ST_OMP_DO_SIMD, ST_OMP_END_DO_SIMD,
ST_OMP_PARALLEL_DO_SIMD, ST_OMP_END_PARALLEL_DO_SIMD and
ST_OMP_DECLARE_SIMD.
(parse_omp_do): Handle ST_OMP_SIMD, ST_OMP_DO_SIMD and
ST_OMP_PARALLEL_DO_SIMD.
(parse_omp_atomic): Adjust for GFC_OMP_ATOMIC_* additions.
(parse_omp_structured_block): Handle ST_OMP_TASKGROUP and
ST_OMP_PARALLEL_DO_SIMD.
(parse_executable): Handle ST_OMP_SIMD, ST_OMP_DO_SIMD,
ST_OMP_PARALLEL_DO_SIMD and ST_OMP_TASKGROUP.
* trans-decl.c (gfc_get_extern_function_decl,
gfc_create_function_decl): Call gfc_trans_omp_declare_simd if
needed.
* frontend-passes.c (gfc_code_walker): Handle EXEC_OMP_SIMD,
EXEC_OMP_DO_SIMD and EXEC_OMP_PARALLEL_DO_SIMD. Walk
safelen_expr and simdlen_expr. Walk expressions in gfc_omp_namelist
of depend, aligned and linear clauses.
* match.c (match_exit_cycle): Handle EXEC_OMP_SIMD, EXEC_OMP_DO_SIMD
and EXEC_OMP_PARALLEL_DO_SIMD.
(gfc_free_omp_namelist): New function.
* dump-parse-tree.c (show_namelist): Removed.
(show_omp_namelist): New function.
(show_omp_node): Handle OpenMP 4.0 additions.
(show_code_node): Handle EXEC_OMP_CANCEL, EXEC_OMP_CANCELLATION_POINT,
EXEC_OMP_DO_SIMD, EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and
EXEC_OMP_TASKGROUP.
* match.h (gfc_match_omp_cancel, gfc_match_omp_cancellation_point,
gfc_match_omp_declare_simd, gfc_match_omp_do_simd,
gfc_match_omp_parallel_do_simd, gfc_match_omp_simd,
gfc_match_omp_taskgroup): New prototypes.
* trans-openmp.c (gfc_trans_omp_variable): Add declare_simd
argument, handle it. Allow current_function_decl to be NULL.
(gfc_trans_omp_variable_list): Add declare_simd argument, pass
it through to gfc_trans_omp_variable and disregard whether
sym is referenced if declare_simd is true. Work on gfc_omp_namelist
instead of gfc_namelist.
(gfc_trans_omp_reduction_list): Work on gfc_omp_namelist instead of
gfc_namelist. Adjust gfc_trans_omp_variable caller.
(gfc_trans_omp_clauses): Add declare_simd argument, pass it through
to gfc_trans_omp_variable{,_list} callers. Work on gfc_omp_namelist
instead of gfc_namelist. Handle inbranch, notinbranch, safelen,
simdlen, depend, uniform, linear, proc_bind and aligned clauses.
Handle cancel kind.
(gfc_trans_omp_atomic): Handle seq_cst clause, handle atomic swap,
adjust for GFC_OMP_ATOMIC_* changes.
(gfc_trans_omp_cancel, gfc_trans_omp_cancellation_point): New
functions.
(gfc_trans_omp_do): Add op argument, handle simd translation into
generic.
(GFC_OMP_SPLIT_SIMD, GFC_OMP_SPLIT_DO, GFC_OMP_SPLIT_PARALLEL,
GFC_OMP_SPLIT_NUM, GFC_OMP_MASK_SIMD, GFC_OMP_MASK_DO,
GFC_OMP_MASK_PARALLEL): New.
(gfc_split_omp_clauses, gfc_trans_omp_do_simd): New functions.
(gfc_trans_omp_parallel_do): Rework to use gfc_split_omp_clauses.
(gfc_trans_omp_parallel_do_simd, gfc_trans_omp_taskgroup): New
functions.
(gfc_trans_omp_directive): Handle EXEC_OMP_CANCEL,
EXEC_OMP_CANCELLATION_POINT, EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
Adjust gfc_trans_omp_do caller.
(gfc_trans_omp_declare_simd): New function.
* st.c (gfc_free_statement): Handle EXEC_OMP_CANCEL,
EXEC_OMP_CANCELLATION_POINT, EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
For EXEC_OMP_FLUSH call gfc_free_omp_namelist instead of
gfc_free_namelist.
* module.c (omp_declare_simd_clauses): New variable.
(mio_omp_declare_simd): New function.
(mio_symbol): Call it.
* trans.c (trans_code): Handle EXEC_OMP_CANCEL,
EXEC_OMP_CANCELLATION_POINT, EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
* resolve.c (gfc_resolve_blocks): Handle EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
(resolve_code): Handle EXEC_OMP_CANCEL,
EXEC_OMP_CANCELLATION_POINT, EXEC_OMP_DO_SIMD,
EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
(resolve_types): Call gfc_resolve_omp_declare_simd.
gcc/testsuite/
* gfortran.dg/gomp/affinity-1.f90: New test.
libgomp/
* testsuite/libgomp.fortran/cancel-do-1.f90: New test.
* testsuite/libgomp.fortran/cancel-do-2.f90: New test.
* testsuite/libgomp.fortran/cancel-parallel-1.f90: New test.
* testsuite/libgomp.fortran/cancel-parallel-3.f90: New test.
* testsuite/libgomp.fortran/cancel-sections-1.f90: New test.
* testsuite/libgomp.fortran/cancel-taskgroup-2.f90: New test.
* testsuite/libgomp.fortran/declare-simd-1.f90: New test.
* testsuite/libgomp.fortran/declare-simd-2.f90: New test.
* testsuite/libgomp.fortran/declare-simd-3.f90: New test.
* testsuite/libgomp.fortran/depend-1.f90: New test.
* testsuite/libgomp.fortran/depend-2.f90: New test.
* testsuite/libgomp.fortran/omp_atomic5.f90: New test.
* testsuite/libgomp.fortran/simd1.f90: New test.
* testsuite/libgomp.fortran/simd2.f90: New test.
* testsuite/libgomp.fortran/simd3.f90: New test.
* testsuite/libgomp.fortran/simd4.f90: New test.
* testsuite/libgomp.fortran/taskgroup1.f90: New test.
From-SVN: r210313
Richard Sandiford [Sun, 11 May 2014 20:21:55 +0000 (20:21 +0000)]
re PR c/61136 (ice in tree_nop_conversion)
gcc/
PR tree-optimization/61136
* wide-int.h (multiple_of_p): Define a version that doesn't return
the quotient.
* fold-const.c (extract_muldiv_1): Use wi::multiple_of_p instead of an
integer_zerop/const_binop pair.
(multiple_of_p): Likewise, converting both operands to widest_int
precision.
gcc/testsuite/
* gcc.dg/torture/pr61136.c: New test.
From-SVN: r210312
Tobias Burnus [Sun, 11 May 2014 18:25:55 +0000 (20:25 +0200)]
trans-intrinsic.c (gfc_build_builtin_function_decls): Change type of second argument to int.
2014-05-11 Tobias Burnus <burnus@net-b.de>
* trans-intrinsic.c (gfc_build_builtin_function_decls):
Change type of second argument to int.
2014-05-11 Tobias Burnus <burnus@net-b.de>
* caf/libcaf.h (_gfortran_caf_num_images): Change type of
second argument to int.
* caf/mpi.c (_gfortran_caf_num_images): Ditto.
* caf/single.c (_gfortran_caf_num_images): Ditto.
From-SVN: r210311
Paolo Carlini [Sun, 11 May 2014 10:23:34 +0000 (10:23 +0000)]
re PR c++/59705 (possible compiler bug regarding SFINAE (program compiles fine))
2014-05-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59705
* g++.dg/cpp0x/sfinae51.C: New.
PR c++/58353
* g++.dg/cpp0x/variadic157.C: New.
From-SVN: r210310
GCC Administrator [Sun, 11 May 2014 00:16:47 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r210305
Oleg Endo [Sat, 10 May 2014 20:19:06 +0000 (20:19 +0000)]
re PR target/51244 ([SH] Inefficient conditional branch and code around T bit)
gcc/testsuite/
PR target/51244
* gcc.target/sh/pr51244-14.c: Relax criteria for passing the test.
From-SVN: r210301
Marek Polacek [Sat, 10 May 2014 20:03:57 +0000 (20:03 +0000)]
c-parser.c (c_parser_declaration_or_fndef): Pass init_loc to maybe_warn_string_init.
* c-parser.c (c_parser_declaration_or_fndef): Pass init_loc to
maybe_warn_string_init.
(c_parser_postfix_expression_after_paren_type): Pass type_loc to
maybe_warn_string_init.
* c-tree.h (maybe_warn_string_init): Update declaration.
* c-typeck.c (maybe_warn_string_init): Add location parameter.
Call pedwarn_init with loc instead of with input_location.
(digest_init): Pass init_loc to maybe_warn_string_init.
(pop_init_level): Call pedwarn_init with loc instead of with
input_location.
(set_init_index): Likewise.
(process_init_element): Likewise.
* gcc.dg/pedwarn-init.c: New test.
* gcc.dg/init-string-1.c: Adjust dg-error.
From-SVN: r210300
Hans-Peter Nilsson [Sat, 10 May 2014 11:58:57 +0000 (11:58 +0000)]
* lib/target-supports.exp
(check_effective_target_logical_op_short_circuit): Add mmix-*-*
to the list.
From-SVN: r210299
GCC Administrator [Sat, 10 May 2014 00:16:52 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r210298
Momchil Velikov [Fri, 9 May 2014 20:07:45 +0000 (20:07 +0000)]
re PR c++/60463 (Lambda function can call a non-const member function with const this)
PR c++/60463
PR c++/60755
* lambda.c (lambda_expr_this_capture): Add new parameter
add_capture_p controlling whether the functions will try to
capture 'this' via the default capture.
(maybe_resolve_dummy): Likewise.
* cp-tree.h: Adjust prototypes.
* call.c, semantics.c: Change callers of these functions.
* call.c (build_new_method_call_1): Use the actual 'this' that
would be potentially captured for the overload resolution, instead
of the dummy object.
From-SVN: r210292
Jonathan Wakely [Fri, 9 May 2014 19:39:20 +0000 (20:39 +0100)]
Fix typo in ChangeLog-2013
From-SVN: r210291
Jonathan Wakely [Fri, 9 May 2014 19:39:14 +0000 (20:39 +0100)]
gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
* config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
(GLIBCXX_3.4.21): Export base object constructor for regex_error.
* acinclude.m4 (libtool_VERSION): Bump.
* configure: Regenerate.
* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
* testsuite/28_regex/regex_error/base.cc: New.
From-SVN: r210290
Paolo Carlini [Fri, 9 May 2014 19:30:03 +0000 (19:30 +0000)]
pt.c (convert_nontype_argument_function): Add tsubst_flags_t parameter.
2014-05-09 Paolo Carlini <paolo.carlini@oracle.com>
* pt.c (convert_nontype_argument_function): Add tsubst_flags_t
parameter.
(convert_nontype_argument): Adjust calls.
(coerce_template_parameter_pack): Add missing complain & tf_error
check.
From-SVN: r210289
Teresa Johnson [Fri, 9 May 2014 18:31:57 +0000 (18:31 +0000)]
cgraphunit.c (analyze_functions): Use correct dump file.
2014-05-09 Teresa Johnson <tejohnson@google.com>
* cgraphunit.c (analyze_functions): Use correct dump file.
From-SVN: r210286
Jason Merrill [Fri, 9 May 2014 18:16:18 +0000 (14:16 -0400)]
DR 587 PR c++/51317
DR 587
PR c++/51317
* call.c (build_conditional_expr_1, conditional_conversion): Handle
non-class lvalues and xvalues that differ only in cv-qualifiers.
From-SVN: r210285
Jason Merrill [Fri, 9 May 2014 18:16:11 +0000 (14:16 -0400)]
DR 5 PR c++/60019
DR 5
PR c++/60019
* call.c (build_user_type_conversion_1): The copy-init temporary
is cv-unqualified.
From-SVN: r210284
Jason Merrill [Fri, 9 May 2014 18:16:05 +0000 (14:16 -0400)]
re PR c++/58714 (Bogus overload resolution for the assignment operator in assignment to a conditional)
PR c++/58714
* tree.c (stabilize_expr): A stabilized prvalue is an xvalue.
From-SVN: r210283
Jason Merrill [Fri, 9 May 2014 18:15:57 +0000 (14:15 -0400)]
re PR c++/32019 (Conditional operator ?: and ambiguous convertions)
PR c++/32019
* call.c (build_conditional_expr_1): Improve ambiguity diagnostic.
PR c++/54348
* call.c (build_conditional_expr_1): If overload resolution finds
no match, just say "different types".
From-SVN: r210282
Jason Merrill [Fri, 9 May 2014 18:15:46 +0000 (14:15 -0400)]
re PR c++/22434 (ICE in simplify_{,gen_}subreg)
PR c++/22434
* call.c (build_conditional_expr_1): Don't try to pool cv-quals
if we didn't find a conversion.
Don't accept a bad conversion too early.
From-SVN: r210281
Marek Polacek [Fri, 9 May 2014 17:50:25 +0000 (17:50 +0000)]
re PR c/61096 (error_init lacks a location)
PR c/61096
* c-parser.c (c_parser_braced_init): Pass brace_loc to push_init_level.
(c_parser_initelt): Pass location to set_init_label. Pass array index
location to set_init_index.
* c-tree.h (push_init_level): Update declaration.
(pop_init_level): Likewise.
(set_init_index): Likewise.
(set_init_label): Likewise.
* c-typeck.c (error_init): Add location parameter. Call error_at
instead of error.
(digest_init): Pass init_loc to error_init.
(really_start_incremental_init):
(push_init_level): Add location parameter. Pass loc to pop_init_level
and error_init.
(pop_init_level): Likewise.
(set_designator): Add location parameter. Pass loc to pop_init_level,
push_init_level, and error_init.
(set_init_index): Add location parameter. Pass loc to error_init and
set_designator.
(set_init_label): Likewise.
(output_init_element): Pass loc to error_init.
(process_init_element): Pass loc to error_init, pop_init_level,
pedwarn_init, and push_init_level.
* gcc.dg/pr61096-1.c: New test.
* gcc.dg/pr61096-2.c: New test.
From-SVN: r210280
Mike Stump [Fri, 9 May 2014 14:06:15 +0000 (14:06 +0000)]
re PR fortran/61109 (ICE in fortran/trans-array.c on dimension 0 arrays)
PR fortran/61109
* trans-array.c (gfc_conv_array_initializer): Fix wide-int
conversion bug.
From-SVN: r210277
Kenneth Zadeck [Fri, 9 May 2014 12:28:05 +0000 (12:28 +0000)]
fixed date of changelog entry
From-SVN: r210276
Florian Weimer [Fri, 9 May 2014 12:23:46 +0000 (14:23 +0200)]
-fstack-protector-strong: Instrumentation for return slots
This patch fixes a loophole in the -fstack-protector-strong protection.
If a function call uses a return slot, the caller needs stack protector
instrumentation because the return slot is addressable.
gcc/
2014-05-09 Florian Weimer <fweimer@redhat.com>
* cfgexpand.c (stack_protect_decl_p): New function, extracted from
expand_used_vars.
(stack_protect_return_slot_p): New function.
(expand_used_vars): Call stack_protect_decl_p and
stack_protect_return_slot_p for -fstack-protector-strong.
gcc/testsuite/
2014-05-09 Florian Weimer <fweimer@redhat.com>
* gcc.dg/fstack-protector-strong.c: Add coverage for return slots.
* g++.dg/fstack-protector-strong.C: Likewise.
* gcc.target/i386/ssp-strong-reg.c: New file.
From-SVN: r210275
Kenneth Zadeck [Fri, 9 May 2014 12:21:23 +0000 (12:21 +0000)]
re PR middle-end/61111 (Infinite recursion between fold_build2_stat_loc and fold_binary_loc)
2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
PR middle-end/61111
* fold-const.c (fold_binary_loc): Changed width of mask.
From-SVN: r210274
David Wohlferd [Fri, 9 May 2014 12:15:41 +0000 (12:15 +0000)]
014-05-09 David Wohlferd <LimeGreenSocks@yahoo.com> Andrew Haley...
014-05-09 David Wohlferd <LimeGreenSocks@yahoo.com>
Andrew Haley <aph@redhat.com>
Richard Sandiford <rdsandiford@googlemail.com>
* doc/extend.texi: Rewrite inline asm page / re-org asm-related
pages.
From-SVN: r210273
Georg-Johann Lay [Fri, 9 May 2014 12:11:30 +0000 (12:11 +0000)]
avr-fixed.md (round<mode>3): Use -1U instead of -1 in unsigned int initializers for regno_in, regno_out.
* config/avr/avr-fixed.md (round<mode>3): Use -1U instead of -1 in
unsigned int initializers for regno_in, regno_out.
From-SVN: r210272
Georg-Johann Lay [Fri, 9 May 2014 11:20:43 +0000 (11:20 +0000)]
re PR target/61055 ([avr] wrong test instruction after increment with -O1)
gcc/config/avr
PR target/61055
* config/avr/avr.md (cc): Add new attribute set_vzn.
(addqi3, addqq3, adduqq3, subqi3, subqq3, subuqq3, negqi2) [cc]:
Set cc insn attribute to set_vzn instead of set_zn for alternatives
with INC, DEC or NEG.
* config/avr/avr.c (avr_notice_update_cc): Handle SET_VZN.
(avr_out_plus_1): ADIW sets cc0 to CC_SET_CZN.
INC, DEC and ADD+ADC set cc0 to CC_CLOBBER.
gcc/testsuite/
PR target/61055
* gcc.target/avr/torture/pr61055.c: New test.
From-SVN: r210267
Joey Ye [Fri, 9 May 2014 08:50:22 +0000 (08:50 +0000)]
files.c (find_file_in_dir): Always try to shorten for DOS non-system headers.
2014-05-09 Joey Ye <joey.ye@arm.com>
* files.c (find_file_in_dir): Always try to shorten for DOS
non-system headers.
* init.c (ENABLE_CANONICAL_SYSTEM_HEADERS): Default enabled for DOS.
From-SVN: r210264
Ramana Radhakrishnan [Fri, 9 May 2014 08:32:37 +0000 (08:32 +0000)]
Revert wide-int change.
2014-05-09 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Revert:
2014-05-08 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* wide-int.cc (UTItype): Define.
(UDWtype): Define for appropriate W_TYPE_SIZE.
From-SVN: r210263
Marek Polacek [Fri, 9 May 2014 08:24:37 +0000 (08:24 +0000)]
re PR c/50459 (alignof doesn't work on plain old constant, works with expressions containing it)
PR c/50459
c-family/
* c-common.c (check_user_alignment): Return -1 if alignment is error
node.
(handle_aligned_attribute): Don't call default_conversion on
FUNCTION_DECLs.
(handle_vector_size_attribute): Likewise.
(handle_tm_wrap_attribute): Handle case when wrap_decl is error node.
(handle_sentinel_attribute): Call default_conversion and allow even
integral types as an argument.
c/
* c-parser.c (c_parser_attributes): Parse the arguments as an
expression-list if the attribute takes identifier.
testsuite/
* c-c++-common/attributes-1.c: Move test line to a new test.
* c-c++-common/attributes-2.c: New test.
* c-c++-common/pr50459.c: New test.
* c-c++-common/pr59280.c: Add "undeclared" to dg-error.
* gcc.dg/nonnull-2.c: Likewise.
* gcc.dg/pr55570.c: Modify dg-error.
* gcc.dg/tm/wrap-2.c: Likewise.
From-SVN: r210262
Richard Biener [Fri, 9 May 2014 07:49:18 +0000 (07:49 +0000)]
Makefile.in (GTFILES): Remove tree-ssa-propagate.c.
2014-05-09 Richard Biener <rguenther@suse.de>
* Makefile.in (GTFILES): Remove tree-ssa-propagate.c.
* tree-ssa-propagate.c: Do not include gt-tree-ssa-propagate.h.
(interesting_ssa_edges, varying_ssa_edges): Move out of GC space.
(add_ssa_edge, process_ssa_edge_worklist, ssa_prop_init,
ssa_propagate): Adjust.
From-SVN: r210261
Jan-Benedict Glaw [Fri, 9 May 2014 07:25:21 +0000 (07:25 +0000)]
config-list.mk (show): New target.
2014-05-09 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* config-list.mk (show): New target.
From-SVN: r210260
Ian Lance Taylor [Fri, 9 May 2014 05:01:08 +0000 (05:01 +0000)]
mmap.c (backtrace_free): If freeing a large aligned block of memory, call munmap rather than holding onto it.
* mmap.c (backtrace_free): If freeing a large aligned block of
memory, call munmap rather than holding onto it.
(backtrace_vector_grow): When growing a vector, double the number
of pages requested. When releasing the old version of a grown
vector, pass the correct size to backtrace_free.
From-SVN: r210256
Jeff Law [Fri, 9 May 2014 04:54:00 +0000 (22:54 -0600)]
re PR tree-optimization/61009 (Incorrect jump threading in dom)
2014-05-08 Jeff Law <law@redhat.com>
PR tree-optimization/61009
* tree-ssa-threadedge.c (thread_through_normal_block): Return a
tri-state rather than a boolean. When a block is too big to
thread through, inform caller via negative return value.
(thread_across_edge): If a block was too big for normal threading,
then it's too big for a joiner too, so remove temporary equivalences
and return immediately.
PR tree-optimization/61009
* g++.dg/tree-ssa/pr61009.C: New test.
From-SVN: r210254
GCC Administrator [Fri, 9 May 2014 00:16:56 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r210253
Matthias Klose [Thu, 8 May 2014 22:17:43 +0000 (22:17 +0000)]
re PR driver/61106 ([4.8/4.9] impliedness of -Wunused-parameter depends on -W option ordering)
gcc/
2014-05-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
Matthias Klose <doko@ubuntu.com>
PR driver/61106
* optc-gen.awk: Fix option handling for -Wunused-parameter.
gcc/testsuite/
2014-05-08 Matthias Klose <doko@ubuntu.com>
PR driver/61106
* gcc-dg/unused-8a.c: New.
* gcc-dg/unused-8b.c: Likewise.
From-SVN: r210246
Richard Sandiford [Thu, 8 May 2014 20:24:33 +0000 (20:24 +0000)]
dg-extract-results.py: New file.
contrib/
* dg-extract-results.py: New file.
* dg-extract-results.sh: Use it if the environment seems suitable.
From-SVN: r210243
Joshua Gay [Thu, 8 May 2014 19:52:40 +0000 (19:52 +0000)]
re PR libstdc++/61117 (Manual uses term open source but should say free software)
2014-05-08 Joshua Gay <jgay@gnu.org>
PR libstdc++/61117
* doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
source" with "free software".
* doc/html/faq.html: Likewise.
From-SVN: r210241
Uros Bizjak [Thu, 8 May 2014 19:13:10 +0000 (21:13 +0200)]
re PR target/59952 (-march=core-avx2 should not enable RTM)
PR target/59952
* config/i386/i386.c (PTA_HASWELL): Remove PTA_RTM.
From-SVN: r210234
Uros Bizjak [Thu, 8 May 2014 19:02:28 +0000 (21:02 +0200)]
re PR target/61092 (wide-int merge broke alpha bootstrap)
PR target/61092
* config/alpha/alpha.c: Include gimple-iterator.h.
(alpha_gimple_fold_builtin): New function. Move
ALPHA_BUILTIN_UMULH folding from ...
(alpha_fold_builtin): ... here.
(TARGET_GIMPLE_FOLD_BUILTIN): New define.
From-SVN: r210233
Jonathan Wakely [Thu, 8 May 2014 19:01:51 +0000 (20:01 +0100)]
iostream: Fix URL in comment.
* include/std/iostream: Fix URL in comment.
* src/c++98/ios_init.cc: Fix path in comment.
From-SVN: r210232
Jonathan Wakely [Thu, 8 May 2014 18:30:14 +0000 (19:30 +0100)]
re PR libstdc++/13860 (Poor error messages on invalid template parameters for basic_filebuf)
PR libstdc++/13860
* include/std/fstream (basic_filebuf): Enforce requirements on traits.
From-SVN: r210231
Marek Polacek [Thu, 8 May 2014 18:19:09 +0000 (18:19 +0000)]
re PR c/61053 (_Alignas(long long) reduces alignment of long long)
PR c/61053
c-family/
* c-common.c (min_align_of_type): New function factored out from...
(c_sizeof_or_alignof_type): ...here.
* c-common.h (min_align_of_type): Declare.
c/
* c-decl.c (grokdeclarator): Use min_align_of_type instead of
TYPE_ALIGN_UNIT.
testsuite/
* gcc.dg/pr61053.c: New test.
From-SVN: r210230
Marek Polacek [Thu, 8 May 2014 17:42:09 +0000 (17:42 +0000)]
re PR c/61077 (_Atomic in the return type or argument types of main not diagnosed)
PR c/61077
c-family/
* c-common.c (check_main_parameter_types): Warn for _Atomic-qualified
parameter type of main.
c/
* c-decl.c (start_function): Warn for _Atomic-qualified return type
of main.
testsuite/
* gcc.dg/pr61077.c: New test.
From-SVN: r210229
Jonathan Wakely [Thu, 8 May 2014 17:17:06 +0000 (18:17 +0100)]
re PR libstdc++/57394 ([C++11] basic_streambuf incorrect copy constructor / copy assignment access specifier)
PR libstdc++/57394
* include/bits/ios_base.h (ios_base(const ios_base&)): Define as
deleted for C++11.
(operator=(const ios_base&)): Likewise.
* include/std/streambuf: Remove trailing whitespace.
(basic_streambuf(const basic_streambuf&)): Fix initializer for
_M_out_end. Define as defaulted for C++11.
(operator=(const basic_streambuf&)): Define as defaulted for C++11.
(swap(basic_streambuf&)): Define for C++11.
* testsuite/27_io/basic_streambuf/cons/57394.cc: New.
From-SVN: r210228
Tobias Burnus [Thu, 8 May 2014 17:00:07 +0000 (19:00 +0200)]
gfortran.h (gfc_isym_id): Add GFC_ISYM_CAF_GET and GFC_ISYM_CAF_SEND.
2014-05-08 Tobias Burnus <burnus@net-b.de>
* gfortran.h (gfc_isym_id): Add GFC_ISYM_CAF_GET
and GFC_ISYM_CAF_SEND.
* intrinsic.c (add_functions): Add only internally
accessible caf_get and caf_send functions.
* resolve.c (add_caf_get_intrinsic,
remove_caf_get_intrinsic): New functions.
(resolve_variable): Resolve expression rank and
prepare for add_caf_get_intrinsic call.
(gfc_resolve_expr): For variables, remove rank
resolution.
(resolve_ordinary_assign): Prepare call to
GFC_ISYM_CAF_SEND.
(resolve_code): Avoid call to GFC_ISYM_CAF_GET for
the LHS of an assignment.
From-SVN: r210225
Tobias Burnus [Thu, 8 May 2014 16:57:42 +0000 (18:57 +0200)]
trans-intrinsic.c (conv_co_minmaxsum): Change condition style.
2014-05-08 Tobias Burnus <burnus@net-b.de>
* trans-intrinsic.c (conv_co_minmaxsum): Change condition style.
From-SVN: r210224