diff options
author | Jakub Jelinek <jakub@redhat.com> | 2024-01-03 11:28:42 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2024-01-03 11:29:39 +0100 |
commit | 8c22aed4b09ce6ffa7bd669377355e38f04614d6 (patch) | |
tree | 6e874a9e0a340c9513d966f6e6185b9952cec95a /gcc/d | |
parent | 87acfc36194e3101b8ebcc599a78e2481224922d (diff) | |
download | gcc-8c22aed4b09ce6ffa7bd669377355e38f04614d6.zip gcc-8c22aed4b09ce6ffa7bd669377355e38f04614d6.tar.gz gcc-8c22aed4b09ce6ffa7bd669377355e38f04614d6.tar.bz2 |
Rotate ChangeLog files.
Rotate ChangeLog files for ChangeLogs with yearly cadence.
Diffstat (limited to 'gcc/d')
-rw-r--r-- | gcc/d/ChangeLog | 489 | ||||
-rw-r--r-- | gcc/d/ChangeLog-2023 | 493 |
2 files changed, 494 insertions, 488 deletions
diff --git a/gcc/d/ChangeLog b/gcc/d/ChangeLog index 5510b99..dc0c0df 100644 --- a/gcc/d/ChangeLog +++ b/gcc/d/ChangeLog @@ -1,492 +1,5 @@ -2023-12-16 Andrew Carlotti <andrew.carlotti@arm.com> - - * d-attribs.cc (attr_target_exclusions): Make - target/target_clones exclusion target-dependent. - (attr_target_clones_exclusions): Ditto. - -2023-12-11 Iain Buclaw <ibuclaw@gdcproject.org> - - * Make-lang.in (D_FRONTEND_OBJS): Rename d/common-string.o to - d/common-smallbuffer.o. - * dmd/MERGE: Merge upstream dmd 2bbf64907c. - * dmd/VERSION: Bump version to v2.106.0. - * modules.cc (layout_moduleinfo_fields): Update for new front-end - interface. - (layout_moduleinfo): Likewise. - -2023-12-05 Richard Sandiford <richard.sandiford@arm.com> - - * d-attribs.cc (d_langhook_common_attribute_table): Add extra braces - to work around PR 16333 in older compilers. - (d_langhook_gnu_attribute_table): Likewise. - -2023-12-02 Richard Sandiford <richard.sandiford@arm.com> - - * d-tree.h (d_langhook_attribute_table): Replace with... - (d_langhook_gnu_attribute_table): ...this. - (d_langhook_common_attribute_table): Change type to - scoped_attribute_specs. - * d-attribs.cc (d_langhook_common_attribute_table): Change type to - scoped_attribute_specs, using... - (d_langhook_common_attributes): ...this as the underlying array. - (d_langhook_attribute_table): Replace with... - (d_langhook_gnu_attributes, d_langhook_gnu_attribute_table): ...these - new globals. - (uda_attribute_p): Update accordingly, and update for new - targetm.attribute_table type. - * d-lang.cc (d_langhook_attribute_table): New global. - (LANG_HOOKS_COMMON_ATTRIBUTE_TABLE): Delete. - -2023-11-21 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd ff57fec515. - * dmd/VERSION: Bump version to v2.106.0-rc.1. - * expr.cc (ExprVisitor::visit (CatAssignExp *)): Update for new - front-end interface. - (ExprVisitor::visit (NewExp *)): Likewise. - * runtime.def (NEWARRAYMTX): Remove. - (NEWARRAYMITX): Remove. - -2023-11-21 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 65a3da148c. - -2023-11-02 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 643b1261bb. - * d-attribs.cc (build_attributes): Update for new front-end interface. - * d-lang.cc (d_post_options): Likewise. - * decl.cc (layout_class_initializer): Likewise. - -2023-10-31 Iain Buclaw <ibuclaw@gdcproject.org> - - * expr.cc (ExprVisitor::visit (NewExp *)): Remove unused assignments. - -2023-10-29 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/110712 - * d-codegen.cc (d_build_call): Update call to convert_for_argument. - * d-convert.cc (is_valist_parameter_type): New function. - (check_valist_conversion): New function. - (convert_for_assignment): Update signature. Add check whether - assigning va_list is permissible. - (convert_for_argument): Likewise. - * d-tree.h (convert_for_assignment): Update signature. - (convert_for_argument): Likewise. - * expr.cc (ExprVisitor::visit (AssignExp *)): Update call to - convert_for_assignment. - -2023-10-29 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd e48bc0987d. - * expr.cc (ExprVisitor::visit (NewExp *)): Update for new front-end - interface. - * runtime.def (NEWARRAYT): Remove. - (NEWARRAYIT): Remove. - -2023-10-28 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/112270 - * d-builtins.cc (d_build_d_type_nodes): Initialize d_bool_false_node, - d_bool_true_node. - * d-codegen.cc (build_array_struct_comparison): Use d_bool_false_node - instead of boolean_false_node. - * d-convert.cc (d_truthvalue_conversion): Use d_bool_false_node and - d_bool_true_node instead of boolean_false_node and boolean_true_node. - * d-tree.h (enum d_tree_index): Add DTI_BOOL_FALSE and DTI_BOOL_TRUE. - (d_bool_false_node): New macro. - (d_bool_true_node): New macro. - * modules.cc (build_dso_cdtor_fn): Use d_bool_false_node and - d_bool_true_node instead of boolean_false_node and boolean_true_node. - (register_moduleinfo): Use d_bool_type instead of boolean_type_node. - -2023-10-28 Iain Buclaw <ibuclaw@gdcproject.org> - - * d-codegen.cc (call_side_effect_free_p): New function. - * d-tree.h (CALL_EXPR_WARN_IF_UNUSED): New macro. - (call_side_effect_free_p): New prototype. - * expr.cc (ExprVisitor::visit (CallExp *)): Set - CALL_EXPR_WARN_IF_UNUSED on matched call expressions. - (ExprVisitor::visit (NewExp *)): Don't dereference the result of an - allocation call here. - * toir.cc (add_stmt): Emit warning when call expression added to - statement list without being used. - -2023-10-22 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd f4be7f6f7b. - * Make-lang.in (D_FRONTEND_OBJS): Rename d/root-rootobject.o to - d/rootobject.o. - -2023-10-17 Iain Buclaw <ibuclaw@gdcproject.org> - - * d-tree.h (intrinsic_code): Update define for DEF_D_INTRINSIC. - (maybe_reject_intrinsic): New prototype. - * expr.cc (ExprVisitor::visit (SymOffExp *)): Call - maybe_reject_intrinsic. - * intrinsics.cc (intrinsic_decl): Add fallback field. - (intrinsic_decls): Update define for DEF_D_INTRINSIC. - (maybe_reject_intrinsic): New function. - * intrinsics.def (DEF_D_LIB_BUILTIN): Update. - (DEF_CTFE_BUILTIN): Update. - (INTRINSIC_BSF): Declare as library builtin. - (INTRINSIC_BSR): Likewise. - (INTRINSIC_BT): Likewise. - (INTRINSIC_BSF64): Likewise. - (INTRINSIC_BSR64): Likewise. - (INTRINSIC_BT64): Likewise. - (INTRINSIC_POPCNT32): Likewise. - (INTRINSIC_POPCNT64): Likewise. - (INTRINSIC_ROL): Likewise. - (INTRINSIC_ROL_TIARG): Likewise. - (INTRINSIC_ROR): Likewise. - (INTRINSIC_ROR_TIARG): Likewise. - (INTRINSIC_ADDS): Likewise. - (INTRINSIC_ADDSL): Likewise. - (INTRINSIC_ADDU): Likewise. - (INTRINSIC_ADDUL): Likewise. - (INTRINSIC_SUBS): Likewise. - (INTRINSIC_SUBSL): Likewise. - (INTRINSIC_SUBU): Likewise. - (INTRINSIC_SUBUL): Likewise. - (INTRINSIC_MULS): Likewise. - (INTRINSIC_MULSL): Likewise. - (INTRINSIC_MULU): Likewise. - (INTRINSIC_MULUI): Likewise. - (INTRINSIC_MULUL): Likewise. - (INTRINSIC_NEGS): Likewise. - (INTRINSIC_NEGSL): Likewise. - (INTRINSIC_TOPRECF): Likewise. - (INTRINSIC_TOPREC): Likewise. - (INTRINSIC_TOPRECL): Likewise. - -2023-10-16 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 4c18eed967. - * d-diagnostic.cc (verrorReport): Update for new front-end interface. - (verrorReportSupplemental): Likewise. - * d-lang.cc (d_init_options): Likewise. - (d_handle_option): Likewise. - (d_post_options): Likewise. - (d_parse_file): Likewise. - * decl.cc (get_symbol_decl): Likewise. - -2023-10-15 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd f9efc98fd7. - * dmd/VERSION: Bump version to v2.105.2. - * d-builtins.cc (build_frontend_type): Update for new front-end - interface. - * d-diagnostic.cc (verrorReport): Don't emit tips when error gagging - is turned on. - * d-lang.cc (d_handle_option): Remove obsolete parameter. - (d_post_options): Likewise. - (d_read_ddoc_files): New function. - (d_generate_ddoc_file): New function. - (d_parse_file): Update for new front-end interface. - * expr.cc (ExprVisitor::visit (AssocArrayLiteralExp *)): Check for new - front-end lowering of static associative arrays. - -2023-10-14 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/111537 - * expr.cc (ExprVisitor::visit (StringExp *)): Include null terminator - in STRING_CST string. - * modules.cc (get_compiler_dso_type): Generate ModuleInfo** type for - the minfo fields. - -2023-10-14 Iain Buclaw <ibuclaw@gdcproject.org> - - * d-lang.cc (d_write_file): New function. - (d_parse_file): Reduce code duplication. - -2023-10-03 David Malcolm <dmalcolm@redhat.com> - - * d-diagnostic.cc (d_diagnostic_report_diagnostic): Use text_info - ctor. - -2023-09-23 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 4574d1728d. - * dmd/VERSION: Bump version to v2.105.0. - * d-diagnostic.cc (verror): Remove. - (verrorSupplemental): Remove. - (vwarning): Remove. - (vwarningSupplemental): Remove. - (vdeprecation): Remove. - (vdeprecationSupplemental): Remove. - (vmessage): Remove. - (vtip): Remove. - (verrorReport): New function. - (verrorReportSupplemental): New function. - * d-lang.cc (d_parse_file): Update for new front-end interface. - * decl.cc (d_mangle_decl): Update for new front-end interface. - * intrinsics.cc (maybe_set_intrinsic): Update for new front-end - interface. - -2023-08-20 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 26f049fb26. - * dmd/VERSION: Bump version to v2.105.0-beta.1. - * d-codegen.cc (get_frameinfo): Check useGC in condition. - * d-lang.cc (d_handle_option): Set obsolete parameter when compiling - with -Wall. - (d_post_options): Set useGC to false when compiling with - -fno-druntime. Propagate obsolete flag to compileEnv. - * expr.cc (ExprVisitor::visit (CatExp *)): Check useGC in condition. - -2023-07-10 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd a88e1335f7. - * dmd/VERSION: Bump version to v2.104.1. - -2023-07-10 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 17ccd12af3. - * dmd/VERSION: Bump version to v2.104.0. - * Make-lang.in (D_FRONTEND_OBJS): Rename d/apply.o to - d/postordervisitor.o. - * d-codegen.cc (make_location_t): Update for new front-end interface. - (build_filename_from_loc): Likewise. - (build_assert_call): Likewise. - (build_array_bounds_call): Likewise. - (build_bounds_index_condition): Likewise. - (build_bounds_slice_condition): Likewise. - (build_frame_type): Likewise. - (get_frameinfo): Likewise. - * d-diagnostic.cc (d_diagnostic_report_diagnostic): Likewise. - * decl.cc (build_decl_tree): Likewise. - (start_function): Likewise. - * expr.cc (ExprVisitor::visit (NewExp *)): Replace code generation of - `new pointer' with front-end lowering. - * runtime.def (NEWITEMT): Remove. - (NEWITEMIT): Remove. - * toir.cc (IRVisitor::visit (LabelStatement *)): Update for new - front-end interface. - * typeinfo.cc (check_typeinfo_type): Likewise. - -2023-07-09 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 28a3b24c2e. - * dmd/VERSION: Bump version to v2.104.0-beta.1. - * d-codegen.cc (build_bounds_slice_condition): Update for new - front-end interface. - * d-lang.cc (d_init_options): Likewise. - (d_handle_option): Likewise. - (d_post_options): Initialize global.compileEnv. - * expr.cc (ExprVisitor::visit (CatExp *)): Replace code generation - with new front-end lowering. - (ExprVisitor::visit (LoweredAssignExp *)): New method. - (ExprVisitor::visit (StructLiteralExp *)): Don't generate static - initializer symbols for structs defined in C sources. - * runtime.def (ARRAYCATT): Remove. - (ARRAYCATNTX): Remove. - -2023-07-07 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/108842 - * decl.cc (DeclVisitor::visit (VarDeclaration *)): Only emit scalar - manifest constants. - (get_symbol_decl): Don't generate CONST_DECL for non-scalar manifest - constants. - * imports.cc (ImportVisitor::visit (VarDeclaration *)): New method. - -2023-07-02 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/110516 - * intrinsics.cc (expand_volatile_load): Set TREE_SIDE_EFFECTS on the - expanded expression. - (expand_volatile_store): Likewise. - -2023-07-01 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/110514 - * decl.cc (get_symbol_decl): Set TREE_READONLY on certain kinds of - const and immutable variables. - * expr.cc (ExprVisitor::visit (ArrayLiteralExp *)): Set TREE_READONLY - on immutable dynamic array literals. - -2023-07-01 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/110471 - * d-builtins.cc (d_init_versions): Predefine D_ModuleInfo, - D_Exceptions, and D_TypeInfo only if feature is enabled. - * lang.opt: Add -fexceptions. - -2023-06-28 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/106977 - PR target/110406 - * types.cc (finish_aggregate_mode): New function. - (finish_incomplete_fields): Call finish_aggregate_mode. - (finish_aggregate_type): Replace call to compute_record_mode with - finish_aggregate_mode. - -2023-06-28 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/110193 - * types.cc (d_signed_or_unsigned_type): Handle being called with any - vector or non-integral type. - -2023-06-26 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/110359 - * d-convert.cc (convert_for_rvalue): Only apply the @safe boolean - conversion to boolean fields of a union. - (convert_for_condition): Call convert_for_rvalue in the default case. - -2023-06-25 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd a45f4e9f43. - * dmd/VERSION: Bump version to v2.103.1. - -2023-06-15 Marek Polacek <polacek@redhat.com> - - * Make-lang.in: Remove NO_PIE_CFLAGS. - -2023-06-05 Iain Buclaw <ibuclaw@gdcproject.org> - - * gdc.texi (Warnings): Document -Wextra and -Wmismatched-special-enum. - * implement-d.texi (Special Enums): Add reference to warning option - -Wmismatched-special-enum. - * lang.opt: Add -Wextra and -Wmismatched-special-enum. - * types.cc (TypeVisitor::visit (TypeEnum *)): Warn when declared - special enum size mismatches its intrinsic type. - -2023-05-18 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> - - * d-codegen.cc (underlying_complex_expr): Use _P defines from tree.h. - * d-convert.cc (convert): Ditto. - (convert_for_rvalue): Ditto. - -2023-03-17 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 5f7552bb28. - * dmd/VERSION: Bump version to v2.103.0-rc.1. - -2023-03-16 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 4ca4140e58. - * dmd/VERSION: Bump version to v2.103.0-beta.1. - * Make-lang.in (D_FRONTEND_OBJS): Add d/errorsink.o. - * d-ctfloat.cc (CTFloat::sprint): Update signature for new front-end - interface. - * d-frontend.cc (getTypeInfoType): Likewise. - * d-lang.cc (d_handle_option): Remove handling of -fpreview=dip25 and - -frevert=dip25. - (d_post_options): Remove enabling of sealed references language - feature when scoped pointers is enabled. - * d-tree.h (create_typeinfo): Update signature. - * decl.cc (DeclVisitor::finish_vtable): Update for new front-end - interface. - (DeclVisitor::visit (VarDeclaration *)): Likewise. - (DeclVisitor::visit (FuncDeclaration *)): Check skipCodegen to see if - front-end explicitly requested not to generate code. - * expr.cc (ExprVisitor::visit (NewExp *)): Update for new front-end - interface. - * lang.opt (fpreview=dip25): Remove. - (frevert=dip25): Remove. - * modules.cc (layout_moduleinfo_fields): Update for new front-end - interface. - (layout_moduleinfo): Likewise. - * runtime.def (NEWCLASS): Remove. - * toir.cc (IRVisitor::visit (IfStatement *)): Don't generate IR for if - statement list when condition is `__ctfe'. - * typeinfo.cc (create_typeinfo): Add generate parameter. - * types.cc (layout_aggregate_members): Update for new front-end - interface. - -2023-03-16 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/109144 - * d-codegen.cc (build_frame_type): Set frame field and type alignment. - -2023-03-14 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/109108 - * decl.cc (function_defined_in_root_p): Remove. - (get_symbol_decl): Set DECL_LAMBDA_FUNCTION_P on function literals. - (start_function): Unconditionally unset DECL_EXTERNAL - (set_linkage_for_decl): Give lambda functions one-only linkage. - -2023-03-13 Iain Buclaw <ibuclaw@gdcproject.org> - - * decl.cc (finish_thunk): Unset DECL_EXTERNAL on thunk. - (make_thunk): Set DECL_EXTERNAL on thunk, don't call build_decl_tree. - (finish_function): Call finish_thunk on forward referenced thunks. - -2023-03-13 Iain Buclaw <ibuclaw@gdcproject.org> - - * decl.cc (get_fndecl_result): New function. - (get_fndecl_arguments): New function. - (DeclVisitor::visit (FuncDeclaration *)): Adjust to call - get_fndecl_arguments. - (make_thunk): Adjust to call get_fndecl_arguments and - get_fndecl_result. - (start_function): Adjust to call get_fndecl_result. - -2023-03-03 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/108763 - * implement-d.texi (Missing Features): Document that TypeInfo-based - va_arg is not implemented. - -2023-03-03 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/108946 - * d-target.cc (Target::isVectorOpSupported): Allow identity ops. - * expr.cc (ExprVisitor::visit (IdentityExp *)): Handle vector identity - comparisons. - -2023-03-03 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/108877 - * imports.cc (ImportVisitor::visit (EnumDeclaration *)): Call - make_import on TYPE_MAIN_VARIANT. - (ImportVisitor::visit (AggregateDeclaration *)): Likewise. - (ImportVisitor::visit (ClassDeclaration *)): Likewise. - -2023-03-03 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/108945 - * d-codegen.cc (build_boolop): Evaluate vector comparison as - the truth_type_for vector type. - -2023-02-23 Arsen Arsenović <arsen@aarsen.me> - - * implement-d.texi: Reorder index entries around @items. - -2023-02-23 Arsen Arsenović <arsen@aarsen.me> - - * gdc.texi: Reorder @opindex commands to precede @items they - relate to. - -2023-02-21 Iain Buclaw <ibuclaw@gdcproject.org> - - * Make-lang.in (D_FRONTEND_OBJS): Add d/location.o. - * d-lang.cc (d_init_options): Update for new front-end interface. - (d_post_options): Call Loc::set after handling options. - * dmd/MERGE: Merge upstream dmd 09faa4eacd. - * dmd/VERSION: Bump version to v2.102.0-beta.1. - -2023-02-21 Iain Buclaw <ibuclaw@gdcproject.org> - - * d-codegen.cc (d_build_call): Remove front-end expansion of - side-effects in a call expression. - * d-gimplify.cc (d_gimplify_call_expr): Gimplify the callee before its - arguments. - -2023-02-21 Iain Buclaw <ibuclaw@gdcproject.org> - - * decl.cc (DeclVisitor::visit (FuncDeclaration *)): Set - doing_semantic_analysis_p before calling functionSemantic3. - -2023-01-02 Jakub Jelinek <jakub@redhat.com> - - * gdc.texi: Bump @copyrights-d year. - -Copyright (C) 2023 Free Software Foundation, Inc. +Copyright (C) 2024 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gcc/d/ChangeLog-2023 b/gcc/d/ChangeLog-2023 new file mode 100644 index 0000000..5510b99 --- /dev/null +++ b/gcc/d/ChangeLog-2023 @@ -0,0 +1,493 @@ +2023-12-16 Andrew Carlotti <andrew.carlotti@arm.com> + + * d-attribs.cc (attr_target_exclusions): Make + target/target_clones exclusion target-dependent. + (attr_target_clones_exclusions): Ditto. + +2023-12-11 Iain Buclaw <ibuclaw@gdcproject.org> + + * Make-lang.in (D_FRONTEND_OBJS): Rename d/common-string.o to + d/common-smallbuffer.o. + * dmd/MERGE: Merge upstream dmd 2bbf64907c. + * dmd/VERSION: Bump version to v2.106.0. + * modules.cc (layout_moduleinfo_fields): Update for new front-end + interface. + (layout_moduleinfo): Likewise. + +2023-12-05 Richard Sandiford <richard.sandiford@arm.com> + + * d-attribs.cc (d_langhook_common_attribute_table): Add extra braces + to work around PR 16333 in older compilers. + (d_langhook_gnu_attribute_table): Likewise. + +2023-12-02 Richard Sandiford <richard.sandiford@arm.com> + + * d-tree.h (d_langhook_attribute_table): Replace with... + (d_langhook_gnu_attribute_table): ...this. + (d_langhook_common_attribute_table): Change type to + scoped_attribute_specs. + * d-attribs.cc (d_langhook_common_attribute_table): Change type to + scoped_attribute_specs, using... + (d_langhook_common_attributes): ...this as the underlying array. + (d_langhook_attribute_table): Replace with... + (d_langhook_gnu_attributes, d_langhook_gnu_attribute_table): ...these + new globals. + (uda_attribute_p): Update accordingly, and update for new + targetm.attribute_table type. + * d-lang.cc (d_langhook_attribute_table): New global. + (LANG_HOOKS_COMMON_ATTRIBUTE_TABLE): Delete. + +2023-11-21 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd ff57fec515. + * dmd/VERSION: Bump version to v2.106.0-rc.1. + * expr.cc (ExprVisitor::visit (CatAssignExp *)): Update for new + front-end interface. + (ExprVisitor::visit (NewExp *)): Likewise. + * runtime.def (NEWARRAYMTX): Remove. + (NEWARRAYMITX): Remove. + +2023-11-21 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 65a3da148c. + +2023-11-02 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 643b1261bb. + * d-attribs.cc (build_attributes): Update for new front-end interface. + * d-lang.cc (d_post_options): Likewise. + * decl.cc (layout_class_initializer): Likewise. + +2023-10-31 Iain Buclaw <ibuclaw@gdcproject.org> + + * expr.cc (ExprVisitor::visit (NewExp *)): Remove unused assignments. + +2023-10-29 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/110712 + * d-codegen.cc (d_build_call): Update call to convert_for_argument. + * d-convert.cc (is_valist_parameter_type): New function. + (check_valist_conversion): New function. + (convert_for_assignment): Update signature. Add check whether + assigning va_list is permissible. + (convert_for_argument): Likewise. + * d-tree.h (convert_for_assignment): Update signature. + (convert_for_argument): Likewise. + * expr.cc (ExprVisitor::visit (AssignExp *)): Update call to + convert_for_assignment. + +2023-10-29 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd e48bc0987d. + * expr.cc (ExprVisitor::visit (NewExp *)): Update for new front-end + interface. + * runtime.def (NEWARRAYT): Remove. + (NEWARRAYIT): Remove. + +2023-10-28 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/112270 + * d-builtins.cc (d_build_d_type_nodes): Initialize d_bool_false_node, + d_bool_true_node. + * d-codegen.cc (build_array_struct_comparison): Use d_bool_false_node + instead of boolean_false_node. + * d-convert.cc (d_truthvalue_conversion): Use d_bool_false_node and + d_bool_true_node instead of boolean_false_node and boolean_true_node. + * d-tree.h (enum d_tree_index): Add DTI_BOOL_FALSE and DTI_BOOL_TRUE. + (d_bool_false_node): New macro. + (d_bool_true_node): New macro. + * modules.cc (build_dso_cdtor_fn): Use d_bool_false_node and + d_bool_true_node instead of boolean_false_node and boolean_true_node. + (register_moduleinfo): Use d_bool_type instead of boolean_type_node. + +2023-10-28 Iain Buclaw <ibuclaw@gdcproject.org> + + * d-codegen.cc (call_side_effect_free_p): New function. + * d-tree.h (CALL_EXPR_WARN_IF_UNUSED): New macro. + (call_side_effect_free_p): New prototype. + * expr.cc (ExprVisitor::visit (CallExp *)): Set + CALL_EXPR_WARN_IF_UNUSED on matched call expressions. + (ExprVisitor::visit (NewExp *)): Don't dereference the result of an + allocation call here. + * toir.cc (add_stmt): Emit warning when call expression added to + statement list without being used. + +2023-10-22 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd f4be7f6f7b. + * Make-lang.in (D_FRONTEND_OBJS): Rename d/root-rootobject.o to + d/rootobject.o. + +2023-10-17 Iain Buclaw <ibuclaw@gdcproject.org> + + * d-tree.h (intrinsic_code): Update define for DEF_D_INTRINSIC. + (maybe_reject_intrinsic): New prototype. + * expr.cc (ExprVisitor::visit (SymOffExp *)): Call + maybe_reject_intrinsic. + * intrinsics.cc (intrinsic_decl): Add fallback field. + (intrinsic_decls): Update define for DEF_D_INTRINSIC. + (maybe_reject_intrinsic): New function. + * intrinsics.def (DEF_D_LIB_BUILTIN): Update. + (DEF_CTFE_BUILTIN): Update. + (INTRINSIC_BSF): Declare as library builtin. + (INTRINSIC_BSR): Likewise. + (INTRINSIC_BT): Likewise. + (INTRINSIC_BSF64): Likewise. + (INTRINSIC_BSR64): Likewise. + (INTRINSIC_BT64): Likewise. + (INTRINSIC_POPCNT32): Likewise. + (INTRINSIC_POPCNT64): Likewise. + (INTRINSIC_ROL): Likewise. + (INTRINSIC_ROL_TIARG): Likewise. + (INTRINSIC_ROR): Likewise. + (INTRINSIC_ROR_TIARG): Likewise. + (INTRINSIC_ADDS): Likewise. + (INTRINSIC_ADDSL): Likewise. + (INTRINSIC_ADDU): Likewise. + (INTRINSIC_ADDUL): Likewise. + (INTRINSIC_SUBS): Likewise. + (INTRINSIC_SUBSL): Likewise. + (INTRINSIC_SUBU): Likewise. + (INTRINSIC_SUBUL): Likewise. + (INTRINSIC_MULS): Likewise. + (INTRINSIC_MULSL): Likewise. + (INTRINSIC_MULU): Likewise. + (INTRINSIC_MULUI): Likewise. + (INTRINSIC_MULUL): Likewise. + (INTRINSIC_NEGS): Likewise. + (INTRINSIC_NEGSL): Likewise. + (INTRINSIC_TOPRECF): Likewise. + (INTRINSIC_TOPREC): Likewise. + (INTRINSIC_TOPRECL): Likewise. + +2023-10-16 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 4c18eed967. + * d-diagnostic.cc (verrorReport): Update for new front-end interface. + (verrorReportSupplemental): Likewise. + * d-lang.cc (d_init_options): Likewise. + (d_handle_option): Likewise. + (d_post_options): Likewise. + (d_parse_file): Likewise. + * decl.cc (get_symbol_decl): Likewise. + +2023-10-15 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd f9efc98fd7. + * dmd/VERSION: Bump version to v2.105.2. + * d-builtins.cc (build_frontend_type): Update for new front-end + interface. + * d-diagnostic.cc (verrorReport): Don't emit tips when error gagging + is turned on. + * d-lang.cc (d_handle_option): Remove obsolete parameter. + (d_post_options): Likewise. + (d_read_ddoc_files): New function. + (d_generate_ddoc_file): New function. + (d_parse_file): Update for new front-end interface. + * expr.cc (ExprVisitor::visit (AssocArrayLiteralExp *)): Check for new + front-end lowering of static associative arrays. + +2023-10-14 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/111537 + * expr.cc (ExprVisitor::visit (StringExp *)): Include null terminator + in STRING_CST string. + * modules.cc (get_compiler_dso_type): Generate ModuleInfo** type for + the minfo fields. + +2023-10-14 Iain Buclaw <ibuclaw@gdcproject.org> + + * d-lang.cc (d_write_file): New function. + (d_parse_file): Reduce code duplication. + +2023-10-03 David Malcolm <dmalcolm@redhat.com> + + * d-diagnostic.cc (d_diagnostic_report_diagnostic): Use text_info + ctor. + +2023-09-23 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 4574d1728d. + * dmd/VERSION: Bump version to v2.105.0. + * d-diagnostic.cc (verror): Remove. + (verrorSupplemental): Remove. + (vwarning): Remove. + (vwarningSupplemental): Remove. + (vdeprecation): Remove. + (vdeprecationSupplemental): Remove. + (vmessage): Remove. + (vtip): Remove. + (verrorReport): New function. + (verrorReportSupplemental): New function. + * d-lang.cc (d_parse_file): Update for new front-end interface. + * decl.cc (d_mangle_decl): Update for new front-end interface. + * intrinsics.cc (maybe_set_intrinsic): Update for new front-end + interface. + +2023-08-20 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 26f049fb26. + * dmd/VERSION: Bump version to v2.105.0-beta.1. + * d-codegen.cc (get_frameinfo): Check useGC in condition. + * d-lang.cc (d_handle_option): Set obsolete parameter when compiling + with -Wall. + (d_post_options): Set useGC to false when compiling with + -fno-druntime. Propagate obsolete flag to compileEnv. + * expr.cc (ExprVisitor::visit (CatExp *)): Check useGC in condition. + +2023-07-10 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd a88e1335f7. + * dmd/VERSION: Bump version to v2.104.1. + +2023-07-10 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 17ccd12af3. + * dmd/VERSION: Bump version to v2.104.0. + * Make-lang.in (D_FRONTEND_OBJS): Rename d/apply.o to + d/postordervisitor.o. + * d-codegen.cc (make_location_t): Update for new front-end interface. + (build_filename_from_loc): Likewise. + (build_assert_call): Likewise. + (build_array_bounds_call): Likewise. + (build_bounds_index_condition): Likewise. + (build_bounds_slice_condition): Likewise. + (build_frame_type): Likewise. + (get_frameinfo): Likewise. + * d-diagnostic.cc (d_diagnostic_report_diagnostic): Likewise. + * decl.cc (build_decl_tree): Likewise. + (start_function): Likewise. + * expr.cc (ExprVisitor::visit (NewExp *)): Replace code generation of + `new pointer' with front-end lowering. + * runtime.def (NEWITEMT): Remove. + (NEWITEMIT): Remove. + * toir.cc (IRVisitor::visit (LabelStatement *)): Update for new + front-end interface. + * typeinfo.cc (check_typeinfo_type): Likewise. + +2023-07-09 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 28a3b24c2e. + * dmd/VERSION: Bump version to v2.104.0-beta.1. + * d-codegen.cc (build_bounds_slice_condition): Update for new + front-end interface. + * d-lang.cc (d_init_options): Likewise. + (d_handle_option): Likewise. + (d_post_options): Initialize global.compileEnv. + * expr.cc (ExprVisitor::visit (CatExp *)): Replace code generation + with new front-end lowering. + (ExprVisitor::visit (LoweredAssignExp *)): New method. + (ExprVisitor::visit (StructLiteralExp *)): Don't generate static + initializer symbols for structs defined in C sources. + * runtime.def (ARRAYCATT): Remove. + (ARRAYCATNTX): Remove. + +2023-07-07 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/108842 + * decl.cc (DeclVisitor::visit (VarDeclaration *)): Only emit scalar + manifest constants. + (get_symbol_decl): Don't generate CONST_DECL for non-scalar manifest + constants. + * imports.cc (ImportVisitor::visit (VarDeclaration *)): New method. + +2023-07-02 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/110516 + * intrinsics.cc (expand_volatile_load): Set TREE_SIDE_EFFECTS on the + expanded expression. + (expand_volatile_store): Likewise. + +2023-07-01 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/110514 + * decl.cc (get_symbol_decl): Set TREE_READONLY on certain kinds of + const and immutable variables. + * expr.cc (ExprVisitor::visit (ArrayLiteralExp *)): Set TREE_READONLY + on immutable dynamic array literals. + +2023-07-01 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/110471 + * d-builtins.cc (d_init_versions): Predefine D_ModuleInfo, + D_Exceptions, and D_TypeInfo only if feature is enabled. + * lang.opt: Add -fexceptions. + +2023-06-28 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/106977 + PR target/110406 + * types.cc (finish_aggregate_mode): New function. + (finish_incomplete_fields): Call finish_aggregate_mode. + (finish_aggregate_type): Replace call to compute_record_mode with + finish_aggregate_mode. + +2023-06-28 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/110193 + * types.cc (d_signed_or_unsigned_type): Handle being called with any + vector or non-integral type. + +2023-06-26 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/110359 + * d-convert.cc (convert_for_rvalue): Only apply the @safe boolean + conversion to boolean fields of a union. + (convert_for_condition): Call convert_for_rvalue in the default case. + +2023-06-25 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd a45f4e9f43. + * dmd/VERSION: Bump version to v2.103.1. + +2023-06-15 Marek Polacek <polacek@redhat.com> + + * Make-lang.in: Remove NO_PIE_CFLAGS. + +2023-06-05 Iain Buclaw <ibuclaw@gdcproject.org> + + * gdc.texi (Warnings): Document -Wextra and -Wmismatched-special-enum. + * implement-d.texi (Special Enums): Add reference to warning option + -Wmismatched-special-enum. + * lang.opt: Add -Wextra and -Wmismatched-special-enum. + * types.cc (TypeVisitor::visit (TypeEnum *)): Warn when declared + special enum size mismatches its intrinsic type. + +2023-05-18 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> + + * d-codegen.cc (underlying_complex_expr): Use _P defines from tree.h. + * d-convert.cc (convert): Ditto. + (convert_for_rvalue): Ditto. + +2023-03-17 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 5f7552bb28. + * dmd/VERSION: Bump version to v2.103.0-rc.1. + +2023-03-16 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 4ca4140e58. + * dmd/VERSION: Bump version to v2.103.0-beta.1. + * Make-lang.in (D_FRONTEND_OBJS): Add d/errorsink.o. + * d-ctfloat.cc (CTFloat::sprint): Update signature for new front-end + interface. + * d-frontend.cc (getTypeInfoType): Likewise. + * d-lang.cc (d_handle_option): Remove handling of -fpreview=dip25 and + -frevert=dip25. + (d_post_options): Remove enabling of sealed references language + feature when scoped pointers is enabled. + * d-tree.h (create_typeinfo): Update signature. + * decl.cc (DeclVisitor::finish_vtable): Update for new front-end + interface. + (DeclVisitor::visit (VarDeclaration *)): Likewise. + (DeclVisitor::visit (FuncDeclaration *)): Check skipCodegen to see if + front-end explicitly requested not to generate code. + * expr.cc (ExprVisitor::visit (NewExp *)): Update for new front-end + interface. + * lang.opt (fpreview=dip25): Remove. + (frevert=dip25): Remove. + * modules.cc (layout_moduleinfo_fields): Update for new front-end + interface. + (layout_moduleinfo): Likewise. + * runtime.def (NEWCLASS): Remove. + * toir.cc (IRVisitor::visit (IfStatement *)): Don't generate IR for if + statement list when condition is `__ctfe'. + * typeinfo.cc (create_typeinfo): Add generate parameter. + * types.cc (layout_aggregate_members): Update for new front-end + interface. + +2023-03-16 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/109144 + * d-codegen.cc (build_frame_type): Set frame field and type alignment. + +2023-03-14 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/109108 + * decl.cc (function_defined_in_root_p): Remove. + (get_symbol_decl): Set DECL_LAMBDA_FUNCTION_P on function literals. + (start_function): Unconditionally unset DECL_EXTERNAL + (set_linkage_for_decl): Give lambda functions one-only linkage. + +2023-03-13 Iain Buclaw <ibuclaw@gdcproject.org> + + * decl.cc (finish_thunk): Unset DECL_EXTERNAL on thunk. + (make_thunk): Set DECL_EXTERNAL on thunk, don't call build_decl_tree. + (finish_function): Call finish_thunk on forward referenced thunks. + +2023-03-13 Iain Buclaw <ibuclaw@gdcproject.org> + + * decl.cc (get_fndecl_result): New function. + (get_fndecl_arguments): New function. + (DeclVisitor::visit (FuncDeclaration *)): Adjust to call + get_fndecl_arguments. + (make_thunk): Adjust to call get_fndecl_arguments and + get_fndecl_result. + (start_function): Adjust to call get_fndecl_result. + +2023-03-03 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/108763 + * implement-d.texi (Missing Features): Document that TypeInfo-based + va_arg is not implemented. + +2023-03-03 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/108946 + * d-target.cc (Target::isVectorOpSupported): Allow identity ops. + * expr.cc (ExprVisitor::visit (IdentityExp *)): Handle vector identity + comparisons. + +2023-03-03 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/108877 + * imports.cc (ImportVisitor::visit (EnumDeclaration *)): Call + make_import on TYPE_MAIN_VARIANT. + (ImportVisitor::visit (AggregateDeclaration *)): Likewise. + (ImportVisitor::visit (ClassDeclaration *)): Likewise. + +2023-03-03 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/108945 + * d-codegen.cc (build_boolop): Evaluate vector comparison as + the truth_type_for vector type. + +2023-02-23 Arsen Arsenović <arsen@aarsen.me> + + * implement-d.texi: Reorder index entries around @items. + +2023-02-23 Arsen Arsenović <arsen@aarsen.me> + + * gdc.texi: Reorder @opindex commands to precede @items they + relate to. + +2023-02-21 Iain Buclaw <ibuclaw@gdcproject.org> + + * Make-lang.in (D_FRONTEND_OBJS): Add d/location.o. + * d-lang.cc (d_init_options): Update for new front-end interface. + (d_post_options): Call Loc::set after handling options. + * dmd/MERGE: Merge upstream dmd 09faa4eacd. + * dmd/VERSION: Bump version to v2.102.0-beta.1. + +2023-02-21 Iain Buclaw <ibuclaw@gdcproject.org> + + * d-codegen.cc (d_build_call): Remove front-end expansion of + side-effects in a call expression. + * d-gimplify.cc (d_gimplify_call_expr): Gimplify the callee before its + arguments. + +2023-02-21 Iain Buclaw <ibuclaw@gdcproject.org> + + * decl.cc (DeclVisitor::visit (FuncDeclaration *)): Set + doing_semantic_analysis_p before calling functionSemantic3. + +2023-01-02 Jakub Jelinek <jakub@redhat.com> + + * gdc.texi: Bump @copyrights-d year. + + +Copyright (C) 2023 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. |