comparison gcc/d/ChangeLog-2019 @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents
children
comparison
equal deleted inserted replaced
131:84e7813d76e9 145:1830386684a0
1 2019-11-14 Richard Sandiford <richard.sandiford@arm.com>
2
3 * d-codegen.cc (build_boolop): Use truth_type_for instead of
4 build_same_sized_truth_vector_type.
5
6 2019-11-13 Joseph Myers <joseph@codesourcery.com>
7
8 * d-target.cc (define_float_constants): Update call to
9 get_max_float.
10
11 2019-11-04 Richard Sandiford <richard.sandiford@arm.com>
12
13 * d-builtins.cc (build_frontend_type): Cope with variable
14 TYPE_VECTOR_SUBPARTS.
15
16 2019-08-23 Jakub Jelinek <jakub@redhat.com>
17
18 PR middle-end/91283
19 * d-lang.cc (d_post_options): Set flag_excess_precision instead of
20 flag_excess_precision_cmdline.
21
22 2019-08-20 Iain Buclaw <ibuclaw@gdcproject.org>
23
24 PR d/88722
25 * modules.cc: Include diagnostic.h.
26 (register_moduleinfo): Use sorry instead of gcc_assert for targets
27 without named sections.
28
29 2019-08-20 Iain Buclaw <ibuclaw@gdcproject.org>
30
31 * d-target.cc: Include diagnostic.h.
32 (Target::_init): Set Tsize_t and Tptrdiff_t as D ushort and short if
33 the target pointer size is 2. Add sorry if the pointer size is not
34 either 2, 4, or 8.
35
36 2019-08-20 Iain Buclaw <ibuclaw@gdcproject.org>
37
38 PR d/90446
39 * d-lang.cc (d_type_for_mode): Check for all internal __intN types.
40 (d_type_for_size): Likewise.
41
42 2019-08-20 Iain Buclaw <ibuclaw@gdcproject.org>
43
44 PR d/90445
45 * d-builtins.cc (d_build_c_type_nodes): Test UINTMAX_TYPE for setting
46 uintmax_type_node. Set signed_size_type_node as the signed_type_for
47 size_type_node.
48
49 2019-08-20 Iain Buclaw <ibuclaw@gdcproject.org>
50
51 PR d/90444
52 * d-builtins.cc (build_frontend_type): Build anonymous RECORD_TYPE
53 nodes as well, push all fields to the struct members.
54 (d_build_builtins_module): Push anonymous va_list structs to the
55 builtins module, naming them __builtin_va_list.
56 (d_init_builtins): Use sorry instead of gcc_unreachable if va_list did
57 not succeed in being represented as a D type.
58
59 2019-08-13 Richard Sandiford <richard.sandiford@arm.com>
60
61 PR middle-end/91421
62 * intrinsics.cc (maybe_set_intrinsic): Use set_decl_built_in_function.
63
64 2019-08-11 Iain Buclaw <ibuclaw@gdcproject.org>
65
66 PR d/90601
67 * d-convert.cc (convert_expr): Don't convert an expression to its
68 original front-end type before converting to its target type.
69
70 2019-08-10 Iain Buclaw <ibuclaw@gdcproject.org>
71
72 PR d/91238
73 * d-codegen.cc (build_address): If taking the address of a CALL_EXPR,
74 wrap it in a TARGET_EXPR.
75
76 2019-08-10 Iain Buclaw <ibuclaw@gdcproject.org>
77
78 PR d/90893
79 * runtime.cc (enum libcall_type): Rename to...
80 (enum d_libcall_type): ...this.
81 (get_libcall_type): Use d_libcall_type.
82 (build_libcall_decl): Likewise.
83
84 2019-06-16 Iain Buclaw <ibuclaw@gdcproject.org>
85
86 PR d/90559
87 * d-target.cc (Target::_init): Reduce max static data size to INT_MAX.
88
89 2019-06-16 Iain Buclaw <ibuclaw@gdcproject.org>
90
91 PR d/90651
92 * typeinfo.cc (object_module): New variable.
93 (make_frontend_typeinfo): Update signature. Set temporary on
94 generated TypeInfo classes.
95 (create_tinfo_types): Set object_module. Move generation of front-end
96 typeinfo into ...
97 (create_frontend_tinfo_types): ... New function.
98 (layout_typeinfo): Call create_frontend_tinfo_types.
99 (layout_classinfo): Likewise.
100 (layout_cpp_typeinfo): Likewise.
101 (create_typeinfo): Likewise.
102
103 2019-06-11 Richard Biener <rguenthe@suse.de>
104
105 d/90778
106 * toir.cc (pop_label): Only queue labels in a vector.
107 (cmp_labels): Label decl comparator.
108 (pop_binding_level): Pop labels in DECL_UID order to avoid
109 debug info differences.
110
111 2019-05-24 Nathan Sidwell <nathan@acm.org>
112
113 * types.cc (fixup_anonymous_offset): Use IDENTIFIER_ANON_P.
114 (layout_aggregate_members): Use make_anon_name.
115
116 2019-05-16 Martin Sebor <msebor@redhat.com>
117
118 * d-builtins.cc (d_init_builtins): Quote keywords, operators,
119 and types in diagnostics.
120 * d-codegen.cc (get_array_length): Same. Replace can't with cannot.
121 * d-convert.cc (convert_expr): Same.
122 * d-frontend.cc (getTypeInfoType): Quote an option name in
123 a diagnostic.
124 * d-lang.cc (d_handle_option): Same.
125 (d_parse_file): Same.
126 * decl.cc: Remove a trailing period from a diagnostic.
127 * expr.cc: Use a directive for an apostrophe.
128 * toir.cc: Quote keywords, operators, and types in diagnostics.
129 * typeinfo.cc (build_typeinfo): Quote an option name in a diagnostic.
130
131 2019-04-25 Johannes Pfau <johannespfau@gmail.com>
132
133 * config-lang.in: Do not add target_libs if phobos is disabled.
134
135 2019-04-23 Iain Buclaw <ibuclaw@gdcproject.org>
136 Robin Dapp <rdapp@linux.ibm.com>
137
138 * typeinfo.cc (create_typeinfo): Write typeinfo flags as uint.
139
140 2019-04-23 Iain Buclaw <ibuclaw@gdcproject.org>
141
142 * d-builtins.cc (d_init_versions): Add D_BetterC, D_ModuleInfo,
143 D_Exceptions, D_TypeInfo as predefined version conditions.
144 * d-codegen.cc (build_bounds_condition): Generate trap if D asserts
145 are turned off.
146 * d-frontend.cc (getTypeInfoType): Add error when -fno-rtti is set.
147 * d-lang.cc (d_init_options): Initialize new front-end options.
148 (d_handle_option): Handle -fdruntime, -fexceptions, and -frtti.
149 (d_post_options): Turn off D runtime features if -fno-druntime is set.
150 * d-spec.cc (lang_specific_driver): Handle -fdruntime.
151 * d-tree.h (have_typeinfo_p): Add prototype.
152 (build_typeinfo): Update prototype.
153 * decl.cc (DeclVisitor::visit(StructDeclaration)): Create typeinfo
154 only if TypeInfo exists.
155 (DeclVisitor::visit(ClassDeclaration)): Likewise.
156 (DeclVisitor::visit(InterfaceDeclaration)): Likewise.
157 (DeclVisitor::visit(EnumDeclaration)): Likewise.
158 * expr.cc: Update all calls to build_typeinfo.
159 * gdc.texi (Runtime Options): Document -fdruntime and -frtti.
160 * lang.opt: Add -fdruntime and -frtti.
161 * modules.cc (build_module_tree): Create module info only if
162 ModuleInfo exists.
163 * toir.cc (IRVisitor::visit(ThrowStatement)): Update test for
164 -fno-exceptions.
165 * typeinfo.cc (create_tinfo_types): Build internal typeinfo classes
166 only if Object exists.
167 (have_typeinfo_p): New function.
168 (class TypeInfoVisitor): Update all calls to build_typeinfo.
169 (build_typeinfo): Add error when -fno-rtti is set.
170
171 2019-04-21 Iain Buclaw <ibuclaw@gdcproject.org>
172
173 * decl.cc (DeclVisitor::visit(Import)): Set semanticRun after
174 completion, guard against being called more than once.
175 (DeclVisitor::visit(StructDeclaration)): Likewise.
176 (DeclVisitor::visit(ClassDeclaration)): Likewise.
177 (DeclVisitor::visit(InterfaceDeclaration)): Likewise.
178 (DeclVisitor::visit(VarDeclaration)): Likewise.
179 (DeclVisitor::visit(TypeInfoDeclaration)): Likewise.
180
181 2019-04-21 Iain Buclaw <ibuclaw@gdcproject.org>
182
183 * modules.cc (register_module_decl): Don't register unittests against
184 the ModuleInfo symbol for -fbuilding-libphobos-tests.
185
186 2019-04-17 Iain Buclaw <ibuclaw@gdcproject.org>
187
188 * d-system.h (POSIX): Define unix as POSIX.
189 (INT32_MAX, INT32_MIN, INT64_MIN, UINT32_MAX, UINT64_MAX): Provide
190 fallback definitions.
191
192 2019-04-16 Iain Buclaw <ibuclaw@gdcproject.org>
193
194 * Make-lang.in (d.mostyclean): Clean idgen and impcvgen.
195 (d/idgen): Rename to d/idgen$(build_exeext), add BUILD_LIBDEPS.
196 (d/impcvgen): Rename to d/impcvgen$(build_exeext), add BUILD_LIBDEPS.
197 (d/id.c): Call idgen$(build_exeext).
198 (d/impcnvtab.c): Call impcvgen$(build_exeext).
199
200 2019-04-14 Johannes Pfau <johannespfau@gmail.com>
201 PR d/87799
202 * d-system.h (_mkdir): Forward _mkdir on MinGW to mkdir in system.h.
203
204 2019-04-12 Iain Buclaw <ibuclaw@gdcproject.org>
205
206 * d-tree.h (DECL_IN_UNITTEST_CONDITION_P): Define.
207 * decl.cc (DeclVisitor): Add in_version_unittest_ field.
208 (DeclVisitor::visit(ConditionalDeclaration)): New override.
209 (DeclVisitor::visit(FuncDeclaration)): Set
210 DECL_IN_UNITTEST_CONDITION_P.
211 * lang.opt (-fbuilding-libphobos-tests): Add option.
212 * modules.cc (current_testing_module): New static variable.
213 (build_module_tree): Generate second moduleinfo symbol to hold
214 reference to unittests if flag_building_libphobos_tests.
215 (register_module_decl): Check DECL_IN_UNITTEST_CONDITION_P to decide
216 which moduleinfo the decl should be registered against.
217
218 2019-03-31 Iain Buclaw <ibuclaw@gdcproject.org>
219
220 PR d/88462
221 * modules.cc (layout_moduleinfo_fields): Properly align ModuleInfo,
222 instead of forcing alignment to be 1.
223
224 2019-03-21 Iain Buclaw <ibuclaw@gdcproject.org>
225
226 PR d/89017
227 * d-codegen.cc (d_decl_context): Skip over template instances when
228 finding the context.
229 * decl.cc (DeclVisitor::visit(TemplateDeclaration)): New override.
230 (build_type_decl): Include parameters in name of template types.
231
232 2019-03-13 Iain Buclaw <ibuclaw@gdcproject.org>
233
234 PR d/88957
235 * expr.cc (ExprVisitor::visit(VectorArrayExp)): New override.
236
237 2019-03-12 Iain Buclaw <ibuclaw@gdcproject.org>
238
239 PR d/87866
240 * d-system.h (realpath): Redefine as lrealpath.
241
242 2019-03-12 Iain Buclaw <ibuclaw@gdcproject.org>
243
244 * d-lang.cc (d_init_options): Set global.params.cplusplus to C++14.
245 * d-target.cc (Target::cppFundamentalType): New method.
246
247 2019-03-09 Iain Buclaw <ibuclaw@gdcproject.org>
248
249 PR d/89041
250 * d-codegen.cc (get_frame_for_symbol): Delegate literals defined in
251 global scope don't have a frame pointer.
252
253 2019-03-01 Iain Buclaw <ibuclaw@gdcproject.org>
254
255 * d-builtins.cc (d_init_versions): Add CppRuntime_Gcc as predefined
256 version condition.
257
258 2019-02-14 Maya Rashish <coypu@sdf.org>
259
260 * d-system.h: NetBSD is POSIX.
261
262 2019-02-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
263
264 PR d/87864
265 * lang.opt (dstartfiles): New option.
266 * d-spec.cc (need_spec): New variable.
267 (lang_specific_driver) <OPT_dstartfiles>: Enable need_spec.
268 (lang_specific_pre_link): Also load libgphobos.spec if need_spec.
269
270 2019-01-26 Iain Buclaw <ibuclaw@gdcproject.org>
271
272 PR d/89042
273 * decl.cc (DeclVisitor::visit(VarDeclaration)): Don't assert if
274 handling a void initialized manifest constant.
275
276 2019-01-21 Iain Buclaw <ibuclaw@gdcproject.org>
277
278 * d-frontend.cc (Compiler::paintAsType): Update for new signature.
279
280 2019-01-20 Iain Buclaw <ibuclaw@gdcproject.org>
281
282 * d-builtins.cc (d_init_versions): Check value of
283 STACK_GROWS_DOWNWARD.
284
285 2019-01-20 Iain Buclaw <ibuclaw@gdcproject.org>
286
287 * d-codegen.cc (identity_compare_p): Return false if seen built-in
288 type with padding.
289 (build_float_identity): Moved here from expr.cc.
290 (lower_struct_comparison): Handle real and complex types.
291 * d-tree.h (build_float_identity): New.
292 * expr.cc (build_float_identity): Move to d-codegen.cc.
293
294 2019-01-20 Johannes Pfau <johannespfau@gmail.com>
295
296 * expr.cc (build_float_identity): New function.
297 (ExprVisitor::visit(IdentityExp)): Add support for complex types.
298
299 2019-01-16 Iain Buclaw <ibuclaw@gdcproject.org>
300
301 PR d/87824
302 * d-lang.cc (d_post_options): Disable implicit
303 -forder-blocks-and-partition.
304
305 2019-01-16 Iain Buclaw <ibuclaw@gdcproject.org>
306
307 * d-codegen.cc (build_typeof_null_value): New function.
308 * d-tree.h (build_typeof_null_value): Declare.
309 * d-convert.cc (convert_expr): Use build_typeof_null_value.
310 * expr.cc (ExprVisitor::visit(NullExp)): Likewise.
311
312 2019-01-15 Richard Sandiford <richard.sandiford@arm.com>
313
314 PR inline-asm/52813
315 * lang.opt (Wdeprecated): Reference common.opt instead of c.opt.
316
317 2019-01-12 Iain Buclaw <ibuclaw@gdcproject.org>
318
319 * README.gcc: New file.
320
321 2019-01-01 Jakub Jelinek <jakub@redhat.com>
322
323 Update copyright years.
324
325 * gdc.texi: Bump @copyrights-d year.
326
327 Copyright (C) 2019 Free Software Foundation, Inc.
328
329 Copying and distribution of this file, with or without modification,
330 are permitted in any medium without royalty provided the copyright
331 notice and this notice are preserved.