1. 05 Oct, 2016 35 commits
  2. 04 Oct, 2016 5 commits
    • builtin-sprintf-warn-1.c: Cast int argument to %lc directive to wint_t to… · 7ec39552
      builtin-sprintf-warn-1.c: Cast int argument to %lc directive to wint_t to silence -Wformat warnings on...
      
      gcc/testsuite/ChangeLog:
      	* gcc.dg/tree-ssa/builtin-sprintf-warn-1.c: Cast int argument to
      	%lc directive to wint_t to silence -Wformat warnings on targets
      	where the latter is a distinct type such as long.
      
      From-SVN: r240758
      Martin Sebor committed
    • PR c++/77775 - misoptimization of PMF comparison · 2db613e5
      	* constexpr.c (cxx_eval_component_reference): Use name matching
      	for PMFs.
      
      From-SVN: r240757
      Jason Merrill committed
    • Implement P0091R2, Template argument deduction for class templates. · 76b294d4
      * parser.c (cp_parser_simple_type_specifier): Parse class placeholder.
      Use the location of the beginning of the type-specifier.
      (cp_parser_init_declarator): Parse deduction guide.
      (cp_parser_diagnose_invalid_type_name): Mention class deduction.
      (cp_parser_type_id_1): Don't accept class placeholder as template arg.
      * cp-tree.h (CLASS_PLACEHOLDER_TEMPLATE): New.
      * decl.c (grokdeclarator): Check for uninitialized auto here.
      (start_decl_1): Not here.
      (cp_finish_decl): Or here.  Don't collapse a list when doing
      class deduction.
      (grokfndecl): Check deduction guide scope and body.
      * error.c (dump_decl, dump_function_decl, dump_function_name):
      Handle deduction guides.
      * pt.c (make_template_placeholder, do_class_deduction): New.
      (build_deduction_guide, rewrite_template_parm): New.
      (dguide_name, dguide_name_p, deduction_guide_p): New.
      (do_auto_deduction): Call do_class_deduction.
      (splice_late_return_type, is_auto): Handle class placeholders.
      (template_parms_level_to_args): Split from template_parms_to_args.
      (tsubst_template_parms_level): Split from tsubst_template_parms.
      * typeck2.c (build_functional_cast): Handle class placeholder.
      
      From-SVN: r240756
      Jason Merrill committed
    • PR c++/77804 - Internal compiler error on incorrect initialization of new-d array · 8ff04ff9
      gcc/cp/ChangeLog:
      
      	PR c++/77804
      	* init.c (warn_placement_new_too_small): Avoid assuming an array type
      	has a constant size.
      
      gcc/testsuite/ChangeLog:
      
      	PR c++/77804
      	* g++.dg/warn/Wplacement-new-size-4.C: New test.
      
      From-SVN: r240754
      Martin Sebor committed
    • read-md.c: track column numbers · 3814e880
      gcc/ChangeLog:
      	* genattrtab.c (make_internal_attr): Supply dummy column number to
      	file_location ctor.
      	(main): Likewise.
      	* genoutput.c (init_insn_for_nothing): Likewise.
      	* gensupport.c (add_define_attr): Likewise.
      	* read-md.c (message_at_1): Print column number.
      	(fatal_with_file_and_line): Likewise.
      	(rtx_reader::read_char): Track column numbers.
      	(rtx_reader::unread_char): Likewise.
      	(rtx_reader::rtx_reader): Initialize m_read_md_colno.
      	(rtx_reader::handle_include): Stash and restore m_read_md_colno.
      	(rtx_reader::handle_file): Initialize m_read_md_colno.
      	(rtx_reader::get_current_location): Supply column number to
      	file_location ctor.
      	* read-md.h (struct file_location): Add field "colno".
      	(file_location::file_location): Likewise.
      	(rtx_reader::get_colno): New accessor.
      	(rtx_reader::m_read_md_colno): New field.
      	(rtx_reader::m_last_line_colno): New field.
      
      From-SVN: r240752
      David Malcolm committed