]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/c/ChangeLog
Fix up ChangeLog entries (name, e-mail, formatting, otherwise).
[thirdparty/gcc.git] / gcc / c / ChangeLog
index f8572aaa13fa4a2aa5d4d833495bbda2ae1d01c3..39cce3b71bd95d4d599f5a15d03ae426a5c293f0 100644 (file)
@@ -1,3 +1,558 @@
+2013-10-17  Andrew MacLeod  <amacleod@redhat.com>
+
+       * c-parser.c: Include omp-low.h.
+       * c-typeck.c: Likewise.
+
+2013-10-17  Marek Polacek  <polacek@redhat.com>
+
+       PR c/58267
+       * c-parser.c (c_parser_declspecs): Add alignspec_ok parameter.
+       Document syntax of the array-declarator.
+       (c_parser_declspecs) <RID_ALIGNAS>: Bail out if alignment specs
+       are not permitted.
+       (c_parser_declaration_or_fndef): Adjust c_parser_declspecs call.
+       (c_parser_struct_declaration): Likewise.
+       (c_parser_declarator): Likewise.
+       (c_parser_direct_declarator_inner): Likewise.
+       (c_parser_parameter_declaration): Likewise.
+       (c_parser_type_name): Likewise.
+
+2013-10-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * c-lang.h (current_omp_declare_target_attribute): New extern
+       decl.
+       * c-parser.c: Include c-lang.h.
+       (struct c_parser): Change tokens to c_token *.
+       Add tokens_buf field.  Change tokens_avail type to unsigned int.
+       (c_parser_consume_token): If parser->tokens isn't
+       &parser->tokens_buf[0], increment parser->tokens.
+       (c_parser_consume_pragma): Likewise.
+       (enum pragma_context): Add pragma_struct and pragma_param.
+       (c_parser_external_declaration): Adjust
+       c_parser_declaration_or_fndef caller.
+       (c_parser_declaration_or_fndef): Add omp_declare_simd_clauses
+       argument, if it is non-vNULL vector, call c_finish_omp_declare_simd.
+       Adjust recursive call.
+       (c_parser_struct_or_union_specifier): Use pragma_struct instead
+       of pragma_external.
+       (c_parser_parameter_declaration): Use pragma_param instead of
+       pragma_external.
+       (c_parser_compound_statement_nostart, c_parser_label,
+       c_parser_for_statement): Adjust
+       c_parser_declaration_or_fndef callers.
+       (c_parser_expr_no_commas): Add omp_atomic_lhs argument, pass
+       it through to c_parser_conditional_expression.
+       (c_parser_conditional_expression): Add omp_atomic_lhs argument,
+       pass it through to c_parser_binary_expression.  Adjust recursive
+       call.
+       (c_parser_binary_expression): Remove prec argument, add
+       omp_atomic_lhs argument instead.  Always start from PREC_NONE, if
+       omp_atomic_lhs is non-NULL and one of the arguments of toplevel
+       binop matches it, use build2 instead of parser_build_binary_op.
+       (c_parser_pragma): Handle PRAGMA_OMP_CANCEL,
+       PRAGMA_OMP_CANCELLATION_POINT, PRAGMA_OMP_TARGET,
+       PRAGMA_OMP_END_DECLARE_TARGET, PRAGMA_OMP_DECLARE_REDUCTION.
+       Handle pragma_struct and pragma_param the same as pragma_external.
+       (c_parser_omp_clause_name): Parse new OpenMP 4.0 clause names.
+       (c_parser_omp_variable_list): Parse array sections for
+       OMP_CLAUSE_{DEPEND,MAP,TO,FROM} clauses.
+       (c_parser_omp_clause_collapse): Fully fold collapse expression.
+       (c_parser_omp_clause_reduction): Handle user defined reductions.
+       (c_parser_omp_clause_branch, c_parser_omp_clause_cancelkind,
+       c_parser_omp_clause_num_teams, c_parser_omp_clause_thread_limit,
+       c_parser_omp_clause_aligned, c_parser_omp_clause_linear,
+       c_parser_omp_clause_safelen, c_parser_omp_clause_simdlen,
+       c_parser_omp_clause_depend, c_parser_omp_clause_map,
+       c_parser_omp_clause_device, c_parser_omp_clause_dist_schedule,
+       c_parser_omp_clause_proc_bind, c_parser_omp_clause_to,
+       c_parser_omp_clause_from, c_parser_omp_clause_uniform): New functions.
+       (c_parser_omp_all_clauses): Add finish_p argument.  Don't call
+       c_finish_omp_clauses if it is false.  Handle new OpenMP 4.0 clauses.
+       (c_parser_omp_atomic): Parse seq_cst clause, pass true if it is
+       present to c_finish_omp_atomic.  Handle OpenMP 4.0 atomic forms.
+       (c_parser_omp_for_loop): Add CODE argument, pass it through
+       to c_finish_omp_for.  Change last argument to cclauses,
+       and adjust uses to grab parallel clauses from the array of all
+       the split clauses.  Adjust c_parser_binary_expression,
+       c_parser_declaration_or_fndef and c_finish_omp_for callers.
+       (omp_split_clauses): New function.
+       (c_parser_omp_simd): New function.
+       (c_parser_omp_for): Add p_name, mask and cclauses arguments.
+       Allow the function to be called also when parsing combined constructs,
+       and call c_parser_omp_simd when parsing for simd.
+       (c_parser_omp_sections_scope): If section-sequence doesn't start with
+       #pragma omp section, require exactly one structured-block instead of
+       sequence of statements.
+       (c_parser_omp_sections): Add p_name, mask and cclauses arguments.
+       Allow the function to be called also when parsing combined constructs.
+       (c_parser_omp_parallel): Add p_name, mask and cclauses arguments.
+       Allow the function to be called also when parsing combined
+       constructs.
+       (c_parser_omp_taskgroup, c_parser_omp_cancel,
+       c_parser_omp_cancellation_point, c_parser_omp_distribute,
+       c_parser_omp_teams, c_parser_omp_target_data,
+       c_parser_omp_target_update, c_parser_omp_target,
+       c_parser_omp_declare_simd, c_finish_omp_declare_simd,
+       c_parser_omp_declare_target, c_parser_omp_end_declare_target,
+       c_parser_omp_declare_reduction, c_parser_omp_declare): New functions.
+       (c_parser_omp_construct): Add p_name and mask vars.  Handle
+       PRAGMA_OMP_DISTRIBUTE, PRAGMA_OMP_SIMD, PRAGMA_OMP_TASKGROUP,
+       PRAGMA_OMP_TEAMS.  Adjust c_parser_omp_for, c_parser_omp_parallel
+       and c_parser_omp_sections callers.
+       (c_parse_file): Initialize tparser.tokens and the_parser->tokens here.
+       (OMP_FOR_CLAUSE_MASK, OMP_SECTIONS_CLAUSE_MASK,
+       OMP_SINGLE_CLAUSE_MASK): Use OMP_CLAUSE_MASK_1 instead of 1.
+       (OMP_PARALLEL_CLAUSE_MASK): Likewise.  Add OMP_CLAUSE_PROC_BIND.
+       (OMP_TASK_CLAUSE_MASK): Use OMP_CLAUSE_MASK_1 instead of 1.  Add
+       OMP_CLAUSE_DEPEND.
+       (OMP_SIMD_CLAUSE_MASK, OMP_CANCEL_CLAUSE_MASK,
+       OMP_CANCELLATION_POINT_CLAUSE_MASK, OMP_DISTRIBUTE_CLAUSE_MASK,
+       OMP_TEAMS_CLAUSE_MASK, OMP_TARGET_DATA_CLAUSE_MASK,
+       OMP_TARGET_UPDATE_CLAUSE_MASK, OMP_TARGET_CLAUSE_MASK,
+       OMP_DECLARE_SIMD_CLAUSE_MASK): Define.
+       * c-typeck.c: Include tree-inline.h.
+       (c_finish_omp_cancel, c_finish_omp_cancellation_point,
+       handle_omp_array_sections_1, handle_omp_array_sections,
+       c_clone_omp_udr, c_find_omp_placeholder_r): New functions.
+       (c_finish_omp_clauses): Handle new OpenMP 4.0 clauses and
+       user defined reductions.
+       (c_tree_equal): New function.
+       * c-tree.h (temp_store_parm_decls, temp_pop_parm_decls,
+       c_finish_omp_cancel, c_finish_omp_cancellation_point, c_tree_equal,
+       c_omp_reduction_id, c_omp_reduction_decl, c_omp_reduction_lookup,
+       c_check_omp_declare_reduction_r): New prototypes.
+       * c-decl.c (current_omp_declare_target_attribute): New variable.
+       (c_decl_attributes): New function.
+       (start_decl, start_function): Use it instead of decl_attributes.
+       (temp_store_parm_decls, temp_pop_parm_decls, c_omp_reduction_id,
+       c_omp_reduction_decl, c_omp_reduction_lookup,
+       c_check_omp_declare_reduction_r): New functions.
+
+2013-09-25  Tom Tromey  <tromey@redhat.com>
+
+       * Make-lang.in (c/gccspec.o): Remove.
+       (CFLAGS-c/gccspec.o): New variable.
+       (cc1-checksum.o, C_TREE_H, c/c-aux-info.o, c/c-convert.o)
+       (c/c-decl.o, c/c-errors.o, c/c-lang.o, c/c-objc-common.o)
+       (c/c-parser.o, c/c-typeck.o, c/c-array-notation.o): Remove.
+
+2013-09-25  Tom Tromey  <tromey@redhat.com>
+
+       * Make-lang.in (c/gccspec.o): Don't use subshell.
+
+2013-09-18  Marek Polacek  <polacek@redhat.com>
+
+       PR sanitize/58443
+       * c-typeck.c (build_binary_op): Properly honor -fsanitize options.
+       Remove unnecessary check.
+
+2013-09-18  Marek Polacek  <polacek@redhat.com>
+
+       PR sanitizer/58411
+       * c-typeck.c (build_binary_op): Don't sanitize function if it has the
+       no_sanitize_undefined attribute.
+
+2013-09-13  Kai Tietz  <ktietz@redhat.com>
+
+       PR target/57848
+       * c-decl.c (c_builtin_function_ext_scope): Remove
+       wrong assumption that it is never called on prexisting
+       symbol.
+
+2013-09-08  Joern Rennecke  <joern.rennecke@embecosm.com>
+
+       * c-typeck.c (build_binary_op): Use vector_types_compatible_elements_p.
+
+2013-09-03  Gabriel Dos Reis  <gdr@integrable-solutions.net>
+
+       * c-objc-common.c (c_tree_printer): Tidy.
+
+2013-08-30  Marek Polacek  <polacek@redhat.com>
+
+       * c-typeck.c (build_binary_op): Add division by zero and shift
+       instrumentation.
+
+2013-08-26  Joern Rennecke  <joern.rennecke@embecosm.com>
+           Joseph Myers  <joseph@codesourcery.com>
+
+       PR c/35649
+       * c-typeck.c (c_common_type): Prefer double_type_node over
+       other REAL_TYPE types with the same precision.
+       (convert_arguments): Likewise.
+
+2013-08-23  Gabriel Dos Reis  <gdr@integrable-solutions.net>
+
+       * c-objc-common.c (c_tree_printer): Document the nature of the cast.
+       (c_initialize_diagnostics): Call a destructor for the early printer.
+
+2013-08-22  Gabriel Dos Reis  <gdr@integrable-solutions.net>
+
+       * c-objc-common.c (c_initialize_diagnostics): Simplify C pretty
+       printer initialization.
+
+2013-08-19  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       PR c/57490
+       * c-array-notation.c (fix_conditional_array_notations_1): Added a
+       check for truth values.
+       (expand_array_notation_exprs): Added truth values case.  Removed an
+       unwanted else.  Added for-loop to walk through subtrees in default
+       case.
+
+2013-08-04  Gabriel Dos Reis  <gdr@integrable-solutions.net>
+
+       * c-objc-common.c (c_initialize_diagnostics): Don't call pp_base.
+
+2013-07-23  Joseph Myers  <joseph@codesourcery.com>
+
+       * c-parser.c (struct c_generic_association): Fix typo.
+
+2013-07-23  Tom Tromey  <tromey@redhat.com>
+           Joseph Myers  <joseph@codesourcery.com>
+
+       * c-parser.c (struct c_generic_association): New.
+       (c_generic_association_d): New typedef.
+       (c_parser_generic_selection): New function.
+       (c_parser_postfix_expression): Handle RID_GENERIC.
+
+2013-07-13  Jason Merrill  <jason@redhat.com>
+
+       PR c++/57793
+       * c-decl.c (finish_struct): Check for too-large class.
+
+2013-07-04  Joern Rennecke  <joern.rennecke@embecosm.com>
+
+       PR c/57821
+       * c-typeck.c (set_init_index): When folding, check for index overflow.
+
+2013-06-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-parser.c (c_parser_array_notation): Removed rejection of array
+       notations in an array of function pointers.
+
+2013-06-21  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-array-notation.c (make_triplet_val_inv): New function.
+       (create_cmp_incr): Likewise.
+       (create_array_refs): Likewise.
+       (fix_builtin_array_notation_fn): Replaced all mallocs with tree vec.
+       Also modularized common parts between functions and called the function.
+       (build_array_notation_expr): Likewise.
+       (fix_conditional_array_notations_1): Likewise.
+       (fix_array_notation_expr): Likewise.
+       (fix_array_notation_call_expr): Likewise.
+
+2013-06-18  Marek Polacek  <polacek@redhat.com>
+
+       PR c/57630
+       * c-decl.c (check_for_loop_decls): Improve diagnostics messages.
+
+2013-06-12  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-array-notation.c (build_array_notation_expr): Reject array notation
+       mismatch between LHS and RHS even inside a call_expr.  Also, removed
+       a couple while statements that were dead code.
+
+2013-06-10  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-array-notation.c (fix_builtin_array_notation_fn): Fully folded
+       excessive precision expressions in function parameters.  Also removed
+       couple unwanted while statements.
+
+2013-06-07  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-array-notation.c (expand_array_notation_exprs): Added
+       ARRAY_NOTATION_REF case.
+       
+2013-06-07  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-array-notation.c (length_mismatch_in_expr_p): Moved this
+       function to c-family/array-notation-common.c.
+       (is_cilkplus_reduce_builtin): Likewise.
+       (find_rank): Likewise.
+       (extract_array_notation_exprs): Likewise.
+       (replace_array_notations): Likewise.
+       (find_inv_trees): Likewise.
+       (replace_inv_trees): Likewise.
+       (contains_array_notation_expr): Likewise.
+       (find_correct_array_notation_type): Likewise.
+       (replace_invariant_exprs): Initialized additional_tcodes to NULL.
+       (struct inv_list): Moved this to c-family/array-notation-common.c.
+       * c-tree.h (is_cilkplus_builtin_reduce): Remove prototype.
+       
+2013-06-05  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-typeck.c (convert_arguments): Moved checking of builtin cilkplus
+       reduction functions outside the for-loop.  Added a check if the fundecl
+       is non-NULL.  Finally, removed an unwanted if-statement, and made the
+       body unconditional.
+
+2013-06-03  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-typeck.c (c_finish_if_stmt): Added a check to see if the rank of the
+       condition of the if-statement matches the rank of else-block and then-
+       block when array notations are used.
+       * c-parser.c (c_parser_declaration_or_fndef): Expanded array notation
+       expression after the entire function body is parsed.
+       (c_parser_expr_no_commas): Delayed creating array notation expressions
+       to the end of function parsing.
+       * c-array-notation.c (fix_conditional_array_notations_1): Expanded the
+       whole if-statement instead of just the condition.
+       (expand_array_notation_exprs): Added MODIFY_EXPR case.  
+
+2013-06-03  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       PR c/57474
+       * c-array-notation.c (build_array_notation_expr): Initialized rhs_length
+       array to NULL_TREE if they are unused.  Also added a check for the
+       field to be NULL before its fields are used in future.
+       
+2013-05-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       PR bootstrap/57450
+       * c-array-notation.c (length_mismatch_in_expr_p): Use absu_hwi.
+       (build_array_notation_expr): Likewise.
+
+2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-typeck.c (build_array_ref): Added a check to see if array's
+       index is greater than one.  If true, then emit an error.
+       (build_function_call_vec): Exclude error reporting and checking
+       for builtin array-notation functions.
+       (convert_arguments): Likewise.
+       (c_finish_return): Added a check for array notations as a return
+       expression.  If true, then emit an error.
+       (c_finish_loop): Added a check for array notations in a loop
+       condition.  If true then emit an error.
+       (lvalue_p): Added a ARRAY_NOTATION_REF case.
+       (build_binary_op): Added a check for array notation expr inside
+       op1 and op0.  If present, we call another function to find correct
+       type.
+       * Make-lang.in (C_AND_OBJC_OBJS): Added c-array-notation.o.
+       * c-parser.c (c_parser_compound_statement): Check if array
+       notation code is used in tree, if so, then transform them into
+       appropriate C code.
+       (c_parser_expr_no_commas): Check if array notation is used in LHS
+       or RHS, if so, then build array notation expression instead of
+       regular modify.
+       (c_parser_postfix_expression_after_primary): Added a check for
+       colon(s) after square braces, if so then handle it like an array
+       notation.  Also, break up array notations in unary op if found.
+       (c_parser_direct_declarator_inner): Added a check for array
+       notation.
+       (c_parser_compound_statement): Added a check for array notation in
+       a stmt.  If one is present, then expand array notation expr.
+       (c_parser_if_statement): Likewise.
+       (c_parser_switch_statement): Added a check for array notations in
+       a switch statement's condition.  If true, then output an error.
+       (c_parser_while_statement): Similarly, but for a while.
+       (c_parser_do_statement): Similarly, but for a do-while.
+       (c_parser_for_statement): Similarly, but for a for-loop.
+       (c_parser_unary_expression): Check if array notation is used in a
+       pre-increment or pre-decrement expression.  If true, then expand
+       them.
+       (c_parser_array_notation): New function.
+       * c-array-notation.c: New file.
+       * c-tree.h (is_cilkplus_reduce_builtin): Protoize.
+       
+2013-05-23  Mike Stump  <mikestump@comcast.net>
+
+       * c-typeck.c (convert_for_assignment): Handle references to memory
+       spaces better.
+
+2013-05-16  Jason Merrill  <jason@redhat.com>
+
+       * Make-lang.in (cc1$(exeext)): Use link mutex.
+
+2013-04-24  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * c-typeck.c (pointer_diff): Change -Wpointer-arith pedwarns
+       to simply use OPT_Wpointer_arith.
+       (build_unary_op): Likewise.
+
+2013-04-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/19449
+       * c-parser.c (c_parser_get_builtin_args): Add choose_expr_p
+       argument.  If set, or it temporarily for parsing of the first
+       argument into force_folding_builtin_constant_p.
+       (c_parser_postfix_expression): Adjust callers.
+
+2013-03-21  Richard Biener  <rguenther@suse.de>
+
+       * c-objc-common.c (c_tree_printer): Use DECL_HAS_DEBUG_EXPR_P
+       instead of DECL_DEBUG_EXPR_IS_FROM.  Guard properly.
+
+2013-02-12  Marek Polacek  <polacek@redhat.com>
+
+       PR c/44938
+       * c-parser.c (c_parser_postfix_expression_after_primary): Initialize
+       origtypes to NULL.
+
+2013-01-24  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/56078
+       * c-typeck.c (set_nonincremental_init_from_string): If
+       constructor_max_index is NULL, treat it as if tree_int_cst_lt
+       returned false.
+       (process_init_element): Likewise.
+
+2012-12-20  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/55619
+       * c-parser.c (c_parser_asm_operands): Remove CONVERT_P
+       argument, don't call default_function_array_conversion
+       nor c_fully_fold here.
+       (c_parser_asm_statement): Adjust callers.
+       * c-typeck.c (build_asm_expr): Call c_fully_fold on inputs
+       and outputs here, and call default_function_array_conversion
+       on inputs that don't need to be addressable.
+
+2012-12-18  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/39464
+       * c-typeck.c (convert_for_assignment): For -Wpointer-sign
+       warning require that both c_common_unsigned_type as well as
+       c_common_signed_type is the same for both mvl and mvr types.
+
+2012-11-16  Diego Novillo  <dnovillo@google.com>
+
+       Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
+
+       * c-common.c: Use new vec API in vec.h.
+       * c-common.h: Likewise.
+       * c-gimplify.c: Likewise.
+       * c-pragma.c: Likewise.
+       * c-pretty-print.c: Likewise.
+       * c-pretty-print.h: Likewise.
+       * c-semantics.c: Likewise.
+       * c-decl.c: Likewise.
+       * c-parser.c: Likewise.
+       * c-tree.h: Likewise.
+       * c-typeck.c: Likewise.
+
+2012-10-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       PR c++/54930
+       * c-typeck.c (c_finish_return): Use OPT_Wreturn_local_addr.
+
+2012-10-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       PR c/53066
+       * c-decl.c (warn_if_shadowing): Do not warn if a variable
+       shadows a function, unless the variable is a function or a
+       pointer-to-function.
+
+2012-10-12  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/54381
+       * c-parser.c (struct c_tree_loc_pair): Removed.
+       (c_parser_expr_list): Remove struct c_tree_loc_pair * argument,
+       add location_t * and tree * arguments, fill in array of 3
+       sizeof_arg trees and corresponding locs.
+       (c_parser_attributes, c_parser_objc_keywordexpr): Adjust
+       c_parser_expr_list callers.
+       (c_parser_postfix_expression_after_primary): Likewise.  Pass
+       array of 3 sizeof_arg trees and locs (corresponding to first
+       3 arguments) to sizeof_pointer_memaccess_warning.
+
+2012-10-09  Lawrence Crowl  <crowl@google.com>
+
+       * Make-lang.in (c-decl.o): Add dependence on hash-table.h.
+       * c-decl.c (detect_field_duplicates_hash): Change to new type-safe
+       hash table.
+
+2012-10-09  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR c++/54194
+       * c-typeck.c (parser_build_binary_op): Update warn_about_parentheses
+       call.
+
+2012-10-09  Marc Glisse  <marc.glisse@inria.fr>
+
+       PR c++/54427
+       * c-typeck.c: Include c-common.h.
+       (enum stv_conv): Moved to c-common.h.
+       (scalar_to_vector): Moved to c-common.c.
+       (build_binary_op): Adapt to scalar_to_vector's new prototype.
+       * Make-lang.in: c-typeck.c depends on c-common.h.
+
+2012-10-04  Arnaud Charlet  <charlet@adacore.com>
+
+       * c-decl.c (c_write_global_declarations): Fix handling of
+       -fdump-ada-spec*.
+
+2012-09-30  Sharad Singhai  <singhai@google.com>
+
+       * c-decl.c (c_write_global_declarations): Use a different method
+       to determine if the dump has ben initialized.
+
+2012-09-14  Joseph Myers  <joseph@codesourcery.com>
+
+       PR c/54552
+       * c-typeck.c (c_cast_expr): When casting to a type requiring
+       C_MAYBE_CONST_EXPR to be created, pass the inner expression to
+       c_fully_fold first.
+
+2012-09-14  Joseph Myers  <joseph@codesourcery.com>
+
+       PR c/54103
+       * c-typeck.c (build_unary_op): Pass original argument of
+       TRUTH_NOT_EXPR to c_objc_common_truthvalue_conversion, then remove
+       any C_MAYBE_CONST_EXPR, if it has integer operands.
+       (build_binary_op): Pass original arguments of TRUTH_ANDIF_EXPR,
+       TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR
+       to c_objc_common_truthvalue_conversion, then remove any
+       C_MAYBE_CONST_EXPR, if they have integer operands.  Use
+       c_objc_common_truthvalue_conversion not
+       c_common_truthvalue_conversion.
+       (c_objc_common_truthvalue_conversion): Build NE_EXPR directly and
+       call note_integer_operands for arguments with integer operands
+       that are not integer constants.
+
+2012-09-13  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/54559
+       * c-typeck.c (c_finish_return): Do convert to BOOLEAN_TYPE or
+       COMPLEX_TYPE with in_late_binary_op set temporarily to true.
+
+2012-08-31  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/54428
+       * c-convert.c (convert): Don't call fold_convert_loc if
+       TYPE_MAIN_VARIANT of a COMPLEX_TYPE is the same, unless e
+       is a COMPLEX_EXPR.  Remove TYPE_MAIN_VARIANT check from
+       COMPLEX_TYPE -> COMPLEX_TYPE conversion.
+
+2012-08-24  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/54355
+       * c-decl.c (c_parser_label): Pass true as nested and fix up comments
+       for nested and empty_ok arguments in the call to
+       c_parser_declaration_or_fndef.
+
+2012-08-17  Jakub Jelinek  <jakub@redhat.com>
+
+       * c-tree.h (c_last_sizeof_arg): Declare.
+       * c-parser.c (struct c_tree_loc_pair): New type.
+       (c_parser_expr_list): Add sizeof_arg argument.  Fill it in if
+       non-NULL.
+       (c_parser_attributes, c_parser_objc_keywordexpr): Adjust callers.
+       (c_parser_postfix_expression_after_primary): Likewise.  Call
+       sizeof_pointer_memaccess_warning if needed.
+       (sizeof_ptr_memacc_comptypes): New function.
+       * c-typeck.c (c_last_sizeof_arg): New global variable.
+       (c_expr_sizeof_expr, c_expr_sizeof_type): Initialize it.
+
+2012-07-24  Uros Bizjak  <ubizjak@gmail.com>
+
+       * c-lang.h (lang_decl): Add variable_size GTY option.
+
+2012-07-16  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * c-decl.c: Include dumpfile.h instead of tree-dump.h.
+       * Make-lang.in: Fix dependencies.
+
 2012-06-29  Steven Bosscher  <steven@gcc.gnu.org>
 
        * Make-lang.in: New file, rules migrated from gcc/Makefile.in
        * c-decl.c: Likewise.  Include gt-c-c-decl.h, not gt-c-decl.h.
        * c-parser.c: Likewise.  Include gt-c-c-parser.h, not gt-c-parser.h.
 \f
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2012-2013 Free Software Foundation, Inc.
 
 Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright