| 2021-10-14 Kwok Cheung Yeung <kcy@codesourcery.com> |
| |
| * c-parser.c (c_finish_omp_declare_variant): Change call from |
| c_omp_check_context_selector to omp_check_context_selector. Change |
| call from c_omp_mark_declare_variant to omp_mark_declare_variant. |
| |
| 2021-10-09 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_structured_block_sequence): New function. |
| (c_parser_omp_scan_loop_body): Use it. |
| (c_parser_omp_sections_scope): Likewise. |
| |
| 2021-10-07 Richard Biener <rguenther@suse.de> |
| |
| * c-typeck.c (lvalue_p): Also allow MEM_REF and TARGET_MEM_REF. |
| |
| 2021-10-05 Richard Biener <rguenther@suse.de> |
| |
| PR c/102605 |
| * gimple-parser.c (c_parser_gimple_postfix_expression): |
| Accept more address _Literals. |
| |
| 2021-10-04 Marek Polacek <polacek@redhat.com> |
| |
| PR c++/97573 |
| * c-typeck.c (parser_build_binary_op): Call do_warn_array_compare. |
| |
| 2021-10-01 Martin Sebor <msebor@redhat.com> |
| |
| PR c/102103 |
| * c-typeck.c (maybe_warn_for_null_address): New function. |
| (build_binary_op): Call it. |
| |
| 2021-10-01 Jakub Jelinek <jakub@redhat.com> |
| Richard Biener <rguenther@suse.de> |
| |
| PR sanitizer/102515 |
| * c-typeck.c (build_binary_op): Call ubsan_instrument_division |
| for division even for SANITIZE_SI_OVERFLOW. |
| |
| 2021-10-01 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_order): Set |
| OMP_CLAUSE_ORDER_REPRODUCIBLE for explicit reproducible: modifier. |
| |
| 2021-09-28 Andrew Pinski <apinski@marvell.com> |
| |
| PR c/32122 |
| * c-parser.c (c_parser_statement_after_labels): Pass |
| the c_expr instead of the tree to c_finish_goto_ptr. |
| * c-typeck.c (c_finish_goto_ptr): Change the second |
| argument type to c_expr. |
| * c-tree.h (c_finish_goto_ptr): Likewise. |
| Error out if the expression was not of a pointer type. |
| |
| 2021-09-22 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_allocate): Parse allocate clause |
| modifiers. |
| |
| 2021-09-18 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_order): Parse unconstrained |
| and reproducible modifiers. |
| (OMP_DISTRIBUTE_CLAUSE_MASK): Add order clause. |
| |
| 2021-09-18 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_default): Handle private and |
| firstprivate arguments, adjust diagnostics on unknown argument. |
| |
| 2021-09-17 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_atomic): Reject atomic swap if capture |
| is true. |
| |
| 2021-09-10 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_conditional_expression): If omp_atomic_lhs and |
| cond.value is >, < or == with omp_atomic_lhs as one of the operands, |
| don't call build_conditional_expr, instead build a COND_EXPR directly. |
| (c_parser_binary_expression): Avoid calling parser_build_binary_op |
| if omp_atomic_lhs even in more cases for >, < or ==. |
| (c_parser_omp_atomic): Update function comment for OpenMP 5.1 atomics, |
| parse OpenMP 5.1 atomics and fail, compare and weak clauses, allow |
| acq_rel on atomic read/write and acq_rel/acquire clauses on update. |
| * c-typeck.c (build_binary_op): For flag_openmp only handle |
| MIN_EXPR/MAX_EXPR. |
| |
| 2021-09-07 Marcel Vollweiler <marcel@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_flush): Parse 'seq_cst' clause on 'flush' |
| directive. |
| |
| 2021-09-01 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * c-decl.c (enum deprecated_states): Add unavailable state. |
| (merge_decls): Copy unavailability. |
| (quals_from_declspecs): Handle unavailable case. |
| (start_decl): Amend the logic handling suppression of nested |
| deprecation states to include unavailability. |
| (smallest_type_quals_location): Amend comment. |
| (grokdeclarator): Handle the unavailable deprecation state. |
| (declspecs_add_type): Set TREE_UNAVAILABLE from the decl specs. |
| * c-tree.h (struct c_declspecs): Add unavailable_p. |
| * c-typeck.c (build_component_ref): Handle unavailability. |
| (build_external_ref): Likewise. |
| |
| 2021-09-01 Roger Sayle <roger@nextmovesoftware.com> |
| Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/79412 |
| * c-decl.c (duplicate_decls): On significant mismatches, mark the |
| types of both (non-function) decls as error_mark_node, so that the |
| middle-end can see the code is malformed. |
| (free_attr_access_data): Don't process if the type has been set to |
| error_mark_node. |
| |
| 2021-08-31 Marcel Vollweiler <marcel@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_device): Parse device-modifiers 'device_num' |
| and 'ancestor' in 'target device' clauses. |
| |
| 2021-08-23 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_num_tasks, |
| c_parser_omp_clause_grainsize): Parse the optional strict: modifier. |
| |
| 2021-08-22 Martin Uecker <muecker@gwdg.de> |
| |
| PR c/98397 |
| * c-typeck.c (comp_target_types): Change pedwarn to pedwarn_c11 |
| for pointers to arrays with qualifiers. |
| (build_conditional_expr): For C23 don't lose qualifiers for pointers |
| to arrays when the other pointer is a void pointer. Update warnings. |
| (convert_for_assignment): Update warnings for C2X when converting from |
| void* with qualifiers to a pointer to array with the same qualifiers. |
| |
| 2021-08-20 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_error): New function. |
| (c_parser_pragma): Handle PRAGMA_OMP_ERROR. |
| |
| 2021-08-20 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_depend_sink): Reject spurious |
| comma at the end of list. |
| (c_parser_omp_requires): Likewise. |
| |
| 2021-08-19 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_requires): Don't call |
| c_parser_peek_2nd_token and optionally consume token if current |
| token is CPP_EOF, CPP_PRAGMA_EOL or CPP_CLOSE_PAREN. |
| |
| 2021-08-18 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_nothing): New function. |
| (c_parser_pragma): Handle PRAGMA_OMP_NOTHING. |
| |
| 2021-08-18 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_statement_after_labels): Add restart label |
| near the start of the function. If c_parser_pragma returns false, |
| goto restart. |
| (c_parser_pragma): For PRAGMA_OMP_CANCELLATION_POINT return what |
| c_parser_omp_cancellation_point returned. For PRAGMA_OMP_DECLARE |
| return what c_parser_omp_declare returned. Return true instead of |
| false after emitting errors that the directive is not allowed in |
| pragma_stmt context. |
| (c_parser_omp_ordered): Return true instead of |
| false after emitting errors that the directive is not allowed in |
| pragma_stmt context. |
| (c_parser_omp_target_update): Likewise. |
| (c_parser_omp_target_enter_data, c_parser_omp_target_exit_data): |
| Change return type from tree to bool, return false if the |
| directive should be ignored in pragma_stmt contexts. |
| (c_parser_omp_target): Adjust callers of c_parser_omp_target_*_data, |
| return their result directly. |
| (c_parser_omp_cancellation_point): Change return type from void to |
| bool, return false if the directive should be ignored in pragma_stmt |
| contexts. |
| (c_parser_omp_declare): Likewise. |
| |
| 2021-08-17 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (OMP_SCOPE_CLAUSE_MASK): Define. |
| (c_parser_omp_scope): New function. |
| (c_parser_omp_construct): Handle PRAGMA_OMP_SCOPE. |
| |
| 2021-08-12 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_name): Parse filter clause name. |
| (c_parser_omp_clause_filter): New function. |
| (c_parser_omp_all_clauses): Handle PRAGMA_OMP_CLAUSE_FILTER. |
| (OMP_MASKED_CLAUSE_MASK): Define. |
| (c_parser_omp_masked): New function. |
| (c_parser_omp_parallel): Handle parallel masked. |
| (c_parser_omp_construct): Handle PRAGMA_OMP_MASKED. |
| * c-typeck.c (c_finish_omp_clauses): Handle OMP_CLAUSE_FILTER. |
| |
| 2021-08-12 Martin Uecker <muecker@gwdg.de> |
| |
| PR c/101838 |
| PR c/29970 |
| * c-typeck.c (c_expr_sizeof_type): Evaluate |
| size expressions for structs of variable size. |
| |
| 2021-08-12 Tobias Burnus <tobias@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_proc_bind): Accept |
| 'primary' as alias for 'master'. |
| |
| 2021-08-10 Martin Uecker <muecker@gwdg.de> |
| |
| PR c/29970 |
| * c-typeck.c (c_expr_sizeof_expr): Evaluate |
| size expressions for structs of variable size. |
| |
| 2021-08-06 Tamar Christina <tamar.christina@arm.com> |
| |
| * c-decl.c (c_simulate_enum_decl): Pass vec<> by pointer. |
| * c-tree.h (c_simulate_enum_decl): Likewise. |
| |
| 2021-08-06 Martin Sebor <msebor@redhat.com> |
| |
| * c-parser.c (c_parser_declaration_or_fndef): Adjust by-value function |
| vec arguments to by-reference. |
| (c_finish_omp_declare_simd): Same. |
| (c_parser_compound_statement_nostart): Same. |
| (c_parser_for_statement): Same. |
| (c_parser_objc_methodprotolist): Same. |
| (c_parser_oacc_routine): Same. |
| (c_parser_omp_for_loop): Same. |
| (c_parser_omp_declare_simd): Same. |
| |
| 2021-07-21 Thomas Schwinge <thomas@codesourcery.com> |
| Joseph Myers <joseph@codesourcery.com> |
| Cesar Philippidis <cesar@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_name): Handle 'nohost'. |
| (c_parser_oacc_all_clauses): Handle 'PRAGMA_OACC_CLAUSE_NOHOST'. |
| (OACC_ROUTINE_CLAUSE_MASK): Add 'PRAGMA_OACC_CLAUSE_NOHOST'. |
| * c-typeck.c (c_finish_omp_clauses): Handle 'OMP_CLAUSE_NOHOST'. |
| |
| 2021-07-20 Martin Sebor <msebor@redhat.com> |
| |
| * c-tree.h (c_build_function_call_vec): Adjust by-value argument to |
| by-const-reference. |
| * c-typeck.c (c_build_function_call_vec): Same. |
| |
| 2021-07-15 Martin Sebor <msebor@redhat.com> |
| |
| PR c/101289 |
| PR c/97548 |
| * c-decl.c (get_parm_array_spec): Strip nops. |
| |
| 2021-07-06 Martin Sebor <msebor@redhat.com> |
| |
| * c-objc-common.c (c_tree_printer): Remove support for %G and %K. |
| |
| 2021-07-02 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/101297 |
| * c-parser.c (c_parser_omp_atomic): Consume comma only if it |
| appears before a CPP_NAME. |
| |
| 2021-06-25 Martin Sebor <msebor@redhat.com> |
| |
| * c-decl.c (pop_scope): Replace direct uses of TREE_NO_WARNING with |
| warning_suppressed_p, suppress_warning, and copy_no_warning. |
| (diagnose_mismatched_decls): Same. |
| (duplicate_decls): Same. |
| (grokdeclarator): Same. |
| (finish_function): Same. |
| (c_write_global_declarations_1): Same. |
| * c-fold.c (c_fully_fold_internal): Same. |
| * c-parser.c (c_parser_expr_no_commas): Same. |
| (c_parser_postfix_expression): Same. |
| * c-typeck.c (array_to_pointer_conversion): Same. |
| (function_to_pointer_conversion): Same. |
| (default_function_array_conversion): Same. |
| (convert_lvalue_to_rvalue): Same. |
| (default_conversion): Same. |
| (build_indirect_ref): Same. |
| (build_function_call_vec): Same. |
| (build_atomic_assign): Same. |
| (build_unary_op): Same. |
| (c_finish_return): Same. |
| (emit_side_effect_warnings): Same. |
| (c_finish_stmt_expr): Same. |
| (c_omp_clause_copy_ctor): Same. |
| |
| 2021-06-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/101176 |
| * c-parser.c (c_parser_has_attribute_expression): Set source range for |
| the result. |
| |
| 2021-06-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/101171 |
| * c-typeck.c (build_c_cast): Don't call note_integer_operands on |
| error_mark_node. |
| |
| 2021-06-24 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (omp_split_clauses): Pass C_ORT_OMP_TARGET instead of |
| C_ORT_OMP for clauses on target construct. |
| (OMP_TARGET_CLAUSE_MASK): Add in_reduction clause. |
| (c_parser_omp_target): For non-combined target add |
| map (always, tofrom:) clauses for OMP_CLAUSE_IN_REDUCTION. Pass |
| C_ORT_OMP_TARGET to c_finish_omp_clauses. |
| * c-typeck.c (handle_omp_array_sections): Adjust ort handling |
| for addition of C_ORT_OMP_TARGET and simplify, mapping clauses are |
| never present on C_ORT_*DECLARE_SIMD. |
| (c_finish_omp_clauses): Likewise. Handle OMP_CLAUSE_IN_REDUCTION |
| on C_ORT_OMP_TARGET, set OMP_CLAUSE_MAP_IN_REDUCTION on |
| corresponding map clauses. |
| |
| 2021-06-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR inline-asm/100785 |
| * c-typeck.c (c_mark_addressable): Diagnose trying to make |
| bit-fields addressable. |
| |
| 2021-06-15 Robin Dapp <rdapp@linux.ibm.com> |
| |
| * c-decl.c (merge_decls): Copy DECL_USER_ALIGN if DECL_ALIGN is |
| similar. |
| |
| 2021-06-14 Tobias Burnus <tobias@codesourcery.com> |
| |
| PR c/100913 |
| * c-parser.c (c_parser_omp_clause_affinity): No need to set iterator |
| var in the error case. |
| |
| 2021-06-07 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR c/100920 |
| * c-typeck.c (convert_for_assignment): Test fndecl_built_in_p to |
| spot built-in functions. |
| |
| 2021-06-06 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/100902 |
| * c-parser.c (c_parser_omp_target): Call c_omp_adjust_map_clauses |
| even when target is combined with other constructs. |
| |
| 2021-06-06 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR c/100920 |
| * c-decl.c (finish_struct): Fix thinko in previous change. |
| * c-typeck.c (convert_for_assignment): Do not warn on pointer |
| assignment and initialization for storage order purposes if the |
| RHS is a call to a DECL_IS_MALLOC function. |
| |
| 2021-06-04 Martin Sebor <msebor@redhat.com> |
| |
| PR c/100783 |
| * c-objc-common.c (print_type): Handle erroneous types. |
| |
| 2021-06-03 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/100859 |
| * c-typeck.c (c_finish_omp_clauses): Move OMP_CLAUSE_AFFINITY |
| after depend only cases. |
| |
| 2021-05-31 Richard Biener <rguenther@suse.de> |
| |
| PR c++/88601 |
| * c-decl.c (names_builtin_p): Handle RID_BUILTIN_SHUFFLEVECTOR. |
| * c-parser.c (c_parser_postfix_expression): Likewise. |
| |
| 2021-05-28 Richard Biener <rguenther@suse.de> |
| |
| PR c/100803 |
| * gimple-parser.c (c_parser_gimple_paren_condition): Diagnose |
| invalid if conditions. |
| |
| 2021-05-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/99928 |
| * c-typeck.c (handle_omp_array_sections): Copy OMP_CLAUSE_MAP_IMPLICIT. |
| (c_finish_omp_clauses): Move not just OMP_CLAUSE_FIRSTPRIVATE_IMPLICIT |
| marked clauses last, but also OMP_CLAUSE_MAP_IMPLICIT. Add |
| map_firstprivate_head bitmap, set it for GOMP_MAP_FIRSTPRIVATE_POINTER |
| maps and silently remove OMP_CLAUSE_FIRSTPRIVATE_IMPLICIT if it is |
| present too. For OMP_CLAUSE_MAP_IMPLICIT silently remove the clause |
| if present in map_head, map_field_head or map_firstprivate_head |
| bitmaps. |
| |
| 2021-05-28 Tobias Burnus <tobias@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_affinity): New. |
| (c_parser_omp_clause_name, c_parser_omp_variable_list, |
| c_parser_omp_all_clauses, OMP_TASK_CLAUSE_MASK): Handle affinity clause. |
| * c-typeck.c (handle_omp_array_sections_1, handle_omp_array_sections, |
| c_finish_omp_clauses): Likewise. |
| |
| 2021-05-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR c/100653 |
| * c-decl.c (finish_struct): Warn for a union containing an aggregate |
| field with a differing scalar storage order. |
| |
| 2021-05-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/99928 |
| * c-typeck.c (c_finish_omp_clauses): Move firstprivate clauses with |
| OMP_CLAUSE_FIRSTPRIVATE_IMPLICIT to the end of the chain. Don't error |
| if a decl is mentioned both in map clause and in such firstprivate |
| clause unless OMP_CLAUSE_FIRSTPRIVATE_IMPLICIT_TARGET is also set. |
| |
| 2021-05-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/99928 |
| * c-parser.c (c_parser_omp_master): Set OMP_MASTER_COMBINED on |
| master when combined with taskloop. |
| (c_parser_omp_parallel): Don't set OMP_PARALLEL_COMBINED on |
| parallel master when not combined with taskloop. |
| |
| 2021-05-18 Richard Biener <rguenther@suse.de> |
| |
| PR c/100522 |
| * gimple-parser.c (c_parser_gimple_postfix_expression_after_primary): |
| Diagnose calls to non-functions. |
| (c_parser_gimple_statement): Diagnose unexpected assignment RHS. |
| |
| 2021-05-17 Richard Biener <rguenther@suse.de> |
| |
| PR c/100625 |
| * gimple-parser.c (c_parser_gimple_label): Avoid building |
| a GIMPLE label with NULL label decl. |
| |
| 2021-05-13 Martin Sebor <msebor@redhat.com> |
| |
| PR c/100550 |
| * c-decl.c (get_parm_array_spec): Avoid erroneous VLA bounds. |
| |
| 2021-05-12 Marcel Vollweiler <marcel@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_map): Support map-type-modifier |
| 'close'. |
| |
| 2021-05-10 Martin Liska <mliska@suse.cz> |
| |
| * c-aux-info.c (affix_data_type): Use startswith |
| function instead of strncmp. |
| * c-typeck.c (build_function_call_vec): Likewise. |
| * gimple-parser.c (c_parser_gimple_parse_bb_spec): Likewise. |
| |
| 2021-05-07 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * c-typeck.c (build_unary_op) <ADDR_EXPR>: Do not issue an error |
| on the address of a pointer field in a record with reverse SSO. |
| |
| 2021-05-04 Tobias Burnus <tobias@codesourcery.com> |
| |
| * c-typeck.c (c_finish_omp_clauses): Accept float + complex |
| for || and && reductions. |
| |
| 2021-04-29 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-typeck.c (function_types_compatible_p): For C2X, treat |
| unprototyped function as compatible with non-variadic prototyped |
| function even if some argument types are changed by the default |
| argument promotions. |
| |
| 2021-04-15 Martin Sebor <msebor@redhat.com> |
| |
| PR c/99420 |
| PR c/99972 |
| * c-decl.c (pushdecl): Always propagate type attribute. |
| |
| 2021-04-15 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR c/98852 |
| * c-typeck.c (c_common_type): Do not drop attributes that |
| affect type identity. |
| |
| 2021-04-10 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/99990 |
| * c-decl.c (finish_decl): Don't overwrite TREE_TYPE of |
| error_mark_node. |
| |
| 2021-03-25 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/99565 |
| * c-typeck.c (build_conditional_expr): Pass OEP_ADDRESS_OF_SAME_FIELD |
| to operand_equal_p. |
| |
| 2021-03-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/99588 |
| * c-typeck.c (mark_exp_read): Recognize what build_atomic_assign |
| with modifycode NOP_EXPR produces and mark the _Atomic var as read |
| if found. |
| (build_atomic_assign): For modifycode of NOP_EXPR, use COMPOUND_EXPRs |
| rather than STATEMENT_LIST. Otherwise call mark_exp_read on lhs. |
| Set TREE_SIDE_EFFECTS on the TARGET_EXPR. |
| |
| 2021-03-15 Tobias Burnus <tobias@codesourcery.com> |
| |
| PR c++/99509 |
| * c-decl.c (finish_decl): For 'omp declare target implicit' vars, |
| ensure that the varpool node is marked as offloadable. |
| |
| 2021-03-05 Tobias Burnus <tobias@codesourcery.com> |
| |
| PR c/99137 |
| * c-parser.c (c_parser_oacc_clause_async): Reject comma expressions. |
| |
| 2021-02-24 Martin Sebor <msebor@redhat.com> |
| |
| PR middle-end/97172 |
| * c-decl.c (free_attr_access_data): Clear attribute arg spec. |
| |
| 2021-02-18 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/99136 |
| * c-typeck.c (c_finish_return): Don't wrap retval into |
| EXCESS_PRECISION_EXPR in functions that return void. |
| |
| 2021-02-11 Marek Polacek <polacek@redhat.com> |
| |
| * c-parser.c (c_parser_if_statement): Use vec_free. |
| |
| 2021-02-04 Martin Sebor <msebor@redhat.com> |
| |
| PR c/97882 |
| * c-decl.c (locate_old_decl): Add type to diagnostic output. |
| (diagnose_mismatched_decls): Same. |
| (start_function): Introduce temporaries for better readability. |
| * c-typeck.c (comptypes_internal): Only consider complete enum |
| types in comparisons with integers. |
| |
| 2021-02-01 Martin Sebor <msebor@redhat.com> |
| |
| PR middle-end/97172 |
| * c-decl.c (free_attr_access_data): New function. |
| (c_parse_final_cleanups): Call free_attr_access_data. |
| |
| 2021-01-16 Kwok Cheung Yeung <kcy@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_detach): New. |
| (c_parser_omp_all_clauses): Handle PRAGMA_OMP_CLAUSE_DETACH clause. |
| (OMP_TASK_CLAUSE_MASK): Add mask for PRAGMA_OMP_CLAUSE_DETACH. |
| * c-typeck.c (c_finish_omp_clauses): Handle PRAGMA_OMP_CLAUSE_DETACH |
| clause. Prevent use of detach with mergeable and overriding the |
| data sharing mode of the event handle. |
| |
| 2021-01-15 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-typeck.c (c_finish_omp_clauses): For reduction build array with |
| unqualified element type and then call c_build_qualified_type on the |
| ARRAY_TYPE. |
| |
| 2021-01-07 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_compound_statement): Only |
| reallocate loop array if it is too small. |
| |
| 2020-12-16 Martin Uecker <muecker@gwdg.de> |
| |
| PR c/98047 |
| * c-typeck.c (build_modify_expr): Drop qualifiers. |
| |
| 2020-12-16 Martin Uecker <muecker@gwdg.de> |
| |
| PR c/98260 |
| * c-parser.c (c_parser_expression): Look into |
| nop expression when marking expressions as read. |
| |
| 2020-12-14 Martin Liska <mliska@suse.cz> |
| |
| PR sanitizer/98204 |
| * c-typeck.c (pointer_diff): Do not emit a top-level |
| sanitization. |
| (build_binary_op): Likewise. |
| |
| 2020-12-09 Tobias Burnus <tobias@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_allocate): New. |
| (c_parser_omp_construct): Call it. |
| |
| 2020-12-09 Richard Biener <rguenther@suse.de> |
| |
| PR c/98200 |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Return |
| early on error. |
| |
| 2020-12-07 Martin Uecker <muecker@gwdg.de> |
| |
| PR c/97981 |
| * c-typeck.c (convert_lvalue_to_rvalue): Move the code |
| that drops qualifiers to the end of the function. |
| |
| 2020-11-26 Martin Uecker <muecker@gwdg.de> |
| |
| PR c/65455 |
| PR c/92935 |
| * c-parser.c (c_parser_declaration_or_fndef): Remove |
| redundant code to drop qualifiers of _Atomic types for __auto_type. |
| (c_parser_typeof_specifier): Do not drop qualifiers of _Atomic |
| types for __typeof__. |
| |
| 2020-11-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/97958 |
| * c-parser.c (c_parser_binary_expression): For omp atomic binary |
| expressions, use make_node instead of build2 to avoid checking build2 |
| performs. |
| |
| 2020-11-23 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/95630 |
| * c-typeck.c (build_binary_op): Use pedwarn_c99 with OPT_Wpedantic |
| for comparisons of complete and incomplete pointers. |
| |
| 2020-11-21 Aaron Sawdey <acsawdey@linux.ibm.com> |
| |
| * c-aux-info.c (gen_type): Support opaque types. |
| |
| 2020-11-20 Martin Sebor <msebor@redhat.com> |
| |
| PR middle-end/97879 |
| * c-decl.c (start_function): Set ATTR_FLAG_INTERNAL in flags. |
| |
| 2020-11-20 Jakub Jelinek <jakub@redhat.com> |
| |
| PR other/97911 |
| * Make-lang.in (c.serial): Change from goal to a variable. |
| (.PHONY): Drop c.serial. |
| |
| 2020-11-20 Martin Uecker <muecker@gwdg.de> |
| |
| * c-typeck.c (convert_lvalue_to_rvalue): Drop qualifiers. |
| |
| 2020-11-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/97860 |
| * c-decl.c (get_parm_array_spec): Bail out of nelts is |
| error_operand_p. |
| |
| 2020-11-18 Jakub Jelinek <jakub@redhat.com> |
| |
| * Make-lang.in (c.serial): New goal. |
| (.PHONY): Add c.serial c.prev. |
| (cc1$(exeext)): Call LINK_PROGRESS. |
| |
| 2020-11-13 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| * c-parser.c (c_parser_asm_statement): Parse outputs for asm |
| goto too. |
| * c-typeck.c (build_asm_expr): Remove an assert checking output |
| absence for asm goto. |
| |
| 2020-11-13 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-typeck.c (c_finish_omp_clauses): Don't clear |
| OMP_CLAUSE_REDUCTION_INSCAN unless reduction_seen == -2. |
| |
| 2020-11-13 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR objc/77404 |
| * c-parser.c (c_parser_objc_class_definition): Pass the |
| location of the class name to the interface declaration. |
| |
| 2020-11-10 Strager Neds <strager.nds@gmail.com> |
| |
| * c-decl.c (merge_decls): Use new overload of |
| set_decl_section_name. |
| |
| 2020-11-10 Chung-Lin Tang <cltang@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_target_data): Add use of |
| new c_omp_adjust_map_clauses function. Add GOMP_MAP_ATTACH_DETACH as |
| handled map clause kind. |
| (c_parser_omp_target_enter_data): Likewise. |
| (c_parser_omp_target_exit_data): Likewise. |
| (c_parser_omp_target): Likewise. |
| * c-typeck.c (handle_omp_array_sections): Adjust COMPONENT_REF case to |
| use GOMP_MAP_ATTACH_DETACH map kind for C_ORT_OMP region type. |
| (c_finish_omp_clauses): Adjust bitmap checks to allow struct decl and |
| same struct field access to co-exist on OpenMP construct. |
| |
| 2020-11-07 Martin Uecker <muecker@gwdg.de> |
| |
| * c-parser.c (c_parser_label): Implement mixing of labels and code. |
| (c_parser_all_labels): Likewise. |
| |
| 2020-11-06 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * c-parser.c (c_parser_objc_at_property_declaration): |
| Improve parsing fidelity. Associate better location info |
| with @property attributes. Clean up the interface to |
| objc_add_property_declaration (). |
| |
| 2020-11-06 Nathan Sidwell <nathan@acm.org> |
| |
| * c-decl.c (diagnose_mismatched_decls): Rename |
| DECL_IS_BUILTIN->DECL_IS_UNDECLARED_BUILTIN. |
| (warn_if_shadowing, implicitly_declare, names_builtin_p) |
| (collect_source_refs): Likewise. |
| * c-typeck.c (inform_declaration, inform_for_arg) |
| (convert_for_assignment): Likewise. |
| |
| 2020-11-06 Tobias Burnus <tobias@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_atomic): Add openacc parameter and update |
| OpenACC matching. |
| (c_parser_omp_construct): Update call. |
| |
| 2020-11-04 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/97670 |
| * c-typeck.c (c_finish_omp_clauses): Look through array reductions to |
| find underlying decl to clear in the aligned_head bitmap. |
| |
| 2020-11-04 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-decl.c (handle_nodiscard_attribute): New. |
| (std_attribute_table): Add nodiscard. |
| * c-parser.c (c_parser_std_attribute): Expect argument to |
| nodiscard attribute to be a string. Do not special-case ignoring |
| nodiscard. |
| * c-typeck.c (maybe_warn_nodiscard): New. |
| (build_compound_expr, emit_side_effect_warnings): Call |
| maybe_warn_nodiscard. |
| (c_process_expr_stmt, c_finish_stmt_expr): Also call |
| emit_side_effect_warnings if warn_unused_result. |
| |
| 2020-10-29 Asher Gordon <AsDaGo@posteo.net> |
| |
| * c-typeck.c (free_all_tagged_tu_seen_up_to): Replace free |
| with XDELETE. |
| (finish_init): Likewise. |
| (pop_init_level): Likewise. |
| |
| 2020-10-28 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-decl.c (store_parm_decls_newstyle): Use pedwarn_c11 not |
| error_at for omitted parameter name. |
| |
| 2020-10-28 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_name): Handle allocate. |
| (c_parser_omp_clause_allocate): New function. |
| (c_parser_omp_all_clauses): Handle PRAGMA_OMP_CLAUSE_ALLOCATE. |
| (OMP_FOR_CLAUSE_MASK, OMP_SECTIONS_CLAUSE_MASK, |
| OMP_PARALLEL_CLAUSE_MASK, OMP_SINGLE_CLAUSE_MASK, |
| OMP_TASK_CLAUSE_MASK, OMP_TASKGROUP_CLAUSE_MASK, |
| OMP_DISTRIBUTE_CLAUSE_MASK, OMP_TEAMS_CLAUSE_MASK, |
| OMP_TARGET_CLAUSE_MASK, OMP_TASKLOOP_CLAUSE_MASK): Add |
| PRAGMA_OMP_CLAUSE_ALLOCATE. |
| * c-typeck.c (c_finish_omp_clauses): Handle OMP_CLAUSE_ALLOCATE. |
| |
| 2020-10-27 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-parser.c (c_parser_std_attribute_specifier): Allow duplicate |
| standard attributes. |
| |
| 2020-10-23 Marek Polacek <polacek@redhat.com> |
| |
| PR c++/91741 |
| * c-parser.c (c_parser_binary_expression): Implement -Wsizeof-array-div. |
| (c_parser_postfix_expression): Set PAREN_SIZEOF_EXPR. |
| (c_parser_expr_list): Handle PAREN_SIZEOF_EXPR like SIZEOF_EXPR. |
| * c-tree.h (char_type_p): Declare. |
| * c-typeck.c (char_type_p): No longer static. |
| |
| 2020-10-23 Martin Sebor <msebor@redhat.com> |
| |
| PR middle-end/97552 |
| * c-decl.c (get_parm_array_spec): Handle static VLA parameters. |
| |
| 2020-09-19 Martin Sebor <msebor@redhat.com> |
| |
| PR c/50584 |
| * c-decl.c (lookup_last_decl): Define new function. |
| (c_decl_attributes): Call it. |
| (start_decl): Add argument and use it. |
| (finish_decl): Call build_attr_access_from_parms and decl_attributes. |
| (get_parm_array_spec): Define new function. |
| (push_parm_decl): Call get_parm_array_spec. |
| (start_function): Call warn_parm_array_mismatch. Build attribute |
| access and add it to current function. |
| * c-parser.c (c_parser_declaration_or_fndef): Diagnose mismatches |
| in forms of array parameters. |
| * c-tree.h (start_decl): Add argument. |
| |
| 2020-09-19 Sandra Loosemore <sandra@codesourcery.com> |
| |
| * c-decl.c (c_break_label, c_cont_label): Delete, and replace |
| with... |
| (in_statement): New. |
| (start_function): Adjust for above change. |
| (c_push_function_context, c_pop_function_context): Likewise. |
| * c-lang.h (struct language_function): Likewise. |
| * c-objc-common.h (LANG_HOOKS_BLOCK_MAY_FALLTHRU): Define. |
| * c-parser.c (objc_foreach_break_label, objc_foreach_continue_label): |
| New. |
| (c_parser_statement_after_labels): Adjust calls to c_finish_bc_stmt. |
| (c_parser_switch_statement): Adjust break/switch context handling |
| and calls to renamed functions. |
| (c_parser_while_statement): Adjust break/switch context handling and |
| build a WHILE_STMT. |
| (c_parser_do_statement): Ditto, with DO_STMT respectively. |
| (c_parser_for_statement): Ditto, with FOR_STMT respectively. |
| (c_parser_omp_for_loop): Adjust break/switch context handling. |
| * c-tree.h (c_break_label, c_cont_label): Delete. |
| (IN_SWITCH_STMT, IN_ITERATION_STMT): Define. |
| (IN_OMP_BLOCK, IN_OMP_FOR, IN_OBJC_FOREACH): Define. |
| (in_statement, switch_statement_break_seen_p): Declare. |
| (c_start_case, c_finish_case): Renamed to... |
| (c_start_switch, c_finish_switch). |
| (c_finish_bc_stmt): Adjust arguments. |
| * c-typeck.c (build_function_call_vec): Don't try to print |
| statements with %qE format. |
| (struct c_switch): Rename switch_expr field to switch_stmt. |
| Add break_stmt_seen_p field. |
| (c_start_case): Rename to c_start_switch. Build a SWITCH_STMT |
| instead of a SWITCH_EXPR. Update for changes to struct c_switch. |
| (do_case): Update for changes to struct c_switch. |
| (c_finish_case): Rename to c_finish_switch. Update for changes to |
| struct c_switch and change of representation from SWITCH_EXPR to |
| SWITCH_STMT. |
| (c_finish_loop): Delete. |
| (c_finish_bc_stmt): Update to reflect changes to break/continue |
| state representation. Build a BREAK_STMT or CONTINUE_STMT instead |
| of a GOTO_EXPR except for objc foreach loops. |
| |
| 2020-09-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/96867 |
| * c-typeck.c (handle_omp_array_sections_1): Test C_ARRAY_PARAMETER |
| only on PARM_DECLs. |
| |
| 2020-08-28 Martin Sebor <msebor@redhat.com> |
| |
| PR c/96596 |
| * c-decl.c (match_builtin_function_types): Avoid dealing with erroneous |
| argument type. |
| |
| 2020-08-27 Martin Liska <mliska@suse.cz> |
| |
| * gimple-parser.c (c_parser_gimple_compound_statement): Set exact argument of a vector |
| growth function to true. |
| |
| 2020-08-25 Tobias Burnus <tobias@codesourcery.com> |
| |
| PR c/96678 |
| * c-typeck.c (handle_omp_array_sections_1): Talk about |
| array function parameter in the error message. |
| |
| 2020-08-18 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/96571 |
| * c-parser.c (c_parser_generic_selection): Change match_found from bool |
| to int, holding index of the match. Call mark_exp_read on the selector |
| expression and on expressions other than the selected one. |
| |
| 2020-08-01 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR c/96377 |
| * c-typeck.c (process_init_element): Split test for whether to |
| recurse into a record, union or array into... |
| (initialize_elementwise_p): ...this new function. Don't recurse |
| into a vector type if the initialization value is also a vector. |
| |
| 2020-07-31 Richard Biener <rguenther@suse.de> |
| |
| PR debug/96383 |
| * c-objc-common.h (LANG_HOOKS_FINALIZE_EARLY_DEBUG): |
| Define to c_common_finalize_early_debug. |
| |
| 2020-07-22 Tobias Burnus <tobias@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_hint): Require nonnegative hint clause. |
| (c_parser_omp_critical): Permit hint(0) clause without named critical. |
| (c_parser_omp_construct): Don't assert if error_mark_node is returned. |
| |
| 2020-07-21 Sunil K Pandey <skpgkp2@gmail.com> |
| |
| PR target/95237 |
| * c-decl.c (finish_decl): Call target hook |
| lower_local_decl_alignment to lower local decl alignment. |
| |
| 2020-07-09 Julian Brown <julian@codesourcery.com> |
| Thomas Schwinge <thomas@codesourcery.com> |
| |
| PR middle-end/95270 |
| * c-typeck.c (c_finish_omp_clauses): Set OMP_CLAUSE_SIZE (bias) to zero |
| for standalone attach/detach clauses. |
| |
| 2020-07-08 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * c-typeck.c (convert_for_assignment): If -Wscalar-storage-order is |
| set, warn for conversion between pointers that point to incompatible |
| scalar storage orders. |
| |
| 2020-07-07 Kaipeng Zhou <zhoukaipeng3@huawei.com> |
| |
| * c-parser.c (c_parser_statement_after_labels): Pass correct |
| parameters to c_parser_do_statement. |
| |
| 2020-06-16 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_expr_no_commas): Save, clear and restore |
| c_in_omp_for. |
| (c_parser_omp_for_loop): Set c_in_omp_for around some calls to avoid |
| premature c_fully_fold. Defer explicit c_fully_fold calls to after |
| c_finish_omp_for. |
| * c-tree.h (c_in_omp_for): Declare. |
| * c-typeck.c (c_in_omp_for): Define. |
| (build_modify_expr): Avoid c_fully_fold if c_in_omp_for. |
| (digest_init): Likewise. |
| (build_binary_op): Likewise. |
| |
| 2020-06-16 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_schedule): Reject modifier separated |
| from kind by comma rather than colon. |
| |
| 2020-06-05 Mark Wielaard <mark@klomp.org> |
| |
| * c-decl.c (implicit_decl_warning): When warned and olddecl is |
| an undeclared builtin, then add a fixit header hint, if found. |
| (implicitly_declare): Add OPT_Wbuiltin_declaration_mismatch to |
| warning_at about implicit builtin declaration type mismatch. |
| |
| 2020-06-03 Mark Wielaard <mark@klomp.org> |
| |
| * c-parser.c (struct c_parser): Add seen_string_literal |
| bitfield. |
| (c_parser_consume_token): Reset seen_string_literal. |
| (c_parser_error_richloc): Add name_hint if seen_string_literal |
| and next token is a CPP_NAME and we have a missing header |
| suggestion for the name. |
| (c_parser_string_literal): Set seen_string_literal. |
| |
| 2020-06-03 Mark Wielaard <mark@klomp.org> |
| |
| * c-parser.c (c_parser_postfix_expression_after_primary): Add |
| scope with matching_parens after CPP_OPEN_PAREN. |
| |
| 2020-06-03 Tobias Burnus <tobias@codesourcery.com> |
| |
| * c-objc-common.h (LANG_HOOKS_OMP_PREDETERMINED_MAPPING): Redefine. |
| |
| 2020-05-28 Nicolas Bértolo <nicolasbertolo@gmail.com> |
| |
| * Make-lang.in: Remove extra slash. |
| |
| 2020-05-19 Martin Liska <mliska@suse.cz> |
| |
| * c-parser.c: Fix typo. |
| |
| 2020-05-14 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_target): Set cfun->has_omp_target. |
| |
| 2020-05-07 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/94703 |
| * gimple-parser.c (c_parser_parse_ssa_name): Do not set |
| DECL_GIMPLE_REG_P. |
| |
| 2020-04-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/94842 |
| * c-decl.c (set_labels_context_r): In addition to context-less |
| LABEL_DECLs adjust also LABEL_DECLs with context equal to |
| parent function if any. |
| (store_parm_decls): Adjust comment. |
| |
| 2020-04-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR objc/94637 |
| * c-parser.c (c_parser_objc_selector_arg): Handle CPP_SCOPE like |
| two CPP_COLON tokens. |
| |
| 2020-04-17 Jakub Jelinek <jakub@redhat.com> |
| |
| PR other/94629 |
| * c-parser.c (c_parser_oacc_routine): Remove redundant assignment |
| to data.clauses. |
| |
| 2020-04-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/94593 |
| * c-parser.c (c_parser_pragma) <case PRAGMA_OMP_REQUIRES>: Reject |
| requires directive when not at file scope. |
| |
| 2020-04-08 Tobias Burnus <tobias@codesourcery.com> |
| |
| PR middle-end/94120 |
| * c-decl.c (c_check_in_current_scope): New function. |
| * c-tree.h (c_check_in_current_scope): Declare it. |
| * c-parser.c (c_parser_oacc_declare): Add check that variables |
| are declared in the same scope as the directive. Fix handling |
| of namespace vars. |
| |
| 2020-04-07 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/94512 |
| * c-parser.c (c_parser_omp_parallel): Set OMP_PARALLEL_COMBINED |
| if c_parser_omp_master succeeded. |
| |
| 2020-03-23 Jakub Jelinek <jakub@redhat.com> |
| |
| PR gcov-profile/94029 |
| PR c/94239 |
| * c-parser.c (c_parser_declaration_or_fndef): Initialize endloc to |
| the function_start_locus location. Don't do that afterwards for the |
| __GIMPLE body parsing. |
| |
| 2020-03-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR gcov-profile/94029 |
| * c-tree.h (finish_function): Add location_t argument defaulted to |
| input_location. |
| * c-parser.c (c_parser_compound_statement): Add endlocp argument and |
| set it to the locus of closing } if non-NULL. |
| (c_parser_compound_statement_nostart): Return locus of closing }. |
| (c_parser_parse_rtl_body): Likewise. |
| (c_parser_declaration_or_fndef): Propagate locus of closing } to |
| finish_function. |
| * c-decl.c (finish_function): Add end_loc argument, use it instead of |
| input_location to set function_end_locus. |
| |
| 2020-03-17 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/94172 |
| * c-tree.h (C_TYPE_INCOMPLETE_VARS): Define to TYPE_LANG_SLOT_1 |
| instead of TYPE_VFIELD, and support it on {RECORD,UNION,ENUMERAL}_TYPE. |
| (TYPE_ACTUAL_ARG_TYPES): Check that it is only used on FUNCTION_TYPEs. |
| * c-decl.c (pushdecl): Push C_TYPE_INCOMPLETE_VARS also to |
| ENUMERAL_TYPEs. |
| (finish_incomplete_vars): New function, moved from finish_struct. Use |
| relayout_decl instead of layout_decl. |
| (finish_struct): Remove obsolete comment about C_TYPE_INCOMPLETE_VARS |
| being TYPE_VFIELD. Use finish_incomplete_vars. |
| (finish_enum): Clear C_TYPE_INCOMPLETE_VARS. Call |
| finish_incomplete_vars. |
| * c-typeck.c (c_build_qualified_type): Clear C_TYPE_INCOMPLETE_VARS |
| also on ENUMERAL_TYPEs. |
| |
| 2020-03-16 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/94179 |
| * c-fold.c (c_fully_fold_internal): Handle MEM_REF. |
| |
| 2020-03-13 Martin Sebor <msebor@redhat.com> |
| |
| PR c/94040 |
| * c-decl.c (builtin_structptr_type_count): New constant. |
| (match_builtin_function_types): Reject decls that are incompatible |
| in types pointed to by pointers. |
| (diagnose_mismatched_decls): Adjust comments. |
| |
| 2020-03-05 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/93577 |
| * c-typeck.c (pop_init_level): Do not diagnose initializers as |
| empty when initialized type is error_mark_node. |
| (set_designator, process_init_element): Ignore initializers for |
| elements of a variable-size type or of error_mark_node. |
| |
| 2020-03-01 Martin Sebor <msebor@redhat.com> |
| |
| PR middle-end/93926 |
| * c-decl.c (types_close_enough_to_match): New function. |
| (match_builtin_function_types): |
| (diagnose_mismatched_decls): Add missing inform call to a warning. |
| |
| 2020-03-01 Martin Sebor <msebor@redhat.com> |
| |
| PR c/93812 |
| * c-typeck.c (build_functype_attribute_variant): New function. |
| (composite_type): Call it. |
| |
| 2020-02-25 Jakub Jelinek <jakub@redhat.com> |
| |
| PR other/93912 |
| * gimple-parser.c (c_parser_gimple_parse_bb_spec_edge_probability): |
| Rename last argument from probablity to probability. |
| |
| 2020-02-13 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/93576 |
| * c-decl.c (grokdeclarator): If this_size_varies, only push size into |
| *expr if it has side effects. |
| |
| 2020-01-30 Jeff Law <law@redhat.com> |
| |
| PR c/88660 |
| * c-parser.c (c_parser_switch_statement): Make sure to request |
| marking the switch expr as used. |
| |
| 2020-01-22 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/93348 |
| * c-typeck.c (build_c_cast): Call remove_c_maybe_const_expr on |
| argument with integer operands. |
| |
| 2020-01-16 Kerem Kat <keremkat@gmail.com> |
| |
| PR c/92833 |
| * c-parser.c (c_parser_consume_token): Fix peeked token stack pop |
| to support 4 available tokens. |
| |
| 2020-01-15 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/93072 |
| * c-decl.c (pushdecl): Use TREE_PUBLIC, not DECL_EXTERNAL, to |
| determine whether to set DECL_CONTEXT. |
| |
| 2020-01-13 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/93241 |
| * c-typeck.c (build_c_cast): Check for expressions with integer |
| operands that can occur in an unevaluated part of an integer |
| constant expression and call note_integer_operands as needed. |
| |
| 2019-01-08 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/93199 |
| * gimple-parser.c (c_parser_parse_gimple_body): Remove __PHI IFN |
| permanently. |
| |
| 2020-01-01 Jakub Jelinek <jakub@redhat.com> |
| |
| Update copyright years. |
| |
| 2019-12-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * c-decl.c (collect_source_ref_cb): Delete. |
| (for_each_global_decl): Rename into... |
| (collect_source_refs): ...this. Call collect_source_ref directly. |
| (c_parse_final_cleanups): Always call collect_source_ref on the main |
| input filename. |
| |
| 2019-12-19 Julian Brown <julian@codesourcery.com> |
| Cesar Philippidis <cesar@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_name): Add parsing of attach and |
| detach clauses. |
| (c_parser_omp_variable_list): Add ALLOW_DEREF optional parameter. |
| Allow deref (->) in variable lists if true. |
| (c_parser_omp_var_list_parens): Add ALLOW_DEREF optional parameter. |
| Pass to c_parser_omp_variable_list. |
| (c_parser_oacc_data_clause): Support attach and detach clauses. Update |
| call to c_parser_omp_variable_list. |
| (c_parser_oacc_all_clauses): Support attach and detach clauses. |
| (OACC_DATA_CLAUSE_MASK, OACC_ENTER_DATA_CLAUSE_MASK, |
| OACC_KERNELS_CLAUSE_MASK, OACC_PARALLEL_CLAUSE_MASK, |
| OACC_SERIAL_CLAUSE_MASK): Add PRAGMA_OACC_CLAUSE_ATTACH. |
| (OACC_EXIT_DATA_CLAUSE_MASK): Add PRAGMA_OACC_CLAUSE_DETACH. |
| * c-typeck.c (handle_omp_array_sections_1): Reject subarrays for attach |
| and detach. Support deref. |
| (handle_omp_array_sections): Use GOMP_MAP_ATTACH_DETACH instead of |
| GOMP_MAP_ALWAYS_POINTER for OpenACC. |
| (c_oacc_check_attachments): New function. |
| (c_finish_omp_clauses): Check attach/detach arguments for being |
| pointers using above. Support deref. |
| |
| 2019-12-19 Julian Brown <julian@codesourcery.com> |
| Maciej W. Rozycki <macro@codesourcery.com> |
| Tobias Burnus <tobias@codesourcery.com> |
| Thomas Schwinge <thomas@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_name): Support no_create. |
| (c_parser_oacc_data_clause): Likewise. |
| (c_parser_oacc_all_clauses): Likewise. |
| (OACC_DATA_CLAUSE_MASK, OACC_KERNELS_CLAUSE_MASK) |
| (OACC_PARALLEL_CLAUSE_MASK, OACC_SERIAL_CLAUSE_MASK): Add |
| PRAGMA_OACC_CLAUSE_NO_CREATE. |
| * c-typeck.c (handle_omp_array_sections): Support |
| GOMP_MAP_NO_ALLOC. |
| |
| 2019-12-09 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-objc-common.c (range_label_for_type_mismatch::get_text): |
| Replace label_text ctor calls. |
| |
| 2019-12-04 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/36941 |
| PR c/88827 |
| * c-typeck.c (convert_lvalue_to_rvalue): Call |
| require_complete_type for arguments not of void types. |
| (build_indirect_ref): Do not diagnose dereferencing pointers to |
| incomplete types. |
| * c-tree.h (C_TYPE_ERROR_REPORTED): Remove. |
| |
| 2019-12-03 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/88704 |
| * c-decl.c (store_parm_decls_oldstyle): Diagnose use of [*] in |
| old-style parameter definitions. |
| |
| 2019-12-01 Sandra Loosemore <sandra@codesourcery.com> |
| |
| PR target/92499 |
| |
| * c-decl.c (flexible_array_type_p): Move to common code. |
| |
| 2019-11-30 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * c-decl.c (start_decl): Allow initialization of variables whose |
| size is a POLY_INT_CST. |
| (finish_decl): Use verify_type_context to check whether the target |
| allows variables with a particular type to have static or thread-local |
| storage duration. Don't raise a second error if such variables do |
| not have a constant size. |
| (grokdeclarator): Use verify_type_context to check whether the |
| target allows fields or array elements to have a particular type. |
| * c-typeck.c (pointer_diff): Use verify_type_context to test whether |
| the target allows pointer difference for the types involved. |
| (build_unary_op): Likewise for pointer increment and decrement. |
| |
| 2019-11-29 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-parser.c (struct c_parser): Add members raw_tokens and |
| raw_tokens_used. |
| (c_lex_one_token): Add argument raw. Handle lexing raw tokens and |
| using previously-lexed raw tokens. |
| (c_parser_peek_nth_token_raw) |
| (c_parser_check_balanced_raw_token_sequence): New functions. |
| (c_parser_nth_token_starts_std_attributes): Use |
| c_parser_check_balanced_raw_token_sequence for Objective-C. |
| |
| 2019-11-25 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/91985 |
| * c-decl.c (finish_declspecs): Use int instead of decimal |
| floating-point types if decimal floating-point not supported. |
| |
| 2019-11-25 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-tree.h (struct c_declarator): Use a structure for id member. |
| * c-decl.c (grokdeclarator): Extract attributes from cdk_id |
| declarators at the start, not when handling individual declarators |
| later. Use u.id.id instead of u.id. |
| (grokfield): Use u.id.id instead of u.id. |
| (build_id_declarator): Set u.id.id and u.id.attrs. |
| (finish_declspecs): Handle postfix attributes in case of typedef |
| name or typeof used. |
| * c-parser.c (c_parser_direct_declarator) |
| (c_parser_direct_declarator_inner): Place declarator for |
| attributes inside that for function or array, not outside. Set |
| u.id.attrs for identifiers. |
| (c_parser_parameter_declaration): Use u.id.id instead of u.id. |
| * gimple-parser.c (c_parser_gimple_declaration): Use u.id.id |
| instead of u.id. |
| |
| 2019-11-22 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/90677 |
| * c-decl.c (identifier_global_tag): Define. |
| |
| 2019-11-20 Richard Biener <rguenther@suse.de> |
| |
| PR c/92088 |
| * c-decl.c (grokdeclarator): Prevent inlining of nested |
| function with VLA arguments. |
| |
| 2019-11-20 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-decl.c (c_warn_type_attributes): New function. |
| (groktypename, grokdeclarator, finish_declspecs): Call |
| c_warn_type_attributes before applying attributes to types. |
| * c-tree.h (c_warn_type_attributes): Declare. |
| |
| 2019-11-19 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-decl.c (c_warn_unused_attributes): Use pedwarn not warning for |
| standard attributes. |
| * c-parser.c (c_parser_std_attribute): Take argument for_tm. Use |
| pedwarn for unknown standard attributes and return error_mark_node |
| for them. |
| |
| 2019-11-18 Matthew Malcomson <matthew.malcomson@arm.com> |
| |
| * c-parser.c (c_parser_parse_rtl_body): Always call |
| run_rtl_passes, even if startwith pass is not provided. |
| |
| 2019-11-15 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-parser.c (c_parser_std_attribute_specifier): Diagnose |
| duplicate standard attributes. |
| |
| 2019-11-15 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-decl.c (std_attribute_table): Add maybe_unused. |
| |
| 2019-11-15 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-decl.c (std_attribute_table): Add fallthrough. |
| * c-parser.c (c_parser_declaration_or_fndef): Diagnose fallthrough |
| attribute at top level. |
| |
| 2019-11-15 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-decl.c (std_attribute_table): New. |
| (c_init_decl_processing): Register attributes from |
| std_attribute_table. |
| * c-parser.c (c_parser_attribute_arguments): Add arguments |
| require_string and allow_empty_args. All callers changed. |
| (c_parser_std_attribute): Set require_string argument for |
| "deprecated" attribute. |
| |
| 2019-11-14 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-parser.c (c_parser_postfix_expression) |
| (c_parser_check_literal_zero): Handle CPP_UTF8CHAR. |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Likewise. |
| |
| 2019-11-14 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * c-typeck.c (build_conditional_expr): Use truth_type_for instead |
| of build_same_sized_truth_vector_type. |
| (build_vec_cmp): Likewise. |
| |
| 2019-11-14 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_context_selector): Don't require score |
| argument to fit into shwi, just to be INTEGER_CST. Diagnose |
| negative score. |
| |
| * c-parser.c (c_parser_omp_context_selector): Rename |
| CTX_PROPERTY_IDLIST to CTX_PROPERTY_NAME_LIST, add CTX_PROPERTY_ID. |
| Use CTX_PROPERTY_ID for atomic_default_mem_order, only allow a single |
| identifier in that. For CTX_PROPERTY_NAME_LIST, allow identifiers |
| and string literals. |
| |
| 2019-11-14 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-tree.h (enum c_typespec_kind): Add ctsk_tagref_attrs and |
| ctsk_tagfirstref_attrs. |
| (struct c_declspecs): Update description of attrs. Add |
| postfix_attrs and non_std_attrs_seen_p. Increase size of |
| typespec_kind bit-field. |
| (c_warn_unused_attributes): New declaration. |
| (parser_xref_tag): Update prototype. |
| * c-decl.c (c_warn_unused_attributes): New function. |
| (shadow_tag_warned): Handle ctsk_tagfirstref_attrs and |
| ctsk_tagref_attrs. Handle attribute declarations. |
| (check_compound_literal_type): Handle ctsk_tagfirstref_attrs. |
| (grokdeclarator): Handle standard attributes. |
| (parser_xref_tag): Add arguments have_std_attrs and attrs. Apply |
| attributes to incomplete type reference. |
| (xref_tag): Update call to parser_xref_tag. |
| (declspecs_add_addrspace, declspecs_add_type) |
| (declspecs_add_scspec, declspecs_add_attrs): Set |
| non_std_attrs_seen_p. |
| (finish_declspecs): Apply postfix standard attributes to type. |
| * c-parser.c (c_token_starts_declspecs) |
| (c_token_starts_declaration, c_parser_next_token_starts_declspecs) |
| (c_parser_next_tokens_start_declaration): Update comments. |
| (c_parser_consume_token, c_parser_consume_pragma): Handle moving |
| parser->tokens[2] to parser->tokens[1]. |
| (c_parser_nth_token_starts_std_attributes) |
| (c_parser_std_attribute_specifier_sequence): New functions. |
| (c_parser_declaration_or_fndef): Add arguments have_attrs and |
| attrs. All callers changed. Handle standard attributes. |
| (c_parser_parms_declarator, c_parser_parms_list_declarator) |
| (c_parser_parameter_declaration): Add argument have_gnu_attrs. |
| All callers changed. |
| (c_parser_declspecs): Add arguments start_std_attr_ok and |
| end_std_attr_ok. All callers changed. Handle standard |
| attributes. |
| (c_parser_enum_specifier, c_parser_struct_or_union_specifier) |
| (c_parser_direct_declarator, c_parser_direct_declarator_inner) |
| (c_parser_compound_statement_nostart, c_parser_all_labels) |
| (c_parser_label, c_parser_statement, c_parser_for_statement): |
| Handle standard attributes. |
| * c-parser.h (c_parser_declspecs): Update prototype. |
| * gimple-parser.c (c_parser_gimple_declaration): Update call to |
| c_parser_declspecs. |
| |
| 2019-11-12 Martin Liska <mliska@suse.cz> |
| |
| * gimple-parser.c: Do not include params.h. |
| |
| 2019-11-12 Martin Liska <mliska@suse.cz> |
| |
| * gimple-parser.c (c_parser_parse_gimple_body): Replace old parameter syntax |
| with the new one, include opts.h if needed. Use SET_OPTION_IF_UNSET |
| macro. |
| |
| 2019-11-12 Maciej W. Rozycki <macro@codesourcery.com> |
| Frederik Harwath <frederik@codesourcery.com> |
| |
| gcc/c/ |
| * c-parser.c (OACC_SERIAL_CLAUSE_MASK): New macro. |
| (c_parser_oacc_kernels_parallel): Rename function to... |
| (c_parser_oacc_compute): ... this. Handle PRAGMA_OACC_SERIAL. |
| (c_parser_omp_construct): Update accordingly. |
| |
| |
| 2019-11-11 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_translation_unit): Diagnose declare target |
| without corresponding end declare target. |
| |
| 2019-11-08 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * c-convert.c (convert): Only handle vector conversions if one of |
| the types satisfies gnu_vector_type_p or if -flax-vector-conversions |
| allows it. |
| * c-typeck.c (build_array_ref): Only allow vector indexing if the |
| vectors satisfy gnu_vector_type_p. |
| (build_unary_op): Only allow unary operators to be applied to |
| vectors if they satisfy gnu_vector_type_p. |
| (digest_init): Only allow by-element initialization of vectors |
| if they satisfy gnu_vector_type_p. |
| (really_start_incremental_init): Likewise. |
| (push_init_level): Likewise. |
| (pop_init_level): Likewise. |
| (process_init_element): Likewise. |
| (build_binary_op): Only allow binary operators to be applied to |
| vectors if they satisfy gnu_vector_type_p. |
| |
| 2019-11-08 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-decl.c (grokparms): Convert () in a function definition to |
| (void) for C2x. |
| (store_parm_decls_oldstyle): Pedwarn for C2x. |
| (store_parm_decls): Update comment about () not generating a |
| prototype. |
| |
| 2019-11-07 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-parser.c (c_parser_attribute_arguments): New function. |
| Factored out of c_parser_gnu_attribute. |
| (c_parser_gnu_attribute): Use c_parser_attribute_arguments. |
| (c_parser_balanced_token_sequence, c_parser_std_attribute) |
| (c_parser_std_attribute_specifier): New functions. |
| (c_parser_transaction_attributes): Use |
| c_parser_std_attribute_specifier. |
| |
| 2019-11-07 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-parser.c (c_parser): Remove lex_untranslated_string. Add |
| lex_joined_string and translate_strings_p. |
| (c_lex_one_token): Pass 0 or C_LEX_STRING_NO_JOIN to |
| c_lex_with_flags. |
| (c_parser_string_literal): New function. |
| (c_parser_static_assert_declaration_no_semi): Use |
| c_parser_string_literal. Do not set lex_untranslated_string. |
| (c_parser_asm_string_literal): Use c_parser_string_literal. |
| (c_parser_simple_asm_expr): Do not set lex_untranslated_string. |
| (c_parser_gnu_attributes): Set and restore translate_strings_p |
| instead of lex_untranslated_string. |
| (c_parser_asm_statement): Do not set lex_untranslated_string. |
| (c_parser_asm_operands): Likewise. |
| (c_parser_has_attribute_expression): Set and restore |
| translate_strings_p instead of lex_untranslated_string. |
| (c_parser_postfix_expression): Use c_parser_string_literal. |
| (pragma_lex): Likewise. |
| (c_parser_pragma_pch_preprocess): Set lex_joined_string. |
| (c_parse_file): Set translate_strings_p. |
| * gimple-parser.c (c_parser_gimple_postfix_expression) |
| (c_parser_gimple_or_rtl_pass_list): Use c_parser_string_literal. |
| * c-parser.c (c_parser_string_literal): Declare function. |
| |
| 2019-11-02 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_finish_omp_declare_variant): Use |
| omp_get_context_selector instead of c_omp_get_context_selector. |
| |
| 2019-10-29 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * c-tree.h (c_simulate_enum_decl): Declare. |
| * c-decl.c (c_simulate_enum_decl): New function. |
| * c-objc-common.h (LANG_HOOKS_SIMULATE_ENUM_DECL): Define to the above. |
| |
| 2019-10-29 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * c-tree.h (c_simulate_builtin_function_decl): Declare. |
| * c-decl.c (c_simulate_builtin_function_decl): New function. |
| * c-objc-common.h (LANG_HOOKS_SIMULATE_BUILTIN_FUNCTION_DECL): Define |
| to the above. |
| |
| 2019-10-28 Martin Sebor <msebor@redhat.com> |
| |
| PR c/66970 |
| * c-decl.c (names_builtin_p): Define a new function. |
| |
| 2019-10-28 Richard Biener <rguenther@suse.de> |
| |
| PR c/92249 |
| * gimple-parser.c (c_parser_parse_gimple_body): Make |
| current_bb the entry block initially to easier recover |
| from errors. |
| (c_parser_gimple_compound_statement): Adjust. |
| |
| 2019-10-24 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_finish_omp_declare_variant): Use |
| omp_context_selector_matches instead of |
| c_omp_context_selector_matches. |
| * c-decl.c (c_decl_attributes): Add "omp declare target block" |
| attribute in between declare target and end declare target |
| pragmas. |
| |
| 2019-10-15 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-parser.c (c_parser_attribute_any_word): Rename to |
| c_parser_gnu_attribute_any_word. All callers changed. |
| (c_parser_attribute): Rename to c_parser_gnu_attribute. All |
| callers changed. |
| (c_parser_attributes): Rename to c_parser_gnu_attributes. All |
| callers changed. |
| (c_parser_declaration_or_fndef, c_parser_declspecs) |
| (c_parser_enum_specifier, c_parser_struct_or_union_specifier) |
| (c_parser_struct_declaration, c_parser_declarator) |
| (c_parser_gnu_attribute, c_parser_compound_statement) |
| (c_parser_label, c_parser_statement, c_parser_objc_method_decl) |
| (c_parser_transaction_attributes): Add "gnu-" prefix to names of |
| attribute-related syntax productions. |
| |
| 2019-10-14 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * c-objc-common.c (useful_aka_type_p): Replace with... |
| (get_aka_type): ...this new function. Given the original type, |
| decide which aka type to print (if any). Only look through typedefs |
| if user_facing_original_type_p. |
| (print_type): Update accordingly. |
| |
| 2019-10-14 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_all_clauses): Change bool NESTED_P argument |
| into int NESTED, if it is 2, diagnose missing commas in between |
| clauses. |
| (c_parser_omp_context_selector): Pass 2 as last argument to |
| c_parser_omp_all_clauses. |
| |
| 2019-10-12 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_context_selector): Improve error recovery. |
| For simd properties, put them directly into TREE_VALUE. |
| (c_finish_omp_declare_variant): Call c_omp_mark_declare_variant. |
| If c_omp_context_selector_matches is 0, don't add attribute, otherwise |
| add "omp declare variant base" attribute rather than |
| "omp declare variant". |
| |
| 2019-10-11 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-decl.c (declspecs_add_type): Use pedwarn_c11 for DFP types. |
| |
| 2019-10-10 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_all_clauses): Add NESTED_P argument, if |
| true, terminate processing on closing paren and don't skip to end of |
| pragma line. |
| (c_parser_omp_declare_simd): Handle also declare variant. |
| (omp_construct_selectors, omp_device_selectors, |
| omp_implementation_selectors, omp_user_selectors): New variables. |
| (c_parser_omp_context_selector, |
| c_parser_omp_context_selector_specification, |
| c_finish_omp_declare_variant): New functions. |
| (c_finish_omp_declare_simd): Handle both declare simd and |
| declare variant. |
| (c_parser_omp_declare): Handle declare variant. |
| |
| 2019-10-02 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-parser.c (c_parser_asm_statement): Handle CPP_SCOPE like two |
| CPP_COLON tokens. |
| |
| 2019-10-01 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * c-objc-common.c (useful_aka_type_p): New function. |
| (print_type): Use it to decide whether an aka type is worth printing. |
| |
| 2019-09-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/88203 |
| * c-parser.c (c_parser_predefined_identifier): New function. |
| (c_parser_postfix_expression): Use it. |
| (c_parser_omp_variable_list): Parse predefined identifiers. |
| * c-typeck.c (c_finish_omp_clauses): Allow predefined variables |
| in shared and firstprivate clauses, even when they are predetermined |
| shared. |
| |
| 2019-09-27 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * c-typeck.c (build_function_call_vec): Take the original function |
| decl as an optional final parameter. Pass all built-in calls to |
| check_builtin_function_arguments. |
| |
| 2019-09-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR c/91815 |
| * c-decl.c (pushdecl): In C detect duplicate declarations across scopes |
| of identifiers in the external scope only for variables and functions. |
| |
| 2019-09-04 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
| |
| PR c/78736 |
| * c-typeck.c (convert_for_assignment): Handle Wenum-conversion. |
| |
| 2019-08-23 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR pch/61250 |
| * c-parser.c (c_parse_file): Call c_common_no_more_pch () |
| after determining that the first token is not |
| PRAGMA_GCC_PCH_PREPROCESS. |
| |
| 2019-08-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * c-parser.c (c_parser_declaration_or_fndef): Set DECL_ARGUMENTS of a |
| FUNCTION_DECL to the right value in the presence of nested declarators. |
| |
| 2019-08-13 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR middle-end/91421 |
| * c-decl.c (merge_decls): Use copy_decl_built_in_function. |
| |
| 2019-08-13 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR middle-end/91421 |
| * c-decl.c (header_for_builtin_fn): Take a FUNCTION_DECL instead |
| of a built_in_function. |
| (diagnose_mismatched_decls, implicitly_declare): Update accordingly. |
| |
| 2019-08-10 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_name): Parse device_type. |
| (c_parser_omp_clause_device_type): New function. |
| (c_parser_omp_all_clauses): Handle PRAGMA_OMP_CLAUSE_DEVICE_TYPE. |
| (OMP_DECLARE_TARGET_CLAUSE_MASK): Add PRAGMA_OMP_CLAUSE_DEVICE_TYPE. |
| (c_parser_omp_declare_target): Handle device_type clauses. Remove |
| diagnostics for declare target with clauses nested in clause-less |
| declare target declaration-definition-seq. |
| * c-typeck.c (c_finish_omp_clauses): Handle OMP_CLAUSE_DEVICE_TYPE. |
| |
| 2019-08-09 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (check_no_duplicate_clause): Simplify using |
| omp_find_clause. |
| (c_parser_omp_clause_if): Fix up printing of target {enter,exit} data |
| directive name modifiers. |
| (c_parser_omp_clause_proc_bind): Check for duplicate proc_bind clause. |
| |
| PR c/91401 |
| * c-parser.c (c_parser_omp_clause_dist_schedule): Fix up typos in the |
| check_no_duplicate_clause call. Comment it out, instead emit a |
| warning for duplicate dist_schedule clauses. |
| |
| 2019-08-08 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * c-decl.c (finish_enum): Clear C_TYPE_BEING_DEFINED. |
| |
| 2019-08-08 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-typeck.c (c_finish_omp_clauses): For C_ORT_OMP |
| OMP_CLAUSE_USE_DEVICE_* clauses use oacc_reduction_head bitmap |
| instead of generic_head to track duplicates. |
| |
| 2019-08-07 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_name): Parse use_device_addr clause. |
| (c_parser_omp_clause_use_device_addr): New function. |
| (c_parser_omp_all_clauses): Handle PRAGMA_OMP_CLAUSE_USE_DEVICE_ADDR. |
| (OMP_TARGET_DATA_CLAUSE_MASK): Add PRAGMA_OMP_CLAUSE_USE_DEVICE_ADDR. |
| (c_parser_omp_target_data): Handle PRAGMA_OMP_CLAUSE_USE_DEVICE_ADDR |
| like PRAGMA_OMP_CLAUSE_USE_DEVICE_PTR, adjust diagnostics about no |
| map or use_device_* clauses. |
| * c-typeck.c (c_finish_omp_clauses): For OMP_CLAUSE_USE_DEVICE_PTR |
| in OpenMP, require pointer type rather than pointer or array type. |
| Handle OMP_CLAUSE_USE_DEVICE_ADDR. |
| |
| 2019-07-31 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/91192 |
| * c-parser.c (c_parser_sizeof_expression): Call set_c_expr_source_range |
| even if finish is UNKNOWN_LOCATION, just use start as finish in that |
| case. |
| |
| 2019-07-25 Martin Liska <mliska@suse.cz> |
| Dominik Infuhr <dominik.infuehr@theobroma-systems.com> |
| |
| PR c++/23383 |
| * c-decl.c (merge_decls): Merge OPERATOR_DELETE flag. |
| |
| 2019-07-25 Martin Liska <mliska@suse.cz> |
| |
| * c-decl.c (merge_decls): Use new macros |
| (e.g. DECL_SET_LAMBDA_FUNCTION and DECL_LAMBDA_FUNCTION_P). |
| |
| 2019-07-23 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/83518 |
| * gimple-parser.c (c_parser_parse_gimple_body): When we have |
| a CFG also rebuild cgraph edges. |
| |
| 2019-07-20 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_name): Handle bind clause. |
| (c_parser_omp_clause_bind): New function. |
| (c_parser_omp_all_clauses): Handle PRAGMA_OMP_CLAUSE_BIND. |
| (OMP_LOOP_CLAUSE_MASK): Define. |
| (c_parser_omp_loop): New function. |
| (c_parser_omp_parallel, c_parser_omp_teams): Handle parsing of |
| loop combined with parallel or teams. |
| (c_parser_omp_construct): Handle PRAGMA_OMP_LOOP. |
| * c-typeck.c (c_finish_omp_clauses): Handle OMP_CLAUSE_BIND. |
| |
| 2019-07-18 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR c/53633 |
| * c-decl.c (finish_function): Check targetm.warn_func_return |
| before issuing a -Wreturn-type warning. |
| |
| 2019-07-12 Alexandre Oliva <oliva@adacore.com> |
| |
| * gimple-parser.c (c_parser_gimple_try_stmt): New. |
| (c_parser_compound_statement): Call it. |
| |
| 2019-07-12 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_name): Handle order clause. |
| (c_parser_omp_clause_order): New function. |
| (c_parser_omp_all_clauses): Handle PRAGMA_OMP_CLAUSE_ORDER. |
| (OMP_SIMD_CLAUSE_MASK, OMP_FOR_CLAUSE_MASK): Add |
| PRAGMA_OMP_CLAUSE_ORDER. |
| * c-typeck.c (c_finish_omp_clauses): Handle OMP_CLAUSE_ORDER. |
| |
| 2019-07-10 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Support |
| _Literal (int *) &x for address literals. |
| |
| 2019-07-09 Martin Sebor <msebor@redhat.com> |
| |
| PR c++/61339 |
| * c-decl.c (xref_tag): Change class-key of PODs to struct and others |
| to class. |
| (field_decl_cmp): Same. |
| * c-parser.c (c_parser_struct_or_union_specifier): Same. |
| * c-tree.h: Same. |
| * gimple-parser.c (c_parser_gimple_compound_statement): Same. |
| |
| 2019-07-09 Martin Sebor <msebor@redhat.com> |
| |
| PR c++/61339 |
| * c-decl.c: Change class-key from class to struct and vice versa |
| to match convention and avoid -Wclass-is-pod and -Wstruct-no-pod. |
| * gimple-parser.c: Same. |
| |
| 2019-07-01 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Handle |
| _Literal (char *) &"foo" for address literals pointing to |
| STRING_CSTs. |
| |
| 2019-06-25 Jozef Lawrynowicz <jozef.l@mittosystems.com> |
| |
| * c-parser.c (c_parse_init): Create keyword for "__intN__" type. |
| * c-decl.c (declspecs_add_type): Don't pedwarn about "__intN" ISO |
| C incompatibility if alternate "__intN__" form is used. |
| |
| 2019-06-24 Martin Sebor <msebor@redhat.com> |
| |
| * c-typeck.c (build_binary_op): Hyphenate floating-point. |
| |
| 2019-06-10 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_pragma): Reject PRAGMA_OMP_SCAN. |
| (c_parser_omp_clause_reduction): Don't sorry_at on inscan reductions. |
| (c_parser_omp_scan_loop_body): New function. |
| (c_parser_omp_for_loop): Call c_parser_omp_scan_loop_body if there are |
| inscan reduction clauses. |
| * c-typeck.c (c_finish_omp_clauses): Reject mixing inscan with |
| non-inscan reductions on the same construct, or inscan reductions with |
| ordered or schedule clauses, or inscan array reductions. |
| |
| 2019-06-05 Martin Sebor <msebor@redhat.com> |
| |
| PR c/90737 |
| * c-typeck.c (c_finish_return): Only consider functions returning |
| pointers as candidates for -Wreturn-local-addr. |
| |
| 2019-06-05 Martin Sebor <msebor@redhat.com> |
| |
| * c-decl.c (start_decl): Adjust quoting and hyphenation |
| in diagnostics. |
| (finish_decl): Same. |
| (finish_enum): Same. |
| (start_function): Same. |
| (declspecs_add_type): Same. |
| * c-parser.c (warn_for_abs): Same. |
| * c-typeck.c (build_binary_op): Same. |
| |
| 2019-05-17 Thomas Schwinge <thomas@codesourcery.com> |
| |
| PR c/89433 |
| * c-parser.c (c_finish_oacc_routine): Rework checking if already |
| marked with an OpenACC 'routine' directive. |
| |
| PR c/89433 |
| * c-parser.c (c_parser_oacc_routine): Normalize order of clauses. |
| (c_finish_oacc_routine): Call oacc_verify_routine_clauses. |
| |
| PR c/89433 |
| * c-parser.c (c_finish_oacc_routine): Refer to OpenACC 'routine' |
| clauses from "omp declare target" attribute. |
| |
| 2019-05-16 Martin Sebor <msebor@redhat.com> |
| |
| * c-decl.c (start_decl): Quote keywords, operators, and |
| types in diagnostics. |
| (finish_decl): Same. |
| * c-parser.c (c_parser_asm_statement): Same. |
| (c_parser_conditional_expression): Same. |
| (c_parser_transaction_cancel): Same. |
| * c-typeck.c (c_common_type): Same. |
| (build_conditional_expr): Same. |
| (digest_init): Same. |
| (process_init_element): Same. |
| (build_binary_op): Same. |
| |
| 2019-05-17 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_statement): Handle __VEC_PERM. |
| (c_parser_gimple_unary_expression): Likewise. |
| (c_parser_gimple_parentized_ternary_expression): New function. |
| |
| 2019-05-16 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_statement): Handle __BIT_INSERT. |
| (c_parser_gimple_unary_expression): Likewise. |
| |
| 2019-05-15 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Handle |
| __BIT_FIELD_REF. |
| |
| 2019-05-14 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_statement): Remove |
| questionable auto-promotion to VIEW_CONVERT_EXPR. |
| (c_parser_gimple_typespec): Split out from __MEM parsing. |
| (c_parser_gimple_postfix_expression): Handle __VIEW_CONVERT. |
| * tree-pretty-print.c (dump_generic_node): Dump VIEW_CONVERT_EXPR |
| as __VIEW_CONVERT with -gimple. |
| |
| 2019-05-09 Martin Liska <mliska@suse.cz> |
| |
| * gimple-parser.c (c_parser_gimple_statement): Support __MIN and |
| __MAX. |
| (c_parser_gimple_unary_expression): Parse also binary expression |
| __MIN and __MAX. |
| (c_parser_gimple_parentized_binary_expression): New function. |
| |
| 2019-05-09 Martin Liska <mliska@suse.cz> |
| |
| * gimple-parser.c (struct gimple_parser): Add probability. |
| for gimple_parser_edge. |
| (gimple_parser::push_edge): Add new argument probability. |
| (c_parser_gimple_parse_bb_spec): Parse also probability |
| if present. |
| (c_parser_parse_gimple_body): Set edge probability. |
| (c_parser_gimple_compound_statement): Consume token |
| before calling c_parser_gimple_goto_stmt. |
| Parse BB counts. |
| (c_parser_gimple_statement): Pass new argument. |
| (c_parser_gimple_goto_stmt): Likewise. |
| (c_parser_gimple_if_stmt): Likewise. |
| (c_parser_gimple_or_rtl_pass_list): Parse hot_bb_threshold. |
| * c-parser.c (c_parser_declaration_or_fndef): Pass |
| hot_bb_threshold argument. |
| * c-tree.h (struct c_declspecs): Add hot_bb_threshold |
| field. |
| (c_parser_gimple_parse_bb_spec_edge_probability): New. |
| |
| 2019-04-26 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/90197 |
| * c-tree.h (c_finish_loop): Add 2 further location_t arguments. |
| * c-parser.c (c_parser_while_statement): Adjust c_finish_loop caller. |
| (c_parser_do_statement): Likewise. |
| (c_parser_for_statement): Likewise. Formatting fixes. |
| * c-typeck.c (c_finish_loop): Add COND_LOCUS and INCR_LOCUS arguments, |
| emit DEBUG_BEGIN_STMTs if needed. |
| |
| 2019-04-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/89888 |
| * c-typeck.c (struct c_switch): Remove outside_range_p member. |
| (c_start_case): Don't clear it. |
| (do_case): Adjust c_add_case_label caller. |
| (c_finish_case): Adjust c_do_switch_warnings caller. |
| |
| PR c++/90108 |
| * c-decl.c (merge_decls): If remove is main variant and |
| DECL_ORIGINAL_TYPE is some other type, remove a DECL_ORIGINAL_TYPE |
| variant that has newdecl as TYPE_NAME if any. |
| |
| 2019-04-12 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/89933 |
| * c-decl.c (merge_decls): When newdecl's type is its main variant, |
| don't try to remove it from the variant list, but instead assert |
| it has no variants. |
| |
| 2019-04-01 Richard Biener <rguenther@suse.de> |
| |
| PR c/71598 |
| * c-tree.h (c_get_alias_set): Declare. |
| * c-objc-common.h (LANG_HOOKS_GET_ALIAS_SET): Use c_get_alias_set. |
| * c-objc-common.c (c_get_alias_set): Treat enumeral types |
| as the underlying integer type. |
| |
| 2019-03-19 Martin Sebor <msebor@redhat.com> |
| |
| PR tree-optimization/89688 |
| * c-decl.c (finish_decl): Call braced_lists_to_string for more |
| kinds of initializers. |
| |
| 2019-03-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/89734 |
| * c-decl.c (grokdeclarator): Call c_build_qualified_type on function |
| return type even if quals_used is 0. Formatting fixes. |
| |
| 2019-03-14 Richard Biener <rguenther@suse.de> |
| |
| * c-tree.h (enum c_declspec_il): New. |
| (struct c_declspecs): Merge gimple_p and rtl_p into declspec_il |
| enum bitfield. |
| * c-parser.c (c_parser_declaration_or_fndef): Adjust accordingly. |
| Pass start pass and declspec_il to c_parser_parse_gimple_body. |
| (c_parser_declspecs): Adjust. |
| * gimple-parser.c: Include cfg.h, cfghooks.h, cfganal.h, tree-cfg.h, |
| gimple-iterator.h, cfgloop.h, tree-phinodes.h, tree-into-ssa.h |
| and bitmap.h. |
| (struct gimple_parser): New. |
| (gimple_parser::push_edge): New method. |
| (c_parser_gimple_parse_bb_spec): New helper. |
| (c_parser_parse_gimple_body): Get start pass and IL specification. |
| Initialize SSA and CFG. |
| (c_parser_gimple_compound_statement): Handle CFG and SSA build. |
| Build a gimple_parser parsing state and pass it along. |
| (c_parser_gimple_statement): Change intermittend __PHI internal |
| function argument for the edge. |
| (c_parser_gimple_or_rtl_pass_list): Handle ssa, cfg flags. |
| (c_parser_gimple_goto_stmt): Record edges to build. |
| (c_parser_gimple_if_stmt): Likewise. |
| * gimple-parser.h (c_parser_parse_gimple_body): Adjust. |
| (c_parser_gimple_or_rtl_pass_list): Likewise. |
| |
| 2019-03-11 Martin Liska <mliska@suse.cz> |
| |
| * c-decl.c (check_for_loop_decls): Wrap an option name |
| in a string format message and fix GNU coding style. |
| * c-parser.c (c_parser_declspecs): Likewise. |
| |
| 2019-03-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/89550 |
| * c-decl.c (finish_function): Only set TREE_NO_WARNING if warning_at |
| returned true. |
| (c_write_global_declarations_1): Only set TREE_NO_WARNING if pedwarn |
| or warning returned true. |
| |
| 2019-02-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/89525 |
| * c-typeck.c (convert_arguments): Call inform_declaration only if |
| the previous warning_at call returned true. |
| |
| 2019-02-22 Thomas Schwinge <thomas@codesourcery.com> |
| |
| * c-parser.c (c_parser_oacc_shape_clause): Add loc formal |
| parameter. Adjust all users. |
| (c_parser_oacc_simple_clause): Replace parser with loc formal |
| parameter. Adjust all users. |
| |
| 2019-02-19 Chung-Lin Tang <cltang@codesourcery.com> |
| |
| PR c/87924 |
| * c-parser.c (c_parser_oacc_clause_wait): Add representation of wait |
| clause without argument as 'wait (GOMP_ASYNC_NOVAL)', adjust comments. |
| |
| 2019-02-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/89340 |
| * c-decl.c (start_function): Clear TREE_PUBLIC on nested functions |
| before c_decl_attributes rather than after it. |
| |
| 2019-02-06 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/89211 |
| * c-parser.c (c_parser_declaration_or_fndef): Don't update |
| DECL_ARGUMENTS of d if it has been defined already. Use a single if |
| instead of 3 nested ifs. |
| |
| 2019-02-06 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/88584 |
| * c-decl.c (finish_decl): Do not complete array types for arrays |
| with external linkage not at file scope. |
| |
| 2019-02-05 Richard Biener <rguenther@suse.de> |
| |
| PR c/88606 |
| * c-decl.c (finish_struct): Reset TYPE_TRANSPARENT_AGGR on |
| all type variants when not supported. |
| |
| 2019-01-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/89061 |
| * c-tree.h (C_DECL_COMPOUND_LITERAL_P): Define. |
| * c-decl.c (decl_jump_unsafe): Return false for |
| C_DECL_COMPOUND_LITERAL_P decls. |
| (build_compound_literal): Set C_DECL_COMPOUND_LITERAL_P. |
| |
| 2019-01-29 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/89045 |
| * c-decl.c (build_compound_literal): Don't pushdecl if in parameter |
| scope. |
| |
| PR c/86125 |
| * c-decl.c (last_fileptr_type): Remove. |
| (last_structptr_types): New variable. |
| (match_builtin_function_types): Compare TYPE_MAIN_VARIANT of |
| {old,new}rettype instead of the types themselves. Assert |
| last_structptr_types array has the same number of elements |
| as builtin_structptr_types array. Use TYPE_MAIN_VARIANT for |
| argument oldtype and newtype. Instead of handling |
| just fileptr_type_node specially, handle all builtin_structptr_types |
| pointer nodes. Formatting fix. |
| |
| 2019-01-24 Martin Sebor <msebor@redhat.com> |
| |
| PR c/86125 |
| PR c/88886 |
| PR middle-end/86308 |
| * c-decl.c (match_builtin_function_types): Add arguments. |
| (diagnose_mismatched_decls): Diagnose mismatched declarations |
| of built-ins more strictly. |
| |
| 2019-01-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/88976 |
| * c-typeck.c (c_finish_omp_cancel): Diagnose more than one if |
| on #pragma omp cancel with different modifiers. |
| |
| 2019-01-18 H.J. Lu <hongjiu.lu@intel.com> |
| |
| PR c/51628 |
| PR c/88664 |
| * c-typeck.c (convert_for_assignment): Upate the |
| warn_for_address_or_pointer_of_packed_member call. |
| |
| 2019-01-16 Tom Honermann <tom@honermann.net> |
| Jason Merrill <jason@redhat.com> |
| |
| * c-typeck.c (digest_init): Revised the error message produced for |
| ill-formed cases of array initialization with a string literal. |
| (error_init): Make variadic. |
| |
| 2019-01-12 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-typeck.c (convert_for_assignment): Fix a comment typo. |
| |
| 2019-01-07 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/88701 |
| * c-decl.c (build_compound_literal): If not TREE_STATIC, only pushdecl |
| if current_function_decl is non-NULL. |
| |
| 2019-01-07 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/88720 |
| PR c/88726 |
| * c-decl.c (pop_scope): Use TREE_PUBLIC and b->nested to determine |
| whether a function is nested, not DECL_EXTERNAL. Diagnose inline |
| functions declared but never defined only for external scope, not |
| for other scopes. |
| |
| 2019-01-07 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/85052 |
| * c-parser.c (c_parser_postfix_expression): Parse |
| __builtin_convertvector. |
| |
| 2019-01-01 Jakub Jelinek <jakub@redhat.com> |
| |
| Update copyright years. |
| |
| 2018-12-20 H.J. Lu <hongjiu.lu@intel.com> |
| |
| PR c/51628 |
| * c-typeck.c (convert_for_assignment): Call |
| warn_for_address_or_pointer_of_packed_member. |
| |
| 2018-12-19 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| * c-parser.c (c_parser_asm_statement) <RID_CONST, RID_RESTRICT>: Give |
| a more specific error message (instead of just falling through). |
| |
| 2018-12-19 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| * c-parser.c (c_parser_asm_statement): Keep track of the location each |
| asm qualifier is first seen; use that to give nicer "duplicate asm |
| qualifier" messages. Delete 'quals" variable, instead pass the |
| "is_volatile_ flag to build_asm_stmt directly. |
| * c-tree.h (build_asm_stmt): Make the first arg bool instead of tree. |
| * c-typeck.c (build_asm_stmt): Ditto; adjust. |
| |
| 2018-12-19 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| * c-parser.c (c_parser_asm_statement): Rewrite the loop to work without |
| "done" boolean variable. |
| |
| 2018-12-19 David Malcolm <dmalcolm@redhat.com> |
| |
| PR c++/87504 |
| * c-typeck.c (class maybe_range_label_for_tree_type_mismatch): |
| Move from here to gcc-rich-location.h and gcc-rich-location.c. |
| (build_binary_op): Use struct op_location_t and |
| class binary_op_rich_location. |
| |
| 2018-12-11 Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/88426 |
| * c-convert.c (convert): Call c_fully_fold before calling |
| ubsan_instrument_float_cast. |
| |
| 2018-12-08 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| * c-parser (c_parser_asm_statement) [RID_INLINE]: Delete stray line |
| setting "quals". |
| |
| 2018-12-06 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| * c-parser.c (c_parser_asm_statement): Detect the inline keyword |
| after asm. Pass a flag for it to build_asm_expr. |
| * c-tree.h (build_asm_expr): Update declaration. |
| * c-typeck.c (build_asm_stmt): Add is_inline parameter. Use it to |
| set ASM_INLINE_P. |
| |
| 2018-12-06 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| PR inline-asm/55681 |
| * c-parser.c (c_parser_asm_statement): Update grammar. Allow any |
| combination of volatile and goto, in any order, without repetitions. |
| |
| 2018-12-04 James Norris <jnorris@codesourcery.com> |
| Cesar Philippidis <cesar@codesourcery.com> |
| Julian Brown <julian@codesourcery.com> |
| |
| * c-parser.c (c_parser_oacc_wait_list): Remove dead diagnostic |
| code. |
| |
| 2018-11-30 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Parse |
| _Literal (type) { ... } as empty aggregate or vector constructor. |
| |
| 2018-11-29 Martin Sebor <msebor@redhat.com> |
| |
| PR c/88091 |
| * c-typeck.c (convert_argument): Add a parameter. Adjust indentation. |
| (convert_arguments): Add comments. Pass additional argument to |
| the function above. |
| |
| 2018-11-29 Martin Sebor <msebor@redhat.com> |
| |
| PR c/88172 |
| PR testsuite/88208 |
| * c-decl.c (declspec_add_alignas): Adjust call to check_user_alignment. |
| |
| 2018-11-23 Martin Sebor <msebor@redhat.com> |
| |
| PR testsuite/88098 |
| * c-typeck.c (convert_arguments): Call builtin_decl_explicit instead. |
| (maybe_warn_builtin_no_proto_arg): Handle short enum to int promotion. |
| |
| 2018-11-20 Martin Sebor <msebor@redhat.com> |
| |
| * c-parser.c (c_parser_has_attribute_expression): New function. |
| (c_parser_attribute): New function. |
| (c_parser_attributes): Move code into c_parser_attribute. |
| (c_parser_unary_expression): Handle RID_HAS_ATTRIBUTE_EXPRESSION. |
| |
| 2018-11-15 Martin Sebor <msebor@redhat.com> |
| |
| PR c/83656 |
| * c-decl.c (header_for_builtin_fn): Declare. |
| (diagnose_mismatched_decls): Diagnose declarations of built-in |
| functions without a prototype. |
| * c-typeck.c (maybe_warn_builtin_no_proto_arg): New function. |
| (convert_argument): Same. |
| (convert_arguments): Factor code out into convert_argument. |
| Detect mismatches between built-in formal arguments in calls |
| to built-in without prototype. |
| (build_conditional_expr): Same. |
| (type_or_builtin_type): New function. |
| (convert_for_assignment): Add argument. Conditionally issue |
| warnings instead of errors for mismatches. |
| |
| 2018-11-13 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-decl.c: Replace "source_location" with "location_t". |
| * c-tree.h: Likewise. |
| * c-typeck.c: Likewise. |
| * gimple-parser.c: Likewise. |
| |
| 2018-11-09 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_clause_final): Use |
| c_parser_expr_no_commas, convert_lvalue_to_rvalue, |
| c_objc_common_truthvalue_conversion, c_fully_fold and parentheses |
| parsing instead of c_parser_paren_condition. |
| (c_parser_omp_clause_if): Use c_parser_expr_no_commas, |
| convert_lvalue_to_rvalue, c_objc_common_truthvalue_conversion and |
| c_fully_fold instead of c_parser_condition. |
| (c_parser_omp_clause_num_threads, c_parser_omp_clause_num_tasks, |
| c_parser_omp_clause_grainsize, c_parser_omp_clause_priority, |
| c_parser_omp_clause_hint, c_parser_omp_clause_num_teams, |
| c_parser_omp_clause_thread_limit, c_parser_omp_clause_linear): Use |
| c_parser_expr_no_commas instead of c_parser_expression. |
| |
| * c-parser.c (c_parser_omp_clause_reduction): Call sorry_at on |
| reduction clause with inscan modifier. |
| |
| * c-parser.c (c_parser_omp_requires): Call sorry_at on requires |
| clauses other than atomic_default_mem_order. |
| |
| 2018-11-08 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c: Include memmode.h. |
| (c_parser_omp_depobj, c_parser_omp_requires): New functions. |
| (c_parser_pragma): Handle PRAGMA_OMP_DEPOBJ and PRAGMA_OMP_REQUIRES. |
| (c_parser_omp_clause_name): Handle nontemporal, in_reduction and |
| task_reduction clauses. |
| (c_parser_omp_variable_list): Handle OMP_CLAUSE_{IN,TASK}_REDUCTION. |
| For OMP_CLAUSE_DEPEND, parse clause operands as either an array |
| section, or lvalue assignment expression. |
| (c_parser_omp_clause_if): Handle cancel and simd modifiers. |
| (c_parser_omp_clause_lastprivate): Parse optional |
| conditional: modifier. |
| (c_parser_omp_clause_hint): Require constant integer expression rather |
| than just integer expression. |
| (c_parser_omp_clause_defaultmap): Parse new kinds of defaultmap |
| clause. |
| (c_parser_omp_clause_reduction): Add IS_OMP and KIND arguments. |
| Parse reduction modifiers. Pass KIND to c_parser_omp_variable_list. |
| (c_parser_omp_clause_nontemporal, c_parser_omp_iterators): New |
| functions. |
| (c_parser_omp_clause_depend): Parse iterator modifier and handle |
| iterators. Parse mutexinoutset and depobj kinds. |
| (c_parser_oacc_all_clauses): Adjust c_parser_omp_clause_reduction |
| callers. |
| (c_parser_omp_all_clauses): Likewise. Handle |
| PRAGMA_OMP_CLAUSE_NONTEMPORAL and |
| PRAGMA_OMP_CLAUSE_{IN,TASK}_REDUCTION. |
| (c_parser_omp_atomic): Parse hint and memory order clauses. Handle |
| default memory order from requires directive if any. Adjust |
| c_finish_omp_atomic caller. |
| (c_parser_omp_critical): Allow comma in between (name) and hint clause. |
| (c_parser_omp_flush): Parse flush with memory-order-clause. |
| (c_parser_omp_for_loop): Allow NE_EXPR even in |
| OpenMP loops, adjust c_finish_omp_for caller. |
| (OMP_SIMD_CLAUSE_MASK): Add if and nontemporal clauses. |
| (c_parser_omp_master): Add p_name, mask and cclauses arguments. |
| Allow to be called while parsing combined parallel master. |
| Parse combined master taskloop{, simd}. |
| (c_parser_omp_parallel): Parse combined |
| parallel master{, taskloop{, simd}} constructs. |
| (OMP_TASK_CLAUSE_MASK): Add in_reduction clause. |
| (OMP_TASKGROUP_CLAUSE_MASK): Define. |
| (c_parser_omp_taskgroup): Add LOC argument. Parse taskgroup clauses. |
| (OMP_TASKWAIT_CLAUSE_MASK): Define. |
| (c_parser_omp_taskwait): Handle taskwait with depend clauses. |
| (c_parser_omp_teams): Force a BIND_EXPR with BLOCK |
| around teams body. Use SET_EXPR_LOCATION. |
| (c_parser_omp_target_data): Allow target data |
| with only use_device_ptr clauses. |
| (c_parser_omp_target): Use SET_EXPR_LOCATION. Set |
| OMP_REQUIRES_TARGET_USED bit in omp_requires_mask. |
| (c_parser_omp_requires): New function. |
| (c_finish_taskloop_clauses): New function. |
| (OMP_TASKLOOP_CLAUSE_MASK): Add reduction and in_reduction clauses. |
| (c_parser_omp_taskloop): Use c_finish_taskloop_clauses. Add forward |
| declaration. Disallow in_reduction clause when combined with parallel |
| master. |
| (c_parser_omp_construct): Adjust c_parser_omp_master and |
| c_parser_omp_taskgroup callers. |
| * c-typeck.c (c_finish_omp_cancel): Diagnose if clause with modifier |
| other than cancel. |
| (handle_omp_array_sections_1): Handle OMP_CLAUSE_{IN,TASK}_REDUCTION |
| like OMP_CLAUSE_REDUCTION. |
| (handle_omp_array_sections): Likewise. Call save_expr on array |
| reductions before calling build_index_type. Handle depend clauses |
| with iterators. |
| (struct c_find_omp_var_s): New type. |
| (c_find_omp_var_r, c_omp_finish_iterators): New functions. |
| (c_finish_omp_clauses): Don't diagnose nonmonotonic clause |
| with static, runtime or auto schedule kinds. Call save_expr for whole |
| array reduction sizes. Diagnose reductions with zero sized elements |
| or variable length structures. Diagnose nogroup clause used with |
| reduction clause(s). Handle depend clause with |
| OMP_CLAUSE_DEPEND_DEPOBJ. Diagnose bit-fields. Require |
| omp_depend_t type for OMP_CLAUSE_DEPEND_DEPOBJ kinds and |
| some different type for other kinds. Use build_unary_op with |
| ADDR_EXPR and build_indirect_ref instead of c_mark_addressable. |
| Handle depend clauses with iterators. Remove no longer needed special |
| case that predetermined const qualified vars may be specified in |
| firstprivate clause. Complain if const qualified vars are mentioned |
| in data-sharing clauses other than firstprivate or shared. Use |
| error_at with OMP_CLAUSE_LOCATION (c) as first argument instead of |
| error. Formatting fix. Handle OMP_CLAUSE_NONTEMPORAL and |
| OMP_CLAUSE_{IN,TASK}_REDUCTION. Allow any lvalue as |
| OMP_CLAUSE_DEPEND operand (besides array section), adjust diagnostics. |
| |
| 2018-10-29 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-decl.c (implicit_decl_warning): Update "is there a suggestion" |
| logic for change to name_hint::operator bool. |
| (undeclared_variable): Likewise. |
| * c-parser.c (c_parser_declaration_or_fndef): Likewise. |
| (c_parser_parameter_declaration): Likewise. |
| |
| 2018-10-17 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-errors.c (pedwarn_c11): New function. |
| * c-parser.c (disable_extension_diagnostics): Save |
| warn_c11_c2x_compat and set it to 0. |
| (restore_extension_diagnostics): Restore warn_c11_c2x_compat. |
| (c_parser_static_assert_declaration_no_semi): Handle |
| _Static_assert without string constant. |
| * c-tree.h (pedwarn_c11): New prototype. |
| |
| 2018-10-17 David Malcolm <dmalcolm@redhat.com> |
| |
| * Make-lang.in (selftest-c): New. |
| (C_SELFTEST_FLAGS, C_SELFTEST_DEPS, s-selftest-c, selftest-c-gdb) |
| (selftest-gdb, selftest-c-valgrind, selftest-valgrind): Move here |
| from gcc/Makefile.in. |
| |
| 2018-10-02 Richard Biener <rguenther@suse.de> |
| |
| * c-decl.c (warn_if_shadowing): Do not test DECL_FROM_INLINE. |
| |
| 2018-09-26 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/87390 |
| * c-typeck.c (build_binary_op): Use excess precision for |
| comparisons of integers and floating-point for C11 and later. |
| |
| 2018-09-26 Martin Jambor <mjambor@suse.cz> |
| |
| PR c/87347 |
| * c-parser.c (warn_for_abs): Bail out if TYPE_ARG_TYPES is NULL. Fix |
| comment. |
| |
| 2018-09-17 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-objc-common.c (range_label_for_type_mismatch::get_text): |
| Update for new param. |
| * c-typeck.c (maybe_range_label_for_tree_type_mismatch::get_text): |
| Likewise. |
| |
| 2018-09-17 Martin Jambor <mjambor@suse.cz> |
| |
| PR c/63886 |
| * c-parser.c: (warn_for_abs): New function. |
| (c_parser_postfix_expression_after_primary): Call it. |
| |
| 2018-09-13 Bernd Edlinger <bernd.edlinger@hotmail.de> |
| |
| * c-typeck.c (digest_init): Shorten overlength strings. |
| |
| 2018-09-06 Bernd Edlinger <bernd.edlinger@hotmail.de> |
| |
| * c-decl.c (finish_decl): Call complete_flexible_array_elts. |
| |
| 2018-09-02 Bernd Edlinger <bernd.edlinger@hotmail.de> |
| |
| * c-decl.c (finish_decl): Call braced_list_to_string here ... |
| * c-parser.c (c_parser_declaration_or_fndef): ... instead of here. |
| |
| 2018-08-30 Alexander Monakov <amonakov@ispras.ru> |
| |
| * gimple-parser.c (c_parser_gimple_binary_expression): Accept infix |
| "__MULT_HIGHPART" for MULT_HIGHPART_EXPR. |
| |
| 2018-08-27 David Malcolm <dmalcolm@redhat.com> |
| |
| PR 87091 |
| * c-decl.c (implicitly_declare): Update call to |
| maybe_add_include_fixit to suggest overriding the location, as it |
| is for a note. |
| * c-objc-common.c (c_tree_printer): Update for conversion of |
| show_caret_p to a tri-state. |
| |
| 2018-08-27 Martin Liska <mliska@suse.cz> |
| |
| * c-decl.c (locate_old_decl): Use new function |
| fndecl_built_in_p and remove check for FUNCTION_DECL if |
| possible. |
| (diagnose_mismatched_decls): Likewise. |
| (merge_decls): Likewise. |
| (warn_if_shadowing): Likewise. |
| (pushdecl): Likewise. |
| (implicitly_declare): Likewise. |
| * c-parser.c (c_parser_postfix_expression_after_primary): Likewise. |
| * c-tree.h (C_DECL_ISNT_PROTOTYPE): Likewise. |
| * c-typeck.c (build_function_call_vec): Likewise. |
| (convert_arguments): Likewise. |
| |
| 2018-08-20 David Malcolm <dmalcolm@redhat.com> |
| |
| PR other/84889 |
| * c-decl.c (pushtag): Add auto_diagnostic_group instance. |
| (diagnose_mismatched_decls): Likewise, in various places. |
| (warn_if_shadowing): Likewise. |
| (implicit_decl_warning): Likewise. |
| (implicitly_declare): Likewise. |
| (undeclared_variable): Likewise. |
| (declare_label): Likewise. |
| (grokdeclarator): Likewise. |
| (start_function): Likewise. |
| * c-parser.c (c_parser_declaration_or_fndef): Likewise. |
| (c_parser_parameter_declaration): Likewise. |
| (c_parser_binary_expression): Likewise. |
| * c-typeck.c (c_expr_sizeof_expr): Likewise. |
| (parser_build_binary_op): Likewise. |
| (build_unary_op): Likewise. |
| (error_init): Likewise. |
| (pedwarn_init): Likewise. |
| (warning_init): Likewise. |
| (convert_for_assignment): Likewise. |
| |
| 2018-08-15 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-objc-common.c: Include "gcc-rich-location.h". |
| (c_tree_printer): Move implemenation of '%T' to... |
| (print_type): ...this new function. |
| (range_label_for_type_mismatch::get_text): New function. |
| * c-typeck.c (convert_for_assignment): Add type labels to the rhs |
| range for the various ic_argpass cases. |
| (class maybe_range_label_for_tree_type_mismatch): New class. |
| (build_binary_op): Use it when calling binary_op_error. |
| |
| 2018-08-15 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
| |
| * c-decl.c (start_decl): Do not warn if variables is named as main |
| and is a local variable. |
| |
| 2018-08-15 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR c/19315 |
| * c-decl.c (finish_decl): Don't add the 'extern' storage class to |
| objects of unknown size. |
| |
| 2018-08-13 Martin Sebor <msebor@redhat.com> |
| |
| PR tree-optimization/71625 |
| * c-parser.c (c_parser_declaration_or_fndef): Call |
| braced_list_to_string. |
| |
| 2018-08-03 Bogdan Harjoc <harjoc@gmail.com> |
| |
| PR c/86690 |
| * c-typeck.c (lookup_field): Do not use TYPE_LANG_SPECIFIC after |
| errors. |
| |
| 2018-08-01 Martin Sebor <msebor@redhat.com> |
| |
| PR tree-optimization/86650 |
| * c-objc-common.c (c_tree_printer): Move usage of EXPR_LOCATION (t) |
| and TREE_BLOCK (t) from within percent_K_format to this callsite. |
| |
| 2018-08-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/85704 |
| * c-typeck.c (init_field_decl_cmp): New function. |
| (output_pending_init_elements): Use it for field comparisons |
| instead of pure bit_position comparisons. |
| |
| 2018-07-12 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-decl.c (c_decl_attributes): Don't diagnose vars without mappable |
| type here, instead add "omp declare target implicit" attribute. |
| (finish_decl): Diagnose vars without mappable type here. |
| |
| 2018-06-20 Chung-Lin Tang <cltang@codesourcery.com> |
| Thomas Schwinge <thomas@codesourcery.com> |
| Cesar Philippidis <cesar@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_name): Add support for finalize |
| and if_present. Make present_or_{copy,copyin,copyout,create} aliases |
| to their non-present_or_* counterparts. Make 'self' an alias to |
| PRAGMA_OACC_CLAUSE_HOST. |
| (c_parser_oacc_data_clause): Update GOMP mappings for |
| PRAGMA_OACC_CLAUSE_{COPY,COPYIN,COPYOUT,CREATE,DELETE}. Remove |
| PRAGMA_OACC_CLAUSE_{SELF,PRESENT_OR_*}. |
| (c_parser_oacc_all_clauses): Handle finalize and if_present clauses. |
| Remove support for present_or_* clauses. |
| (OACC_KERNELS_CLAUSE_MASK): Remove PRESENT_OR_* clauses. |
| (OACC_PARALLEL_CLAUSE_MASK): Likewise. |
| (OACC_DECLARE_CLAUSE_MASK): Likewise. |
| (OACC_DATA_CLAUSE_MASK): Likewise. |
| (OACC_ENTER_DATA_CLAUSE_MASK): Remove PRESENT_OR_* clauses. |
| (OACC_EXIT_DATA_CLAUSE_MASK): Add FINALIZE clause. |
| (OACC_UPDATE_CLAUSE_MASK): Remove SELF, add IF_PRESENT. |
| (c_parser_oacc_declare): Remove PRESENT_OR_* clauses. |
| * c-typeck.c (c_finish_omp_clauses): Handle IF_PRESENT and FINALIZE. |
| |
| 2018-06-16 Kugan Vivekanandarajah <kuganv@linaro.org> |
| |
| * c-typeck.c (build_unary_op): Handle ABSU_EXPR; |
| * gimple-parser.c (c_parser_gimple_statement): Likewise. |
| (c_parser_gimple_unary_expression): Likewise. |
| |
| 2018-06-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/86093 |
| * c-typeck.c (pointer_diff): Cast both pointers to unqualified types |
| before doing POINTER_DIFF_EXPR. |
| |
| 2018-06-07 Marek Polacek <polacek@redhat.com> |
| |
| PR c/85318 |
| * c-decl.c (check_for_loop_decls): Add -Wc90-c99-compat warning about |
| for loop initial declarations. |
| |
| 2018-05-30 David Pagan <dave.pagan@oracle.com> |
| |
| PR c/55976 |
| * c-decl.c (grokdeclarator): Update check for return type warnings. |
| (start_function): Likewise. |
| (finish_function): Likewise. |
| * c-typeck.c (c_finish_return): Update check for return type warnings. |
| Pass OPT_Wreturn_type to pedwarn when appropriate. |
| |
| 2018-05-18 Richard Sandiford <richard.sandiford@linaro.org> |
| |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Remove |
| __FMA_EXPR handlng. |
| |
| 2018-05-17 Richard Sandiford <richard.sandiford@linaro.org> |
| |
| * gimple-parser.c: Include internal-fn.h. |
| (c_parser_gimple_statement): Treat a leading CPP_DOT as a call. |
| (c_parser_gimple_call_internal): New function. |
| (c_parser_gimple_postfix_expression): Use it to handle CPP_DOT. |
| Fix typos in comment. |
| |
| 2018-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/85662 |
| * c-fold.c (c_fully_fold_internal): Use fold_offsetof rather than |
| fold_offsetof_1, pass TREE_TYPE (expr) as TYPE to it and drop the |
| fold_convert_loc. |
| * c-typeck.c (build_unary_op): Use fold_offsetof rather than |
| fold_offsetof_1, pass argtype as TYPE to it and drop the |
| fold_convert_loc. |
| |
| 2018-05-02 David Pagan <dave.pagan@oracle.com> |
| |
| PR c/30552 |
| * c-decl.c (old_style_parameter_scope): New function. |
| * c-parser.c (c_parser_postfix_expression): Check for statement |
| expressions in old-style function parameter list declarations. |
| * c-parser.h (old_style_parameter_scope): New extern declaration. |
| |
| 2018-04-25 Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/84307 |
| * c-decl.c (build_compound_literal): Call pushdecl (decl) even when |
| it is not TREE_STATIC. |
| * c-typeck.c (c_mark_addressable) <case COMPOUND_LITERAL_EXPR>: Mark |
| not just the COMPOUND_LITERAL_EXPR node itself addressable, but also |
| its COMPOUND_LITERAL_EXPR_DECL. |
| |
| 2018-03-21 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-parser.c (c_parser_postfix_expression): For __builtin_tgmath |
| where all functions return the same _FloatN or _FloatNx type, |
| treat integer types as _Float64 instead of double. |
| |
| 2018-03-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/84999 |
| * c-typeck.c (build_binary_op): If c_common_type_for_size fails when |
| building vector comparison, diagnose it and return error_mark_node. |
| |
| 2018-03-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/84853 |
| * c-typeck.c (build_binary_op) <case RSHIFT_EXPR, case LSHIFT_EXPR>: |
| If code1 is INTEGER_TYPE, only allow code0 VECTOR_TYPE if it has |
| INTEGER_TYPE element type. |
| |
| 2018-03-13 David Pagan <dave.pagan@oracle.com> |
| |
| PR c/46921 |
| * c-typeck.c (output_init_element): Ensure field initializer |
| expression is always evaluated if there are side effects. |
| |
| 2018-03-06 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/84721 |
| * c-parser.c (add_debug_begin_stmt): Don't add DEBUG_BEGIN_STMT if |
| !building_stmt_list_p (). |
| |
| 2018-02-13 Richard Sandiford <richard.sandiford@linaro.org> |
| |
| PR c/84305 |
| * c-decl.c (grokdeclarator): Create an anonymous TYPE_DECL |
| in PARM and TYPENAME contexts too, but attach it to a BIND_EXPR |
| and include the BIND_EXPR in the list of things that need to be |
| pre-evaluated. |
| |
| 2018-02-09 Nathan Sidwell <nathan@acm.org> |
| |
| PR c/84293 |
| * c-typeck.c (build_indirect_ref, build_c_cast): Pass expr location |
| to strict_aliasing_warning. |
| |
| 2018-02-02 Paolo Carlini <paolo.carlini@oracle.com> |
| |
| * c-typeck.c (really_start_incremental_init, push_init_level, |
| set_nonincremental_init, output_init_element, process_init_element): |
| Use DECL_UNNAMED_BIT_FIELD. |
| |
| 2018-01-31 Marek Polacek <polacek@redhat.com> |
| |
| PR c/81779 |
| * c-parser.c (c_parser_compound_statement_nostart): Call |
| expansion_point_location_if_in_system_header. |
| |
| 2018-01-17 David Malcolm <dmalcolm@redhat.com> |
| |
| PR c++/83814 |
| * c-fold.c (fold_for_warn): Move from c-common.c, reducing to just |
| the C part. |
| |
| 2018-01-13 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/83801 |
| * c-tree.h (decl_constant_value_1): Add a bool argument. |
| * c-typeck.c (decl_constant_value_1): Add IN_INIT argument, allow |
| returning a CONSTRUCTOR if it is true. Use error_operand_p. |
| (decl_constant_value): Adjust caller. |
| * c-fold.c (c_fully_fold_internal): If in_init, pass true to |
| decl_constant_value_1 as IN_INIT. Otherwise, punt if |
| decl_constant_value returns initializer that has BLKmode or |
| array type. |
| (c_fully_fold_internal) <case COMPONENT_REF>: Fold if !lval. |
| |
| 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org> |
| Alan Hayward <alan.hayward@arm.com> |
| David Sherwood <david.sherwood@arm.com> |
| |
| * c-typeck.c (comptypes_internal, build_binary_op): Handle polynomial |
| TYPE_VECTOR_SUBPARTS. |
| |
| 2018-01-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Update copyright years. |
| |
| 2018-01-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/83595 |
| * c-parser.c (c_parser_braced_init, c_parser_initelt, |
| c_parser_conditional_expression, c_parser_cast_expression, |
| c_parser_sizeof_expression, c_parser_alignof_expression, |
| c_parser_postfix_expression, c_parser_omp_declare_reduction, |
| c_parser_transaction_expression): Use set_error () method instead |
| of setting value member to error_mark_node. |
| |
| 2017-12-28 Michael Meissner <meissner@linux.vnet.ibm.com> |
| |
| * c-decl.c (header_for_builtin_fn): Add integer rounding _Float<N> |
| and _Float<N>X built-in functions. |
| |
| 2017-12-22 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/83550 |
| * c-decl.c (finish_struct): Set DECL_SOURCE_LOCATION on |
| TYPE_STUB_DECL and call rest_of_type_compilation before processing |
| incomplete vars rather than after it. |
| |
| PR debug/83547 |
| * c-typeck.c (c_finish_stmt_expr): Ignore !TREE_SIDE_EFFECTS as |
| indicator of ({ }), instead skip all trailing DEBUG_BEGIN_STMTs first, |
| and consider empty ones if there are no other stmts. For |
| -Wunused-value walk all statements before the one only followed by |
| DEBUG_BEGIN_STMTs. |
| |
| 2017-12-22 Mike Stump <mikestump@comcast.net> |
| Eric Botcazou <ebotcazou@adacore.com> |
| |
| * c-parser.c (c_parser_while_statement): Add unroll parameter and |
| build ANNOTATE_EXPR if present. Add 3rd operand to ANNOTATE_EXPR. |
| (c_parser_do_statement): Likewise. |
| (c_parser_for_statement): Likewise. |
| (c_parser_statement_after_labels): Adjust calls to above. |
| (c_parse_pragma_ivdep): New static function. |
| (c_parser_pragma_unroll): Likewise. |
| (c_parser_pragma) <PRAGMA_IVDEP>: Add support for pragma Unroll. |
| <PRAGMA_UNROLL>: New case. |
| |
| 2017-12-19 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-typeck.c (comptypes_internal, function_types_compatible_p, |
| perform_integral_promotions, digest_init): Replace Yoda conditions |
| with typical order conditions. |
| * c-decl.c (check_bitfield_type_and_width): Likewise. |
| |
| 2017-12-14 Bernd Edlinger <bernd.edlinger@hotmail.de> |
| |
| * c-typeck.c (c_safe_arg_type_equiv_p, |
| c_safe_function_type_cast_p): New function. |
| (build_c_cast): Implement -Wcast-function-type. |
| |
| 2017-12-14 Richard Biener <rguenther@suse.de> |
| |
| PR c/83415 |
| * c-fold.c (c_fully_fold_internal): Treat VIEW_CONVERT_EXPR |
| like REALPART_EXPR for the behavior of whether its operand |
| is an lvalue. |
| |
| 2017-12-12 Marek Polacek <polacek@redhat.com> |
| |
| PR c/82679 |
| * c-decl.c (grokdeclarator): Check declspecs insted of atomicp. |
| |
| 2017-12-12 Alexandre Oliva <aoliva@redhat.com> |
| |
| * c-objc-common.h (LANG_HOOKS_EMITS_BEGIN_STMT): Redefine as true. |
| * c-parser.c (add_debug_begin_stmt): New. |
| (c_parser_declaration_or_fndef): Call it. |
| (c_parser_compound_statement_nostart): Likewise. |
| (c_parser_statement_after_labels): Likewise. |
| * c-typeck (c_finish_stmt_expr): Skip begin stmts markers. |
| |
| 2017-12-07 Joseph Myers <joseph@codesourcery.com> |
| |
| * c-decl.c (build_compound_literal): Add parameter alignas_align |
| and set alignment of decl if nonzero. |
| * c-parser.c (c_keyword_starts_typename): Allow RID_ALIGNAS. |
| (c_parser_declspecs): Allow RID_ALIGNAS to follow a type, like a |
| qualifier. |
| (c_parser_struct_declaration): Update syntax comment. |
| (c_parser_type_name): Add alignas_ok argument and pass it to |
| c_parser_declspecs. |
| (c_parser_cast_expression): Pass true to c_parser_type_name and |
| give error if a cast used an _Alignas specifier. |
| (c_parser_sizeof_expression): Pass true to c_parser_type_name and |
| give error if sizeof (type-name) used an _Alignas specifier. |
| (c_parser_alignof_expression): Pass true to c_parser_type_name and |
| give error if _Alignof (type-name) used an _Alignas specifier. |
| (c_parser_postfix_expression_after_paren_type): Check specified |
| alignment for a compound literal and pass it to |
| build_compound_literal. |
| * c-parser.h (c_parser_type_name): Update prototype. |
| * c-tree.h (build_compound_literal): Update prototype. |
| |
| 2017-12-07 Martin Sebor <msebor@redhat.com> |
| |
| PR c/81544 |
| * c-decl.c (c_decl_attributes): Look up existing declaration and |
| pass it to decl_attributes. |
| |
| 2017-12-06 David Malcolm <dmalcolm@redhat.com> |
| |
| PR c/83236 |
| * c-decl.c (lookup_name_fuzzy): Don't suggest names that are |
| reserved for use by the implementation. |
| |
| 2017-12-06 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-decl.c: Include "c-family/c-spellcheck.h". |
| |
| 2017-12-05 Martin Liska <mliska@suse.cz> |
| Jakub Jelinek <jakub@redhat.com> |
| |
| * c-typeck.c (pointer_diff): Add new argument and instrument |
| pointer subtraction. |
| (build_binary_op): Similar for pointer comparison. |
| |
| 2017-12-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/79153 |
| * c-parser.c: Include tree-iterator.h. |
| (c_parser_switch_statement): Emit LABEL_EXPR for the break label |
| into SWITCH_BODY instead of after it and set SWITCH_BREAK_LABEL_P |
| on it. |
| |
| PR c/83222 |
| * c-tree.h (decl_constant_value_1): Declare. |
| * c-typeck.c (decl_constant_value_1): New function. |
| (decl_constant_value): Use it. |
| * c-fold.c (c_fully_fold_internal): If in_init, use |
| decl_constant_value_1 instead of decl_constant_value. |
| |
| 2017-11-30 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_postfix_expression): Use ; instead of ;;. |
| |
| 2017-11-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/81275 |
| * c-typeck.c (c_finish_case): Set SWITCH_ALL_CASES_P if |
| c_switch_covers_all_cases_p returns true. |
| |
| 2017-11-28 Julia Koval <julia.koval@intel.com> |
| Sebastian Peryt <sebastian.peryt@intel.com> |
| |
| * Make-lang.in (c/c-array-notation.o): Remove. |
| * c-array-notation.c: Delete. |
| * c-decl.c: Remove cilkplus condition. |
| * c-parser.c (c_parser_cilk_simd, c_parser_cilk_for, |
| c_parser_cilk_verify_simd, c_parser_array_notation, |
| c_parser_cilk_clause_vectorlength, c_parser_cilk_grainsize, |
| c_parser_cilk_simd_fn_vector_attrs, |
| c_finish_cilk_simd_fn_tokens): Delete. |
| (c_parser_declaration_or_fndef): Remove cilkplus condition. |
| (c_parser_direct_declarator_inner): Ditto. |
| (CILK_SIMD_FN_CLAUSE_MASK): Delete. |
| (c_parser_attributes, c_parser_compound_statement, |
| c_parser_statement_after_labels, c_parser_if_statement, |
| c_parser_switch_statement, c_parser_while_statement, |
| c_parser_do_statement, c_parser_for_statement, |
| c_parser_unary_expression, c_parser_postfix_expression, |
| c_parser_postfix_expression_after_primary, |
| c_parser_pragma, c_parser_omp_clause_name, c_parser_omp_all_clauses, |
| c_parser_omp_for_loop, c_finish_omp_declare_simd): Remove cilkplus |
| support. |
| * c-typeck.c (build_array_ref, build_function_call_vec, |
| convert_arguments, |
| lvalue_p, build_compound_expr, c_finish_return, c_finish_if_stmt, |
| c_finish_loop, build_binary_op): Remove cilkplus support. |
| |
| 2017-11-28 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-typeck.c (c_start_case): Build SWITCH_EXPR using build2 instead |
| of build3. |
| |
| 2017-11-14 Boris Kolpackov <boris@codesynthesis.com> |
| |
| * Make-lang.in (c.install-plugin): Install backend import library. |
| |
| 2017-11-23 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_omp_declare_simd): Reject declare simd in |
| pragma_stmt context. |
| |
| 2017-11-23 Mike Stump <mikestump@comcast.net> |
| Eric Botcazou <ebotcazou@adacore.com> |
| |
| * c-parser.c (c_parser_while_statement): Pass 3rd operand to |
| ANNOTATE_EXPR. |
| (c_parser_do_statement): Likewise. |
| (c_parser_for_statement): Likewise. |
| |
| 2017-11-22 David Malcolm <dmalcolm@redhat.com> |
| |
| PR c++/62170 |
| * c-objc-common.c (c_tree_printer): Convert penultimate param from |
| bool to bool *. Within '%T' handling, if showing an "aka", use |
| "quoted" param to add appropriate quoting. |
| |
| 2017-11-22 Marek Polacek <polacek@redhat.com> |
| |
| PR c++/60336 |
| PR middle-end/67239 |
| PR target/68355 |
| * c-decl.c (grokdeclarator): Set DECL_PADDING_P on unnamed bit-fields. |
| |
| 2017-11-21 David Malcolm <dmalcolm@redhat.com> |
| |
| PR c/83056 |
| * c-decl.c (lookup_name_fuzzy): Don't suggest names that came from |
| earlier failed lookups. |
| |
| 2017-11-21 Marc Glisse <marc.glisse@inria.fr> |
| |
| * c-fold.c (c_fully_fold_internal): Handle POINTER_DIFF_EXPR. |
| * c-typeck.c (pointer_diff): Use POINTER_DIFF_EXPR. |
| |
| 2017-11-20 David Malcolm <dmalcolm@redhat.com> |
| |
| PR c/81404 |
| * c-decl.c: Include "c-family/known-headers.h". |
| (get_c_name_hint): Rename to get_stdlib_header_for_name and move |
| to known-headers.cc. |
| (class suggest_missing_header): Move to known-header.h. |
| (lookup_name_fuzzy): Call get_c_stdlib_header_for_name rather |
| than get_c_name_hint. |
| |
| 2017-11-20 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-decl.c (get_c_name_hint): New function. |
| (class suggest_missing_header): New class. |
| (lookup_name_fuzzy): Call get_c_name_hint and use it to |
| suggest missing headers to the user. |
| |
| 2017-11-20 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-decl.c: Define INCLUDE_UNIQUE_PTR before including system.h. |
| Include "c-family/name-hint.h" |
| (implicit_decl_warning): Convert "hint" from |
| const char * to name_hint. Pass location to |
| lookup_name_fuzzy. Suppress any deferred diagnostic if the |
| warning was not printed. |
| (undeclared_variable): Likewise for "guessed_id". |
| (lookup_name_fuzzy): Convert return type from const char * |
| to name_hint. Add location_t param. |
| * c-parser.c: Define INCLUDE_UNIQUE_PTR before including system.h. |
| Include "c-family/name-hint.h" |
| (c_parser_declaration_or_fndef): Convert "hint" from |
| const char * to name_hint. Pass location to lookup_name_fuzzy. |
| (c_parser_parameter_declaration): Likewise. |
| |
| 2017-11-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/66618 |
| PR c/69960 |
| * c-parser.c (c_parser_omp_atomic): Pass true as LVAL to c_fully_fold |
| where needed. |
| * c-typeck.c (build_unary_op, build_modify_expr, build_asm_expr, |
| handle_omp_array_sections): Likewise. |
| (digest_init): Don't call decl_constant_value_for_optimization. |
| * c-tree.h (decl_constant_value_for_optimization): Removed. |
| * c-fold.c (c_fold_array_ref): New function. |
| (c_fully_fold_internal): Add LVAL argument, propagate it through |
| recursive calls. For VAR_P call decl_constant_value and |
| unshare if not LVAL and either optimizing or IN_INIT. Remove |
| decl_constant_value_for_optimization calls. If IN_INIT and not LVAL, |
| fold ARRAY_REF with STRING_CST and INTEGER_CST operands. |
| (c_fully_fold): Add LVAL argument, pass it through to |
| c_fully_fold_internal. |
| (decl_constant_value_for_optimization): Removed. |
| |
| 2017-11-15 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/81156 |
| * c-parser.c (check_tgmath_function): New function. |
| (enum tgmath_parm_kind): New enum. |
| (c_parser_postfix_expression): Handle __builtin_tgmath. |
| |
| 2017-10-31 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-decl.c (implicit_decl_warning): Update for renaming of |
| pedwarn_at_rich_loc and warning_at_rich_loc. |
| (implicitly_declare): Likewise for renaming of inform_at_rich_loc. |
| (undeclared_variable): Likewise for renaming of error_at_rich_loc. |
| * c-parser.c (c_parser_declaration_or_fndef): Likewise. |
| (c_parser_struct_or_union_specifier): Likewise for renaming of |
| pedwarn_at_rich_loc. |
| (c_parser_parameter_declaration): Likewise for renaming of |
| error_at_rich_loc. |
| * c-typeck.c (build_component_ref): Likewise. |
| (build_unary_op): Likewise for renaming of inform_at_rich_loc. |
| (pop_init_level): Likewise for renaming of warning_at_rich_loc. |
| (set_init_label): Likewise for renaming of error_at_rich_loc. |
| |
| 2017-10-30 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_statement): Parse conditional |
| stmts. |
| |
| 2017-10-27 Michael Meissner <meissner@linux.vnet.ibm.com> |
| |
| * c-decl.c (header_for_builtin_fn): Add support for copysign, fma, |
| fmax, fmin, and sqrt _Float<N> and _Float<N>X variants. |
| |
| 2017-10-25 David Malcolm <dmalcolm@redhat.com> |
| |
| PR c/7356 |
| * c-parser.c (c_parser_declaration_or_fndef): Detect missing |
| semicolons. |
| |
| 2017-10-25 Jakub Jelinek <jakub@redhat.com> |
| |
| PR libstdc++/81706 |
| * c-decl.c (merge_decls): Copy "omp declare simd" attributes from |
| newdecl to corresponding __builtin_ if any. |
| |
| 2017-10-24 Paolo Carlini <paolo.carlini@oracle.com> |
| |
| PR c++/82466 |
| * c-decl.c (diagnose_mismatched_decls): Use |
| OPT_Wbuiltin_declaration_mismatch. |
| |
| 2017-10-12 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-parser.c (c_parser_require): Add "type_is_unique" param and |
| use it to guard calls to maybe_suggest_missing_token_insertion. |
| (c_parser_parms_list_declarator): Override default value of new |
| "type_is_unique" param to c_parser_require. |
| (c_parser_asm_statement): Likewise. |
| * c-parser.h (c_parser_require): Add "type_is_unique" param, |
| defaulting to true. |
| |
| 2017-10-11 Nathan Sidwell <nathan@acm.org> |
| |
| * c-decl.c (grokdeclarator): Check HAS_DECL_ASSEMBLER_NAME_P too. |
| |
| 2017-10-10 Richard Sandiford <richard.sandiford@linaro.org> |
| |
| * c-parser.c (c_parser_cilk_clause_vectorlength): Use wi::to_wide when |
| operating on trees as wide_ints. |
| * c-typeck.c (build_c_cast, c_finish_omp_clauses): Likewise. |
| (c_tree_equal): Likewise. |
| |
| 2017-10-04 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-decl.c (push_parm_decl): Store c_parm's location into the |
| PARAM_DECL. |
| (build_c_parm): Add "loc" param and store it within the c_parm. |
| * c-parser.c (struct c_parser): Add "last_token_location" field. |
| (c_parser_consume_token): Store location of the token into the |
| new field. |
| (c_parser_declaration_or_fndef): Store params into DECL_ARGUMENTS |
| when handling a FUNCTION_DECL, if it doesn't already have them. |
| (c_parser_parameter_declaration): Generate a location for the |
| parameter, and pass it to the call to build_c_parm. |
| * c-tree.h (struct c_parm): Add field "loc". |
| (build_c_parm): Add location_t param. |
| * c-typeck.c (get_fndecl_argument_location): New function. |
| (inform_for_arg): New function. |
| (convert_for_assignment): Use inform_for_arg when dealing with |
| ic_argpass. |
| |
| 2017-09-29 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-decl.c (grokfield): Use SET_DECL_C_BIT_FIELD here if |
| width is non-NULL. |
| (finish_struct): Test DECL_C_BIT_FIELD instead of DECL_INITIAL, |
| don't SET_DECL_C_BIT_FIELD here. |
| |
| PR c/82340 |
| * c-decl.c (build_compound_literal): Use c_apply_type_quals_to_decl |
| instead of trying to set just TREE_READONLY manually. |
| |
| 2017-09-16 Tom de Vries <tom@codesourcery.com> |
| |
| PR c/81875 |
| * c-parser.c (c_parser_omp_for_loop): Fold only operands of cond, not |
| cond itself. |
| |
| 2017-09-15 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/82071 |
| * c-typeck.c (ep_convert_and_check): Just call convert_and_check |
| for C11. |
| (build_conditional_expr): For C11, generate result with excess |
| precision when one argument is an integer and the other is of a |
| type using excess precision. |
| |
| 2017-09-15 Bernd Edlinger <bernd.edlinger@hotmail.de> |
| |
| * c-typeck.c (build_c_cast): Implement -Wcast-align=strict. |
| |
| 2017-09-13 Marek Polacek <polacek@redhat.com> |
| |
| PR c/82167 |
| * c-typeck.c (c_expr_sizeof_expr): Use the type of expr.value rather |
| than expr.original_type. |
| |
| 2017-09-12 Nathan Sidwell <nathan@acm.org> |
| |
| * c-decl.c (field_decl_cmp, resort_data, resort_field_decl_cmp, |
| resort_sorted_fields): Moved from c-family/c-common.c. |
| * c-lang.h (struct sorted_fields_type): Moved from c-family/c-common.h. |
| |
| 2017-09-01 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/82071 |
| * c-typeck.c (build_atomic_assign): Handle argument with excess |
| precision. Ensure any EXCESS_PRECISION_EXPR is present in |
| argument passed to build_binary_op and convert_for_assignment but |
| not for call to c_fully_fold. |
| (build_modify_expr): Do not remove EXCESS_PRECISION_EXPR early. |
| Ensure build_binary_op is called with argument with original |
| semantic type. Avoid calling c_fully_fold with an |
| EXCESS_PRECISION_EXPR from build_binary_op. |
| |
| 2017-09-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/81887 |
| * c-parser.c (c_parser_omp_ordered): Handle -fopenmp-simd. |
| |
| 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org> |
| Alan Hayward <alan.hayward@arm.com> |
| David Sherwood <david.sherwood@arm.com> |
| |
| * c-typeck.c (build_binary_op): Use SCALAR_TYPE_MODE. |
| (c_common_type): Likewise. Use as_a <scalar_mode> when setting |
| m1 and m2 to the signed equivalent of a fixed-point |
| SCALAR_TYPE_MODE. |
| |
| 2017-08-24 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-tree.h (c_expr::get_location) Use EXPR_HAS_LOCATION rather |
| than CAN_HAVE_LOCATION_P when determining whether to use the |
| location_t value within "value". |
| |
| 2017-08-21 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-parser.c (c_parser_expr_list): Use c_expr::get_location () |
| rather than peeking the location of the first token. |
| * c-tree.h (c_expr::get_location): New method. |
| |
| 2017-08-21 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-typeck.c (build_function_call_vec): Pass arg_loc to call |
| to check_function_arguments. |
| |
| 2017-08-18 Marek Polacek <polacek@redhat.com> |
| |
| * c-parser.c (c_parser_postfix_expression): Remove unused code. Update |
| commentary. |
| |
| 2017-08-18 H.J. Lu <hongjiu.lu@intel.com> |
| |
| PR c/53037 |
| * c-decl.c (merge_decls): Also merge DECL_WARN_IF_NOT_ALIGN. |
| (check_bitfield_type_and_width): Don't allow bit-field with |
| warn_if_not_aligned type. |
| |
| 2017-08-14 Martin Sebor <msebor@redhat.com> |
| |
| PR c/81117 |
| * c-objc-common.c (c_objc_common_init): Handle 'G'. |
| |
| 2017-08-11 Marek Polacek <polacek@redhat.com> |
| |
| PR c/81795 |
| * c-decl.c (pushtag): Only print inform if the warning was printed. |
| (grokdeclarator): Likewise. |
| |
| 2017-08-10 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-parser.c (c_parser_error): Rename to... |
| (c_parser_error_richloc): ...this, making static, and adding |
| "richloc" parameter, passing it to the c_parse_error call, |
| rather than calling c_parser_set_source_position_from_token. |
| (c_parser_error): Reintroduce, reimplementing in terms of the |
| above, converting return type from void to bool. |
| (class token_pair): New class. |
| (struct matching_paren_traits): New struct. |
| (matching_parens): New typedef. |
| (struct matching_brace_traits): New struct. |
| (matching_braces): New typedef. |
| (get_matching_symbol): New function. |
| (c_parser_require): Add param MATCHING_LOCATION, using it to |
| highlight matching "opening" tokens for missing "closing" tokens. |
| (c_parser_skip_until_found): Likewise. |
| (c_parser_static_assert_declaration_no_semi): Convert explicit |
| parsing of CPP_OPEN_PAREN and CPP_CLOSE_PAREN to use of |
| class matching_parens, so that the pertinent open parenthesis is |
| highlighted when there are problems locating the close |
| parenthesis. |
| (c_parser_struct_or_union_specifier): Likewise. |
| (c_parser_typeof_specifier): Likewise. |
| (c_parser_alignas_specifier): Likewise. |
| (c_parser_simple_asm_expr): Likewise. |
| (c_parser_braced_init): Likewise, for matching_braces. |
| (c_parser_paren_condition): Likewise, for matching_parens. |
| (c_parser_switch_statement): Likewise. |
| (c_parser_for_statement): Likewise. |
| (c_parser_asm_statement): Likewise. |
| (c_parser_asm_operands): Likewise. |
| (c_parser_cast_expression): Likewise. |
| (c_parser_sizeof_expression): Likewise. |
| (c_parser_alignof_expression): Likewise. |
| (c_parser_generic_selection): Likewise. |
| (c_parser_postfix_expression): Likewise for cases RID_VA_ARG, |
| RID_OFFSETOF, RID_TYPES_COMPATIBLE_P, RID_AT_SELECTOR, |
| RID_AT_PROTOCOL, RID_AT_ENCODE, reindenting as necessary. |
| In case CPP_OPEN_PAREN, pass loc_open_paren to the |
| c_parser_skip_until_found call. |
| (c_parser_objc_class_definition): Use class matching_parens as |
| above. |
| (c_parser_objc_method_decl): Likewise. |
| (c_parser_objc_try_catch_finally_statement): Likewise. |
| (c_parser_objc_synchronized_statement): Likewise. |
| (c_parser_objc_at_property_declaration): Likewise. |
| (c_parser_oacc_wait_list): Likewise. |
| (c_parser_omp_var_list_parens): Likewise. |
| (c_parser_omp_clause_collapse): Likewise. |
| (c_parser_omp_clause_default): Likewise. |
| (c_parser_omp_clause_if): Likewise. |
| (c_parser_omp_clause_num_threads): Likewise. |
| (c_parser_omp_clause_num_tasks): Likewise. |
| (c_parser_omp_clause_grainsize): Likewise. |
| (c_parser_omp_clause_priority): Likewise. |
| (c_parser_omp_clause_hint): Likewise. |
| (c_parser_omp_clause_defaultmap): Likewise. |
| (c_parser_oacc_single_int_clause): Likewise. |
| (c_parser_omp_clause_ordered): Likewise. |
| (c_parser_omp_clause_reduction): Likewise. |
| (c_parser_omp_clause_schedule): Likewise. |
| (c_parser_omp_clause_num_teams): Likewise. |
| (c_parser_omp_clause_thread_limit): Likewise. |
| (c_parser_omp_clause_aligned): Likewise. |
| (c_parser_omp_clause_linear): Likewise. |
| (c_parser_omp_clause_safelen): Likewise. |
| (c_parser_omp_clause_simdlen): Likewise. |
| (c_parser_omp_clause_depend): Likewise. |
| (c_parser_omp_clause_map): Likewise. |
| (c_parser_omp_clause_device): Likewise. |
| (c_parser_omp_clause_dist_schedule): Likewise. |
| (c_parser_omp_clause_proc_bind): Likewise. |
| (c_parser_omp_clause_uniform): Likewise. |
| (c_parser_omp_for_loop): Likewise. |
| (c_parser_cilk_clause_vectorlength): Likewise. |
| (c_parser_cilk_clause_linear): Likewise. |
| (c_parser_transaction_expression): Likewise. |
| * c-parser.h (c_parser_require): Add param matching_location with |
| default UNKNOWN_LOCATION. |
| (c_parser_error): Convert return type from void to bool. |
| (c_parser_skip_until_found): Add param matching_location with |
| default UNKNOWN_LOCATION. |
| |
| 2017-08-09 Marek Polacek <polacek@redhat.com> |
| |
| * c-decl.c (build_enumerator): Use true/false instead of 1/0. |
| * c-tree.h (build_external_ref): Update declaration. |
| * c-typeck.c (build_array_ref): Use true/false instead of 1/0. |
| (build_external_ref): Change the type of a parameter to bool. |
| (parser_build_binary_op): Use true/false instead of 1/0. |
| (pointer_diff): Likewise. |
| (build_modify_expr): Likewise. |
| (set_designator): Change the type of a parameter to bool. |
| (set_init_index): Use true/false instead of 1/0. |
| (set_init_label): Likewise. |
| (output_init_element): Change the type of a parameter to bool. |
| (output_pending_init_elements): Use true/false instead of 1/0. |
| (process_init_element): Likewise. |
| (build_binary_op): Change the type of a parameter to bool. |
| |
| 2017-08-09 Marek Polacek <polacek@redhat.com> |
| |
| PR c/81233 |
| * c-typeck.c (pedwarn_init): Make the function take a variable list. |
| Call emit_diagnostic_valist instead of pedwarn. |
| (convert_for_assignment): Unroll the PEDWARN_FOR_ASSIGNMENT macro. |
| Print the relevant types in diagnostics. |
| |
| 2017-08-09 Marek Polacek <polacek@redhat.com> |
| |
| PR c/81417 |
| * c-array-notation.c (fix_builtin_array_notation_fn): Update calls to |
| build_conditional_expr. |
| * c-parser.c (c_parser_conditional_expression): Create locations for |
| EXP1 and EXP2 from their source ranges. Pass the locations down to |
| build_conditional_expr. |
| * c-tree.h (build_conditional_expr): Update declaration. |
| * c-typeck.c (build_conditional_expr): Add location_t parameters. |
| For -Wsign-compare, also print the types. |
| |
| 2017-08-08 Martin Liska <mliska@suse.cz> |
| |
| * c-convert.c: Include header files. |
| * c-typeck.c: Likewise. |
| |
| 2017-08-07 Martin Liska <mliska@suse.cz> |
| |
| * c-parser.c (c_parser_attributes): Canonicalize name of an |
| attribute. |
| |
| 2017-08-02 Marek Polacek <polacek@redhat.com> |
| |
| PR c/81289 |
| * c-parser.c (c_parser_unary_expression): Use set_error. |
| |
| PR c/81448 |
| PR c/81306 |
| * c-warn.c (warn_for_multistatement_macros): Prevent bogus |
| warnings. Avoid walking MACRO_MAP_LOCATIONS. |
| |
| 2017-07-31 Jan Hubicka <hubicka@ucw.cz> |
| Martin Liska <mliska@suse.cz> |
| |
| * c-typeck.c (c_finish_goto_label): Build gimple predict |
| statement. |
| |
| 2017-07-31 Martin Liska <mliska@suse.cz> |
| |
| PR sanitize/81530 |
| * c-convert.c (convert): Guard condition with flag_sanitize_p |
| also with current_function_decl non-null equality. |
| * c-decl.c (grokdeclarator): Likewise. |
| * c-typeck.c (build_binary_op): Likewise. |
| |
| 2017-07-25 Marek Polacek <polacek@redhat.com> |
| |
| * c-decl.c (grokfield): Remove local variable. |
| |
| 2017-07-25 Marek Polacek <polacek@redhat.com> |
| |
| PR c/81364 |
| * c-parser.c (c_parser_else_body): Don't warn about multistatement |
| macro expansion if the body is in { }. |
| (c_parser_while_statement): Likewise. |
| (c_parser_for_statement): Likewise. |
| |
| 2017-07-18 Nathan Sidwell <nathan@acm.org> |
| |
| * c-parser.c (c_parser_array_notation): Use TYPE_{MIN,MAX}_VALUE. |
| |
| 2017-07-14 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-decl.c (implicitly_declare): When suggesting a missing |
| #include, provide a fix-it hint. |
| |
| 2017-07-06 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-lang.c (selftest::run_c_tests): Move body to c_family_tests, |
| and call that instead. |
| * c-tree.h (selftest::run_c_tests): New decl. |
| |
| 2017-06-26 Marek Polacek <polacek@redhat.com> |
| |
| PR c/80116 |
| * c-parser.c (c_parser_if_body): Set the location of the |
| body of the conditional after parsing all the labels. Call |
| warn_for_multistatement_macros. |
| (c_parser_else_body): Likewise. |
| (c_parser_switch_statement): Likewise. |
| (c_parser_while_statement): Likewise. |
| (c_parser_for_statement): Likewise. |
| (c_parser_statement): Add a default argument. Save the location |
| after labels have been parsed. |
| (c_parser_c99_block_statement): Likewise. |
| |
| 2017-06-19 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Handle |
| negated _Literals to parse _Literal (int) -1. |
| |
| 2017-06-13 Martin Liska <mliska@suse.cz> |
| |
| PR sanitize/78204 |
| * c-convert.c (convert): Use sanitize_flags_p. |
| * c-decl.c (grokdeclarator): Likewise. |
| * c-typeck.c (convert_for_assignment): Likewise. |
| (c_finish_return): Likewise. |
| (build_binary_op): Likewise. |
| |
| 2017-06-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/81006 |
| * c-typeck.c (handle_omp_array_sections_1): Convert TYPE_MAX_VALUE |
| to sizetype before size_binop. |
| |
| 2017-06-07 Jakub Jelinek <jakub@redhat.com> |
| |
| * gimple-parser.c (c_parser_parse_gimple_body): Use TDI_gimple instead |
| of TDI_generic. |
| |
| 2017-06-06 Marek Polacek <polacek@redhat.com> |
| |
| PR c/79983 |
| * c-decl.c (start_struct): Use the location of TYPE_STUB_DECL of |
| ref. |
| (start_enum): Use the location of TYPE_STUB_DECL of enumtype. |
| |
| 2017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de> |
| |
| * c-parser.c (c_parser_binary_expression): Implement the |
| -Wsizeof_pointer_div warning. |
| (c_parser_postfix_expression): Allow SIZEOF_EXPR as expr.original_code |
| from a parenthesized expression. |
| (c_parser_expr_list): Use c_last_sizeof_loc. |
| * c-tree.h (c_last_sizeof_loc): New external. |
| * c-typeck.c (c_last_sizeof_loc): New variable. |
| (c_expr_sizeof_expr, c_expr_sizeof_type): Assign c_last_sizeof_loc. |
| |
| 2017-05-31 Mikhail Maltsev <maltsevm@gmail.com> |
| |
| PR testsuite/80580 |
| * gimple-parser.c (c_parser_gimple_if_stmt): Check for empty labels. |
| |
| 2017-05-30 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-objc-common.c (c_tree_printer): Gain bool and const char ** |
| parameters. |
| |
| 2017-05-24 Martin Sebor <msebor@redhat.com> |
| |
| PR c/80731 |
| * c-fold.c (c_fully_fold_internal): Adjust. |
| * c-typeck.c (parser_build_unary_op): Adjust. |
| |
| 2017-05-23 Thomas Schwinge <thomas@codesourcery.com> |
| |
| * c-parser.c (OACC_KERNELS_CLAUSE_MASK): Add |
| "PRAGMA_OACC_CLAUSE_NUM_GANGS", "PRAGMA_OACC_CLAUSE_NUM_WORKERS", |
| "VECTOR_LENGTH". |
| |
| 2017-05-23 Marek Polacek <polacek@redhat.com> |
| |
| * c-parser.c (c_parser_compound_statement_nostart): Remove redundant |
| quotes. |
| |
| 2017-05-22 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-fold.c (c_fully_fold_internal): Save the c_fully_fold_internal |
| result for SAVE_EXPR operand and set SAVE_EXPR_FOLDED_P even if |
| it returned invariant. Call tree_invariant_p unconditionally |
| afterwards to decide whether to return expr or op0. |
| |
| 2017-05-22 Nathan Sidwell <nathan@acm.org> |
| |
| * c-decl.c (c_parse_final_cleanups): Drop TDI_tu handling. |
| |
| 2017-05-19 Thomas Schwinge <thomas@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_default): Handle |
| "OMP_CLAUSE_DEFAULT_PRESENT". |
| |
| 2017-05-18 Bernd Edlinger <bernd.edlinger@hotmail.de> |
| |
| * config-lang.in (gtfiles): Add c-family/c-format.c. |
| |
| 2017-05-18 Nathan Sidwell <nathan@acm.org> |
| |
| * c-decl.c (pushdecl_top_level): Delete unused function. |
| |
| 2017-05-18 Marek Polacek <polacek@redhat.com> |
| |
| * c-decl.c (match_builtin_function_types): Use NULL_TREE instead of 0. |
| (check_earlier_gotos): Likewise. |
| (define_label): Likewise. |
| (pending_xref_error): Likewise. |
| (smallest_type_quals_location): Likewise. |
| (grokdeclarator): Likewise. |
| (grokparms): Likewise. |
| (identifier_global_value): Likewise. |
| * c-typeck.c (set_nonincremental_init_from_string): Likewise. |
| (find_init_member): Likewise. |
| |
| 2017-05-18 Marek Polacek <polacek@redhat.com> |
| |
| * c-decl.c (start_decl): Use false/true instead of 0/1. |
| (grokdeclarator): Likewise. |
| (finish_struct): Likewise. |
| (start_function): Change the return type to bool. Use false/true |
| instead of 0/1. |
| (declspecs_add_qual): Use UNKNOWN_LOCATION instead of 0. |
| * c-tree.h (start_function): Update. |
| * c-typeck.c (same_translation_unit_p): Change the return type to bool. |
| (set_designator): Change the return type to bool. Use false/true |
| instead of 0/1. |
| |
| 2017-05-17 Marek Polacek <polacek@redhat.com> |
| |
| * c-decl.c: Use NULL_TREE instead of 0 where appropriate. |
| * c-typeck.c: Likewise. |
| |
| 2017-05-17 Marek Polacek <polacek@redhat.com> |
| |
| PR sanitizer/80659 |
| * c-decl.c (build_compound_literal): Set DECL_ARTIFICIAL and |
| DECL_IGNORED_P even for non-static compound literals. |
| |
| 2017-05-17 Martin Liska <mliska@suse.cz> |
| |
| * c-decl.c (c_parse_final_cleanups): Introduce dump_flags_t type and |
| use it instead of int type. |
| |
| 2017-05-17 Marek Polacek <polacek@redhat.com> |
| |
| * c-convert.c (convert): Replace c_save_expr with save_expr. Don't |
| call c_fully_fold. |
| (convert) <case COMPLEX_TYPE>: Remove special handling of COMPLEX_TYPEs. |
| * c-decl.c (grokdeclarator): Replace c_save_expr with save_expr. |
| * c-fold.c (c_fully_fold_internal): Handle SAVE_EXPR. |
| * c-parser.c (c_parser_declaration_or_fndef): Replace c_save_expr with |
| save_expr. |
| (c_parser_conditional_expression): Likewise. |
| * c-tree.h (SAVE_EXPR_FOLDED_P): Define. |
| * c-typeck.c (build_modify_expr): Replace c_save_expr with save_expr. |
| (process_init_element): Likewise. |
| (build_binary_op): Likewise. |
| (handle_omp_array_sections_1): Likewise. |
| |
| 2017-05-12 Thomas Schwinge <thomas@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_num_gangs) |
| (c_parser_omp_clause_num_workers) |
| (c_parser_omp_clause_vector_length): Merge functions into... |
| (c_parser_oacc_single_int_clause): ... this new function. Adjust |
| all users. |
| |
| 2017-05-11 Nathan Sidwell <nathan@acm.org> |
| |
| * gimple-parser.c: Don't #include tree-dump.h. |
| |
| 2017-05-11 Mikhail Maltsev <maltsevm@gmail.com> |
| |
| PR testsuite/80580 |
| * gimple-parser.c (c_parser_parse_ssa_name): Validate SSA name base. |
| |
| 2017-05-11 Mikhail Maltsev <maltsevm@gmail.com> |
| |
| PR testsuite/80580 |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Handle |
| incorrect __MEM syntax. |
| |
| 2017-05-11 Mikhail Maltsev <maltsevm@gmail.com> |
| |
| PR testsuite/80580 |
| * gimple-parser.c (c_parser_gimple_unary_expression): Check argument |
| type of unary '*'. |
| |
| 2017-05-09 Nathan Sidwell <nathan@acm.org> |
| |
| * c-tree.h (pushdecl): Declare. |
| |
| 2017-05-05 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-decl.c (warn_defaults_to): Replace report_diagnostic |
| with diagnostic_report_diagnostic. |
| * c-errors.c (pedwarn_c99): Likewise. |
| (pedwarn_c90): Likewise. |
| |
| 2017-05-01 Xi Ruoyao <ryxi@stu.xidian.edu.cn> |
| |
| PR c++/80038 |
| * c-gimplify.c (c_gimplify_expr): Remove calls to |
| cilk_gimplifY_call_params_in_spawned_fn. |
| |
| 2017-04-25 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-parser.c (c_parser_struct_or_union_specifier): Add fix-it |
| hint for removing extra semicolon. |
| |
| 2017-04-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/80468 |
| * c-decl.c (finish_declspecs) <case cts_int_n>: If int_n_idx is not |
| enabled, set specs->type to integer_type_node. |
| |
| 2017-04-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| * c-array-notation.c: Fix typo in comment. |
| |
| 2017-03-29 Marek Polacek <polacek@redhat.com> |
| |
| PR c/79730 |
| * c-decl.c (finish_decl): Check VAR_P. |
| |
| 2017-03-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/80162 |
| * c-tree.h (c_mark_addressable): Add array_ref_p argument. |
| * c-typeck.c (c_mark_addressable): Likewise. Look through |
| VIEW_CONVERT_EXPR unless array_ref_p and VCE is from VECTOR_TYPE |
| to ARRAY_TYPE. |
| (build_array_ref): Pass true as array_ref_p to c_mark_addressable. |
| |
| 2017-03-23 Marek Polacek <polacek@redhat.com> |
| |
| * c-tree.h: Remove a C_RID_YYCODE reference. |
| |
| 2017-03-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/80097 |
| * c-typeck.c (build_binary_op): Add EXCESS_PRECISION_EXPR only around |
| optional COMPOUND_EXPR with ubsan instrumentation. |
| |
| 2017-03-17 Marek Polacek <polacek@redhat.com> |
| |
| * c-parser.c: Add C11 references. |
| |
| 2017-03-15 Marek Polacek <polacek@redhat.com> |
| |
| * c-parser.c (c_parser_enum_specifier): Remove redundant line. |
| |
| 2017-03-11 Marek Polacek <polacek@redhat.com> |
| |
| * c-decl.c (implicit_decl_warning): Add a comment. Fix formatting. |
| |
| 2017-03-10 David Malcolm <dmalcolm@redhat.com> |
| |
| PR translation/79848 |
| * c-decl.c (declspecs_add_type): Simplify uses of "%<%s%>" to |
| "%qs". |
| * c-parser.c (c_parser_oacc_shape_clause): Likewise. |
| |
| 2017-03-09 Marek Polacek <polacek@redhat.com> |
| |
| PR sanitizer/79757 |
| * c-parser.c (c_parser_declaration_or_fndef): Don't sanitize old-style |
| parameter declarations with initializers. |
| |
| 2017-03-09 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/79969 |
| * c-decl.c (start_enum): Adjust DECL_SOURCE_LOCATION of |
| TYPE_STUB_DECL. |
| |
| 2017-03-07 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/79834 |
| * c-parser.c (c_parser_pragma): Use error_at instead of c_parser_error |
| for "may only be used in compound statements" diagnostics, change it |
| such that the same translatable string is used for all pragmas. For |
| PRAGMA_OACC_WAIT use "acc wait" rather than "acc enter data" in the |
| diagnostics. |
| (c_parser_omp_cancellation_point, c_parser_omp_target_update, |
| c_parser_omp_target_enter_data, c_parser_omp_target_exit_data): Change |
| "may only be used in compound statements" diagnostics, such that the |
| same translatable string is used for all pragmas. |
| |
| 2017-03-04 Marek Polacek <polacek@redhat.com> |
| |
| PR c/79847 |
| * c-decl.c (implicit_decl_warning): Add missing space. |
| |
| 2017-03-03 Marek Polacek <polacek@redhat.com> |
| |
| PR c/79758 |
| * c-decl.c (store_parm_decls_oldstyle): Check if the element of |
| current_function_prototype_arg_types is error_mark_node. Fix |
| formatting. Use TREE_VALUE instead of TREE_TYPE. |
| |
| 2017-03-03 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/79837 |
| * c-parser.c (c_parser_omp_clause_reduction): Don't mention |
| %<min%> or %<max%> in the diagnostics, instead mention identifier. |
| (c_parser_omp_declare_reduction): Don't mention %<min%> in the |
| diagnostics. |
| |
| PR c/79836 |
| * c-parser.c (c_parser_generic_selection): Use %<_Generic%> |
| instead of %<_Generic>. |
| (c_parser_omp_ordered): Use %<depend%> instead of %<depend>. |
| (c_parser_omp_target_exit_data): Use %<release%> instead of |
| %<release>. |
| |
| 2017-02-28 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_asm_statement): Use cond ? G_("...") : G_("...") |
| instead of just cond ? "..." : "...". |
| (c_parser_oacc_enter_exit_data): Use %s and ternary operator only |
| for "enter"/"exit" keyword. |
| (c_finish_oacc_routine): Don't use %s to supply portions of the |
| message. |
| |
| 2017-02-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/79588 |
| * c-parser.c (c_parser_postfix_expression_after_primary): Don't |
| handle -Wrestrict here. |
| * c-typeck.c (build_function_call_vec): Adjust |
| check_function_arguments caller. |
| |
| 2017-02-23 Richard Biener <rguenther@suse.de> |
| |
| PR c/79684 |
| * gimple-parser.c (c_parser_gimple_statement): Use set_error |
| to initialize c_exprs to return. |
| (c_parser_gimple_binary_expression): Likewise. |
| (c_parser_gimple_unary_expression): Likewise. |
| (c_parser_gimple_postfix_expression): Likewise. |
| |
| 2017-02-22 Marek Polacek <polacek@redhat.com> |
| |
| PR c/79662 |
| * c-typeck.c (convert_arguments): Handle error_mark_node. |
| |
| 2017-02-19 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
| |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Check return |
| value of c_parser_parse_ssa_name against error_mark_node and emit |
| error if ssa name is anonymous and written as default definition. |
| |
| 2017-02-19 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
| |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Handle |
| FMA_EXPR. |
| |
| 2017-02-16 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/79512 |
| * c-parser.c (c_parser_omp_target): For -fopenmp-simd |
| ignore #pragma omp target even when not followed by identifier. |
| |
| 2017-02-14 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
| |
| * gimpler-parser.c (c_parser_gimple_statement): Handle ABS_EXPR. |
| (c_parser_gimple_unary_expression): Likewise. |
| |
| 2017-02-13 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (c_parser_oacc_declare): Add missing space in |
| diagnostics. |
| |
| 2017-02-13 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
| |
| PR c/79478 |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Call |
| set_c_expr_source_range when parsing ssa-name. |
| |
| 2017-02-10 Prasad Ghangal <prasad.ghangal@gmail.com> |
| Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_binary_expression): Avoid |
| building IL when arguments are error_mark_node. |
| (c_parser_gimple_unary_expression): Likewise. |
| (c_parser_gimple_if_stmt): Likewise. |
| (c_parser_gimple_switch_stmt): Likewise. |
| (c_parser_gimple_return_stmt): Likewise. |
| (c_parser_parse_ssa_name): When name lookup fails do not build |
| an SSA name. Use undeclared rather than not declared in error |
| reporting. |
| |
| 2017-02-09 Marek Polacek <polacek@redhat.com> |
| |
| PR c/79428 |
| * c-parser.c (c_parser_omp_ordered): Call c_parser_skip_to_pragma_eol |
| instead of c_parser_skip_until_found. |
| |
| 2017-02-09 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/79431 |
| * c-parser.c (c_parser_omp_declare_target): Don't invoke |
| symtab_node::get on automatic variables. |
| |
| 2016-02-09 Nathan Sidwell <nathan@codesourcery.com> |
| Chung-Lin Tang <cltang@codesourcery.com> |
| |
| * c-parser.c (c_parser_omp_clause_collapse): Disallow tile. |
| (c_parser_oacc_clause_tile): Disallow collapse. Fix parsing and |
| semantic checking. |
| * c-parser.c (c_parser_omp_for_loop): Accept tiling constructs. |
| |
| 2017-02-07 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_expr_list): Simplify. |
| (c_parser_gimple_postfix_expression_after_primary): |
| Do not use c_build_function_call_vec to avoid folding and promotion. |
| Simplify. |
| |
| 2017-01-25 Maxim Ostapenko <m.ostapenko@samsung.com> |
| |
| PR lto/79061 |
| * c-decl.c (pop_scope): Pass main_input_filename to |
| build_translation_unit_decl. |
| |
| 2017-01-24 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-parser.c: Include "read-rtl-function.h" and |
| "run-rtl-passes.h". |
| (c_parser_declaration_or_fndef): Rename "gimple-pass-list" in |
| grammar to gimple-or-rtl-pass-list. Add rtl-function-definition |
| production. Update for renaming of field "gimple_pass" to |
| "gimple_or_rtl_pass". If __RTL was seen, call |
| c_parser_parse_rtl_body. Convert a timevar_push/pop pair |
| to an auto_timevar, to cope with early exit. |
| (c_parser_declspecs): Update RID_GIMPLE handling for renaming of |
| field "gimple_pass" to "gimple_or_rtl_pass", and for renaming of |
| c_parser_gimple_pass_list to c_parser_gimple_or_rtl_pass_list. |
| Handle RID_RTL. |
| (c_parser_parse_rtl_body): New function. |
| * c-tree.h (enum c_declspec_word): Add cdw_rtl. |
| (struct c_declspecs): Rename field "gimple_pass" to |
| "gimple_or_rtl_pass". Add field "rtl_p". |
| * gimple-parser.c (c_parser_gimple_pass_list): Rename to... |
| (c_parser_gimple_or_rtl_pass_list): ...this, updating accordingly. |
| * gimple-parser.h (c_parser_gimple_pass_list): Rename to... |
| (c_parser_gimple_or_rtl_pass_list): ...this. |
| |
| 2017-01-20 Marek Polacek <polacek@redhat.com> |
| |
| PR c/64279 |
| * c-typeck.c (build_conditional_expr): Warn about duplicated branches. |
| |
| 2017-01-13 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_compound_statement): Handle |
| nops. |
| |
| 2017-01-13 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Parse |
| _Literal ( type-name ) number. |
| |
| 2017-01-12 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_postfix_expression): Parse |
| __MEM. |
| |
| 2017-01-11 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/72813 |
| * c-decl.c (pop_file_scope): Set flag_syntax_only to 1 after writing |
| PCH file. |
| |
| 2017-01-11 Richard Biener <rguenther@suse.de> |
| |
| PR bootstrap/79052 |
| * gimple-parser.c (c_parser_gimple_switch_stmt): Add missing |
| returns on parse errors. |
| |
| 2017-01-04 Marek Polacek <polacek@redhat.com> |
| |
| PR c++/64767 |
| * c-parser.c (c_parser_postfix_expression): Mark zero character |
| constants by setting original_type in c_expr. |
| * c-typeck.c (parser_build_binary_op): Warn when a pointer is compared |
| with a zero character constant. |
| (char_type_p): New function. |
| |
| 2017-01-04 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-parser.c (c_parser_declaration_or_fndef): Create a |
| rich_location at init_loc and parse it to start_init. |
| (last_init_list_comma): New global. |
| (c_parser_braced_init): Update last_init_list_comma when parsing |
| commas. Pass it to pop_init_level. Pass location of closing |
| brace to pop_init_level. |
| (c_parser_postfix_expression_after_paren_type): Create a |
| rich_location at type_loc and parse it to start_init. |
| (c_parser_omp_declare_reduction): Likewise for loc. |
| * c-tree.h (start_init): Add rich_location * param. |
| (pop_init_level): Add location_t param. |
| * c-typeck.c (struct initializer_stack): Add field |
| "missing_brace_richloc". |
| (start_init): Add richloc param, use it to initialize |
| the stack node's missing_brace_richloc. |
| (last_init_list_comma): New decl. |
| (finish_implicit_inits): Pass last_init_list_comma to |
| pop_init_level. |
| (push_init_level): When finding missing open braces, add fix-it |
| hints to the richloc. |
| (pop_init_level): Add "insert_before" param and pass it |
| when calling pop_init_level. Add fixits about missing |
| close braces to any richloc. Use the richloc for the |
| -Wmissing-braces warning. |
| (set_designator): Pass last_init_list_comma to pop_init_level. |
| (process_init_element): Likewise. |
| |
| 2017-01-01 Jakub Jelinek <jakub@redhat.com> |
| |
| Update copyright years. |
| |
| 2016-12-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR bootstrap/78817 |
| * c-typeck.c (build_function_call_vec): If check_function_arguments |
| returns true, set TREE_NO_WARNING on CALL_EXPR. |
| |
| PR c/77767 |
| * c-decl.c (grokdeclarator): If *expr is non-NULL, append expression |
| to *expr instead of overwriting it. |
| |
| 2016-12-20 Richard Biener <rguenther@suse.de> |
| |
| * gimple-parser.c (c_parser_gimple_compound_statement): Improve |
| error recovery. |
| (c_parser_gimple_statement): Only build assigns for non-error |
| stmts. |
| (c_parser_gimple_postfix_expression_after): Improve error recovery. |
| |
| 2016-12-14 Martin Jambor <mjambor@suse.cz> |
| |
| * c-parser.c: Include omp-general.h and omp-offload.h instead of |
| omp-low.h. |
| (c_finish_oacc_routine): Adjusted call to |
| get_oacc_fn_attrib, build_oacc_routine_dims and replace_oacc_fn_attrib |
| to use their new names. |
| (c_parser_oacc_enter_exit_data): Adjusted call to find_omp_clause to |
| use its new name. |
| (c_parser_oacc_update): Likewise. |
| (c_parser_omp_simd): Likewise. |
| (c_parser_omp_target_update): Likewise. |
| * c-typeck.c: Include omp-general.h instead of omp-low.h. |
| (c_finish_omp_cancel): Adjusted call to find_omp_clause to use its new |
| name. |
| (c_finish_omp_cancellation_point): Likewise. |
| * gimple-parser.c: Do not include omp-low.h |
| |
| 2016-12-02 Cesar Philippidis <cesar@codesourcery.com> |
| James Norris <jnorris@codesourcery.com> |
| |
| * c-parser.c (c_parser_pragma): Error when PRAGMA_OACC_{ENTER_DATA, |
| EXIT_DATA,WAIT} are not used in compound statements. |
| (c_parser_oacc_enter_exit_data): Update diagnostics. |
| |
| 2016-11-21 Bernd Edlinger <bernd.edlinger@hotmail.de> |
| |
| PR c++/71973 |
| * c-decl.c (diagnose_mismatched_decls): Use |
| OPT_Wbuiltin_declaration_mismatch here too. |
| |
| 2016-11-18 Richard Sandiford <richard.sandiford@arm.com> |
| Alan Hayward <alan.hayward@arm.com> |
| David Sherwood <david.sherwood@arm.com> |
| |
| * c-decl.c (merge_decls): Use SET_DECL_MODE. |
| (make_label, finish_struct): Likewise. |
| |
| 2016-11-14 Prasad Ghangal <prasad.ghangal@gmail.com> |
| Richard Biener <rguenther@suse.de> |
| |
| * Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o. |
| * config-lang.in (gtfiles): Add c/c-parser.h. |
| * c-tree.h (enum c_declspec_word): Add cdw_gimple. |
| (struct c_declspecs): Add gimple_pass member and gimple_p flag. |
| * c-parser.c (enum c_id_kind, struct c_token, |
| c_parser_next_token_is, c_parser_next_token_is_not, |
| c_parser_next_token_is_keyword, |
| enum c_lookahead_kind, enum c_dtr_syn, enum c_parser_prec): |
| Split out to ... |
| * c-parser.h: ... new header. |
| * c-parser.c: Include c-parser.h and gimple-parser.h. |
| (c_parser_peek_token, c_parser_peek_2nd_token, |
| c_token_starts_typename, c_parser_next_token_starts_declspecs, |
| c_parser_next_tokens_start_declaration, c_parser_consume_token, |
| c_parser_error, c_parser_require, c_parser_skip_until_found, |
| c_parser_declspecs, c_parser_declarator, c_parser_peek_nth_token, |
| c_parser_type_name): Export. |
| (c_parser_tokens_buf): New function. |
| (c_parser_error): Likewise. |
| (c_parser_set_error): Likewise. |
| (c_parser_declspecs): Handle RID_GIMPLE. |
| (c_parser_declaration_or_fndef): Parse __GIMPLE marked body |
| via c_parser_parse_gimple_body. |
| * c-parser.h (c_parser_peek_token, c_parser_peek_2nd_token, |
| c_token_starts_typename, c_parser_next_token_starts_declspecs, |
| c_parser_next_tokens_start_declaration, c_parser_consume_token, |
| c_parser_error, c_parser_require, c_parser_skip_until_found, |
| c_parser_declspecs, c_parser_declarator, c_parser_peek_nth_token, |
| c_parser_type_name): Declare. |
| (struct c_parser): Declare forward. |
| (c_parser_tokens_buf): Declare. |
| (c_parser_error): Likewise. |
| (c_parser_set_error): Likewise. |
| * gimple-parser.c: New file. |
| * gimple-parser.h: Likewise. |
| |
| 2016-11-13 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
| |
| PR c/35503 |
| * c-parser.c (c_parser_postfix_expression_after_primary): Call |
| warn_for_restrict. |
| |
| 2016-09-11 Le-Chun Wu <lcwu@google.com> |
| Mark Wielaard <mjw@redhat.com> |
| |
| * c-decl.c (warn_if_shadowing): Use the warning code corresponding |
| to the given -Wshadow= variant. |
| |
| 2016-10-13 Thomas Preud'homme <thomas.preudhomme@arm.com> |
| |
| * c-typeck.c: Include memmodel.h. |
| |
| 2016-10-13 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/77957 |
| * c-objc-common.h (LANG_HOOKS_GETDECLS): Use hook_tree_void_null |
| instead of lhd_return_null_tree_v. |
| |
| 2016-10-07 Bernd Schmidt <bschmidt@redhat.com> |
| |
| PR c++/69733 |
| * c-decl.c (smallest_type_quals_location): New static function. |
| (grokdeclarator): Try to find the correct location for an ignored |
| qualifier. |
| |
| 2016-09-26 Marek Polacek <polacek@redhat.com> |
| |
| PR c/7652 |
| * c-decl.c (pop_scope): Add gcc_fallthrough. |
| |
| 2016-09-26 Marek Polacek <polacek@redhat.com> |
| |
| PR c/7652 |
| * c-parser.c (struct c_token): Add flags field. |
| (c_lex_one_token): Pass it to c_lex_with_flags. |
| (c_parser_declaration_or_fndef): Turn __attribute__((fallthrough)); |
| into IFN_FALLTHROUGH. |
| (c_parser_label): Set FALLTHROUGH_LABEL_P on labels. Handle |
| attribute fallthrough after a case label or default label. |
| (c_parser_statement_after_labels): Handle RID_ATTRIBUTE. |
| |
| 2016-09-24 Marek Polacek <polacek@redhat.com> |
| |
| PR c/77490 |
| * c-typeck.c (build_unary_op): Warn about bit not on expressions that |
| have boolean value. Warn about ++/-- on booleans. |
| |
| 2016-09-23 Jakub Jelinek <jakub@redhat.com> |
| |
| * c-parser.c (incomplete_record_decls): Remove unnecessary |
| = vNULL initialization of file scope vec. |
| |
| 2016-09-16 Marek Polacek <polacek@redhat.com> |
| |
| * c-typeck.c (lvalue_p): Use true and false instead of 1 and 0. |
| |
| 2016-09-14 Marek Polacek <polacek@redhat.com> |
| |
| * c-array-notation.c (create_cmp_incr): Use false instead of 0. |
| (fix_array_notation_expr): Likewise. |
| * c-decl.c (finish_decl): Likewise. |
| * c-parser.c (c_parser_postfix_expression_after_primary): Likewise. |
| * c-typeck.c (array_to_pointer_conversion): Use true instead of 1. |
| (function_to_pointer_conversion): Use false instead of 0. |
| (convert_lvalue_to_rvalue): Likewise. |
| (parser_build_unary_op): Likewise. |
| (build_atomic_assign): Likewise. |
| (build_unary_op): Change nonconvert parameter type to bool, use |
| true/false instead of 1/0. |
| (build_binary_op): Use true instead of 1. |
| |
| 2016-09-13 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-parser.c (c_parser_declaration_or_fndef): Update for renaming |
| of add_fixit_insert to add_fixit_insert_before. |
| |
| 2016-09-13 Marek Polacek <polacek@redhat.com> |
| |
| * c-typeck.c (build_unary_op): Rename FLAG parameter to NOCONVERT. Use |
| it. |
| |
| 2016-09-12 Bernd Edlinger <bernd.edlinger@hotmail.de> |
| |
| PR c++/77496 |
| * c-parser.c (c_parser_conditional_expression): Pass the rightmost |
| COMPOUND_EXPR to warn_for_omitted_condop. |
| |
| 2016-09-07 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-lang.c (LANG_HOOKS_GET_SUBSTRING_LOCATION): Use |
| c_get_substring_location for this new langhook. |
| |
| 2016-09-02 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/65467 |
| * c-parser.c (c_parser_declspecs): Don't sorry about _Atomic if |
| flag_openmp. |
| (c_parser_omp_variable_list): Use convert_lvalue_to_rvalue |
| instead of mark_exp_read on low_bound/length expression. |
| (c_parser_omp_clause_num_gangs, c_parser_omp_clause_num_threads, |
| c_parser_omp_clause_num_tasks, c_parser_omp_clause_grainsize, |
| c_parser_omp_clause_priority, c_parser_omp_clause_hint, |
| c_parser_omp_clause_num_workers, c_parser_oacc_shape_clause, |
| c_parser_oacc_clause_tile, c_parser_omp_clause_schedule, |
| c_parser_omp_clause_vector_length, 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_device, |
| c_parser_omp_clause_dist_schedule): Use convert_lvalue_to_rvalue |
| instead of mark_expr_read. |
| (c_parser_omp_declare_reduction): Reject _Atomic qualified types. |
| * c-objc-common.h (LANG_HOOKS_OMP_CLAUSE_COPY_CTOR, |
| LANG_HOOKS_OMP_CLAUSE_ASSIGN_OP): Redefine. |
| * c-tree.h (c_omp_clause_copy_ctor): New prototype. |
| * c-typeck.c (handle_omp_array_sections_1): Diagnose _Atomic qualified |
| array section bases outside of depend clause, for depend clause |
| use convert_lvalue_to_rvalue on the base. |
| (c_finish_omp_clauses): Reject _Atomic qualified vars in reduction, |
| linear, aligned, map, to and from clauses. |
| (c_omp_clause_copy_ctor): New function. |
| |
| 2016-09-01 Marek Polacek <polacek@redhat.com> |
| |
| PR c/7652 |
| * c-typeck.c (composite_type): Add FALLTHRU comment. |
| |
| 2016-08-31 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-parser.c (c_parser_declaration_or_fndef): Add trailing space |
| to the insertion fixits for "struct", "union", and "enum". |
| |
| 2016-08-30 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-decl.c (implicit_decl_warning): Use add_fixit_replace |
| rather than add_fixit_misspelled_id. |
| (undeclared_variable): Likewise. |
| * c-parser.c (c_parser_declaration_or_fndef): Likewise. Remove |
| now-redundant "here" params from add_fixit_insert method calls. |
| (c_parser_parameter_declaration): Likewise. |
| * c-typeck.c (build_component_ref): Remove now-redundant range |
| param from add_fixit_replace method calls. |
| |
| 2016-08-25 Marek Polacek <polacek@redhat.com> |
| |
| * c-typeck.c (parser_build_binary_op): Pass LHS to |
| warn_logical_not_parentheses. |
| |
| 2016-08-25 Marek Polacek <polacek@redhat.com> |
| |
| PR c/77323 |
| * c-decl.c (declspecs_add_type): Set typespec_word even when __intN |
| or _FloatN or _FloatNx is not supported. |
| (finish_declspecs): Set type to integer_type_node when _FloatN or |
| _FloatNx is not supported. |
| |
| 2016-08-19 Joseph Myers <joseph@codesourcery.com> |
| |
| PR c/32187 |
| * c-tree.h (cts_floatn_nx): New enum c_typespec_keyword value. |
| (struct c_declspecs): Add field floatn_nx_idx. |
| * c-decl.c (declspecs_add_type, finish_declspecs): Handle _FloatN |
| and _FloatNx type specifiers. |
| * c-parser.c (c_keyword_starts_typename, c_token_starts_declspecs) |
| (c_parser_declspecs, c_parser_attribute_any_word) |
| (c_parser_objc_selector): Use CASE_RID_FLOATN_NX. |
| * c-typeck.c (c_common_type): Handle _FloatN and _FloatNx types. |
| (convert_arguments): Avoid promoting _FloatN and _FloatNx types |
| narrower than double. |
| |
| 2016-08-12 Jakub Jelinek <jakub@redhat.com> |
| Martin Liska <mliska@suse.cz> |
| |
| PR c/67410 |
| * c-typeck.c (set_nonincremental_init_from_string): Use / instead of |
| % to determine val element to change. Assert that |
| wchar_bytes * charwidth fits into val array. |
| |
| 2016-08-12 Marek Polacek <polacek@redhat.com> |
| |
| PR c/7652 |
| * c-parser.c (c_parser_external_declaration): Add FALLTHRU. |
| (c_parser_postfix_expression): Likewise. |
| * c-typeck.c (build_unary_op): Adjust fall through comment. |
| (c_mark_addressable): Likewise. |
| |
| 2016-08-11 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/72816 |
| * c-decl.c (grokdeclarator): When adding TYPE_DOMAIN for flexible |
| array member through typedef, for orig_qual_indirect == 0 clear |
| orig_qual_type. |
| |
| 2016-08-08 David Malcolm <dmalcolm@redhat.com> |
| |
| PR c/64955 |
| * c-lang.c (LANG_HOOKS_RUN_LANG_SELFTESTS): If CHECKING_P, wire |
| this up to selftest::run_c_tests. |
| (selftest::run_c_tests): New function. |
| |
| 2016-08-04 Thomas Schwinge <thomas@codesourcery.com> |
| |
| * c-parser.c (struct oacc_routine_data): Add error_seen and |
| fndecl_seen members. |
| (c_finish_oacc_routine): Use these. |
| (c_parser_declaration_or_fndef): Adjust. |
| (c_parser_oacc_routine): Likewise. Support more C language |
| constructs, and improve diagnostics. Move pragma context |
| checking... |
| (c_parser_pragma): ... here. |
| |
| * c-parser.c (struct oacc_routine_data): New. |
| (c_parser_declaration_or_fndef, c_parser_oacc_routine): Use it. |
| Simplify code. |
| (c_finish_oacc_routine): Likewise. Don't attach clauses to "omp |
| declare target" attribute. |
| |
| 2016-08-01 Jan Beulich <jbeulich@suse.com> |
| |
| * c-fold.c (c_fully_fold_internal): Also emit shift count |
| warnings for vector types. |
| * c-typeck.c (build_binary_op): Likewise. |
| |
| 2016-07-29 Marek Polacek <polacek@redhat.com> |
| |
| PR c/71742 |
| * c-decl.c (finish_struct): Rephrase an error message. |
| |
| PR c/71853 |
| * c-parser.c (c_parser_switch_statement): Initialize ce.original_type |
| to error node for invalid code. |
| |
| PR c/71573 |
| * c-decl.c (implicitly_declare): Return decl early not only for |
| error_mark_nodes, but for anything that is not a FUNCTION_DECL. |
| |
| 2016-07-29 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/71969 |
| * c-decl.c (finish_function): Only set DECL_DISREGARD_INLINE_LIMITS |
| on GNU extern inline functions. |
| |
| 2016-07-29 Marek Polacek <polacek@redhat.com> |
| |
| PR c/71583 |
| * c-parser.c (c_parser_postfix_expression_after_paren_type): Also |
| check expr.value. |
| |
| 2016-07-22 Uros Bizjak <ubizjak@gmail.com> |
| |
| * c-typeck.c: Use HOST_WIDE_INT_1 instead of (HOST_WIDE_INT) 1, |
| |
| 2016-07-20 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-decl.c (struct edit_distance_traits<cpp_hashnode *>): Move to |
| spellcheck-tree.h |
| (best_macro_match): Likewise, converting from a typedef to a |
| subclass. |
| (find_closest_macro_cpp_cb): Move to spellcheck-tree.c. |
| (lookup_name_fuzzy): Update for change of best_macro_match to a |
| subclass with a ctor that calls cpp_forall_identifiers. |
| |
| 2016-07-20 David Malcolm <dmalcolm@redhat.com> |
| |
| * c-decl.c (implicit_decl_warning): Update for conversion of |
| return type of lookup_name_fuzzy to const char *. |
| (undeclared_variable): Likewise. |
| (lookup_name_fuzzy): Convert return type from tree to |
| const char *. |
| * c-parser.c (c_parser_declaration_or_fndef): Update for |
| conversion of return type of lookup_name_fuzzy to const char *. |
| (c_parser_parameter_declaration): Likewise. |
| |
| 2016-07-15 Cesar Philippidis <cesar@codesourcery.com> |
| |
| * c-parser.c (c_parser_oacc_declare): Don't scan for |
| GOMP_MAP_POINTER. |
| * c-typeck.c (handle_omp_array_sections): Mark data clauses with |
| GOMP_MAP_FORCE_{PRESENT,TO,FROM,TOFROM} as potentially having |
| zero-length subarrays. |
| |
| 2016-07-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/71858 |
| * c-decl.c (implicit_decl_warning): Use FUZZY_LOOKUP_FUNCTION_NAME |
| instead of FUZZY_LOOKUP_NAME. |
| (lookup_name_fuzzy): For FUZZY_LOOKUP_FUNCTION_NAME consider |
| FUNCTION_DECLs, {VAR,PARM}_DECLs function pointers and macros. |
| |
| 2016-07-14 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/71858 |
| * c-decl.c (lookup_name_fuzzy): Ignore binding->invisible. |
| |
| 2016-07-12 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
| |
| * c-parser.c (c_parser_generic_selection): Make type of variable |
| auto_vec. |
| (c_parser_omp_declare_simd): Likewise. |
| |
| 2016-07-12 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> |
| |
| * c-decl.c (struct c_struct_parse_info): Change member types |
| from vec to auto_vec. |
| (start_struct): Adjust. |
| (finish_struct): Likewise. |
| |
| 2016-07-02 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/71719 |
| * c-typeck.c (mark_exp_read): Handle VIEW_CONVERT_EXPR. |
| |
| 2016-06-29 Thomas Schwinge <thomas@codesourcery.com> |
| |
| * c-parser.c (c_parser_pragma) <PRAGMA_OMP_CANCELLATION_POINT>: |
| Move pragma context checking into... |
| (c_parser_omp_cancellation_point): ... here, and improve |
| diagnostic messages. |
| * c-typeck.c (c_finish_omp_cancel) |
| (c_finish_omp_cancellation_point): Improve diagnostic messages. |
| |
| 2016-06-29 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/71685 |
| * c-typeck.c (c_build_qualified_type): Don't clear |
| C_TYPE_INCOMPLETE_VARS for the main variant. |
| |
| 2016-06-28 Martin Sebor <msebor@redhat.com> |
| |
| PR c/71552 |
| * c-typeck.c (output_init_element): Diagnose incompatible types |
| before non-constant initializers. |
| |
| 2016-06-28 Jakub Jelinek <jakub@redhat.com> |
| |
| * Make-lang.in: Don't cat ../stage_current if it does not exist. |
| |
| 2016-06-23 Andi Kleen <ak@linux.intel.com> |
| |
| * Make-lang.in: Add support for autofdo. |
| |
| 2016-06-22 David Malcolm <dmalcolm@redhat.com> |
| |
| PR c/70339 |
| * c-decl.c: Include spellcheck-tree.h and gcc-rich-location.h. |
| (implicit_decl_warning): When issuing warnings for implicit |
| declarations, attempt to provide a suggestion via |
| lookup_name_fuzzy. |
| (undeclared_variable): Likewise when issuing errors. |
| (lookup_name_in_scope): Likewise. |
| (struct edit_distance_traits<cpp_hashnode *>): New struct. |
| (best_macro_match): New typedef. |
| (find_closest_macro_cpp_cb): New function. |
| (lookup_name_fuzzy): New function. |
| * c-parser.c: Include gcc-rich-location.h. |
| (c_token_starts_typename): Split out case CPP_KEYWORD into... |
| |