1. 15 Jan, 2019 17 commits
    • re PR fortran/81849 (Size of automatic array argument specified by host-associated variable.) · a81a6d58
      2019-01-15  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/81849
      	* resolve.c (resolve_symbol): Host associated varaibles can appear
      	in the specification statement of a RESULT array.
      
      2019-01-15  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/81849
      	* gfortran.dg/pr81849.f90: New test.
      
      From-SVN: r267948
      Steven G. Kargl committed
    • trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Deal with exprs that are indirect references; ie. · 92f3a180
      2019-01-15  Paul Thomas  <pault@gcc.gnu.org>
      
      	* trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Deal with exprs
      	that are indirect references; ie. dummy arguments.
      
      2019-01-15  Paul Thomas  <pault@gcc.gnu.org>
      
      	* gfortran.dg/ISO_Fortran_binding_2.c : Change reference to
      	ISO_Fortran_binding_2.h.
      
      From-SVN: r267946
      Paul Thomas committed
    • re PR c++/88866 (g++.dg/cpp0x/variadic126.C fails with -std=c++2a) · 51177d3d
      	PR c++/88866
      	* g++.dg/cpp0x/variadic126.C: Tweak dg-error.
      
      From-SVN: r267944
      Marek Polacek committed
    • * g++.dg/ext/utf-cvt-char8_t.C: Pass -fsigned-char. · f60026c5
      From-SVN: r267942
      Jason Merrill committed
    • PR inline-asm/52813 revisited · 99063eee
      The original patch for this PR made it an error to list the stack
      pointer in the clobber list of an inline asm.  However, the general
      feeling seemed to be that going straight to a hard error was too harsh,
      since there's quite a bit of existing code that has the clobber.
      
      This patch implements the compromise discussed on IRC of making it
      a -Wdeprecated warning instead.
      
      2019-01-15  Richard Sandiford  <richard.sandiford@arm.com>
      
      gcc/
      	PR inline-asm/52813
      	* doc/extend.texi: Document that listing the stack pointer in the
      	clobber list of an asm is a deprecated feature.
      	* common.opt (Wdeprecated): Moved from c-family/c.opt.
      	* cfgexpand.c (asm_clobber_reg_is_valid): Issue a -Wdeprecated
      	warning instead of an error for clobbers of the stack pointer.
      	Add a note explaining why.
      
      gcc/c-family/
      	PR inline-asm/52813
      	* c.opt (Wdeprecated): Move documentation and variable to common.opt.
      
      gcc/d/
      	PR inline-asm/52813
      	* lang.opt (Wdeprecated): Reference common.opt instead of c.opt.
      
      gcc/testsuite/
      	PR inline-asm/52813
      	* gcc.target/i386/pr52813.c (test1): Turn the diagnostic into a
      	-Wdeprecated warning and expect a following note:.
      
      From-SVN: r267941
      Richard Sandiford committed
    • re PR debug/88046 (ICE in add_data_member_location_attribute at… · 17f78160
      re PR debug/88046 (ICE in add_data_member_location_attribute at gcc/dwarf2out.c:19237 since r261885)
      
      2019-01-15  Richard Biener  <rguenther@suse.de>
      
      	PR debug/88046
      	* dwarf2out.c (gen_member_die): Do not generate inheritance
      	DIEs late.
      
      	* g++.dg/lto/pr88046_0.C: New testcase.
      
      From-SVN: r267940
      Richard Biener committed
    • re PR tree-optimization/88855 (ICE: verify_ssa failed (error:… · 41bc37ba
      re PR tree-optimization/88855 (ICE: verify_ssa failed (error: SSA_NAME_OCCURS_IN_ABNORMAL_PHI should be set))
      
      2019-01-15  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/88855
      	* tree-if-conv.c (combine_blocks): Collect
      	SSA_NAME_OCCURS_IN_ABNORMAL_PHI from propagated out virtuals.
      
      	* gcc.dg/pr88855.c: New testcase.
      
      From-SVN: r267939
      Richard Biener committed
    • Update value of __cpp_lib_shared_ptr_arrays macro · 10ddff67
      	* include/bits/shared_ptr_base.h (__cpp_lib_shared_ptr_arrays): Define
      	as 201611L, because P0497R0 changes are supported.
      	* include/std/version (__cpp_lib_shared_ptr_arrays): Likewise.
      
      From-SVN: r267938
      Jonathan Wakely committed
    • Fix more missing or incorrect feature test macros · 6e3dd211
      	* include/bits/erase_if.h [__cplusplus > 201703L]
      	(__cpp_lib_erase_if): Only define for C++2a.
      	* include/std/iterator [__cplusplus >= 201402L && !_GLIBCXX_DEBUG]
      	(__cpp_lib_null_iterators): Define.
      	* include/std/version [__cplusplus >= 201402L && !_GLIBCXX_DEBUG]
      	(__cpp_lib_null_iterators): Define.
      	[__cpp_impl_destroying_delete] (__cpp_lib_destroying_delete): Define.
      
      From-SVN: r267937
      Jonathan Wakely committed
    • Fix missing or incorrect feature test macros · 56a9eaf9
      	* doc/xml/manual/status_cxx2017.xml: Document P0032R3 and P0307R2
      	status.
      	* include/bits/stl_uninitialized.h (__cpp_lib_raw_memory_algorithms):
      	Define.
      	* include/std/any (__cpp_lib_any): Define as 201606L, because P0032R3
      	changes are supported.
      	* include/std/optional (__cpp_lib_optional): Likewise.
      	* include/std/variant (__cpp_lib_variant): Likewise.
      	* include/std/version [!__STRICT_ANSI__]
      	(__cpp_lib_uncaught_exceptions): Define as long integer.
      	[__cplusplus >= 201703L] (__cpp_lib_any)
      	(__cpp_lib_raw_memory_algorithms, __cpp_lib_uncaught_exceptions)
      	(__cpp_lib_variant): Define for C++17.
      	[__cplusplus >= 201703L] (__cpp_lib_optional): Update value and define
      	as long integer.
      	* libsupc++/exception (__cpp_lib_uncaught_exceptions): Define as long
      	integer.
      
      From-SVN: r267936
      Jonathan Wakely committed
    • [nvptx] Handle assignment to gang-level reduction variable · d41d952c
      2019-01-15  Tom de Vries  <tdevries@suse.de>
      
      	PR target/80547
      	* config/nvptx/nvptx.c (nvptx_goacc_reduction_init): Handle
      	lhs == NULL_TREE for gang-level reduction.
      
      	* testsuite/libgomp.oacc-c-c++-common/gang-reduction-var-assignment.c:
      	New test.
      
      From-SVN: r267934
      Tom de Vries committed
    • re PR ipa/88788 (Infinite loop in malloc_candidate_p_1 since r264838) · 4882e5ba
      2019-01-15  Richard Biener  <rguenther@suse.de>
      	    Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>
      
      	PR ipa/88788
      	* ipa-pure-const.c (malloc_candidate_p_1): Add parameter visited and
      	return true if SSA_NAME is already marked in visited bitmap.
      	(malloc_candidate_p): Pass visited to malloc_candidate_p_1.
      
      Co-Authored-By: Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
      
      From-SVN: r267933
      Richard Biener committed
    • decl.c (start_decl): Improve error location. · 079a6680
      /cp
      2019-01-15  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* decl.c (start_decl): Improve error location.
      	* decl2.c (grokfield): Likewise.
      
      /testsuite
      2019-01-15  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* g++.dg/diagnostic/typedef-initialized.C: New.
      
      /cp
      2019-01-15  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* decl.c (grokdeclarator): Move further up the location_t loc
      	declaration and use the location when building a TYPE_DECL for
      	a typedef name.
      	* decl2.c (grokbitfield): Use DECL_SOURCE_LOCATION in the error
      	about an ill-formed bit-field as typedef.
      
      /testsuite
      2019-01-15  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* g++.dg/diagnostic/bitfld3.C: New.
      
      From-SVN: r267932
      Paolo Carlini committed
    • re PR tree-optimization/88775 (Optimize std::string assignment) · 93aa3c4a
      	PR tree-optimization/88775
      	* match.pd (cmp (convert1?@2 addr@0) (convert2? addr@1)): Optimize
      	equal == 0 equality pointer comparisons some more if compared in
      	integral types and either one points to an automatic var and the
      	other to a global, or we can prove at least one points to the middle
      	or both point to start or both point to end.
      
      	* gcc.dg/tree-ssa/pr88775-1.c: New test.
      	* gcc.dg/tree-ssa/pr88775-2.c: New test.
      
      From-SVN: r267931
      Jakub Jelinek committed
    • Lower sampling rate for autofdo bootstrap · 6facd01f
      autofdo create_gcov uses a lot of memory for large sample files.
      Since gcc runs quite long the sample files generated during
      the bootstrap are fairly ig.
      
      Currently I can't even build make autoprofiledbootstrap on my system at
      home because create_gcov needs more than 12GB and runs out of memory.
      
      This should probably be fixed in create_gcov, but for now
      lowering the sampling rate works well enough for me. The bootstrap
      run is long enough that it gets good enough data in any case.
      
      gcc/:
      2019-01-14  Andi Kleen  <ak@linux.intel.com>
      
      	* Makefile.in: Lower autofdo sampling rate by 10x.
      	* Makefile.tpl: Dito.
      
      From-SVN: r267930
      Andi Kleen committed
    • Daily bump. · 708efa49
      From-SVN: r267929
      GCC Administrator committed
  2. 14 Jan, 2019 13 commits
    • PR c++/88825 - ICE with bogus function return type deduction. · f80aa399
      	* typeck.c (can_do_nrvo_p): Check error_mark_node.
      
      	* g++.dg/cpp1y/auto-fn55.C: New test.
      
      From-SVN: r267926
      Marek Polacek committed
    • c-cppbuiltin.c (c_cpp_builtin): Define __cpp_guaranteed_copy_elision and… · a30d0196
      c-cppbuiltin.c (c_cpp_builtin): Define __cpp_guaranteed_copy_elision and __cpp_nontype_template_parameter_auto.
      
      	* c-cppbuiltin.c (c_cpp_builtin): Define __cpp_guaranteed_copy_elision
      	and __cpp_nontype_template_parameter_auto.  Add a comment that
      	__cpp_template_auto is deprecated.
      
      	* g++.dg/cpp1z/feat-cxx1z.C: Add tests for
      	__cpp_guaranteed_copy_elision and __cpp_nontype_template_parameter_auto
      	feature test macros.
      	* g++.dg/cpp2a/feat-cxx2a.C: Likewise.
      
      From-SVN: r267925
      Jakub Jelinek committed
    • PR c++/88830 - ICE with abstract class. · 345364cf
      	* decl2.c (maybe_emit_vtables): Check CLASSTYPE_LAZY_DESTRUCTOR.
      	Fix formatting.
      
      	* g++.dg/other/abstract7.C: New test.
      
      From-SVN: r267924
      Marek Polacek committed
    • Implement P0482R5, char8_t: A type for UTF-8 characters and strings · 2d91f79d
      gcc/cp/
      	* cvt.c (type_promotes_to): Handle char8_t promotion.
      	* decl.c (grokdeclarator): Handle invalid type specifier
      	combinations involving char8_t.
      	* lex.c (init_reswords): Add char8_t as a reserved word.
      	* mangle.c (write_builtin_type): Add name mangling for char8_t (Du).
      	* parser.c (cp_keyword_starts_decl_specifier_p)
      	(cp_parser_simple_type_specifier): Recognize char8_t as a simple
      	type specifier.
      	(cp_parser_string_literal): Use char8_array_type_node for the type
      	of CPP_UTF8STRING.
      	(cp_parser_set_decl_spec_type): Tolerate char8_t typedefs in system
      	headers.
      	* rtti.c (emit_support_tinfos): type_info support for char8_t.
      	* tree.c (char_type_p): Recognize char8_t as a character type.
      	* typeck.c (string_conv_p): Handle conversions of u8 string
      	literals of char8_t type.
      	(check_literal_operator_args): Handle UDLs with u8 string literals
      	of char8_t type.
      	* typeck2.c (ordinary_char_type_p): New.
      	(digest_init_r): Disallow initializing a char array with a u8 string
      	literal.
      gcc/c-family/
      	* c-common.c (c_common_reswords): Add char8_t.
      	(fix_string_type): Use char8_t for the type of u8 string literals.
      	(c_common_get_alias_set): char8_t doesn't alias.
      	(c_common_nodes_and_builtins): Define char8_t as a builtin type in
      	C++.
      	(c_stddef_cpp_builtins): Add __CHAR8_TYPE__.
      	(keyword_begins_type_specifier): Add RID_CHAR8.
      	* c-common.h (rid): Add RID_CHAR8.
      	(c_tree_index): Add CTI_CHAR8_TYPE and CTI_CHAR8_ARRAY_TYPE.
      	Define D_CXX_CHAR8_T and D_CXX_CHAR8_T_FLAGS.
      	Define char8_type_node and char8_array_type_node.
      	* c-cppbuiltin.c (cpp_atomic_builtins): Predefine
      	__GCC_ATOMIC_CHAR8_T_LOCK_FREE.
      	(c_cpp_builtins): Predefine __cpp_char8_t.
      	* c-lex.c (lex_string): Use char8_array_type_node as the type of
      	CPP_UTF8STRING.
      	(lex_charconst): Use char8_type_node as the type of CPP_UTF8CHAR.
      	* c-opts.c: If not otherwise specified, enable -fchar8_t when
      	targeting C++2a.
      	* c.opt: Add the -fchar8_t command line option.
      libiberty/
      	* cp-demangle.c (cplus_demangle_builtin_types)
      	(cplus_demangle_type): Add name demangling for char8_t (Du).
      	* cp-demangle.h: Increase D_BUILTIN_TYPE_COUNT to accommodate the
      	new char8_t type.
      
      From-SVN: r267923
      Tom Honermann committed
    • PR target/88638 - FAIL: fsf-nsstring-format-1.s on darwin · 23db6ced
      gcc/c-family/ChangeLog:
      
      	PR target/88638
      	* c-attribs.c (positional_argument): Call valid_format_string_type_p
      	and issue errors if it fails.
      	* c-common.h (valid_format_string_type_p): Declare.
      	* c-format.c (valid_stringptr_type_p): Rename...
      	(valid_format_string_type_p): ...to this and make extern.
      	(handle_format_arg_attribute): Adjust to new name.
      	(check_format_string): Same.
      
      gcc/testsuite/ChangeLog:
      
      	PR target/88638
      	* gcc.dg/format/attr-8.c: New test.
      	* gcc.dg/darwin-cfstring-format-1.c: Adjust diagnostics.
      	* gcc.dg/format/attr-3.c: Same.
      	* obj-c++.dg/fsf-nsstring-format-1.mm: Same.
      	* objc.dg/fsf-nsstring-format-1.m: Same.
      
      gcc/ChangeLog:
      
      	PR target/88638
      	* doc/extend.texi (Darwin Format Checks): Clarify.
      
      From-SVN: r267922
      Martin Sebor committed
    • Fix location of tls_wrapper_fn (PR gcov-profile/88263). · 15f4e33d
      2019-01-14  Martin Liska  <mliska@suse.cz>
      
      	PR gcov-profile/88263
      	* decl2.c (get_tls_wrapper_fn): Use DECL_SOURCE_LOCATION
      	as location of the TLS wrapper.
      2019-01-14  Martin Liska  <mliska@suse.cz>
      
      	PR gcov-profile/88263
      	* g++.dg/gcov/pr88263-2.C: New test.
      
      From-SVN: r267921
      Martin Liska committed
    • invoke.texi (-Wmemset-transposed-args): Fix typos, adjust wording. · 97d41887
      
      gcc/ChangeLog:
      
      	* invoke.texi (-Wmemset-transposed-args): Fix typos, adjust wording.
      
      From-SVN: r267920
      Martin Sebor committed
    • genmatch.c (dt_simplify::gen_1): Change dumping dependent on whether we are in… · 7cc0fa5d
      genmatch.c (dt_simplify::gen_1): Change dumping dependent on whether we are in (simplify ...) or (match ...) context.
      
      2019-01-14  Richard Biener  <rguenther@suse.de>
      
      	* genmatch.c (dt_simplify::gen_1): Change dumping dependent on
      	whether we are in (simplify ...) or (match ...) context.
      
      From-SVN: r267917
      Richard Biener committed
    • re PR rtl-optimization/88796 (-fstack-protector* kills RTL DSE opportunities) · a49a975f
      	PR rtl-optimization/88796
      	* emit-rtl.h (struct rtl_data): Add stack_protect_guard_decl field.
      	* cfgexpand.c (stack_protect_prologue): Initialize
      	crtl->stack_protect_guard_decl.
      	* function.c (stack_protect_epilogue): Use it instead of calling
      	targetm.stack_protect_guard again.
      	* dse.c (check_mem_read_rtx): Ignore MEM_VOLATILE_P reads from
      	MEMs with MEM_EXPR equal to crtl->stack_protect_guard or
      	crtl->stack_protect_guard_decl.
      	* config/i386/i386.c (ix86_stack_protect_guard): Set TREE_THIS_VOLATILE
      	on the returned MEM_EXPR.
      
      	* gcc.target/i386/pr88796.c: New test.
      
      From-SVN: r267916
      Jakub Jelinek committed
    • Undo undesirable part of r267850 2019-01-11 commit. · 7227b597
      From-SVN: r267914
      Jakub Jelinek committed
    • [D] Merge upstream dmd cd2034cd7 · 2b5e01fa
      One fix in the asm statement parser to stop parsing if the end of the
      statement has been reached, and moves all inline asm tests to gdc.dg.
      These being adjusted where necessary to test the GCC style instead.
      
      gcc/testsuite/ChangeLog:
      
      2019-01-14  Iain Buclaw  <ibuclaw@gdcproject.org>
      
      	* gdc.dg/asm1.d: New test.
      	* gdc.dg/asm2.d: New test.
      	* gdc.dg/asm3.d: New test.
      	* gdc.dg/asm4.d: New test.
      	* lib/gdc.exp (gdc_init): Set gcc_error_prefix and gcc_warning_prefix.
      
      From-SVN: r267913
      Iain Buclaw committed
    • re PR libfortran/88776 (Namelist read from stdin: loss of data) · 9c5f8900
      2019-01-13  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libfortran/88776
      	* io/open.c (newunit): Free format buffer if the unit specified is for
      	stdin, stdout, or stderr.
      
      	* gfortran.dg/namelist_96.f90: New test.
      
      From-SVN: r267910
      Jerry DeLisle committed
    • Daily bump. · bff1a731
      From-SVN: r267909
      GCC Administrator committed
  3. 13 Jan, 2019 6 commits
  4. 12 Jan, 2019 4 commits