]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/d/ChangeLog
Daily bump.
[thirdparty/gcc.git] / gcc / d / ChangeLog
1 2022-05-16 Iain Buclaw <ibuclaw@gdcproject.org>
2
3 * dmd/MERGE: Merge upstream dmd 60bfa0ee7.
4 * dmd/VERSION: Update version to v2.100.0.
5 * d-builtins.cc (d_init_versions): Update for new front-end interface.
6 * d-codegen.cc (d_decl_context): Use resolvedLinkage to get
7 declaration linkage.
8 (build_struct_literal): Track offset in bits.
9 * d-gimplify.cc (d_gimplify_modify_expr): Check both operands for a
10 bit-field reference.
11 * d-lang.cc (d_handle_option): Handle -fpreview=bitfields, remove
12 -frevert=markdown and -ftransition=vmarkdown.
13 (d_post_options): Set flag_rtti and flag_exceptions if -fno-druntime
14 was seen on command-line.
15 (d_parse_file): Update for new front-end interface.
16 (d_type_promotes_to): Use resolvedLinkage to get declaration linkage.
17 * decl.cc (make_thunk): Likewise.
18 * expr.cc (ExprVisitor::visit (CatAssignExp *)): Remove lowering for
19 appending of an element or array to another array.
20 * lang.opt (fpreview=bitfields): New option.
21 (frevert=markdown): Remove.
22 (ftransition=vmarkdown): Remove.
23 * types.cc (layout_aggregate_members): Ignore anonymous fields in
24 total count.
25
26 2022-04-28 Iain Buclaw <ibuclaw@gdcproject.org>
27
28 * dmd/MERGE: Merge upstream dmd 313d28b3d.
29 * d-port.cc (Port::memicmp): Use d_size_t instead of size_t.
30 (Port::valcpy): Likewise.
31
32 2022-04-21 Iain Buclaw <ibuclaw@gdcproject.org>
33
34 * dmd/MERGE: Merge upstream dmd eb7bee331.
35 * dmd/VERSION: Update version to v2.100.0-beta.1.
36 * d-lang.cc (d_handle_option): Handle OPT_frevert_dip1000.
37 * lang.opt (frevert=dip1000): New option.
38
39 2022-04-13 Iain Buclaw <ibuclaw@gdcproject.org>
40
41 * Make-lang.in (D_FRONTEND_OBJS): Add d/common-bitfields.o,
42 d/mustuse.o.
43 * d-ctfloat.cc (CTFloat::isIdentical): Don't treat NaN values as
44 identical.
45 * dmd/MERGE: Merge upstream dmd 4d1bfcf14.
46 * expr.cc (ExprVisitor::visit (VoidInitExp *)): New.
47
48 2022-04-03 Iain Buclaw <ibuclaw@gdcproject.org>
49
50 * d-lang.cc: Include dmd/template.h.
51 (d_parse_file): Call printTemplateStats when vtemplates is set.
52 * decl.cc (start_function): Remove OPT_Wtemplates warning.
53 * lang.opt (Wtemplates): Remove.
54
55 2022-04-02 Iain Buclaw <ibuclaw@gdcproject.org>
56
57 * dmd/MERGE: Merge upstream dmd 47871363d.
58 * d-builtins.cc (d_init_versions): Add predefined version identifiers
59 D_PreConditions, D_PostConditions, and D_Invariants.
60 * d-codegen.cc (d_build_call): Update for new front-end interface.
61 (build_frame_type): Generate reference field for NRVO variables with
62 nested references.
63 (build_closure): Generate assignment of return address to closure.
64 * d-tree.h (DECL_INSTANTIATED): Use DECL_LANG_FLAG_2.
65 (bind_expr): Remove.
66 * decl.cc (DeclVisitor::visit (FuncDeclaration *)): Update for new
67 front-end interface.
68 (get_symbol_decl): Likewise.
69 (get_decl_tree): Check DECL_LANG_FRAME_FIELD before DECL_LANG_NRVO.
70 Dereference the field when both are set.
71 * expr.cc (ExprVisitor::visit (DeleteExp *)): Update for new front-end
72 interface.
73 * modules.cc (get_internal_fn): Likewise.
74 * toir.cc (IRVisitor::visit (ReturnStatement *)): Likewise.
75
76 2022-03-21 Iain Buclaw <ibuclaw@gdcproject.org>
77
78 PR d/105004
79 * d-codegen.cc (build_struct_literal): Use complex_expr to build
80 complex expressions from __c_complex types.
81
82 2022-03-21 Iain Buclaw <ibuclaw@gdcproject.org>
83
84 PR d/104911
85 * dmd/MERGE: Merge upstream dmd 2503f17e5.
86 * d-convert.cc (convert_expr): Replace d_uns64 with dinteger_t.
87 * d-lang.cc: Remove dmd/root/file.h include.
88 (d_handle_option): Update for new front-end interface.
89 (d_parse_file): Likewise.
90
91 2022-03-13 Iain Buclaw <ibuclaw@gdcproject.org>
92
93 * dmd/MERGE: Merge upstream dmd 02a3fafc6.
94 * dmd/VERSION: Update version to v2.099.0.
95 * imports.cc (ImportVisitor::visit (EnumDeclaration *)): Don't cache
96 decl in front-end AST node.
97 (ImportVisitor::visit (AggregateDeclaration *)): Likewise.
98 (ImportVisitor::visit (ClassDeclaration *)): Likewise.
99
100 2022-03-11 Iain Buclaw <ibuclaw@gdcproject.org>
101
102 * imports.cc (imported_decls): Define.
103 (class ImportVisitor): Add result_ field.
104 (ImportVisitor::result): New method.
105 (ImportVisitor::visit (Module *)): Store decl to result_.
106 (ImportVisitor::visit (Import *)): Likewise.
107 (ImportVisitor::visit (AliasDeclaration *)): Don't cache decl in
108 front-end AST node.
109 (ImportVisitor::visit (OverDeclaration *)): Likewise.
110 (ImportVisitor::visit (FuncDeclaration *)): Likewise.
111 (ImportVisitor::visit (Declaration *)): Likewise.
112 (build_import_decl): Use imported_decls to cache and lookup built
113 declarations.
114
115 2022-03-11 Iain Buclaw <ibuclaw@gdcproject.org>
116
117 PR translation/104552
118 * lang.opt (fdump-cxx-spec=): Fix typo in argument handle.
119 (fpreview=fixaliasthis): Quote `alias this' as code.
120
121 2022-03-02 Iain Buclaw <ibuclaw@gdcproject.org>
122
123 * dmd/MERGE: Merge upstream dmd 423f19b41.
124
125 2022-02-28 Iain Buclaw <ibuclaw@gdcproject.org>
126
127 * d-target.cc (Target::_init): Initialize C type size fields.
128 * dmd/MERGE: Merge upstream dmd cf63dd8e5.
129 * dmd/VERSION: Update version to v2.099.0-rc.1.
130
131 2022-02-20 Iain Buclaw <ibuclaw@gdcproject.org>
132
133 * expr.cc (ExprVisitor::visit (DeleteExp *)): Remove handling of
134 deleting GC allocated classes.
135 * runtime.def (DELCLASS): Remove.
136 (DELINTERFACE): Remove.
137
138 2022-02-20 Iain Buclaw <ibuclaw@gdcproject.org>
139
140 * dmd/MERGE: Merge upstream dmd cb49e99f8.
141 * dmd/VERSION: Update version to v2.099.0-beta.1.
142 * decl.cc (layout_class_initializer): Update call to NewExp::create.
143 * expr.cc (ExprVisitor::visit (DeleteExp *)): Remove handling of
144 deleting arrays and pointers.
145 (ExprVisitor::visit (DotVarExp *)): Convert complex types to the
146 front-end library type representing them.
147 (ExprVisitor::visit (StringExp *)): Use getCodeUnit instead of charAt
148 to get the value of each index in a string expression.
149 * runtime.def (DELMEMORY): Remove.
150 (DELARRAYT): Remove.
151 * types.cc (TypeVisitor::visit (TypeEnum *)): Handle anonymous enums.
152
153 2022-02-16 Iain Buclaw <ibuclaw@gdcproject.org>
154
155 * d-builtins.cc (d_build_builtins_module): Set purity of DECL_PURE_P
156 functions to PURE::const_.
157 * d-gimplify.cc (bit_field_ref): New function.
158 (d_gimplify_modify_expr): Handle implicit casting for assignments to
159 bit-fields.
160 (d_gimplify_unary_expr): New function.
161 (d_gimplify_binary_expr): New function.
162 (d_gimplify_expr): Handle UNARY_CLASS_P and BINARY_CLASS_P.
163 * d-target.cc (Target::_init): Initialize bitFieldStyle.
164 (TargetCPP::parameterType): Update signature.
165 (Target::supportsLinkerDirective): New function.
166 * dmd/MERGE: Merge upstream dmd 52844d4b1.
167 * expr.cc (ExprVisitor::visit (ThrowExp *)): New function.
168 * types.cc (d_build_bitfield_integer_type): New function.
169 (insert_aggregate_bitfield): New function.
170 (layout_aggregate_members): Handle inserting bit-fields into an
171 aggregate type.
172
173 2022-01-31 Martin Liska <mliska@suse.cz>
174
175 PR d/104287
176 * decl.cc (d_finish_decl): Remove trailing dot.
177
178 2022-01-28 Martin Liska <mliska@suse.cz>
179
180 * decl.cc (d_finish_decl): Do not use leading capital letter.
181
182 2022-01-17 Martin Liska <mliska@suse.cz>
183
184 * d-gimplify.cc: Rename .c names to .cc.
185 * d-incpath.cc: Likewise.
186 * lang-specs.h: Likewise.
187
188 2022-01-03 Iain Buclaw <ibuclaw@gdcproject.org>
189
190 PR d/103840
191 * dmd/MERGE: Merge upstream dmd 001bfd97b.
192 * Make-lang.in (D_FRONTEND_OBJS): Rename d/complex.o to
193 d/root-complex.o, and d/utf.o to d/root/utf.o.
194
195 2022-01-03 Jakub Jelinek <jakub@redhat.com>
196
197 * gdc.texi: Bump @copyrights-d year.
198
199 \f
200 Copyright (C) 2022 Free Software Foundation, Inc.
201
202 Copying and distribution of this file, with or without modification,
203 are permitted in any medium without royalty provided the copyright
204 notice and this notice are preserved.