Makefile.in (NO_SIBLING_ADAFLAGS): Always define.
[gcc.git] / gcc / ada / ChangeLog
1 2011-04-21 Eric Botcazou <ebotcazou@adacore.com>
2
3 * gcc-interface/Makefile.in (NO_SIBLING_ADAFLAGS): Always define.
4 (NO_REORDER_ADAFLAGS): New variable.
5 (EXTRA_GNATTOOLS): Always define.
6 (../stamp-gnatlib1-$(RTSDIR): Copy tsystem.h.
7 Clean up and adjust list of files compiled with special options.
8 * gcc-interface/Make-lang.in: Likewise.
9 (ada/decl.o): Cosmetical change.
10 (ada/misc.o): Remove dependency on $(PLUGIN_H).
11
12 2011-04-20 Jim Meyering <meyering@redhat.com>
13
14 * initialize.c (__gnat_initialize): Remove useless if-before-free.
15
16 2011-04-17 Eric Botcazou <ebotcazou@adacore.com>
17
18 * gcc-interface/Make-lang.in (gnatbind): Replace $(ALL_CFLAGS) with
19 $(CFLAGS) on the link line.
20
21 2011-04-17 Eric Botcazou <ebotcazou@adacore.com>
22
23 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Function>: Declare the
24 padded type built for the return type if it is unconstrained.
25
26 2011-04-14 Nathan Froyd <froydnj@codesourcery.com>
27
28 * gcc-interface/utils.c (gnat_poplevel): Use block_chainon.
29
30 2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
31
32 * gcc-interface/ada-tree.h (union lang_tree_node): Check for TS_COMMON
33 before calling TREE_CHAIN.
34 * gcc-interface/misc.c (gnat_init_ts): New function.
35 (LANG_HOOKS_INIT_TS): Define.
36
37 2011-04-12 Martin Jambor <mjambor@suse.cz>
38
39 * gcc-interface/utils.c (end_subprog_body): Call cgraph_get_create_node
40 instead of cgraph_node.
41
42 2011-04-08 Eric Botcazou <ebotcazou@adacore.com>
43
44 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Set minimum
45 alignment on fields of the RETURN type built for the Copy-In Copy-Out
46 mechanism.
47
48 2011-04-08 Eric Botcazou <ebotcazou@adacore.com>
49
50 * gcc-interface/trans.c (Identifier_to_gnu): Do not return initializers
51 of aggregate types that contain a placeholder.
52
53 2011-04-08 Nathan Froyd <froydnj@codesourcery.com>
54
55 * gcc-interface/utils.c (handle_sentinel_attribute): Don't use
56 TYPE_ARG_TYPES.
57 (handle_type_generic_attribute): Likewise.
58
59 2011-04-04 Eric Botcazou <ebotcazou@adacore.com>
60
61 PR ada/47163
62 * s-oscons-tmplt.c (MSG_WAITALL): Fix thinko in previous change.
63
64 2011-04-04 Kai Tietz <ktietz@redhat.com>
65
66 PR ada/47163
67 * s-oscons-tmplt.c (MSG_WAITALL): Define it for native windows
68 targets to flag value.
69
70 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
71
72 * gcc-interface/utils2.c (build_allocator): In the unconstrained array
73 type case, do not strip a padding type around the array type.
74
75 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
76
77 * gcc-interface/utils.c (update_pointer_to): Finalize named pointer
78 types.
79
80 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
81
82 * gcc-interface/lang.opt (feliminate-unused-debug-types): Delete.
83 * gcc-interface/misc.c (gnat_handle_option): Remove special handling
84 code for -feliminate-unused-debug-types.
85 (gnat_post_options): Likewise.
86
87 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
88
89 * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial
90 declaration of a pointer type, then set DECL_ORIGINAL_TYPE to a
91 distinct copy.
92
93 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
94
95 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not force the
96 DECL_ARTIFICIAL flag on enumeration types.
97
98 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
99
100 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do not make
101 fat pointer types artificial unconditionally.
102 <E_Array_Subtype>: Attach the base array type as a parallel type if it
103 isn't artificial.
104
105 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
106
107 * gcc-interface/gigi.h (get_dummy_type): Declare.
108 (build_dummy_unc_pointer_types): Likewise.
109 (finish_fat_pointer_type): Likewise.
110 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If a dummy
111 fat pointer type has been built, complete it in place.
112 <E_Access_Type>: Call build_dummy_unc_pointer_types to build dummy fat
113 and thin pointers. Remove useless variable.
114 (finish_fat_pointer_type): Make global and move to...
115 * gcc-interface/utils.c (finish_fat_pointer_type): ...here.
116 (get_dummy_type): New function.
117 (build_dummy_unc_pointer_types): Likewise.
118 (gnat_pushdecl): Propage the name to the anonymous variants only.
119 (update_pointer_to): Only adjust the pointer types in the unconstrained
120 array case.
121
122 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
123
124 * gcc-interface/ada-tree.h (DECL_TAFT_TYPE_P): New flag.
125 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Incomplete_Type>: Set it
126 if this is a Taft amendment type and the full declaration is available.
127 * gcc-interface/trans.c (process_type): Likewise.
128 If there is an old type, mark the new one as used if DECL_TAFT_TYPE_P.
129 (process_freeze_entity): Likewise.
130 * gcc-interface/utils.c (dummy_global): New static variable.
131 (gnat_write_global_declarations): If there are types declared as used
132 at the global level, insert them in the global hash table.
133
134 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
135
136 * gcc-interface/gigi.h (record_builtin_type): Add ARTIFICIAL_P param.
137 * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial
138 declaration of an array type, then set DECL_ORIGINAL_TYPE to a distinct
139 copy.
140 (record_builtin_type): Add ARTIFICIAL_P parameter. Set DECL_ARTIFICIAL
141 flag of the type accordingly.
142 * gcc-interface/trans.c (gigi): Adjust calls to record_builtin_type.
143
144 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
145
146 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer
147 finalizing types when updating the pointers to the designated type.
148 <all>: Finalize the deferred types even if we didn't defer processing
149 of incomplete types in this invocation.
150
151 2011-04-01 Olivier Hainque <hainque@adacore.com>
152 Nicolas Setton <setton@adacore.com>
153 Eric Botcazou <ebotcazou@adacore.com>
154
155 * gcc-interface/misc.c (gnat_descriptive_type): New function.
156 (LANG_HOOKS_DESCRIPTIVE_TYPE): Redefine to gnat_descriptive_type.
157
158 2011-03-28 Kai Tietz <ktietz@redhat.com>
159
160 * gcc-interface/Makefile.in (SO_LIB): Handle multilib build for native
161 Windows targets.
162 (EH_MECHANISM): Use GCC exception mechanism for native Windows targets.
163 * system-mingw.ads (System): Change ZCX_By_Default default to True.
164
165 * raise-gcc.c (PERSONALITY_FUNCTION): Add prototype.
166
167 2011-03-28 Tristan Gingold <gingold@adacore.com>
168
169 PR ada/44431
170 * gcc-interface/Make-lang.in (ada/b_gnat1.adb): Replace ada/b_gnat1.c.
171 Use ada output of gnatbind.
172 (ada/b_gnatb.adb): Ditto.
173 (ada/b_gnat1.o, ada/b_gnatb.o): New rules.
174 (ada.mostlyclean, ada.stage1)
175 (ada.stage2, ada.stage3, ada.stage4, ada.stageprofile)
176 (ada.stagefeedback): Adjust.
177 * gcc-interface/Makefile.in (b_gnatl.adb): Replace b_gnatl.c.
178 Use ada output of gnatbind.
179 (b_gnatm.adb): Ditto.
180 (b_gnatl.o, b_gnatm.o): New rules.
181
182 2011-03-26 Eric Botcazou <ebotcazou@adacore.com>
183
184 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL
185 for the padded type built to support a specified size or alignment.
186
187 2011-03-26 Eric Botcazou <ebotcazou@adacore.com>
188
189 * gcc-interface/gigi.h (finalize_from_with_types): Adjust comment.
190 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer
191 unconditionally to the end of the unit when the designated type is
192 limited_with'ed.
193 <all>: Rename local variable. Attempt to un-defer types only and do it
194 for limited_with'ed types as well.
195 (finalize_from_with_types): Adjust comment. Rename variable and tidy.
196 * gcc-interface/trans.c (Compilation_Unit_to_gnu): Use GNAT_UNIT
197 consistently and remove redundant call to finalize_from_with_types.
198
199 2011-03-26 Eric Botcazou <ebotcazou@adacore.com>
200
201 * inline.adb (Back_End_Cannot_Inline): Lift restriction on calls to
202 subprograms without a previous spec declared in the same unit.
203 * gcc-interface/trans.c (Compilation_Unit_to_gnu): Process inlined
204 subprograms at the end of the unit instead of at the beginning.
205 * gcc-interface/utils.c (create_subprog_decl): Check that the entity
206 isn't public for the special handling of non-inline functions nested
207 inside inline external functions.
208
209 2011-03-25 Jeff Law <law@redhat.com>
210
211 * gcc-interface/utils.c (def_fn_type): Add missing va_end.
212
213 2011-03-24 Eric Botcazou <ebotcazou@adacore.com>
214
215 * einfo.ads (Size_Depends_On_Discriminant): Adjust description.
216 * layout.adb (Compute_Size_Depends_On_Discriminant): New procedure
217 to compute Set_Size_Depends_On_Discriminant.
218 (Layout_Type): Call it on array types in back-end layout mode.
219 * sem_util.adb (Requires_Transient_Scope): Return true for array
220 types only if the size depends on the value of discriminants.
221 * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Use the RHS
222 type if the RHS is a call to a function that returns an unconstrained
223 type with default discriminant.
224
225 2011-03-24 Eric Botcazou <ebotcazou@adacore.com>
226
227 * gcc-interface/trans.c (gnat_to_gnu): Remove obsolete case of
228 non-conversion to the nominal result type at the end.
229
230 2011-03-23 Eric Botcazou <ebotcazou@adacore.com>
231
232 * gcc-interface/trans.c (create_temporary): New function taken from...
233 (create_init_temporary): ...here. Call it.
234 (call_to_gnu): Create the temporary for the return value early, if any.
235 Create it for a function with copy-in/copy-out parameters if there is
236 no target; in other cases of copy-in/copy-out, use another temporary.
237 Push the new binding level lazily. Add and rename local variables.
238
239 2011-03-23 Eric Botcazou <ebotcazou@adacore.com>
240
241 * gcc-interface/decl.c (validate_size): Improve comments and tweak
242 error message.
243 (set_rm_size): Likewise.
244
245 2011-03-23 Eric Botcazou <ebotcazou@adacore.com>
246
247 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL
248 for the padded type built in order to support a specified alignment.
249 Fix incorrect formatting.
250
251 2011-03-21 Eric Botcazou <ebotcazou@adacore.com>
252
253 PR bootstrap/48216
254 * gcc-interface/decl.c (elaborate_expression_1): Localize GNU_DECL.
255
256 2011-03-21 Eric Botcazou <ebotcazou@adacore.com>
257
258 * gcc-interface/decl.c (components_to_record): Add REORDER parameter,
259 rename DEBUG_INFO_P into DEBUG_INFO and move P_GNU_REP_LIST parameter
260 to the end of the list. Adjust recursive call. Rename local variable.
261 If REORDER is true, reorder components of the record type.
262 (gnat_to_gnu_entity): Pass OK_To_Reorder_Components flag as argument to
263 components_to_record and adjust the parameter list.
264
265 2011-03-21 Eric Botcazou <ebotcazou@adacore.com>
266
267 * gcc-interface/decl.c (elaborate_expression_1): When optimization is
268 disabled, use the variable for bounds of loop iteration scheme.
269
270 2011-03-21 Kai Tietz <ktietz@redhat.com>
271
272 PR target/12171
273 * gcc-interface/utils.c (gnat_internal_attribute_table): Add new column
274
275 2011-03-17 Eric Botcazou <ebotcazou@adacore.com>
276
277 * gcc-interface/decl.c (elaborate_expression_1): Try harder to find
278 out whether the expression is read-only. Short-circuit placeholder
279 case and rename a couple of local variables.
280
281 2011-03-17 Eric Botcazou <ebotcazou@adacore.com>
282
283 * gcc-interface/gigi.h (smaller_form_type_p): Declare.
284 * gcc-interface/trans.c (smaller_form_type_p): Make global and move...
285 * gcc-interface/utils.c (smaller_form_type_p): ...to here.
286 (convert): Deal with conversions from a smaller form type specially.
287
288 2011-02-14 Eric Botcazou <ebotcazou@adacore.com>
289
290 * gcc-interface/misc.c (gnat_init_options): Do not concatenate -I and
291 its argument, except for the special -I- switch.
292
293 2011-02-12 Gerald Pfeifer <gerald@pfeifer.com>
294
295 * gnat_ugn.texi (Compiling Different Versions of Ada): Update
296 link to "Ada Issues".
297
298 2011-02-08 Eric Botcazou <ebotcazou@adacore.com>
299
300 * gcc-interface/Makefile.in (x86-64 darwin): Handle multilibs.
301
302 2011-02-03 Eric Botcazou <ebotcazou@adacore.com>
303
304 * gcc-interface/gigi.h (fill_vms_descriptor): Take GNU_TYPE instead of
305 GNAT_FORMAL.
306 * gcc-interface/utils2.c (fill_vms_descriptor): Move from here to...
307 * gcc-interface/utils.c (fill_vms_descriptor): ...here. Take GNU_TYPE
308 instead of GNAT_FORMAL. Protect the expression against multiple uses.
309 Do not generate the check directly, instead instantiate the template
310 check present in the descriptor.
311 (make_descriptor_field): Move around.
312 (build_vms_descriptor32): Build a template check in the POINTER field.
313 (build_vms_descriptor): Remove useless suffixes.
314 * gcc-interface/trans.c (call_to_gnu): Adjust fill_vms_descriptor call.
315
316 2011-01-26 Eric Botcazou <ebotcazou@adacore.com>
317
318 PR bootstrap/47467
319 * targext.c: Include target files if IN_RTS is defined.
320
321 2011-01-26 Richard Guenther <rguenther@suse.de>
322
323 PR bootstrap/47467
324 * targext.c: Include config.h.
325 * gcc-interface/Make-lang.in (ada/targext.o): Add $(CONFIG_H)
326 dependency.
327
328 2011-01-04 Pascal Obry <obry@adacore.com>
329 Eric Botcazou <ebotcazou@adacore.com>
330
331 * gcc-interface/decl.c: Disable Stdcall convention handling for 64-bit.
332
333 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
334
335 * gcc-interface/trans.c (Case_Statement_to_gnu): Put the SLOC of the
336 end-of-case on the end label and its associated gotos, if any.
337
338 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
339
340 * gcc-interface/trans.c (Subprogram_Body_to_gnu): Evaluate the
341 expressions of the parameter cache within the statement group of
342 the CICO mechanism.
343
344 2011-01-04 Olivier Hainque <hainque@adacore.com>
345 Eric Botcazou <ebotcazou@adacore.com>
346
347 * gcc-interface/trans.c (BLOCK_SOURCE_END_LOCATION): Provide default.
348 (set_end_locus_from_node): New function.
349 (Subprogram_Body_to_gnu): Use it to mark both the inner BIND_EXPR we
350 make and the function end_locus.
351 (Compilation_Unit_to_gnu): Call it instead of a straight Sloc_to_locus
352 for the elaboration subprogram.
353 (set_gnu_expr_location_from_node) <default case>: Use it to attempt to
354 set the end_locus of the expression as well.
355
356 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
357
358 PR ada/47131
359 * gcc-interface/trans.c (Identifier_to_gnu): In SJLJ mode, do not make
360 variables that are referenced in exception handlers volatile.
361
362
363 \f
364 Copyright (C) 2011 Free Software Foundation, Inc.
365
366 Copying and distribution of this file, with or without modification,
367 are permitted in any medium without royalty provided the copyright
368 notice and this notice are preserved.