1 2011-04-08 Nathan Froyd <froydnj@codesourcery.com>
3 * gcc-interface/utils.c (handle_sentinel_attribute): Don't use
5 (handle_type_generic_attribute): Likewise.
7 2011-04-04 Eric Botcazou <ebotcazou@adacore.com>
10 * s-oscons-tmplt.c (MSG_WAITALL): Fix thinko in previous change.
12 2011-04-04 Kai Tietz <ktietz@redhat.com>
15 * s-oscons-tmplt.c (MSG_WAITALL): Define it for native windows
16 targets to flag value.
18 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
20 * gcc-interface/utils2.c (build_allocator): In the unconstrained array
21 type case, do not strip a padding type around the array type.
23 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
25 * gcc-interface/utils.c (update_pointer_to): Finalize named pointer
28 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
30 * gcc-interface/lang.opt (feliminate-unused-debug-types): Delete.
31 * gcc-interface/misc.c (gnat_handle_option): Remove special handling
32 code for -feliminate-unused-debug-types.
33 (gnat_post_options): Likewise.
35 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
37 * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial
38 declaration of a pointer type, then set DECL_ORIGINAL_TYPE to a
41 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
43 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not force the
44 DECL_ARTIFICIAL flag on enumeration types.
46 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
48 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do not make
49 fat pointer types artificial unconditionally.
50 <E_Array_Subtype>: Attach the base array type as a parallel type if it
53 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
55 * gcc-interface/gigi.h (get_dummy_type): Declare.
56 (build_dummy_unc_pointer_types): Likewise.
57 (finish_fat_pointer_type): Likewise.
58 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If a dummy
59 fat pointer type has been built, complete it in place.
60 <E_Access_Type>: Call build_dummy_unc_pointer_types to build dummy fat
61 and thin pointers. Remove useless variable.
62 (finish_fat_pointer_type): Make global and move to...
63 * gcc-interface/utils.c (finish_fat_pointer_type): ...here.
64 (get_dummy_type): New function.
65 (build_dummy_unc_pointer_types): Likewise.
66 (gnat_pushdecl): Propage the name to the anonymous variants only.
67 (update_pointer_to): Only adjust the pointer types in the unconstrained
70 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
72 * gcc-interface/ada-tree.h (DECL_TAFT_TYPE_P): New flag.
73 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Incomplete_Type>: Set it
74 if this is a Taft amendment type and the full declaration is available.
75 * gcc-interface/trans.c (process_type): Likewise.
76 If there is an old type, mark the new one as used if DECL_TAFT_TYPE_P.
77 (process_freeze_entity): Likewise.
78 * gcc-interface/utils.c (dummy_global): New static variable.
79 (gnat_write_global_declarations): If there are types declared as used
80 at the global level, insert them in the global hash table.
82 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
84 * gcc-interface/gigi.h (record_builtin_type): Add ARTIFICIAL_P param.
85 * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial
86 declaration of an array type, then set DECL_ORIGINAL_TYPE to a distinct
88 (record_builtin_type): Add ARTIFICIAL_P parameter. Set DECL_ARTIFICIAL
89 flag of the type accordingly.
90 * gcc-interface/trans.c (gigi): Adjust calls to record_builtin_type.
92 2011-04-02 Eric Botcazou <ebotcazou@adacore.com>
94 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer
95 finalizing types when updating the pointers to the designated type.
96 <all>: Finalize the deferred types even if we didn't defer processing
97 of incomplete types in this invocation.
99 2011-04-01 Olivier Hainque <hainque@adacore.com>
100 Nicolas Setton <setton@adacore.com>
101 Eric Botcazou <ebotcazou@adacore.com>
103 * gcc-interface/misc.c (gnat_descriptive_type): New function.
104 (LANG_HOOKS_DESCRIPTIVE_TYPE): Redefine to gnat_descriptive_type.
106 2011-03-28 Kai Tietz <ktietz@redhat.com>
108 * gcc-interface/Makefile.in (SO_LIB): Handle multilib build for native
110 (EH_MECHANISM): Use GCC exception mechanism for native Windows targets.
111 * system-mingw.ads (System): Change ZCX_By_Default default to True.
113 * raise-gcc.c (PERSONALITY_FUNCTION): Add prototype.
115 2011-03-28 Tristan Gingold <gingold@adacore.com>
118 * gcc-interface/Make-lang.in (ada/b_gnat1.adb): Replace ada/b_gnat1.c.
119 Use ada output of gnatbind.
120 (ada/b_gnatb.adb): Ditto.
121 (ada/b_gnat1.o, ada/b_gnatb.o): New rules.
122 (ada.mostlyclean, ada.stage1)
123 (ada.stage2, ada.stage3, ada.stage4, ada.stageprofile)
124 (ada.stagefeedback): Adjust.
125 * gcc-interface/Makefile.in (b_gnatl.adb): Replace b_gnatl.c.
126 Use ada output of gnatbind.
127 (b_gnatm.adb): Ditto.
128 (b_gnatl.o, b_gnatm.o): New rules.
130 2011-03-26 Eric Botcazou <ebotcazou@adacore.com>
132 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL
133 for the padded type built to support a specified size or alignment.
135 2011-03-26 Eric Botcazou <ebotcazou@adacore.com>
137 * gcc-interface/gigi.h (finalize_from_with_types): Adjust comment.
138 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer
139 unconditionally to the end of the unit when the designated type is
141 <all>: Rename local variable. Attempt to un-defer types only and do it
142 for limited_with'ed types as well.
143 (finalize_from_with_types): Adjust comment. Rename variable and tidy.
144 * gcc-interface/trans.c (Compilation_Unit_to_gnu): Use GNAT_UNIT
145 consistently and remove redundant call to finalize_from_with_types.
147 2011-03-26 Eric Botcazou <ebotcazou@adacore.com>
149 * inline.adb (Back_End_Cannot_Inline): Lift restriction on calls to
150 subprograms without a previous spec declared in the same unit.
151 * gcc-interface/trans.c (Compilation_Unit_to_gnu): Process inlined
152 subprograms at the end of the unit instead of at the beginning.
153 * gcc-interface/utils.c (create_subprog_decl): Check that the entity
154 isn't public for the special handling of non-inline functions nested
155 inside inline external functions.
157 2011-03-25 Jeff Law <law@redhat.com>
159 * gcc-interface/utils.c (def_fn_type): Add missing va_end.
161 2011-03-24 Eric Botcazou <ebotcazou@adacore.com>
163 * einfo.ads (Size_Depends_On_Discriminant): Adjust description.
164 * layout.adb (Compute_Size_Depends_On_Discriminant): New procedure
165 to compute Set_Size_Depends_On_Discriminant.
166 (Layout_Type): Call it on array types in back-end layout mode.
167 * sem_util.adb (Requires_Transient_Scope): Return true for array
168 types only if the size depends on the value of discriminants.
169 * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Use the RHS
170 type if the RHS is a call to a function that returns an unconstrained
171 type with default discriminant.
173 2011-03-24 Eric Botcazou <ebotcazou@adacore.com>
175 * gcc-interface/trans.c (gnat_to_gnu): Remove obsolete case of
176 non-conversion to the nominal result type at the end.
178 2011-03-23 Eric Botcazou <ebotcazou@adacore.com>
180 * gcc-interface/trans.c (create_temporary): New function taken from...
181 (create_init_temporary): ...here. Call it.
182 (call_to_gnu): Create the temporary for the return value early, if any.
183 Create it for a function with copy-in/copy-out parameters if there is
184 no target; in other cases of copy-in/copy-out, use another temporary.
185 Push the new binding level lazily. Add and rename local variables.
187 2011-03-23 Eric Botcazou <ebotcazou@adacore.com>
189 * gcc-interface/decl.c (validate_size): Improve comments and tweak
191 (set_rm_size): Likewise.
193 2011-03-23 Eric Botcazou <ebotcazou@adacore.com>
195 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL
196 for the padded type built in order to support a specified alignment.
197 Fix incorrect formatting.
199 2011-03-21 Eric Botcazou <ebotcazou@adacore.com>
202 * gcc-interface/decl.c (elaborate_expression_1): Localize GNU_DECL.
204 2011-03-21 Eric Botcazou <ebotcazou@adacore.com>
206 * gcc-interface/decl.c (components_to_record): Add REORDER parameter,
207 rename DEBUG_INFO_P into DEBUG_INFO and move P_GNU_REP_LIST parameter
208 to the end of the list. Adjust recursive call. Rename local variable.
209 If REORDER is true, reorder components of the record type.
210 (gnat_to_gnu_entity): Pass OK_To_Reorder_Components flag as argument to
211 components_to_record and adjust the parameter list.
213 2011-03-21 Eric Botcazou <ebotcazou@adacore.com>
215 * gcc-interface/decl.c (elaborate_expression_1): When optimization is
216 disabled, use the variable for bounds of loop iteration scheme.
218 2011-03-21 Kai Tietz <ktietz@redhat.com>
221 * gcc-interface/utils.c (gnat_internal_attribute_table): Add new column
223 2011-03-17 Eric Botcazou <ebotcazou@adacore.com>
225 * gcc-interface/decl.c (elaborate_expression_1): Try harder to find
226 out whether the expression is read-only. Short-circuit placeholder
227 case and rename a couple of local variables.
229 2011-03-17 Eric Botcazou <ebotcazou@adacore.com>
231 * gcc-interface/gigi.h (smaller_form_type_p): Declare.
232 * gcc-interface/trans.c (smaller_form_type_p): Make global and move...
233 * gcc-interface/utils.c (smaller_form_type_p): ...to here.
234 (convert): Deal with conversions from a smaller form type specially.
236 2011-02-14 Eric Botcazou <ebotcazou@adacore.com>
238 * gcc-interface/misc.c (gnat_init_options): Do not concatenate -I and
239 its argument, except for the special -I- switch.
241 2011-02-12 Gerald Pfeifer <gerald@pfeifer.com>
243 * gnat_ugn.texi (Compiling Different Versions of Ada): Update
244 link to "Ada Issues".
246 2011-02-08 Eric Botcazou <ebotcazou@adacore.com>
248 * gcc-interface/Makefile.in (x86-64 darwin): Handle multilibs.
250 2011-02-03 Eric Botcazou <ebotcazou@adacore.com>
252 * gcc-interface/gigi.h (fill_vms_descriptor): Take GNU_TYPE instead of
254 * gcc-interface/utils2.c (fill_vms_descriptor): Move from here to...
255 * gcc-interface/utils.c (fill_vms_descriptor): ...here. Take GNU_TYPE
256 instead of GNAT_FORMAL. Protect the expression against multiple uses.
257 Do not generate the check directly, instead instantiate the template
258 check present in the descriptor.
259 (make_descriptor_field): Move around.
260 (build_vms_descriptor32): Build a template check in the POINTER field.
261 (build_vms_descriptor): Remove useless suffixes.
262 * gcc-interface/trans.c (call_to_gnu): Adjust fill_vms_descriptor call.
264 2011-01-26 Eric Botcazou <ebotcazou@adacore.com>
267 * targext.c: Include target files if IN_RTS is defined.
269 2011-01-26 Richard Guenther <rguenther@suse.de>
272 * targext.c: Include config.h.
273 * gcc-interface/Make-lang.in (ada/targext.o): Add $(CONFIG_H)
276 2011-01-04 Pascal Obry <obry@adacore.com>
277 Eric Botcazou <ebotcazou@adacore.com>
279 * gcc-interface/decl.c: Disable Stdcall convention handling for 64-bit.
281 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
283 * gcc-interface/trans.c (Case_Statement_to_gnu): Put the SLOC of the
284 end-of-case on the end label and its associated gotos, if any.
286 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
288 * gcc-interface/trans.c (Subprogram_Body_to_gnu): Evaluate the
289 expressions of the parameter cache within the statement group of
292 2011-01-04 Olivier Hainque <hainque@adacore.com>
293 Eric Botcazou <ebotcazou@adacore.com>
295 * gcc-interface/trans.c (BLOCK_SOURCE_END_LOCATION): Provide default.
296 (set_end_locus_from_node): New function.
297 (Subprogram_Body_to_gnu): Use it to mark both the inner BIND_EXPR we
298 make and the function end_locus.
299 (Compilation_Unit_to_gnu): Call it instead of a straight Sloc_to_locus
300 for the elaboration subprogram.
301 (set_gnu_expr_location_from_node) <default case>: Use it to attempt to
302 set the end_locus of the expression as well.
304 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
307 * gcc-interface/trans.c (Identifier_to_gnu): In SJLJ mode, do not make
308 variables that are referenced in exception handlers volatile.
312 Copyright (C) 2011 Free Software Foundation, Inc.
314 Copying and distribution of this file, with or without modification,
315 are permitted in any medium without royalty provided the copyright
316 notice and this notice are preserved.