]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ada/ChangeLog
[multiple changes]
[thirdparty/gcc.git] / gcc / ada / ChangeLog
CommitLineData
273adcdf
AC
12011-08-02 Jerome Guitton <guitton@adacore.com>
2
3 * a-except-2005.adb (Raise_From_Signal_Handler): Call
4 Debug_Raise_Exception before propagation starts.
5
62011-08-02 Eric Botcazou <ebotcazou@adacore.com>
7
8 * exp_ch6.adb (Expand_Call): Guard restriction checks with a call
9 to Restriction_Check_Required.
10 * sem_ch3.adb (Analyze_Object_Declaration): Likewise.
11 * sem_res.adb (Resolve_Call): Likewise.
12 * sem_attr.adb (Check_Stream_Attribute): Likewise.
13
142011-08-02 Bob Duff <duff@adacore.com>
15
16 * stylesw.ads: Update comment.
17 * style.adb: Minor: Use Error_Msg_NE instead of Error_Msg_N.
18 * errout.ads: Remove obsolete comment.
19
202011-08-02 Javier Miranda <miranda@adacore.com>
21
22 * einfo.ads, einfo.adb (Is_Safe_To_Reevaluate): new function.
23 (Set_Is_Safe_To_Reevaluate): new procedure.
24 * sem_ch5.adb (Analyze_Assignment): Add one assertion to ensure that no
25 assignment is allowed on safe-to-reevaluate variables.
26 (Analyze_Iteration_Schine.Process_Bounds.One_Bound): Decorate the
27 temporary created to remove side effects in expressions that use
28 the secondary stack as safe-to-reevaluate.
29 * exp_util.adb (Side_Effect_Free): Add missing code to handle well
30 variables that are not true constants.
31
6320f5e1
AC
322011-08-02 Robert Dewar <dewar@adacore.com>
33
34 * sem_ch5.adb, sem_ch7.adb, einfo.ads, sem_util.adb, sem_util.ads,
35 sem_res.adb, sem_ch6.adb: Minor reformatting.
36
372011-08-02 Jerome Guitton <guitton@adacore.com>
38
39 * a-except-2005.adb (Raise_Current_Excep): Remove obsolete dead code.
40
2fe829ae
ES
412011-08-02 Ed Schonberg <schonberg@adacore.com>
42
43 * sem_ch6.adb (New_Overloaded_Entity, Check_Overriding_Indicator): Do
44 not set Overridden_Operation if subprogram is an initialization
45 procedure.
46
e24329cd
YM
472011-08-02 Yannick Moy <moy@adacore.com>
48
49 * par-ch6.adb: Correct obsolete name in comments
50 * restrict.adb, restrict.ads (Check_Formal_Restriction): new function
51 which takes two message arguments (existing function takes one), with
52 second message used for continuation.
53 * sem_ch5.adb (Analyze_Block_Statement): in formal mode, only reject
54 block statements that originate from a source block statement, not
55 generated block statements
56 * sem_ch6.adb (Analyze_Function_Call): rename L into Actuals, for
57 symmetry with procedure case
58 * sem_ch7.adb (Check_One_Tagged_Type_Or_Extension_At_Most): new
59 function to issue an error in formal mode if a package specification
60 contains more than one tagged type or type extension.
61 * sem_res.adb (Resolve_Actuals): in formal mode, check that actual
62 parameters matching formals of tagged types are objects (or ancestor
63 type conversions of objects), not general expressions. Issue an error
64 on view conversions that are not involving ancestor conversion of an
65 extended type.
66 (Resolve_Type_Conversion): in formal mode, issue an error on the
67 operand of an ancestor type conversion which is not an object
68 * sem_util.adb, sem_util.ads (Find_Actual): extend the behavior of the
69 procedure so that it works also for actuals of function calls
70 (Is_Actual_Tagged_Parameter): new function which determines if its
71 argument is an actual parameter of a formal of tagged type in a
72 subprogram call
73 (Is_SPARK_Object_Reference): new function which determines if the tree
74 referenced by its argument represents an object in SPARK
75
176dadf6
AC
762011-08-02 Robert Dewar <dewar@adacore.com>
77
78 * sem_ch3.adb: Minor reformatting
79 Minor comment addition
80 Minor error msg text change
81
822011-08-02 Javier Miranda <miranda@adacore.com>
83
84 * sem_ch5.adb (Analyze_Iteration_Scheme.Uses_Secondary_Stack): New
85 function. Used to be more precise when we generate a variable plus one
86 assignment to remove side effects in the evaluation of the Bound
87 expressions.
88 (Analyze_Iteration_Scheme): Clean attribute analyzed in all the nodes
89 of the bound expression to force its re-analysis and thus expand the
90 associated transient scope (if required). Code cleanup replacing the
91 previous code that declared the constant entity by an invocation to
92 routine Force_Evaluation which centralizes this work in the frontend.
93
d8b962d8
AC
942011-08-02 Robert Dewar <dewar@adacore.com>
95
96 * einfo.adb (Is_Base_Type): Improve efficiency by using a flag table
97 (Base_Type): Now uses improved Is_Base_Type function
98 * einfo.ads (Base_Type): Inline this function
99
1002011-08-02 Robert Dewar <dewar@adacore.com>
101
102 * sem_prag.adb (Analyze_Pragma): Defend against infinite recursion
103 (Analyze_Aspect_Specifications): Fix Sloc values for constructed pragmas
104
1052011-08-02 Arnaud Charlet <charlet@adacore.com>
106
107 * gcc-interface/Make-lang.in: Update dependencies.
108 * gcc-interface/Makefile.in: Use s-inmapop-vxworks.adb for all VxWorks
109 targets.
110
1112011-08-02 Yannick Moy <moy@adacore.com>
112
113 * par-ch3.adb (P_Delta_Constraint): issue an error in formal mode on
114 non-simple expression used in delta constraint
115 (P_Index_Or_Discriminant_Constraint): issue an error in formal mode on
116 index constraint which is not a subtype mark
117 * par.adb: With and use Restrict
118 * sem_ch3.adb (Analyze_Component_Declaration): issue an error in formal
119 mode on component type which is not a subtype mark and default
120 expression on component
121 (Analyze_Subtype_Declaration): issue an error in formal mode on subtype
122 of string which does not have a lower index bound equal to 1
123 (Array_Type_Declaration): issue an error in formal mode on index or
124 component type which is not a subtype mark, and on aliased keyword on
125 component
126 (Derived_Type_Declaration): issue an error in formal mode on interface,
127 limited or abstract type
128 (Record_Type_Declaration): issue an error in formal mode on interface
129 (Record_Type_Definition): issue an error in formal mode on tagged types
130 and type extensions not declared in the specification of a library unit
131 package; on null non-tagged record; on variant part
132
1332011-08-02 Vincent Celier <celier@adacore.com>
134
135 * prj-nmsc.adb (Check_Library_Attributes): Do not report Library_Dir
136 not declared for qualified library project when Library_Name is not
137 declared, but Library_Dir is.
138
1392011-08-02 Robert Dewar <dewar@adacore.com>
140
141 * sem_ch13.adb (Analyze_Aspect_Specification): Fix slocs on generated
142 pragmas (affects aspects [Component_]Default_Value
143 (Check_Aspect_At_Freeze_Point): For Component_Default_Value, use
144 component type for the resolution
145
f96b2d85
AC
1462011-08-02 Eric Botcazou <ebotcazou@adacore.com>
147
148 * einfo.adb (Base_Type): Tune implementation for speed.
149
1502011-08-02 Robert Dewar <dewar@adacore.com>
151
152 * freeze.adb: Minor reformatting.
153
8b3c6430
AC
1542011-08-02 Thomas Quinot <quinot@adacore.com>
155
156 * scos.ads: Update comments.
157
1582011-08-02 Ed Schonberg <schonberg@adacore.com>
159
160 * sem_ch3.adb (Build_Derived_Type): Inherit the convention from the
161 base type, because the parent may be a subtype of a private type whose
162 convention is established in a private part.
163
1642011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
165
166 * exp_ch6.adb (Expand_N_Extended_Return_Statement): Wrap the return
167 statement in a block when the expansion of the return expression has
168 created a finalization chain.
169 * freeze.adb (Freeze_Expression): Alphabetize all choices associated
170 with the parent node.
171 Add N_Extended_Return_Statement to handle the case where a transient
172 object declaration appears in the Return_Object_Declarations list of
173 an extended return statement.
174
1752011-08-02 Matthew Gingell <gingell@adacore.com>
176
177 * adaint.c (__gnat_is_symbolic_link_attr): Supress warning on possibly
178 unused parameter 'name'.
179
1802011-08-02 Ed Schonberg <schonberg@adacore.com>
181
182 * sem_elim.adb (Set_Eliminated): If the overridden operation is an
183 inherited operation, check whether its alias, which is the source
184 operastion that it renames, has been marked eliminated.
185
cae81f17
JM
1862011-08-02 Javier Miranda <miranda@adacore.com>
187
188 * exp_util.adb (Safe_Prefixed_Reference): Do not consider safe an
189 in-mode parameter whose type is an access type since it can be used to
190 modify its designated object. Enforce code that handles as safe an
191 access type that is not access-to-constant but it is the result of a
192 previous removal of side-effects.
193 (Remove_Side_Effects): Minor code reorganization of cases which require
194 no action. Done to incorporate documentation on new cases uncovered
195 working in this ticket: no action needed if this routine was invoked
196 too early and the nodes are not yet decorated.
197 * sem_res.adb (Resolve_Slice): Minor code cleanup replacling two calls
198 to routine Remove_Side_Effects by calls to Force_Evaluation since they
199 were issued with actuals that are implicitly provided by
200 Force_Evaluation.
201
218e6dee
RD
2022011-08-02 Robert Dewar <dewar@adacore.com>
203
204 * sem_ch3.adb, sem_res.adb: Minor reformatting.
205
7a489a2b
AC
2062011-08-02 Yannick Moy <moy@adacore.com>
207
208 * sem_attr.adb (Check_Formal_Restriction_On_Attribute): new procedure
209 to issue an error in formal mode on attribute not supported in this mode
210 (Analyze_Attribute): issue errors on standard attributes not supported
211 in formal mode.
212 * sem_ch3.adb (Modular_Type_Declaration): remove obsolete part of
213 comment, and issue error in formal mode on modulus which is not a power
214 of 2.
215 (Process_Range_Expr_In_Decl): issue error in formal mode on non-static
216 range.
217 * sem_ch8.adb (Find_Type): issue error in formal mode on 'Base in
218 subtype mark.
219 * sem_res.adb (Resolve_Unary_Op): issue error in formal mode on unary
220 operator on modular type (except 'not').
221
2222011-08-02 Robert Dewar <dewar@adacore.com>
223
224 * gnat_rm.texi: Minor reformatting.
225
cb7fa356
AC
2262011-08-02 Arnaud Charlet <charlet@adacore.com>
227
228 * s-osinte-linux.ads: Minor comment update and reformatting.
229 * i-cexten.ads: Make this unit pure, as for its parent.
230 Will allow its usage in more contexts if needed.
231
2322011-08-02 Robert Dewar <dewar@adacore.com>
233
234 * s-utf_32.ads: Minor comment fix.
235
2362011-08-02 Ed Schonberg <schonberg@adacore.com>
237
238 * sem_res.adb (Resolve_Actuals): if the subprogram is a primitive
239 operation of a tagged synchronized type, handle the case where the
240 controlling argument is overloaded.
241
2422011-08-02 Yannick Moy <moy@adacore.com>
243
244 * gnat_rm.texi, opt.ads, sem_prag.adb, snames.ads-tmpl:
245 Replace pragma SPARK_95 with pragma Restrictions (SPARK)
246 * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings): set
247 SPARK mode and formal verification mode on processing SPARK restriction
248 * s-rident.ads (Restriction_Id): add SPARK restriction in those not
249 requiring consistency checking.
250
5cc9353d
RD
2512011-08-02 Robert Dewar <dewar@adacore.com>
252
253 * sem_res.adb: Minor reformatting.
254
e51537ff
RD
2552011-08-02 Robert Dewar <dewar@adacore.com>
256
257 * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
258 a-cforse.ads: Remove unneeded with of Ada.Containers
259 Remove commented out pragma Inline's
260 Move specifications of new subprograms to the actual specs
261
83fa09c5
AC
2622011-08-02 Yannick Moy <moy@adacore.com>
263
264 * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
265 a-cforse.ads: Update comments.
266
2672011-08-02 Ed Schonberg <schonberg@adacore.com>
268
269 * sem_attr.adb: add attribute name when 'Result has the wrong prefix.
270
d11cfaf8
RD
2712011-08-02 Robert Dewar <dewar@adacore.com>
272
273 * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
274 a-cforse.ads, a-cofove.ads: Minor reformatting.
275
300b98bb
AC
2762011-08-02 Claire Dross <dross@adacore.com>
277
278 * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads,
279 a-cofove.ads: Add comments.
280
2812011-08-02 Yannick Moy <moy@adacore.com>
282
283 * gnat_rm.texi: Document formal containers.
284
2852011-08-02 Emmanuel Briot <briot@adacore.com>
286
287 * g-comlin.adb (Goto_Section, Getopt): fix handling of "*" when there
288 are empty sections.
289
19fb051c
AC
2902011-08-02 Robert Dewar <dewar@adacore.com>
291
292 * mlib-prj.adb, restrict.ads, sem_aggr.adb, sem_ch12.adb: Minor
293 reformatting.
294
2952011-08-02 Robert Dewar <dewar@adacore.com>
296
297 * aspects.adb: New aspects Default_Value and Default_Component_Value
298 New format of Aspect_Names table checks for omitted entries
299 * aspects.ads: Remove mention of Aspect_Cancel and add documentation on
300 handling of boolean aspects for derived types.
301 New aspects Default_Value and Default_Component_Value
302 New format of Aspect_Names table checks for omitted entries
303 * einfo.ads, einfo.adb (Has_Default_Component_Value): New flag
304 (Has_Default_Value): New flag
305 (Has_Default_Component_Value): New flag
306 (Has_Default_Value): New flag
307 * par-ch13.adb (P_Aspect_Specifications): New format of Aspect_Names
308 table.
309 * par-prag.adb: New pragmas Default_Value and Default_Component_Value
310 * sem_ch13.adb (Analyze_Aspect_Specifications): New aspects
311 Default_Value and Default_Component_Value
312 * sem_prag.adb: New pragmas Default_Value and Default_Component_Value
313 New aspects Default_Value and Default_Component_Value
314 * snames.ads-tmpl: New pragmas Default_Value and Default_Component_Value
315 * sprint.adb: Print N_Aspect_Specification node when called from gdb
316
3172011-08-02 Vincent Celier <celier@adacore.com>
318
319 * prj-nmsc.adb (Check_Library_Attributes): For virtual library project,
320 inherit library kind.
321
3222011-08-02 Ed Schonberg <schonberg@adacore.com>
323
324 * sem_res.adb: Add guards in calls to Matching_Static_Array_Bounds.
325 Minor reformatting.
326
3272011-08-02 Robert Dewar <dewar@adacore.com>
328
329 * i-cstrin.ads: Updates to make Interfaces.C.Strings match RM
330
5f7747af
AC
3312011-08-02 Yannick Moy <moy@adacore.com>
332
333 * sem_aggr.adb (Resolve_Aggregate): Fix thinko.
334
3352011-08-02 Robert Dewar <dewar@adacore.com>
336
337 * impunit.adb: Add comment.
338
a5fe697b
AC
3392011-08-02 Yannick Moy <moy@adacore.com>
340
341 * sem_aggr.adb (Check_Qualified_Aggregate): new procedure which checks
342 qualification of aggregates in formal mode
343 (Is_Top_Level_Aggregate): returns True for an aggregate not contained in
344 another aggregate
345 (Resolve_Aggregate): complete the test that an aggregate is adequately
346 qualified in formal mode
347
3482011-08-02 Pascal Obry <obry@adacore.com>
349
350 * make.adb, bindgen.adb, gnatbind.adb: Minor reformatting.
351 * mlib-prj.adb: Supress warning when compiling binder generated file.
352 (Build_Library): Supress all warnings when compiling the binder
353 generated file.
354
bd65a2d7 3552011-08-02 Yannick Moy <moy@adacore.com>
d4487611 356
bd65a2d7
AC
357 * errout.adb, errout.ads (Check_Formal_Restriction): move procedure
358 from here...
359 * restrict.adb, restrict.ads (Check_Formal_Restriction): ...to here
360 * sem_aggr.adb, sem_ch5.adb, sem_util.adb:
361 Add with/use clauses to make Check_Formal_Restriction visible
362
3632011-08-02 Ed Schonberg <schonberg@adacore.com>
364
365 * sem_ch12.adb (Check_Generic_Actuals): handle properly actual
366 in-parameters when type of the generic formal is private in the generic
367 spec and non-private in the body.
368
3692011-08-02 Claire Dross <dross@adacore.com>
370
371 * a-cfdlli.adb, a-cfdlli.ads, a-cfhase.adb, a-cfhase.ads, a-cfhama.adb,
372 a-cfhama.ads, a-cforse.adb, a-cforse.ads, a-cforma.adb, a-cforma.ads,
373 a-cofove.adb, a-cofove.ads: New files implementing formal containers.
374 * impunit.adb, Makefile.rtl: Take new files into account.
d4487611
AC
375
3762011-08-02 Robert Dewar <dewar@adacore.com>
377
378 * sem_aggr.adb, sem_ch3.adb, sem_ch5.adb, make.adb, sem_res.adb,
379 sem_attr.adb, sem_ch6.adb, sem_ch8.adb: Minor reformatting.
380
bd434b3f
YM
3812011-08-02 Yannick Moy <moy@adacore.com>
382
383 * sem_aggr.adb (Resolve_Aggregate): disable incorrectly placed check in
384 formal mode
385 * sem_util.adb (Matching_Static_Array_Bounds): proper detection of
386 matching static array bounds, taking into account the special case of
387 string literals
388 * sem_ch3.adb: Typo in comment.
389
fe5d3068
YM
3902011-08-02 Yannick Moy <moy@adacore.com>
391
392 * errout.adb, errout.ads (Check_Formal_Restriction): new procedure
393 which issues an error in formal mode if its argument node is originally
394 from source
395 * sem_ch3.adb (Analyze_Full_Type_Declaration): move test that a type
396 has a discriminant specification so that it does not include the case
397 of derived types
398 (Derived_Type_Declaration): move here the test that a derived type has a
399 discriminant specification
400 * sem_aggr.adb (Resolve_Record_Aggregate): test the presence of the
401 first element of a component association before accessing its choices
402 (presence of component association is not enough)
403 * exp_ch6.adb (Expand_N_Subprogram_Declaration): test if a subprogram
404 declaration is a library item before accessing the next element in a
405 list, as library items are not member of lists
406 * sem_attr.adb, sem_ch11.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
407 sem_ch8.adb, sem_ch9.adb, sem_res.adb, sem_util.adb: use
408 Check_Formal_Restriction whenever possible.
409
b60a3f26
AC
4102011-08-02 Ed Schonberg <schonberg@adacore.com>
411
412 * sem_ch3.adb (Find_Type_Of_Object): In ASIS mode, create an itype
413 reference when needed.
414
4152011-08-02 Bob Duff <duff@adacore.com>
416
417 * gnat_ugn.texi: Fix typo.
418
4192011-08-02 Vincent Celier <celier@adacore.com>
420
421 * make.adb (Gnatmake): Use MLib.Tgt.Archive_Ext as the extension of
422 archive file name. Do not use the full path name of archives for Open
423 VMS.
424
eaba57fb
RD
4252011-08-02 Robert Dewar <dewar@adacore.com>
426
427 * sem_ch12.adb, sem_ch11.adb: New calling sequence for
428 Analyze_Aspect_Specifications
429 * sem_ch13.adb
430 (Analyze_Aspect_Specifications): New handling for boolean aspects
431 * sem_ch13.ads (Analyze_Aspect_Specifications): New calling sequence
432 * sem_ch3.adb, sem_ch6.adb, sem_ch7.adb, sem_ch9.adb: New calling
433 sequence for Analyze_Aspect_Specifications
434 * sem_prag.adb (Analyze_Pragma): Remove use of Aspect_Cancel entirely
435 * sinfo.ads, sinfo.adb (Aspect_Cancel): Remove, no longer used
436
4372011-08-02 Robert Dewar <dewar@adacore.com>
438
439 * freeze.adb (Freeze_Entity): Remove handling of delayed boolean
440 aspects, since these no longer exist.
441
4422011-08-02 Robert Dewar <dewar@adacore.com>
443
444 * par-ch13.adb (Aspect_Specifications_Present): Always return false on
445 semicolon, do not try to see if there are aspects following it.
446 * par-ch3.adb (P_Declarative_Items): Better message for unexpected
447 aspect spec.
448
8830d1d2
AC
4492011-08-02 Robert Dewar <dewar@adacore.com>
450
451 * sem_ch8.adb, aspects.ads: Minor reformatting.
452
4532011-08-02 Eric Botcazou <ebotcazou@adacore.com>
454
455 * sem_ch13.ads (Analyze_Aspect_Specification): Add pragma Inline.
456 * sem_ch13.adb (Analyze_Non_Null_Aspect_Specifications): New procedure
457 extracted from...
458 (Analyze_Aspect_Specifications): ...here. Call above procedure.
459
7ff2d234
AC
4602011-08-02 Yannick Moy <moy@adacore.com>
461
462 * exp_ch6.adb (Expand_N_Subprogram_Declaration): issue error in formal
463 mode on subprogram declaration outside of package specification, unless
464 it is followed by a pragma Import
465 * sem_ch3.adb (Access_Definition, Access_Subprogram_Declaration,
466 Access_Type_Declaration): issue error in formal mode on access type
467 (Analyze_Incomplete_Type_Decl): issue error in formal mode on
468 incomplete type
469 (Analyze_Object_Declaration): issue error in formal mode on object
470 declaration which does not respect SPARK restrictions
471 (Analyze_Subtype_Declaration): issue error in formal mode on subtype
472 declaration which does not respect SPARK restrictions
473 (Constrain_Decimal, Constrain_Float, Constrain_Ordinary_Fixed): issue
474 error in formal mode on digits or delta constraint
475 (Decimal_Fixed_Point_Type_Declaration): issue error in formal mode on
476 decimal fixed point type
477 (Derived_Type_Declaration): issue error in formal mode on derived type
478 other than type extensions of tagged record types
479 * sem_ch6.adb (Process_Formals): remove check in formal mode, redundant
480 with check on access definition
481 * sem_ch9.adb (Analyze_Protected_Definition): issue error in formal
482 mode on protected definition.
483 (Analyze_Task_Definition): issue error in formal mode on task definition
484
4852011-08-02 Robert Dewar <dewar@adacore.com>
486
487 * make.adb, sem_ch8.adb, s-inmaop-vxworks.adb: Minor reformatting.
488
806f6d37
AC
4892011-08-02 Javier Miranda <miranda@adacore.com>
490
491 * sem_ch6.adb (Can_Override_Operator): New function.
492 (Verify_Overriding_Indicator): Add missing code to check overriding
493 indicator in operators. Fixes regression.
494 (Check_Overriding_Indicator): Minor reformating after replacing the
495 code that evaluates if the subprogram can override an operator by
496 invocations to the above new function.
497 * einfo.adb
498 (Write_Field26_Name): Add missing code to ensure that, following
499 the documentation in einfo.ads, this field is not shown as attribute
500 "Static_Initialization" on non-dispatching functions.
501
5022011-08-02 Jose Ruiz <ruiz@adacore.com>
503
504 * sem_res.adb (Resolve_Call): A call to
505 Ada.Real_Time.Timing_Events.Set_Handler violates restriction
506 No_Relative_Delay (AI-0211) only when it sets a relative timing event,
507 i.e., when the second parameter is of type Time_Span.
508
5092011-08-02 Vincent Celier <celier@adacore.com>
510
511 * make.adb (Gnatmake): use <library dir>/lib<library name>.a to link
512 with an archive instead of -L<library dir> -l<library name>.
513
5142011-08-02 Ed Schonberg <schonberg@adacore.com>
515
516 * sem_ch8.adb (Analyze_Use_Type): If the clause is being re-analyzed,
517 mark the base types In_Use in addition to making the operations
518 use_visible.
519
5202011-08-02 Ed Falis <falis@adacore.com>
521
522 * init.c: add and setup __gnat_signal_mask for the exception signals
523 * s-inmaop-vxworks.adb: new file.
524 * s-intman-vxworks.adb: remove unnecessary initializations and
525 simplify remaining
526 * s-intman-vxworks.ads: remove unnecessary variable
527 * s-taprop-vxworks.adb: simplify signal initialization
528
780d052e
RD
5292011-08-02 Robert Dewar <dewar@adacore.com>
530
531 * sem_ch8.adb: Minor code reorganization, comment updates.
532
5332011-08-02 Robert Dewar <dewar@adacore.com>
534
535 * sem_res.adb (Matching_Static_Array_Bounds): Moved to Sem_Util
536 * sem_util.ads, sem_util.adb (Matching_Static_Array_Bounds): Moved
537 here from Sem_Res.
538 (Matching_Static_Array_Bounds): Use Is_Ok_Static_Expression
539 (Matching_Static_Array_Bounds): Moved here from Sem_Res
540
29efbb8c
ES
5412011-08-02 Ed Schonberg <schonberg@adacore.com>
542
543 * atree.h, atree.ads, atree.adb: New subprograms to manipulate Elist5.
544 * par_ch8.adb (P_Use_Type): initialize Used_Operations for node.
545 * sinfo.ads, sinfo.adb (Used_Operations): new attribute of
546 use_type_clauses, to handle more efficiently use_type and use_all_type
547 constructs.
548 * sem_ch8.adb: Rewrite Use_One_Type and End_Use_Type to handle the
549 Ada2012 Use_All_Type clause.
550 (Use_Class_Wide_Operations): new procedure.
551
b0186f71
AC
5522011-08-02 Robert Dewar <dewar@adacore.com>
553
554 * exp_util.adb, par-ch10.adb, par-ch6.adb, sem.adb, sem_ch6.adb,
555 sem_ch6.ads, sinfo.adb, sinfo.ads, sprint.adb: Change parameterized
556 expression to expression function.
557
5582011-08-02 Ed Schonberg <schonberg@adacore.com>
559
560 * sem_ch4.adb: transform simple Ada2012 membership into equality only
561 if types are compatible.
562
5632011-08-02 Yannick Moy <moy@adacore.com>
564
565 * sem_res.adb (Matching_Static_Array_Bounds): new function which
566 returns True if its argument array types have same dimension and same
567 static bounds at each index.
568 (Resolve_Actuals): issue an error in formal mode on actuals passed as
569 OUT or IN OUT paramaters which are not view conversions in SPARK.
570 (Resolve_Arithmetic_Op): issue an error in formal mode on
571 multiplication or division with operands of fixed point types which are
572 not qualified or explicitly converted.
573 (Resolve_Comparison_Op): issue an error in formal mode on comparisons of
574 Boolean or array type (except String) operands.
575 (Resolve_Equality_Op): issue an error in formal mode on equality
576 operators for array types other than String with non-matching static
577 bounds.
578 (Resolve_Logical_Op): issue an error in formal mode on logical operators
579 for array types with non-matching static bounds. Factorize the code in
580 Matching_Static_Array_Bounds.
581 (Resolve_Qualified_Expression): issue an error in formal mode on
582 qualified expressions for array types with non-matching static bounds.
583 (Resolve_Type_Conversion): issue an error in formal mode on type
584 conversion for array types with non-matching static bounds
585
767bb4e8
AC
5862011-08-02 Robert Dewar <dewar@adacore.com>
587
588 * par-ch10.adb: Minor code reorganization (use Nkind_In).
589
5902011-08-02 Ed Schonberg <schonberg@adacore.com>
591
592 * par-ch9.adb: save location of entry for proper error message.
593
4ac2477e
JM
5942011-08-02 Javier Miranda <miranda@adacore.com>
595
596 * sem_type.ads, sem_type.adb (Is_Ancestor): Addition of a new formal
597 (Use_Full_View) which permits this routine to climb through the
598 ancestors using the full-view of private parents.
599 * sem_util.adb (Collect_Interfaces_Info, Implements_Interface): Set
600 Use_Full_View to true in calls to Is_Ancestor.
601 * sem_disp.adb (Override_Dispatching_Operation): Set Use_Full_View to
602 true in call to Is_Ancestor.
603 * exp_ch3.adb (Build_Offset_To_Top_Functions, Initialize_Tag): Set
604 Use_Full_View to true in call to Is_Ancestor.
605 * exp_ch7.adb (Controller_Component): Set Use_Full_View to true in
606 call to Is_Ancestor.
607 * exp_ch4.adb (Expand_N_Type_Conversion, Tagged_Membership): Set
608 Use_Full_View to true in calls to Is_Ancestor.
609 * exp_disp.adb (Expand_Interface_Actuals, Make_Secondary_DT, Make_DT,
610 Make_Select_Specific_Data_Table, Register_Primitive,
611 Set_All_DT_Position): Set Use_Full_View to true in calls to Is_Ancestor.
612 * exp_intr.adb (Expand_Dispatching_Constructor_Call): Set Use_Full_View
613 to true in call to Is_Ancestor.
614 * exp_util.adb (Find_Interface_ADT, Find_Interface_Tag): Set
615 Use_Full_View to true in calls to Is_Ancestor.
616 * exp_cg.adb
617 (Write_Call_Info): Set Use_Full_View to true in call to Is_Ancestor.
618 (Write_Type_Info): Set Use_Full_View to true in call to Is_Ancestor.
619
9f90d123
AC
6202011-08-02 Robert Dewar <dewar@adacore.com>
621
622 * gnat_rm.texi: Minor reformatting.
623 * sem_prag.adb: Minor reformatting.
624
6252011-08-02 Tristan Gingold <gingold@adacore.com>
626
627 * vms_data.ads: Add VMS qualifier for -gnateP.
628
6292011-08-02 Robert Dewar <dewar@adacore.com>
630
631 * par-ch13.adb (P_Aspect_Specification): New meaning of Decl = Empty
632 * par-ch7.adb (P_Package): Proper placement of aspects for package
633 decl/instantiation.
634 * par-endh.adb (Check_End): Ad Is_Sloc parameter
635 (End_Statements): Add Is_Sloc parameterr
636 * par.adb (P_Aspect_Specification): New meaning of Decl = Empty
637 (Check_End): Ad Is_Sloc parameter
638 (End_Statements): Add Is_Sloc parameterr
639
6402011-08-02 Vincent Celier <celier@adacore.com>
641
642 * ug_words: Add VMS qualifier equivalent to -gnateP:
643 /SYMBOL_PREPROCESSING.
644
6452011-08-02 Jose Ruiz <ruiz@adacore.com>
646
647 * gnat-style.texi: For hexadecimal numeric literals the typical
648 grouping of digits is 4 to represent 2 bytes.
649 A procedure spec which is split into several lines is indented two
650 characters.
651
6522011-08-02 Yannick Moy <moy@adacore.com>
653
654 * exp_aggr.adb (Is_Others_Aggregate): move function to other unit.
655 * sem_aggr.adb, sem_aggr.ads (Is_Others_Aggregate): move function here
656 (Resolve_Aggregate): issue errors in formal modes when aggregate is not
657 properly qualified
658 (Resolve_Array_Aggregate): issue errors in formal modes on non-static
659 choice in array aggregate
660 (Resolve_Extension_Aggregate): issue errors in formal modes on subtype
661 mark as ancestor
662 (Resolve_Record_Aggregate): issue errors in formal modes on mixed
663 positional and named aggregate for record, or others in record
664 aggregate, or multiple choice in record aggregate
665 * sem_res.adb (Resolve_Logical_Op): issue errors in formal mode when
666 array operands to logical operations AND, OR and XOR do not have the
667 same static lower and higher bounds
668 * sem_ch5.adb, sinfo.ads: Correct typos in comments
669
2933b16c
RD
6702011-08-01 Robert Dewar <dewar@adacore.com>
671
672 * sem_util.ads, sem_util.adb, sem_ch6.adb (Last_Source_Statement):
673 Replaces Last_Source_Node_In_Sequence.
674 * err_vars.ads (Error_Msg_Lang): 16 is OK, don't need 4K
675 * errout.adb (Set_Error_Msg_Lang): Takes arg with no parens, but stores
676 parens and blank in string (this was inconsistently implemented).
677 * errout.ads
678 (Set_Error_Msg_Lang): Takes arg with no parens, but stores parens and
679 blank in string (this was inconsistently implemented).
680 * gnat1drv.adb
681 (Set_Global_Switches): Set formal mode switches appropriately
682 * opt.ads, opt.adb: Formal mode is now global switches, more consistent
683 * par-prag.adb
684 (Analyze_Pragma, case SPARK_95): Set opt switches appropriately and
685 call Set_Error_Msg_Lang to set "spark" as language name.
686 * par.adb: Remove unnecessary call to set formal language for errout
687 * sem_prag.adb (P_Pragma, case SPARK_95): Set opt switches
688 appropriately and call Set_Error_Msg_Lang to set "spark" as language
689 name.
690 * sem_ch4.adb (Analyze_Concatenation_Operand): remove procedure and
691 calls to it, moved after resolution so that types are known
692 * sem_res.adb (Resolve_Op_Concat): issue an error in formal mode if
693 result of concatenation is not of type String
694 (Resolve_Op_Concat_Arg): issue an error in formal mode if an operand of
695 concatenation is not properly restricted
696 * gnat_rm.texi: Add doc on pragma Spark_95.
697 * gcc-interface/Makefile.in: Remove obsolete target pairs for
698 Interfaces.C.* on VMS. Remove s-parame-vms-restrict.ads.
699 * gcc-interface/Make-lang.in: Update dependencies.
700
05dbd302
AC
7012011-08-01 Javier Miranda <miranda@adacore.com>
702
703 * sem_disp.adb (Override_Dispatching_Operation): Enforce strictness of
704 condition that detects if the overridden operation must replace an
705 existing entity.
706
7072011-08-01 Javier Miranda <miranda@adacore.com>
708
709 * exp_ch4.adb (Expand_N_Case_Expression): Propagate to the expanded
710 code declarations inserted by Insert_Actions in each alternative of the
711 N_Case_Expression node.
712
7132011-08-01 Robert Dewar <dewar@adacore.com>
714
715 * sem_ch6.adb: Minor code reorganization.
716 * sem_util.adb: Minor reformatting.
717
af9e051f
PO
7182011-08-01 Pascal Obry <obry@adacore.com>
719
720 * prj-env.adb: Remove <prefix>/lib/gpr/<target> project search path.
721 * gnat_ugn.texi: Add documentation for VERSIONINFO Windows resource.
722
1d801f21
AC
7232011-08-01 Yannick Moy <moy@adacore.com>
724
725 * par-ch4.adb (P_Name): issue a syntax error in SPARK mode on character
726 literal or operator symbol which is prefixed
727 * sem_attr.adb (Analyze_Access_Attribute): issue an error in formal
728 mode on access attributes.
729 * sem_ch4.adb (Analyze_Concatenation_Operand): new procedure to check
730 that concatenation operands are properly restricted in formal mode
731 (Analyze_Concatenation, Analyze_Concatenation_Rest): call new procedure
732 Analyze_Concatenation_Operand. Issue an error in formal mode if the
733 result of the concatenation has a type different from String.
734 (Analyze_Conditional_Expression, Analyze_Explicit_Dereference,
735 Analyze_Quantified_Expression, Analyze_Slice,
736 Analyze_Null): issue an error in formal mode on unsupported constructs
737 * sem_ch5.adb
738 (Analyze_Block_Statement): only issue error on source block statement
739 * sem_util.ads, sem_util.adb (Last_Source_Node_In_Sequence): new
740 function which returns the last node in a list of nodes for which
741 Comes_From_Source returns True, if any
742 * sem_ch6.adb (Check_Missing_Return): minor refactoring to use
743 Last_Source_Node_In_Sequence
744 * sem_ch8.adb (Analyze_Exception_Renaming, Analyze_Generic_Renaming,
745 Analyze_Object_Renaming, Analyze_Use_Package): issue an error in formal
746 mode on unsupported constructs
747 * sem_ch9.adb Do not return after issuing error in formal mode, as the
748 rest of the actions may be needed later on since the error is marked as
749 not serious.
750 * sinfo.ads: Typos in comments.
751
7522011-08-01 Pascal Obry <obry@adacore.com>
753
754 * projects.texi: Minor editing.
755
53beff22
YM
7562011-08-01 Yannick Moy <moy@adacore.com>
757
758 * err_vars.ads (Error_Msg_Lang, Error_Msg_Langlen): new variables for
759 insertion character ~~
760 * errout.ads, errout.adb (Formal_Error_Msg_...): remove procedures
761 (Set_Error_Msg_Lang): new procedure which fixes the language for use
762 with insertion character ~~
763 (Set_Msg_Text): treat insertion character ~~
764 * par-ch4.adb, par-ch5.adb, par-endh.adb, sem_attr.adb, sem_ch11.adb,
765 sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_util.adb: Replace calls to
766 Formal_Error_Msg_... procedures by equivalent Error_Msg_...
767 procedures. Favor calls to Error_Msg_F(E) over Error_Msg_N(E). Make
768 errors related to the formal language restriction not serious
769 (insertion character |).
770 * par.adb (Par): set formal language for error messages if needed
771 * sem_ch6.adb (Check_Missing_Return): take into account possible
772 generated statements at the end of the function
773 * snames.ads-tmpl (Name_SPARK_95, Pragma_SPARK_95): new variable and
774 enumeration value to define a new pragma SPARK_95
775 * opt.ads, opt.adb (SPARK_Version_Type, SPARK_Version_Default,
776 SPARK_Version): new type and variables to store the SPARK version
777 (none by default).
778 (SPARK_Mode): return True when SPARK_Version is set
779 * par-prag.adb: Correct indentation
780 (Prag): take Pragma_SPARK_95 into account
781 * sem_prag.adb (Set_Mechanism_Value, Sig_Flags): take Pragma_SPARK_95
782 into account.
783
8d606a78
RD
7842011-08-01 Robert Dewar <dewar@adacore.com>
785
786 * sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, prj-part.adb, par-ch4.adb,
787 sem_util.adb, sem_ch4.adb, sem_ch6.adb, sem_ch6.ads, sem_ch8.adb,
788 sem_ch8.ads, sem_ch13.ads, par-ch5.adb, prj-env.ads: Minor reformatting
789
1982d5a8
PO
7902011-08-01 Pascal Obry <obry@adacore.com>
791
792 * prj-part.ads, prj-part.adb (Parse): Add Target_Name parameter. Pass
793 Target_Name to Get_Path call.
794 (Parse_Single_Project): Likewise.
795 (Post_Parse_Context_Clause): Likewise.
796 * prj-env.ads, prj-env.adb (Find_Project): Add Target_Name parameter.
797 Call Initialise_Project_Path with the proper Target_Name.
798 (Initialize_Project_Path): Add <gnat_root>/<target_name>/lib/gnat
799 search path.
800 (Get_Path): Add Target_Name parameter. Call Initialise_Project_Path
801 with the proper Target_Name.
802 * prj-conf.adb (Get_Or_Create_Configuration_File): Pass Target_Name to
803 Part.Parse routine.
804 (Parse_Project_And_Apply_Config): Likewise.
805 * prj-makr.adb (Initialize): Pass empty Target_Name to Parse routine.
806 This is fine as this part of the code is supporting only native
807 compilation.
808 * prj-pars.adb (Parse): Pass empty Target_Name to Parse routine. This
809 is fine as this part of the code is supporting only native compilation.
810
0d53d36b
AC
8112011-08-01 Yannick Moy <moy@adacore.com>
812
813 * sem_util.adb (Enter_Name): issue error in formal mode on declaration
814 of homonym, unless the homonym is one of the cases allowed in SPARK
815 * par-ch5.adb (Parse_Decls_Begin_End): issue error in SPARK mode for
816 package declaration occurring after a body.
817
8182011-08-01 Robert Dewar <dewar@adacore.com>
819
820 * checks.adb, exp_ch4.adb: Minor reformatting.
821
8222011-08-01 Javier Miranda <miranda@adacore.com>
823
824 * einfo.ads (Access_Disp_Table): Fix documentation.
825 (Dispatch_Table_Wrappers): Fix documentation.
826
8272011-08-01 Pascal Obry <obry@adacore.com>
828
829 * prj-env.adb, prj-env.ads: Minor reformatting.
830
8ed68165
AC
8312011-08-01 Yannick Moy <moy@adacore.com>
832
833 * sem_util.ads, sem_util.adb, par.adb, par_util.adb
834 (Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move
835 procedures out of these packages.
836 * errout.ads, errout.adb
837 (Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move
838 procedures in of this package
839 (Formal_Error_Msg_NE): new procedure for wrapper on Error_Msg_NE
840 * par-ch5.adb (Parse_Decls_Begin_End): issue syntax error in SPARK mode
841 on misplaced later vs initial declarations, like in Ada 83
842 * sem_attr.adb (Processing for Analyze_Attribute): issue error in
843 formal mode on attribute of private type whose full type declaration
844 is not visible
845 * sem_ch3.adb (Analyze_Declarations): issue error in formal mode on a
846 package declaration inside a package specification
847 (Analyze_Full_Type_Declaration): issue error in formal mode on
848 controlled type or discriminant type
849 * sem_ch6.adb (Analyze_Subprogram_Specification): only issue error on
850 user-defined operator means that it should come from the source
851 (New_Overloaded_Entity): issue error in formal mode on overloaded
852 entity.
853 * sem_ch6.ads, sem_ch13.ads: typos in comments.
854
8552011-08-01 Thomas Quinot <quinot@adacore.com>
856
857 * atree.adb: Minor reformatting.
858 * checks.adb: Minor reformatting.
859
4230bdb7
AC
8602011-08-01 Vincent Celier <celier@adacore.com>
861
862 * s-parame-vms-ia64.ads: Fix typo in comment
863 Minor reformatting
864 * s-parame-vms-restrict.ads: Removed, unused.
865
8662011-08-01 Javier Miranda <miranda@adacore.com>
867
868 * exp_ch3.adb
869 (Is_Variable_Size_Array): Remove local subprogram Is_Constant_Bound.
870 * sem_ch3.adb
871 (Constrain_Index): Remove side effects in the evaluation of the bounds.
872 * sem_ch3.ads, sem_ch3.adb
873 (Is_Constant_Bound): New extended version of the subprogram that was
874 previously located inside function Exp_Ch3.Is_Variable_Size_Array.
875 Moved here since it is shared by routines of sem_ch3 and exp_ch3.
876 * sem_aux.ads (Constant_Value): Fix typo in comment.
877 * checks.adb (Generate_Index_Checks): New implementation which, for
878 array objects with constant bounds, generates the runtime check
879 referencing the bounds of the array type. For other cases this routine
880 provides its previous behavior obtaining such values from the array
881 object.
882 * sem_res.adb (Set_Slice_Subtype): Link a copied range subtree with its
883 parent type.
884 * atree.adb (New_Copy): Reset flag Is_Overloaded in the new copy since
885 we cannot have semantic interpretations of the new node.
886
2010d078
AC
8872011-08-01 Ed Schonberg <schonberg@adacore.com>
888
889 * sem_ch6.adb (Fully_Conformant_Expressions): handle quantified
890 expressions.
891
8922011-08-01 Arnaud Charlet <charlet@adacore.com>
893
894 * sem_ch8.adb: Minor code editing.
895 * s-vxwext.adb: Remove trailing space.
896 * freeze.adb, freeze.ads, errout.ads, erroutc.adb: Fix GPLv3 header for
897 consistency with other files.
898
8992011-08-01 Thomas Quinot <quinot@adacore.com>
900
901 * s-auxdec.ads, s-auxdec-vms_64.ads: Minor reformatting.
902
9032011-08-01 Ed Schonberg <schonberg@adacore.com>
904
905 * par-ch10.adb: reject parameterized expressions as compilation unit.
906 * sem_ch4.adb: handle properly conditional expression with overloaded
907 then_clause and no else_clause.
908
9092011-08-01 Tristan Gingold <gingold@adacore.com>
910
911 * s-parame-vms-alpha.ads, s-parame-vms-ia64.ads: Redeclare C_Address
912 like done by System.Aux_DEC.
913 * env.c (__gnat_setenv) [VMS]: Put logicals into LNM$PROCESS table.
914
daec8eeb
YM
9152011-08-01 Yannick Moy <moy@adacore.com>
916
917 * par-endh.adb (Check_End): issue a syntax error in SPARK mode for
918 missing label at end of declaration (subprogram or package)
919 * par-ch4.adb (P_Name): issue a syntax error in SPARK mode for mixing
920 of positional and named parameter association
921 * par.adb, par-util.adb (Formal_Error_Msg_SP): new wrapper on
922 Error_Msg_SP which adds a prefix to the error message giving the name
923 of the formal language analyzed
924 * sem_ch6.adb (Analyze_Return_Type): issue an error in formal mode for
925 access result type in subprogram, unconstrained array as result type,.
926 (Analyze_Subprogram_Declaration): issue an error in formal mode for null
927 procedure
928 * sem_ch8.adb: Code clean up.
929
38171f43
AC
9302011-08-01 Javier Miranda <miranda@adacore.com>
931
932 * sem_ch7.adb (Uninstall_Declarations): Remove useless code.
933 * einfo.ads (Access_Disp_Table): Fix documentation.
934 (Dispatch_Table_Wrappers): Fix documentation.
935 * einfo.adb (Access_Disp_Table, Dispatch_Table_Wrappers,
936 Set_Access_Disp_Table, Set_Dispatch_Table_Wrappers): Fix the assertions
937 to enforce the documentation of this attribute.
938 (Set_Is_Interface): Cleanup the assertion.
939 * exp_ch4.adb (Expand_Allocator_Expression, Tagged_Membership): Locate
940 the Underlying_Type entity before reading attribute Access_Disp_Table.
941 * exp_disp.adb (Expand_Dispatching_Call, Expand_Interface_Conversion):
942 Locate the Underlying_Type before reading attribute Access_Disp_Table.
943 * exp_aggr.adb (Build_Array_Aggr_Code, Build_Record_Aggr_Code): Locate
944 the Underlying_Type entity before reading attribute Access_Disp_Table.
945 * exp_ch3.adb (Build_Record_Init_Proc, Expand_N_Object_Declaration):
946 Locate the Underlying_Type entity before reading attribute
947 Access_Disp_Table.
948
9492011-08-01 Ed Schonberg <schonberg@adacore.com>
950
951 * s-poosiz.ads: Additional overriding indicators.
952
9532011-08-01 Yannick Moy <moy@adacore.com>
954
955 * sem_ch5.adb (Analyze_Exit_Statement): add return after error in
956 formal mode.
957 (Analyze_Iteration_Scheme): issue error in formal mode when loop
958 parameter specification does not include a subtype mark.
959 * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): issue error in
960 formal mode on abstract subprogram.
961 (Analyze_Subprogram_Specification): issue error in formal mode on
962 user-defined operator.
963 (Process_Formals): issue error in formal mode on access parameter and
964 default expression.
965 * sem_ch9.adb (Analyze_Abort_Statement,
966 Analyze_Accept_Statement, Analyze_Asynchronous_Select,
967 Analyze_Conditional_Entry_Call, Analyze_Delay_Relative,
968 Analyze_Delay_Until, Analyze_Entry_Call_Alternative,
969 Analyze_Requeue, Analyze_Selective_Accept,
970 Analyze_Timed_Entry_Call): issue error in formal mode on such constructs
971 * sem_ch11.adb (Analyze_Raise_Statement, Analyze_Raise_xxx_Error):
972 issue error in formal mode on user-defined raise statement.
973
1f250383
AC
9742011-08-01 Thomas Quinot <quinot@adacore.com>
975
976 * sem_ch6.adb (Enter_Overloaded_Entity): Do not warn about a
977 declaration being hidden when overriding an implicit inherited
978 subprogram.
979 * par-ch10.adb (P_Compilation_Unit): In syntax check only mode
980 (-gnats), do not complain about a source file that contains only a
981 pragma No_Body.
982
9832011-08-01 Ed Schonberg <schonberg@adacore.com>
984
985 * sem_ch5.adb (Analyze_Iterator_Scheme): Do not overwrite type of loop
986 variable if already set.
987
607d0635
AC
9882011-08-01 Arnaud Charlet <charlet@adacore.com>
989
990 * g-socket-dummy.adb, s-osinte-linux.ads, g-socket-dummy.ads,
991 g-debuti.adb, g-tasloc.adb, g-debuti.ads, g-tasloc.ads,
992 s-osinte-hpux.ads, g-sercom.adb, g-soliop-solaris.ads, g-sercom.ads,
993 g-sptain.ads, g-curexc.ads, s-tasloc.adb, s-tasloc.ads, s-tataat.adb,
994 g-ctrl_c.adb, a-reatim.adb, s-tataat.ads, g-dirope.adb, g-ctrl_c.ads,
995 g-dirope.ads, g-boubuf.adb, g-calend.adb, g-boubuf.ads, g-souinf.ads,
996 g-table.adb, g-bytswa-x86.adb, g-wispch.adb, g-io.adb, g-table.ads,
997 g-wispch.ads, g-io.ads, g-memdum.adb, g-memdum.ads, g-busorg.adb,
998 g-busorg.ads, g-regpat.adb, g-sothco-dummy.adb, g-encstr.adb,
999 g-regpat.ads, g-sothco-dummy.ads, s-osinte-aix.ads, g-encstr.ads,
1000 g-sercom-mingw.adb, s-mastop-vms.adb, g-diopit.adb, g-diopit.ads,
1001 s-vxwext.adb, g-dyntab.adb, g-dyntab.ads, g-crc32.adb,
1002 g-sercom-linux.adb, g-crc32.ads, s-regpat.adb, g-flocon.ads,
1003 s-regpat.ads, g-stheme.adb, g-sestin.ads, s-taspri-posix-noaltstack.ads,
1004 g-soliop.ads, s-inmaop-posix.adb, g-locfil.ads, g-enblsp-vms-alpha.adb,
1005 g-socthi-dummy.adb, g-socthi-dummy.ads, gnat.ads, g-moreex.adb,
1006 g-moreex.ads, g-dynhta.adb, g-dynhta.ads, g-deutst.ads, g-htable.adb,
1007 g-cgicoo.adb, g-htable.ads, g-cgicoo.ads, a-interr.adb,
1008 g-socthi-vms.adb, g-socthi-vms.ads, g-hesora.adb, g-bubsor.adb,
1009 g-hesora.ads, g-bubsor.ads, g-md5.adb, g-md5.ads, s-intman-irix.adb,
1010 s-htable.adb, s-osinte-vms.adb, s-htable.ads, s-osinte-vms.ads,
1011 s-taprob.adb, g-bytswa.adb, g-bytswa.ads, s-osinte-solaris-posix.ads,
1012 a-suenco.adb, g-comver.adb, g-comver.ads, g-exctra.adb,
1013 s-osinte-solaris.adb, g-exctra.ads, s-osinte-irix.ads,
1014 s-osinte-solaris.ads, a-caldel-vms.adb, g-socthi-vxworks.adb,
1015 g-expect.adb, g-socthi-vxworks.ads, g-expect.ads, g-comlin.ads,
1016 g-heasor.adb, g-heasor.ads, g-traceb.adb, g-traceb.ads, g-decstr.adb,
1017 g-spipat.adb, g-decstr.ads, g-spipat.ads, s-mastop-tru64.adb,
1018 g-except.ads, g-thread.adb, g-hesorg.adb, g-thread.ads, g-hesorg.ads,
1019 g-expect-vms.adb, a-stuten.ads, g-spchge.adb, g-spchge.ads,
1020 g-u3spch.adb, g-u3spch.ads, g-spitbo.adb, g-spitbo.ads,
1021 s-osinte-dummy.ads, s-osinte-posix.adb, g-pehage.adb, g-pehage.ads,
1022 s-gloloc-mingw.adb, g-sha1.ads, s-traceb-hpux.adb,
1023 g-trasym-unimplemented.adb, g-trasym-unimplemented.ads, g-io_aux.adb,
1024 g-regexp.adb, g-io_aux.ads, g-socthi-mingw.adb, g-regexp.ads,
1025 s-osinte-hpux-dce.adb, g-socthi-mingw.ads, g-cgi.adb,
1026 s-osinte-hpux-dce.ads, g-cgi.ads, g-byorma.adb, g-boumai.ads,
1027 g-byorma.ads, a-caldel.adb, s-regexp.adb, s-regexp.ads,
1028 g-soliop-mingw.ads, g-sptavs.ads, s-osinte-tru64.ads, g-speche.adb,
1029 g-speche.ads, g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads,
1030 s-osinte-darwin.ads, i-vxwork-x86.ads, g-awk.adb, i-vxwork.ads,
1031 g-awk.ads, g-zspche.adb, g-zspche.ads, g-socket.adb, g-sptabo.ads,
1032 g-socket.ads, g-semaph.adb, g-semaph.ads, s-taspri-posix.ads,
1033 g-enblsp-vms-ia64.adb, g-cgideb.adb, g-cgideb.ads, g-sothco.adb,
1034 s-osinte-freebsd.ads, g-sothco.ads, g-catiio.adb, g-casuti.adb,
1035 g-catiio.ads, g-casuti.ads, g-trasym.adb, g-trasym.ads, s-casuti.adb,
1036 g-os_lib.adb, s-traceb-mastop.adb, g-busora.adb, s-interr-dummy.adb,
1037 g-busora.ads, g-enutst.ads, s-os_lib.adb, a-tasatt.adb,
1038 s-osinte-mingw.ads: Update to GPLv3 run-time license.
1039 Use GNAT instead of GNARL.
1040
10412011-08-01 Bob Duff <duff@adacore.com>
1042
1043 * a-cdlili.ads, a-cihama.ads, a-coinve.ads, a-ciorse.ads, a-coorma.ads,
1044 a-cidlli.ads, a-ciormu.ads, a-cihase.ads, a-cohama.ads, a-coorse.ads,
1045 a-ciorma.ads, a-coormu.ads, a-convec.ads, a-cohase.ads: Minor
1046 reformatting.
1047
10482011-08-01 Yannick Moy <moy@adacore.com>
1049
1050 * debug.adb (d.D) reverve flag for the SPARK mode
1051 (d.E) reverve flag for SPARK generation mode
1052 (d.F) reverve flag for Why generation mode
1053 * opt.ads, opt.adb (ALFA_Mode, ALFA_Through_SPARK_Mode,
1054 ALFA_Through_Why_Mode, Formal_Verification_Mode, SPARK_Mode): New
1055 functions which return True when the corresponding modes are set
1056 (Formal_Language): return "spark" or "alfa" when in formal verification
1057 mode.
1058 * sem_util.ads, sem_util.adb (Formal_Error_Msg): new wrapper on
1059 Error_Msg to prefix the error message with a tag giving the formal
1060 language
1061 (Formal_Error_Msg_N): new wrapper on Error_Msg_N to prefix the error
1062 message with a tag giving the formal language
1063 * sem_ch5.adb (Analyze_Block_Statement): issue error in formal mode on
1064 block statement
1065 (Analyze_Case_Statement): issue error in formal mode on case statement
1066 with a single "others" case alternative
1067 (Analyze_Exit_Statement): issue errors in formal mode on exit
1068 statements which do not respect SPARK restrictions
1069 (Analyze_Goto_Statement): issue error in formal mode on goto statement
1070 (Check_Unreachable_Code): always issue an error (not a warning) in
1071 formal mode on unreachable code (concerns both code after an infinite
1072 loop and after an unconditional jump, both not allowed in SPARK)
1073 * sem_ch6.adb (Analyze_Return_Statement): add call to
1074 Set_Return_Present for a procedure containing a return statement
1075 (already done for functions in Analyze_Function_Return)
1076 (Analyze_Function_Return): issue error in formal mode on extended
1077 return or if return is not last statement in function
1078 (Check_Missing_Return): issue error in formal mode if function does
1079 not end with return or if procedure contains a return
1080 * sem_ch8.ads, sem_ch8.adb (Has_Loop_In_Inner_Open_Scopes): new
1081 function to detect if there is an inner scope of its parameter S which
1082 is a loop.
1083
10842011-08-01 Thomas Quinot <quinot@adacore.com>
1085
1086 * sem_ch6.ads: Minor reformatting.
1087
d8b3ccb9
AC
10882011-08-01 Javier Miranda <miranda@adacore.com>
1089
1090 * sem_util.adb (Abstract_Interface_List): Complete condition when
1091 processing private type declarations to avoid reading unavailable
1092 attribute.
1093 (Is_Synchronized_Tagged_Type): Complete condition when processing
1094 private extension declaration nodes to avoid reading unavailable
1095 attribute.
1096
10972011-08-01 Thomas Quinot <quinot@adacore.com>
1098
1099 * sem_ch3.adb: Minor reformatting.
1100
11012011-08-01 Thomas Quinot <quinot@adacore.com>
1102
1103 * s-parame-ae653.ads, s-parame-vms-alpha.ads, s-parame-hpux.ads,
1104 i-cpoint.adb, i-cstrin.adb, i-cpoint.ads, i-cstrin.ads,
1105 s-parame-vms-ia64.ads, s-parame.ads, i-c.ads, s-parame-vxworks.ads,
1106 s-parame-vms-restrict.ads: Remove duplicated Interfaces.C.* packages
1107 for VMS, instead parametrize the common implementation with
1108 System.Parameters declarations.
1109
0bb9276c
AC
11102011-08-01 Eric Botcazou <ebotcazou@adacore.com>
1111
1112 * gnat_rm.texi: Document limitation of Pragma No_Strict_Aliasing.
1113
11142011-08-01 Tristan Gingold <gingold@adacore.com>
1115
1116 * seh_init.c: Fix SEH handler installation on win64.
1117
11182011-08-01 Ed Schonberg <schonberg@adacore.com>
1119
1120 * sem_ch3.adb (Access_Subprogram_Declaration): in Asis mode, prevent
1121 double analysis of an anonymous access to subprogram, because it can
1122 lead to improper sharing of profiles and a back-end crash.
1123
6a2e4f0b
AC
11242011-08-01 Robert Dewar <dewar@adacore.com>
1125
1126 * make.adb, sem_ch4.adb: Minor reformatting.
1127 * gcc-interface/Make-lang.in: Update dependencies.
1128 * sem_util.adb, exp_ch5.adb: Minor reformatting.
1129
11302011-08-01 Arnaud Charlet <charlet@adacore.com>
1131
1132 * gnat_rm.texi: Fix definition of Long_Integer.
1133
11342011-08-01 Ed Schonberg <schonberg@adacore.com>
1135
1136 * exp_aggr.adb: check limit size of static aggregate unconditionally,
1137 to prevent storage exhaustion.
1138 * exp_ch7.adb (Clean_Simple_Protected_Objects): if the scope being
1139 finalized is a function body, insert the cleanup code before the final
1140 return statement, to prevent spurious warnings.
1141 * s-pooglo.ads: add overriding indicator.
1142
4561baf7
ES
11432011-08-01 Ed Schonberg <schonberg@adacore.com>
1144
1145 * sem_ch4.adb (Operator_Check): improve error message when both a
1146 with_clause and a use_clause are needed to make operator usage legal.
1147 * sem_util.ads, sem_util.adb (Unit_Is_Visible): new predicate to
1148 determine whether a compilation unit is visible within an other,
1149 either through a with_clause in the current unit, or a with_clause in
1150 its library unit or one one of its parents.
1151
383e179e
AC
11522011-08-01 Ed Schonberg <schonberg@adacore.com>
1153
1154 * exp_ch5.adb (Expand_N_Iterator_Loop): handle properly an iterator
1155 over an arbitrary expression of an array or container type.
1156 * lib-xref.adb: clarify comment.
1157
11582011-08-01 Bob Duff <duff@adacore.com>
1159
1160 * einfo.ads: Minor reformatting.
1161 * debug.adb: Minor comment improvement.
1162
11632011-08-01 Javier Miranda <miranda@adacore.com>
1164
1165 * sem_ch4.adb (Try_Object_Operation): For class-wide subprograms do not
1166 consider hidden subprograms as valid candidates.
1167
11682011-08-01 Arnaud Charlet <charlet@adacore.com>
1169
1170 * make.adb (Compile): Strip -mxxx switches in CodePeer mode.
1171
11722011-08-01 Vasiliy Fofanov <fofanov@adacore.com>
1173
1174 * gnat_ugn.texi: Fix typo.
1175
61c161b2
AC
11762011-08-01 Robert Dewar <dewar@adacore.com>
1177
1178 * i-cstrin.adb, sem_util.adb, exp_ch11.adb, sem_ch8.adb,
1179 lib-xref.adb: Minor reformatting
1180
11812011-08-01 Gary Dismukes <dismukes@adacore.com>
1182
1183 * exp_ch6.adb (Expand_N_Extended_Return_Statement): Replace test of
1184 when to generate a call to Move_Final_List.
1185 (Has_Controlled_Parts): Remove this function.
1186
84df40f7
AC
11872011-08-01 Geert Bosch <bosch@adacore.com>
1188
1189 * par-ch3.adb (P_Discrete_Choice_List): Improve error message for extra
1190 "," in choice list.
1191
11922011-08-01 Thomas Quinot <quinot@adacore.com>
1193
1194 * exp_ch11.adb (Expand_N_Raise_Statement): Mark N_Raise_xxx_Error for
1195 explicit raise of a predefined exception as Comes_From_Source if the
1196 original N_Raise_Statement comes from source.
1197
11982011-08-01 Robert Dewar <dewar@adacore.com>
1199
1200 * sinfo.ads: Add comment.
1201 * sem_ch6.adb: Minor reformatting.
1202
12032011-08-01 Robert Dewar <dewar@adacore.com>
1204
1205 * freeze.adb (Freeze_Entity): Refine check for bad component size
1206 clause to avoid rejecting confirming clause when atomic/aliased present.
1207
12082011-08-01 Ed Schonberg <schonberg@adacore.com>
1209
1210 * sem_ch8.adb (Find_Direct_Name, Analyze_Expanded_Name): use Is_LHS to
1211 better determine whether an entity reference is a write.
1212 * sem_util.adb (Is_LHS): refine predicate to handle assignment to a
1213 subcomponent.
1214 * lib-xref.adb (Output_References): Do no suppress a read reference at
1215 the same location as an immediately preceeding modify-reference, to
1216 handle properly in-out actuals.
1217
12182011-08-01 Tristan Gingold <gingold@adacore.com>
1219
1220 * env.c (__gnat_setenv) [VMS]: Refine previous change.
1221
12222011-08-01 Quentin Ochem <ochem@adacore.com>
1223
1224 * i-cstrin.adb (New_String): Changed implementation, now uses only the
1225 heap to compute the result.
1226
c7f0d2c0
AC
12272011-08-01 Robert Dewar <dewar@adacore.com>
1228
1229 * atree.ads: Minor reformatting.
1230
12312011-08-01 Emmanuel Briot <briot@adacore.com>
1232
1233 * g-expect.adb (Get_Command_Output): Fix memory leak.
1234
12352011-08-01 Geert Bosch <bosch@adacore.com>
1236
1237 * cstand.adb (P_Float_Type): New procedure to print the definition of
1238 predefined fpt types.
1239 (P_Mixed_Name): New procedure to print a name using mixed case
1240 (Print_Standard): Use P_Float_Type for printing floating point types
1241 * einfo.adb (Machine_Emax_Value): Add preliminary support for quad
1242 precision IEEE float.
1243
12442011-08-01 Thomas Quinot <quinot@adacore.com>
1245
1246 * sem_ch3.adb: Minor reformatting.
1247
12482011-08-01 Ed Schonberg <schonberg@adacore.com>
1249
1250 * sem_ch6.adb (Analyze_Parameterized_Expression): If the expression is
1251 the completion of a generic function, insert the new body rather than
1252 rewriting the original.
1253
12542011-08-01 Yannick Moy <moy@adacore.com>
1255
1256 * sinfo.ads, errout.ads: Typos in comments.
1257
1c54829e
AC
12582011-08-01 Robert Dewar <dewar@adacore.com>
1259
1260 * par-endh.adb: Minor reformatting.
1261
12622011-08-01 Robert Dewar <dewar@adacore.com>
1263
1264 * aspects.ads, aspects.adb: Add aspects for library unit pragmas
1265 (Pre_Post_Aspects): New subtype.
1266 * par-ch12.adb (P_Generic): New syntax for aspects in packages
1267 * par-ch13.adb (P_Aspect_Specifications): Add Semicolon parameter
1268 * par-ch7.adb (P_Package): Remove Decl parameter
1269 (P_Package): Handle new syntax for aspects (before IS)
1270 * par-ch9.adb (P_Protected_Definition): Remove Decl parameter, handle
1271 new aspect syntax
1272 (P_Task_Definition): Remove Decl parameter, handle new aspect syntax
1273 * par.adb (P_Aspect_Specifications): Add Semicolon parameter
1274 (P_Package): Remove Decl parameter
1275 * sem_ch13.adb (Analyze_Aspect_Specifications): Handle library unit
1276 aspects
1277 * sem_ch7.adb (Analyze_Package_Declaration): Analyze new format aspect
1278 specs
1279 * sem_util.ads, sem_util.adb (Static_Boolean): New function
1280 * sinfo.ads: Document new syntax for aspects in packages etc.
1281 * sprint.adb: Handle new syntax of aspects before IS in package
1282
12832011-08-01 Thomas Quinot <quinot@adacore.com>
1284
1285 * atree.ads: Minor reformatting.
1286 * sem_prag.adb: Minor reformatting.
1287
12882011-08-01 Robert Dewar <dewar@adacore.com>
1289
1290 * exp_util.adb (Insert_Actions): Fix error in handling Actions for
1291 case expr alternative.
1292
12932011-08-01 Ed Schonberg <schonberg@adacore.com>
1294
1295 * sem_ch12.adb: Fix typo.
1296
9eea4346
GB
12972011-08-01 Geert Bosch <bosch@adacore.com>
1298
1299 * sem_prag.adb (Check_No_Link_Name): New procedure.
1300 (Process_Import_Or_Interface): Use Check_No_Link_Name.
1301 * cstand.adb (Create_Standard): Use Esize (Standard_Long_Long_Float)
1302 instead of Standard_Long_Long_Float_Size global. Preparation for
1303 eventual removal of per type constants.
1304 * exp_util.ads (Get_Stream_Size): New function returning the stream
1305 size value of subtype E.
1306 * exp_util.adb (Get_Stream_Size): Implement new function.
1307 * exp_strm.adb (Build_Elementary_Input_Call): Use Get_Stream_Size
1308 function.
1309 * exp_attr.adb (Attribute_Stream_Size): Use Get_Stream_Size
1310 * einfo.adb:
1311 (Machine_Mantissa_Value): Handle 128-bit quad precision IEEE floats
1312
3d6c3bd7
GB
13132011-08-01 Geert Bosch <bosch@adacore.com>
1314
1315 * cstand.adb: Fix comments.
1316 * sem_prag.adb (Analyze_Pragma): Use List_Length instead of explicit
1317 count of arguments.
1318
e7d897b8
AC
13192011-08-01 Robert Dewar <dewar@adacore.com>
1320
1321 * exp_ch4.adb, sem_cat.adb: Minor reformatting.
1322
13232011-08-01 Geert Bosch <bosch@adacore.com>
1324
1325 * atree.ads: Fix comment.
1326
c228a069
AC
13272011-08-01 Robert Dewar <dewar@adacore.com>
1328
1329 * aspects.ads, aspects.adb (Aspect_Names): Moved from body to spec.
1330 * par-ch13.adb (P_Aspect_Specifications): Check misspelled aspect name.
1331 * par.adb: Add with for Namet.Sp.
1332 * par-tchk.adb: Minor reformatting.
1333
13342011-08-01 Vincent Celier <celier@adacore.com>
1335
1336 * mlib-tgt-specific-vms-alpha.adb, mlib-tgt-specific-vms-ia64.adb
1337 (Build_Dynamic_Library): Use new function Init_Proc_Name to get the name
1338 of the init procedure of a SAL.
1339 * mlib-tgt-vms_common.ads, mlib-tgt-vms_common.adb (Init_Proc_Name):
1340 New procedure.
1341
13422011-08-01 Thomas Quinot <quinot@adacore.com>
1343
1344 * exp_ch4.adb, s-tasini.ads, sem_attr.adb, s-soflin.ads: Minor
1345 reformatting.
1346
13472011-08-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1348
1349 * adaint.c (__gnat_file_time_name_attr): Get rid of warning.
1350
13512011-08-01 Thomas Quinot <quinot@adacore.com>
1352
1353 * sem_util.adb, sem_util.ads (Has_Overriding_Initialize): Make function
1354 conformant with its spec (return True only for types that have
1355 an overriding Initialize primitive operation that prevents them from
1356 having preelaborable initialization).
1357 * sem_cat.adb (Validate_Object_Declaration): Fix test for preelaborable
1358 initialization for controlled types in Ada 2005 or later mode.
1359
857ade1b
RD
13602011-08-01 Robert Dewar <dewar@adacore.com>
1361
1362 * aspects.ads, aspects.adb: Add aspect Type_Invariant, Precondition,
1363 Postcondition.
1364 (Same_Aspect): New function.
1365 * sem_ch13.adb (Analyze_Aspect_Specifications): Add aspect
1366 Type_Invariant, Precondition, Postcondition.
1367 * snames.ads-tmpl: Add Name_Type_Invariant.
1368
bd949ee2
RD
13692011-08-01 Robert Dewar <dewar@adacore.com>
1370
1371 * freeze.adb (Freeze_Entity): Don't call Check_Aspect_At_Freeze_Point
1372 here.
1373 (Freeze_All_Ent): Fix error in handling inherited aspects.
1374 * sem_ch13.adb (Analyze_Aspect_Specifications): Skip aspect that is
1375 already analyzed, but don't skip entire processing of a declaration,
1376 that's wrong in some cases of declarations being rewritten.
1377 (Analyze_Aspect_Specification): Set Is_Delayed_Aspect in aspects.
1378 Don't delay for integer, string literals
1379 Treat predicates in usual manner for delay, remove special case code,
1380 not needed.
1381 (Analyze_Freeze_Entity): Make call to Check_Aspect_At_Freeze_Point
1382 (Build_Predicate_Function): Update saved expression in aspect
1383 (Build_Invariant_Procedure): Update saved expression in aspect
1384 * exp_ch4.adb (Expand_N_Selected_Component): Only do the optimization
1385 of replacement of discriminant references if the reference is simple.
1386
f1c952af
RD
13872011-08-01 Robert Dewar <dewar@adacore.com>
1388
1389 * aspects.ads, aspects.adb: Add Static_Predicate and Dynamic_Predicate.
1390 * sem_ch13.adb (Analyze_Aspect_Specification): Add processing for
1391 Static_Predicate and Dynamic_Predicate.
1392 (Build_Predicate_Function): Add processing for Static_Predicate
1393 and Dynamic_Predicate.
1394 * sinfo.ads, sinfo.adb (From_Dynamic_Predicate): New flag
1395 (From_Static_Predicate): New flag
1396 * snames.ads-tmpl: Add Name_Static_Predicate and Name_Dynamic_Predicate
1397
13982011-08-01 Robert Dewar <dewar@adacore.com>
1399
1400 * usage.adb: Documentation cleanup for Ada version modes in usage.
1401 * expander.adb: Minor reformatting.
1402
47e11d08
AC
14032011-08-01 Robert Dewar <dewar@adacore.com>
1404
1405 * atree.ads: Minor comment fix.
1406 * a-stwifi.adb, a-stzfix.adb, a-strfix.adb, a-ztexio.ads, a-textio.ads,
1407 a-witeio.ads, sem_prag.adb: Minor reformatting.
1408
14092011-08-01 Doug Rupp <rupp@adacore.com>
1410
1411 * env.c (__gnat_setenv) [VMS]: Force 32bit on item list structure
1412 pointers. Use descrip.h header file for convenience. Add some
1413 comments.
1414
14152011-08-01 Robert Dewar <dewar@adacore.com>
1416
1417 * freeze.adb (Freeze_Entity): Call Check_Aspect_At_Freeze_Point
1418 (Freeze_All): Call Check_Aspect_At_End_Of_Declarations
1419 * sem_ch13.ads, sem_ch13.adb (Check_Aspect_At_Freeze_Point):
1420 New procedure.
1421 (Check_Aspect_At_End_Of_Declarations): New procedure
1422 (Analye_Aspect_Specification): Minor changes for above procedures
1423 * sinfo.ads, sinfo.adb (Is_Delayed_Aspect): Now set in aspect
1424 specification node as well.
1425
14262011-08-01 Pascal Obry <obry@adacore.com>
1427
1428 * adaint.c (_gnat_stat): GetFilesAttributesEx() would fail on special
1429 Windows files. Use GetFilesAttributes() in this case to check for file
1430 existence instead of returning with an error code.
1431
a3a16b21
VC
14322011-08-01 Vincent Celier <celier@adacore.com>
1433
1434 * a-stzfix.adb, a-stwifi.adb (Replace_Slice): Fixed computation when
1435 High is above Source length.
1436
ff58cc69
RD
14372011-08-01 Robert Dewar <dewar@adacore.com>
1438
1439 * a-ztexio.ads, a-textio.ads, a-witeio.ads: Fix comment.
1440
6bb88533
AC
14412011-08-01 Robert Dewar <dewar@adacore.com>
1442
1443 * aspects.ads (Boolean_Aspects): New subtype.
1444 * exp_ch13.adb (Expand_Freeze_Entity): Fix errors in handling aspects
1445 for derived types in cases where the parent type and derived type have
1446 aspects.
1447 * freeze.adb (Freeze_Entity): Fix problems in handling derived type
1448 with aspects when parent type also has aspects.
1449 (Freeze_Entity): Deal with delay of boolean aspects (must evaluate
1450 boolean expression at this point).
1451 * sem_ch13.adb (Analyze_Aspect_Specifications): Delay all aspects in
1452 accordance with final decision on the Ada 2012 feature.
1453 * sinfo.ads, sinfo.adb (Is_Boolean_Aspect): New flag.
1454
14552011-08-01 Matthew Heaney <heaney@adacore.com>
1456
1457 * a-chtgbo.adb (Delete_Node_Sans_Free): Replace iterator with selector.
1458
060a3f28
AC
14592011-08-01 Pascal Obry <obry@adacore.com>
1460
1461 * a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb:
1462 Fix Replace_Slice when High is above current string size.
1463 (Replace_Slice): Fix DL computation when High is above current
1464 string length.
1465
14662011-08-01 Gary Dismukes <dismukes@adacore.com>
1467
1468 * gnat_rm.texi: Add documentation for pragma Static_Elaboration_Desired.
1469
e7f567a3
AC
14702011-08-01 Matthew Heaney <heaney@adacore.com>
1471
1472 * a-rbtgbo.adb (Delete_Node_Sans_Free): Fixed assignment to left child
1473 of node.
1474
14752011-08-01 Pascal Obry <obry@adacore.com>
1476
1477 * a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb: Minor
1478 reformatting.
1479
1a265e78
AC
14802011-08-01 Ed Schonberg <schonberg@adacore.com>
1481
1482 * sem_attr.adb (Analyze_Attribute, case 'Access): Handle properly named
1483 access to protected subprograms in generic bodies.
1484 * sem_ch6.adb (Analyze_Subprogram_Declaration): If the context is a
1485 protected type, indicate that the convention of the subprogram is
1486 Convention_Protected, because it may be used in subsequent declarations
1487 within the protected declaration.
1488
14892011-08-01 Vincent Celier <celier@adacore.com>
1490
1491 * mlib-prj.adb (Build_Library): Use "ada_" as the prefix for the "init"
1492 and "final" procedures when the name of the library is "ada", to avoid
1493 duplicate symbols "adainit" and "adafinal" in executables.
1494
67e28ef8
ES
14952011-08-01 Ed Schonberg <schonberg@adacore.com>
1496
1497 * sem_attr.adb (Analyze_Attribute, case 'Result): Handle properly a
1498 quantified expression that appears within a postcondition and uses the
1499 Ada2012 'Result attribute.
1500
6da2ca7d
RO
15012011-07-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1502
1503 * init.c (__gnat_error_handler): Cast reason to int.
1504 (__gnat_install_handler): Explain sa_sigaction use.
1505
7d5997c6
EB
15062011-07-24 Eric Botcazou <ebotcazou@adacore.com>
1507
1508 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: If the
1509 subprogram has copy-in copy-out parameters, try to promote the mode of
1510 the return type if it is passed in registers.
1511
4b4cfdd5
EB
15122011-07-24 Eric Botcazou <ebotcazou@adacore.com>
1513
1514 * gcc-interface/utils2.c (build_binary_op) <ARRAY_REF>: Do not mark the
1515 left operand as addressable.
1516
f3d34576
EB
15172011-07-24 Eric Botcazou <ebotcazou@adacore.com>
1518
1519 * gcc-interface/gigi.h (build_function_stub): Remove.
1520 (build_return_expr): Likewise.
1521 (convert_vms_descriptor): Declare.
1522 * gcc-interface/utils.c (convert_vms_descriptor): Make global.
1523 (build_function_stub): Move to...
1524 * gcc-interface/utils2.c (build_return_expr): Move to...
1525 * gcc-interface/trans.c (build_function_stub): ...here.
1526 (build_return_expr): ...here.
1527 (Subprogram_Body_to_gnu): Add local variable for language_function.
1528 Disconnect the parameter attributes cache, if any, once done with it.
1529 Call end_subprog_body only after setting the end_locus.
1530 Build the stub associated with the function, if any, at the very end.
1531 (gnat_to_gnu) <N_Return_Statement>: Remove couple of useless local
1532 variables and streamline control flow.
1533
0a6ecc08
AC
15342011-07-23 Arnaud Charlet <charlet@adacore.com>
1535
1536 PR ada/49819
1537 * gcc-interface/Makefile.in (powerpc-linux): Remove reference to
1538 g-trasym-dwarf.adb.
1539
5b6d595b
RO
15402011-07-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1541
1542 PR bootstrap/49794
1543 * init.c [sun && __SVR4 && !__vxworks] (__gnat_install_handler):
1544 Assign to act.sa_sigaction.
1545 * tracebak.c [USE_GENERIC_UNWINDER] (__gnat_backtrace): Cast
1546 current->return_address to char * before arithmetic.
1547
94017021
RO
15482011-07-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1549
1550 * init.c [sgi] (__gnat_error_handler): Update sigaction(2) citation.
1551 Correct argument types.
1552 Extract code from reason.
1553 (__gnat_install_handler): Assign to act.sa_sigaction.
1554
52fd02bb
EB
15552011-07-21 Eric Botcazou <ebotcazou@adacore.com>
1556
1557 * gcc-interface/Make-lang.in (GNAT1_ADA_OBJS): Move ada/b_gnat1.o to...
1558 (GNAT1_OBJS): ...here.
1559
f39a9ca2
EB
15602011-07-15 Eric Botcazou <ebotcazou@adacore.com>
1561
1562 PR ada/48711
1563 * g-socthi-mingw.adb (Fill): Fix formatting.
1564
9e36aa23
EB
1565 * gcc-interface/gigi.h: Move around comment.
1566
e3aca522
JDA
15672011-07-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1568
1569 PR ada/46350
1570 * s-taprop-hpux-dce.adb (Abort_Task): Remove unnecessary cast.
1571
696b1960
FW
15722011-07-14 Florian Weimer <fw@deneb.enyo.de>
1573
1574 PR ada/48711
1575 * g-socthi-mingw.adb (Fill): Guard against invalid MSG_WAITALL.
1576
f542c405
EB
15772011-07-13 Eric Botcazou <ebotcazou@adacore.com>
1578
1579 * gcc-interface/utils.c (build_vms_descriptor32): Skip the 32-bit
1580 range comparison if Pmode is SImode.
1581
9e9bd455
LG
15822011-07-12 Laurent GUERBY <laurent@guerby.net>
1583 Eric Botcazou <ebotcazou@adacore.com>
1584
1585 * adadecode.c: Wrap up in extern "C" block.
1586 * adadecode.h: Likewise.
1587 * adaint.c: Likewise. Remove 'const' keyword.
1588 * adaint.h: Likewise.
1589 * argv.c: Likewise.
1590 * atree.h: Likewise.
1591 * cio.c: Likewise.
1592 * cstreams.c: Likewise.
1593 * env.c: Likewise.
1594 * exit.c: Likewise.
1595 * fe.h: Likewise.
1596 * final.c: Likewise.
1597 * init.c: Likewise.
1598 * initialize.c: Likewise.
1599 * link.c: Likewise.
1600 * namet.h: Likewise.
1601 * nlists.h: Likewise.
1602 * raise.c: Likewise.
1603 * raise.h: Likewise.
1604 * repinfo.h: Likewise.
1605 * seh_init.c: Likewise.
1606 * targext.c: Likewise.
1607 * tracebak.c: Likewise.
1608 * uintp.h: Likewise.
1609 * urealp.h: Likewise.
1610 * xeinfo.adb: Wrap up generated C code in extern "C" block.
1611 * xsinfo.adb: Likewise.
1612 * xsnamest.adb: Likewise.
1613 * gcc-interface/gadaint.h: Wrap up in extern "C" block.
1614 * gcc-interface/gigi.h: Wrap up some prototypes in extern "C" block.
1615 * gcc-interface/misc.c: Likewise.
1616 * gcc-interface/Make-lang.in (GCC_LINK): Use LINKER.
1617 (GNAT1_C_OBJS): Remove ada/b_gnat1.o. List ada/seh_init.o and
1618 ada/targext.o here...
1619 (GNAT_ADA_OBJS): ...and not here.
1620 (GNAT1_ADA_OBJS): Add ada/b_gnat1.o.
1621 (GNATBIND_OBJS): Reorder.
1622
7644b3c7
RH
16232011-07-07 Richard Henderson <rth@redhat.com>
1624
1625 * gcc-interface/misc.c (gnat_init_gcc_eh): Don't call
1626 dwarf2out_frame_init.
1627
8384ac41
EB
16282011-07-07 Eric Botcazou <ebotcazou@adacore.com>
1629
1630 * gcc-interface/misc.c (gnat_init): Tweak previous change.
1631
fbdd5d87
RO
16322011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1633
1634 PR target/39150
1635 * gcc-interface/Makefile.in: Handle x86_64-solaris2.
1636
1a072294
RG
16372011-07-06 Richard Guenther <rguenther@suse.de>
1638
8384ac41
EB
1639 * gcc-interface/misc.c (gnat_init): Merge calls to
1640 build_common_tree_nodes and build_common_tree_nodes_2.
1a072294
RG
1641 Re-initialize boolean_false_node.
1642
bc712852
EB
16432011-07-02 Eric Botcazou <ebotcazou@adacore.com>
1644 Olivier Hainque <hainque@adacore.com>
1645 Nicolas Setton <setton@adacore.com>
1646
1647 * gcc-interface/utils.c (record_builtin_type): Set TYPE_ARTIFICIAL on
1648 the type according to the ARTIFICIAL_P parameter.
1649 (create_type_decl): Likewise.
1650 (create_type_stub_decl): Set TYPE_ARTIFICIAL on the type to 1.
1651
2eb22389
EB
16522011-07-01 Eric Botcazou <ebotcazou@adacore.com>
1653
1654 * gcc-interface/Make-lang.in (gnat1): Prepend '+' to the command.
1655 (gnatbind): Likewise.
1656
4bdaaf2f
RO
16572011-06-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1658
1659 * gcc-interface/Makefile.in (TOOLS_LIBS): Add $(LIBINTL).
1660
c020c92b
EB
16612011-06-18 Eric Botcazou <ebotcazou@adacore.com>
1662
1663 * gcc-interface/decl.c (gnat_to_gnu_component_type): Use GNAT_TYPE
1664 local variable throughout. Remove useless call to Base_Type.
1665 (gnat_to_gnu_field): Use GNAT_FIELD_TYPE local variable throughout.
1666 Take it also into account for the volatileness of the field. Set the
1667 TREE_SIDE_EFFECTS flag as well in this case. Reorder some warnings.
1668
96769d32
EB
16692011-06-18 Eric Botcazou <ebotcazou@adacore.com>
1670
1671 * gcc-interface/trans.c (Identifier_to_gnu): Don't set TREE_THIS_NOTRAP
1672 on a dereference built for a by-ref object if it has an address clause.
1673
7e4680c1
EB
16742011-06-18 Eric Botcazou <ebotcazou@adacore.com>
1675
1676 * einfo.ads (Address_Taken): Document use for the second argument of
1677 Asm_Input and Asm_Output attributes.
1678 * sem_attr.adb (Analyze_Attribute) <Attribute_Asm_Input>: If the second
1679 argument is an entity name, then set Address_Taken on it.
1680 <Attribute_Asm_Output>: Likewise.
1681 * gcc-interface/trans.c (lvalue_required_for_attribute_p): Handle the
1682 Attr_Asm_Input and Attr_Asm_Output attributes explicitly.
1683 (gnat_to_gnu) <N_Code_Statement>: If an operand is going to end up in
1684 memory and is a CONST_DECL, retrieve its corresponding VAR_DECL.
1685
16862011-06-16 Joern Rennecke <joern.rennecke@embecosm.com>
d5cc9181
JR
1687
1688 PR middle-end/46500
1689 * gcc-interface/decl.c (gnat_to_gnu_param): Use pack_cumulative_args.
1690
677f3fa8
JM
16912011-06-14 Joseph Myers <joseph@codesourcery.com>
1692
1693 * gcc-interface/Make-lang.in (gnatbind$(exeext)): Use ggc-none.o.
1694 (ada/utils.o): Update dependencies.
1695 * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Add
1696 ../../../libcpp/libcpp.a.
1697 * gcc-interface/utils.c: Include common/common-target.h.
1698 (process_attributes): Use targetm_common.have_named_sections.
1699
009db074
RG
17002011-06-07 Richard Guenther <rguenther@suse.de>
1701
0bad0e23
EB
1702 * gcc-interface/misc.c (gnat_init): Do not set size_type_node or call
1703 set_sizetype.
009db074 1704
3bfc61cf
EB
17052011-06-06 Eric Botcazou <ebotcazou@adacore.com>
1706
0bad0e23 1707 * gcc-interface/utils2.c (gnat_stabilize_reference): Propagate the
3bfc61cf
EB
1708 TREE_THIS_NOTRAP flag.
1709
5c4a1c7b
EB
17102011-06-06 Eric Botcazou <ebotcazou@adacore.com>
1711
1712 * gcc-interface/utils2.c (gnat_stabilize_reference) <COMPOUND_EXPR>:
1713 Fix thinko.
1714
e9f57686
EB
17152011-06-06 Eric Botcazou <ebotcazou@adacore.com>
1716
1717 * gcc-interface/trans.c (Identifier_to_gnu): Also handle deferred
1718 constants whose full view has discriminants specially.
1719
10e4d056
EB
17202011-06-06 Eric Botcazou <ebotcazou@adacore.com>
1721
1722 * gcc-interface/utils.c: Include diagnostic.h.
1723 (gnat_write_global_declarations): Output debug information for all
1724 global type declarations before finalizing the compilation unit.
1725 * gcc-interface/Make-lang.in (ada/utils.o): Add dependency.
1726
0957c029
JJ
17272011-05-25 Jakub Jelinek <jakub@redhat.com>
1728
1729 * gcc-interface/utils.c (def_fn_type): Remove extra va_end.
1730
52d0a7ac
KT
17312011-05-25 Kai Tietz <ktietz@redhat.com>
1732
1733 * adaint.c (__gnat_to_canonical_file_list_next): Use array
1734 initialization instead of const/none-const pointer assignment.
1735
1ed1641d
JM
17362011-05-24 Joseph Myers <joseph@codesourcery.com>
1737
1738 * gcc-interface/Make-lang.in (GNAT1_OBJS): Don't include
1739 $(EXTRA_GNAT1_OBJS).
1740 (GNATBIND_OBJS): Don't include $(EXTRA_GNATBIND_OBJS).
1741 (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Remove.
1742 (gnat1$(exeext), gnatbind$(exeext)): Use libcommon-target.a.
1743 * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use
1744 libcommon-target.a instead of prefix.o.
1745
9fe72ebd
JM
17462011-05-21 Joseph Myers <joseph@codesourcery.com>
1747
1748 PR ada/49097
0bad0e23 1749 * gcc-interface/Make-lang.in (gnatbind$(exeext)): Depend on $(LIBDEPS).
9fe72ebd 1750
2691e6d7
JM
17512011-05-20 Joseph Myers <joseph@codesourcery.com>
1752
0bad0e23
EB
1753 * gcc-interface/Make-lang.in (EXTRA_GNATBIND_OBJS): Remove version.o.
1754 * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use libcommon.a
1755 instead of version.o.
2691e6d7 1756
bf6490b5
KT
17572011-05-18 Kai Tietz <ktietz@redhat.com>
1758
1759 * gcc-interface/trans.c (Exception_Handler_to_gnu_sjlj): Use
1760 boolean_false_node instead of integer_zero_node.
1761 (convert_with_check): Likewise.
1762 * gcc-interface/decl.c (choices_to_gnu): Likewise.
1763
7bf9a5ac
EB
17642011-05-12 Eric Botcazou <ebotcazou@adacore.com>
1765
1766 * gcc-interface/trans.c (call_to_gnu): In the by-reference case, if the
1767 type of the parameter is an unconstrained array, convert the actual to
1768 the type of the formal in the In Out and Out cases as well.
1769
e5b00edf
NF
17702011-05-11 Nathan Froyd <froydnj@codesourcery.com>
1771
1772 * gcc-interface/utils.c (def_fn_type): Don't call build_function_type;
1773 call build_function_type_array or build_varargs_function_type_array
1774 instead.
1775 (create_subprog_type): Don't call build_function_type; call
1776 build_function_type_vec instead.
1777
51545682
NF
17782011-05-11 Nathan Froyd <froydnj@codesourcery.com>
1779
1780 * gcc-interface/ada-tree.h (TYPE_OBJECT_RECORD_TYPE): Use TYPE_MINVAL.
1781 (TYPE_GCC_MIN_VALUE): Use TYPE_MINVAL.
1782 (TYPE_GCC_MAX_VALUE): Use TYPE_MAXVAL.
1783
c99c0026
EB
17842011-05-07 Eric Botcazou <ebotcazou@adacore.com>
1785
f620bd21
EB
1786 * gcc-interface/decl.c (intrin_arglists_compatible_p): Remove spaces.
1787
c99c0026
EB
1788 * gcc-interface/gigi.h (global_bindings_p): Adjust prototype.
1789 * gcc-interface/utils.c (global_bindings_p): Return bool and simplify.
1790
3d528853
NF
17912011-05-05 Nathan Froyd <froydnj@codesourcery.com>
1792
c99c0026 1793 * gcc-interface/trans.c (Case_Statement_to_gnu): Call build_case_label.
3d528853 1794
d7d058c5
NF
17952011-05-05 Nathan Froyd <froydnj@codesourcery.com>
1796
1797 * gcc-interface/decl.c (intrin_arglists_compatible_p): Use iterators
1798 instead of accessing TYPE_ARG_TYPES directly.
1799 * gcc-interface/utils.c (handle_nonnull_attribute): Likewise.
1800
805e60a0
EB
18012011-05-05 Eric Botcazou <ebotcazou@adacore.com>
1802
1803 PR ada/48844
1804 * gcc-interface/gigi.h (get_variant_part): Declare.
1805 * gcc-interface/decl.c (get_variant_part): Make global.
1806 * gcc-interface/utils2.c (find_common_type): Do not return T1 if the
1807 types have the same constant size, are record types and T1 has a
1808 variant part while T2 doesn't.
1809
907a08d9
EB
18102011-05-05 Eric Botcazou <ebotcazou@adacore.com>
1811
1812 * gcc-interface/utils.c (begin_subprog_body): Do not call
1813 get_pending_sizes.
1814 (end_subprog_body): Likewise.
1815
d35936ab
RG
18162011-05-04 Richard Guenther <rguenther@suse.de>
1817
1818 * gcc-interface/trans.c (gnat_to_gnu): Remove zero notrunc argument to
1819 int_const_binop.
1820 (pos_to_constructor): Likewise.
1821
c1fd8753
NF
18222011-05-03 Nathan Froyd <froydnj@codesourcery.com>
1823 Eric Botcazou <ebotcazou@adacore.com>
1824
1825 * gcc-interface/trans.c (gigi): Call build_function_type_list instead
1826 of build_function_type. Adjust calls to...
1827 (build_raise_check): ...this. Do not take a void_tree parameter.
1828 Call build_function_type_list instead of build_function_type.
1829 Fix head comment and swap couple of conditional blocks.
1830
4fb87d2b
EB
18312011-04-30 Eric Botcazou <ebotcazou@adacore.com>
1832
1833 * gnatvsn.ads (Library_Version): Bump to 4.7.
1834 (Current_Year): Bump to 2011.
1835
fa5e5a76
MM
18362011-04-29 Michael Matz <matz@suse.de>
1837
1838 * gcc-interface/misc.c (gnat_handle_option): Set
1839 warn_maybe_uninitialized.
1840
8d6a2f69
GP
18412011-04-23 Gerald Pfeifer <gerald@pfeifer.com>
1842
1843 * gnat_ugn.texi (Complexity Metrics Control): Update link to
1844 the Watson/McCabe paper.
1845
770937fd
JM
18462011-04-23 Jim Meyering <meyering@redhat.com>
1847
1848 * gnat_ugn.texi (Examples of gnatxref Usage): Fix typo: s/it it/it is/
1849
eb601ae1
EB
18502011-04-22 Eric Botcazou <ebotcazou@adacore.com>
1851
1852 * gcc-interface/decl.c (make_packable_type): Copy DECL_PARALLEL_TYPE
1853 onto the new type.
1854
7d7fcb08
EB
18552011-04-22 Eric Botcazou <ebotcazou@adacore.com>
1856
1857 * gcc-interface/gigi.h (create_subprog_decl): Add ARTIFICIAL_FLAG
1858 parameter.
1859 * gcc-interface/utils.c (create_subprog_decl): Likewise. Set
1860 DECL_ARTIFICIAL and DECL_NO_INLINE_WARNING_P on the DECL accordingly.
1861 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Add
1862 ARTIFICIAL_FLAG local variable and pass it to create_subprog_decl.
1863 <all>: Do not set flags on the reused DECL node coming from an alias.
1864 Set DECL_IGNORED_P on the DECL node built for subprograms if they
1865 don't need debug info here...
1866 * gcc-interface/trans.c (Subprogram_Body_to_gnu): ...and not here.
1867 (gigi): Adjust calls to create_subprog_decl.
1868 (build_raise_check): Likewise.
1869 (establish_gnat_vms_condition_handler): Likewise.
1870 (Compilation_Unit_to_gnu): Likewise.
1871 (gnat_to_gnu): Likewise.
1872
e1876cac
EB
18732011-04-21 Eric Botcazou <ebotcazou@adacore.com>
1874
1875 * gcc-interface/Makefile.in (NO_SIBLING_ADAFLAGS): Always define.
1876 (NO_REORDER_ADAFLAGS): New variable.
1877 (EXTRA_GNATTOOLS): Always define.
1878 (../stamp-gnatlib1-$(RTSDIR): Copy tsystem.h.
1879 Clean up and adjust list of files compiled with special options.
1880 * gcc-interface/Make-lang.in: Likewise.
1881 (ada/decl.o): Cosmetical change.
1882 (ada/misc.o): Remove dependency on $(PLUGIN_H).
1883
04695783
JM
18842011-04-20 Jim Meyering <meyering@redhat.com>
1885
1886 * initialize.c (__gnat_initialize): Remove useless if-before-free.
1887
23399579
EB
18882011-04-17 Eric Botcazou <ebotcazou@adacore.com>
1889
1890 * gcc-interface/Make-lang.in (gnatbind): Replace $(ALL_CFLAGS) with
1891 $(CFLAGS) on the link line.
1892
51c5169c
EB
18932011-04-17 Eric Botcazou <ebotcazou@adacore.com>
1894
1895 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Function>: Declare the
1896 padded type built for the return type if it is unconstrained.
1897
61e46a7d
NF
18982011-04-14 Nathan Froyd <froydnj@codesourcery.com>
1899
1900 * gcc-interface/utils.c (gnat_poplevel): Use block_chainon.
1901
81f653d6
NF
19022011-04-12 Nathan Froyd <froydnj@codesourcery.com>
1903
b4867846
EB
1904 * gcc-interface/ada-tree.h (union lang_tree_node): Check for TS_COMMON
1905 before calling TREE_CHAIN.
81f653d6
NF
1906 * gcc-interface/misc.c (gnat_init_ts): New function.
1907 (LANG_HOOKS_INIT_TS): Define.
1908
a358e188
MJ
19092011-04-12 Martin Jambor <mjambor@suse.cz>
1910
b4867846
EB
1911 * gcc-interface/utils.c (end_subprog_body): Call cgraph_get_create_node
1912 instead of cgraph_node.
a358e188 1913
29b1c5a4
EB
19142011-04-08 Eric Botcazou <ebotcazou@adacore.com>
1915
1916 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Set minimum
1917 alignment on fields of the RETURN type built for the Copy-In Copy-Out
1918 mechanism.
1919
88872b00
EB
19202011-04-08 Eric Botcazou <ebotcazou@adacore.com>
1921
1922 * gcc-interface/trans.c (Identifier_to_gnu): Do not return initializers
1923 of aggregate types that contain a placeholder.
1924
dcf0c47e
NF
19252011-04-08 Nathan Froyd <froydnj@codesourcery.com>
1926
1927 * gcc-interface/utils.c (handle_sentinel_attribute): Don't use
b4867846 1928 TYPE_ARG_TYPES.
dcf0c47e
NF
1929 (handle_type_generic_attribute): Likewise.
1930
53e3000c
EB
19312011-04-04 Eric Botcazou <ebotcazou@adacore.com>
1932
1933 PR ada/47163
1934 * s-oscons-tmplt.c (MSG_WAITALL): Fix thinko in previous change.
1935
ab380bb4
KT
19362011-04-04 Kai Tietz <ktietz@redhat.com>
1937
1938 PR ada/47163
0bad0e23
EB
1939 * s-oscons-tmplt.c (MSG_WAITALL): Define it for native windows targets
1940 to flag value.
ab380bb4 1941
8ffac116
EB
19422011-04-02 Eric Botcazou <ebotcazou@adacore.com>
1943
1944 * gcc-interface/utils2.c (build_allocator): In the unconstrained array
1945 type case, do not strip a padding type around the array type.
1946
de9528f0
EB
19472011-04-02 Eric Botcazou <ebotcazou@adacore.com>
1948
1949 * gcc-interface/utils.c (update_pointer_to): Finalize named pointer
1950 types.
1951
d9d7a26c
EB
19522011-04-02 Eric Botcazou <ebotcazou@adacore.com>
1953
1954 * gcc-interface/lang.opt (feliminate-unused-debug-types): Delete.
1955 * gcc-interface/misc.c (gnat_handle_option): Remove special handling
de9528f0 1956 code for -feliminate-unused-debug-types.
d9d7a26c
EB
1957 (gnat_post_options): Likewise.
1958
4cb12a90
EB
19592011-04-02 Eric Botcazou <ebotcazou@adacore.com>
1960
1961 * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial
1962 declaration of a pointer type, then set DECL_ORIGINAL_TYPE to a
1963 distinct copy.
1964
acccc61c
EB
19652011-04-02 Eric Botcazou <ebotcazou@adacore.com>
1966
1967 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not force the
1968 DECL_ARTIFICIAL flag on enumeration types.
1969
583eb0c9
EB
19702011-04-02 Eric Botcazou <ebotcazou@adacore.com>
1971
1972 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do not make
1973 fat pointer types artificial unconditionally.
1974 <E_Array_Subtype>: Attach the base array type as a parallel type if it
1975 isn't artificial.
1976
e3edbd56
EB
19772011-04-02 Eric Botcazou <ebotcazou@adacore.com>
1978
1979 * gcc-interface/gigi.h (get_dummy_type): Declare.
1980 (build_dummy_unc_pointer_types): Likewise.
1981 (finish_fat_pointer_type): Likewise.
1982 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If a dummy
1983 fat pointer type has been built, complete it in place.
1984 <E_Access_Type>: Call build_dummy_unc_pointer_types to build dummy fat
1985 and thin pointers. Remove useless variable.
1986 (finish_fat_pointer_type): Make global and move to...
1987 * gcc-interface/utils.c (finish_fat_pointer_type): ...here.
1988 (get_dummy_type): New function.
1989 (build_dummy_unc_pointer_types): Likewise.
1990 (gnat_pushdecl): Propage the name to the anonymous variants only.
1991 (update_pointer_to): Only adjust the pointer types in the unconstrained
1992 array case.
1993
65444786
EB
19942011-04-02 Eric Botcazou <ebotcazou@adacore.com>
1995
1996 * gcc-interface/ada-tree.h (DECL_TAFT_TYPE_P): New flag.
1997 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Incomplete_Type>: Set it
1998 if this is a Taft amendment type and the full declaration is available.
1999 * gcc-interface/trans.c (process_type): Likewise.
2000 If there is an old type, mark the new one as used if DECL_TAFT_TYPE_P.
2001 (process_freeze_entity): Likewise.
2002 * gcc-interface/utils.c (dummy_global): New static variable.
2003 (gnat_write_global_declarations): If there are types declared as used
2004 at the global level, insert them in the global hash table.
2005
1aeb40dd
EB
20062011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2007
2008 * gcc-interface/gigi.h (record_builtin_type): Add ARTIFICIAL_P param.
2009 * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial
2010 declaration of an array type, then set DECL_ORIGINAL_TYPE to a distinct
2011 copy.
2012 (record_builtin_type): Add ARTIFICIAL_P parameter. Set DECL_ARTIFICIAL
2013 flag of the type accordingly.
2014 * gcc-interface/trans.c (gigi): Adjust calls to record_builtin_type.
2015
80ec8b4c
EB
20162011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2017
2018 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer
2019 finalizing types when updating the pointers to the designated type.
2020 <all>: Finalize the deferred types even if we didn't defer processing
2021 of incomplete types in this invocation.
2022
2a9d769a
OH
20232011-04-01 Olivier Hainque <hainque@adacore.com>
2024 Nicolas Setton <setton@adacore.com>
2025 Eric Botcazou <ebotcazou@adacore.com>
2026
2027 * gcc-interface/misc.c (gnat_descriptive_type): New function.
2028 (LANG_HOOKS_DESCRIPTIVE_TYPE): Redefine to gnat_descriptive_type.
2029
2438d7a6
KT
20302011-03-28 Kai Tietz <ktietz@redhat.com>
2031
333d8aff 2032 * gcc-interface/Makefile.in (SO_LIB): Handle multilib build for native
80ec8b4c
EB
2033 Windows targets.
2034 (EH_MECHANISM): Use GCC exception mechanism for native Windows targets.
2035 * system-mingw.ads (System): Change ZCX_By_Default default to True.
333d8aff 2036
80ec8b4c 2037 * raise-gcc.c (PERSONALITY_FUNCTION): Add prototype.
2438d7a6 2038
8ad150f6
TG
20392011-03-28 Tristan Gingold <gingold@adacore.com>
2040
2041 PR ada/44431
80ec8b4c
EB
2042 * gcc-interface/Make-lang.in (ada/b_gnat1.adb): Replace ada/b_gnat1.c.
2043 Use ada output of gnatbind.
8ad150f6
TG
2044 (ada/b_gnatb.adb): Ditto.
2045 (ada/b_gnat1.o, ada/b_gnatb.o): New rules.
2046 (ada.mostlyclean, ada.stage1)
2047 (ada.stage2, ada.stage3, ada.stage4, ada.stageprofile)
2048 (ada.stagefeedback): Adjust.
80ec8b4c 2049 * gcc-interface/Makefile.in (b_gnatl.adb): Replace b_gnatl.c.
8ad150f6
TG
2050 Use ada output of gnatbind.
2051 (b_gnatm.adb): Ditto.
2052 (b_gnatl.o, b_gnatm.o): New rules.
2053
51c7954d
EB
20542011-03-26 Eric Botcazou <ebotcazou@adacore.com>
2055
2056 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL
2057 for the padded type built to support a specified size or alignment.
2058
6ddf9843
EB
20592011-03-26 Eric Botcazou <ebotcazou@adacore.com>
2060
2061 * gcc-interface/gigi.h (finalize_from_with_types): Adjust comment.
2062 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer
2063 unconditionally to the end of the unit when the designated type is
2064 limited_with'ed.
2065 <all>: Rename local variable. Attempt to un-defer types only and do it
2066 for limited_with'ed types as well.
2067 (finalize_from_with_types): Adjust comment. Rename variable and tidy.
2068 * gcc-interface/trans.c (Compilation_Unit_to_gnu): Use GNAT_UNIT
2069 consistently and remove redundant call to finalize_from_with_types.
2070
5daed84a
EB
20712011-03-26 Eric Botcazou <ebotcazou@adacore.com>
2072
2073 * inline.adb (Back_End_Cannot_Inline): Lift restriction on calls to
2074 subprograms without a previous spec declared in the same unit.
2075 * gcc-interface/trans.c (Compilation_Unit_to_gnu): Process inlined
2076 subprograms at the end of the unit instead of at the beginning.
2077 * gcc-interface/utils.c (create_subprog_decl): Check that the entity
2078 isn't public for the special handling of non-inline functions nested
2079 inside inline external functions.
2080
0edf1bb2
JL
20812011-03-25 Jeff Law <law@redhat.com>
2082
5daed84a 2083 * gcc-interface/utils.c (def_fn_type): Add missing va_end.
0edf1bb2 2084
e3c4580e
EB
20852011-03-24 Eric Botcazou <ebotcazou@adacore.com>
2086
2087 * einfo.ads (Size_Depends_On_Discriminant): Adjust description.
2088 * layout.adb (Compute_Size_Depends_On_Discriminant): New procedure
2089 to compute Set_Size_Depends_On_Discriminant.
2090 (Layout_Type): Call it on array types in back-end layout mode.
2091 * sem_util.adb (Requires_Transient_Scope): Return true for array
2092 types only if the size depends on the value of discriminants.
2093 * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Use the RHS
2094 type if the RHS is a call to a function that returns an unconstrained
2095 type with default discriminant.
2096
abbc8c7b
EB
20972011-03-24 Eric Botcazou <ebotcazou@adacore.com>
2098
2099 * gcc-interface/trans.c (gnat_to_gnu): Remove obsolete case of
2100 non-conversion to the nominal result type at the end.
2101
ddb5a105
EB
21022011-03-23 Eric Botcazou <ebotcazou@adacore.com>
2103
2104 * gcc-interface/trans.c (create_temporary): New function taken from...
2105 (create_init_temporary): ...here. Call it.
2106 (call_to_gnu): Create the temporary for the return value early, if any.
2107 Create it for a function with copy-in/copy-out parameters if there is
2108 no target; in other cases of copy-in/copy-out, use another temporary.
2109 Push the new binding level lazily. Add and rename local variables.
2110
0d853156
EB
21112011-03-23 Eric Botcazou <ebotcazou@adacore.com>
2112
2113 * gcc-interface/decl.c (validate_size): Improve comments and tweak
2114 error message.
2115 (set_rm_size): Likewise.
2116
4184ef1b
EB
21172011-03-23 Eric Botcazou <ebotcazou@adacore.com>
2118
2119 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL
2120 for the padded type built in order to support a specified alignment.
2121 Fix incorrect formatting.
2122
bf7eefab
EB
21232011-03-21 Eric Botcazou <ebotcazou@adacore.com>
2124
2125 PR bootstrap/48216
2126 * gcc-interface/decl.c (elaborate_expression_1): Localize GNU_DECL.
2127
ef0feeb2
EB
21282011-03-21 Eric Botcazou <ebotcazou@adacore.com>
2129
2130 * gcc-interface/decl.c (components_to_record): Add REORDER parameter,
2131 rename DEBUG_INFO_P into DEBUG_INFO and move P_GNU_REP_LIST parameter
2132 to the end of the list. Adjust recursive call. Rename local variable.
2133 If REORDER is true, reorder components of the record type.
2134 (gnat_to_gnu_entity): Pass OK_To_Reorder_Components flag as argument to
2135 components_to_record and adjust the parameter list.
2136
646f9414
EB
21372011-03-21 Eric Botcazou <ebotcazou@adacore.com>
2138
2139 * gcc-interface/decl.c (elaborate_expression_1): When optimization is
2140 disabled, use the variable for bounds of loop iteration scheme.
2141
62d784f7
KT
21422011-03-21 Kai Tietz <ktietz@redhat.com>
2143
2144 PR target/12171
0bad0e23 2145 * gcc-interface/utils.c (gnat_internal_attribute_table): Add column.
62d784f7 2146
f230d759
EB
21472011-03-17 Eric Botcazou <ebotcazou@adacore.com>
2148
2149 * gcc-interface/decl.c (elaborate_expression_1): Try harder to find
2150 out whether the expression is read-only. Short-circuit placeholder
2151 case and rename a couple of local variables.
2152
bb1f7929
EB
21532011-03-17 Eric Botcazou <ebotcazou@adacore.com>
2154
2155 * gcc-interface/gigi.h (smaller_form_type_p): Declare.
2156 * gcc-interface/trans.c (smaller_form_type_p): Make global and move...
2157 * gcc-interface/utils.c (smaller_form_type_p): ...to here.
2158 (convert): Deal with conversions from a smaller form type specially.
2159
400a2d24
EB
21602011-02-14 Eric Botcazou <ebotcazou@adacore.com>
2161
2162 * gcc-interface/misc.c (gnat_init_options): Do not concatenate -I and
2163 its argument, except for the special -I- switch.
2164
c26bc3ad
GP
21652011-02-12 Gerald Pfeifer <gerald@pfeifer.com>
2166
0bad0e23
EB
2167 * gnat_ugn.texi (Compiling Different Versions of Ada): Update link to
2168 "Ada Issues".
c26bc3ad 2169
07b8e910
EB
21702011-02-08 Eric Botcazou <ebotcazou@adacore.com>
2171
2172 * gcc-interface/Makefile.in (x86-64 darwin): Handle multilibs.
2173
31a5a547
EB
21742011-02-03 Eric Botcazou <ebotcazou@adacore.com>
2175
2176 * gcc-interface/gigi.h (fill_vms_descriptor): Take GNU_TYPE instead of
2177 GNAT_FORMAL.
2178 * gcc-interface/utils2.c (fill_vms_descriptor): Move from here to...
2179 * gcc-interface/utils.c (fill_vms_descriptor): ...here. Take GNU_TYPE
2180 instead of GNAT_FORMAL. Protect the expression against multiple uses.
2181 Do not generate the check directly, instead instantiate the template
2182 check present in the descriptor.
2183 (make_descriptor_field): Move around.
2184 (build_vms_descriptor32): Build a template check in the POINTER field.
2185 (build_vms_descriptor): Remove useless suffixes.
2186 * gcc-interface/trans.c (call_to_gnu): Adjust fill_vms_descriptor call.
2187
dcf25f59
EB
21882011-01-26 Eric Botcazou <ebotcazou@adacore.com>
2189
2190 PR bootstrap/47467
2191 * targext.c: Include target files if IN_RTS is defined.
2192
0418e131
RG
21932011-01-26 Richard Guenther <rguenther@suse.de>
2194
2195 PR bootstrap/47467
2196 * targext.c: Include config.h.
2197 * gcc-interface/Make-lang.in (ada/targext.o): Add $(CONFIG_H)
2198 dependency.
2199
c6eecbd8
PO
22002011-01-04 Pascal Obry <obry@adacore.com>
2201 Eric Botcazou <ebotcazou@adacore.com>
2202
2203 * gcc-interface/decl.c: Disable Stdcall convention handling for 64-bit.
2204
2d3c7e4f
EB
22052011-01-04 Eric Botcazou <ebotcazou@adacore.com>
2206
2207 * gcc-interface/trans.c (Case_Statement_to_gnu): Put the SLOC of the
2208 end-of-case on the end label and its associated gotos, if any.
2209
0394741f
EB
22102011-01-04 Eric Botcazou <ebotcazou@adacore.com>
2211
2212 * gcc-interface/trans.c (Subprogram_Body_to_gnu): Evaluate the
2213 expressions of the parameter cache within the statement group of
2214 the CICO mechanism.
2215
2a02d090
OH
22162011-01-04 Olivier Hainque <hainque@adacore.com>
2217 Eric Botcazou <ebotcazou@adacore.com>
2218
2219 * gcc-interface/trans.c (BLOCK_SOURCE_END_LOCATION): Provide default.
2220 (set_end_locus_from_node): New function.
2221 (Subprogram_Body_to_gnu): Use it to mark both the inner BIND_EXPR we
2222 make and the function end_locus.
2223 (Compilation_Unit_to_gnu): Call it instead of a straight Sloc_to_locus
2224 for the elaboration subprogram.
2225 (set_gnu_expr_location_from_node) <default case>: Use it to attempt to
2226 set the end_locus of the expression as well.
2227
89f5e978
EB
22282011-01-04 Eric Botcazou <ebotcazou@adacore.com>
2229
2230 PR ada/47131
2231 * gcc-interface/trans.c (Identifier_to_gnu): In SJLJ mode, do not make
2232 variables that are referenced in exception handlers volatile.
2233
2234
ad41bd84 2235\f
797103eb 2236Copyright (C) 2011 Free Software Foundation, Inc.
ad41bd84
JM
2237
2238Copying and distribution of this file, with or without modification,
2239are permitted in any medium without royalty provided the copyright
2240notice and this notice are preserved.