]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ada/ChangeLog
Check __x86_64__ instead of __LP64__ for x86 futex.
[thirdparty/gcc.git] / gcc / ada / ChangeLog
CommitLineData
ab027d28
RD
12011-08-02 Robert Dewar <dewar@adacore.com>
2
3 * exp_ch7.adb exp_ch6.adb, exp_disp.adb: Minor reformatting
4
b3b28b0c
JM
52011-08-02 Javier Miranda <miranda@adacore.com>
6
7 * exp_ch6.adb (Expand_N_Subprogram_Body): Temporarily restrict the
8 generation of TSDs to the DOTNET compiler.
9 * exp_ch7.adb (Expand_N_Package_Body): Temporarily restrict the
10 generation of TSDs to the DOTNET compiler.
11
9732e886
JM
122011-08-02 Javier Miranda <miranda@adacore.com>
13
14 * exp_disp.ads (Build_VM_TSDs): Build the runtime Type Specific Data
15 record of all the tagged types declared inside library level package
16 declarations, library level package bodies or library level subprograms.
17 * exp_disp.adb (Make_VM_TSD): New subprogram that builds the TSD
18 associated with a given tagged type.
19 (Build_VM_TSDs): New subprogram.
20 * exp_ch6.adb (Expand_N_Subprogram_Body): Generate TSDs records of main
21 compilation units that are subprograms.
22 * exp_ch7.adb (Expand_N_Package_Body): Generate TSDs of main
23 compilation units that are package bodies.
24 (Expand_N_Package_Declaration): Generate TSDs of the main compilation
25 units that are a package declaration or a package instantiation.
26 * exp_intr.adb (Expand_Dispatching_Constructor_Call): Minor code
27 reorganization to improve the error generated by the frontend when the
28 function Ada.Tags.Secondary_Tag is not available.
29 * rtsfind.ads (RE_Register_TSD): New runtime entity.
30 * exp_ch4.adb (Expand_N_Type_Conversion): Minor code cleanup.
31
e526d0c7
AC
322011-08-02 Javier Miranda <miranda@adacore.com>
33
34 * exp_disp.adb (Make_DT): Generate call to Check_TSD in Ada 2005 mode.
35
362011-08-02 Robert Dewar <dewar@adacore.com>
37
38 * s-imenne.ads: Minor reformatting.
39
402011-08-02 Robert Dewar <dewar@adacore.com>
41
42 * a-stunau.ads: Add pragma Suppress_Initialization for Big_String
43 * freeze.adb (Warn_Overlay): Don't warn if initialization suppressed
44 * s-stalib.ads: Add pragma Suppress_Initialization for Big_String
45
462011-08-02 Robert Dewar <dewar@adacore.com>
47
48 * einfo.ads (Materialize_Entity): Document this is only for renamings
49 * exp_ch3.adb (Expand_N_Object_Declaration): Make sure we generate
50 required debug information in the case where we transform the object
51 declaration into a renaming declaration.
52 * exp_ch4.adb (Expand_Concatenate): Generate debug info for result
53 object
54 * exp_dbug.ads (Debug_Renaming_Declaration): Document setting of
55 Materialize_Entity.
56
5b1e6aca
RD
572011-08-02 Robert Dewar <dewar@adacore.com>
58
59 * einfo.ads, einfo.adb (Suppress_Initialization): Replaces
60 Suppress_Init_Procs.
61 * exp_ch3.adb, exp_disp.adb, freeze.adb: Use
62 Suppress_Initialization/Initialization_Suppressed.
63 * gnat_rm.texi: New documentation for pragma Suppress_Initialization
64 * sem_aux.ads, sem_aux.adb (Initialization_Suppressed): New function
65 * sem_dist.adb: Use Suppress_Initialization/Initialization_Suppressed
66 * sem_prag.adb: New processing for pragma Suppress_Initialization.
67
5ad4969d
RD
682011-08-02 Robert Dewar <dewar@adacore.com>
69
70 * gnat_rm.texi, a-tags.ads, sem_prag.adb, sem_ch12.adb, exp_disp.adb:
71 Minor reformatting.
72
8c4ee6f5
AC
732011-08-02 Ed Schonberg <schonberg@adacore.com>
74
75 * sem_prag.adb (Chain_PPC): Implement AI04-0230: null procedures can
76 only have inheritable classwide pre/postconditions.
77
782011-08-02 Javier Miranda <miranda@adacore.com>
79
80 * a-tags.ads, a-tags.adb (Check_TSD): New subprogram.
81 * rtsfind.ads (RE_Check_TSD): New runtime entity.
82 * exp_disp.adb (Make_DT): Generate call to the new runtime routine that
83 checks if the external tag of a type is the same as the external tag
84 of some other declaration.
85
0b3d16c0
AC
862011-08-02 Thomas Quinot <quinot@adacore.com>
87
88 * s-taskin.ads: Minor reformatting.
89
902011-08-02 Emmanuel Briot <briot@adacore.com>
91
92 * g-comlin.adb (Display_Help): swap the order in which it prints the
93 short help and the general usage.
94
952011-08-02 Ed Schonberg <schonberg@adacore.com>
96
97 * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): copy properly
98 the aspect declarations and attach them to the generic copy for
99 subsequent analysis.
100 (Analyze_Subprogram_Instantiation): copy explicitly the aspect
101 declarations of the generic tree to the new subprogram declarations.
102 * sem_attr.adb (Check_Precondition_Postcondition): recognize
103 conditions that apply to a subprogram instance.
104
1052011-08-02 Robert Dewar <dewar@adacore.com>
106
107 * gnat_rm.texi: Clarify doc on pragma Source_File_Name[_Project].
108
1092011-08-02 Ed Schonberg <schonberg@adacore.com>
110
111 * sem_ch3.adb (Derived_Type_Declaration): When checking that a untagged
112 private type with a tagged full view is not derived in the immediate
113 scope of the partial view, (RM 7.3 (7)) use the scope of the base type.
114
4637729f
AC
1152011-08-02 Robert Dewar <dewar@adacore.com>
116
117 * exp_ch4.adb: Minor reformatting.
118
1192011-08-02 Ed Schonberg <schonberg@adacore.com>
120
121 * sem_ch5.adb (Analyze_Loop_Statement): If the iteration scheme is an
122 Ada2012 iterator, the loop will be rewritten during expansion into a
123 while loop with a cursor and an element declaration. Do not analyze the
124 body in this case, because if the container is for indefinite types the
125 actual subtype of the elements will only be determined when the cursor
126 declaration is analyzed.
127
1282011-08-02 Arnaud Charlet <charlet@adacore.com>
129
130 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Ignore
131 size/alignment related attributes in CodePeer_Mode.
132
1332011-08-02 Gary Dismukes <dismukes@adacore.com>
134
135 * sem_ch3.adb (Check_Ops_From_Incomplete_Type): Remove call to
136 Prepend_Element, since this can result in the operation getting the
137 wrong slot in the full type's dispatch table if the full type has
138 inherited operations. The incomplete type's operation will get added
139 to the proper position in the full type's primitives
140 list later in Sem_Disp.Check_Operation_From_Incomplete_Type.
141 (Process_Incomplete_Dependents): Add Is_Primitive test when checking for
142 dispatching operations, since there are cases where nonprimitive
143 subprograms can get added to the list of incomplete dependents (such
144 as subprograms in nested packages).
145 * sem_ch6.adb (Process_Formals): First, remove test for being in a
146 private part when determining whether to add a primitive with a
147 parameter of a tagged incomplete type to the Private_Dependents list.
148 Such primitives can also occur in the visible part, and should not have
149 been excluded from being private dependents.
150 * sem_ch7.adb (Uninstall_Declarations): When checking the rule of
151 RM05-3.10.1(9.3/2), test that a subprogram in the Private_Dependents
152 list of a Taft-amendment incomplete type is a primitive before issuing
153 an error that the full type must appear in the same unit. There are
154 cases where nonprimitives can be in the list (such as subprograms in
155 nested packages).
156 * sem_disp.adb (Derives_From): Use correct condition for checking that
157 a formal's type is derived from the type of the corresponding formal in
158 the parent subprogram (the condition was completely wrong). Add
159 checking that was missing for controlling result types being derived
160 from the result type of the parent operation.
161
4c60de0c
YM
1622011-08-02 Yannick Moy <moy@adacore.com>
163
164 * errout.adb (First_Node): minor renaming
165 * restrict.adb (Check_Formal_Restriction): put restriction warning on
166 first node.
167
f5afb270
AC
1682011-08-02 Yannick Moy <moy@adacore.com>
169
170 * sem_res.adb (Resolve_Logical_Op): ensure N is a binary operator
171 before accessing operands.
172 * sem_util.adb (Is_SPARK_Initialization_Expr): follow original nodes to
173 decide whether an initialization expression respects SPARK rules, as
174 the plain node is the expanded one. This allows for more valid warnings
175 to be issued.
176 * gnat_rm.texi: Minor update.
177
1782011-08-02 Arnaud Charlet <charlet@adacore.com>
179
180 * sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Revert
181 previous change.
182
1832011-08-02 Robert Dewar <dewar@adacore.com>
184
185 * sem_ch3.adb, sem_ch4.adb: Minor reformatting.
186
1872011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
188
189 * exp_ch5.adb (Expand_Iterator_Loop): Reformatting. Wrap the original
190 loop statements and the element renaming declaration with a block when
191 the element type is controlled.
192
1932011-08-02 Yannick Moy <moy@adacore.com>
194
195 * sinfo.ads: Minor formatting.
196
1972011-08-02 Ed Schonberg <schonberg@adacore.com>
198
199 * sem_aggr.adb (Add_Association): if the association has a box and no
200 expression, use the Sloc of the aggregate itself for the new
201 association.
202 * errout.adb (First_Node): Exclude nodes with no Sloc, and always use
203 the Original_Node.
204
db72f10a
AC
2052011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
206
207 * exp_ch5.adb (Expand_Iterator_Loop): Code cleanup and refactoring.
208 When a container is provided via a function call, generate a renaming
209 of the function result. This avoids the creation of a transient scope
210 and the premature finalization of the container.
211 * exp_ch7.adb (Is_Container_Cursor): Removed.
212 (Wrap_Transient_Declaration): Remove the supression of the finalization
213 of the list controller when the declaration denotes a container cursor,
214 it is not needed.
215
2162011-08-02 Yannick Moy <moy@adacore.com>
217
218 * restrict.adb (Check_Formal_Restriction): only issue a warning if the
219 node is from source, instead of the original node being from source.
220 * sem_aggr.adb
221 (Resolve_Array_Aggregate): refine the check for a static expression, to
222 recognize also static ranges
223 * sem_ch3.adb, sem_ch3.ads (Analyze_Component_Declaration,
224 Array_Type_Declaration): postpone the test for the type being a subtype
225 mark after the type has been resolved, so that component-selection and
226 expanded-name are discriminated.
227 (Make_Index, Process_Range_Expr_In_Decl): add a parameter In_Iter_Schm
228 to distinguish the case of an iteration scheme, so that an error is
229 issed on a non-static range in SPARK except in an iteration scheme.
230 * sem_ch5.adb (Analyze_Iteration_Scheme): call Make_Index with
231 In_Iter_Schm = True.
232 * sem_ch6.adb (Analyze_Subprogram_Specification): refine the check for
233 user-defined operators so that they are allowed in renaming
234 * sem_ch8.adb
235 (Find_Selected_Component): refine the check for prefixing of operators
236 so that they are allowed in renaming. Move the checks for restrictions
237 on selector name after analysis discriminated between
238 component-selection and expanded-name.
239 * sem_res.adb (Resolve_Op_Concat_Arg): do not issue a warning on
240 concatenation argument of string type if it is static.
241 * sem_util.adb, sem_util.ads
242 (Check_Later_Vs_Basic_Declarations): add a new function
243 Is_Later_Declarative_Item to decice which declarations are allowed as
244 later items, in the two different modes Ada 83 and SPARK. In the SPARK
245 mode, add that renamings are considered as later items.
246 (Enclosing_Package): new function to return the enclosing package
247 (Enter_Name): correct the rule for homonyms in SPARK
248 (Is_SPARK_Initialization_Expr): default to returning True on nodes not
249 from source (result of expansion) to avoid issuing wrong warnings.
250
2512011-08-02 Ed Schonberg <schonberg@adacore.com>
252
253 * errout.adb: On anything but an expression First_Node returns its
254 argument.
255
23685ae6
AC
2562011-08-02 Pascal Obry <obry@adacore.com>
257
258 * prj-proc.adb, make.adb, makeutl.adb: Minor reformatting.
259
2602011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
261
262 * exp_ch5.adb (Expand_Iterator_Loop): Code cleanup and reorganization.
263 Set the associated loop as the related expression of internally
264 generated cursors.
265 * exp_ch7.adb (Is_Container_Cursor): New routine.
266 (Wrap_Transient_Declaration): Supress the finalization of the list
267 controller when the declaration denotes a container cursor.
268
2692011-08-02 Yannick Moy <moy@adacore.com>
270
271 * opt.ads (SPARK_Mode): update comment, SPARK_Mode only set through
272 command line now.
273 * par-ch3.adb (P_Delta_Constraint): remove check in SPARK mode that the
274 expression is a simple expression. This check cannot be performed in
275 the semantics, so just drop it.
276 (P_Index_Or_Discriminant_Constraint): move check that the index or
277 discriminant is a subtype mark to Analyze_Subtype_Declaration in the
278 semantics. Other cases were previously checked in the semantics.
279 * par-ch4.adb (P_Name): move checks that a selector name is not
280 character literal or an operator symbol to Find_Selected_Component in
281 the semantics
282 * par-ch5.adb (Parse_Decls_Begin_End): move check that basic
283 declarations are not placed after later declarations in a separate
284 procedure in Sem_Util (possibly not the best choice?), to be used both
285 during parsing, for Ada 83 mode, and during semantic analysis, for
286 SPARK mode.
287 * par-endh.adb (Check_End): move check that end label is not missing
288 to Process_End_Label in the semantics
289 * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings): remove
290 the special case for SPARK restriction
291 * par.adb: use and with Sem_Util, for use in Parse_Decls_Begin_End
292 * restrict.adb, restrict.ads (Check_Formal_Restriction): add a
293 parameter Force to issue the error message even on internal node (used
294 for generated end label). Call Check_Restriction to check when an error
295 must be issued. In SPARK mode, issue an error message even if the
296 restriction is not set.
297 (Check_Restriction): new procedure with an additional out parameter to
298 inform the caller that a message has been issued
299 * sem_aggr.adb: Minor modification of message
300 * sem_attr.adb (Analyze_Attribute): call Check_Formal_Restriction
301 instead of issuing an error message directly
302 * sem_ch3.adb (Analyze_Declarations): move here the check that basic
303 declarations are not placed after later declarations, by calling
304 Check_Later_Vs_Basic_Declarations
305 (Analyze_Subtype_Declaration): move here the check that an index or
306 discriminant constraint must be a subtype mark. Change the check that
307 a subtype of String must start at one so that it works on subtype marks.
308 * sem_ch4.adb (Analyze_Call): move here the check that a named
309 association cannot follow a positional one in a call
310 * sem_ch5.adb (Check_Unreachable_Code): call Check_Formal_Restriction
311 instead of issuing an error message directly
312 * sem_ch8.adb (Find_Selected_Component): move here the check that a
313 selector name is not a character literal or an operator symbol. Move
314 here the check that the prefix of an expanded name cannot be a
315 subprogram or a loop statement.
316 * sem_util.adb, sem_util.ads (Check_Later_Vs_Basic_Declarations): new
317 procedure called from parsing and semantics to check that basic
318 declarations are not placed after later declarations
319 (Process_End_Label): move here the check that end label is not missing
320
3212011-08-02 Arnaud Charlet <charlet@adacore.com>
322
323 * sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Ignore enum
324 representation clause in codepeer mode, since it confuses CodePeer and
325 does not bring useful info.
326
3272011-08-02 Ed Falis <falis@adacore.com>
328
329 * init.c: initialize fp hw on MILS.
330
3312011-08-02 Ed Schonberg <schonberg@adacore.com>
332
333 * errout.adb (First_Node): for bodies, return the node itself (small
334 optimization). For other nodes, do not check source_unit if the node
335 comes from Standard.
336
d2d9cc22
AC
3372011-08-02 Robert Dewar <dewar@adacore.com>
338
339 * exp_ch3.adb: Minor comment additions.
340 * sem_ch13.adb: Minor reformatting.
341
3422011-08-02 Pascal Obry <obry@adacore.com>
343
344 * make.adb, makeutl.adb: Removes some superfluous directory separator.
345
a01b9df6
AC
3462011-08-02 Robert Dewar <dewar@adacore.com>
347
348 * sem_attr.adb: Minor reformatting.
349
3502011-08-02 Robert Dewar <dewar@adacore.com>
351
352 * einfo.adb (Has_Default_Aspect): Replaces Has_Default_Value
353 (Has_Default_Component_Value): Removed
354 * einfo.ads Comment updates
355 (Has_Default_Aspect): Replaces Has_Default_Value
356 (Has_Default_Component_Value): Removed
357 * exp_ch13.adb
358 (Expand_N_Freeze_Entity): Handle Default[_Component]_Value aspects
359 * exp_ch3.adb
360 (Build_Array_Init_Proc): Handle Default_[Component_]Value aspects
361 (Get_Simple_Init_Val): Handle Default_Value aspect
362 (Needs_Simple_Initialization): Handle Default_Value aspect
363 * exp_ch3.ads: Needs_Simple_Initialization
364 * freeze.adb (Freeze_Entity): Handle Default_[Component_]Value aspect
365 * par-prag.adb (Pragma_Default[_Component]Value) Removed
366 * sem_ch13.adb
367 (Analyze_Aspect_Specifications): Fix Default[_Component]_Value aspects
368 * sem_prag.adb (Pragma_Default[_Component]Value) Removed
369 * snames.ads-tmpl (Pragma_Default[_Component]Value) Removed
370
3712011-08-02 Ed Schonberg <schonberg@adacore.com>
372
373 * sem_ch5.adb (Analyze_Iterator_Specification): use base type to locate
374 package containing iteration primitives.
375 exp_ch5.adb (Expand_Iterator_Loop): ditto.
376
75c90775
AC
3772011-08-02 Ed Schonberg <schonberg@adacore.com>
378
379 * sem_ch5.adb (Analyze_Iteration_Scheme): For an Ada2012 iterator with
380 "of", pre-analyze expression in case it is a function call with
381 finalization actions that must be placed ahead of the loop.
382 * exp_ch5.adb (Expand_Iterator_Loop): If condition_actions are present
383 on an Ada2012 iterator, insert them ahead of the rewritten loop.
384
3852011-08-02 Geert Bosch <bosch@adacore.com>
386
387 * cstand.adb (Create_Float_Types): Only consider C's long double for
388 Long_Long_Float, in addition to double.
389
ded8909b
AC
3902011-08-02 Robert Dewar <dewar@adacore.com>
391
392 * sem_ch3.adb, sem_ch5.adb, sem_type.adb, switch-c.adb, switch-c.ads,
393 sem_prag.adb, sem_util.adb, sem_util.ads, sem_res.adb, warnsw.ads,
394 prepcomp.ads, cstand.adb, stand.ads, a-calfor.adb, s-stusta.adb:
395 Minor reformatting.
396
3972011-08-02 Ed Schonberg <schonberg@adacore.com>
398
399 * sem_attr.adb: handle properly 'Result when it is a prefix of an
400 indexed component.
401
4022011-08-02 Javier Miranda <miranda@adacore.com>
403
404 * einfo.ads, einfo.adb
405 (Original_Access_Type): Move this attribute to Node26 since there was
406 an undocumented use of Node21 in E_Access_Subprogram_Type entities
407 which causes conflicts and breaks the generation of the .NET compiler.
408 (Interface_Name): Add missing documentation on JGNAT only uses of
409 this attribute.
410
70c34e1c
AC
4112011-08-02 Geert Bosch <bosch@adacore.com>
412
413 * cstand.adb (Back_End_Float_Types): Use Elist instead of Nlist
414 (Find_Back_End_Float_Type): Likewise
415 (Create_Back_End_Float_Types): Likewise
416 (Create_Float_Types): Likewise
417 (Register_Float_Type): Likewise
418 * sem_ch3.adb (Floating_Point_Type_Declaration): Use Elist instead of
419 Nlist and split out type selection in new local Find_Base_Type function.
420 * sem_prag.adb (Process_Import_Predefined_Type): Use Elist instead of
421 Nlist
422 * stand.ads (Predefined_Float_Types): Use Elist instead of Nlist
423
4242011-08-02 Robert Dewar <dewar@adacore.com>
425
426 * inline.adb: Minor code reorganization (put Get_Code_Unit_Entity in
427 alpha order).
428 * opt.ads: Minor comment change.
429 * sem_ch12.adb: Minor code reorganization.
430
b715bc59
AC
4312011-08-02 Gary Dismukes <dismukes@adacore.com>
432
433 * sem_ch3.adb (Complete_Private_Subtype): Don't append the private
434 subtype's list of rep items to the list on the full subtype in the case
435 where the lists are the same.
436
4372011-08-02 Geert Bosch <bosch@adacore.com>
438
439 * switch-c.adb (Free): New deallocation procedure to avoid implicitly
440 using the one from System.Strings, which also deallocates all strings.
441
002bdd68
AC
4422011-08-02 Geert Bosch <bosch@adacore.com>
443
444 * gcc-interface/gigi.h, gcc-interface/misc.c (enumerate_modes): New
445 function.
446 * gcc-interface/Make-lang.in: Update dependencies.
447
4482011-08-02 Olivier Hainque <hainque@adacore.com>
449
450 * gcc-interface/trans.c (Subprogram_Body_to_gnu): Set the function
451 end_locus.
452
499769ec
AC
4532011-08-02 Javier Miranda <miranda@adacore.com>
454
455 * sem_ch3.adb (Check_Anonymous_Access_Components): Create extra formals
456 associated with anonymous access to subprograms.
457
4582011-08-02 Geert Bosch <bosch@adacore.com>
459
460 * opt.ads
461 (Preprocessing_Symbol_Defs): Move from Prepcomp.Symbol_Definitions.
462 (Preprocessing_Symbol_Last): Move from Prepcomp.Last_Definition.
463 * prepcomp.adb (Symbol_Definitions, Last_Definition): Move to opt.ads
464 (Add_Symbol_Definition): Move to switch-c.adb
465 (Process_Command_Line_Symbol_Definitions): Adjust references to above.
466 * prepcomp.ads: Remove dependency on Ada.Unchecked_Deallocation.
467 (Add_Symbol_Definition): Move to switch-c.adb.
468 * sem_ch13.adb, sem_prag.adb: Add dependency on Warnsw.
469 * sem_warn.adb
470 (Set_Dot_Warning_Switch, Set_GNAT_Mode_Warnings, Set_Warning_Switch):
471 Move to warnsw.adb.
472 * sem_warn.ads (Warn_On_Record_Holes, Warn_On_Overridden_Size,
473 Set_Dot_Warning_Switch, Set_GNAT_Mode_Warnings, Set_Warning_Switch):
474 Move to warnsw.adb.
475 * switch-c.adb: Replace dependency on Prepcomp and Sem_Warn by Warnsw.
476 (Add_Symbol_Definition): Moved from Prepcomp.
477 * switch-c.ads: Update copyright notice. Use String_List instead of
478 Argument_List, removing dependency on System.OS_Lib.
479
aa1e353a
AC
4802011-08-02 Yannick Moy <moy@adacore.com>
481
482 * sem_ch3.adb (Analyze_Object_Declaration): issue an error in formal
483 mode on initialization expression which does not respect SPARK
484 restrictions.
485 * sem_util.adb, sem_util.ads (Is_SPARK_Initialization_Expr): determines
486 if the tree referenced by its argument represents an initialization
487 expression in SPARK, suitable for initializing an object in an object
488 declaration.
489
4902011-08-02 Javier Miranda <miranda@adacore.com>
491
492 * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Link the
493 internally generated access to subprogram with its associated protected
494 subprogram type.
495 * einfo.ads, einfo.adb (Original_Access_Type): New attribute.
496
15b682ca
GB
4972011-08-02 Geert Bosch <bosch@adacore.com>
498
499 * cstand.adb (Register_Float_Type): Print information about type to
500 register, if the Debug_Flag_Dot_B is set.
501 * debug.adb (Debug_Flag_Dot_B): Document d.b debug option.
502 * rtsfind.ads (RE_Max_Base_Digits): New run time entity.
503 * sem_ch3.adb (Floating_Point_Type_Declaration): Allow declarations
504 with a requested precision of more than Max_Digits digits and no more
505 than Max_Base_Digits digits, if a range specification is present and the
506 Predefined_Float_Types list has a suitable type to derive from.
507 * sem_ch3.adb (Rep_Item_Too_Early): Avoid generating error in the
508 case of type completion with pragma Import
509 * sem_prag.adb
510 (Process_Import_Predefined_Type): Processing to complete a type
511 with pragma Import. Currently supports floating point types only.
512 (Set_Convention_From_Pragma): Do nothing without underlying type.
513 (Process_Convention): Guard against absence of underlying type,
514 which may happen when importing incomplete types.
515 (Process_Import_Or_Interface): Handle case of importing predefined
516 types. Tweak error message.
517
f8726f2b
AC
5182011-08-02 Eric Botcazou <ebotcazou@adacore.com>
519
520 * inline.adb (Add_Inlined_Body): Adjust check for library-level inlined
521 functions to previous change. Reorganize code slightly.
522
5232011-08-02 Geert Bosch <bosch@adacore.com>
524
525 * back_end.ads (Register_Type_Proc): New call back procedure type for
526 allowing the back end to provide information about available types.
527 (Register_Back_End_Types): New procedure to register back end types.
528 * back_end.adb (Register_Back_End_Types): Call the back end to enumerate
529 available types.
530 * cstand.adb (Back_End_Float_Types): New list for floating point types
531 supported by the back end.
532 (Build_Float_Type): Add extra parameter for Float_Rep_Kind.
533 (Copy_Float_Type): New procedure to make new copies of predefined types.
534 (Register_Float_Type): New call back procedure to populate the BEFT list
535 (Find_Back_End_Float_Type): New procedure to find a BEFT by name
536 (Create_Back_End_Float_Types): New procedure to populate the BEFT list.
537 (Create_Float_Types): New procedure to create entities for floating
538 point types predefined in Standard, and put these and any remaining
539 BEFTs on the Predefined_Float_Types list.
540 * stand.ads (Predefined_Float_Types): New list for predefined floating
541 point types that do not have declarations in package Standard.
542
feecad68
AC
5432011-08-02 Eric Botcazou <ebotcazou@adacore.com>
544
545 * inline.adb (Get_Code_Unit_Entity): New local function. Returns the
546 entity node for the unit containing the parameter.
547 (Add_Inlined_Body): Use it to find the unit containing the subprogram.
548 (Add_Inlined_Subprogram): Likewise.
549 * gcc-interface/Make-lang.in: Update dependencies.
550
5512011-08-02 Thomas Quinot <quinot@adacore.com>
552
553 * s-stusta.adb (Print): Make sure Pos is always initialized to a
554 suitable value.
555
12f0c50c
AC
5562011-08-02 Geert Bosch <bosch@adacore.com>
557
558 * a-calfor.adb (Image): Simplify, removing unnecessary uses of 'Image.
559
5602011-08-02 Eric Botcazou <ebotcazou@adacore.com>
561
562 * sem_type.adb (Covers): Move trivial case to the top and reuse the
563 computed value of Base_Type.
564
5652011-08-02 Yannick Moy <moy@adacore.com>
566
567 * restrict.adb (Check_Restriction): issue an error for any use of
568 class-wide, even if the No_Dispatch restriction is not set.
569 * sem_aggr.adb: Correct typos in comments and messages in formal mode
570 * sem_ch3.adb (Process_Full_View): issue an error in formal mode is,
571 when completing a private extension, the type named in the private part
572 is not the same as that named in the visible part.
573 * sem_res.adb (Resolve_Call): issue an error in formal mode on the use
574 of an inherited primitive operations of a tagged type or type extension
575 that returns the tagged type.
576 * sem_util.adb, sem_util.ads (Is_Inherited_Operation_For_Type): new
577 function which returns True for an implicit operation inherited by the
578 derived type declaration for the argument type.
579 (Is_SPARK_Object_Reference): move to appropriate place in alphabetic
580 order.
581
fb86fe11
ES
5822011-08-02 Ed Schonberg <schonberg@adacore.com>
583
584 * sem_ch5.adb (Pre_Analyze_Range): new procedure extracted from
585 Process_Bounds, to perform analysis with expansion of a range or an
586 expression that is the iteration scheme for a loop.
587 (Analyze_Iterator_Specification): If domain of iteration is given by a
588 function call with a controlled result, as is the case if call returns
589 a predefined container, ensure that finalization actions are properly
590 generated.
591 * par-ch3.adb: accept Ada2012 iterator form in P_Discrete_Range.
592
62be5d0a
JM
5932011-08-02 Javier Miranda <miranda@adacore.com>
594
595 * sem_ch5.adb (Analyze_Iteration_Scheme): Fix typo.
596 * gcc-interface/Make-lang.in: Update dependencies.
597
5982011-08-02 Javier Miranda <miranda@adacore.com>
599
600 * sem_util.ads, sem_util.adb (Is_Variable): Add a new formal to
601 determine if the analysis is performed using N or Original_Node (N).
602 * exp_util.adb (Side_Effect_Free): Code cleanup since the new
603 functionality of routine Is_Variable avoids code duplication.
604 * checks.adb (Determine_Range): Handle temporaries generated by
605 Remove_Side_Effects.
606
6072011-08-02 Javier Miranda <miranda@adacore.com>
608
609 * exp_ch4.adb (Expand_N_Quantified_Expression): Force reanalysis and
610 expansion of the condition. Required since the previous analysis was
611 done with expansion disabled (see Resolve_Quantified_Expression) and
612 hence checks were not inserted and record comparisons have not been
613 expanded.
614
a20f4389
AC
6152011-08-02 Ed Falis <falis@adacore.com>
616
617 * s-taprop-vxworks.adb, s-intman-vxworks.adb, s-intman-vxworks.ads:
618 Update header.
619
6202011-08-02 Bob Duff <duff@adacore.com>
621
622 * opt.ads: Minor comment fix.
623
6242011-08-02 Bob Duff <duff@adacore.com>
625
626 * sem_ch12.adb (Analyze_Package_Instantiation,
627 Analyze_Subprogram_Instantiation): Turn off style checking while
628 analyzing an instance. Whatever style checks that apply to the generic
629 unit should apply, so it makes no sense to apply them in an instance.
630 This was causing trouble when compiling an instance of a runtime
631 unit that violates the -gnatyO switch.
632 * stylesw.adb (Set_Style_Check_Options): "when 'O' =>" was missing from
633 one of the two case statements, causing spurious errors.
634
6352011-08-02 Robert Dewar <dewar@adacore.com>
636
637 * uname.adb: Minor reformatting.
638 * gnatcmd.adb: Minor reformatting.
639 * exp_attr.adb: Minor reformatting.
640
90878b12
AC
6412011-08-02 Ed Schonberg <schonberg@adacore.com>
642
643 * exp_ch5.adb (Expand_N_Assignment_Statement): under restriction
644 No_Dispatching_Calls, do not look for the Assign primitive, because
645 predefined primitives are not created in this case.
646
6472011-08-02 Bob Duff <duff@adacore.com>
648
649 * stylesw.ads: Minor comment fixes.
650
6512011-08-02 Robert Dewar <dewar@adacore.com>
652
653 * freeze.adb (Add_To_Result): New procedure.
654
6552011-08-02 Jose Ruiz <ruiz@adacore.com>
656
657 * exp_attr.adb (Find_Stream_Subprogram): When using a configurable run
658 time, if the specific run-time routines for handling streams of strings
659 are not available, use the default mechanism.
660
6612011-08-02 Arnaud Charlet <charlet@adacore.com>
662
663 * s-regpat.ads: Fix typo.
664
6652011-08-02 Vincent Celier <celier@adacore.com>
666
667 * prj-conf.adb (Get_Or_Create_Configuration_File): If On_Load_Config is
668 not null, call it to create the in memory config project file without
669 parsing an existing default config project file.
670
6712011-08-02 Eric Botcazou <ebotcazou@adacore.com>
672
673 * atree.adb (Allocate_Initialize_Node): Remove useless temporaries.
674
6752011-08-02 Ed Schonberg <schonberg@adacore.com>
676
677 * sem_elim.adb: an abstract subprogram does not need an eliminate
678 pragma for its descendant to be eliminable.
679
6802011-08-02 Ed Falis <falis@adacore.com>
681
682 * init.c: revert to handling before previous checkin for VxWorks
683 * s-intman-vxworks.adb: delete unnecessary declarations related to
684 using Ada interrupt facilities for handling signals.
685 Delete Initialize_Interrupts. Use __gnat_install_handler instead.
686 * s-intman-vxworks.ads: Import __gnat_install_handler as
687 Initialize_Interrupts.
688 * s-taprop-vxworks.adb: Delete Signal_Mask.
689 (Abort_Handler): change construction of mask to unblock exception
690 signals.
691
273adcdf
AC
6922011-08-02 Jerome Guitton <guitton@adacore.com>
693
694 * a-except-2005.adb (Raise_From_Signal_Handler): Call
695 Debug_Raise_Exception before propagation starts.
696
6972011-08-02 Eric Botcazou <ebotcazou@adacore.com>
698
699 * exp_ch6.adb (Expand_Call): Guard restriction checks with a call
700 to Restriction_Check_Required.
701 * sem_ch3.adb (Analyze_Object_Declaration): Likewise.
702 * sem_res.adb (Resolve_Call): Likewise.
703 * sem_attr.adb (Check_Stream_Attribute): Likewise.
704
7052011-08-02 Bob Duff <duff@adacore.com>
706
707 * stylesw.ads: Update comment.
708 * style.adb: Minor: Use Error_Msg_NE instead of Error_Msg_N.
709 * errout.ads: Remove obsolete comment.
710
7112011-08-02 Javier Miranda <miranda@adacore.com>
712
713 * einfo.ads, einfo.adb (Is_Safe_To_Reevaluate): new function.
714 (Set_Is_Safe_To_Reevaluate): new procedure.
715 * sem_ch5.adb (Analyze_Assignment): Add one assertion to ensure that no
716 assignment is allowed on safe-to-reevaluate variables.
717 (Analyze_Iteration_Schine.Process_Bounds.One_Bound): Decorate the
718 temporary created to remove side effects in expressions that use
719 the secondary stack as safe-to-reevaluate.
720 * exp_util.adb (Side_Effect_Free): Add missing code to handle well
721 variables that are not true constants.
722
6320f5e1
AC
7232011-08-02 Robert Dewar <dewar@adacore.com>
724
725 * sem_ch5.adb, sem_ch7.adb, einfo.ads, sem_util.adb, sem_util.ads,
726 sem_res.adb, sem_ch6.adb: Minor reformatting.
727
7282011-08-02 Jerome Guitton <guitton@adacore.com>
729
730 * a-except-2005.adb (Raise_Current_Excep): Remove obsolete dead code.
731
2fe829ae
ES
7322011-08-02 Ed Schonberg <schonberg@adacore.com>
733
734 * sem_ch6.adb (New_Overloaded_Entity, Check_Overriding_Indicator): Do
735 not set Overridden_Operation if subprogram is an initialization
736 procedure.
737
e24329cd
YM
7382011-08-02 Yannick Moy <moy@adacore.com>
739
740 * par-ch6.adb: Correct obsolete name in comments
741 * restrict.adb, restrict.ads (Check_Formal_Restriction): new function
742 which takes two message arguments (existing function takes one), with
743 second message used for continuation.
744 * sem_ch5.adb (Analyze_Block_Statement): in formal mode, only reject
745 block statements that originate from a source block statement, not
746 generated block statements
747 * sem_ch6.adb (Analyze_Function_Call): rename L into Actuals, for
748 symmetry with procedure case
749 * sem_ch7.adb (Check_One_Tagged_Type_Or_Extension_At_Most): new
750 function to issue an error in formal mode if a package specification
751 contains more than one tagged type or type extension.
752 * sem_res.adb (Resolve_Actuals): in formal mode, check that actual
753 parameters matching formals of tagged types are objects (or ancestor
754 type conversions of objects), not general expressions. Issue an error
755 on view conversions that are not involving ancestor conversion of an
756 extended type.
757 (Resolve_Type_Conversion): in formal mode, issue an error on the
758 operand of an ancestor type conversion which is not an object
759 * sem_util.adb, sem_util.ads (Find_Actual): extend the behavior of the
760 procedure so that it works also for actuals of function calls
761 (Is_Actual_Tagged_Parameter): new function which determines if its
762 argument is an actual parameter of a formal of tagged type in a
763 subprogram call
764 (Is_SPARK_Object_Reference): new function which determines if the tree
765 referenced by its argument represents an object in SPARK
766
176dadf6
AC
7672011-08-02 Robert Dewar <dewar@adacore.com>
768
769 * sem_ch3.adb: Minor reformatting
770 Minor comment addition
771 Minor error msg text change
772
7732011-08-02 Javier Miranda <miranda@adacore.com>
774
775 * sem_ch5.adb (Analyze_Iteration_Scheme.Uses_Secondary_Stack): New
776 function. Used to be more precise when we generate a variable plus one
777 assignment to remove side effects in the evaluation of the Bound
778 expressions.
779 (Analyze_Iteration_Scheme): Clean attribute analyzed in all the nodes
780 of the bound expression to force its re-analysis and thus expand the
781 associated transient scope (if required). Code cleanup replacing the
782 previous code that declared the constant entity by an invocation to
783 routine Force_Evaluation which centralizes this work in the frontend.
784
d8b962d8
AC
7852011-08-02 Robert Dewar <dewar@adacore.com>
786
787 * einfo.adb (Is_Base_Type): Improve efficiency by using a flag table
788 (Base_Type): Now uses improved Is_Base_Type function
789 * einfo.ads (Base_Type): Inline this function
790
7912011-08-02 Robert Dewar <dewar@adacore.com>
792
793 * sem_prag.adb (Analyze_Pragma): Defend against infinite recursion
794 (Analyze_Aspect_Specifications): Fix Sloc values for constructed pragmas
795
7962011-08-02 Arnaud Charlet <charlet@adacore.com>
797
798 * gcc-interface/Make-lang.in: Update dependencies.
799 * gcc-interface/Makefile.in: Use s-inmapop-vxworks.adb for all VxWorks
800 targets.
801
8022011-08-02 Yannick Moy <moy@adacore.com>
803
804 * par-ch3.adb (P_Delta_Constraint): issue an error in formal mode on
805 non-simple expression used in delta constraint
806 (P_Index_Or_Discriminant_Constraint): issue an error in formal mode on
807 index constraint which is not a subtype mark
808 * par.adb: With and use Restrict
809 * sem_ch3.adb (Analyze_Component_Declaration): issue an error in formal
810 mode on component type which is not a subtype mark and default
811 expression on component
812 (Analyze_Subtype_Declaration): issue an error in formal mode on subtype
813 of string which does not have a lower index bound equal to 1
814 (Array_Type_Declaration): issue an error in formal mode on index or
815 component type which is not a subtype mark, and on aliased keyword on
816 component
817 (Derived_Type_Declaration): issue an error in formal mode on interface,
818 limited or abstract type
819 (Record_Type_Declaration): issue an error in formal mode on interface
820 (Record_Type_Definition): issue an error in formal mode on tagged types
821 and type extensions not declared in the specification of a library unit
822 package; on null non-tagged record; on variant part
823
8242011-08-02 Vincent Celier <celier@adacore.com>
825
826 * prj-nmsc.adb (Check_Library_Attributes): Do not report Library_Dir
827 not declared for qualified library project when Library_Name is not
828 declared, but Library_Dir is.
829
8302011-08-02 Robert Dewar <dewar@adacore.com>
831
832 * sem_ch13.adb (Analyze_Aspect_Specification): Fix slocs on generated
833 pragmas (affects aspects [Component_]Default_Value
834 (Check_Aspect_At_Freeze_Point): For Component_Default_Value, use
835 component type for the resolution
836
f96b2d85
AC
8372011-08-02 Eric Botcazou <ebotcazou@adacore.com>
838
839 * einfo.adb (Base_Type): Tune implementation for speed.
840
8412011-08-02 Robert Dewar <dewar@adacore.com>
842
843 * freeze.adb: Minor reformatting.
844
8b3c6430
AC
8452011-08-02 Thomas Quinot <quinot@adacore.com>
846
847 * scos.ads: Update comments.
848
8492011-08-02 Ed Schonberg <schonberg@adacore.com>
850
851 * sem_ch3.adb (Build_Derived_Type): Inherit the convention from the
852 base type, because the parent may be a subtype of a private type whose
853 convention is established in a private part.
854
8552011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
856
857 * exp_ch6.adb (Expand_N_Extended_Return_Statement): Wrap the return
858 statement in a block when the expansion of the return expression has
859 created a finalization chain.
860 * freeze.adb (Freeze_Expression): Alphabetize all choices associated
861 with the parent node.
862 Add N_Extended_Return_Statement to handle the case where a transient
863 object declaration appears in the Return_Object_Declarations list of
864 an extended return statement.
865
8662011-08-02 Matthew Gingell <gingell@adacore.com>
867
868 * adaint.c (__gnat_is_symbolic_link_attr): Supress warning on possibly
869 unused parameter 'name'.
870
8712011-08-02 Ed Schonberg <schonberg@adacore.com>
872
873 * sem_elim.adb (Set_Eliminated): If the overridden operation is an
874 inherited operation, check whether its alias, which is the source
875 operastion that it renames, has been marked eliminated.
876
cae81f17
JM
8772011-08-02 Javier Miranda <miranda@adacore.com>
878
879 * exp_util.adb (Safe_Prefixed_Reference): Do not consider safe an
880 in-mode parameter whose type is an access type since it can be used to
881 modify its designated object. Enforce code that handles as safe an
882 access type that is not access-to-constant but it is the result of a
883 previous removal of side-effects.
884 (Remove_Side_Effects): Minor code reorganization of cases which require
885 no action. Done to incorporate documentation on new cases uncovered
886 working in this ticket: no action needed if this routine was invoked
887 too early and the nodes are not yet decorated.
888 * sem_res.adb (Resolve_Slice): Minor code cleanup replacling two calls
889 to routine Remove_Side_Effects by calls to Force_Evaluation since they
890 were issued with actuals that are implicitly provided by
891 Force_Evaluation.
892
218e6dee
RD
8932011-08-02 Robert Dewar <dewar@adacore.com>
894
895 * sem_ch3.adb, sem_res.adb: Minor reformatting.
896
7a489a2b
AC
8972011-08-02 Yannick Moy <moy@adacore.com>
898
899 * sem_attr.adb (Check_Formal_Restriction_On_Attribute): new procedure
900 to issue an error in formal mode on attribute not supported in this mode
901 (Analyze_Attribute): issue errors on standard attributes not supported
902 in formal mode.
903 * sem_ch3.adb (Modular_Type_Declaration): remove obsolete part of
904 comment, and issue error in formal mode on modulus which is not a power
905 of 2.
906 (Process_Range_Expr_In_Decl): issue error in formal mode on non-static
907 range.
908 * sem_ch8.adb (Find_Type): issue error in formal mode on 'Base in
909 subtype mark.
910 * sem_res.adb (Resolve_Unary_Op): issue error in formal mode on unary
911 operator on modular type (except 'not').
912
9132011-08-02 Robert Dewar <dewar@adacore.com>
914
915 * gnat_rm.texi: Minor reformatting.
916
cb7fa356
AC
9172011-08-02 Arnaud Charlet <charlet@adacore.com>
918
919 * s-osinte-linux.ads: Minor comment update and reformatting.
920 * i-cexten.ads: Make this unit pure, as for its parent.
921 Will allow its usage in more contexts if needed.
922
9232011-08-02 Robert Dewar <dewar@adacore.com>
924
925 * s-utf_32.ads: Minor comment fix.
926
9272011-08-02 Ed Schonberg <schonberg@adacore.com>
928
929 * sem_res.adb (Resolve_Actuals): if the subprogram is a primitive
930 operation of a tagged synchronized type, handle the case where the
931 controlling argument is overloaded.
932
9332011-08-02 Yannick Moy <moy@adacore.com>
934
935 * gnat_rm.texi, opt.ads, sem_prag.adb, snames.ads-tmpl:
936 Replace pragma SPARK_95 with pragma Restrictions (SPARK)
937 * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings): set
938 SPARK mode and formal verification mode on processing SPARK restriction
939 * s-rident.ads (Restriction_Id): add SPARK restriction in those not
940 requiring consistency checking.
941
5cc9353d
RD
9422011-08-02 Robert Dewar <dewar@adacore.com>
943
944 * sem_res.adb: Minor reformatting.
945
e51537ff
RD
9462011-08-02 Robert Dewar <dewar@adacore.com>
947
948 * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
949 a-cforse.ads: Remove unneeded with of Ada.Containers
950 Remove commented out pragma Inline's
951 Move specifications of new subprograms to the actual specs
952
83fa09c5
AC
9532011-08-02 Yannick Moy <moy@adacore.com>
954
955 * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
956 a-cforse.ads: Update comments.
957
9582011-08-02 Ed Schonberg <schonberg@adacore.com>
959
960 * sem_attr.adb: add attribute name when 'Result has the wrong prefix.
961
d11cfaf8
RD
9622011-08-02 Robert Dewar <dewar@adacore.com>
963
964 * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
965 a-cforse.ads, a-cofove.ads: Minor reformatting.
966
300b98bb
AC
9672011-08-02 Claire Dross <dross@adacore.com>
968
969 * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads,
970 a-cofove.ads: Add comments.
971
9722011-08-02 Yannick Moy <moy@adacore.com>
973
974 * gnat_rm.texi: Document formal containers.
975
9762011-08-02 Emmanuel Briot <briot@adacore.com>
977
978 * g-comlin.adb (Goto_Section, Getopt): fix handling of "*" when there
979 are empty sections.
980
19fb051c
AC
9812011-08-02 Robert Dewar <dewar@adacore.com>
982
983 * mlib-prj.adb, restrict.ads, sem_aggr.adb, sem_ch12.adb: Minor
984 reformatting.
985
9862011-08-02 Robert Dewar <dewar@adacore.com>
987
988 * aspects.adb: New aspects Default_Value and Default_Component_Value
989 New format of Aspect_Names table checks for omitted entries
990 * aspects.ads: Remove mention of Aspect_Cancel and add documentation on
991 handling of boolean aspects for derived types.
992 New aspects Default_Value and Default_Component_Value
993 New format of Aspect_Names table checks for omitted entries
994 * einfo.ads, einfo.adb (Has_Default_Component_Value): New flag
995 (Has_Default_Value): New flag
996 (Has_Default_Component_Value): New flag
997 (Has_Default_Value): New flag
998 * par-ch13.adb (P_Aspect_Specifications): New format of Aspect_Names
999 table.
1000 * par-prag.adb: New pragmas Default_Value and Default_Component_Value
1001 * sem_ch13.adb (Analyze_Aspect_Specifications): New aspects
1002 Default_Value and Default_Component_Value
1003 * sem_prag.adb: New pragmas Default_Value and Default_Component_Value
1004 New aspects Default_Value and Default_Component_Value
1005 * snames.ads-tmpl: New pragmas Default_Value and Default_Component_Value
1006 * sprint.adb: Print N_Aspect_Specification node when called from gdb
1007
10082011-08-02 Vincent Celier <celier@adacore.com>
1009
1010 * prj-nmsc.adb (Check_Library_Attributes): For virtual library project,
1011 inherit library kind.
1012
10132011-08-02 Ed Schonberg <schonberg@adacore.com>
1014
1015 * sem_res.adb: Add guards in calls to Matching_Static_Array_Bounds.
1016 Minor reformatting.
1017
10182011-08-02 Robert Dewar <dewar@adacore.com>
1019
1020 * i-cstrin.ads: Updates to make Interfaces.C.Strings match RM
1021
5f7747af
AC
10222011-08-02 Yannick Moy <moy@adacore.com>
1023
1024 * sem_aggr.adb (Resolve_Aggregate): Fix thinko.
1025
10262011-08-02 Robert Dewar <dewar@adacore.com>
1027
1028 * impunit.adb: Add comment.
1029
a5fe697b
AC
10302011-08-02 Yannick Moy <moy@adacore.com>
1031
1032 * sem_aggr.adb (Check_Qualified_Aggregate): new procedure which checks
1033 qualification of aggregates in formal mode
1034 (Is_Top_Level_Aggregate): returns True for an aggregate not contained in
1035 another aggregate
1036 (Resolve_Aggregate): complete the test that an aggregate is adequately
1037 qualified in formal mode
1038
10392011-08-02 Pascal Obry <obry@adacore.com>
1040
1041 * make.adb, bindgen.adb, gnatbind.adb: Minor reformatting.
1042 * mlib-prj.adb: Supress warning when compiling binder generated file.
1043 (Build_Library): Supress all warnings when compiling the binder
1044 generated file.
1045
bd65a2d7 10462011-08-02 Yannick Moy <moy@adacore.com>
d4487611 1047
bd65a2d7
AC
1048 * errout.adb, errout.ads (Check_Formal_Restriction): move procedure
1049 from here...
1050 * restrict.adb, restrict.ads (Check_Formal_Restriction): ...to here
1051 * sem_aggr.adb, sem_ch5.adb, sem_util.adb:
1052 Add with/use clauses to make Check_Formal_Restriction visible
1053
10542011-08-02 Ed Schonberg <schonberg@adacore.com>
1055
1056 * sem_ch12.adb (Check_Generic_Actuals): handle properly actual
1057 in-parameters when type of the generic formal is private in the generic
1058 spec and non-private in the body.
1059
10602011-08-02 Claire Dross <dross@adacore.com>
1061
1062 * a-cfdlli.adb, a-cfdlli.ads, a-cfhase.adb, a-cfhase.ads, a-cfhama.adb,
1063 a-cfhama.ads, a-cforse.adb, a-cforse.ads, a-cforma.adb, a-cforma.ads,
1064 a-cofove.adb, a-cofove.ads: New files implementing formal containers.
1065 * impunit.adb, Makefile.rtl: Take new files into account.
d4487611
AC
1066
10672011-08-02 Robert Dewar <dewar@adacore.com>
1068
1069 * sem_aggr.adb, sem_ch3.adb, sem_ch5.adb, make.adb, sem_res.adb,
1070 sem_attr.adb, sem_ch6.adb, sem_ch8.adb: Minor reformatting.
1071
bd434b3f
YM
10722011-08-02 Yannick Moy <moy@adacore.com>
1073
1074 * sem_aggr.adb (Resolve_Aggregate): disable incorrectly placed check in
1075 formal mode
1076 * sem_util.adb (Matching_Static_Array_Bounds): proper detection of
1077 matching static array bounds, taking into account the special case of
1078 string literals
1079 * sem_ch3.adb: Typo in comment.
1080
fe5d3068
YM
10812011-08-02 Yannick Moy <moy@adacore.com>
1082
1083 * errout.adb, errout.ads (Check_Formal_Restriction): new procedure
1084 which issues an error in formal mode if its argument node is originally
1085 from source
1086 * sem_ch3.adb (Analyze_Full_Type_Declaration): move test that a type
1087 has a discriminant specification so that it does not include the case
1088 of derived types
1089 (Derived_Type_Declaration): move here the test that a derived type has a
1090 discriminant specification
1091 * sem_aggr.adb (Resolve_Record_Aggregate): test the presence of the
1092 first element of a component association before accessing its choices
1093 (presence of component association is not enough)
1094 * exp_ch6.adb (Expand_N_Subprogram_Declaration): test if a subprogram
1095 declaration is a library item before accessing the next element in a
1096 list, as library items are not member of lists
1097 * sem_attr.adb, sem_ch11.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
1098 sem_ch8.adb, sem_ch9.adb, sem_res.adb, sem_util.adb: use
1099 Check_Formal_Restriction whenever possible.
1100
b60a3f26
AC
11012011-08-02 Ed Schonberg <schonberg@adacore.com>
1102
1103 * sem_ch3.adb (Find_Type_Of_Object): In ASIS mode, create an itype
1104 reference when needed.
1105
11062011-08-02 Bob Duff <duff@adacore.com>
1107
1108 * gnat_ugn.texi: Fix typo.
1109
11102011-08-02 Vincent Celier <celier@adacore.com>
1111
1112 * make.adb (Gnatmake): Use MLib.Tgt.Archive_Ext as the extension of
1113 archive file name. Do not use the full path name of archives for Open
1114 VMS.
1115
eaba57fb
RD
11162011-08-02 Robert Dewar <dewar@adacore.com>
1117
1118 * sem_ch12.adb, sem_ch11.adb: New calling sequence for
1119 Analyze_Aspect_Specifications
1120 * sem_ch13.adb
1121 (Analyze_Aspect_Specifications): New handling for boolean aspects
1122 * sem_ch13.ads (Analyze_Aspect_Specifications): New calling sequence
1123 * sem_ch3.adb, sem_ch6.adb, sem_ch7.adb, sem_ch9.adb: New calling
1124 sequence for Analyze_Aspect_Specifications
1125 * sem_prag.adb (Analyze_Pragma): Remove use of Aspect_Cancel entirely
1126 * sinfo.ads, sinfo.adb (Aspect_Cancel): Remove, no longer used
1127
11282011-08-02 Robert Dewar <dewar@adacore.com>
1129
1130 * freeze.adb (Freeze_Entity): Remove handling of delayed boolean
1131 aspects, since these no longer exist.
1132
11332011-08-02 Robert Dewar <dewar@adacore.com>
1134
1135 * par-ch13.adb (Aspect_Specifications_Present): Always return false on
1136 semicolon, do not try to see if there are aspects following it.
1137 * par-ch3.adb (P_Declarative_Items): Better message for unexpected
1138 aspect spec.
1139
8830d1d2
AC
11402011-08-02 Robert Dewar <dewar@adacore.com>
1141
1142 * sem_ch8.adb, aspects.ads: Minor reformatting.
1143
11442011-08-02 Eric Botcazou <ebotcazou@adacore.com>
1145
1146 * sem_ch13.ads (Analyze_Aspect_Specification): Add pragma Inline.
1147 * sem_ch13.adb (Analyze_Non_Null_Aspect_Specifications): New procedure
1148 extracted from...
1149 (Analyze_Aspect_Specifications): ...here. Call above procedure.
1150
7ff2d234
AC
11512011-08-02 Yannick Moy <moy@adacore.com>
1152
1153 * exp_ch6.adb (Expand_N_Subprogram_Declaration): issue error in formal
1154 mode on subprogram declaration outside of package specification, unless
1155 it is followed by a pragma Import
1156 * sem_ch3.adb (Access_Definition, Access_Subprogram_Declaration,
1157 Access_Type_Declaration): issue error in formal mode on access type
1158 (Analyze_Incomplete_Type_Decl): issue error in formal mode on
1159 incomplete type
1160 (Analyze_Object_Declaration): issue error in formal mode on object
1161 declaration which does not respect SPARK restrictions
1162 (Analyze_Subtype_Declaration): issue error in formal mode on subtype
1163 declaration which does not respect SPARK restrictions
1164 (Constrain_Decimal, Constrain_Float, Constrain_Ordinary_Fixed): issue
1165 error in formal mode on digits or delta constraint
1166 (Decimal_Fixed_Point_Type_Declaration): issue error in formal mode on
1167 decimal fixed point type
1168 (Derived_Type_Declaration): issue error in formal mode on derived type
1169 other than type extensions of tagged record types
1170 * sem_ch6.adb (Process_Formals): remove check in formal mode, redundant
1171 with check on access definition
1172 * sem_ch9.adb (Analyze_Protected_Definition): issue error in formal
1173 mode on protected definition.
1174 (Analyze_Task_Definition): issue error in formal mode on task definition
1175
11762011-08-02 Robert Dewar <dewar@adacore.com>
1177
1178 * make.adb, sem_ch8.adb, s-inmaop-vxworks.adb: Minor reformatting.
1179
806f6d37
AC
11802011-08-02 Javier Miranda <miranda@adacore.com>
1181
1182 * sem_ch6.adb (Can_Override_Operator): New function.
1183 (Verify_Overriding_Indicator): Add missing code to check overriding
1184 indicator in operators. Fixes regression.
1185 (Check_Overriding_Indicator): Minor reformating after replacing the
1186 code that evaluates if the subprogram can override an operator by
1187 invocations to the above new function.
1188 * einfo.adb
1189 (Write_Field26_Name): Add missing code to ensure that, following
1190 the documentation in einfo.ads, this field is not shown as attribute
1191 "Static_Initialization" on non-dispatching functions.
1192
11932011-08-02 Jose Ruiz <ruiz@adacore.com>
1194
1195 * sem_res.adb (Resolve_Call): A call to
1196 Ada.Real_Time.Timing_Events.Set_Handler violates restriction
1197 No_Relative_Delay (AI-0211) only when it sets a relative timing event,
1198 i.e., when the second parameter is of type Time_Span.
1199
12002011-08-02 Vincent Celier <celier@adacore.com>
1201
1202 * make.adb (Gnatmake): use <library dir>/lib<library name>.a to link
1203 with an archive instead of -L<library dir> -l<library name>.
1204
12052011-08-02 Ed Schonberg <schonberg@adacore.com>
1206
1207 * sem_ch8.adb (Analyze_Use_Type): If the clause is being re-analyzed,
1208 mark the base types In_Use in addition to making the operations
1209 use_visible.
1210
12112011-08-02 Ed Falis <falis@adacore.com>
1212
1213 * init.c: add and setup __gnat_signal_mask for the exception signals
1214 * s-inmaop-vxworks.adb: new file.
1215 * s-intman-vxworks.adb: remove unnecessary initializations and
1216 simplify remaining
1217 * s-intman-vxworks.ads: remove unnecessary variable
1218 * s-taprop-vxworks.adb: simplify signal initialization
1219
780d052e
RD
12202011-08-02 Robert Dewar <dewar@adacore.com>
1221
1222 * sem_ch8.adb: Minor code reorganization, comment updates.
1223
12242011-08-02 Robert Dewar <dewar@adacore.com>
1225
1226 * sem_res.adb (Matching_Static_Array_Bounds): Moved to Sem_Util
1227 * sem_util.ads, sem_util.adb (Matching_Static_Array_Bounds): Moved
1228 here from Sem_Res.
1229 (Matching_Static_Array_Bounds): Use Is_Ok_Static_Expression
1230 (Matching_Static_Array_Bounds): Moved here from Sem_Res
1231
29efbb8c
ES
12322011-08-02 Ed Schonberg <schonberg@adacore.com>
1233
1234 * atree.h, atree.ads, atree.adb: New subprograms to manipulate Elist5.
1235 * par_ch8.adb (P_Use_Type): initialize Used_Operations for node.
1236 * sinfo.ads, sinfo.adb (Used_Operations): new attribute of
1237 use_type_clauses, to handle more efficiently use_type and use_all_type
1238 constructs.
1239 * sem_ch8.adb: Rewrite Use_One_Type and End_Use_Type to handle the
1240 Ada2012 Use_All_Type clause.
1241 (Use_Class_Wide_Operations): new procedure.
1242
b0186f71
AC
12432011-08-02 Robert Dewar <dewar@adacore.com>
1244
1245 * exp_util.adb, par-ch10.adb, par-ch6.adb, sem.adb, sem_ch6.adb,
1246 sem_ch6.ads, sinfo.adb, sinfo.ads, sprint.adb: Change parameterized
1247 expression to expression function.
1248
12492011-08-02 Ed Schonberg <schonberg@adacore.com>
1250
1251 * sem_ch4.adb: transform simple Ada2012 membership into equality only
1252 if types are compatible.
1253
12542011-08-02 Yannick Moy <moy@adacore.com>
1255
1256 * sem_res.adb (Matching_Static_Array_Bounds): new function which
1257 returns True if its argument array types have same dimension and same
1258 static bounds at each index.
1259 (Resolve_Actuals): issue an error in formal mode on actuals passed as
1260 OUT or IN OUT paramaters which are not view conversions in SPARK.
1261 (Resolve_Arithmetic_Op): issue an error in formal mode on
1262 multiplication or division with operands of fixed point types which are
1263 not qualified or explicitly converted.
1264 (Resolve_Comparison_Op): issue an error in formal mode on comparisons of
1265 Boolean or array type (except String) operands.
1266 (Resolve_Equality_Op): issue an error in formal mode on equality
1267 operators for array types other than String with non-matching static
1268 bounds.
1269 (Resolve_Logical_Op): issue an error in formal mode on logical operators
1270 for array types with non-matching static bounds. Factorize the code in
1271 Matching_Static_Array_Bounds.
1272 (Resolve_Qualified_Expression): issue an error in formal mode on
1273 qualified expressions for array types with non-matching static bounds.
1274 (Resolve_Type_Conversion): issue an error in formal mode on type
1275 conversion for array types with non-matching static bounds
1276
767bb4e8
AC
12772011-08-02 Robert Dewar <dewar@adacore.com>
1278
1279 * par-ch10.adb: Minor code reorganization (use Nkind_In).
1280
12812011-08-02 Ed Schonberg <schonberg@adacore.com>
1282
1283 * par-ch9.adb: save location of entry for proper error message.
1284
4ac2477e
JM
12852011-08-02 Javier Miranda <miranda@adacore.com>
1286
1287 * sem_type.ads, sem_type.adb (Is_Ancestor): Addition of a new formal
1288 (Use_Full_View) which permits this routine to climb through the
1289 ancestors using the full-view of private parents.
1290 * sem_util.adb (Collect_Interfaces_Info, Implements_Interface): Set
1291 Use_Full_View to true in calls to Is_Ancestor.
1292 * sem_disp.adb (Override_Dispatching_Operation): Set Use_Full_View to
1293 true in call to Is_Ancestor.
1294 * exp_ch3.adb (Build_Offset_To_Top_Functions, Initialize_Tag): Set
1295 Use_Full_View to true in call to Is_Ancestor.
1296 * exp_ch7.adb (Controller_Component): Set Use_Full_View to true in
1297 call to Is_Ancestor.
1298 * exp_ch4.adb (Expand_N_Type_Conversion, Tagged_Membership): Set
1299 Use_Full_View to true in calls to Is_Ancestor.
1300 * exp_disp.adb (Expand_Interface_Actuals, Make_Secondary_DT, Make_DT,
1301 Make_Select_Specific_Data_Table, Register_Primitive,
1302 Set_All_DT_Position): Set Use_Full_View to true in calls to Is_Ancestor.
1303 * exp_intr.adb (Expand_Dispatching_Constructor_Call): Set Use_Full_View
1304 to true in call to Is_Ancestor.
1305 * exp_util.adb (Find_Interface_ADT, Find_Interface_Tag): Set
1306 Use_Full_View to true in calls to Is_Ancestor.
1307 * exp_cg.adb
1308 (Write_Call_Info): Set Use_Full_View to true in call to Is_Ancestor.
1309 (Write_Type_Info): Set Use_Full_View to true in call to Is_Ancestor.
1310
9f90d123
AC
13112011-08-02 Robert Dewar <dewar@adacore.com>
1312
1313 * gnat_rm.texi: Minor reformatting.
1314 * sem_prag.adb: Minor reformatting.
1315
13162011-08-02 Tristan Gingold <gingold@adacore.com>
1317
1318 * vms_data.ads: Add VMS qualifier for -gnateP.
1319
13202011-08-02 Robert Dewar <dewar@adacore.com>
1321
1322 * par-ch13.adb (P_Aspect_Specification): New meaning of Decl = Empty
1323 * par-ch7.adb (P_Package): Proper placement of aspects for package
1324 decl/instantiation.
1325 * par-endh.adb (Check_End): Ad Is_Sloc parameter
1326 (End_Statements): Add Is_Sloc parameterr
1327 * par.adb (P_Aspect_Specification): New meaning of Decl = Empty
1328 (Check_End): Ad Is_Sloc parameter
1329 (End_Statements): Add Is_Sloc parameterr
1330
13312011-08-02 Vincent Celier <celier@adacore.com>
1332
1333 * ug_words: Add VMS qualifier equivalent to -gnateP:
1334 /SYMBOL_PREPROCESSING.
1335
13362011-08-02 Jose Ruiz <ruiz@adacore.com>
1337
1338 * gnat-style.texi: For hexadecimal numeric literals the typical
1339 grouping of digits is 4 to represent 2 bytes.
1340 A procedure spec which is split into several lines is indented two
1341 characters.
1342
13432011-08-02 Yannick Moy <moy@adacore.com>
1344
1345 * exp_aggr.adb (Is_Others_Aggregate): move function to other unit.
1346 * sem_aggr.adb, sem_aggr.ads (Is_Others_Aggregate): move function here
1347 (Resolve_Aggregate): issue errors in formal modes when aggregate is not
1348 properly qualified
1349 (Resolve_Array_Aggregate): issue errors in formal modes on non-static
1350 choice in array aggregate
1351 (Resolve_Extension_Aggregate): issue errors in formal modes on subtype
1352 mark as ancestor
1353 (Resolve_Record_Aggregate): issue errors in formal modes on mixed
1354 positional and named aggregate for record, or others in record
1355 aggregate, or multiple choice in record aggregate
1356 * sem_res.adb (Resolve_Logical_Op): issue errors in formal mode when
1357 array operands to logical operations AND, OR and XOR do not have the
1358 same static lower and higher bounds
1359 * sem_ch5.adb, sinfo.ads: Correct typos in comments
1360
2933b16c
RD
13612011-08-01 Robert Dewar <dewar@adacore.com>
1362
1363 * sem_util.ads, sem_util.adb, sem_ch6.adb (Last_Source_Statement):
1364 Replaces Last_Source_Node_In_Sequence.
1365 * err_vars.ads (Error_Msg_Lang): 16 is OK, don't need 4K
1366 * errout.adb (Set_Error_Msg_Lang): Takes arg with no parens, but stores
1367 parens and blank in string (this was inconsistently implemented).
1368 * errout.ads
1369 (Set_Error_Msg_Lang): Takes arg with no parens, but stores parens and
1370 blank in string (this was inconsistently implemented).
1371 * gnat1drv.adb
1372 (Set_Global_Switches): Set formal mode switches appropriately
1373 * opt.ads, opt.adb: Formal mode is now global switches, more consistent
1374 * par-prag.adb
1375 (Analyze_Pragma, case SPARK_95): Set opt switches appropriately and
1376 call Set_Error_Msg_Lang to set "spark" as language name.
1377 * par.adb: Remove unnecessary call to set formal language for errout
1378 * sem_prag.adb (P_Pragma, case SPARK_95): Set opt switches
1379 appropriately and call Set_Error_Msg_Lang to set "spark" as language
1380 name.
1381 * sem_ch4.adb (Analyze_Concatenation_Operand): remove procedure and
1382 calls to it, moved after resolution so that types are known
1383 * sem_res.adb (Resolve_Op_Concat): issue an error in formal mode if
1384 result of concatenation is not of type String
1385 (Resolve_Op_Concat_Arg): issue an error in formal mode if an operand of
1386 concatenation is not properly restricted
1387 * gnat_rm.texi: Add doc on pragma Spark_95.
1388 * gcc-interface/Makefile.in: Remove obsolete target pairs for
1389 Interfaces.C.* on VMS. Remove s-parame-vms-restrict.ads.
1390 * gcc-interface/Make-lang.in: Update dependencies.
1391
05dbd302
AC
13922011-08-01 Javier Miranda <miranda@adacore.com>
1393
1394 * sem_disp.adb (Override_Dispatching_Operation): Enforce strictness of
1395 condition that detects if the overridden operation must replace an
1396 existing entity.
1397
13982011-08-01 Javier Miranda <miranda@adacore.com>
1399
1400 * exp_ch4.adb (Expand_N_Case_Expression): Propagate to the expanded
1401 code declarations inserted by Insert_Actions in each alternative of the
1402 N_Case_Expression node.
1403
14042011-08-01 Robert Dewar <dewar@adacore.com>
1405
1406 * sem_ch6.adb: Minor code reorganization.
1407 * sem_util.adb: Minor reformatting.
1408
af9e051f
PO
14092011-08-01 Pascal Obry <obry@adacore.com>
1410
1411 * prj-env.adb: Remove <prefix>/lib/gpr/<target> project search path.
1412 * gnat_ugn.texi: Add documentation for VERSIONINFO Windows resource.
1413
1d801f21
AC
14142011-08-01 Yannick Moy <moy@adacore.com>
1415
1416 * par-ch4.adb (P_Name): issue a syntax error in SPARK mode on character
1417 literal or operator symbol which is prefixed
1418 * sem_attr.adb (Analyze_Access_Attribute): issue an error in formal
1419 mode on access attributes.
1420 * sem_ch4.adb (Analyze_Concatenation_Operand): new procedure to check
1421 that concatenation operands are properly restricted in formal mode
1422 (Analyze_Concatenation, Analyze_Concatenation_Rest): call new procedure
1423 Analyze_Concatenation_Operand. Issue an error in formal mode if the
1424 result of the concatenation has a type different from String.
1425 (Analyze_Conditional_Expression, Analyze_Explicit_Dereference,
1426 Analyze_Quantified_Expression, Analyze_Slice,
1427 Analyze_Null): issue an error in formal mode on unsupported constructs
1428 * sem_ch5.adb
1429 (Analyze_Block_Statement): only issue error on source block statement
1430 * sem_util.ads, sem_util.adb (Last_Source_Node_In_Sequence): new
1431 function which returns the last node in a list of nodes for which
1432 Comes_From_Source returns True, if any
1433 * sem_ch6.adb (Check_Missing_Return): minor refactoring to use
1434 Last_Source_Node_In_Sequence
1435 * sem_ch8.adb (Analyze_Exception_Renaming, Analyze_Generic_Renaming,
1436 Analyze_Object_Renaming, Analyze_Use_Package): issue an error in formal
1437 mode on unsupported constructs
1438 * sem_ch9.adb Do not return after issuing error in formal mode, as the
1439 rest of the actions may be needed later on since the error is marked as
1440 not serious.
1441 * sinfo.ads: Typos in comments.
1442
14432011-08-01 Pascal Obry <obry@adacore.com>
1444
1445 * projects.texi: Minor editing.
1446
53beff22
YM
14472011-08-01 Yannick Moy <moy@adacore.com>
1448
1449 * err_vars.ads (Error_Msg_Lang, Error_Msg_Langlen): new variables for
1450 insertion character ~~
1451 * errout.ads, errout.adb (Formal_Error_Msg_...): remove procedures
1452 (Set_Error_Msg_Lang): new procedure which fixes the language for use
1453 with insertion character ~~
1454 (Set_Msg_Text): treat insertion character ~~
1455 * par-ch4.adb, par-ch5.adb, par-endh.adb, sem_attr.adb, sem_ch11.adb,
1456 sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_util.adb: Replace calls to
1457 Formal_Error_Msg_... procedures by equivalent Error_Msg_...
1458 procedures. Favor calls to Error_Msg_F(E) over Error_Msg_N(E). Make
1459 errors related to the formal language restriction not serious
1460 (insertion character |).
1461 * par.adb (Par): set formal language for error messages if needed
1462 * sem_ch6.adb (Check_Missing_Return): take into account possible
1463 generated statements at the end of the function
1464 * snames.ads-tmpl (Name_SPARK_95, Pragma_SPARK_95): new variable and
1465 enumeration value to define a new pragma SPARK_95
1466 * opt.ads, opt.adb (SPARK_Version_Type, SPARK_Version_Default,
1467 SPARK_Version): new type and variables to store the SPARK version
1468 (none by default).
1469 (SPARK_Mode): return True when SPARK_Version is set
1470 * par-prag.adb: Correct indentation
1471 (Prag): take Pragma_SPARK_95 into account
1472 * sem_prag.adb (Set_Mechanism_Value, Sig_Flags): take Pragma_SPARK_95
1473 into account.
1474
8d606a78
RD
14752011-08-01 Robert Dewar <dewar@adacore.com>
1476
1477 * sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, prj-part.adb, par-ch4.adb,
1478 sem_util.adb, sem_ch4.adb, sem_ch6.adb, sem_ch6.ads, sem_ch8.adb,
1479 sem_ch8.ads, sem_ch13.ads, par-ch5.adb, prj-env.ads: Minor reformatting
1480
1982d5a8
PO
14812011-08-01 Pascal Obry <obry@adacore.com>
1482
1483 * prj-part.ads, prj-part.adb (Parse): Add Target_Name parameter. Pass
1484 Target_Name to Get_Path call.
1485 (Parse_Single_Project): Likewise.
1486 (Post_Parse_Context_Clause): Likewise.
1487 * prj-env.ads, prj-env.adb (Find_Project): Add Target_Name parameter.
1488 Call Initialise_Project_Path with the proper Target_Name.
1489 (Initialize_Project_Path): Add <gnat_root>/<target_name>/lib/gnat
1490 search path.
1491 (Get_Path): Add Target_Name parameter. Call Initialise_Project_Path
1492 with the proper Target_Name.
1493 * prj-conf.adb (Get_Or_Create_Configuration_File): Pass Target_Name to
1494 Part.Parse routine.
1495 (Parse_Project_And_Apply_Config): Likewise.
1496 * prj-makr.adb (Initialize): Pass empty Target_Name to Parse routine.
1497 This is fine as this part of the code is supporting only native
1498 compilation.
1499 * prj-pars.adb (Parse): Pass empty Target_Name to Parse routine. This
1500 is fine as this part of the code is supporting only native compilation.
1501
0d53d36b
AC
15022011-08-01 Yannick Moy <moy@adacore.com>
1503
1504 * sem_util.adb (Enter_Name): issue error in formal mode on declaration
1505 of homonym, unless the homonym is one of the cases allowed in SPARK
1506 * par-ch5.adb (Parse_Decls_Begin_End): issue error in SPARK mode for
1507 package declaration occurring after a body.
1508
15092011-08-01 Robert Dewar <dewar@adacore.com>
1510
1511 * checks.adb, exp_ch4.adb: Minor reformatting.
1512
15132011-08-01 Javier Miranda <miranda@adacore.com>
1514
1515 * einfo.ads (Access_Disp_Table): Fix documentation.
1516 (Dispatch_Table_Wrappers): Fix documentation.
1517
15182011-08-01 Pascal Obry <obry@adacore.com>
1519
1520 * prj-env.adb, prj-env.ads: Minor reformatting.
1521
8ed68165
AC
15222011-08-01 Yannick Moy <moy@adacore.com>
1523
1524 * sem_util.ads, sem_util.adb, par.adb, par_util.adb
1525 (Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move
1526 procedures out of these packages.
1527 * errout.ads, errout.adb
1528 (Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move
1529 procedures in of this package
1530 (Formal_Error_Msg_NE): new procedure for wrapper on Error_Msg_NE
1531 * par-ch5.adb (Parse_Decls_Begin_End): issue syntax error in SPARK mode
1532 on misplaced later vs initial declarations, like in Ada 83
1533 * sem_attr.adb (Processing for Analyze_Attribute): issue error in
1534 formal mode on attribute of private type whose full type declaration
1535 is not visible
1536 * sem_ch3.adb (Analyze_Declarations): issue error in formal mode on a
1537 package declaration inside a package specification
1538 (Analyze_Full_Type_Declaration): issue error in formal mode on
1539 controlled type or discriminant type
1540 * sem_ch6.adb (Analyze_Subprogram_Specification): only issue error on
1541 user-defined operator means that it should come from the source
1542 (New_Overloaded_Entity): issue error in formal mode on overloaded
1543 entity.
1544 * sem_ch6.ads, sem_ch13.ads: typos in comments.
1545
15462011-08-01 Thomas Quinot <quinot@adacore.com>
1547
1548 * atree.adb: Minor reformatting.
1549 * checks.adb: Minor reformatting.
1550
4230bdb7
AC
15512011-08-01 Vincent Celier <celier@adacore.com>
1552
1553 * s-parame-vms-ia64.ads: Fix typo in comment
1554 Minor reformatting
1555 * s-parame-vms-restrict.ads: Removed, unused.
1556
15572011-08-01 Javier Miranda <miranda@adacore.com>
1558
1559 * exp_ch3.adb
1560 (Is_Variable_Size_Array): Remove local subprogram Is_Constant_Bound.
1561 * sem_ch3.adb
1562 (Constrain_Index): Remove side effects in the evaluation of the bounds.
1563 * sem_ch3.ads, sem_ch3.adb
1564 (Is_Constant_Bound): New extended version of the subprogram that was
1565 previously located inside function Exp_Ch3.Is_Variable_Size_Array.
1566 Moved here since it is shared by routines of sem_ch3 and exp_ch3.
1567 * sem_aux.ads (Constant_Value): Fix typo in comment.
1568 * checks.adb (Generate_Index_Checks): New implementation which, for
1569 array objects with constant bounds, generates the runtime check
1570 referencing the bounds of the array type. For other cases this routine
1571 provides its previous behavior obtaining such values from the array
1572 object.
1573 * sem_res.adb (Set_Slice_Subtype): Link a copied range subtree with its
1574 parent type.
1575 * atree.adb (New_Copy): Reset flag Is_Overloaded in the new copy since
1576 we cannot have semantic interpretations of the new node.
1577
2010d078
AC
15782011-08-01 Ed Schonberg <schonberg@adacore.com>
1579
1580 * sem_ch6.adb (Fully_Conformant_Expressions): handle quantified
1581 expressions.
1582
15832011-08-01 Arnaud Charlet <charlet@adacore.com>
1584
1585 * sem_ch8.adb: Minor code editing.
1586 * s-vxwext.adb: Remove trailing space.
1587 * freeze.adb, freeze.ads, errout.ads, erroutc.adb: Fix GPLv3 header for
1588 consistency with other files.
1589
15902011-08-01 Thomas Quinot <quinot@adacore.com>
1591
1592 * s-auxdec.ads, s-auxdec-vms_64.ads: Minor reformatting.
1593
15942011-08-01 Ed Schonberg <schonberg@adacore.com>
1595
1596 * par-ch10.adb: reject parameterized expressions as compilation unit.
1597 * sem_ch4.adb: handle properly conditional expression with overloaded
1598 then_clause and no else_clause.
1599
16002011-08-01 Tristan Gingold <gingold@adacore.com>
1601
1602 * s-parame-vms-alpha.ads, s-parame-vms-ia64.ads: Redeclare C_Address
1603 like done by System.Aux_DEC.
1604 * env.c (__gnat_setenv) [VMS]: Put logicals into LNM$PROCESS table.
1605
daec8eeb
YM
16062011-08-01 Yannick Moy <moy@adacore.com>
1607
1608 * par-endh.adb (Check_End): issue a syntax error in SPARK mode for
1609 missing label at end of declaration (subprogram or package)
1610 * par-ch4.adb (P_Name): issue a syntax error in SPARK mode for mixing
1611 of positional and named parameter association
1612 * par.adb, par-util.adb (Formal_Error_Msg_SP): new wrapper on
1613 Error_Msg_SP which adds a prefix to the error message giving the name
1614 of the formal language analyzed
1615 * sem_ch6.adb (Analyze_Return_Type): issue an error in formal mode for
1616 access result type in subprogram, unconstrained array as result type,.
1617 (Analyze_Subprogram_Declaration): issue an error in formal mode for null
1618 procedure
1619 * sem_ch8.adb: Code clean up.
1620
38171f43
AC
16212011-08-01 Javier Miranda <miranda@adacore.com>
1622
1623 * sem_ch7.adb (Uninstall_Declarations): Remove useless code.
1624 * einfo.ads (Access_Disp_Table): Fix documentation.
1625 (Dispatch_Table_Wrappers): Fix documentation.
1626 * einfo.adb (Access_Disp_Table, Dispatch_Table_Wrappers,
1627 Set_Access_Disp_Table, Set_Dispatch_Table_Wrappers): Fix the assertions
1628 to enforce the documentation of this attribute.
1629 (Set_Is_Interface): Cleanup the assertion.
1630 * exp_ch4.adb (Expand_Allocator_Expression, Tagged_Membership): Locate
1631 the Underlying_Type entity before reading attribute Access_Disp_Table.
1632 * exp_disp.adb (Expand_Dispatching_Call, Expand_Interface_Conversion):
1633 Locate the Underlying_Type before reading attribute Access_Disp_Table.
1634 * exp_aggr.adb (Build_Array_Aggr_Code, Build_Record_Aggr_Code): Locate
1635 the Underlying_Type entity before reading attribute Access_Disp_Table.
1636 * exp_ch3.adb (Build_Record_Init_Proc, Expand_N_Object_Declaration):
1637 Locate the Underlying_Type entity before reading attribute
1638 Access_Disp_Table.
1639
16402011-08-01 Ed Schonberg <schonberg@adacore.com>
1641
1642 * s-poosiz.ads: Additional overriding indicators.
1643
16442011-08-01 Yannick Moy <moy@adacore.com>
1645
1646 * sem_ch5.adb (Analyze_Exit_Statement): add return after error in
1647 formal mode.
1648 (Analyze_Iteration_Scheme): issue error in formal mode when loop
1649 parameter specification does not include a subtype mark.
1650 * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): issue error in
1651 formal mode on abstract subprogram.
1652 (Analyze_Subprogram_Specification): issue error in formal mode on
1653 user-defined operator.
1654 (Process_Formals): issue error in formal mode on access parameter and
1655 default expression.
1656 * sem_ch9.adb (Analyze_Abort_Statement,
1657 Analyze_Accept_Statement, Analyze_Asynchronous_Select,
1658 Analyze_Conditional_Entry_Call, Analyze_Delay_Relative,
1659 Analyze_Delay_Until, Analyze_Entry_Call_Alternative,
1660 Analyze_Requeue, Analyze_Selective_Accept,
1661 Analyze_Timed_Entry_Call): issue error in formal mode on such constructs
1662 * sem_ch11.adb (Analyze_Raise_Statement, Analyze_Raise_xxx_Error):
1663 issue error in formal mode on user-defined raise statement.
1664
1f250383
AC
16652011-08-01 Thomas Quinot <quinot@adacore.com>
1666
1667 * sem_ch6.adb (Enter_Overloaded_Entity): Do not warn about a
1668 declaration being hidden when overriding an implicit inherited
1669 subprogram.
1670 * par-ch10.adb (P_Compilation_Unit): In syntax check only mode
1671 (-gnats), do not complain about a source file that contains only a
1672 pragma No_Body.
1673
16742011-08-01 Ed Schonberg <schonberg@adacore.com>
1675
1676 * sem_ch5.adb (Analyze_Iterator_Scheme): Do not overwrite type of loop
1677 variable if already set.
1678
607d0635
AC
16792011-08-01 Arnaud Charlet <charlet@adacore.com>
1680
1681 * g-socket-dummy.adb, s-osinte-linux.ads, g-socket-dummy.ads,
1682 g-debuti.adb, g-tasloc.adb, g-debuti.ads, g-tasloc.ads,
1683 s-osinte-hpux.ads, g-sercom.adb, g-soliop-solaris.ads, g-sercom.ads,
1684 g-sptain.ads, g-curexc.ads, s-tasloc.adb, s-tasloc.ads, s-tataat.adb,
1685 g-ctrl_c.adb, a-reatim.adb, s-tataat.ads, g-dirope.adb, g-ctrl_c.ads,
1686 g-dirope.ads, g-boubuf.adb, g-calend.adb, g-boubuf.ads, g-souinf.ads,
1687 g-table.adb, g-bytswa-x86.adb, g-wispch.adb, g-io.adb, g-table.ads,
1688 g-wispch.ads, g-io.ads, g-memdum.adb, g-memdum.ads, g-busorg.adb,
1689 g-busorg.ads, g-regpat.adb, g-sothco-dummy.adb, g-encstr.adb,
1690 g-regpat.ads, g-sothco-dummy.ads, s-osinte-aix.ads, g-encstr.ads,
1691 g-sercom-mingw.adb, s-mastop-vms.adb, g-diopit.adb, g-diopit.ads,
1692 s-vxwext.adb, g-dyntab.adb, g-dyntab.ads, g-crc32.adb,
1693 g-sercom-linux.adb, g-crc32.ads, s-regpat.adb, g-flocon.ads,
1694 s-regpat.ads, g-stheme.adb, g-sestin.ads, s-taspri-posix-noaltstack.ads,
1695 g-soliop.ads, s-inmaop-posix.adb, g-locfil.ads, g-enblsp-vms-alpha.adb,
1696 g-socthi-dummy.adb, g-socthi-dummy.ads, gnat.ads, g-moreex.adb,
1697 g-moreex.ads, g-dynhta.adb, g-dynhta.ads, g-deutst.ads, g-htable.adb,
1698 g-cgicoo.adb, g-htable.ads, g-cgicoo.ads, a-interr.adb,
1699 g-socthi-vms.adb, g-socthi-vms.ads, g-hesora.adb, g-bubsor.adb,
1700 g-hesora.ads, g-bubsor.ads, g-md5.adb, g-md5.ads, s-intman-irix.adb,
1701 s-htable.adb, s-osinte-vms.adb, s-htable.ads, s-osinte-vms.ads,
1702 s-taprob.adb, g-bytswa.adb, g-bytswa.ads, s-osinte-solaris-posix.ads,
1703 a-suenco.adb, g-comver.adb, g-comver.ads, g-exctra.adb,
1704 s-osinte-solaris.adb, g-exctra.ads, s-osinte-irix.ads,
1705 s-osinte-solaris.ads, a-caldel-vms.adb, g-socthi-vxworks.adb,
1706 g-expect.adb, g-socthi-vxworks.ads, g-expect.ads, g-comlin.ads,
1707 g-heasor.adb, g-heasor.ads, g-traceb.adb, g-traceb.ads, g-decstr.adb,
1708 g-spipat.adb, g-decstr.ads, g-spipat.ads, s-mastop-tru64.adb,
1709 g-except.ads, g-thread.adb, g-hesorg.adb, g-thread.ads, g-hesorg.ads,
1710 g-expect-vms.adb, a-stuten.ads, g-spchge.adb, g-spchge.ads,
1711 g-u3spch.adb, g-u3spch.ads, g-spitbo.adb, g-spitbo.ads,
1712 s-osinte-dummy.ads, s-osinte-posix.adb, g-pehage.adb, g-pehage.ads,
1713 s-gloloc-mingw.adb, g-sha1.ads, s-traceb-hpux.adb,
1714 g-trasym-unimplemented.adb, g-trasym-unimplemented.ads, g-io_aux.adb,
1715 g-regexp.adb, g-io_aux.ads, g-socthi-mingw.adb, g-regexp.ads,
1716 s-osinte-hpux-dce.adb, g-socthi-mingw.ads, g-cgi.adb,
1717 s-osinte-hpux-dce.ads, g-cgi.ads, g-byorma.adb, g-boumai.ads,
1718 g-byorma.ads, a-caldel.adb, s-regexp.adb, s-regexp.ads,
1719 g-soliop-mingw.ads, g-sptavs.ads, s-osinte-tru64.ads, g-speche.adb,
1720 g-speche.ads, g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads,
1721 s-osinte-darwin.ads, i-vxwork-x86.ads, g-awk.adb, i-vxwork.ads,
1722 g-awk.ads, g-zspche.adb, g-zspche.ads, g-socket.adb, g-sptabo.ads,
1723 g-socket.ads, g-semaph.adb, g-semaph.ads, s-taspri-posix.ads,
1724 g-enblsp-vms-ia64.adb, g-cgideb.adb, g-cgideb.ads, g-sothco.adb,
1725 s-osinte-freebsd.ads, g-sothco.ads, g-catiio.adb, g-casuti.adb,
1726 g-catiio.ads, g-casuti.ads, g-trasym.adb, g-trasym.ads, s-casuti.adb,
1727 g-os_lib.adb, s-traceb-mastop.adb, g-busora.adb, s-interr-dummy.adb,
1728 g-busora.ads, g-enutst.ads, s-os_lib.adb, a-tasatt.adb,
1729 s-osinte-mingw.ads: Update to GPLv3 run-time license.
1730 Use GNAT instead of GNARL.
1731
17322011-08-01 Bob Duff <duff@adacore.com>
1733
1734 * a-cdlili.ads, a-cihama.ads, a-coinve.ads, a-ciorse.ads, a-coorma.ads,
1735 a-cidlli.ads, a-ciormu.ads, a-cihase.ads, a-cohama.ads, a-coorse.ads,
1736 a-ciorma.ads, a-coormu.ads, a-convec.ads, a-cohase.ads: Minor
1737 reformatting.
1738
17392011-08-01 Yannick Moy <moy@adacore.com>
1740
1741 * debug.adb (d.D) reverve flag for the SPARK mode
1742 (d.E) reverve flag for SPARK generation mode
1743 (d.F) reverve flag for Why generation mode
1744 * opt.ads, opt.adb (ALFA_Mode, ALFA_Through_SPARK_Mode,
1745 ALFA_Through_Why_Mode, Formal_Verification_Mode, SPARK_Mode): New
1746 functions which return True when the corresponding modes are set
1747 (Formal_Language): return "spark" or "alfa" when in formal verification
1748 mode.
1749 * sem_util.ads, sem_util.adb (Formal_Error_Msg): new wrapper on
1750 Error_Msg to prefix the error message with a tag giving the formal
1751 language
1752 (Formal_Error_Msg_N): new wrapper on Error_Msg_N to prefix the error
1753 message with a tag giving the formal language
1754 * sem_ch5.adb (Analyze_Block_Statement): issue error in formal mode on
1755 block statement
1756 (Analyze_Case_Statement): issue error in formal mode on case statement
1757 with a single "others" case alternative
1758 (Analyze_Exit_Statement): issue errors in formal mode on exit
1759 statements which do not respect SPARK restrictions
1760 (Analyze_Goto_Statement): issue error in formal mode on goto statement
1761 (Check_Unreachable_Code): always issue an error (not a warning) in
1762 formal mode on unreachable code (concerns both code after an infinite
1763 loop and after an unconditional jump, both not allowed in SPARK)
1764 * sem_ch6.adb (Analyze_Return_Statement): add call to
1765 Set_Return_Present for a procedure containing a return statement
1766 (already done for functions in Analyze_Function_Return)
1767 (Analyze_Function_Return): issue error in formal mode on extended
1768 return or if return is not last statement in function
1769 (Check_Missing_Return): issue error in formal mode if function does
1770 not end with return or if procedure contains a return
1771 * sem_ch8.ads, sem_ch8.adb (Has_Loop_In_Inner_Open_Scopes): new
1772 function to detect if there is an inner scope of its parameter S which
1773 is a loop.
1774
17752011-08-01 Thomas Quinot <quinot@adacore.com>
1776
1777 * sem_ch6.ads: Minor reformatting.
1778
d8b3ccb9
AC
17792011-08-01 Javier Miranda <miranda@adacore.com>
1780
1781 * sem_util.adb (Abstract_Interface_List): Complete condition when
1782 processing private type declarations to avoid reading unavailable
1783 attribute.
1784 (Is_Synchronized_Tagged_Type): Complete condition when processing
1785 private extension declaration nodes to avoid reading unavailable
1786 attribute.
1787
17882011-08-01 Thomas Quinot <quinot@adacore.com>
1789
1790 * sem_ch3.adb: Minor reformatting.
1791
17922011-08-01 Thomas Quinot <quinot@adacore.com>
1793
1794 * s-parame-ae653.ads, s-parame-vms-alpha.ads, s-parame-hpux.ads,
1795 i-cpoint.adb, i-cstrin.adb, i-cpoint.ads, i-cstrin.ads,
1796 s-parame-vms-ia64.ads, s-parame.ads, i-c.ads, s-parame-vxworks.ads,
1797 s-parame-vms-restrict.ads: Remove duplicated Interfaces.C.* packages
1798 for VMS, instead parametrize the common implementation with
1799 System.Parameters declarations.
1800
0bb9276c
AC
18012011-08-01 Eric Botcazou <ebotcazou@adacore.com>
1802
1803 * gnat_rm.texi: Document limitation of Pragma No_Strict_Aliasing.
1804
18052011-08-01 Tristan Gingold <gingold@adacore.com>
1806
1807 * seh_init.c: Fix SEH handler installation on win64.
1808
18092011-08-01 Ed Schonberg <schonberg@adacore.com>
1810
1811 * sem_ch3.adb (Access_Subprogram_Declaration): in Asis mode, prevent
1812 double analysis of an anonymous access to subprogram, because it can
1813 lead to improper sharing of profiles and a back-end crash.
1814
6a2e4f0b
AC
18152011-08-01 Robert Dewar <dewar@adacore.com>
1816
1817 * make.adb, sem_ch4.adb: Minor reformatting.
1818 * gcc-interface/Make-lang.in: Update dependencies.
1819 * sem_util.adb, exp_ch5.adb: Minor reformatting.
1820
18212011-08-01 Arnaud Charlet <charlet@adacore.com>
1822
1823 * gnat_rm.texi: Fix definition of Long_Integer.
1824
18252011-08-01 Ed Schonberg <schonberg@adacore.com>
1826
1827 * exp_aggr.adb: check limit size of static aggregate unconditionally,
1828 to prevent storage exhaustion.
1829 * exp_ch7.adb (Clean_Simple_Protected_Objects): if the scope being
1830 finalized is a function body, insert the cleanup code before the final
1831 return statement, to prevent spurious warnings.
1832 * s-pooglo.ads: add overriding indicator.
1833
4561baf7
ES
18342011-08-01 Ed Schonberg <schonberg@adacore.com>
1835
1836 * sem_ch4.adb (Operator_Check): improve error message when both a
1837 with_clause and a use_clause are needed to make operator usage legal.
1838 * sem_util.ads, sem_util.adb (Unit_Is_Visible): new predicate to
1839 determine whether a compilation unit is visible within an other,
1840 either through a with_clause in the current unit, or a with_clause in
1841 its library unit or one one of its parents.
1842
383e179e
AC
18432011-08-01 Ed Schonberg <schonberg@adacore.com>
1844
1845 * exp_ch5.adb (Expand_N_Iterator_Loop): handle properly an iterator
1846 over an arbitrary expression of an array or container type.
1847 * lib-xref.adb: clarify comment.
1848
18492011-08-01 Bob Duff <duff@adacore.com>
1850
1851 * einfo.ads: Minor reformatting.
1852 * debug.adb: Minor comment improvement.
1853
18542011-08-01 Javier Miranda <miranda@adacore.com>
1855
1856 * sem_ch4.adb (Try_Object_Operation): For class-wide subprograms do not
1857 consider hidden subprograms as valid candidates.
1858
18592011-08-01 Arnaud Charlet <charlet@adacore.com>
1860
1861 * make.adb (Compile): Strip -mxxx switches in CodePeer mode.
1862
18632011-08-01 Vasiliy Fofanov <fofanov@adacore.com>
1864
1865 * gnat_ugn.texi: Fix typo.
1866
61c161b2
AC
18672011-08-01 Robert Dewar <dewar@adacore.com>
1868
1869 * i-cstrin.adb, sem_util.adb, exp_ch11.adb, sem_ch8.adb,
1870 lib-xref.adb: Minor reformatting
1871
18722011-08-01 Gary Dismukes <dismukes@adacore.com>
1873
1874 * exp_ch6.adb (Expand_N_Extended_Return_Statement): Replace test of
1875 when to generate a call to Move_Final_List.
1876 (Has_Controlled_Parts): Remove this function.
1877
84df40f7
AC
18782011-08-01 Geert Bosch <bosch@adacore.com>
1879
1880 * par-ch3.adb (P_Discrete_Choice_List): Improve error message for extra
1881 "," in choice list.
1882
18832011-08-01 Thomas Quinot <quinot@adacore.com>
1884
1885 * exp_ch11.adb (Expand_N_Raise_Statement): Mark N_Raise_xxx_Error for
1886 explicit raise of a predefined exception as Comes_From_Source if the
1887 original N_Raise_Statement comes from source.
1888
18892011-08-01 Robert Dewar <dewar@adacore.com>
1890
1891 * sinfo.ads: Add comment.
1892 * sem_ch6.adb: Minor reformatting.
1893
18942011-08-01 Robert Dewar <dewar@adacore.com>
1895
1896 * freeze.adb (Freeze_Entity): Refine check for bad component size
1897 clause to avoid rejecting confirming clause when atomic/aliased present.
1898
18992011-08-01 Ed Schonberg <schonberg@adacore.com>
1900
1901 * sem_ch8.adb (Find_Direct_Name, Analyze_Expanded_Name): use Is_LHS to
1902 better determine whether an entity reference is a write.
1903 * sem_util.adb (Is_LHS): refine predicate to handle assignment to a
1904 subcomponent.
1905 * lib-xref.adb (Output_References): Do no suppress a read reference at
1906 the same location as an immediately preceeding modify-reference, to
1907 handle properly in-out actuals.
1908
19092011-08-01 Tristan Gingold <gingold@adacore.com>
1910
1911 * env.c (__gnat_setenv) [VMS]: Refine previous change.
1912
19132011-08-01 Quentin Ochem <ochem@adacore.com>
1914
1915 * i-cstrin.adb (New_String): Changed implementation, now uses only the
1916 heap to compute the result.
1917
c7f0d2c0
AC
19182011-08-01 Robert Dewar <dewar@adacore.com>
1919
1920 * atree.ads: Minor reformatting.
1921
19222011-08-01 Emmanuel Briot <briot@adacore.com>
1923
1924 * g-expect.adb (Get_Command_Output): Fix memory leak.
1925
19262011-08-01 Geert Bosch <bosch@adacore.com>
1927
1928 * cstand.adb (P_Float_Type): New procedure to print the definition of
1929 predefined fpt types.
1930 (P_Mixed_Name): New procedure to print a name using mixed case
1931 (Print_Standard): Use P_Float_Type for printing floating point types
1932 * einfo.adb (Machine_Emax_Value): Add preliminary support for quad
1933 precision IEEE float.
1934
19352011-08-01 Thomas Quinot <quinot@adacore.com>
1936
1937 * sem_ch3.adb: Minor reformatting.
1938
19392011-08-01 Ed Schonberg <schonberg@adacore.com>
1940
1941 * sem_ch6.adb (Analyze_Parameterized_Expression): If the expression is
1942 the completion of a generic function, insert the new body rather than
1943 rewriting the original.
1944
19452011-08-01 Yannick Moy <moy@adacore.com>
1946
1947 * sinfo.ads, errout.ads: Typos in comments.
1948
1c54829e
AC
19492011-08-01 Robert Dewar <dewar@adacore.com>
1950
1951 * par-endh.adb: Minor reformatting.
1952
19532011-08-01 Robert Dewar <dewar@adacore.com>
1954
1955 * aspects.ads, aspects.adb: Add aspects for library unit pragmas
1956 (Pre_Post_Aspects): New subtype.
1957 * par-ch12.adb (P_Generic): New syntax for aspects in packages
1958 * par-ch13.adb (P_Aspect_Specifications): Add Semicolon parameter
1959 * par-ch7.adb (P_Package): Remove Decl parameter
1960 (P_Package): Handle new syntax for aspects (before IS)
1961 * par-ch9.adb (P_Protected_Definition): Remove Decl parameter, handle
1962 new aspect syntax
1963 (P_Task_Definition): Remove Decl parameter, handle new aspect syntax
1964 * par.adb (P_Aspect_Specifications): Add Semicolon parameter
1965 (P_Package): Remove Decl parameter
1966 * sem_ch13.adb (Analyze_Aspect_Specifications): Handle library unit
1967 aspects
1968 * sem_ch7.adb (Analyze_Package_Declaration): Analyze new format aspect
1969 specs
1970 * sem_util.ads, sem_util.adb (Static_Boolean): New function
1971 * sinfo.ads: Document new syntax for aspects in packages etc.
1972 * sprint.adb: Handle new syntax of aspects before IS in package
1973
19742011-08-01 Thomas Quinot <quinot@adacore.com>
1975
1976 * atree.ads: Minor reformatting.
1977 * sem_prag.adb: Minor reformatting.
1978
19792011-08-01 Robert Dewar <dewar@adacore.com>
1980
1981 * exp_util.adb (Insert_Actions): Fix error in handling Actions for
1982 case expr alternative.
1983
19842011-08-01 Ed Schonberg <schonberg@adacore.com>
1985
1986 * sem_ch12.adb: Fix typo.
1987
9eea4346
GB
19882011-08-01 Geert Bosch <bosch@adacore.com>
1989
1990 * sem_prag.adb (Check_No_Link_Name): New procedure.
1991 (Process_Import_Or_Interface): Use Check_No_Link_Name.
1992 * cstand.adb (Create_Standard): Use Esize (Standard_Long_Long_Float)
1993 instead of Standard_Long_Long_Float_Size global. Preparation for
1994 eventual removal of per type constants.
1995 * exp_util.ads (Get_Stream_Size): New function returning the stream
1996 size value of subtype E.
1997 * exp_util.adb (Get_Stream_Size): Implement new function.
1998 * exp_strm.adb (Build_Elementary_Input_Call): Use Get_Stream_Size
1999 function.
2000 * exp_attr.adb (Attribute_Stream_Size): Use Get_Stream_Size
2001 * einfo.adb:
2002 (Machine_Mantissa_Value): Handle 128-bit quad precision IEEE floats
2003
3d6c3bd7
GB
20042011-08-01 Geert Bosch <bosch@adacore.com>
2005
2006 * cstand.adb: Fix comments.
2007 * sem_prag.adb (Analyze_Pragma): Use List_Length instead of explicit
2008 count of arguments.
2009
e7d897b8
AC
20102011-08-01 Robert Dewar <dewar@adacore.com>
2011
2012 * exp_ch4.adb, sem_cat.adb: Minor reformatting.
2013
20142011-08-01 Geert Bosch <bosch@adacore.com>
2015
2016 * atree.ads: Fix comment.
2017
c228a069
AC
20182011-08-01 Robert Dewar <dewar@adacore.com>
2019
2020 * aspects.ads, aspects.adb (Aspect_Names): Moved from body to spec.
2021 * par-ch13.adb (P_Aspect_Specifications): Check misspelled aspect name.
2022 * par.adb: Add with for Namet.Sp.
2023 * par-tchk.adb: Minor reformatting.
2024
20252011-08-01 Vincent Celier <celier@adacore.com>
2026
2027 * mlib-tgt-specific-vms-alpha.adb, mlib-tgt-specific-vms-ia64.adb
2028 (Build_Dynamic_Library): Use new function Init_Proc_Name to get the name
2029 of the init procedure of a SAL.
2030 * mlib-tgt-vms_common.ads, mlib-tgt-vms_common.adb (Init_Proc_Name):
2031 New procedure.
2032
20332011-08-01 Thomas Quinot <quinot@adacore.com>
2034
2035 * exp_ch4.adb, s-tasini.ads, sem_attr.adb, s-soflin.ads: Minor
2036 reformatting.
2037
20382011-08-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2039
2040 * adaint.c (__gnat_file_time_name_attr): Get rid of warning.
2041
20422011-08-01 Thomas Quinot <quinot@adacore.com>
2043
2044 * sem_util.adb, sem_util.ads (Has_Overriding_Initialize): Make function
2045 conformant with its spec (return True only for types that have
2046 an overriding Initialize primitive operation that prevents them from
2047 having preelaborable initialization).
2048 * sem_cat.adb (Validate_Object_Declaration): Fix test for preelaborable
2049 initialization for controlled types in Ada 2005 or later mode.
2050
857ade1b
RD
20512011-08-01 Robert Dewar <dewar@adacore.com>
2052
2053 * aspects.ads, aspects.adb: Add aspect Type_Invariant, Precondition,
2054 Postcondition.
2055 (Same_Aspect): New function.
2056 * sem_ch13.adb (Analyze_Aspect_Specifications): Add aspect
2057 Type_Invariant, Precondition, Postcondition.
2058 * snames.ads-tmpl: Add Name_Type_Invariant.
2059
bd949ee2
RD
20602011-08-01 Robert Dewar <dewar@adacore.com>
2061
2062 * freeze.adb (Freeze_Entity): Don't call Check_Aspect_At_Freeze_Point
2063 here.
2064 (Freeze_All_Ent): Fix error in handling inherited aspects.
2065 * sem_ch13.adb (Analyze_Aspect_Specifications): Skip aspect that is
2066 already analyzed, but don't skip entire processing of a declaration,
2067 that's wrong in some cases of declarations being rewritten.
2068 (Analyze_Aspect_Specification): Set Is_Delayed_Aspect in aspects.
2069 Don't delay for integer, string literals
2070 Treat predicates in usual manner for delay, remove special case code,
2071 not needed.
2072 (Analyze_Freeze_Entity): Make call to Check_Aspect_At_Freeze_Point
2073 (Build_Predicate_Function): Update saved expression in aspect
2074 (Build_Invariant_Procedure): Update saved expression in aspect
2075 * exp_ch4.adb (Expand_N_Selected_Component): Only do the optimization
2076 of replacement of discriminant references if the reference is simple.
2077
f1c952af
RD
20782011-08-01 Robert Dewar <dewar@adacore.com>
2079
2080 * aspects.ads, aspects.adb: Add Static_Predicate and Dynamic_Predicate.
2081 * sem_ch13.adb (Analyze_Aspect_Specification): Add processing for
2082 Static_Predicate and Dynamic_Predicate.
2083 (Build_Predicate_Function): Add processing for Static_Predicate
2084 and Dynamic_Predicate.
2085 * sinfo.ads, sinfo.adb (From_Dynamic_Predicate): New flag
2086 (From_Static_Predicate): New flag
2087 * snames.ads-tmpl: Add Name_Static_Predicate and Name_Dynamic_Predicate
2088
20892011-08-01 Robert Dewar <dewar@adacore.com>
2090
2091 * usage.adb: Documentation cleanup for Ada version modes in usage.
2092 * expander.adb: Minor reformatting.
2093
47e11d08
AC
20942011-08-01 Robert Dewar <dewar@adacore.com>
2095
2096 * atree.ads: Minor comment fix.
2097 * a-stwifi.adb, a-stzfix.adb, a-strfix.adb, a-ztexio.ads, a-textio.ads,
2098 a-witeio.ads, sem_prag.adb: Minor reformatting.
2099
21002011-08-01 Doug Rupp <rupp@adacore.com>
2101
2102 * env.c (__gnat_setenv) [VMS]: Force 32bit on item list structure
2103 pointers. Use descrip.h header file for convenience. Add some
2104 comments.
2105
21062011-08-01 Robert Dewar <dewar@adacore.com>
2107
2108 * freeze.adb (Freeze_Entity): Call Check_Aspect_At_Freeze_Point
2109 (Freeze_All): Call Check_Aspect_At_End_Of_Declarations
2110 * sem_ch13.ads, sem_ch13.adb (Check_Aspect_At_Freeze_Point):
2111 New procedure.
2112 (Check_Aspect_At_End_Of_Declarations): New procedure
2113 (Analye_Aspect_Specification): Minor changes for above procedures
2114 * sinfo.ads, sinfo.adb (Is_Delayed_Aspect): Now set in aspect
2115 specification node as well.
2116
21172011-08-01 Pascal Obry <obry@adacore.com>
2118
2119 * adaint.c (_gnat_stat): GetFilesAttributesEx() would fail on special
2120 Windows files. Use GetFilesAttributes() in this case to check for file
2121 existence instead of returning with an error code.
2122
a3a16b21
VC
21232011-08-01 Vincent Celier <celier@adacore.com>
2124
2125 * a-stzfix.adb, a-stwifi.adb (Replace_Slice): Fixed computation when
2126 High is above Source length.
2127
ff58cc69
RD
21282011-08-01 Robert Dewar <dewar@adacore.com>
2129
2130 * a-ztexio.ads, a-textio.ads, a-witeio.ads: Fix comment.
2131
6bb88533
AC
21322011-08-01 Robert Dewar <dewar@adacore.com>
2133
2134 * aspects.ads (Boolean_Aspects): New subtype.
2135 * exp_ch13.adb (Expand_Freeze_Entity): Fix errors in handling aspects
2136 for derived types in cases where the parent type and derived type have
2137 aspects.
2138 * freeze.adb (Freeze_Entity): Fix problems in handling derived type
2139 with aspects when parent type also has aspects.
2140 (Freeze_Entity): Deal with delay of boolean aspects (must evaluate
2141 boolean expression at this point).
2142 * sem_ch13.adb (Analyze_Aspect_Specifications): Delay all aspects in
2143 accordance with final decision on the Ada 2012 feature.
2144 * sinfo.ads, sinfo.adb (Is_Boolean_Aspect): New flag.
2145
21462011-08-01 Matthew Heaney <heaney@adacore.com>
2147
2148 * a-chtgbo.adb (Delete_Node_Sans_Free): Replace iterator with selector.
2149
060a3f28
AC
21502011-08-01 Pascal Obry <obry@adacore.com>
2151
2152 * a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb:
2153 Fix Replace_Slice when High is above current string size.
2154 (Replace_Slice): Fix DL computation when High is above current
2155 string length.
2156
21572011-08-01 Gary Dismukes <dismukes@adacore.com>
2158
2159 * gnat_rm.texi: Add documentation for pragma Static_Elaboration_Desired.
2160
e7f567a3
AC
21612011-08-01 Matthew Heaney <heaney@adacore.com>
2162
2163 * a-rbtgbo.adb (Delete_Node_Sans_Free): Fixed assignment to left child
2164 of node.
2165
21662011-08-01 Pascal Obry <obry@adacore.com>
2167
2168 * a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb: Minor
2169 reformatting.
2170
1a265e78
AC
21712011-08-01 Ed Schonberg <schonberg@adacore.com>
2172
2173 * sem_attr.adb (Analyze_Attribute, case 'Access): Handle properly named
2174 access to protected subprograms in generic bodies.
2175 * sem_ch6.adb (Analyze_Subprogram_Declaration): If the context is a
2176 protected type, indicate that the convention of the subprogram is
2177 Convention_Protected, because it may be used in subsequent declarations
2178 within the protected declaration.
2179
21802011-08-01 Vincent Celier <celier@adacore.com>
2181
2182 * mlib-prj.adb (Build_Library): Use "ada_" as the prefix for the "init"
2183 and "final" procedures when the name of the library is "ada", to avoid
2184 duplicate symbols "adainit" and "adafinal" in executables.
2185
67e28ef8
ES
21862011-08-01 Ed Schonberg <schonberg@adacore.com>
2187
2188 * sem_attr.adb (Analyze_Attribute, case 'Result): Handle properly a
2189 quantified expression that appears within a postcondition and uses the
2190 Ada2012 'Result attribute.
2191
6da2ca7d
RO
21922011-07-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2193
2194 * init.c (__gnat_error_handler): Cast reason to int.
2195 (__gnat_install_handler): Explain sa_sigaction use.
2196
7d5997c6
EB
21972011-07-24 Eric Botcazou <ebotcazou@adacore.com>
2198
2199 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: If the
2200 subprogram has copy-in copy-out parameters, try to promote the mode of
2201 the return type if it is passed in registers.
2202
4b4cfdd5
EB
22032011-07-24 Eric Botcazou <ebotcazou@adacore.com>
2204
2205 * gcc-interface/utils2.c (build_binary_op) <ARRAY_REF>: Do not mark the
2206 left operand as addressable.
2207
f3d34576
EB
22082011-07-24 Eric Botcazou <ebotcazou@adacore.com>
2209
2210 * gcc-interface/gigi.h (build_function_stub): Remove.
2211 (build_return_expr): Likewise.
2212 (convert_vms_descriptor): Declare.
2213 * gcc-interface/utils.c (convert_vms_descriptor): Make global.
2214 (build_function_stub): Move to...
2215 * gcc-interface/utils2.c (build_return_expr): Move to...
2216 * gcc-interface/trans.c (build_function_stub): ...here.
2217 (build_return_expr): ...here.
2218 (Subprogram_Body_to_gnu): Add local variable for language_function.
2219 Disconnect the parameter attributes cache, if any, once done with it.
2220 Call end_subprog_body only after setting the end_locus.
2221 Build the stub associated with the function, if any, at the very end.
2222 (gnat_to_gnu) <N_Return_Statement>: Remove couple of useless local
2223 variables and streamline control flow.
2224
0a6ecc08
AC
22252011-07-23 Arnaud Charlet <charlet@adacore.com>
2226
2227 PR ada/49819
2228 * gcc-interface/Makefile.in (powerpc-linux): Remove reference to
2229 g-trasym-dwarf.adb.
2230
5b6d595b
RO
22312011-07-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2232
2233 PR bootstrap/49794
2234 * init.c [sun && __SVR4 && !__vxworks] (__gnat_install_handler):
2235 Assign to act.sa_sigaction.
2236 * tracebak.c [USE_GENERIC_UNWINDER] (__gnat_backtrace): Cast
2237 current->return_address to char * before arithmetic.
2238
94017021
RO
22392011-07-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2240
2241 * init.c [sgi] (__gnat_error_handler): Update sigaction(2) citation.
2242 Correct argument types.
2243 Extract code from reason.
2244 (__gnat_install_handler): Assign to act.sa_sigaction.
2245
52fd02bb
EB
22462011-07-21 Eric Botcazou <ebotcazou@adacore.com>
2247
2248 * gcc-interface/Make-lang.in (GNAT1_ADA_OBJS): Move ada/b_gnat1.o to...
2249 (GNAT1_OBJS): ...here.
2250
f39a9ca2
EB
22512011-07-15 Eric Botcazou <ebotcazou@adacore.com>
2252
2253 PR ada/48711
2254 * g-socthi-mingw.adb (Fill): Fix formatting.
2255
9e36aa23
EB
2256 * gcc-interface/gigi.h: Move around comment.
2257
e3aca522
JDA
22582011-07-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2259
2260 PR ada/46350
2261 * s-taprop-hpux-dce.adb (Abort_Task): Remove unnecessary cast.
2262
696b1960
FW
22632011-07-14 Florian Weimer <fw@deneb.enyo.de>
2264
2265 PR ada/48711
2266 * g-socthi-mingw.adb (Fill): Guard against invalid MSG_WAITALL.
2267
f542c405
EB
22682011-07-13 Eric Botcazou <ebotcazou@adacore.com>
2269
2270 * gcc-interface/utils.c (build_vms_descriptor32): Skip the 32-bit
2271 range comparison if Pmode is SImode.
2272
9e9bd455
LG
22732011-07-12 Laurent GUERBY <laurent@guerby.net>
2274 Eric Botcazou <ebotcazou@adacore.com>
2275
2276 * adadecode.c: Wrap up in extern "C" block.
2277 * adadecode.h: Likewise.
2278 * adaint.c: Likewise. Remove 'const' keyword.
2279 * adaint.h: Likewise.
2280 * argv.c: Likewise.
2281 * atree.h: Likewise.
2282 * cio.c: Likewise.
2283 * cstreams.c: Likewise.
2284 * env.c: Likewise.
2285 * exit.c: Likewise.
2286 * fe.h: Likewise.
2287 * final.c: Likewise.
2288 * init.c: Likewise.
2289 * initialize.c: Likewise.
2290 * link.c: Likewise.
2291 * namet.h: Likewise.
2292 * nlists.h: Likewise.
2293 * raise.c: Likewise.
2294 * raise.h: Likewise.
2295 * repinfo.h: Likewise.
2296 * seh_init.c: Likewise.
2297 * targext.c: Likewise.
2298 * tracebak.c: Likewise.
2299 * uintp.h: Likewise.
2300 * urealp.h: Likewise.
2301 * xeinfo.adb: Wrap up generated C code in extern "C" block.
2302 * xsinfo.adb: Likewise.
2303 * xsnamest.adb: Likewise.
2304 * gcc-interface/gadaint.h: Wrap up in extern "C" block.
2305 * gcc-interface/gigi.h: Wrap up some prototypes in extern "C" block.
2306 * gcc-interface/misc.c: Likewise.
2307 * gcc-interface/Make-lang.in (GCC_LINK): Use LINKER.
2308 (GNAT1_C_OBJS): Remove ada/b_gnat1.o. List ada/seh_init.o and
2309 ada/targext.o here...
2310 (GNAT_ADA_OBJS): ...and not here.
2311 (GNAT1_ADA_OBJS): Add ada/b_gnat1.o.
2312 (GNATBIND_OBJS): Reorder.
2313
7644b3c7
RH
23142011-07-07 Richard Henderson <rth@redhat.com>
2315
2316 * gcc-interface/misc.c (gnat_init_gcc_eh): Don't call
2317 dwarf2out_frame_init.
2318
8384ac41
EB
23192011-07-07 Eric Botcazou <ebotcazou@adacore.com>
2320
2321 * gcc-interface/misc.c (gnat_init): Tweak previous change.
2322
fbdd5d87
RO
23232011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2324
2325 PR target/39150
2326 * gcc-interface/Makefile.in: Handle x86_64-solaris2.
2327
1a072294
RG
23282011-07-06 Richard Guenther <rguenther@suse.de>
2329
8384ac41
EB
2330 * gcc-interface/misc.c (gnat_init): Merge calls to
2331 build_common_tree_nodes and build_common_tree_nodes_2.
1a072294
RG
2332 Re-initialize boolean_false_node.
2333
bc712852
EB
23342011-07-02 Eric Botcazou <ebotcazou@adacore.com>
2335 Olivier Hainque <hainque@adacore.com>
2336 Nicolas Setton <setton@adacore.com>
2337
2338 * gcc-interface/utils.c (record_builtin_type): Set TYPE_ARTIFICIAL on
2339 the type according to the ARTIFICIAL_P parameter.
2340 (create_type_decl): Likewise.
2341 (create_type_stub_decl): Set TYPE_ARTIFICIAL on the type to 1.
2342
2eb22389
EB
23432011-07-01 Eric Botcazou <ebotcazou@adacore.com>
2344
2345 * gcc-interface/Make-lang.in (gnat1): Prepend '+' to the command.
2346 (gnatbind): Likewise.
2347
4bdaaf2f
RO
23482011-06-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2349
2350 * gcc-interface/Makefile.in (TOOLS_LIBS): Add $(LIBINTL).
2351
c020c92b
EB
23522011-06-18 Eric Botcazou <ebotcazou@adacore.com>
2353
2354 * gcc-interface/decl.c (gnat_to_gnu_component_type): Use GNAT_TYPE
2355 local variable throughout. Remove useless call to Base_Type.
2356 (gnat_to_gnu_field): Use GNAT_FIELD_TYPE local variable throughout.
2357 Take it also into account for the volatileness of the field. Set the
2358 TREE_SIDE_EFFECTS flag as well in this case. Reorder some warnings.
2359
96769d32
EB
23602011-06-18 Eric Botcazou <ebotcazou@adacore.com>
2361
2362 * gcc-interface/trans.c (Identifier_to_gnu): Don't set TREE_THIS_NOTRAP
2363 on a dereference built for a by-ref object if it has an address clause.
2364
7e4680c1
EB
23652011-06-18 Eric Botcazou <ebotcazou@adacore.com>
2366
2367 * einfo.ads (Address_Taken): Document use for the second argument of
2368 Asm_Input and Asm_Output attributes.
2369 * sem_attr.adb (Analyze_Attribute) <Attribute_Asm_Input>: If the second
2370 argument is an entity name, then set Address_Taken on it.
2371 <Attribute_Asm_Output>: Likewise.
2372 * gcc-interface/trans.c (lvalue_required_for_attribute_p): Handle the
2373 Attr_Asm_Input and Attr_Asm_Output attributes explicitly.
2374 (gnat_to_gnu) <N_Code_Statement>: If an operand is going to end up in
2375 memory and is a CONST_DECL, retrieve its corresponding VAR_DECL.
2376
23772011-06-16 Joern Rennecke <joern.rennecke@embecosm.com>
d5cc9181
JR
2378
2379 PR middle-end/46500
2380 * gcc-interface/decl.c (gnat_to_gnu_param): Use pack_cumulative_args.
2381
677f3fa8
JM
23822011-06-14 Joseph Myers <joseph@codesourcery.com>
2383
2384 * gcc-interface/Make-lang.in (gnatbind$(exeext)): Use ggc-none.o.
2385 (ada/utils.o): Update dependencies.
2386 * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Add
2387 ../../../libcpp/libcpp.a.
2388 * gcc-interface/utils.c: Include common/common-target.h.
2389 (process_attributes): Use targetm_common.have_named_sections.
2390
009db074
RG
23912011-06-07 Richard Guenther <rguenther@suse.de>
2392
0bad0e23
EB
2393 * gcc-interface/misc.c (gnat_init): Do not set size_type_node or call
2394 set_sizetype.
009db074 2395
3bfc61cf
EB
23962011-06-06 Eric Botcazou <ebotcazou@adacore.com>
2397
0bad0e23 2398 * gcc-interface/utils2.c (gnat_stabilize_reference): Propagate the
3bfc61cf
EB
2399 TREE_THIS_NOTRAP flag.
2400
5c4a1c7b
EB
24012011-06-06 Eric Botcazou <ebotcazou@adacore.com>
2402
2403 * gcc-interface/utils2.c (gnat_stabilize_reference) <COMPOUND_EXPR>:
2404 Fix thinko.
2405
e9f57686
EB
24062011-06-06 Eric Botcazou <ebotcazou@adacore.com>
2407
2408 * gcc-interface/trans.c (Identifier_to_gnu): Also handle deferred
2409 constants whose full view has discriminants specially.
2410
10e4d056
EB
24112011-06-06 Eric Botcazou <ebotcazou@adacore.com>
2412
2413 * gcc-interface/utils.c: Include diagnostic.h.
2414 (gnat_write_global_declarations): Output debug information for all
2415 global type declarations before finalizing the compilation unit.
2416 * gcc-interface/Make-lang.in (ada/utils.o): Add dependency.
2417
0957c029
JJ
24182011-05-25 Jakub Jelinek <jakub@redhat.com>
2419
2420 * gcc-interface/utils.c (def_fn_type): Remove extra va_end.
2421
52d0a7ac
KT
24222011-05-25 Kai Tietz <ktietz@redhat.com>
2423
2424 * adaint.c (__gnat_to_canonical_file_list_next): Use array
2425 initialization instead of const/none-const pointer assignment.
2426
1ed1641d
JM
24272011-05-24 Joseph Myers <joseph@codesourcery.com>
2428
2429 * gcc-interface/Make-lang.in (GNAT1_OBJS): Don't include
2430 $(EXTRA_GNAT1_OBJS).
2431 (GNATBIND_OBJS): Don't include $(EXTRA_GNATBIND_OBJS).
2432 (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Remove.
2433 (gnat1$(exeext), gnatbind$(exeext)): Use libcommon-target.a.
2434 * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use
2435 libcommon-target.a instead of prefix.o.
2436
9fe72ebd
JM
24372011-05-21 Joseph Myers <joseph@codesourcery.com>
2438
2439 PR ada/49097
0bad0e23 2440 * gcc-interface/Make-lang.in (gnatbind$(exeext)): Depend on $(LIBDEPS).
9fe72ebd 2441
2691e6d7
JM
24422011-05-20 Joseph Myers <joseph@codesourcery.com>
2443
0bad0e23
EB
2444 * gcc-interface/Make-lang.in (EXTRA_GNATBIND_OBJS): Remove version.o.
2445 * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use libcommon.a
2446 instead of version.o.
2691e6d7 2447
bf6490b5
KT
24482011-05-18 Kai Tietz <ktietz@redhat.com>
2449
2450 * gcc-interface/trans.c (Exception_Handler_to_gnu_sjlj): Use
2451 boolean_false_node instead of integer_zero_node.
2452 (convert_with_check): Likewise.
2453 * gcc-interface/decl.c (choices_to_gnu): Likewise.
2454
7bf9a5ac
EB
24552011-05-12 Eric Botcazou <ebotcazou@adacore.com>
2456
2457 * gcc-interface/trans.c (call_to_gnu): In the by-reference case, if the
2458 type of the parameter is an unconstrained array, convert the actual to
2459 the type of the formal in the In Out and Out cases as well.
2460
e5b00edf
NF
24612011-05-11 Nathan Froyd <froydnj@codesourcery.com>
2462
2463 * gcc-interface/utils.c (def_fn_type): Don't call build_function_type;
2464 call build_function_type_array or build_varargs_function_type_array
2465 instead.
2466 (create_subprog_type): Don't call build_function_type; call
2467 build_function_type_vec instead.
2468
51545682
NF
24692011-05-11 Nathan Froyd <froydnj@codesourcery.com>
2470
2471 * gcc-interface/ada-tree.h (TYPE_OBJECT_RECORD_TYPE): Use TYPE_MINVAL.
2472 (TYPE_GCC_MIN_VALUE): Use TYPE_MINVAL.
2473 (TYPE_GCC_MAX_VALUE): Use TYPE_MAXVAL.
2474
c99c0026
EB
24752011-05-07 Eric Botcazou <ebotcazou@adacore.com>
2476
f620bd21
EB
2477 * gcc-interface/decl.c (intrin_arglists_compatible_p): Remove spaces.
2478
c99c0026
EB
2479 * gcc-interface/gigi.h (global_bindings_p): Adjust prototype.
2480 * gcc-interface/utils.c (global_bindings_p): Return bool and simplify.
2481
3d528853
NF
24822011-05-05 Nathan Froyd <froydnj@codesourcery.com>
2483
c99c0026 2484 * gcc-interface/trans.c (Case_Statement_to_gnu): Call build_case_label.
3d528853 2485
d7d058c5
NF
24862011-05-05 Nathan Froyd <froydnj@codesourcery.com>
2487
2488 * gcc-interface/decl.c (intrin_arglists_compatible_p): Use iterators
2489 instead of accessing TYPE_ARG_TYPES directly.
2490 * gcc-interface/utils.c (handle_nonnull_attribute): Likewise.
2491
805e60a0
EB
24922011-05-05 Eric Botcazou <ebotcazou@adacore.com>
2493
2494 PR ada/48844
2495 * gcc-interface/gigi.h (get_variant_part): Declare.
2496 * gcc-interface/decl.c (get_variant_part): Make global.
2497 * gcc-interface/utils2.c (find_common_type): Do not return T1 if the
2498 types have the same constant size, are record types and T1 has a
2499 variant part while T2 doesn't.
2500
907a08d9
EB
25012011-05-05 Eric Botcazou <ebotcazou@adacore.com>
2502
2503 * gcc-interface/utils.c (begin_subprog_body): Do not call
2504 get_pending_sizes.
2505 (end_subprog_body): Likewise.
2506
d35936ab
RG
25072011-05-04 Richard Guenther <rguenther@suse.de>
2508
2509 * gcc-interface/trans.c (gnat_to_gnu): Remove zero notrunc argument to
2510 int_const_binop.
2511 (pos_to_constructor): Likewise.
2512
c1fd8753
NF
25132011-05-03 Nathan Froyd <froydnj@codesourcery.com>
2514 Eric Botcazou <ebotcazou@adacore.com>
2515
2516 * gcc-interface/trans.c (gigi): Call build_function_type_list instead
2517 of build_function_type. Adjust calls to...
2518 (build_raise_check): ...this. Do not take a void_tree parameter.
2519 Call build_function_type_list instead of build_function_type.
2520 Fix head comment and swap couple of conditional blocks.
2521
4fb87d2b
EB
25222011-04-30 Eric Botcazou <ebotcazou@adacore.com>
2523
2524 * gnatvsn.ads (Library_Version): Bump to 4.7.
2525 (Current_Year): Bump to 2011.
2526
fa5e5a76
MM
25272011-04-29 Michael Matz <matz@suse.de>
2528
2529 * gcc-interface/misc.c (gnat_handle_option): Set
2530 warn_maybe_uninitialized.
2531
8d6a2f69
GP
25322011-04-23 Gerald Pfeifer <gerald@pfeifer.com>
2533
2534 * gnat_ugn.texi (Complexity Metrics Control): Update link to
2535 the Watson/McCabe paper.
2536
770937fd
JM
25372011-04-23 Jim Meyering <meyering@redhat.com>
2538
2539 * gnat_ugn.texi (Examples of gnatxref Usage): Fix typo: s/it it/it is/
2540
eb601ae1
EB
25412011-04-22 Eric Botcazou <ebotcazou@adacore.com>
2542
2543 * gcc-interface/decl.c (make_packable_type): Copy DECL_PARALLEL_TYPE
2544 onto the new type.
2545
7d7fcb08
EB
25462011-04-22 Eric Botcazou <ebotcazou@adacore.com>
2547
2548 * gcc-interface/gigi.h (create_subprog_decl): Add ARTIFICIAL_FLAG
2549 parameter.
2550 * gcc-interface/utils.c (create_subprog_decl): Likewise. Set
2551 DECL_ARTIFICIAL and DECL_NO_INLINE_WARNING_P on the DECL accordingly.
2552 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Add
2553 ARTIFICIAL_FLAG local variable and pass it to create_subprog_decl.
2554 <all>: Do not set flags on the reused DECL node coming from an alias.
2555 Set DECL_IGNORED_P on the DECL node built for subprograms if they
2556 don't need debug info here...
2557 * gcc-interface/trans.c (Subprogram_Body_to_gnu): ...and not here.
2558 (gigi): Adjust calls to create_subprog_decl.
2559 (build_raise_check): Likewise.
2560 (establish_gnat_vms_condition_handler): Likewise.
2561 (Compilation_Unit_to_gnu): Likewise.
2562 (gnat_to_gnu): Likewise.
2563
e1876cac
EB
25642011-04-21 Eric Botcazou <ebotcazou@adacore.com>
2565
2566 * gcc-interface/Makefile.in (NO_SIBLING_ADAFLAGS): Always define.
2567 (NO_REORDER_ADAFLAGS): New variable.
2568 (EXTRA_GNATTOOLS): Always define.
2569 (../stamp-gnatlib1-$(RTSDIR): Copy tsystem.h.
2570 Clean up and adjust list of files compiled with special options.
2571 * gcc-interface/Make-lang.in: Likewise.
2572 (ada/decl.o): Cosmetical change.
2573 (ada/misc.o): Remove dependency on $(PLUGIN_H).
2574
04695783
JM
25752011-04-20 Jim Meyering <meyering@redhat.com>
2576
2577 * initialize.c (__gnat_initialize): Remove useless if-before-free.
2578
23399579
EB
25792011-04-17 Eric Botcazou <ebotcazou@adacore.com>
2580
2581 * gcc-interface/Make-lang.in (gnatbind): Replace $(ALL_CFLAGS) with
2582 $(CFLAGS) on the link line.
2583
51c5169c
EB
25842011-04-17 Eric Botcazou <ebotcazou@adacore.com>
2585
2586 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Function>: Declare the
2587 padded type built for the return type if it is unconstrained.
2588
61e46a7d
NF
25892011-04-14 Nathan Froyd <froydnj@codesourcery.com>
2590
2591 * gcc-interface/utils.c (gnat_poplevel): Use block_chainon.
2592
81f653d6
NF
25932011-04-12 Nathan Froyd <froydnj@codesourcery.com>
2594
b4867846
EB
2595 * gcc-interface/ada-tree.h (union lang_tree_node): Check for TS_COMMON
2596 before calling TREE_CHAIN.
81f653d6
NF
2597 * gcc-interface/misc.c (gnat_init_ts): New function.
2598 (LANG_HOOKS_INIT_TS): Define.
2599
a358e188
MJ
26002011-04-12 Martin Jambor <mjambor@suse.cz>
2601
b4867846
EB
2602 * gcc-interface/utils.c (end_subprog_body): Call cgraph_get_create_node
2603 instead of cgraph_node.
a358e188 2604
29b1c5a4
EB
26052011-04-08 Eric Botcazou <ebotcazou@adacore.com>
2606
2607 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Set minimum
2608 alignment on fields of the RETURN type built for the Copy-In Copy-Out
2609 mechanism.
2610
88872b00
EB
26112011-04-08 Eric Botcazou <ebotcazou@adacore.com>
2612
2613 * gcc-interface/trans.c (Identifier_to_gnu): Do not return initializers
2614 of aggregate types that contain a placeholder.
2615
dcf0c47e
NF
26162011-04-08 Nathan Froyd <froydnj@codesourcery.com>
2617
2618 * gcc-interface/utils.c (handle_sentinel_attribute): Don't use
b4867846 2619 TYPE_ARG_TYPES.
dcf0c47e
NF
2620 (handle_type_generic_attribute): Likewise.
2621
53e3000c
EB
26222011-04-04 Eric Botcazou <ebotcazou@adacore.com>
2623
2624 PR ada/47163
2625 * s-oscons-tmplt.c (MSG_WAITALL): Fix thinko in previous change.
2626
ab380bb4
KT
26272011-04-04 Kai Tietz <ktietz@redhat.com>
2628
2629 PR ada/47163
0bad0e23
EB
2630 * s-oscons-tmplt.c (MSG_WAITALL): Define it for native windows targets
2631 to flag value.
ab380bb4 2632
8ffac116
EB
26332011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2634
2635 * gcc-interface/utils2.c (build_allocator): In the unconstrained array
2636 type case, do not strip a padding type around the array type.
2637
de9528f0
EB
26382011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2639
2640 * gcc-interface/utils.c (update_pointer_to): Finalize named pointer
2641 types.
2642
d9d7a26c
EB
26432011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2644
2645 * gcc-interface/lang.opt (feliminate-unused-debug-types): Delete.
2646 * gcc-interface/misc.c (gnat_handle_option): Remove special handling
de9528f0 2647 code for -feliminate-unused-debug-types.
d9d7a26c
EB
2648 (gnat_post_options): Likewise.
2649
4cb12a90
EB
26502011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2651
2652 * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial
2653 declaration of a pointer type, then set DECL_ORIGINAL_TYPE to a
2654 distinct copy.
2655
acccc61c
EB
26562011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2657
2658 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not force the
2659 DECL_ARTIFICIAL flag on enumeration types.
2660
583eb0c9
EB
26612011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2662
2663 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do not make
2664 fat pointer types artificial unconditionally.
2665 <E_Array_Subtype>: Attach the base array type as a parallel type if it
2666 isn't artificial.
2667
e3edbd56
EB
26682011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2669
2670 * gcc-interface/gigi.h (get_dummy_type): Declare.
2671 (build_dummy_unc_pointer_types): Likewise.
2672 (finish_fat_pointer_type): Likewise.
2673 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If a dummy
2674 fat pointer type has been built, complete it in place.
2675 <E_Access_Type>: Call build_dummy_unc_pointer_types to build dummy fat
2676 and thin pointers. Remove useless variable.
2677 (finish_fat_pointer_type): Make global and move to...
2678 * gcc-interface/utils.c (finish_fat_pointer_type): ...here.
2679 (get_dummy_type): New function.
2680 (build_dummy_unc_pointer_types): Likewise.
2681 (gnat_pushdecl): Propage the name to the anonymous variants only.
2682 (update_pointer_to): Only adjust the pointer types in the unconstrained
2683 array case.
2684
65444786
EB
26852011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2686
2687 * gcc-interface/ada-tree.h (DECL_TAFT_TYPE_P): New flag.
2688 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Incomplete_Type>: Set it
2689 if this is a Taft amendment type and the full declaration is available.
2690 * gcc-interface/trans.c (process_type): Likewise.
2691 If there is an old type, mark the new one as used if DECL_TAFT_TYPE_P.
2692 (process_freeze_entity): Likewise.
2693 * gcc-interface/utils.c (dummy_global): New static variable.
2694 (gnat_write_global_declarations): If there are types declared as used
2695 at the global level, insert them in the global hash table.
2696
1aeb40dd
EB
26972011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2698
2699 * gcc-interface/gigi.h (record_builtin_type): Add ARTIFICIAL_P param.
2700 * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial
2701 declaration of an array type, then set DECL_ORIGINAL_TYPE to a distinct
2702 copy.
2703 (record_builtin_type): Add ARTIFICIAL_P parameter. Set DECL_ARTIFICIAL
2704 flag of the type accordingly.
2705 * gcc-interface/trans.c (gigi): Adjust calls to record_builtin_type.
2706
80ec8b4c
EB
27072011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2708
2709 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer
2710 finalizing types when updating the pointers to the designated type.
2711 <all>: Finalize the deferred types even if we didn't defer processing
2712 of incomplete types in this invocation.
2713
2a9d769a
OH
27142011-04-01 Olivier Hainque <hainque@adacore.com>
2715 Nicolas Setton <setton@adacore.com>
2716 Eric Botcazou <ebotcazou@adacore.com>
2717
2718 * gcc-interface/misc.c (gnat_descriptive_type): New function.
2719 (LANG_HOOKS_DESCRIPTIVE_TYPE): Redefine to gnat_descriptive_type.
2720
2438d7a6
KT
27212011-03-28 Kai Tietz <ktietz@redhat.com>
2722
333d8aff 2723 * gcc-interface/Makefile.in (SO_LIB): Handle multilib build for native
80ec8b4c
EB
2724 Windows targets.
2725 (EH_MECHANISM): Use GCC exception mechanism for native Windows targets.
2726 * system-mingw.ads (System): Change ZCX_By_Default default to True.
333d8aff 2727
80ec8b4c 2728 * raise-gcc.c (PERSONALITY_FUNCTION): Add prototype.
2438d7a6 2729
8ad150f6
TG
27302011-03-28 Tristan Gingold <gingold@adacore.com>
2731
2732 PR ada/44431
80ec8b4c
EB
2733 * gcc-interface/Make-lang.in (ada/b_gnat1.adb): Replace ada/b_gnat1.c.
2734 Use ada output of gnatbind.
8ad150f6
TG
2735 (ada/b_gnatb.adb): Ditto.
2736 (ada/b_gnat1.o, ada/b_gnatb.o): New rules.
2737 (ada.mostlyclean, ada.stage1)
2738 (ada.stage2, ada.stage3, ada.stage4, ada.stageprofile)
2739 (ada.stagefeedback): Adjust.
80ec8b4c 2740 * gcc-interface/Makefile.in (b_gnatl.adb): Replace b_gnatl.c.
8ad150f6
TG
2741 Use ada output of gnatbind.
2742 (b_gnatm.adb): Ditto.
2743 (b_gnatl.o, b_gnatm.o): New rules.
2744
51c7954d
EB
27452011-03-26 Eric Botcazou <ebotcazou@adacore.com>
2746
2747 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL
2748 for the padded type built to support a specified size or alignment.
2749
6ddf9843
EB
27502011-03-26 Eric Botcazou <ebotcazou@adacore.com>
2751
2752 * gcc-interface/gigi.h (finalize_from_with_types): Adjust comment.
2753 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer
2754 unconditionally to the end of the unit when the designated type is
2755 limited_with'ed.
2756 <all>: Rename local variable. Attempt to un-defer types only and do it
2757 for limited_with'ed types as well.
2758 (finalize_from_with_types): Adjust comment. Rename variable and tidy.
2759 * gcc-interface/trans.c (Compilation_Unit_to_gnu): Use GNAT_UNIT
2760 consistently and remove redundant call to finalize_from_with_types.
2761
5daed84a
EB
27622011-03-26 Eric Botcazou <ebotcazou@adacore.com>
2763
2764 * inline.adb (Back_End_Cannot_Inline): Lift restriction on calls to
2765 subprograms without a previous spec declared in the same unit.
2766 * gcc-interface/trans.c (Compilation_Unit_to_gnu): Process inlined
2767 subprograms at the end of the unit instead of at the beginning.
2768 * gcc-interface/utils.c (create_subprog_decl): Check that the entity
2769 isn't public for the special handling of non-inline functions nested
2770 inside inline external functions.
2771
0edf1bb2
JL
27722011-03-25 Jeff Law <law@redhat.com>
2773
5daed84a 2774 * gcc-interface/utils.c (def_fn_type): Add missing va_end.
0edf1bb2 2775
e3c4580e
EB
27762011-03-24 Eric Botcazou <ebotcazou@adacore.com>
2777
2778 * einfo.ads (Size_Depends_On_Discriminant): Adjust description.
2779 * layout.adb (Compute_Size_Depends_On_Discriminant): New procedure
2780 to compute Set_Size_Depends_On_Discriminant.
2781 (Layout_Type): Call it on array types in back-end layout mode.
2782 * sem_util.adb (Requires_Transient_Scope): Return true for array
2783 types only if the size depends on the value of discriminants.
2784 * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Use the RHS
2785 type if the RHS is a call to a function that returns an unconstrained
2786 type with default discriminant.
2787
abbc8c7b
EB
27882011-03-24 Eric Botcazou <ebotcazou@adacore.com>
2789
2790 * gcc-interface/trans.c (gnat_to_gnu): Remove obsolete case of
2791 non-conversion to the nominal result type at the end.
2792
ddb5a105
EB
27932011-03-23 Eric Botcazou <ebotcazou@adacore.com>
2794
2795 * gcc-interface/trans.c (create_temporary): New function taken from...
2796 (create_init_temporary): ...here. Call it.
2797 (call_to_gnu): Create the temporary for the return value early, if any.
2798 Create it for a function with copy-in/copy-out parameters if there is
2799 no target; in other cases of copy-in/copy-out, use another temporary.
2800 Push the new binding level lazily. Add and rename local variables.
2801
0d853156
EB
28022011-03-23 Eric Botcazou <ebotcazou@adacore.com>
2803
2804 * gcc-interface/decl.c (validate_size): Improve comments and tweak
2805 error message.
2806 (set_rm_size): Likewise.
2807
4184ef1b
EB
28082011-03-23 Eric Botcazou <ebotcazou@adacore.com>
2809
2810 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL
2811 for the padded type built in order to support a specified alignment.
2812 Fix incorrect formatting.
2813
bf7eefab
EB
28142011-03-21 Eric Botcazou <ebotcazou@adacore.com>
2815
2816 PR bootstrap/48216
2817 * gcc-interface/decl.c (elaborate_expression_1): Localize GNU_DECL.
2818
ef0feeb2
EB
28192011-03-21 Eric Botcazou <ebotcazou@adacore.com>
2820
2821 * gcc-interface/decl.c (components_to_record): Add REORDER parameter,
2822 rename DEBUG_INFO_P into DEBUG_INFO and move P_GNU_REP_LIST parameter
2823 to the end of the list. Adjust recursive call. Rename local variable.
2824 If REORDER is true, reorder components of the record type.
2825 (gnat_to_gnu_entity): Pass OK_To_Reorder_Components flag as argument to
2826 components_to_record and adjust the parameter list.
2827
646f9414
EB
28282011-03-21 Eric Botcazou <ebotcazou@adacore.com>
2829
2830 * gcc-interface/decl.c (elaborate_expression_1): When optimization is
2831 disabled, use the variable for bounds of loop iteration scheme.
2832
62d784f7
KT
28332011-03-21 Kai Tietz <ktietz@redhat.com>
2834
2835 PR target/12171
0bad0e23 2836 * gcc-interface/utils.c (gnat_internal_attribute_table): Add column.
62d784f7 2837
f230d759
EB
28382011-03-17 Eric Botcazou <ebotcazou@adacore.com>
2839
2840 * gcc-interface/decl.c (elaborate_expression_1): Try harder to find
2841 out whether the expression is read-only. Short-circuit placeholder
2842 case and rename a couple of local variables.
2843
bb1f7929
EB
28442011-03-17 Eric Botcazou <ebotcazou@adacore.com>
2845
2846 * gcc-interface/gigi.h (smaller_form_type_p): Declare.
2847 * gcc-interface/trans.c (smaller_form_type_p): Make global and move...
2848 * gcc-interface/utils.c (smaller_form_type_p): ...to here.
2849 (convert): Deal with conversions from a smaller form type specially.
2850
400a2d24
EB
28512011-02-14 Eric Botcazou <ebotcazou@adacore.com>
2852
2853 * gcc-interface/misc.c (gnat_init_options): Do not concatenate -I and
2854 its argument, except for the special -I- switch.
2855
c26bc3ad
GP
28562011-02-12 Gerald Pfeifer <gerald@pfeifer.com>
2857
0bad0e23
EB
2858 * gnat_ugn.texi (Compiling Different Versions of Ada): Update link to
2859 "Ada Issues".
c26bc3ad 2860
07b8e910
EB
28612011-02-08 Eric Botcazou <ebotcazou@adacore.com>
2862
2863 * gcc-interface/Makefile.in (x86-64 darwin): Handle multilibs.
2864
31a5a547
EB
28652011-02-03 Eric Botcazou <ebotcazou@adacore.com>
2866
2867 * gcc-interface/gigi.h (fill_vms_descriptor): Take GNU_TYPE instead of
2868 GNAT_FORMAL.
2869 * gcc-interface/utils2.c (fill_vms_descriptor): Move from here to...
2870 * gcc-interface/utils.c (fill_vms_descriptor): ...here. Take GNU_TYPE
2871 instead of GNAT_FORMAL. Protect the expression against multiple uses.
2872 Do not generate the check directly, instead instantiate the template
2873 check present in the descriptor.
2874 (make_descriptor_field): Move around.
2875 (build_vms_descriptor32): Build a template check in the POINTER field.
2876 (build_vms_descriptor): Remove useless suffixes.
2877 * gcc-interface/trans.c (call_to_gnu): Adjust fill_vms_descriptor call.
2878
dcf25f59
EB
28792011-01-26 Eric Botcazou <ebotcazou@adacore.com>
2880
2881 PR bootstrap/47467
2882 * targext.c: Include target files if IN_RTS is defined.
2883
0418e131
RG
28842011-01-26 Richard Guenther <rguenther@suse.de>
2885
2886 PR bootstrap/47467
2887 * targext.c: Include config.h.
2888 * gcc-interface/Make-lang.in (ada/targext.o): Add $(CONFIG_H)
2889 dependency.
2890
c6eecbd8
PO
28912011-01-04 Pascal Obry <obry@adacore.com>
2892 Eric Botcazou <ebotcazou@adacore.com>
2893
2894 * gcc-interface/decl.c: Disable Stdcall convention handling for 64-bit.
2895
2d3c7e4f
EB
28962011-01-04 Eric Botcazou <ebotcazou@adacore.com>
2897
2898 * gcc-interface/trans.c (Case_Statement_to_gnu): Put the SLOC of the
2899 end-of-case on the end label and its associated gotos, if any.
2900
0394741f
EB
29012011-01-04 Eric Botcazou <ebotcazou@adacore.com>
2902
2903 * gcc-interface/trans.c (Subprogram_Body_to_gnu): Evaluate the
2904 expressions of the parameter cache within the statement group of
2905 the CICO mechanism.
2906
2a02d090
OH
29072011-01-04 Olivier Hainque <hainque@adacore.com>
2908 Eric Botcazou <ebotcazou@adacore.com>
2909
2910 * gcc-interface/trans.c (BLOCK_SOURCE_END_LOCATION): Provide default.
2911 (set_end_locus_from_node): New function.
2912 (Subprogram_Body_to_gnu): Use it to mark both the inner BIND_EXPR we
2913 make and the function end_locus.
2914 (Compilation_Unit_to_gnu): Call it instead of a straight Sloc_to_locus
2915 for the elaboration subprogram.
2916 (set_gnu_expr_location_from_node) <default case>: Use it to attempt to
2917 set the end_locus of the expression as well.
2918
89f5e978
EB
29192011-01-04 Eric Botcazou <ebotcazou@adacore.com>
2920
2921 PR ada/47131
2922 * gcc-interface/trans.c (Identifier_to_gnu): In SJLJ mode, do not make
2923 variables that are referenced in exception handlers volatile.
2924
2925
ad41bd84 2926\f
797103eb 2927Copyright (C) 2011 Free Software Foundation, Inc.
ad41bd84
JM
2928
2929Copying and distribution of this file, with or without modification,
2930are permitted in any medium without royalty provided the copyright
2931notice and this notice are preserved.