1. 29 Jan, 2019 2 commits
    • Ensure pool resources always use normal mode vector · 1f48525d
      The __pool_resource::_M_unpooled member was declared with type
      std::vector, which means that the type depends on whether debug mode is
      active or not. Because the non-inline definitions in
      src/c++17/memory_resource.cc are never compiled with debug mode, the
      type declared in the header doesn't match the type in the library
      definitions, leading to undefined behaviour.
      
      The solution is to ensure the header always uses the non-debug vector,
      even when debug mode is active. To make this easier a new alias template
      is defined: _GLIBCXX_STD_C::pmr::vector.
      
      	* include/std/memory_resource (__pool_resource::_M_unpooled): Use
      	normal mode vector, even for debug mode.
      	* include/std/vector [_GLIBCXX_DEBUG] (_GLIBCXX_STD_C::pmr::vector):
      	Define alias template for normal mode vector.
      
      From-SVN: r268354
      Jonathan Wakely committed
    • Daily bump. · a097ba8a
      From-SVN: r268353
      GCC Administrator committed
  2. 28 Jan, 2019 18 commits
    • PR libstdc++/68737 Do not use vsnprintf on HPUX · c98f2551
      It doesn't conform to the spec, so use vsprintf with a large buffer
      instead.
      
      	PR libstdc++/68737
      	* config/locale/generic/c_locale.h (__convert_from_v)
      	[_GLIBCXX_USE_C99_STDIO]: Also check _GLIBCXX_HAVE_BROKEN_VSNPRINTF.
      	* config/os/hpux/os_defines.h: Define _GLIBCXX_HAVE_BROKEN_VSNPRINTF.
      	* include/bits/locale_facets.tcc (num_put::_M_insert_float)
      	[_GLIBCXX_USE_C99_STDIO]: Also check _GLIBCXX_HAVE_BROKEN_VSNPRINTF.
      
      From-SVN: r268350
      Jonathan Wakely committed
    • re PR c/89045 (ICE in get_parm_info, at c/c-decl.c:7518) · f4b7e754
      	PR c/89045
      	* c-decl.c (build_compound_literal): Don't pushdecl if in parameter
      	scope.
      
      	* gcc.dg/pr89045.c: New test.
      
      From-SVN: r268349
      Jakub Jelinek committed
    • re PR c/86125 (missing -Wbuiltin-declaration-mismatch on a mismatched return type) · 6a335b96
      	PR c/86125
      	* c-decl.c (last_fileptr_type): Remove.
      	(last_structptr_types): New variable.
      	(match_builtin_function_types): Compare TYPE_MAIN_VARIANT of
      	{old,new}rettype instead of the types themselves.  Assert
      	last_structptr_types array has the same number of elements
      	as builtin_structptr_types array.  Use TYPE_MAIN_VARIANT for
      	argument oldtype and newtype.  Instead of handling
      	just fileptr_type_node specially, handle all builtin_structptr_types
      	pointer nodes.  Formatting fix.
      
      	* c-common.c (c_common_nodes_and_builtins): Build type variants for
      	builtin_structptr_types types even for C.
      
      	* gcc.dg/Wbuiltin-declaration-mismatch-7.c: Guard testcase for
      	lp64, ilp32 and llp64 only.
      	(fputs): Use unsigned long long instead of size_t for return type.
      	(vfprintf, vfscanf): Accept arbitrary target specific type for
      	va_list.
      
      From-SVN: r268348
      Jakub Jelinek committed
    • compiler: improve recursive type detection · ab1be99f
          
          Detect recursive type definition like
          "type T0 T1; type T1 T2; ...... type Tn T0".
          
          Fixes golang/go#25320.
          
          Reviewed-on: https://go-review.googlesource.com/c/159837
      
      From-SVN: r268347
      Ian Lance Taylor committed
    • re PR middle-end/89002 (ICE in scan_omp_1_op, at omp-low.c:3166) · 52bfbb69
      	PR middle-end/89002
      	* gimplify.c (gimplify_omp_for): When adding OMP_CLAUSE_*_GIMPLE_SEQ
      	for lastprivate/linear IV, push gimplify context around gimplify_assign
      	and, if it needed any temporaries, pop it into a gimple bind around the
      	sequence.
      
      	* testsuite/libgomp.c/pr89002.c: New test.
      
      From-SVN: r268346
      Jakub Jelinek committed
    • re PR middle-end/89002 (ICE in scan_omp_1_op, at omp-low.c:3166) · be3a87e7
      	PR middle-end/89002
      	* gimplify.c (gimplify_omp_for): When adding OMP_CLAUSE_*_GIMPLE_SEQ
      	for lastprivate/linear IV, push gimplify context around gimplify_assign
      	and, if it needed any temporaries, pop it into a gimple bind around the
      	sequence.
      
      	* testsuite/libgomp.c/pr89002.c: New test.
      
      From-SVN: r268345
      Jakub Jelinek committed
    • [libbacktrace] Fix and simplify xcoff_%.c pattern rule · 62d4a355
      When generating xcoff_%.c, the last command is a sed command.  In case of a
      sed failure, this will leave an incomplete file, which will appear as up to
      date to make, so consequently it will not be regenerated.  Fix this by
      sedding into a temporary file instead.
      
      Also, use $< to access the prerequisite xcoff.c, instead of spelling out the
      file name once more.
      
      2019-01-28  Tom de Vries  <tdevries@suse.de>
      
      	* Makefile.am (xcoff_%.c): Generate sed result into temporary file.
      	Use $< to access prerequisite.
      	* Makefile.in: Regenerate.
      
      From-SVN: r268344
      Tom de Vries committed
    • PR c++/88358 - name wrongly treated as type. · b6d0f41a
      	* parser.c (cp_parser_direct_declarator): Don't assume a qualified-id
      	in parameter-list is a type if the function's declarator-id is not
      	qualified.
      
      	* g++.dg/cpp2a/typename1.C: Add dg-error.
      	* g++.dg/cpp2a/typename13.C: New test.
      	* g++.dg/cpp2a/typename6.C: Make a function name qualified.
      	Add typename.
      
      From-SVN: r268343
      Marek Polacek committed
    • Makefile.in: Really regenerate. · 2c5b3920
      	* Makefile.in: Really regenerate.
      
      From-SVN: r268342
      Uros Bizjak committed
    • * g++.dg/cpp0x/enum37.C: Add dg-error. · cf142085
      From-SVN: r268341
      Marek Polacek committed
    • c-warn.c (check_address_or_pointer_of_packed_member): Handle the case when rhs… · 2a06eba5
      c-warn.c (check_address_or_pointer_of_packed_member): Handle the case when rhs is of array type correctly.
      
      2019-01-28  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * c-warn.c (check_address_or_pointer_of_packed_member): Handle the case
              when rhs is of array type correctly.  Fix handling of nested structures.
              Fix handling of indirect_ref together with nop_expr and/or addr_expr.
              (check_and_warn_address_or_pointer_of_packed_member): Fix handling of
              type casts within nested compound expressions.
      
      testsuite:
      2019-01-28  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * c-c++-common/Waddress-of-packed-member-1.c: Extended test case.
              * c-c++-common/Waddress-of-packed-member-2.c: New test case.
      
      From-SVN: r268337
      Bernd Edlinger committed
    • common.opt (-Wattribute-alias): Remove "no-" from name. · 5ebfd62b
      2019-01-28  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * common.opt (-Wattribute-alias): Remove "no-" from name.
              Make -Wattribute-alias command line option and
              #pragma GCC diagnostic ignored "-Wattribute-alias" work again.
      
      testsuite:
      2019-01-28  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * gcc.dg/Wattribute-alias.c: Add test for #pragma GCC diagnostic ignored
              "-Wattribute-alias".
      
      From-SVN: r268336
      Bernd Edlinger committed
    • re PR target/89073 (x86 __attribute__ ((target("sha"))) not documented) · 811a6710
      	PR target/89073
      	* doc/invoke.texi (-mclwb, -mprfchw, -mrdpid, -mrdseed, -msgx,
      	-madx, -mhle, -mavx5124fmaps, -mavx512vnni, -mavx5124vnniw): Document
      	x86 ISA options.
      	(bmi2): Add missing @opindex.
      	* doc/extend.texi (x86 target attribute): Move fma4, lwp, ssse3
      	options alphabetically.  Add missing 3dnow, 3dnowa, adx, avx, avx2,
      	avx5124fmaps, avx5124vnniw, avx512bitalg, avx512bw, avx512cd,
      	avx512dq, avx512er, avx512f, avx512ifma, avx512pf, avx512vbmi,
      	avx512vbmi2, avx512vl, avx512vnni, avx512vpopcntdq, bmi, bmi2,
      	cldemote, clflushopt, clwb, clzero, crc32, cx16, f16c, fma, fsgsbase,
      	fxsr, gfni, hle, lzcnt, movbe, movdir64b, movdiri, mwaitx, pconfig,
      	pku, prefetchwt1, prfchw, ptwrite, rdpid, rdrnd, rdseed, rtm, sahf,
      	sgx, sha, shstk, tbm, vaes, vpclmulqdq, waitpkg, wbnoinvd, xsave,
      	xsavec, xsaveopt and xsaves options.
      
      From-SVN: r268335
      Jakub Jelinek committed
    • re PR debug/89076 (gcc/dwarf2out.c:23270:9: warning: duplicated ‘if’ condition) · 44ed55d5
      2019-01-28  Richard Biener  <rguenther@suse.de>
      
      	PR debug/89076
      	* dwarf2out.c (gen_subprogram_die): Remove leftover from MPX
      	support removal.
      
      From-SVN: r268334
      Richard Biener committed
    • re PR testsuite/89064 (libgomp.graphite/force-parallel-5.c fails starting with r268257) · 497ef4d7
      2019-01-28  Richard Biener  <rguenther@suse.de>
      
      	PR testsuite/89064
      	PR tree-optimization/86865
      	* testsuite/libgomp.graphite/force-parallel-5.c: XFAIL.
      
      From-SVN: r268333
      Richard Biener committed
    • re PR tree-optimization/88739 (Big-endian union bug) · ef310a95
      2019-01-28  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/88739
      	* tree-cfg.c (verify_types_in_gimple_reference): Verify
      	BIT_FIELD_REFs only are applied to mode-precision operands
      	when they are integral.
      	(verify_gimple_assign_ternary): Likewise for BIT_INSERT_EXPR.
      	* tree-ssa-sccvn.c (vn_reference_lookup_3): Avoid generating
      	BIT_FIELD_REFs of non-mode-precision integral operands.
      
      From-SVN: r268332
      Richard Biener committed
    • libgfortran: Use proper gthr.h API · 92ab6b83
      libgfortran/
      
      	* io/async.c (init_adv_cond): Use __GTHREAD_COND_INIT_FUNCTION().
      
      From-SVN: r268331
      Sebastian Huber committed
    • Daily bump. · 32ed8fa2
      From-SVN: r268330
      GCC Administrator committed
  3. 27 Jan, 2019 9 commits
    • re PR fortran/70696 ([Coarray] ICE on EVENT POST of host-associated EVENT_TYPE coarray) · f2b3affb
      	PR fortran/70696
      	* gfortran.dg/coarray/event_3.f0: Add save attribue to x.
      
      From-SVN: r268325
      Uros Bizjak committed
    • PR c++/88815 - narrowing conversion lost in decltype. · f8ec35c3
      	PR c++/78244 - narrowing conversion in template not detected.
      	* cp-tree.h (CONSTRUCTOR_IS_DEPENDENT): New.
      	* pt.c (instantiation_dependent_r): Consider a CONSTRUCTOR with
      	CONSTRUCTOR_IS_DEPENDENT instantiation-dependent.
      	* semantics.c (finish_compound_literal): When the compound literal
      	isn't instantiation-dependent and the type isn't type-dependent,
      	fall back to the normal processing.  Set CONSTRUCTOR_IS_DEPENDENT.
      
      	* g++.dg/cpp0x/Wnarrowing15.C: New test.
      	* g++.dg/cpp0x/Wnarrowing16.C: New test.
      	* g++.dg/cpp0x/constexpr-decltype3.C: New test.
      	* g++.dg/cpp1y/Wnarrowing1.C: New test.
      
      From-SVN: r268321
      Marek Polacek committed
    • PR c++/89024 - ICE with incomplete enum type. · 73a54a61
      	* call.c (standard_conversion): When converting an
      	ARITHMETIC_TYPE_P to an incomplete type, return NULL.
      	
      	* g++.dg/cpp0x/enum37.C: New test.
      
      From-SVN: r268320
      Marek Polacek committed
    • re PR libfortran/89020 (close(status='DELETE') does not remove file) · 9faf6e70
      2019-01-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libfortran/89020
      	* io/close.c (st_close): Simplify text of error message to not
      	presume a specific cause of failure to remove file.
      
      From-SVN: r268319
      Jerry DeLisle committed
    • repinfo.adb (List_Component_Layout): Remove superfluous space for zero-sized field. · 683ccd05
      	* repinfo.adb (List_Component_Layout): Remove superfluous space for
      	zero-sized field.
      	* gcc-interface/ada-tree.h (TYPE_IS_EXTRA_SUBTYPE_P): New macro.
      	* gcc-interface/gigi.h (create_extra_subtype): Declare.
      	* gcc-interface/decl.c (TYPE_ARRAY_SIZE_LIMIT): Likewise.
      	(update_n_elem): New function.
      	(gnat_to_gnu_entity): Use create_extra_subtype to create extra subtypes
      	instead of doing it manually.
      	<E_Array_Type>: Use update_n_elem to compute the maximum size.  Use the
       	index type instead of base type for the bounds. Set TYPE_ARRAY_MAX_SIZE
      	of the array to the maximum size.
      	<E_Array_Subtype>: Create an extra subtype using the index type of the
      	base array type for self-referential bounds.  Use update_n_elem to
      	compute the maximum size.  Set TYPE_ARRAY_MAX_SIZE of the array to the
      	maximum size.
      	(gnat_to_gnu_field): Clear DECL_NONADDRESSABLE_P on discriminants.
      	* gcc-interface/misc.c (gnat_get_alias_set): Return the alias set of
      	the base type for an extra subtype.
      	(gnat_type_max_size): Remove obsolete code.
      	* gcc-interface/trans.c (Attribute_to_gnu): Minor tweak.
      	(can_be_lower_p): Deal with pathological types.
      	* gcc-interface/utils.c (create_extra_subtype): New function.
      	(create_field_decl): Minor tweak.
      	(max_size) <tcc_reference>: Compute a better value by using the extra
       	subtypes on the self-referential bounds.
      	<tcc_binary>: Rewrite.  Deal with "negative value" in unsigned types.
      	<tcc_expression>: Likewise.
      	* gcc-interface/utils2.c (compare_arrays): Retrieve the original bounds
      	of the arrays upfront.  Swap only if the second length is not constant.
      	Use comparisons on the original bounds consistently for the null tests.
      	(build_binary_op): Use TYPE_IS_EXTRA_SUBTYPE_P macro.
      	(build_allocator): Minor tweak.
      
      From-SVN: r268318
      Eric Botcazou committed
    • decl.c (array_type_has_nonaliased_component): Return the same value for every… · 33731c66
      decl.c (array_type_has_nonaliased_component): Return the same value for every dimension of a multidimensional array type.
      
      	* gcc-interface/decl.c (array_type_has_nonaliased_component): Return
      	the same value for every dimension of a multidimensional array type.
      
      From-SVN: r268314
      Eric Botcazou committed
    • re PR target/87214 (r263772 miscompiled 520.omnetpp_r in SPEC CPU 2017) · b253f94d
      	PR target/87214
      	* config/i386/sse.md
      	(<mask_codefor>avx512dq_shuf_<shuffletype>64x2_1<mask_name>,
      	avx512f_shuf_<shuffletype>64x2_1<mask_name>): Ensure the
      	first constants in pairs are multiples of 2.  Formatting fixes.
      	(avx512vl_shuf_<shuffletype>32x4_1<mask_name>,
      	avx512vl_shuf_<shuffletype>32x4_1<mask_name>): Ensure the
      	first constants in each quadruple are multiples of 4.  Formatting fixes.
      
      	* gcc.target/i386/avx512vl-pr87214-1.c: New test.
      	* gcc.target/i386/avx512vl-pr87214-2.c: New test.
      
      From-SVN: r268310
      Jakub Jelinek committed
    • re PR libfortran/89020 (close(status='DELETE') does not remove file) · 2ee43ae6
      2019-01-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libfortran/89020
      	* io/close.c (st_close): Fix typo.
      
      From-SVN: r268309
      Jerry DeLisle committed
    • Daily bump. · b8f1882e
      From-SVN: r268308
      GCC Administrator committed
  4. 26 Jan, 2019 11 commits