1 2017-01-17 Jason Merrill <jason@redhat.com>
3 PR c++/78894 - ICE with class deduction and default arg
4 * pt.c (build_deduction_guide): Set DECL_PRIMARY_TEMPLATE.
6 2017-01-18 Markus Trippelsdorf <markus@trippelsdorf.de>
9 * mangle.c (write_discriminator): Reorganize abi warning check.
11 2017-01-18 Nathan Sidwell <nathan@acm.org>
13 * cp-tree.h: Clarify exception spec node comment.
14 * except.c (nothrow_spec_p): Simplify by checking node-equality.
17 * mangle.c (write_exception_spec): Check nothrow explicitly.
18 (write_encoding): Don't increment processing_template_decl around
21 2017-01-18 Markus Trippelsdorf <markus@trippelsdorf.de>
24 * mangle.c (write_template_args): Add "on" for operator names.
26 2017-01-18 Markus Trippelsdorf <markus@trippelsdorf.de>
29 * mangle.c (write_discriminator): Handle discriminator >= 10.
31 2017-01-17 Nathan Sidwell <nathan@acm.org>
34 * cp-tree.h (maybe_generic_this_capture): Declare.
35 * lambda.c (resolvable_dummy_lambda): New, broken out of ...
36 (maybe_resolve_dummy): ... here. Call it.
37 (maybe_generic_this_capture): New.
38 * parser.c (cp_parser_postfix_expression): Speculatively capture
39 this in generic lambda in unresolved member function call.
40 * pt.c (tsubst_copy_and_build): Force hard error from failed
41 member function lookup in generic lambda.
43 2017-01-17 Aldy Hernandez <aldyh@redhat.com>
46 * cp-array-notation.c (expand_array_notation_exprs): Handle
49 2017-01-11 Jason Merrill <jason@redhat.com>
51 PR c++/78337 - ICE on invalid with generic lambda
52 * semantics.c (process_outer_var_ref): Check if containing_function
53 is null. Move inform call under complain test.
55 2017-01-11 Nathan Sidwell <nathan@acm.org>
58 * name-lookup.c (set_namespace_binding_1): An overload of 1 decl
61 2017-01-11 Nathan Sidwell <nathan@acm.org>
63 * name-lookup.c (push_overloaded_decl_1): Refactor OVERLOAD creation.
65 2017-01-11 Jakub Jelinek <jakub@redhat.com>
68 * parser.c (cp_parser_std_attribute_spec): Remove over-eager
69 assertion. Formatting fix.
72 * decl2.c (c_parse_final_cleanups): Set flag_syntax_only to 1 after
75 2017-01-10 David Malcolm <dmalcolm@redhat.com>
78 * parser.c (cp_parser_class_specifier_1): Only suggest inserting
79 a missing semicolon if we have a valid insertion location for
82 2017-01-10 Jason Merrill <jason@redhat.com>
84 FI 20, decomposition declaration with parenthesized initializer.
85 * parser.c (cp_parser_decomposition_declaration): Use
86 cp_parser_initializer.
88 2017-01-09 Jason Merrill <jason@redhat.com>
90 Implement P0195R2, C++17 variadic using.
91 * parser.c (cp_parser_using_declaration): Handle ellipsis and comma.
92 * pt.c (tsubst_decl): Handle pack expansion in USING_DECL_SCOPE.
93 * error.c (dump_decl): Likewise.
95 2017-01-09 Jakub Jelinek <jakub@redhat.com>
99 * semantics.c (finish_omp_clauses): Add missing whitespace to
100 translatable strings.
101 * cp-cilkplus.c (cpp_validate_cilk_plus_loop_aux): Fix comment typo.
103 2017-01-07 Jason Merrill <jason@redhat.com>
105 PR c++/78948 - instantiation from discarded statement
106 * parser.h (struct cp_parser): Remove in_discarded_stmt field.
107 * cp-tree.h (in_discarded_stmt): Declare it.
108 (struct saved_scope): Add discarded_stmt bitfield.
109 (in_discarded_stmt): New macro.
110 * decl2.c (mark_used): Check it.
111 * parser.c (cp_parser_selection_statement): Adjust.
112 (cp_parser_jump_statement): Adjust.
114 2017-01-05 Jakub Jelinek <jakub@redhat.com>
117 * decl.c (cp_finish_decomp): Remove probe variable, if tt is
118 REFERENCE_REF_P, set tt to its operand.
121 * class.c (check_field_decls): Diagnose REFERENCE_TYPE fields in
122 unions even for C++11 and later.
124 2017-01-05 Nathan Sidwell <nathan@acm.org>
127 * pt.c (convert_nontype_argument): Don't try and see if integral
128 or enum expressions are constants prematurely.
130 2017-01-04 Marek Polacek <polacek@redhat.com>
133 * typeck.c (cp_build_binary_op): Warn when a pointer is compared with
134 a zero character literal.
136 2017-01-04 Jakub Jelinek <jakub@redhat.com>
139 * typeck.c (cp_build_unary_op): Call mark_rvalue_use on arg if it has
143 * parser.c (cp_parser_simple_declaration): Only complain about
144 inconsistent auto deduction if auto_result doesn't use auto.
146 * parser.c (cp_parser_simple_declaration): Diagnose function
147 declaration among more than one init-declarators with auto
151 * parser.c (cp_lexer_previous_token): Use vec_safe_address in the
152 assertion, as lexer->buffer may be NULL.
154 2017-01-04 Marek Polacek <polacek@redhat.com>
158 * constexpr.c (potential_constant_expression_1): Handle CLEANUP_STMT.
160 2017-01-04 Nathan Sidwell <nathan@acm.org>
163 * cp-tree.h (DECLTYPE_FOR_REF_CAPTURE): New.
164 (lambda_capture_field_type): Update prototype.
165 * lambda.c (lambda_capture_field_type): Add is_reference parm.
166 Add referenceness here.
167 (add_capture): Adjust lambda_capture_field_type call, refactor
169 * pt.c (tsubst): Adjust lambda_capture_field_type call.
171 2017-01-01 Jakub Jelinek <jakub@redhat.com>
173 Update copyright years.
175 Copyright (C) 2017 Free Software Foundation, Inc.
177 Copying and distribution of this file, with or without modification,
178 are permitted in any medium without royalty provided the copyright
179 notice and this notice are preserved.