xref: /netbsd-src/external/gpl3/gcc/dist/gcc/d/ChangeLog (revision 0a3071956a3a9fdebdbf7f338cf2d439b45fc728)
12024-06-20  Release Manager
2
3	* GCC 12.4.0 released.
4
52024-03-10  Iain Buclaw  <ibuclaw@gdcproject.org>
6
7	Backported from master:
8	2024-03-10  Iain Buclaw  <ibuclaw@gdcproject.org>
9
10	PR d/112285
11	PR d/112290
12	* d-target.cc (Target::preferPassByRef): Return true for all static
13	array and struct types.
14
152024-03-03  Iain Buclaw  <ibuclaw@gdcproject.org>
16
17	Backported from master:
18	2024-03-03  Iain Buclaw  <ibuclaw@gdcproject.org>
19
20	PR d/114171
21	* d-codegen.cc (lower_struct_comparison): Keep alignment of original
22	type in reinterpret cast for comparison.
23
242024-03-03  Iain Buclaw  <ibuclaw@gdcproject.org>
25
26	Backported from master:
27	2024-02-12  Iain Buclaw  <ibuclaw@gdcproject.org>
28
29	PR d/113758
30	* d-codegen.cc (d_build_call): Force a TARGET_EXPR when callee
31	destorys its arguments.
32	* decl.cc (DeclVisitor::visit (VarDeclaration *)): Set
33	SET_DECL_VALUE_EXPR on the temporary variable to make it a placeholder
34	for the TARGET_EXPR_SLOT.
35
362024-03-03  Iain Buclaw  <ibuclaw@gdcproject.org>
37
38	Backported from master:
39	2024-02-12  Iain Buclaw  <ibuclaw@gdcproject.org>
40
41	PR d/113125
42	* types.cc (TypeVisitor::visit (TypeStruct *)): Generate TYPE_DECL and
43	apply UDAs to opaque struct declarations.
44
452023-10-29  Iain Buclaw  <ibuclaw@gdcproject.org>
46
47	Backported from master:
48	2023-10-29  Iain Buclaw  <ibuclaw@gdcproject.org>
49
50	PR d/110712
51	* d-codegen.cc (d_build_call): Update call to convert_for_argument.
52	* d-convert.cc (is_valist_parameter_type): New function.
53	(check_valist_conversion): New function.
54	(convert_for_assignment): Update signature.  Add check whether
55	assigning va_list is permissible.
56	(convert_for_argument): Likewise.
57	* d-tree.h (convert_for_assignment): Update signature.
58	(convert_for_argument): Likewise.
59	* expr.cc (ExprVisitor::visit (AssignExp *)): Update call to
60	convert_for_assignment.
61
622023-10-28  Iain Buclaw  <ibuclaw@gdcproject.org>
63
64	Backported from master:
65	2023-10-28  Iain Buclaw  <ibuclaw@gdcproject.org>
66
67	PR d/112270
68	* d-builtins.cc (d_build_d_type_nodes): Initialize d_bool_false_node,
69	d_bool_true_node.
70	* d-codegen.cc (build_array_struct_comparison): Use d_bool_false_node
71	instead of boolean_false_node.
72	* d-convert.cc (d_truthvalue_conversion): Use d_bool_false_node and
73	d_bool_true_node instead of boolean_false_node and boolean_true_node.
74	* d-tree.h (enum d_tree_index): Add DTI_BOOL_FALSE and DTI_BOOL_TRUE.
75	(d_bool_false_node): New macro.
76	(d_bool_true_node): New macro.
77	* modules.cc (build_dso_cdtor_fn): Use d_bool_false_node and
78	d_bool_true_node instead of boolean_false_node and boolean_true_node.
79	(register_moduleinfo): Use d_bool_type instead of boolean_type_node.
80
812023-08-15  Iain Buclaw  <ibuclaw@gdcproject.org>
82
83	PR d/110959
84	* dmd/canthrow.d (Dsymbol_canThrow): Use foreachVar.
85	* dmd/declaration.d (TupleDeclaration::needThis): Likewise.
86	(TupleDeclaration::foreachVar): New function.
87	(VarDeclaration::setFieldOffset): Use foreachVar.
88	* dmd/dinterpret.d (Interpreter::visit (DeclarationExp)): Likewise.
89	* dmd/dsymbolsem.d (DsymbolSemanticVisitor::visit (VarDeclaration)):
90	Don't push tuple field members to the scope symbol table.
91	(determineFields): Handle pushing tuple field members here instead.
92	* dmd/dtoh.d (ToCppBuffer::visit (VarDeclaration)): Visit all tuple
93	fields.
94	(ToCppBuffer::visit (TupleDeclaration)): New function.
95	* dmd/expression.d (expandAliasThisTuples): Use foreachVar.
96	* dmd/foreachvar.d (VarWalker::visit (DeclarationExp)): Likewise.
97	* dmd/ob.d (genKill): Likewise.
98	(checkObErrors): Likewise.
99	* dmd/semantic2.d (Semantic2Visitor::visit (TupleDeclaration)): Visit
100	all tuple fields.
101
1022023-07-07  Iain Buclaw  <ibuclaw@gdcproject.org>
103
104	Backported from master:
105	2023-07-07  Iain Buclaw  <ibuclaw@gdcproject.org>
106
107	PR d/108842
108	* decl.cc (DeclVisitor::visit (VarDeclaration *)): Only emit scalar
109	manifest constants.
110	(get_symbol_decl): Don't generate CONST_DECL for non-scalar manifest
111	constants.
112	* imports.cc (ImportVisitor::visit (VarDeclaration *)): New method.
113
1142023-07-02  Iain Buclaw  <ibuclaw@gdcproject.org>
115
116	Backported from master:
117	2023-07-02  Iain Buclaw  <ibuclaw@gdcproject.org>
118
119	PR d/110516
120	* intrinsics.cc (expand_volatile_load): Set TREE_SIDE_EFFECTS on the
121	expanded expression.
122	(expand_volatile_store): Likewise.
123
1242023-07-01  Iain Buclaw  <ibuclaw@gdcproject.org>
125
126	Backported from master:
127	2023-07-01  Iain Buclaw  <ibuclaw@gdcproject.org>
128
129	PR d/110514
130	* decl.cc (get_symbol_decl): Set TREE_READONLY on certain kinds of
131	const and immutable variables.
132	* expr.cc (ExprVisitor::visit (ArrayLiteralExp *)): Set TREE_READONLY
133	on immutable dynamic array literals.
134
1352023-06-26  Iain Buclaw  <ibuclaw@gdcproject.org>
136
137	Backported from master:
138	2023-06-26  Iain Buclaw  <ibuclaw@gdcproject.org>
139
140	PR d/110359
141	* d-convert.cc (convert_for_rvalue): Only apply the @safe boolean
142	conversion to boolean fields of a union.
143	(convert_for_condition): Call convert_for_rvalue in the default case.
144
1452023-06-26  Iain Buclaw  <ibuclaw@gdcproject.org>
146
147	Backported from master:
148	2023-06-26  Iain Buclaw  <ibuclaw@gdcproject.org>
149
150	PR d/110113
151	* dmd/escape.d (checkMutableArguments): Always allocate new buffer for
152	computing escapeBy.
153
1542023-06-06  Iain Buclaw  <ibuclaw@gdcproject.org>
155
156	* dmd/MERGE: Merge upstream dmd 316b89f1e3.
157	* dmd/VERSION: Bump version to v2.100.2.
158
1592023-05-08  Release Manager
160
161	* GCC 12.3.0 released.
162
1632023-03-16  Iain Buclaw  <ibuclaw@gdcproject.org>
164
165	Backported from master:
166	2023-03-16  Iain Buclaw  <ibuclaw@gdcproject.org>
167
168	PR d/109144
169	* d-codegen.cc (build_frame_type): Set frame field and type alignment.
170
1712023-03-14  Iain Buclaw  <ibuclaw@gdcproject.org>
172
173	Backported from master:
174	2023-03-14  Iain Buclaw  <ibuclaw@gdcproject.org>
175
176	PR d/109108
177	* decl.cc (function_defined_in_root_p): Remove.
178	(get_symbol_decl): Set DECL_LAMBDA_FUNCTION_P on function literals.
179	(start_function): Unconditionally unset DECL_EXTERNAL
180	(set_linkage_for_decl): Give lambda functions one-only linkage.
181
1822023-03-13  Iain Buclaw  <ibuclaw@gdcproject.org>
183
184	Backported from master:
185	2023-03-13  Iain Buclaw  <ibuclaw@gdcproject.org>
186
187	* decl.cc (finish_thunk): Unset DECL_EXTERNAL on thunk.
188	(make_thunk): Set DECL_EXTERNAL on thunk, don't call build_decl_tree.
189	(finish_function): Call finish_thunk on forward referenced thunks.
190
1912023-03-13  Iain Buclaw  <ibuclaw@gdcproject.org>
192
193	Backported from master:
194	2023-03-13  Iain Buclaw  <ibuclaw@gdcproject.org>
195
196	* decl.cc (get_fndecl_result): New function.
197	(get_fndecl_arguments): New function.
198	(DeclVisitor::visit (FuncDeclaration *)): Adjust to call
199	get_fndecl_arguments.
200	(make_thunk): Adjust to call get_fndecl_arguments and
201	get_fndecl_result.
202	(start_function): Adjust to call get_fndecl_result.
203
2042023-03-03  Iain Buclaw  <ibuclaw@gdcproject.org>
205
206	Backported from master:
207	2023-03-03  Iain Buclaw  <ibuclaw@gdcproject.org>
208
209	PR d/108877
210	* imports.cc (ImportVisitor::visit (EnumDeclaration *)): Call
211	make_import on TYPE_MAIN_VARIANT.
212	(ImportVisitor::visit (AggregateDeclaration *)): Likewise.
213	(ImportVisitor::visit (ClassDeclaration *)): Likewise.
214
2152022-12-12  Iain Buclaw  <ibuclaw@gdcproject.org>
216
217	Backported from master:
218	2022-12-12  Iain Buclaw  <ibuclaw@gdcproject.org>
219
220	PR d/108055
221	* decl.cc (function_defined_in_root_p): Check all enclosing template
222	instances for definition in a root module.
223	(function_needs_inline_definition_p): Replace call to
224	function_defined_in_root_p with test for outer module `isRoot'.
225
2262022-12-11  Iain Buclaw  <ibuclaw@gdcproject.org>
227
228	* imports.cc (ImportVisitor::visit (OverloadSet *)): Remove "final"
229	and "override" from visitor method.
230
2312022-12-11  Iain Buclaw  <ibuclaw@gdcproject.org>
232
233	Backported from master:
234	2022-12-11  Iain Buclaw  <ibuclaw@gdcproject.org>
235
236	PR d/108050
237	* decl.cc (DeclVisitor::visit (Import *)): Handle build_import_decl
238	returning a TREE_LIST.
239	* imports.cc (ImportVisitor::visit (OverloadSet *)): New override.
240
2412022-11-30  Iain Buclaw  <ibuclaw@gdcproject.org>
242
243	Backported from master:
244	2022-11-30  Iain Buclaw  <ibuclaw@gdcproject.org>
245
246	PR d/107592
247	* toir.cc (IRVisitor::push_unrolled_continue_label): New method.
248	(IRVisitor::pop_unrolled_continue_label): New method.
249	(IRVisitor::visit (UnrolledLoopStatement *)): Use them instead of
250	push_continue_label and pop_continue_label.
251
2522022-08-19  Release Manager
253
254	* GCC 12.2.0 released.
255
2562022-08-16  Iain Buclaw  <ibuclaw@gdcproject.org>
257
258	Backported from master:
259	2022-08-16  Iain Buclaw  <ibuclaw@gdcproject.org>
260
261	PR d/106638
262	* gdc.texi: Update DIP links to point at upstream dlang/DIPs
263	repository.
264
2652022-08-15  Iain Buclaw  <ibuclaw@gdcproject.org>
266
267	Backported from master:
268	2022-08-15  Iain Buclaw  <ibuclaw@gdcproject.org>
269
270	* d-tree.h (d_defer_declaration): Declare.
271	* decl.cc (function_needs_inline_definition_p): Defer checking
272	DECL_UNINLINABLE and DECL_DECLARED_INLINE_P.
273	(maybe_build_decl_tree): Call d_defer_declaration instead of
274	build_decl_tree.
275	* modules.cc (deferred_inline_declarations): New variable.
276	(build_module_tree): Set deferred_inline_declarations and a handle
277	declarations pushed to it.
278	(d_defer_declaration): New function.
279
2802022-08-15  Iain Buclaw  <ibuclaw@gdcproject.org>
281
282	Backported from master:
283	2022-08-15  Iain Buclaw  <ibuclaw@gdcproject.org>
284
285	PR d/106623
286	* d-codegen.cc (underlying_complex_expr): New function.
287	(d_build_call): Handle passing native complex objects as the
288	library-defined equivalent.
289	* d-tree.h (underlying_complex_expr): Declare.
290	* expr.cc (ExprVisitor::visit (DotVarExp *)): Call
291	underlying_complex_expr instead of build_vconvert.
292
2932022-08-09  Iain Buclaw  <ibuclaw@gdcproject.org>
294
295	Backported from master:
296	2022-08-09  Iain Buclaw  <ibuclaw@gdcproject.org>
297
298	PR d/106563
299	* decl.cc (DeclVisitor::visit (FuncDeclaration *)): Set semanticRun
300	before generating its symbol.
301	(function_defined_in_root_p): New function.
302	(function_needs_inline_definition_p): New function.
303	(maybe_build_decl_tree): New function.
304	(get_symbol_decl): Call maybe_build_decl_tree before returning symbol.
305	(start_function): Use function_defined_in_root_p instead of inline
306	test for locally defined symbols.
307	(set_linkage_for_decl): Check for inline functions before private or
308	protected symbols.
309
3102022-08-08  Iain Buclaw  <ibuclaw@gdcproject.org>
311
312	Backported from master:
313	2022-08-08  Iain Buclaw  <ibuclaw@gdcproject.org>
314
315	PR d/106555
316	* d-target.cc (Target::isReturnOnStack): Check for return type size.
317
3182022-07-26  Iain Buclaw  <ibuclaw@gdcproject.org>
319
320	* dmd/MERGE: Merge upstream dmd 76e3b41375.
321	* dmd/VERSION: Bump version to v2.100.1.
322	* decl.cc (DeclVisitor::visit (VarDeclaration *)): Evaluate RHS
323	  of noreturn declaration expressions first.
324	* expr.cc (ExprVisitor::visit (AssignExp *)): Don't generate
325	  assignment for noreturn types.
326
3272022-07-04  Iain Buclaw  <ibuclaw@gdcproject.org>
328
329	Backported from master:
330	2022-06-29  Iain Buclaw  <ibuclaw@gdcproject.org>
331
332	PR d/106139
333	* d-convert.cc (convert_expr): Handle casting from array to vector.
334	(convert_for_rvalue): Rewrite vector to array casts of the same
335	element type into a constructor.
336	(convert_for_assignment): Return calling convert_for_rvalue.
337	* expr.cc (ExprVisitor::visit (VectorExp *)): Handle generating a
338	vector expression from a static array.
339	* toir.cc (IRVisitor::visit (ReturnStatement *)): Call
340	convert_for_rvalue on return value.
341
3422022-06-15  Iain Buclaw  <ibuclaw@gdcproject.org>
343
344	Backported from master:
345	2022-06-15  Iain Buclaw  <ibuclaw@gdcproject.org>
346
347	* typeinfo.cc (make_internal_typeinfo): Set TYPE_ARTIFICIAL.
348
3492022-06-13  Iain Buclaw  <ibuclaw@gdcproject.org>
350
351	Backported from master:
352	2022-06-13  Iain Buclaw  <ibuclaw@gdcproject.org>
353
354	* d-tree.h (check_typeinfo_type): Add Expression* parameter.
355	(build_typeinfo): Likewise.  Declare new override.
356	* expr.cc (ExprVisitor): Call build_typeinfo with Expression*.
357	* typeinfo.cc (check_typeinfo_type): Include expression in the
358	diagnostic message.
359	(build_typeinfo): New override.
360
3612022-05-31  Iain Buclaw  <ibuclaw@gdcproject.org>
362
363	Backported from master:
364	2022-05-31  Iain Buclaw  <ibuclaw@gdcproject.org>
365
366	PR d/105544
367	* d-lang.cc (d_parse_file): Zero padding past the end of the stdin
368	buffer so the D lexer has a sentinel to stop parsing at.
369
3702022-05-15  Iain Buclaw  <ibuclaw@gdcproject.org>
371
372	* dmd/MERGE: Merge upstream dmd a53934d18.
373	* dmd/VERSION: Update version to v2.100.0.
374	* d-codegen.cc (d_decl_context): Use resolvedLinkage to get
375	declaration linkage.
376	(build_struct_literal): Track offset in bits.
377	* d-gimplify.cc (d_gimplify_modify_expr): Check both operands for a
378	bit-field reference.
379	* d-lang.cc (d_post_options): Set flag_rtti and flag_exceptions if
380	-fno-druntime was seen on command-line.
381	(d_type_promotes_to): Use resolvedLinkage to get declaration linkage.
382	* decl.cc (make_thunk): Likewise.
383	* types.cc (layout_aggregate_members): Ignore anonymous fields in
384	total count.
385
3862022-05-06  Release Manager
387
388	* GCC 12.1.0 released.
389
3902022-05-05  Iain Buclaw  <ibuclaw@gdcproject.org>
391
392	* dmd/MERGE: Merge upstream dmd 88de5e369.
393
3942022-05-03  Iain Buclaw  <ibuclaw@gdcproject.org>
395
396	* dmd/MERGE: Merge upstream dmd 081d61e15.
397	* dmd/VERSION: Update version to v2.100.0-rc.1.
398
3992022-04-28  Iain Buclaw  <ibuclaw@gdcproject.org>
400
401	* dmd/MERGE: Merge upstream dmd 313d28b3d.
402	* d-port.cc (Port::memicmp): Use d_size_t instead of size_t.
403	(Port::valcpy): Likewise.
404
4052022-04-21  Iain Buclaw  <ibuclaw@gdcproject.org>
406
407	* dmd/MERGE: Merge upstream dmd eb7bee331.
408	* dmd/VERSION: Update version to v2.100.0-beta.1.
409	* d-lang.cc (d_handle_option): Handle OPT_frevert_dip1000.
410	* lang.opt (frevert=dip1000): New option.
411
4122022-04-13  Iain Buclaw  <ibuclaw@gdcproject.org>
413
414	* Make-lang.in (D_FRONTEND_OBJS): Add d/common-bitfields.o,
415	d/mustuse.o.
416	* d-ctfloat.cc (CTFloat::isIdentical): Don't treat NaN values as
417	identical.
418	* dmd/MERGE: Merge upstream dmd 4d1bfcf14.
419	* expr.cc (ExprVisitor::visit (VoidInitExp *)): New.
420
4212022-04-03  Iain Buclaw  <ibuclaw@gdcproject.org>
422
423	* d-lang.cc: Include dmd/template.h.
424	(d_parse_file): Call printTemplateStats when vtemplates is set.
425	* decl.cc (start_function): Remove OPT_Wtemplates warning.
426	* lang.opt (Wtemplates): Remove.
427
4282022-04-02  Iain Buclaw  <ibuclaw@gdcproject.org>
429
430	* dmd/MERGE: Merge upstream dmd 47871363d.
431	* d-builtins.cc (d_init_versions): Add predefined version identifiers
432	D_PreConditions, D_PostConditions, and D_Invariants.
433	* d-codegen.cc (d_build_call): Update for new front-end interface.
434	(build_frame_type): Generate reference field for NRVO variables with
435	nested references.
436	(build_closure): Generate assignment of return address to closure.
437	* d-tree.h (DECL_INSTANTIATED): Use DECL_LANG_FLAG_2.
438	(bind_expr): Remove.
439	* decl.cc (DeclVisitor::visit (FuncDeclaration *)): Update for new
440	front-end interface.
441	(get_symbol_decl): Likewise.
442	(get_decl_tree): Check DECL_LANG_FRAME_FIELD before DECL_LANG_NRVO.
443	Dereference the field when both are set.
444	* expr.cc (ExprVisitor::visit (DeleteExp *)): Update for new front-end
445	interface.
446	* modules.cc (get_internal_fn): Likewise.
447	* toir.cc (IRVisitor::visit (ReturnStatement *)): Likewise.
448
4492022-03-21  Iain Buclaw  <ibuclaw@gdcproject.org>
450
451	PR d/105004
452	* d-codegen.cc (build_struct_literal): Use complex_expr to build
453	complex expressions from __c_complex types.
454
4552022-03-21  Iain Buclaw  <ibuclaw@gdcproject.org>
456
457	PR d/104911
458	* dmd/MERGE: Merge upstream dmd 2503f17e5.
459	* d-convert.cc (convert_expr): Replace d_uns64 with dinteger_t.
460	* d-lang.cc: Remove dmd/root/file.h include.
461	(d_handle_option): Update for new front-end interface.
462	(d_parse_file): Likewise.
463
4642022-03-13  Iain Buclaw  <ibuclaw@gdcproject.org>
465
466	* dmd/MERGE: Merge upstream dmd 02a3fafc6.
467	* dmd/VERSION: Update version to v2.099.0.
468	* imports.cc (ImportVisitor::visit (EnumDeclaration *)): Don't cache
469	decl in front-end AST node.
470	(ImportVisitor::visit (AggregateDeclaration *)): Likewise.
471	(ImportVisitor::visit (ClassDeclaration *)): Likewise.
472
4732022-03-11  Iain Buclaw  <ibuclaw@gdcproject.org>
474
475	* imports.cc (imported_decls): Define.
476	(class ImportVisitor): Add result_ field.
477	(ImportVisitor::result): New method.
478	(ImportVisitor::visit (Module *)): Store decl to result_.
479	(ImportVisitor::visit (Import *)): Likewise.
480	(ImportVisitor::visit (AliasDeclaration *)): Don't cache decl in
481	front-end AST node.
482	(ImportVisitor::visit (OverDeclaration *)): Likewise.
483	(ImportVisitor::visit (FuncDeclaration *)): Likewise.
484	(ImportVisitor::visit (Declaration *)): Likewise.
485	(build_import_decl): Use imported_decls to cache and lookup built
486	declarations.
487
4882022-03-11  Iain Buclaw  <ibuclaw@gdcproject.org>
489
490	PR translation/104552
491	* lang.opt (fdump-cxx-spec=): Fix typo in argument handle.
492	(fpreview=fixaliasthis): Quote `alias this' as code.
493
4942022-03-02  Iain Buclaw  <ibuclaw@gdcproject.org>
495
496	* dmd/MERGE: Merge upstream dmd 423f19b41.
497
4982022-02-28  Iain Buclaw  <ibuclaw@gdcproject.org>
499
500	* d-target.cc (Target::_init): Initialize C type size fields.
501	* dmd/MERGE: Merge upstream dmd cf63dd8e5.
502	* dmd/VERSION: Update version to v2.099.0-rc.1.
503
5042022-02-20  Iain Buclaw  <ibuclaw@gdcproject.org>
505
506	* expr.cc (ExprVisitor::visit (DeleteExp *)): Remove handling of
507	deleting GC allocated classes.
508	* runtime.def (DELCLASS): Remove.
509	(DELINTERFACE): Remove.
510
5112022-02-20  Iain Buclaw  <ibuclaw@gdcproject.org>
512
513	* dmd/MERGE: Merge upstream dmd cb49e99f8.
514	* dmd/VERSION: Update version to v2.099.0-beta.1.
515	* decl.cc (layout_class_initializer): Update call to NewExp::create.
516	* expr.cc (ExprVisitor::visit (DeleteExp *)): Remove handling of
517	deleting arrays and pointers.
518	(ExprVisitor::visit (DotVarExp *)): Convert complex types to the
519	front-end library type representing them.
520	(ExprVisitor::visit (StringExp *)): Use getCodeUnit instead of charAt
521	to get the value of each index in a string expression.
522	* runtime.def (DELMEMORY): Remove.
523	(DELARRAYT): Remove.
524	* types.cc (TypeVisitor::visit (TypeEnum *)): Handle anonymous enums.
525
5262022-02-16  Iain Buclaw  <ibuclaw@gdcproject.org>
527
528	* d-builtins.cc (d_build_builtins_module): Set purity of DECL_PURE_P
529	functions to PURE::const_.
530	* d-gimplify.cc (bit_field_ref): New function.
531	(d_gimplify_modify_expr): Handle implicit casting for assignments to
532	bit-fields.
533	(d_gimplify_unary_expr): New function.
534	(d_gimplify_binary_expr): New function.
535	(d_gimplify_expr): Handle UNARY_CLASS_P and BINARY_CLASS_P.
536	* d-target.cc (Target::_init): Initialize bitFieldStyle.
537	(TargetCPP::parameterType): Update signature.
538	(Target::supportsLinkerDirective): New function.
539	* dmd/MERGE: Merge upstream dmd 52844d4b1.
540	* expr.cc (ExprVisitor::visit (ThrowExp *)): New function.
541	* types.cc (d_build_bitfield_integer_type): New function.
542	(insert_aggregate_bitfield): New function.
543	(layout_aggregate_members): Handle inserting bit-fields into an
544	aggregate type.
545
5462022-01-31  Martin Liska  <mliska@suse.cz>
547
548	PR d/104287
549	* decl.cc (d_finish_decl): Remove trailing dot.
550
5512022-01-28  Martin Liska  <mliska@suse.cz>
552
553	* decl.cc (d_finish_decl): Do not use leading capital letter.
554
5552022-01-17  Martin Liska  <mliska@suse.cz>
556
557	* d-gimplify.cc: Rename .c names to .cc.
558	* d-incpath.cc: Likewise.
559	* lang-specs.h: Likewise.
560
5612022-01-03  Iain Buclaw  <ibuclaw@gdcproject.org>
562
563	PR d/103840
564	* dmd/MERGE: Merge upstream dmd 001bfd97b.
565	* Make-lang.in (D_FRONTEND_OBJS): Rename d/complex.o to
566	d/root-complex.o, and d/utf.o to d/root/utf.o.
567
5682022-01-03  Jakub Jelinek  <jakub@redhat.com>
569
570	* gdc.texi: Bump @copyrights-d year.
571
572
573Copyright (C) 2022 Free Software Foundation, Inc.
574
575Copying and distribution of this file, with or without modification,
576are permitted in any medium without royalty provided the copyright
577notice and this notice are preserved.
578