1 2014-01-23 Marek Polacek <polacek@redhat.com>
4 * typeck.c (cp_build_binary_op): Pass location to shorten_compare.
6 2014-01-23 Marek Polacek <polacek@redhat.com>
9 * typeck.c (pointer_diff): Give an error on arithmetic on pointer to
12 2014-01-23 Jason Merrill <jason@redhat.com>
15 * cp-tree.h (struct language_function): Add infinite_loop and
17 (current_function_infinite_loop): New.
18 * semantics.c (begin_maybe_infinite_loop, end_maybe_infinite_loop)
19 (break_maybe_infinite_loop): New.
20 (finish_while_stmt_cond, finish_while_stmt, begin_do_stmt)
21 (finish_do_stmt, finish_for_cond, finish_for_stmt)
22 (begin_range_for_stmt): Use them.
23 * decl.c (finish_function): Don't warn about missing return
24 if current_function_infinite_loop.
25 * pt.c (instantiate_decl): Copy current_function_infinite_loop.
26 * parser.c (cp_parser_jump_statement): Call break_maybe_infinite_loop.
28 * call.c (build_op_delete_call): Use make_tree_vector and
31 2014-01-23 Paolo Carlini <paolo.carlini@oracle.com>
34 * parser.c (cp_parser_enum_specifier): Handle TYPENAME_TYPE as
35 nested_name_specifier.
37 2014-01-23 Balaji V. Iyer <balaji.v.iyer@intel.com>
39 * parser.c (cp_parser_direct_declarator): When Cilk Plus is enabled
40 see if there is an attribute after function decl. If so, then
42 (cp_parser_late_return_type_opt): Handle parsing of Cilk Plus SIMD
43 enabled function late parsing.
44 (cp_parser_gnu_attribute_list): Parse all the tokens for the vector
45 attribute for a SIMD-enabled function.
46 (cp_parser_omp_all_clauses): Skip parsing to the end of pragma when
47 the function is used by SIMD-enabled function (indicated by NULL
48 pragma token). Added 3 new clauses: PRAGMA_CILK_CLAUSE_MASK,
49 PRAGMA_CILK_CLAUSE_NOMASK and PRAGMA_CILK_CLAUSE_VECTORLENGTH
50 (cp_parser_cilk_simd_vectorlength): Modified this function to handle
51 vectorlength clause in SIMD-enabled function and #pragma SIMD's
52 vectorlength clause. Added a new bool parameter to differentiate
54 (cp_parser_cilk_simd_fn_vector_attrs): New function.
55 (is_cilkplus_vector_p): Likewise.
56 (cp_parser_late_parsing_elem_fn_info): Likewise.
57 (cp_parser_omp_clause_name): Added a check for "mask", "nomask"
58 and "vectorlength" clauses when Cilk Plus is enabled.
59 (cp_parser_omp_clause_linear): Added a new parameter of type bool
60 and emit a sorry message when step size is a parameter.
61 * parser.h (cp_parser::cilk_simd_fn_info): New field.
62 * decl.c (grokfndecl): Added flag_enable_cilkplus along with
64 * pt.c (apply_late_template_attributes): Likewise.
66 2014-01-23 Jakub Jelinek <jakub@redhat.com>
69 * semantics.c (finish_omp_reduction_clause): Reject
70 BIT_AND_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR on COMPLEX_TYPEs.
72 2014-01-22 Ville Voutilainen <ville.voutilainen@gmail.com>
75 * parser.c (cp_parser_class_head): Push the class before parsing
76 the base-clause, pop after it.
78 2014-01-20 Eric Botcazou <ebotcazou@adacore.com>
80 * decl2.c (cpp_check): Revert prototype change.
82 2014-01-17 Paolo Carlini <paolo.carlini@oracle.com>
86 * init.c (build_value_init_noctor): Don't pass error_mark_node to
89 2014-01-17 Paolo Carlini <paolo.carlini@oracle.com>
92 * init.c (build_value_init_noctor): Assert !TYPE_HAS_COMPLEX_DFLT
93 only when errorcount == 0.
95 2014-01-17 Marek Polacek <polacek@redhat.com>
98 * cvt.c (ocp_convert): Don't segfault on non-existing
101 2014-01-16 Jason Merrill <jason@redhat.com>
104 * tree.c (bot_manip): Update the location of builtin_LINE and
107 2014-01-14 Jason Merrill <jason@redhat.com>
110 * typeck2.c (massage_init_elt): New.
111 (process_init_constructor_record)
112 (process_init_constructor_union): Use it.
113 (process_init_constructor_array): Use it. Use RANGE_EXPR.
114 (split_nonconstant_init_1): Handle it.
115 * semantics.c (cxx_eval_vec_init_1): Use force_rvalue.
117 2014-01-09 Balaji V. Iyer <balaji.v.iyer@intel.com>
120 * parser.c (cp_parser_postfix_expression): Added a new if-statement
121 and replaced an existing if-statement with else-if statement.
122 Changed an existing error message wording to match the one from the C
125 2014-01-08 Jason Merrill <jason@redhat.com>
128 * class.c (abi_tag_data): Add tags field.
129 (check_abi_tags): Initialize it.
130 (find_abi_tags_r): Support collecting missing tags.
131 (mark_type_abi_tags): Don't look at template args.
132 (inherit_targ_abi_tags): New.
133 (check_bases_and_members): Use it.
134 * cp-tree.h (ABI_TAG_IMPLICIT): New.
135 * mangle.c (write_abi_tags): Check it.
137 2014-01-07 Jason Merrill <jason@redhat.com>
140 * pt.c (num_innermost_template_parms): New.
141 (get_underlying_template): Use it.
144 * mangle.c (write_guarded_var_name): Handle null DECL_NAME.
146 2014-01-07 Paolo Carlini <paolo.carlini@oracle.com>
148 * semantics.c (trait_expr_value, [CPTK_IS_BASE_OF]): Implement
149 the letter of 20.11.6 about Base and Derived naming the same
150 class type modulo cv-qualifiers.
152 2014-01-06 Adam Butcher <adam@jessamine.co.uk>
155 * lambda.c (maybe_add_lambda_conv_op): Handle marking conversion
156 function as unimplemented for generic lambdas with varargs.
159 * parser.c (cp_parser_template_parameter): Early out with
160 error_mark_node if parameter declaration was not parsed.
163 * parser.c (cp_parser_lambda_expression): Save/reset/restore
164 auto_is_implicit_function_template_parm_p around lambda body.
167 * parser.c (cp_parser_init_declarator): Undo fully implicit
168 template parameter list when declarator is not a function.
170 2014-01-03 Marc Glisse <marc.glisse@inria.fr>
173 * cvt.c (convert_to_void): Handle VEC_PERM_EXPR and VEC_COND_EXPR.
175 2014-01-03 Tobias Burnus <burnus@net-b.de>
178 * pt.c (tsubst_omp_for_iterator): Early return for error_mark_node.
180 2014-01-03 Paolo Carlini <paolo.carlini@oracle.com>
184 * parser.c (cp_parser_perform_range_for_lookup): Don't pass true
185 as include_std to perform_koenig_lookup.
186 (cp_parser_postfix_expression): Adjust.
187 * pt.c (tsubst_copy_and_build): Likewise.
188 * semantics.c (perform_koenig_lookup): Remove bool parameter.
189 (omp_reduction_lookup): Adjust.
190 * name-lookup.c (lookup_arg_dependent_1): Remove bool parameter.
191 (lookup_arg_dependent): Likewise.
192 (lookup_function_nonclass): Adjust.
193 * name-lookup.h: Adjust declaration.
194 * cp-tree.h: Likewise.
196 2014-01-02 Marc Glisse <marc.glisse@inria.fr>
199 * parser.c (cp_parser_userdef_numeric_literal): Mention
200 -fext-numeric-literals in the message.
202 2014-01-02 Marc Glisse <marc.glisse@inria.fr>
205 * call.c (build_conditional_expr_1): Check the return value of
208 2014-01-02 Marc Glisse <marc.glisse@inria.fr>
210 * call.c (convert_like_real): Check complain.
212 2014-01-02 Marc Glisse <marc.glisse@inria.fr>
215 * typeck.c (build_x_vec_perm_expr): Handle non-dependent arguments
218 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
220 Update copyright years
222 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
224 * cp-array-notation.c, cp-cilkplus.c, vtable-class-hierarchy.c: Use
225 the standard form for the copyright notice.
227 Copyright (C) 2014 Free Software Foundation, Inc.
229 Copying and distribution of this file, with or without modification,
230 are permitted in any medium without royalty provided the copyright
231 notice and this notice are preserved.