OSDN Git Service

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