toir.cc (pop_label): Only queue labels in a vector.
[gcc.git] / gcc / d / ChangeLog
1 2019-06-11 Richard Biener <rguenthe@suse.de>
2
3 d/90778
4 * toir.cc (pop_label): Only queue labels in a vector.
5 (cmp_labels): Label decl comparator.
6 (pop_binding_level): Pop labels in DECL_UID order to avoid
7 debug info differences.
8
9 2019-05-24 Nathan Sidwell <nathan@acm.org>
10
11 * types.cc (fixup_anonymous_offset): Use IDENTIFIER_ANON_P.
12 (layout_aggregate_members): Use make_anon_name.
13
14 2019-05-16 Martin Sebor <msebor@redhat.com>
15
16 * d-builtins.cc (d_init_builtins): Quote keywords, operators,
17 and types in diagnostics.
18 * d-codegen.cc (get_array_length): Same. Replace can't with cannot.
19 * d-convert.cc (convert_expr): Same.
20 * d-frontend.cc (getTypeInfoType): Quote an option name in
21 a diagnostic.
22 * d-lang.cc (d_handle_option): Same.
23 (d_parse_file): Same.
24 * decl.cc: Remove a trailing period from a diagnostic.
25 * expr.cc: Use a directive for an apostrophe.
26 * toir.cc: Quote keywords, operators, and types in diagnostics.
27 * typeinfo.cc (build_typeinfo): Quote an option name in a diagnostic.
28
29 2019-04-25 Johannes Pfau <johannespfau@gmail.com>
30
31 * config-lang.in: Do not add target_libs if phobos is disabled.
32
33 2019-04-23 Iain Buclaw <ibuclaw@gdcproject.org>
34 Robin Dapp <rdapp@linux.ibm.com>
35
36 * typeinfo.cc (create_typeinfo): Write typeinfo flags as uint.
37
38 2019-04-23 Iain Buclaw <ibuclaw@gdcproject.org>
39
40 * d-builtins.cc (d_init_versions): Add D_BetterC, D_ModuleInfo,
41 D_Exceptions, D_TypeInfo as predefined version conditions.
42 * d-codegen.cc (build_bounds_condition): Generate trap if D asserts
43 are turned off.
44 * d-frontend.cc (getTypeInfoType): Add error when -fno-rtti is set.
45 * d-lang.cc (d_init_options): Initialize new front-end options.
46 (d_handle_option): Handle -fdruntime, -fexceptions, and -frtti.
47 (d_post_options): Turn off D runtime features if -fno-druntime is set.
48 * d-spec.cc (lang_specific_driver): Handle -fdruntime.
49 * d-tree.h (have_typeinfo_p): Add prototype.
50 (build_typeinfo): Update prototype.
51 * decl.cc (DeclVisitor::visit(StructDeclaration)): Create typeinfo
52 only if TypeInfo exists.
53 (DeclVisitor::visit(ClassDeclaration)): Likewise.
54 (DeclVisitor::visit(InterfaceDeclaration)): Likewise.
55 (DeclVisitor::visit(EnumDeclaration)): Likewise.
56 * expr.cc: Update all calls to build_typeinfo.
57 * gdc.texi (Runtime Options): Document -fdruntime and -frtti.
58 * lang.opt: Add -fdruntime and -frtti.
59 * modules.cc (build_module_tree): Create module info only if
60 ModuleInfo exists.
61 * toir.cc (IRVisitor::visit(ThrowStatement)): Update test for
62 -fno-exceptions.
63 * typeinfo.cc (create_tinfo_types): Build internal typeinfo classes
64 only if Object exists.
65 (have_typeinfo_p): New function.
66 (class TypeInfoVisitor): Update all calls to build_typeinfo.
67 (build_typeinfo): Add error when -fno-rtti is set.
68
69 2019-04-21 Iain Buclaw <ibuclaw@gdcproject.org>
70
71 * decl.cc (DeclVisitor::visit(Import)): Set semanticRun after
72 completion, guard against being called more than once.
73 (DeclVisitor::visit(StructDeclaration)): Likewise.
74 (DeclVisitor::visit(ClassDeclaration)): Likewise.
75 (DeclVisitor::visit(InterfaceDeclaration)): Likewise.
76 (DeclVisitor::visit(VarDeclaration)): Likewise.
77 (DeclVisitor::visit(TypeInfoDeclaration)): Likewise.
78
79 2019-04-21 Iain Buclaw <ibuclaw@gdcproject.org>
80
81 * modules.cc (register_module_decl): Don't register unittests against
82 the ModuleInfo symbol for -fbuilding-libphobos-tests.
83
84 2019-04-17 Iain Buclaw <ibuclaw@gdcproject.org>
85
86 * d-system.h (POSIX): Define unix as POSIX.
87 (INT32_MAX, INT32_MIN, INT64_MIN, UINT32_MAX, UINT64_MAX): Provide
88 fallback definitions.
89
90 2019-04-16 Iain Buclaw <ibuclaw@gdcproject.org>
91
92 * Make-lang.in (d.mostyclean): Clean idgen and impcvgen.
93 (d/idgen): Rename to d/idgen$(build_exeext), add BUILD_LIBDEPS.
94 (d/impcvgen): Rename to d/impcvgen$(build_exeext), add BUILD_LIBDEPS.
95 (d/id.c): Call idgen$(build_exeext).
96 (d/impcnvtab.c): Call impcvgen$(build_exeext).
97
98 2019-04-14 Johannes Pfau <johannespfau@gmail.com>
99 PR d/87799
100 * d-system.h (_mkdir): Forward _mkdir on MinGW to mkdir in system.h.
101
102 2019-04-12 Iain Buclaw <ibuclaw@gdcproject.org>
103
104 * d-tree.h (DECL_IN_UNITTEST_CONDITION_P): Define.
105 * decl.cc (DeclVisitor): Add in_version_unittest_ field.
106 (DeclVisitor::visit(ConditionalDeclaration)): New override.
107 (DeclVisitor::visit(FuncDeclaration)): Set
108 DECL_IN_UNITTEST_CONDITION_P.
109 * lang.opt (-fbuilding-libphobos-tests): Add option.
110 * modules.cc (current_testing_module): New static variable.
111 (build_module_tree): Generate second moduleinfo symbol to hold
112 reference to unittests if flag_building_libphobos_tests.
113 (register_module_decl): Check DECL_IN_UNITTEST_CONDITION_P to decide
114 which moduleinfo the decl should be registered against.
115
116 2019-03-31 Iain Buclaw <ibuclaw@gdcproject.org>
117
118 PR d/88462
119 * modules.cc (layout_moduleinfo_fields): Properly align ModuleInfo,
120 instead of forcing alignment to be 1.
121
122 2019-03-21 Iain Buclaw <ibuclaw@gdcproject.org>
123
124 PR d/89017
125 * d-codegen.cc (d_decl_context): Skip over template instances when
126 finding the context.
127 * decl.cc (DeclVisitor::visit(TemplateDeclaration)): New override.
128 (build_type_decl): Include parameters in name of template types.
129
130 2019-03-13 Iain Buclaw <ibuclaw@gdcproject.org>
131
132 PR d/88957
133 * expr.cc (ExprVisitor::visit(VectorArrayExp)): New override.
134
135 2019-03-12 Iain Buclaw <ibuclaw@gdcproject.org>
136
137 PR d/87866
138 * d-system.h (realpath): Redefine as lrealpath.
139
140 2019-03-12 Iain Buclaw <ibuclaw@gdcproject.org>
141
142 * d-lang.cc (d_init_options): Set global.params.cplusplus to C++14.
143 * d-target.cc (Target::cppFundamentalType): New method.
144
145 2019-03-09 Iain Buclaw <ibuclaw@gdcproject.org>
146
147 PR d/89041
148 * d-codegen.cc (get_frame_for_symbol): Delegate literals defined in
149 global scope don't have a frame pointer.
150
151 2019-03-01 Iain Buclaw <ibuclaw@gdcproject.org>
152
153 * d-builtins.cc (d_init_versions): Add CppRuntime_Gcc as predefined
154 version condition.
155
156 2019-02-14 Maya Rashish <coypu@sdf.org>
157
158 * d-system.h: NetBSD is POSIX.
159
160 2019-02-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
161
162 PR d/87864
163 * lang.opt (dstartfiles): New option.
164 * d-spec.cc (need_spec): New variable.
165 (lang_specific_driver) <OPT_dstartfiles>: Enable need_spec.
166 (lang_specific_pre_link): Also load libgphobos.spec if need_spec.
167
168 2019-01-26 Iain Buclaw <ibuclaw@gdcproject.org>
169
170 PR d/89042
171 * decl.cc (DeclVisitor::visit(VarDeclaration)): Don't assert if
172 handling a void initialized manifest constant.
173
174 2019-01-21 Iain Buclaw <ibuclaw@gdcproject.org>
175
176 * d-frontend.cc (Compiler::paintAsType): Update for new signature.
177
178 2019-01-20 Iain Buclaw <ibuclaw@gdcproject.org>
179
180 * d-builtins.cc (d_init_versions): Check value of
181 STACK_GROWS_DOWNWARD.
182
183 2019-01-20 Iain Buclaw <ibuclaw@gdcproject.org>
184
185 * d-codegen.cc (identity_compare_p): Return false if seen built-in
186 type with padding.
187 (build_float_identity): Moved here from expr.cc.
188 (lower_struct_comparison): Handle real and complex types.
189 * d-tree.h (build_float_identity): New.
190 * expr.cc (build_float_identity): Move to d-codegen.cc.
191
192 2019-01-20 Johannes Pfau <johannespfau@gmail.com>
193
194 * expr.cc (build_float_identity): New function.
195 (ExprVisitor::visit(IdentityExp)): Add support for complex types.
196
197 2019-01-16 Iain Buclaw <ibuclaw@gdcproject.org>
198
199 PR d/87824
200 * d-lang.cc (d_post_options): Disable implicit
201 -forder-blocks-and-partition.
202
203 2019-01-16 Iain Buclaw <ibuclaw@gdcproject.org>
204
205 * d-codegen.cc (build_typeof_null_value): New function.
206 * d-tree.h (build_typeof_null_value): Declare.
207 * d-convert.cc (convert_expr): Use build_typeof_null_value.
208 * expr.cc (ExprVisitor::visit(NullExp)): Likewise.
209
210 2019-01-15 Richard Sandiford <richard.sandiford@arm.com>
211
212 PR inline-asm/52813
213 * lang.opt (Wdeprecated): Reference common.opt instead of c.opt.
214
215 2019-01-12 Iain Buclaw <ibuclaw@gdcproject.org>
216
217 * README.gcc: New file.
218
219 2019-01-01 Jakub Jelinek <jakub@redhat.com>
220
221 Update copyright years.
222
223 * gdc.texi: Bump @copyrights-d year.
224 \f
225 Copyright (C) 2019 Free Software Foundation, Inc.
226
227 Copying and distribution of this file, with or without modification,
228 are permitted in any medium without royalty provided the copyright
229 notice and this notice are preserved.