]>
Commit | Line | Data |
---|---|---|
83d400bd GA |
1 | 2022-11-14 Martin Liska <mliska@suse.cz> |
2 | ||
3 | Revert: | |
4 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
5 | ||
6 | * doc/conf.py: New file. | |
7 | * doc/copyright.rst: New file. | |
8 | * doc/general-public-license-3.rst: New file. | |
9 | * doc/gnu-free-documentation-license.rst: New file. | |
10 | * doc/index.rst: New file. | |
11 | * doc/indices-and-tables.rst: New file. | |
12 | * doc/invoking-gdc.rst: New file. | |
13 | * doc/invoking-gdc/code-generation.rst: New file. | |
14 | * doc/invoking-gdc/developer-options.rst: New file. | |
15 | * doc/invoking-gdc/input-and-output-files.rst: New file. | |
16 | * doc/invoking-gdc/options-for-directory-search.rst: New file. | |
17 | * doc/invoking-gdc/options-for-linking.rst: New file. | |
18 | * doc/invoking-gdc/runtime-options.rst: New file. | |
19 | * doc/invoking-gdc/warnings.rst: New file. | |
20 | ||
21 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
22 | ||
23 | Revert: | |
24 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
25 | ||
26 | * d-target.def: Port to RST. | |
27 | ||
28 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
29 | ||
30 | Revert: | |
31 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
32 | ||
33 | * Make-lang.in: Support Sphinx based documentation. | |
34 | ||
35 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
36 | ||
37 | Revert: | |
38 | 2022-11-09 Martin Liska <mliska@suse.cz> | |
39 | ||
40 | * gdc.texi: Removed. | |
41 | ||
42 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
43 | ||
44 | Revert: | |
45 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
46 | ||
47 | * Make-lang.in: Support --with-sphinx-build. | |
48 | ||
49 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
50 | ||
51 | Revert: | |
52 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
53 | ||
54 | * Make-lang.in: | |
55 | Support installation if sphinx-build is missing. | |
56 | ||
57 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
58 | ||
59 | Revert: | |
60 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
61 | ||
62 | * doc/copyright.rst: | |
63 | Add trailing newline. | |
64 | * doc/general-public-license-3.rst: | |
65 | Add trailing newline. | |
66 | * doc/gnu-free-documentation-license.rst: | |
67 | Add trailing newline. | |
68 | * doc/index.rst: | |
69 | Add trailing newline. | |
70 | * doc/indices-and-tables.rst: | |
71 | Add trailing newline. | |
72 | * doc/invoking-gdc.rst: | |
73 | Add trailing newline. | |
74 | * doc/invoking-gdc/code-generation.rst: | |
75 | Add trailing newline. | |
76 | * doc/invoking-gdc/developer-options.rst: | |
77 | Add trailing newline. | |
78 | * doc/invoking-gdc/input-and-output-files.rst: | |
79 | Add trailing newline. | |
80 | * doc/invoking-gdc/options-for-directory-search.rst: | |
81 | Add trailing newline. | |
82 | * doc/invoking-gdc/options-for-linking.rst: | |
83 | Add trailing newline. | |
84 | * doc/invoking-gdc/runtime-options.rst: | |
85 | Add trailing newline. | |
86 | * doc/invoking-gdc/warnings.rst: | |
87 | Add trailing newline. | |
88 | ||
89 | 2022-11-14 Martin Liska <mliska@suse.cz> | |
90 | ||
91 | Revert: | |
92 | 2022-11-10 Martin Liska <mliska@suse.cz> | |
93 | ||
94 | * doc/conf.py: Add newline at last line. | |
95 | ||
f225b813 GA |
96 | 2022-11-10 Martin Liska <mliska@suse.cz> |
97 | ||
98 | * doc/conf.py: Add newline at last line. | |
99 | ||
1cdfd0e5 GA |
100 | 2022-11-09 Martin Liska <mliska@suse.cz> |
101 | ||
102 | * doc/copyright.rst: | |
103 | Add trailing newline. | |
104 | * doc/general-public-license-3.rst: | |
105 | Add trailing newline. | |
106 | * doc/gnu-free-documentation-license.rst: | |
107 | Add trailing newline. | |
108 | * doc/index.rst: | |
109 | Add trailing newline. | |
110 | * doc/indices-and-tables.rst: | |
111 | Add trailing newline. | |
112 | * doc/invoking-gdc.rst: | |
113 | Add trailing newline. | |
114 | * doc/invoking-gdc/code-generation.rst: | |
115 | Add trailing newline. | |
116 | * doc/invoking-gdc/developer-options.rst: | |
117 | Add trailing newline. | |
118 | * doc/invoking-gdc/input-and-output-files.rst: | |
119 | Add trailing newline. | |
120 | * doc/invoking-gdc/options-for-directory-search.rst: | |
121 | Add trailing newline. | |
122 | * doc/invoking-gdc/options-for-linking.rst: | |
123 | Add trailing newline. | |
124 | * doc/invoking-gdc/runtime-options.rst: | |
125 | Add trailing newline. | |
126 | * doc/invoking-gdc/warnings.rst: | |
127 | Add trailing newline. | |
128 | ||
129 | 2022-11-09 Martin Liska <mliska@suse.cz> | |
130 | ||
131 | * Make-lang.in: | |
132 | Support installation if sphinx-build is missing. | |
133 | ||
134 | 2022-11-09 Martin Liska <mliska@suse.cz> | |
135 | ||
136 | * Make-lang.in: Support --with-sphinx-build. | |
137 | ||
138 | 2022-11-09 Martin Liska <mliska@suse.cz> | |
139 | ||
140 | * gdc.texi: Removed. | |
141 | ||
142 | 2022-11-09 Martin Liska <mliska@suse.cz> | |
143 | ||
144 | * Make-lang.in: Support Sphinx based documentation. | |
145 | ||
146 | 2022-11-09 Martin Liska <mliska@suse.cz> | |
147 | ||
148 | * d-target.def: Port to RST. | |
149 | ||
150 | 2022-11-09 Martin Liska <mliska@suse.cz> | |
151 | ||
152 | * doc/conf.py: New file. | |
153 | * doc/copyright.rst: New file. | |
154 | * doc/general-public-license-3.rst: New file. | |
155 | * doc/gnu-free-documentation-license.rst: New file. | |
156 | * doc/index.rst: New file. | |
157 | * doc/indices-and-tables.rst: New file. | |
158 | * doc/invoking-gdc.rst: New file. | |
159 | * doc/invoking-gdc/code-generation.rst: New file. | |
160 | * doc/invoking-gdc/developer-options.rst: New file. | |
161 | * doc/invoking-gdc/input-and-output-files.rst: New file. | |
162 | * doc/invoking-gdc/options-for-directory-search.rst: New file. | |
163 | * doc/invoking-gdc/options-for-linking.rst: New file. | |
164 | * doc/invoking-gdc/runtime-options.rst: New file. | |
165 | * doc/invoking-gdc/warnings.rst: New file. | |
166 | ||
05788e9b GA |
167 | 2022-11-05 Iain Buclaw <ibuclaw@gdcproject.org> |
168 | ||
169 | * d-target.cc (Target::isVectorOpSupported): Remove cases for | |
170 | comparison operators. | |
171 | * intrinsics.cc (maybe_set_intrinsic): Remove cases for vector | |
172 | comparison intrinsics. | |
173 | (maybe_warn_intrinsic_mismatch): Likewise. | |
174 | (expand_intrinsic_vec_cond): Remove. | |
175 | (maybe_expand_intrinsic): Remove cases for vector comparison | |
176 | intrinsics. | |
177 | * intrinsics.def (INTRINSIC_EQUALMASK): Remove. | |
178 | (INTRINSIC_NOTEQUALMASK): Remove. | |
179 | (INTRINSIC_GREATERMASK): Remove. | |
180 | (INTRINSIC_GREATEREQUALMASK): Remove. | |
181 | ||
f36bba01 GA |
182 | 2022-10-29 Iain Buclaw <ibuclaw@gdcproject.org> |
183 | ||
184 | * d-attribs.cc (apply_user_attributes): Update for new front-end | |
185 | interface. | |
186 | * d-builtins.cc (d_init_versions): Predefine `D_Optimized' with | |
187 | compiling with optimizations enabled. | |
188 | * d-lang.cc (d_handle_option): Update for new front-end interface. | |
189 | Handle new option `-fpreview=systemvariables'. | |
190 | * dmd/MERGE: Merge upstream dmd e4f8919591. | |
191 | * dmd/VERSION: Bump version to v2.101.0-beta.1. | |
192 | * expr.cc (ExprVisitor::visit (AssignExp *)): Treat construction of | |
193 | static arrays from a call expression as a simple assignment. | |
194 | (ExprVisitor::visit (ArrayLiteralExp *)): Handle array literals with | |
195 | `scope' storage. | |
196 | * gdc.texi: Update documentation of `-fpreview=' options. | |
197 | * lang.opt (fpreview=shortenedmethods): Remove. | |
198 | (fpreview=systemvariables): New option. | |
199 | ||
200 | 2022-10-29 Iain Buclaw <ibuclaw@gdcproject.org> | |
201 | ||
202 | * d-target.def (d_minfo_section): Expand documentation of hook. | |
203 | Default initialize to "minfo". | |
204 | (d_minfo_start_name): Rename to ... | |
205 | (d_minfo_section_start): ... this. Default initialize to | |
206 | "__start_minfo". | |
207 | (d_minfo_end_name): Rename to ... | |
208 | (d_minfo_section_end): ... this. Default initialize to "__stop_minfo". | |
209 | * modules.cc (register_moduleinfo): Use new targetdm hook names. | |
210 | ||
1f16a020 GA |
211 | 2022-09-27 Iain Buclaw <ibuclaw@gdcproject.org> |
212 | ||
213 | * dmd/MERGE: Merge upstream dmd d579c467c1. | |
214 | * decl.cc (layout_struct_initializer): Update for new front-end | |
215 | interface. | |
216 | * expr.cc (ExprVisitor::visit (AssignExp *)): Remove lowering of array | |
217 | assignments. | |
218 | (ExprVisitor::visit (NewExp *)): Add new lowering of new'ing | |
219 | associative arrays to an _aaNew() library call. | |
220 | * runtime.def (ARRAYSETASSIGN): Remove. | |
221 | (AANEW): Define. | |
222 | ||
d0fc05e8 GA |
223 | 2022-09-15 Richard Biener <rguenther@suse.de> |
224 | ||
225 | * d-builtins.cc (d_build_c_type_nodes): Do not initialize | |
226 | void_list_node. | |
227 | ||
6b226ef7 GA |
228 | 2022-08-27 Iain Buclaw <ibuclaw@gdcproject.org> |
229 | ||
230 | * dmd/MERGE: Merge upstream dmd 817610b16d. | |
231 | * d-ctfloat.cc (CTFloat::parse): Update for new front-end interface. | |
232 | * d-lang.cc (d_parse_file): Likewise. | |
233 | * expr.cc (ExprVisitor::visit (AssignExp *)): Remove handling of array | |
234 | assignments to non-trivial static and dynamic arrays. | |
235 | * runtime.def (ARRAYASSIGN): Remove. | |
236 | (ARRAYASSIGN_L): Remove. | |
237 | (ARRAYASSIGN_R): Remove. | |
238 | ||
47a61e65 GA |
239 | 2022-08-16 Iain Buclaw <ibuclaw@gdcproject.org> |
240 | ||
241 | PR d/106638 | |
242 | * gdc.texi: Update DIP links to point at upstream dlang/DIPs | |
243 | repository. | |
244 | ||
ec63a946 GA |
245 | 2022-08-15 Iain Buclaw <ibuclaw@gdcproject.org> |
246 | ||
247 | * d-tree.h (d_defer_declaration): Declare. | |
248 | * decl.cc (function_needs_inline_definition_p): Defer checking | |
249 | DECL_UNINLINABLE and DECL_DECLARED_INLINE_P. | |
250 | (maybe_build_decl_tree): Call d_defer_declaration instead of | |
251 | build_decl_tree. | |
252 | * modules.cc (deferred_inline_declarations): New variable. | |
253 | (build_module_tree): Set deferred_inline_declarations and a handle | |
254 | declarations pushed to it. | |
255 | (d_defer_declaration): New function. | |
256 | ||
257 | 2022-08-15 Iain Buclaw <ibuclaw@gdcproject.org> | |
258 | ||
259 | PR d/106623 | |
260 | * d-codegen.cc (underlying_complex_expr): New function. | |
261 | (d_build_call): Handle passing native complex objects as the | |
262 | library-defined equivalent. | |
263 | * d-tree.h (underlying_complex_expr): Declare. | |
264 | * expr.cc (ExprVisitor::visit (DotVarExp *)): Call | |
265 | underlying_complex_expr instead of build_vconvert. | |
266 | ||
267 | 2022-08-15 Iain Buclaw <ibuclaw@gdcproject.org> | |
268 | ||
269 | * d-compiler.cc (Compiler::onParseModule): Call create_tinfo_types | |
270 | when module name is object. | |
271 | * typeinfo.cc (create_tinfo_types): Add guard for multiple | |
272 | invocations. | |
273 | ||
274 | 2022-08-15 Iain Buclaw <ibuclaw@gdcproject.org> | |
275 | ||
276 | * d-codegen.cc (build_delegate_cst): Give anonymous delegate field | |
277 | names same as per ABI spec. | |
278 | ||
6d001ec1 GA |
279 | 2022-08-09 Iain Buclaw <ibuclaw@gdcproject.org> |
280 | ||
281 | PR d/106563 | |
282 | * decl.cc (DeclVisitor::visit (FuncDeclaration *)): Set semanticRun | |
283 | before generating its symbol. | |
284 | (function_defined_in_root_p): New function. | |
285 | (function_needs_inline_definition_p): New function. | |
286 | (maybe_build_decl_tree): New function. | |
287 | (get_symbol_decl): Call maybe_build_decl_tree before returning symbol. | |
288 | (start_function): Use function_defined_in_root_p instead of inline | |
289 | test for locally defined symbols. | |
290 | (set_linkage_for_decl): Check for inline functions before private or | |
291 | protected symbols. | |
292 | ||
5f17badb GA |
293 | 2022-08-08 Iain Buclaw <ibuclaw@gdcproject.org> |
294 | ||
295 | PR d/106555 | |
296 | * d-target.cc (Target::isReturnOnStack): Check for return type size. | |
297 | ||
4c23b534 GA |
298 | 2022-08-03 Iain Buclaw <ibuclaw@gdcproject.org> |
299 | ||
300 | * dmd/MERGE: Merge upstream dmd d7772a2369. | |
301 | * dmd/VERSION: Bump version to v2.100.1. | |
302 | * d-codegen.cc (get_frameinfo): Check whether decision to generate | |
303 | closure changed since semantic finished. | |
304 | * d-lang.cc (d_handle_option): Remove handling of -fdebug=level and | |
305 | -fversion=level. | |
306 | * decl.cc (DeclVisitor::visit (VarDeclaration *)): Generate evaluation | |
307 | of noreturn variable initializers before throw. | |
308 | * expr.cc (ExprVisitor::visit (AssignExp *)): Don't generate | |
309 | assignment for noreturn types, only evaluate for side effects. | |
310 | * lang.opt (fdebug=): Undocument -fdebug=level. | |
311 | (fversion=): Undocument -fversion=level. | |
312 | ||
4bc92c3b GA |
313 | 2022-07-06 Iain Buclaw <ibuclaw@gdcproject.org> |
314 | ||
315 | * dmd/MERGE: Merge upstream dmd 56589f0f4. | |
316 | ||
317 | 2022-07-06 Iain Buclaw <ibuclaw@gdcproject.org> | |
318 | ||
319 | * Make-lang.in (NOEXCEPTION_DFLAGS): Define. | |
320 | (ALL_DFLAGS): Add NO_EXCEPTION_DFLAGS. | |
321 | ||
ce600bc4 GA |
322 | 2022-06-29 Iain Buclaw <ibuclaw@gdcproject.org> |
323 | ||
324 | PR d/106139 | |
325 | * d-convert.cc (convert_expr): Handle casting from array to vector. | |
326 | (convert_for_rvalue): Rewrite vector to array casts of the same | |
327 | element type into a constructor. | |
328 | (convert_for_assignment): Return calling convert_for_rvalue. | |
329 | * expr.cc (ExprVisitor::visit (VectorExp *)): Handle generating a | |
330 | vector expression from a static array. | |
331 | * toir.cc (IRVisitor::visit (ReturnStatement *)): Call | |
332 | convert_for_rvalue on return value. | |
333 | ||
334 | 2022-06-29 Iain Buclaw <ibuclaw@gdcproject.org> | |
335 | ||
336 | * intrinsics.cc (build_shuffle_mask_type): Use to_constant when | |
337 | getting the number of subparts from a vector type. | |
338 | (expand_intrinsic_vec_shufflevector): Likewise. | |
339 | ||
340 | 2022-06-29 Iain Buclaw <ibuclaw@gdcproject.org> | |
341 | ||
342 | * intrinsics.cc: Include diagnostic.h, langhooks.h, | |
343 | vec-perm-indices.h. | |
344 | (maybe_set_intrinsic): Add cases for new simd intrinsics. | |
345 | (warn_mismatched_return_type): New function. | |
346 | (warn_mismatched_argument): New function. | |
347 | (build_shuffle_mask_type): New function. | |
348 | (maybe_warn_intrinsic_mismatch): New function. | |
349 | (expand_intrinsic_vec_cond): New function. | |
350 | (expand_intrinsic_vec_convert): New function. | |
351 | (expand_intrinsic_vec_blend): New function. | |
352 | (expand_intrinsic_vec_shuffle): New function. | |
353 | (expand_intrinsic_vec_shufflevector): New function. | |
354 | (expand_intrinsic_vec_load_unaligned): New function. | |
355 | (expand_intrinsic_vec_store_unaligned): New function. | |
356 | (maybe_expand_intrinsic): Check signature of intrinsic before handing | |
357 | off to front-end lowering. Add cases for new simd intrinsics. | |
358 | * intrinsics.def (INTRINSIC_LOADUNALIGNED): Define intrinsic. | |
359 | (INTRINSIC_STOREUNALIGNED): Define intrinsic. | |
360 | (INTRINSIC_SHUFFLE): Define intrinsic. | |
361 | (INTRINSIC_SHUFFLEVECTOR): Define intrinsic. | |
362 | (INTRINSIC_CONVERTVECTOR): Define intrinsic. | |
363 | (INTRINSIC_BLENDVECTOR): Define intrinsic. | |
364 | (INTRINSIC_EQUALMASK): Define intrinsic. | |
365 | (INTRINSIC_NOTEQUALMASK): Define intrinsic. | |
366 | (INTRINSIC_GREATERMASK): Define intrinsic. | |
367 | (INTRINSIC_GREATEREQUALMASK): Define intrinsic. | |
368 | ||
fb29fdea GA |
369 | 2022-06-28 Iain Buclaw <ibuclaw@gdcproject.org> |
370 | ||
371 | * d-codegen.cc: Include gimple-expr.h. | |
372 | (force_target_expr): Use create_tmp_var_raw. | |
373 | * decl.cc: Inlucde gimple-expr.h. | |
374 | (build_local_temp): Use create_tmp_var_raw. | |
375 | * intrinsics.cc (expand_intrinsic_rotate): Use get_callee_fndecl. | |
376 | (maybe_expand_intrinsic): Likewise. | |
377 | ||
378 | 2022-06-28 Iain Buclaw <ibuclaw@gdcproject.org> | |
379 | ||
380 | * d-attribs.cc (handle_omp_declare_simd_attribute): New function. | |
381 | (d_handle_simd_attribute): New function. | |
382 | (d_langhook_common_attribute_table): Add 'omp declare simd' attribute. | |
383 | (d_langhook_attribute_table): Add simd attribute. | |
384 | ||
84c2131d GA |
385 | 2022-06-24 Iain Buclaw <ibuclaw@gdcproject.org> |
386 | ||
387 | * d-attribs.cc (d_handle_section_attribute): Update error message. | |
388 | (d_handle_symver_attribute): Likewise. | |
389 | (d_handle_no_sanitize_attribute): Likewise. | |
390 | (d_handle_visibility_attribute): Likewise. | |
391 | ||
392 | 2022-06-24 Iain Buclaw <ibuclaw@gdcproject.org> | |
393 | ||
394 | PR d/105413 | |
395 | * d-attribs.cc (d_handle_register_attribute): New function. | |
396 | (d_langhook_attribute_table): Add register attribute. | |
397 | * d-codegen.cc (d_mark_addressable): Error if taken address of | |
398 | register variable. | |
399 | (build_frame_type): Error if register variable has non-local | |
400 | references. | |
401 | * d-tree.h (d_mark_addressable): Add complain parameter. | |
402 | * decl.cc (get_symbol_decl): Mark register varibles DECL_REGISTER. | |
403 | Error when register variable declared thread-local or extern. | |
404 | * expr.cc (ExprVisitor::visit (IndexExp *)): Don't complain about | |
405 | marking register vectors as addressable in an ARRAY_REF. | |
406 | ||
407 | 2022-06-24 Iain Buclaw <ibuclaw@gdcproject.org> | |
408 | ||
409 | * d-codegen.cc (build_array_index): Rename to... | |
410 | (build_pointer_index): ...this. | |
411 | * d-tree.h (build_array_index): Rename declaration to... | |
412 | (build_pointer_index): ...this. | |
413 | * expr.cc (ExprVisitor::visit (IndexExp *)): Construct indexes of | |
414 | ARRAY_TYPE using ARRAY_REF. | |
415 | (ExprVisitor::visit (SliceExp *)): Update. | |
416 | * intrinsics.cc (expand_intrinsic_bt): Update. | |
417 | ||
418 | 2022-06-24 Iain Buclaw <ibuclaw@gdcproject.org> | |
419 | ||
420 | * dmd/MERGE: Merge upstream dmd 529110f66. | |
421 | * decl.cc (DeclVisitor::visit (TupleDeclaration *)): Update for new | |
422 | front-end interface. | |
423 | * types.cc (layout_aggregate_members): Likewise. | |
424 | ||
5d0cf158 GA |
425 | 2022-06-22 Iain Buclaw <ibuclaw@gdcproject.org> |
426 | ||
427 | * dmd/MERGE: Merge upstream dmd 6203135dc. | |
428 | * typeinfo.cc (TypeInfoVisitor::visit (TypeInfoStructDeclaration *)): | |
429 | Update for new front-end interface. | |
430 | (SpeculativeTypeVisitor::visit (TypeStruct *)): Likewise. | |
431 | ||
499b9c5f GA |
432 | 2022-06-15 Iain Buclaw <ibuclaw@gdcproject.org> |
433 | ||
434 | * d-attribs.cc (d_langhook_attribute_table): Add no_sanitize. | |
435 | (d_handle_no_sanitize_attribute): New function. | |
436 | ||
437 | 2022-06-15 Iain Buclaw <ibuclaw@gdcproject.org> | |
438 | ||
439 | * d-attribs.cc (d_langhook_attribute_table): Add visibility. | |
440 | (insert_type_attribute): Use decl_attributes instead of | |
441 | merge_attributes. | |
442 | (insert_decl_attribute): Likewise. | |
443 | (apply_user_attributes): Do nothing when no UDAs applied. | |
444 | (d_handle_visibility_attribute): New function. | |
445 | * d-gimplify.cc (d_gimplify_binary_expr): Adjust. | |
446 | * d-tree.h (set_visibility_for_decl): Declare. | |
447 | * decl.cc (get_symbol_decl): Move setting of visibility flags to... | |
448 | (set_visibility_for_decl): ... here. New function. | |
449 | * types.cc (TypeVisitor::visit (TypeStruct *)): Call | |
450 | set_visibility_for_decl(). | |
451 | (TypeVisitor::visit (TypeClass *)): Likewise. | |
452 | ||
453 | 2022-06-15 Iain Buclaw <ibuclaw@gdcproject.org> | |
454 | ||
455 | * typeinfo.cc (make_internal_typeinfo): Set TYPE_ARTIFICIAL. | |
456 | ||
457 | 2022-06-15 Iain Buclaw <ibuclaw@gdcproject.org> | |
458 | ||
459 | * d-attribs.cc (apply_user_attributes): Set ATTR_FLAG_TYPE_IN_PLACE | |
460 | only on incomplete types. | |
461 | * d-codegen.cc (copy_aggregate_type): Set TYPE_STUB_DECL after copy. | |
462 | * d-compiler.cc (Compiler::onParseModule): Adjust. | |
463 | * d-tree.h (AGGREGATE_OR_ENUM_TYPE_CHECK): Define. | |
464 | (TYPE_FORWARD_REFERENCES): Define. | |
465 | * decl.cc (gcc_attribute_p): Update documentation. | |
466 | (DeclVisitor::visit (StructDeclaration *)): Exit before building type | |
467 | node if gcc.attributes symbol. | |
468 | (DeclVisitor::visit (ClassDeclaration *)): Build type node and add | |
469 | TYPE_NAME to current binding level before emitting anything else. | |
470 | (DeclVisitor::visit (InterfaceDeclaration *)): Likewise. | |
471 | (DeclVisitor::visit (EnumDeclaration *)): Likewise. | |
472 | (build_type_decl): Move rest_of_decl_compilation() call to | |
473 | finish_aggregate_type(). | |
474 | * types.cc (insert_aggregate_field): Move layout_decl() call to | |
475 | finish_aggregate_type(). | |
476 | (insert_aggregate_bitfield): Likewise. | |
477 | (layout_aggregate_members): Adjust. | |
478 | (finish_incomplete_fields): New function. | |
479 | (finish_aggregate_type): Handle forward referenced field types. Call | |
480 | rest_of_type_compilation() after completing the aggregate. | |
481 | (TypeVisitor::visit (TypeEnum *)): Don't set size and alignment until | |
482 | after apply_user_attributes(). Call rest_of_type_compilation() after | |
483 | completing the enumeral. | |
484 | (TypeVisitor::visit (TypeStruct *)): Call build_type_decl() before | |
485 | apply_user_attributes(). Don't set size, alignment, and mode until | |
486 | after apply_user_attributes(). | |
487 | (TypeVisitor::visit (TypeClass *)): Call build_type_decl() before | |
488 | applly_user_attributes(). | |
489 | ||
c3642271 GA |
490 | 2022-06-13 Iain Buclaw <ibuclaw@gdcproject.org> |
491 | ||
492 | * d-builtins.cc: Include builtins.h. | |
493 | (gcc_builtins_libfuncs): Remove. | |
494 | (strip_type_modifiers): New function. | |
495 | (matches_builtin_type): New function. | |
496 | (covariant_with_builtin_type_p): New function. | |
497 | (maybe_set_builtin_1): Set front-end built-in if identifier matches | |
498 | gcc built-in name. Apply user-specified attributes and assembler name | |
499 | overrides to the built-in. Warn about built-in declaration mismatches. | |
500 | (d_builtin_function): Set IDENTIFIER_DECL_TREE of built-in functions. | |
501 | * d-compiler.cc (Compiler::onParseModule): Scan all modules for any | |
502 | identifiers that match built-in function names. | |
503 | * lang.opt (Wbuiltin-declaration-mismatch): New option. | |
504 | ||
505 | 2022-06-13 Iain Buclaw <ibuclaw@gdcproject.org> | |
506 | ||
507 | * d-tree.h (check_typeinfo_type): Add Expression* parameter. | |
508 | (build_typeinfo): Likewise. Declare new override. | |
509 | * expr.cc (ExprVisitor): Call build_typeinfo with Expression*. | |
510 | * typeinfo.cc (check_typeinfo_type): Include expression in the | |
511 | diagnostic message. | |
512 | (build_typeinfo): New override. | |
513 | ||
514 | 2022-06-13 Iain Buclaw <ibuclaw@gdcproject.org> | |
515 | ||
516 | * dmd/MERGE: Merge upstream dmd 821ed393d. | |
517 | * expr.cc (ExprVisitor::visit (NewExp *)): Remove handled of | |
518 | allocating `@nogc' throwable object. | |
519 | * runtime.def (NEWTHROW): Remove. | |
520 | ||
b168441c GA |
521 | 2022-06-02 David Malcolm <dmalcolm@redhat.com> |
522 | ||
523 | * d-lang.cc (d_get_sarif_source_language): New. | |
524 | (LANG_HOOKS_GET_SARIF_SOURCE_LANGUAGE): Redefine. | |
525 | ||
820ead45 GA |
526 | 2022-05-31 Jason Merrill <jason@redhat.com> |
527 | ||
528 | * Make-lang.in (d.tags): Just look at *.cc. | |
529 | ||
530 | 2022-05-31 Iain Buclaw <ibuclaw@gdcproject.org> | |
531 | ||
532 | PR d/105544 | |
533 | * d-lang.cc (d_parse_file): Zero padding past the end of the stdin | |
534 | buffer so the D lexer has a sentinel to stop parsing at. | |
535 | ||
d9176e64 GA |
536 | 2022-05-27 Iain Buclaw <ibuclaw@gdcproject.org> |
537 | ||
538 | * dmd/MERGE: Merge upstream dmd 4d07f22f2 | |
539 | * d-lang.cc (d_handle_option): Handle OPT_fpreview_fiximmutableconv. | |
540 | * lang.opt (fpreview=fiximmutableconv): New option. | |
541 | * runtime.def (ARRAYAPPENDT): Remove. | |
542 | ||
3dff965c GA |
543 | 2022-05-25 Iain Buclaw <ibuclaw@gdcproject.org> |
544 | ||
545 | * expr.cc: Add "final" and "override" to all "visit" vfunc decls | |
546 | as appropriate. | |
547 | * imports.cc: Likewise. | |
548 | * typeinfo.cc: Likewise. | |
549 | ||
768f49a2 GA |
550 | 2022-05-24 David Malcolm <dmalcolm@redhat.com> |
551 | ||
552 | * decl.cc: Add "final" and "override" to all "visit" vfunc decls | |
553 | as appropriate. | |
554 | * expr.cc: Likewise. | |
555 | * toir.cc: Likewise. | |
556 | * typeinfo.cc: Likewise. | |
557 | * types.cc: Likewise. | |
558 | ||
702bd11f GA |
559 | 2022-05-16 Iain Buclaw <ibuclaw@gdcproject.org> |
560 | ||
561 | * dmd/MERGE: Merge upstream dmd 60bfa0ee7. | |
562 | * dmd/VERSION: Update version to v2.100.0. | |
563 | * d-builtins.cc (d_init_versions): Update for new front-end interface. | |
564 | * d-codegen.cc (d_decl_context): Use resolvedLinkage to get | |
565 | declaration linkage. | |
566 | (build_struct_literal): Track offset in bits. | |
567 | * d-gimplify.cc (d_gimplify_modify_expr): Check both operands for a | |
568 | bit-field reference. | |
569 | * d-lang.cc (d_handle_option): Handle -fpreview=bitfields, remove | |
570 | -frevert=markdown and -ftransition=vmarkdown. | |
571 | (d_post_options): Set flag_rtti and flag_exceptions if -fno-druntime | |
572 | was seen on command-line. | |
573 | (d_parse_file): Update for new front-end interface. | |
574 | (d_type_promotes_to): Use resolvedLinkage to get declaration linkage. | |
575 | * decl.cc (make_thunk): Likewise. | |
576 | * expr.cc (ExprVisitor::visit (CatAssignExp *)): Remove lowering for | |
577 | appending of an element or array to another array. | |
578 | * lang.opt (fpreview=bitfields): New option. | |
579 | (frevert=markdown): Remove. | |
580 | (ftransition=vmarkdown): Remove. | |
581 | * types.cc (layout_aggregate_members): Ignore anonymous fields in | |
582 | total count. | |
583 | ||
6b6f53d8 GA |
584 | 2022-04-28 Iain Buclaw <ibuclaw@gdcproject.org> |
585 | ||
586 | * dmd/MERGE: Merge upstream dmd 313d28b3d. | |
587 | * d-port.cc (Port::memicmp): Use d_size_t instead of size_t. | |
588 | (Port::valcpy): Likewise. | |
589 | ||
c1a9cf67 GA |
590 | 2022-04-21 Iain Buclaw <ibuclaw@gdcproject.org> |
591 | ||
592 | * dmd/MERGE: Merge upstream dmd eb7bee331. | |
593 | * dmd/VERSION: Update version to v2.100.0-beta.1. | |
594 | * d-lang.cc (d_handle_option): Handle OPT_frevert_dip1000. | |
595 | * lang.opt (frevert=dip1000): New option. | |
596 | ||
247bbed1 GA |
597 | 2022-04-13 Iain Buclaw <ibuclaw@gdcproject.org> |
598 | ||
599 | * Make-lang.in (D_FRONTEND_OBJS): Add d/common-bitfields.o, | |
600 | d/mustuse.o. | |
601 | * d-ctfloat.cc (CTFloat::isIdentical): Don't treat NaN values as | |
602 | identical. | |
603 | * dmd/MERGE: Merge upstream dmd 4d1bfcf14. | |
604 | * expr.cc (ExprVisitor::visit (VoidInitExp *)): New. | |
605 | ||
8af4270d GA |
606 | 2022-04-03 Iain Buclaw <ibuclaw@gdcproject.org> |
607 | ||
608 | * d-lang.cc: Include dmd/template.h. | |
609 | (d_parse_file): Call printTemplateStats when vtemplates is set. | |
610 | * decl.cc (start_function): Remove OPT_Wtemplates warning. | |
611 | * lang.opt (Wtemplates): Remove. | |
612 | ||
613 | 2022-04-02 Iain Buclaw <ibuclaw@gdcproject.org> | |
614 | ||
615 | * dmd/MERGE: Merge upstream dmd 47871363d. | |
616 | * d-builtins.cc (d_init_versions): Add predefined version identifiers | |
617 | D_PreConditions, D_PostConditions, and D_Invariants. | |
618 | * d-codegen.cc (d_build_call): Update for new front-end interface. | |
619 | (build_frame_type): Generate reference field for NRVO variables with | |
620 | nested references. | |
621 | (build_closure): Generate assignment of return address to closure. | |
622 | * d-tree.h (DECL_INSTANTIATED): Use DECL_LANG_FLAG_2. | |
623 | (bind_expr): Remove. | |
624 | * decl.cc (DeclVisitor::visit (FuncDeclaration *)): Update for new | |
625 | front-end interface. | |
626 | (get_symbol_decl): Likewise. | |
627 | (get_decl_tree): Check DECL_LANG_FRAME_FIELD before DECL_LANG_NRVO. | |
628 | Dereference the field when both are set. | |
629 | * expr.cc (ExprVisitor::visit (DeleteExp *)): Update for new front-end | |
630 | interface. | |
631 | * modules.cc (get_internal_fn): Likewise. | |
632 | * toir.cc (IRVisitor::visit (ReturnStatement *)): Likewise. | |
633 | ||
d156bb87 GA |
634 | 2022-03-21 Iain Buclaw <ibuclaw@gdcproject.org> |
635 | ||
636 | PR d/105004 | |
637 | * d-codegen.cc (build_struct_literal): Use complex_expr to build | |
638 | complex expressions from __c_complex types. | |
639 | ||
640 | 2022-03-21 Iain Buclaw <ibuclaw@gdcproject.org> | |
641 | ||
642 | PR d/104911 | |
643 | * dmd/MERGE: Merge upstream dmd 2503f17e5. | |
644 | * d-convert.cc (convert_expr): Replace d_uns64 with dinteger_t. | |
645 | * d-lang.cc: Remove dmd/root/file.h include. | |
646 | (d_handle_option): Update for new front-end interface. | |
647 | (d_parse_file): Likewise. | |
648 | ||
b9756c08 GA |
649 | 2022-03-13 Iain Buclaw <ibuclaw@gdcproject.org> |
650 | ||
651 | * dmd/MERGE: Merge upstream dmd 02a3fafc6. | |
652 | * dmd/VERSION: Update version to v2.099.0. | |
653 | * imports.cc (ImportVisitor::visit (EnumDeclaration *)): Don't cache | |
654 | decl in front-end AST node. | |
655 | (ImportVisitor::visit (AggregateDeclaration *)): Likewise. | |
656 | (ImportVisitor::visit (ClassDeclaration *)): Likewise. | |
657 | ||
b00f9761 GA |
658 | 2022-03-11 Iain Buclaw <ibuclaw@gdcproject.org> |
659 | ||
660 | * imports.cc (imported_decls): Define. | |
661 | (class ImportVisitor): Add result_ field. | |
662 | (ImportVisitor::result): New method. | |
663 | (ImportVisitor::visit (Module *)): Store decl to result_. | |
664 | (ImportVisitor::visit (Import *)): Likewise. | |
665 | (ImportVisitor::visit (AliasDeclaration *)): Don't cache decl in | |
666 | front-end AST node. | |
667 | (ImportVisitor::visit (OverDeclaration *)): Likewise. | |
668 | (ImportVisitor::visit (FuncDeclaration *)): Likewise. | |
669 | (ImportVisitor::visit (Declaration *)): Likewise. | |
670 | (build_import_decl): Use imported_decls to cache and lookup built | |
671 | declarations. | |
672 | ||
673 | 2022-03-11 Iain Buclaw <ibuclaw@gdcproject.org> | |
674 | ||
675 | PR translation/104552 | |
676 | * lang.opt (fdump-cxx-spec=): Fix typo in argument handle. | |
677 | (fpreview=fixaliasthis): Quote `alias this' as code. | |
678 | ||
ea4911c4 GA |
679 | 2022-03-02 Iain Buclaw <ibuclaw@gdcproject.org> |
680 | ||
681 | * dmd/MERGE: Merge upstream dmd 423f19b41. | |
682 | ||
a35f1697 GA |
683 | 2022-02-28 Iain Buclaw <ibuclaw@gdcproject.org> |
684 | ||
685 | * d-target.cc (Target::_init): Initialize C type size fields. | |
686 | * dmd/MERGE: Merge upstream dmd cf63dd8e5. | |
687 | * dmd/VERSION: Update version to v2.099.0-rc.1. | |
688 | ||
c42f1e77 GA |
689 | 2022-02-20 Iain Buclaw <ibuclaw@gdcproject.org> |
690 | ||
691 | * expr.cc (ExprVisitor::visit (DeleteExp *)): Remove handling of | |
692 | deleting GC allocated classes. | |
693 | * runtime.def (DELCLASS): Remove. | |
694 | (DELINTERFACE): Remove. | |
695 | ||
696 | 2022-02-20 Iain Buclaw <ibuclaw@gdcproject.org> | |
697 | ||
698 | * dmd/MERGE: Merge upstream dmd cb49e99f8. | |
699 | * dmd/VERSION: Update version to v2.099.0-beta.1. | |
700 | * decl.cc (layout_class_initializer): Update call to NewExp::create. | |
701 | * expr.cc (ExprVisitor::visit (DeleteExp *)): Remove handling of | |
702 | deleting arrays and pointers. | |
703 | (ExprVisitor::visit (DotVarExp *)): Convert complex types to the | |
704 | front-end library type representing them. | |
705 | (ExprVisitor::visit (StringExp *)): Use getCodeUnit instead of charAt | |
706 | to get the value of each index in a string expression. | |
707 | * runtime.def (DELMEMORY): Remove. | |
708 | (DELARRAYT): Remove. | |
709 | * types.cc (TypeVisitor::visit (TypeEnum *)): Handle anonymous enums. | |
710 | ||
cb3afcd2 GA |
711 | 2022-02-16 Iain Buclaw <ibuclaw@gdcproject.org> |
712 | ||
713 | * d-builtins.cc (d_build_builtins_module): Set purity of DECL_PURE_P | |
714 | functions to PURE::const_. | |
715 | * d-gimplify.cc (bit_field_ref): New function. | |
716 | (d_gimplify_modify_expr): Handle implicit casting for assignments to | |
717 | bit-fields. | |
718 | (d_gimplify_unary_expr): New function. | |
719 | (d_gimplify_binary_expr): New function. | |
720 | (d_gimplify_expr): Handle UNARY_CLASS_P and BINARY_CLASS_P. | |
721 | * d-target.cc (Target::_init): Initialize bitFieldStyle. | |
722 | (TargetCPP::parameterType): Update signature. | |
723 | (Target::supportsLinkerDirective): New function. | |
724 | * dmd/MERGE: Merge upstream dmd 52844d4b1. | |
725 | * expr.cc (ExprVisitor::visit (ThrowExp *)): New function. | |
726 | * types.cc (d_build_bitfield_integer_type): New function. | |
727 | (insert_aggregate_bitfield): New function. | |
728 | (layout_aggregate_members): Handle inserting bit-fields into an | |
729 | aggregate type. | |
730 | ||
1bb52662 GA |
731 | 2022-01-31 Martin Liska <mliska@suse.cz> |
732 | ||
733 | PR d/104287 | |
734 | * decl.cc (d_finish_decl): Remove trailing dot. | |
735 | ||
f6f2d6cf GA |
736 | 2022-01-28 Martin Liska <mliska@suse.cz> |
737 | ||
738 | * decl.cc (d_finish_decl): Do not use leading capital letter. | |
739 | ||
fc829782 GA |
740 | 2022-01-17 Martin Liska <mliska@suse.cz> |
741 | ||
742 | * d-gimplify.cc: Rename .c names to .cc. | |
743 | * d-incpath.cc: Likewise. | |
744 | * lang-specs.h: Likewise. | |
745 | ||
a4ae8c37 GA |
746 | 2022-01-03 Iain Buclaw <ibuclaw@gdcproject.org> |
747 | ||
748 | PR d/103840 | |
749 | * dmd/MERGE: Merge upstream dmd 001bfd97b. | |
750 | * Make-lang.in (D_FRONTEND_OBJS): Rename d/complex.o to | |
751 | d/root-complex.o, and d/utf.o to d/root/utf.o. | |
752 | ||
753 | 2022-01-03 Jakub Jelinek <jakub@redhat.com> | |
754 | ||
755 | * gdc.texi: Bump @copyrights-d year. | |
756 | ||
b4c522fa | 757 | \f |
6123f29a | 758 | Copyright (C) 2022 Free Software Foundation, Inc. |
b4c522fa IB |
759 | |
760 | Copying and distribution of this file, with or without modification, | |
761 | are permitted in any medium without royalty provided the copyright | |
762 | notice and this notice are preserved. |