Skip to content
Snippets Groups Projects
  1. May 25, 2017
  2. May 24, 2017
    • Nathan Sidwell's avatar
      friend.c (do_friend): Remove check for existing decl. · 5ad4f1c8
      Nathan Sidwell authored
      	cp/
      	* friend.c (do_friend): Remove check for existing decl.
      	* name-lookup.h (lookup_name_innermost_nonclass_level): Delete.
      	* name-lookup.c (push_local_binding): Directly look for binding.
      	(lookup_name_innermost_nonclass_level_1): Delete.
      	(lookup_name_innermost_nonclass_level): Delete.
      
      	testsuite/
      	* g++.dg/lookup/friend12.C: Adjust diagnostics.
      	* g++.dg/lookup/friend19.C: New.
      	* g++.dg/lookup/friend20.C: New.
      
      From-SVN: r248435
      5ad4f1c8
    • Nathan Sidwell's avatar
      * Make-lang.in (CXX_AND_OBJCXX_OBJS): Alphabetize. · 6cdb26f2
      Nathan Sidwell authored
      From-SVN: r248434
      6cdb26f2
    • Nathan Sidwell's avatar
      cp-tree.h (cp_free_lang_data): Add extern. · d48b9bbe
      Nathan Sidwell authored
      	* cp-tree.h (cp_free_lang_data): Add extern.
      	(ovl_skip_hidden, is_overloaded_fn, really_overloaded_fn): Add
      	ATTRIBUTE_PURE.
      	(type_unknown_p): Return bool, make inline, lose TREE_LIST check.
      	* typeck.c (type_unknown_p): Delete.
      	* tree.c (is_overloaded_fn): Use MAYBE_BASELINE_FUNCTIONS, adjust
      	overload management.
      	(dependent_name): Likewise.
      	(decl_anon_ns_mem_p): Simplify.
      
      From-SVN: r248433
      d48b9bbe
    • Jonathan Wakely's avatar
      PR c++/80544 strip cv-quals from cast results · d4a760d8
      Jonathan Wakely authored
      gcc/cp:
      
      	PR c++/80544
      	* tree.c (reshape_init): Use unqualified type for direct enum init.
      	* typeck.c (maybe_warn_about_cast_ignoring_quals): New.
      	(build_static_cast_1, build_reinterpret_cast_1): Strip cv-quals from
      	non-class destination types.
      	(build_const_cast_1): Strip cv-quals from destination types.
      	(build_static_cast, build_reinterpret_cast, build_const_cast)
      	(cp_build_c_cast): Add calls to maybe_warn_about_cast_ignoring_quals.
      
      gcc/testsuite:
      
      	PR c++/80544
      	* g++.dg/expr/cast11.C: New test.
      
      From-SVN: r248432
      d4a760d8
    • Martin Sebor's avatar
      PR c/80731 - poor -Woverflow warnings · 3cd211af
      Martin Sebor authored
      gcc/c-family/ChangeLog:
      
      	PR c/80731
      	* c-common.h (unsafe_conversion_p): Add a function argument.
      	* c-common.c (unsafe_conversion_p): Same.
      	Add type names and values to diagnostics.
      	(scalar_to_vector): Adjust.
      	* c-warn.c (constant_expression_error): Add a function argument.
      	Add type names and values to diagnostics.
      	(conversion_warning): Add a function argument.
      	Add type names and values to diagnostics.
      	(warnings_for_convert_and_check): Same.
      
      gcc/c/ChangeLog:
      
      	PR c/80731
      	* c-fold.c (c_fully_fold_internal): Adjust.
      	* c-typeck.c (parser_build_unary_op): Adjust.
      
      gcc/cp/ChangeLog:
      
      	PR c/80731
      	* call.c (fully_fold_internal): Adjust.
      
      gcc/testsuite/ChangeLog:
      
      	PR c/80731
      	* c-c++-common/Wfloat-conversion.c: Adjust.
      	* c-c++-common/dfp/convert-int-saturate.c: Same.
      	* c-c++-common/pr68657-1.c: Same.
      	* g++.dg/ext/utf-cvt.C: Same.
      	* g++.dg/ext/utf16-4.C: Same.
      	* g++.dg/warn/Wconversion-real-integer-3.C: Same.
      	* g++.dg/warn/Wconversion-real-integer2.C: Same.
      	* g++.dg/warn/Wconversion3.C: Same.
      	* g++.dg/warn/Wconversion4.C: Same.
      	* g++.dg/warn/Wsign-conversion.C: Same.
      	* g++.dg/warn/overflow-warn-1.C: Same.
      	* g++.dg/warn/overflow-warn-3.C: Same.
      	* g++.dg/warn/overflow-warn-4.C: Same.
      	* g++.dg/warn/pr35635.C: Same.
      	* g++.old-deja/g++.mike/enum1.C: Same.
      	* gcc.dg/Wconversion-3.c: Same.
      	* gcc.dg/Wconversion-5.c: Same.
      	* gcc.dg/Wconversion-complex-c99.c: Same.
      	* gcc.dg/Wconversion-complex-gnu.c: Same.
      	* gcc.dg/Wconversion-integer.c: Same.
      	* gcc.dg/Wsign-conversion.c: Same.
      	* gcc.dg/bitfld-2.c: Same.
      	* gcc.dg/c90-const-expr-11.c: Same.
      	* gcc.dg/c90-const-expr-7.c: Same.
      	* gcc.dg/c99-const-expr-7.c: Same.
      	* gcc.dg/overflow-warn-1.c: Same.
      	* gcc.dg/overflow-warn-2.c: Same.
      	* gcc.dg/overflow-warn-3.c: Same.
      	* gcc.dg/overflow-warn-4.c: Same.
      	* gcc.dg/overflow-warn-5.c: Same.
      	* gcc.dg/overflow-warn-8.c: Same.
      	* gcc.dg/overflow-warn-9.c: New test.
      	* gcc.dg/pr35635.c: Adjust.
      	* gcc.dg/pr59940.c: Same.
      	* gcc.dg/pr59963-2.c: Same.
      	* gcc.dg/pr60114.c: Same.
      	* gcc.dg/switch-warn-2.c: Same.
      	* gcc.dg/utf-cvt.c: Same.
      	* gcc.dg/utf16-4.c: Same.
      
      From-SVN: r248431
      3cd211af
    • Eli Zaretskii's avatar
      waitpid.c (wait): Define as a macro that calls _cwait, so that this function works on MinGW. · 1ab4db93
      Eli Zaretskii authored
      2017-05-24  Eli Zaretskii  <eliz@gnu.org>
      * libiberty/waitpid.c (wait) [__MINGW32__]: Define as a macro
      that calls _cwait, so that this function works on MinGW.
      
      From-SVN: r248430
      1ab4db93
    • Segher Boessenkool's avatar
      Split off powerpcspe from rs6000 port · 83349046
      Segher Boessenkool authored
      	* config/powerpcspe: New port.  Files are copied from the rs6000
      	port, with "rs6000" in filenames replaced by "powerpcspe".
      
      	* config.gcc (powerpc*-*-*spe*): New.
      	(powerpc-*-eabispe*): Use ${cpu_type} instead of hardcoded pathnames.
      	(powerpc-*-rtems*spe*): New.
      	(powerpc*-*-linux*spe*): New.
      	(powerpc-wrs-vxworksspe): New.
      	(powerpc*-*-*, rs6000-*-*): Use ${cpu_type}.
      	(misc flags) [powerpc*-*-*, rs6000-*-*): Use ${cpu_type}.
      	* config.host (powerpc*-*-*spe*): New.
      
      From-SVN: r248429
      83349046
    • Jonathan Wakely's avatar
      Use CHAR_BIT instead of assuming 8 bits · b6784361
      Jonathan Wakely authored
      	* src/c++11/random.cc (random_device::_M_getentropy): Use __CHAR_BIT__
      	instead of fixed number of bits.
      
      From-SVN: r248428
      b6784361
    • Jakub Jelinek's avatar
      integer-pack2.C: Require int32 effective target. · 216bfadc
      Jakub Jelinek authored
      	* g++.dg/ext/integer-pack2.C: Require int32 effective target.
      	Don't include limits.h.
      	(w): Conditionalize on long long wider than int.  Use
      	1LL << (__SIZEOF_INT__ * __CHAR_BIT__) instead of
      	-9223372036854775808.
      	(x): Use __INT_MAX__ instead of INT_MAX.
      
      From-SVN: r248427
      216bfadc
    • Thomas Koenig's avatar
      dump-parse-tree.c (show_expr): Replace stdout with dumpfile for showing values. · a79b9474
      Thomas Koenig authored
      2017-05-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	* dump-parse-tree.c (show_expr):  Replace stdout
      	with dumpfile for showing values.
      
      From-SVN: r248426
      a79b9474
    • Thomas Koenig's avatar
      re PR fortran/66094 (Handle transpose(A) in inline matmul) · 610abc02
      Thomas Koenig authored
      2017-05-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/66094
      	* frontend-passes.c (matrix_case):  Add A2TB2.
      	(inline_limit_check):  Handle MATMUL(TRANSPOSE(A),B)
      	(inline_matmul_assign):  Likewise.
      
      2017-05-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/66094
      	* gfortran.dg/inline_matmul_16.f90:  New test.
      
      From-SVN: r248425
      610abc02
    • Wilco Dijkstra's avatar
      When lra-remat rematerializes an instruction with a clobber, it checks that... · 1a2fa2f8
      Wilco Dijkstra authored
      When lra-remat rematerializes an instruction with a clobber, it checks that the clobber does not kill live registers.
      
      When lra-remat rematerializes an instruction with a clobber, it checks
      that the clobber does not kill live registers.  However it fails to check
      that the clobber also doesn't overlap with the destination register of the
      final rematerialized instruction.  As a result it is possible to generate
      illegal instructions with the same hard register as the destination and a
      clobber.  Fix this by also checking for overlaps with the destination
      register.
      
          gcc/
      	PR rtl-optimization/80754
      	* lra-remat.c (do_remat): Add overlap checks for dst_regno.
      
      From-SVN: r248424
      1a2fa2f8
    • Nathan Sidwell's avatar
      cp-tree.h (ovl_skip_hidden): Declare. · c0edbb32
      Nathan Sidwell authored
      	* cp-tree.h (ovl_skip_hidden): Declare.
      	* tree.c (ovl_skip_hidden): New.
      	* name-lookup.c (arg_assoc_namespace): Call ovl_skip_hidden.
      	(lookup_arg_dependent_1): Likewise.
      	(ambiguous_decl): Use DECL_HIDDEN_P, ovl_skip_hidden.
      	(hidden_name_p, remove_hidden_names): Delete.
      	(lookup_name_real_1): Do not strip hidden names.
      	* name-lookup.h (hidden_name_p, remove_hidden_names): Delete.
      
      From-SVN: r248423
      c0edbb32
    • Sheldon Lobo's avatar
      Fix a SPARC -mcbcond compare-and-branch out of range failure. · 657e5f83
      Sheldon Lobo authored
      	* config/sparc/sparc.md (length): Return the correct value for -mflat
      	sibcalls to match output_sibcall.
      
      From-SVN: r248422
      657e5f83
    • Segher Boessenkool's avatar
      rs6000: Fix for separate shrink-wrapping for fp (PR80860, PR80843) · 6938e7f1
      Segher Boessenkool authored
      After my r248256, rs6000_components_for_bb allocates an sbitmap of size
      only 32 while it can use up to 64.  This patch fixes it.  It moves the
      n_components variable into the machine_function struct so that other
      hooks can use it.
      
      
      	PR bootstrap/80860
      	PR bootstrap/80843
      	* config/rs6000/rs6000.c (struct machine_function): Add new field
      	n_components.
      	(rs6000_get_separate_components): Init that field, use it.
      	(rs6000_components_for_bb): Use the field.
      
      From-SVN: r248421
      6938e7f1
    • Andreas Schwab's avatar
      baseline_symbols.txt: Update. · e1b67495
      Andreas Schwab authored
      	* config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
      	* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
      
      From-SVN: r248420
      e1b67495
    • Thomas Preud'homme's avatar
      [ARM] Fix typo in comment in arm_expand_prologue · 5bd5d236
      Thomas Preud'homme authored
      2017-05-24  Thomas Preud'homme  <thomas.preudhomme@arm.com>
      
          gcc/
          * config/arm/arm.c (arm_expand_prologue): Fix typo in comment.
      
      From-SVN: r248419
      5bd5d236
    • Tom de Vries's avatar
      Reinstate absolute line number in gcc.dg/cpp/19940712-1.c · 8d0c9b36
      Tom de Vries authored
      2017-05-24  Tom de Vries  <tom@codesourcery.com>
      
      	* gcc.dg/cpp/19940712-1.c: Reinstate absolute line number.
      
      From-SVN: r248418
      8d0c9b36
    • Thomas Schwinge's avatar
      OpenACC 1.0 compatibility: acc_async_wait, acc_async_wait_all · 7ce64403
      Thomas Schwinge authored
      	libgomp/
      	* openacc.h (acc_async_wait, acc_async_wait_all): New prototypes.
      	* libgomp.map (OACC_2.0.1): Add these.
      	* oacc-async.c (acc_async_wait, acc_async_wait_all): New aliases
      	for "acc_wait", and "acc_wait_all", respectively.
      	* openacc.f90 (acc_async_wait, acc_async_wait_all): New interfaces
      	for "acc_wait", and "acc_wait_all", respectively.
      	* openacc_lib.h (acc_async_wait, acc_async_wait_all): Likewise.
      	* libgomp.texi (acc_wait, acc_wait_all): Update.
      	* testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Update.
      	* testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: New file.
      	* testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
      
      From-SVN: r248413
      7ce64403
    • Thomas Schwinge's avatar
      Fortran OpenACC "openacc_lib.h": acc_pcopyin, acc_pcreate · 318686c2
      Thomas Schwinge authored
      	libgomp/
      	* openacc_lib.h (acc_pcopyin, acc_pcreate): Route to
      	acc_present_or_copyin and acc_present_or_create procedures,
      	respectively.
      	* testsuite/libgomp.oacc-fortran/lib-32-1.f: Exercise these, and
      	generally different variants of OpenACC Runtime Library functions.
      	* testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
      
      From-SVN: r248412
      318686c2
    • Thomas Schwinge's avatar
      Translate libgomp.oacc-c-c++-common/lib-32.c into Fortran · a6745534
      Thomas Schwinge authored
      	libgomp/
      	* testsuite/libgomp.oacc-fortran/lib-32-1.f: New file.
      	* testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
      
      From-SVN: r248411
      a6745534
    • Thomas Schwinge's avatar
      C/C++ OpenACC: acc_pcopyin, acc_pcreate · 9b94fbc7
      Thomas Schwinge authored
      	libgomp/
      	* openacc.h (acc_pcopyin, acc_pcreate): Provide prototypes instead
      	of preprocessor definitions.
      	* libgomp.h (strong_alias): Guard by "#ifdef
      	HAVE_ATTRIBUTE_ALIAS".
      	* oacc-mem.c: Provide "acc_pcreate" as alias for
      	"acc_present_or_create", and "acc_pcopyin" as alias for
      	"acc_present_or_copyin".
      	* libgomp.map: New version "OACC_2.0.1".
      	(OACC_2.0.1): Add "acc_pcopyin", and "acc_pcreate".
      	* testsuite/libgomp.oacc-c-c++-common/lib-38.c: Remove, merging
      	its content into...
      	* testsuite/libgomp.oacc-c-c++-common/lib-32.c: ... this file.
      	Extend testing.
      
      From-SVN: r248410
      9b94fbc7
    • Peter Bergner's avatar
      re PR middle-end/80823 (ICE: verify_flow_info failed) · 3f3fb6c9
      Peter Bergner authored
      gcc/
      	PR middle-end/80823
      	* tree-cfg.c (group_case_labels_stmt): Delete increment of "i";
      
      gcc/testsuite/
      	PR middle-end/80823
      	* gcc.dg/pr80823.c: New test.
      
      From-SVN: r248408
      3f3fb6c9
    • Andreas Krebbel's avatar
      S/390: Fix PR80725. · 00e0af8d
      Andreas Krebbel authored
      gcc/ChangeLog:
      
      2017-05-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	PR target/80725
      	* config/s390/s390.c (s390_check_qrst_address): Check incoming
      	address against address_operand predicate.
      	* config/s390/s390.md ("*indirect_jump"): Swap alternatives.
      
      gcc/testsuite/ChangeLog:
      
      2017-05-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	* gcc.target/s390/pr80725.c: New test.
      
      From-SVN: r248407
      00e0af8d
    • Nathan Sidwell's avatar
      cp-tree.h (OVL_HIDDEN_P): New. · ef4c5e78
      Nathan Sidwell authored
      	gcc/cp/
      	* cp-tree.h (OVL_HIDDEN_P): New.
      	(ovl_iterator::hidden_p, ovl_iterator::reveal_node): New.
      	(ovl_iterator::reveal_node): Declare.
      	* tree.c (ovl_copy): Copy OVL_HIDDEN_P.
      	(ovl_insert): Order on hiddenness.
      	(ovl_iterator::reveal_node): New.
      	* name-lookup.c (anticipated_builtin_p): New.
      	(supplement_binding_1): Use it.
      	(set_local_extern_decl_linkage): Use hidden_p.
      	(do_pushdecl): Deal with unhiding a hidden decl, use
      	anticipated_builtin_p.
      	(do_nonmember_using_decl): Use anticipated_decl_p.
      	(lookup_name_real_1): Use DECL_HIDDEN_P.
      
      	gcc/testsuite/
      	* g++.dg/lookup/extern-c-hidden.C: New.
      	* g++.dg/lookup/extern-redecl1.C: New.
      
      From-SVN: r248406
      ef4c5e78
    • Tom de Vries's avatar
      check_GNU_style.py: print usage if no file specified · b7fc9ae0
      Tom de Vries authored
      2017-05-24  Tom de Vries  <tom@codesourcery.com>
      
      	* check_GNU_style_lib.py: New file, factored out of ...
      	* check_GNU_style.py: ... here.  Call main unconditionally.
      
      From-SVN: r248403
      b7fc9ae0
    • Eric Botcazou's avatar
      var-tracking.c (track_expr_p): Do not return 0 for tracked record parameters passed indirectly. · 258dfcb7
      Eric Botcazou authored
      	* var-tracking.c (track_expr_p): Do not return 0 for tracked record
      	parameters passed indirectly.
      
      From-SVN: r248402
      258dfcb7
    • Thomas Schwinge's avatar
      libgomp nvptx plugin: Debugging output when disabling nvptx offloading · 78672bd8
      Thomas Schwinge authored
      	libgomp/
      	* plugin/plugin-nvptx.c (nvptx_get_num_devices): Debugging output
      	when disabling nvptx offloading.
      
      From-SVN: r248400
      78672bd8
    • Jason Merrill's avatar
      -Wunused and C++17 structured bindings · 5726acd7
      Jason Merrill authored
      	* decl.c (poplevel): Don't warn about unused structured bindings,
      	only real variables.
      	* error.c (dump_simple_decl): Handle structured bindings.
      	* expr.c (mark_exp_read): Look through DECL_VALUE_EXPR.
      
      From-SVN: r248399
      5726acd7
Loading