d: Merge UDAs between function prototype and definitions (PR90136)
[gcc.git] / gcc / d / ChangeLog
1 2020-04-01 Iain Buclaw <ibuclaw@gdcproject.org>
2
3 PR d/90136
4 * d-attribs.cc: Include dmd/attrib.h.
5 (build_attributes): Redeclare as static.
6 (apply_user_attributes): New function.
7 * d-tree.h (class UserAttributeDeclaration): Remove.
8 (build_attributes): Remove.
9 (apply_user_attributes): Declare.
10 (finish_aggregate_type): Remove attrs argument.
11 * decl.cc (get_symbol_decl): Merge declaration prototypes with
12 definitions. Use apply_user_attributes.
13 * modules.cc (layout_moduleinfo_fields): Remove last argument to
14 finish_aggregate_type.
15 * typeinfo.cc (layout_classinfo_interfaces): Likewise.
16 * types.cc (layout_aggregate_members): Likewise.
17 (finish_aggregate_type): Remove attrs argument.
18 (TypeVisitor::visit (TypeEnum *)): Use apply_user_attributes.
19 (TypeVisitor::visit (TypeStruct *)): Remove last argument to
20 finish_aggregate_type. Use apply_user_attributes.
21 (TypeVisitor::visit (TypeClass *)): Likewise.
22
23 2020-03-31 Iain Buclaw <ibuclaw@gdcproject.org>
24
25 * d-attribs.cc (d_langhook_common_attribute_table): Add always_inline.
26 (handle_always_inline_attribute): New function.
27
28 2020-03-31 Iain Buclaw <ibuclaw@gdcproject.org>
29
30 PR d/94424
31 * d-codegen.cc (build_alignment_field): Remove.
32 (build_struct_literal): Don't insert alignment padding.
33 * expr.cc (ExprVisitor::visit (AssignExp *)): Call memset before
34 assigning struct literals.
35
36 2020-03-31 Iain Buclaw <ibuclaw@gdcproject.org>
37
38 * typeinfo.cc (TypeInfoVisitor::internal_reference): Call
39 d_comdat_linkage on generated decl.
40
41 2020-03-22 Iain Buclaw <ibuclaw@gdcproject.org>
42
43 PR d/93038
44 * d-lang.cc (deps_write): Generate phony targets for content imported
45 files.
46
47 2020-03-22 Iain Buclaw <ibuclaw@gdcproject.org>
48
49 PR d/93038
50 * d-lang.cc (deps_write): Add content imported files to the make
51 dependency list.
52
53 2020-03-21 Iain Buclaw <ibuclaw@gdcproject.org>
54
55 PR d/94240
56 * typeinfo.cc (class TypeInfoVisitor): Replace type_ field with decl_.
57 (TypeInfoVisitor::TypeInfoVisitor): Set decl_.
58 (TypeInfoVisitor::result): Update.
59 (TypeInfoVisitor::internal_reference): New function.
60 (TypeInfoVisitor::layout_string): Use internal_reference.
61 (TypeInfoVisitor::visit (TypeInfoTupleDeclaration *)): Likewise.
62 (layout_typeinfo): Construct TypeInfoVisitor with typeinfo decl.
63 (layout_classinfo): Likewise.
64
65 2020-03-20 Iain Buclaw <ibuclaw@gdcproject.org>
66
67 PR lto/91027
68 * d-tree.h (struct GTY): Add daggregate field.
69 (IDENTIFIER_DAGGREGATE): Define.
70 (d_mangle_decl): Add declaration.
71 * decl.cc (mangle_decl): Remove static linkage, rename to...
72 (d_mangle_decl): ...this, update all callers.
73 * types.cc (merge_aggregate_types): New function.
74 (TypeVisitor::visit (TypeStruct *)): Call merge_aggregate_types, set
75 IDENTIFIER_DAGGREGATE and TYPE_CXX_ODR_P.
76 (TypeVisitor::visit (TypeClass *)): Likewise.
77
78 2020-03-18 Jakub Jelinek <jakub@redhat.com>
79
80 * expr.cc (ExprVisitor::visit (CatAssignExp *)): Fix up duplicated
81 word issue in a comment.
82 * d-target.cc (Target::FPTypeProperties<T>::max): Likewise.
83
84 2020-03-16 Iain Buclaw <ibuclaw@gdcproject.org>
85
86 PR d/92309
87 * types.cc (fixup_anonymous_offset): Don't set DECL_FIELD_OFFSET on
88 anonymous fields.
89
90 2020-03-16 Iain Buclaw <ibuclaw@gdcproject.org>
91
92 PR d/92216
93 * decl.cc (make_thunk): Don't set TREE_PUBLIC on thunks if the target
94 function is external to the current compilation.
95
96 2020-01-01 Jakub Jelinek <jakub@redhat.com>
97
98 Update copyright years.
99
100 * gdc.texi: Bump @copyrights-d year.
101 \f
102 Copyright (C) 2020 Free Software Foundation, Inc.
103
104 Copying and distribution of this file, with or without modification,
105 are permitted in any medium without royalty provided the copyright
106 notice and this notice are preserved.