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.
