]> gcc.gnu.org Git - gcc.git/blame - gcc/ada/ChangeLog
errout.adb (First_Node): minor renaming
[gcc.git] / gcc / ada / ChangeLog
CommitLineData
4c60de0c
YM
12011-08-02 Yannick Moy <moy@adacore.com>
2
3 * errout.adb (First_Node): minor renaming
4 * restrict.adb (Check_Formal_Restriction): put restriction warning on
5 first node.
6
f5afb270
AC
72011-08-02 Yannick Moy <moy@adacore.com>
8
9 * sem_res.adb (Resolve_Logical_Op): ensure N is a binary operator
10 before accessing operands.
11 * sem_util.adb (Is_SPARK_Initialization_Expr): follow original nodes to
12 decide whether an initialization expression respects SPARK rules, as
13 the plain node is the expanded one. This allows for more valid warnings
14 to be issued.
15 * gnat_rm.texi: Minor update.
16
172011-08-02 Arnaud Charlet <charlet@adacore.com>
18
19 * sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Revert
20 previous change.
21
222011-08-02 Robert Dewar <dewar@adacore.com>
23
24 * sem_ch3.adb, sem_ch4.adb: Minor reformatting.
25
262011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
27
28 * exp_ch5.adb (Expand_Iterator_Loop): Reformatting. Wrap the original
29 loop statements and the element renaming declaration with a block when
30 the element type is controlled.
31
322011-08-02 Yannick Moy <moy@adacore.com>
33
34 * sinfo.ads: Minor formatting.
35
362011-08-02 Ed Schonberg <schonberg@adacore.com>
37
38 * sem_aggr.adb (Add_Association): if the association has a box and no
39 expression, use the Sloc of the aggregate itself for the new
40 association.
41 * errout.adb (First_Node): Exclude nodes with no Sloc, and always use
42 the Original_Node.
43
db72f10a
AC
442011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
45
46 * exp_ch5.adb (Expand_Iterator_Loop): Code cleanup and refactoring.
47 When a container is provided via a function call, generate a renaming
48 of the function result. This avoids the creation of a transient scope
49 and the premature finalization of the container.
50 * exp_ch7.adb (Is_Container_Cursor): Removed.
51 (Wrap_Transient_Declaration): Remove the supression of the finalization
52 of the list controller when the declaration denotes a container cursor,
53 it is not needed.
54
552011-08-02 Yannick Moy <moy@adacore.com>
56
57 * restrict.adb (Check_Formal_Restriction): only issue a warning if the
58 node is from source, instead of the original node being from source.
59 * sem_aggr.adb
60 (Resolve_Array_Aggregate): refine the check for a static expression, to
61 recognize also static ranges
62 * sem_ch3.adb, sem_ch3.ads (Analyze_Component_Declaration,
63 Array_Type_Declaration): postpone the test for the type being a subtype
64 mark after the type has been resolved, so that component-selection and
65 expanded-name are discriminated.
66 (Make_Index, Process_Range_Expr_In_Decl): add a parameter In_Iter_Schm
67 to distinguish the case of an iteration scheme, so that an error is
68 issed on a non-static range in SPARK except in an iteration scheme.
69 * sem_ch5.adb (Analyze_Iteration_Scheme): call Make_Index with
70 In_Iter_Schm = True.
71 * sem_ch6.adb (Analyze_Subprogram_Specification): refine the check for
72 user-defined operators so that they are allowed in renaming
73 * sem_ch8.adb
74 (Find_Selected_Component): refine the check for prefixing of operators
75 so that they are allowed in renaming. Move the checks for restrictions
76 on selector name after analysis discriminated between
77 component-selection and expanded-name.
78 * sem_res.adb (Resolve_Op_Concat_Arg): do not issue a warning on
79 concatenation argument of string type if it is static.
80 * sem_util.adb, sem_util.ads
81 (Check_Later_Vs_Basic_Declarations): add a new function
82 Is_Later_Declarative_Item to decice which declarations are allowed as
83 later items, in the two different modes Ada 83 and SPARK. In the SPARK
84 mode, add that renamings are considered as later items.
85 (Enclosing_Package): new function to return the enclosing package
86 (Enter_Name): correct the rule for homonyms in SPARK
87 (Is_SPARK_Initialization_Expr): default to returning True on nodes not
88 from source (result of expansion) to avoid issuing wrong warnings.
89
902011-08-02 Ed Schonberg <schonberg@adacore.com>
91
92 * errout.adb: On anything but an expression First_Node returns its
93 argument.
94
23685ae6
AC
952011-08-02 Pascal Obry <obry@adacore.com>
96
97 * prj-proc.adb, make.adb, makeutl.adb: Minor reformatting.
98
992011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
100
101 * exp_ch5.adb (Expand_Iterator_Loop): Code cleanup and reorganization.
102 Set the associated loop as the related expression of internally
103 generated cursors.
104 * exp_ch7.adb (Is_Container_Cursor): New routine.
105 (Wrap_Transient_Declaration): Supress the finalization of the list
106 controller when the declaration denotes a container cursor.
107
1082011-08-02 Yannick Moy <moy@adacore.com>
109
110 * opt.ads (SPARK_Mode): update comment, SPARK_Mode only set through
111 command line now.
112 * par-ch3.adb (P_Delta_Constraint): remove check in SPARK mode that the
113 expression is a simple expression. This check cannot be performed in
114 the semantics, so just drop it.
115 (P_Index_Or_Discriminant_Constraint): move check that the index or
116 discriminant is a subtype mark to Analyze_Subtype_Declaration in the
117 semantics. Other cases were previously checked in the semantics.
118 * par-ch4.adb (P_Name): move checks that a selector name is not
119 character literal or an operator symbol to Find_Selected_Component in
120 the semantics
121 * par-ch5.adb (Parse_Decls_Begin_End): move check that basic
122 declarations are not placed after later declarations in a separate
123 procedure in Sem_Util (possibly not the best choice?), to be used both
124 during parsing, for Ada 83 mode, and during semantic analysis, for
125 SPARK mode.
126 * par-endh.adb (Check_End): move check that end label is not missing
127 to Process_End_Label in the semantics
128 * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings): remove
129 the special case for SPARK restriction
130 * par.adb: use and with Sem_Util, for use in Parse_Decls_Begin_End
131 * restrict.adb, restrict.ads (Check_Formal_Restriction): add a
132 parameter Force to issue the error message even on internal node (used
133 for generated end label). Call Check_Restriction to check when an error
134 must be issued. In SPARK mode, issue an error message even if the
135 restriction is not set.
136 (Check_Restriction): new procedure with an additional out parameter to
137 inform the caller that a message has been issued
138 * sem_aggr.adb: Minor modification of message
139 * sem_attr.adb (Analyze_Attribute): call Check_Formal_Restriction
140 instead of issuing an error message directly
141 * sem_ch3.adb (Analyze_Declarations): move here the check that basic
142 declarations are not placed after later declarations, by calling
143 Check_Later_Vs_Basic_Declarations
144 (Analyze_Subtype_Declaration): move here the check that an index or
145 discriminant constraint must be a subtype mark. Change the check that
146 a subtype of String must start at one so that it works on subtype marks.
147 * sem_ch4.adb (Analyze_Call): move here the check that a named
148 association cannot follow a positional one in a call
149 * sem_ch5.adb (Check_Unreachable_Code): call Check_Formal_Restriction
150 instead of issuing an error message directly
151 * sem_ch8.adb (Find_Selected_Component): move here the check that a
152 selector name is not a character literal or an operator symbol. Move
153 here the check that the prefix of an expanded name cannot be a
154 subprogram or a loop statement.
155 * sem_util.adb, sem_util.ads (Check_Later_Vs_Basic_Declarations): new
156 procedure called from parsing and semantics to check that basic
157 declarations are not placed after later declarations
158 (Process_End_Label): move here the check that end label is not missing
159
1602011-08-02 Arnaud Charlet <charlet@adacore.com>
161
162 * sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Ignore enum
163 representation clause in codepeer mode, since it confuses CodePeer and
164 does not bring useful info.
165
1662011-08-02 Ed Falis <falis@adacore.com>
167
168 * init.c: initialize fp hw on MILS.
169
1702011-08-02 Ed Schonberg <schonberg@adacore.com>
171
172 * errout.adb (First_Node): for bodies, return the node itself (small
173 optimization). For other nodes, do not check source_unit if the node
174 comes from Standard.
175
d2d9cc22
AC
1762011-08-02 Robert Dewar <dewar@adacore.com>
177
178 * exp_ch3.adb: Minor comment additions.
179 * sem_ch13.adb: Minor reformatting.
180
1812011-08-02 Pascal Obry <obry@adacore.com>
182
183 * make.adb, makeutl.adb: Removes some superfluous directory separator.
184
a01b9df6
AC
1852011-08-02 Robert Dewar <dewar@adacore.com>
186
187 * sem_attr.adb: Minor reformatting.
188
1892011-08-02 Robert Dewar <dewar@adacore.com>
190
191 * einfo.adb (Has_Default_Aspect): Replaces Has_Default_Value
192 (Has_Default_Component_Value): Removed
193 * einfo.ads Comment updates
194 (Has_Default_Aspect): Replaces Has_Default_Value
195 (Has_Default_Component_Value): Removed
196 * exp_ch13.adb
197 (Expand_N_Freeze_Entity): Handle Default[_Component]_Value aspects
198 * exp_ch3.adb
199 (Build_Array_Init_Proc): Handle Default_[Component_]Value aspects
200 (Get_Simple_Init_Val): Handle Default_Value aspect
201 (Needs_Simple_Initialization): Handle Default_Value aspect
202 * exp_ch3.ads: Needs_Simple_Initialization
203 * freeze.adb (Freeze_Entity): Handle Default_[Component_]Value aspect
204 * par-prag.adb (Pragma_Default[_Component]Value) Removed
205 * sem_ch13.adb
206 (Analyze_Aspect_Specifications): Fix Default[_Component]_Value aspects
207 * sem_prag.adb (Pragma_Default[_Component]Value) Removed
208 * snames.ads-tmpl (Pragma_Default[_Component]Value) Removed
209
2102011-08-02 Ed Schonberg <schonberg@adacore.com>
211
212 * sem_ch5.adb (Analyze_Iterator_Specification): use base type to locate
213 package containing iteration primitives.
214 exp_ch5.adb (Expand_Iterator_Loop): ditto.
215
75c90775
AC
2162011-08-02 Ed Schonberg <schonberg@adacore.com>
217
218 * sem_ch5.adb (Analyze_Iteration_Scheme): For an Ada2012 iterator with
219 "of", pre-analyze expression in case it is a function call with
220 finalization actions that must be placed ahead of the loop.
221 * exp_ch5.adb (Expand_Iterator_Loop): If condition_actions are present
222 on an Ada2012 iterator, insert them ahead of the rewritten loop.
223
2242011-08-02 Geert Bosch <bosch@adacore.com>
225
226 * cstand.adb (Create_Float_Types): Only consider C's long double for
227 Long_Long_Float, in addition to double.
228
ded8909b
AC
2292011-08-02 Robert Dewar <dewar@adacore.com>
230
231 * sem_ch3.adb, sem_ch5.adb, sem_type.adb, switch-c.adb, switch-c.ads,
232 sem_prag.adb, sem_util.adb, sem_util.ads, sem_res.adb, warnsw.ads,
233 prepcomp.ads, cstand.adb, stand.ads, a-calfor.adb, s-stusta.adb:
234 Minor reformatting.
235
2362011-08-02 Ed Schonberg <schonberg@adacore.com>
237
238 * sem_attr.adb: handle properly 'Result when it is a prefix of an
239 indexed component.
240
2412011-08-02 Javier Miranda <miranda@adacore.com>
242
243 * einfo.ads, einfo.adb
244 (Original_Access_Type): Move this attribute to Node26 since there was
245 an undocumented use of Node21 in E_Access_Subprogram_Type entities
246 which causes conflicts and breaks the generation of the .NET compiler.
247 (Interface_Name): Add missing documentation on JGNAT only uses of
248 this attribute.
249
70c34e1c
AC
2502011-08-02 Geert Bosch <bosch@adacore.com>
251
252 * cstand.adb (Back_End_Float_Types): Use Elist instead of Nlist
253 (Find_Back_End_Float_Type): Likewise
254 (Create_Back_End_Float_Types): Likewise
255 (Create_Float_Types): Likewise
256 (Register_Float_Type): Likewise
257 * sem_ch3.adb (Floating_Point_Type_Declaration): Use Elist instead of
258 Nlist and split out type selection in new local Find_Base_Type function.
259 * sem_prag.adb (Process_Import_Predefined_Type): Use Elist instead of
260 Nlist
261 * stand.ads (Predefined_Float_Types): Use Elist instead of Nlist
262
2632011-08-02 Robert Dewar <dewar@adacore.com>
264
265 * inline.adb: Minor code reorganization (put Get_Code_Unit_Entity in
266 alpha order).
267 * opt.ads: Minor comment change.
268 * sem_ch12.adb: Minor code reorganization.
269
b715bc59
AC
2702011-08-02 Gary Dismukes <dismukes@adacore.com>
271
272 * sem_ch3.adb (Complete_Private_Subtype): Don't append the private
273 subtype's list of rep items to the list on the full subtype in the case
274 where the lists are the same.
275
2762011-08-02 Geert Bosch <bosch@adacore.com>
277
278 * switch-c.adb (Free): New deallocation procedure to avoid implicitly
279 using the one from System.Strings, which also deallocates all strings.
280
002bdd68
AC
2812011-08-02 Geert Bosch <bosch@adacore.com>
282
283 * gcc-interface/gigi.h, gcc-interface/misc.c (enumerate_modes): New
284 function.
285 * gcc-interface/Make-lang.in: Update dependencies.
286
2872011-08-02 Olivier Hainque <hainque@adacore.com>
288
289 * gcc-interface/trans.c (Subprogram_Body_to_gnu): Set the function
290 end_locus.
291
499769ec
AC
2922011-08-02 Javier Miranda <miranda@adacore.com>
293
294 * sem_ch3.adb (Check_Anonymous_Access_Components): Create extra formals
295 associated with anonymous access to subprograms.
296
2972011-08-02 Geert Bosch <bosch@adacore.com>
298
299 * opt.ads
300 (Preprocessing_Symbol_Defs): Move from Prepcomp.Symbol_Definitions.
301 (Preprocessing_Symbol_Last): Move from Prepcomp.Last_Definition.
302 * prepcomp.adb (Symbol_Definitions, Last_Definition): Move to opt.ads
303 (Add_Symbol_Definition): Move to switch-c.adb
304 (Process_Command_Line_Symbol_Definitions): Adjust references to above.
305 * prepcomp.ads: Remove dependency on Ada.Unchecked_Deallocation.
306 (Add_Symbol_Definition): Move to switch-c.adb.
307 * sem_ch13.adb, sem_prag.adb: Add dependency on Warnsw.
308 * sem_warn.adb
309 (Set_Dot_Warning_Switch, Set_GNAT_Mode_Warnings, Set_Warning_Switch):
310 Move to warnsw.adb.
311 * sem_warn.ads (Warn_On_Record_Holes, Warn_On_Overridden_Size,
312 Set_Dot_Warning_Switch, Set_GNAT_Mode_Warnings, Set_Warning_Switch):
313 Move to warnsw.adb.
314 * switch-c.adb: Replace dependency on Prepcomp and Sem_Warn by Warnsw.
315 (Add_Symbol_Definition): Moved from Prepcomp.
316 * switch-c.ads: Update copyright notice. Use String_List instead of
317 Argument_List, removing dependency on System.OS_Lib.
318
aa1e353a
AC
3192011-08-02 Yannick Moy <moy@adacore.com>
320
321 * sem_ch3.adb (Analyze_Object_Declaration): issue an error in formal
322 mode on initialization expression which does not respect SPARK
323 restrictions.
324 * sem_util.adb, sem_util.ads (Is_SPARK_Initialization_Expr): determines
325 if the tree referenced by its argument represents an initialization
326 expression in SPARK, suitable for initializing an object in an object
327 declaration.
328
3292011-08-02 Javier Miranda <miranda@adacore.com>
330
331 * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Link the
332 internally generated access to subprogram with its associated protected
333 subprogram type.
334 * einfo.ads, einfo.adb (Original_Access_Type): New attribute.
335
15b682ca
GB
3362011-08-02 Geert Bosch <bosch@adacore.com>
337
338 * cstand.adb (Register_Float_Type): Print information about type to
339 register, if the Debug_Flag_Dot_B is set.
340 * debug.adb (Debug_Flag_Dot_B): Document d.b debug option.
341 * rtsfind.ads (RE_Max_Base_Digits): New run time entity.
342 * sem_ch3.adb (Floating_Point_Type_Declaration): Allow declarations
343 with a requested precision of more than Max_Digits digits and no more
344 than Max_Base_Digits digits, if a range specification is present and the
345 Predefined_Float_Types list has a suitable type to derive from.
346 * sem_ch3.adb (Rep_Item_Too_Early): Avoid generating error in the
347 case of type completion with pragma Import
348 * sem_prag.adb
349 (Process_Import_Predefined_Type): Processing to complete a type
350 with pragma Import. Currently supports floating point types only.
351 (Set_Convention_From_Pragma): Do nothing without underlying type.
352 (Process_Convention): Guard against absence of underlying type,
353 which may happen when importing incomplete types.
354 (Process_Import_Or_Interface): Handle case of importing predefined
355 types. Tweak error message.
356
f8726f2b
AC
3572011-08-02 Eric Botcazou <ebotcazou@adacore.com>
358
359 * inline.adb (Add_Inlined_Body): Adjust check for library-level inlined
360 functions to previous change. Reorganize code slightly.
361
3622011-08-02 Geert Bosch <bosch@adacore.com>
363
364 * back_end.ads (Register_Type_Proc): New call back procedure type for
365 allowing the back end to provide information about available types.
366 (Register_Back_End_Types): New procedure to register back end types.
367 * back_end.adb (Register_Back_End_Types): Call the back end to enumerate
368 available types.
369 * cstand.adb (Back_End_Float_Types): New list for floating point types
370 supported by the back end.
371 (Build_Float_Type): Add extra parameter for Float_Rep_Kind.
372 (Copy_Float_Type): New procedure to make new copies of predefined types.
373 (Register_Float_Type): New call back procedure to populate the BEFT list
374 (Find_Back_End_Float_Type): New procedure to find a BEFT by name
375 (Create_Back_End_Float_Types): New procedure to populate the BEFT list.
376 (Create_Float_Types): New procedure to create entities for floating
377 point types predefined in Standard, and put these and any remaining
378 BEFTs on the Predefined_Float_Types list.
379 * stand.ads (Predefined_Float_Types): New list for predefined floating
380 point types that do not have declarations in package Standard.
381
feecad68
AC
3822011-08-02 Eric Botcazou <ebotcazou@adacore.com>
383
384 * inline.adb (Get_Code_Unit_Entity): New local function. Returns the
385 entity node for the unit containing the parameter.
386 (Add_Inlined_Body): Use it to find the unit containing the subprogram.
387 (Add_Inlined_Subprogram): Likewise.
388 * gcc-interface/Make-lang.in: Update dependencies.
389
3902011-08-02 Thomas Quinot <quinot@adacore.com>
391
392 * s-stusta.adb (Print): Make sure Pos is always initialized to a
393 suitable value.
394
12f0c50c
AC
3952011-08-02 Geert Bosch <bosch@adacore.com>
396
397 * a-calfor.adb (Image): Simplify, removing unnecessary uses of 'Image.
398
3992011-08-02 Eric Botcazou <ebotcazou@adacore.com>
400
401 * sem_type.adb (Covers): Move trivial case to the top and reuse the
402 computed value of Base_Type.
403
4042011-08-02 Yannick Moy <moy@adacore.com>
405
406 * restrict.adb (Check_Restriction): issue an error for any use of
407 class-wide, even if the No_Dispatch restriction is not set.
408 * sem_aggr.adb: Correct typos in comments and messages in formal mode
409 * sem_ch3.adb (Process_Full_View): issue an error in formal mode is,
410 when completing a private extension, the type named in the private part
411 is not the same as that named in the visible part.
412 * sem_res.adb (Resolve_Call): issue an error in formal mode on the use
413 of an inherited primitive operations of a tagged type or type extension
414 that returns the tagged type.
415 * sem_util.adb, sem_util.ads (Is_Inherited_Operation_For_Type): new
416 function which returns True for an implicit operation inherited by the
417 derived type declaration for the argument type.
418 (Is_SPARK_Object_Reference): move to appropriate place in alphabetic
419 order.
420
fb86fe11
ES
4212011-08-02 Ed Schonberg <schonberg@adacore.com>
422
423 * sem_ch5.adb (Pre_Analyze_Range): new procedure extracted from
424 Process_Bounds, to perform analysis with expansion of a range or an
425 expression that is the iteration scheme for a loop.
426 (Analyze_Iterator_Specification): If domain of iteration is given by a
427 function call with a controlled result, as is the case if call returns
428 a predefined container, ensure that finalization actions are properly
429 generated.
430 * par-ch3.adb: accept Ada2012 iterator form in P_Discrete_Range.
431
62be5d0a
JM
4322011-08-02 Javier Miranda <miranda@adacore.com>
433
434 * sem_ch5.adb (Analyze_Iteration_Scheme): Fix typo.
435 * gcc-interface/Make-lang.in: Update dependencies.
436
4372011-08-02 Javier Miranda <miranda@adacore.com>
438
439 * sem_util.ads, sem_util.adb (Is_Variable): Add a new formal to
440 determine if the analysis is performed using N or Original_Node (N).
441 * exp_util.adb (Side_Effect_Free): Code cleanup since the new
442 functionality of routine Is_Variable avoids code duplication.
443 * checks.adb (Determine_Range): Handle temporaries generated by
444 Remove_Side_Effects.
445
4462011-08-02 Javier Miranda <miranda@adacore.com>
447
448 * exp_ch4.adb (Expand_N_Quantified_Expression): Force reanalysis and
449 expansion of the condition. Required since the previous analysis was
450 done with expansion disabled (see Resolve_Quantified_Expression) and
451 hence checks were not inserted and record comparisons have not been
452 expanded.
453
a20f4389
AC
4542011-08-02 Ed Falis <falis@adacore.com>
455
456 * s-taprop-vxworks.adb, s-intman-vxworks.adb, s-intman-vxworks.ads:
457 Update header.
458
4592011-08-02 Bob Duff <duff@adacore.com>
460
461 * opt.ads: Minor comment fix.
462
4632011-08-02 Bob Duff <duff@adacore.com>
464
465 * sem_ch12.adb (Analyze_Package_Instantiation,
466 Analyze_Subprogram_Instantiation): Turn off style checking while
467 analyzing an instance. Whatever style checks that apply to the generic
468 unit should apply, so it makes no sense to apply them in an instance.
469 This was causing trouble when compiling an instance of a runtime
470 unit that violates the -gnatyO switch.
471 * stylesw.adb (Set_Style_Check_Options): "when 'O' =>" was missing from
472 one of the two case statements, causing spurious errors.
473
4742011-08-02 Robert Dewar <dewar@adacore.com>
475
476 * uname.adb: Minor reformatting.
477 * gnatcmd.adb: Minor reformatting.
478 * exp_attr.adb: Minor reformatting.
479
90878b12
AC
4802011-08-02 Ed Schonberg <schonberg@adacore.com>
481
482 * exp_ch5.adb (Expand_N_Assignment_Statement): under restriction
483 No_Dispatching_Calls, do not look for the Assign primitive, because
484 predefined primitives are not created in this case.
485
4862011-08-02 Bob Duff <duff@adacore.com>
487
488 * stylesw.ads: Minor comment fixes.
489
4902011-08-02 Robert Dewar <dewar@adacore.com>
491
492 * freeze.adb (Add_To_Result): New procedure.
493
4942011-08-02 Jose Ruiz <ruiz@adacore.com>
495
496 * exp_attr.adb (Find_Stream_Subprogram): When using a configurable run
497 time, if the specific run-time routines for handling streams of strings
498 are not available, use the default mechanism.
499
5002011-08-02 Arnaud Charlet <charlet@adacore.com>
501
502 * s-regpat.ads: Fix typo.
503
5042011-08-02 Vincent Celier <celier@adacore.com>
505
506 * prj-conf.adb (Get_Or_Create_Configuration_File): If On_Load_Config is
507 not null, call it to create the in memory config project file without
508 parsing an existing default config project file.
509
5102011-08-02 Eric Botcazou <ebotcazou@adacore.com>
511
512 * atree.adb (Allocate_Initialize_Node): Remove useless temporaries.
513
5142011-08-02 Ed Schonberg <schonberg@adacore.com>
515
516 * sem_elim.adb: an abstract subprogram does not need an eliminate
517 pragma for its descendant to be eliminable.
518
5192011-08-02 Ed Falis <falis@adacore.com>
520
521 * init.c: revert to handling before previous checkin for VxWorks
522 * s-intman-vxworks.adb: delete unnecessary declarations related to
523 using Ada interrupt facilities for handling signals.
524 Delete Initialize_Interrupts. Use __gnat_install_handler instead.
525 * s-intman-vxworks.ads: Import __gnat_install_handler as
526 Initialize_Interrupts.
527 * s-taprop-vxworks.adb: Delete Signal_Mask.
528 (Abort_Handler): change construction of mask to unblock exception
529 signals.
530
273adcdf
AC
5312011-08-02 Jerome Guitton <guitton@adacore.com>
532
533 * a-except-2005.adb (Raise_From_Signal_Handler): Call
534 Debug_Raise_Exception before propagation starts.
535
5362011-08-02 Eric Botcazou <ebotcazou@adacore.com>
537
538 * exp_ch6.adb (Expand_Call): Guard restriction checks with a call
539 to Restriction_Check_Required.
540 * sem_ch3.adb (Analyze_Object_Declaration): Likewise.
541 * sem_res.adb (Resolve_Call): Likewise.
542 * sem_attr.adb (Check_Stream_Attribute): Likewise.
543
5442011-08-02 Bob Duff <duff@adacore.com>
545
546 * stylesw.ads: Update comment.
547 * style.adb: Minor: Use Error_Msg_NE instead of Error_Msg_N.
548 * errout.ads: Remove obsolete comment.
549
5502011-08-02 Javier Miranda <miranda@adacore.com>
551
552 * einfo.ads, einfo.adb (Is_Safe_To_Reevaluate): new function.
553 (Set_Is_Safe_To_Reevaluate): new procedure.
554 * sem_ch5.adb (Analyze_Assignment): Add one assertion to ensure that no
555 assignment is allowed on safe-to-reevaluate variables.
556 (Analyze_Iteration_Schine.Process_Bounds.One_Bound): Decorate the
557 temporary created to remove side effects in expressions that use
558 the secondary stack as safe-to-reevaluate.
559 * exp_util.adb (Side_Effect_Free): Add missing code to handle well
560 variables that are not true constants.
561
6320f5e1
AC
5622011-08-02 Robert Dewar <dewar@adacore.com>
563
564 * sem_ch5.adb, sem_ch7.adb, einfo.ads, sem_util.adb, sem_util.ads,
565 sem_res.adb, sem_ch6.adb: Minor reformatting.
566
5672011-08-02 Jerome Guitton <guitton@adacore.com>
568
569 * a-except-2005.adb (Raise_Current_Excep): Remove obsolete dead code.
570
2fe829ae
ES
5712011-08-02 Ed Schonberg <schonberg@adacore.com>
572
573 * sem_ch6.adb (New_Overloaded_Entity, Check_Overriding_Indicator): Do
574 not set Overridden_Operation if subprogram is an initialization
575 procedure.
576
e24329cd
YM
5772011-08-02 Yannick Moy <moy@adacore.com>
578
579 * par-ch6.adb: Correct obsolete name in comments
580 * restrict.adb, restrict.ads (Check_Formal_Restriction): new function
581 which takes two message arguments (existing function takes one), with
582 second message used for continuation.
583 * sem_ch5.adb (Analyze_Block_Statement): in formal mode, only reject
584 block statements that originate from a source block statement, not
585 generated block statements
586 * sem_ch6.adb (Analyze_Function_Call): rename L into Actuals, for
587 symmetry with procedure case
588 * sem_ch7.adb (Check_One_Tagged_Type_Or_Extension_At_Most): new
589 function to issue an error in formal mode if a package specification
590 contains more than one tagged type or type extension.
591 * sem_res.adb (Resolve_Actuals): in formal mode, check that actual
592 parameters matching formals of tagged types are objects (or ancestor
593 type conversions of objects), not general expressions. Issue an error
594 on view conversions that are not involving ancestor conversion of an
595 extended type.
596 (Resolve_Type_Conversion): in formal mode, issue an error on the
597 operand of an ancestor type conversion which is not an object
598 * sem_util.adb, sem_util.ads (Find_Actual): extend the behavior of the
599 procedure so that it works also for actuals of function calls
600 (Is_Actual_Tagged_Parameter): new function which determines if its
601 argument is an actual parameter of a formal of tagged type in a
602 subprogram call
603 (Is_SPARK_Object_Reference): new function which determines if the tree
604 referenced by its argument represents an object in SPARK
605
176dadf6
AC
6062011-08-02 Robert Dewar <dewar@adacore.com>
607
608 * sem_ch3.adb: Minor reformatting
609 Minor comment addition
610 Minor error msg text change
611
6122011-08-02 Javier Miranda <miranda@adacore.com>
613
614 * sem_ch5.adb (Analyze_Iteration_Scheme.Uses_Secondary_Stack): New
615 function. Used to be more precise when we generate a variable plus one
616 assignment to remove side effects in the evaluation of the Bound
617 expressions.
618 (Analyze_Iteration_Scheme): Clean attribute analyzed in all the nodes
619 of the bound expression to force its re-analysis and thus expand the
620 associated transient scope (if required). Code cleanup replacing the
621 previous code that declared the constant entity by an invocation to
622 routine Force_Evaluation which centralizes this work in the frontend.
623
d8b962d8
AC
6242011-08-02 Robert Dewar <dewar@adacore.com>
625
626 * einfo.adb (Is_Base_Type): Improve efficiency by using a flag table
627 (Base_Type): Now uses improved Is_Base_Type function
628 * einfo.ads (Base_Type): Inline this function
629
6302011-08-02 Robert Dewar <dewar@adacore.com>
631
632 * sem_prag.adb (Analyze_Pragma): Defend against infinite recursion
633 (Analyze_Aspect_Specifications): Fix Sloc values for constructed pragmas
634
6352011-08-02 Arnaud Charlet <charlet@adacore.com>
636
637 * gcc-interface/Make-lang.in: Update dependencies.
638 * gcc-interface/Makefile.in: Use s-inmapop-vxworks.adb for all VxWorks
639 targets.
640
6412011-08-02 Yannick Moy <moy@adacore.com>
642
643 * par-ch3.adb (P_Delta_Constraint): issue an error in formal mode on
644 non-simple expression used in delta constraint
645 (P_Index_Or_Discriminant_Constraint): issue an error in formal mode on
646 index constraint which is not a subtype mark
647 * par.adb: With and use Restrict
648 * sem_ch3.adb (Analyze_Component_Declaration): issue an error in formal
649 mode on component type which is not a subtype mark and default
650 expression on component
651 (Analyze_Subtype_Declaration): issue an error in formal mode on subtype
652 of string which does not have a lower index bound equal to 1
653 (Array_Type_Declaration): issue an error in formal mode on index or
654 component type which is not a subtype mark, and on aliased keyword on
655 component
656 (Derived_Type_Declaration): issue an error in formal mode on interface,
657 limited or abstract type
658 (Record_Type_Declaration): issue an error in formal mode on interface
659 (Record_Type_Definition): issue an error in formal mode on tagged types
660 and type extensions not declared in the specification of a library unit
661 package; on null non-tagged record; on variant part
662
6632011-08-02 Vincent Celier <celier@adacore.com>
664
665 * prj-nmsc.adb (Check_Library_Attributes): Do not report Library_Dir
666 not declared for qualified library project when Library_Name is not
667 declared, but Library_Dir is.
668
6692011-08-02 Robert Dewar <dewar@adacore.com>
670
671 * sem_ch13.adb (Analyze_Aspect_Specification): Fix slocs on generated
672 pragmas (affects aspects [Component_]Default_Value
673 (Check_Aspect_At_Freeze_Point): For Component_Default_Value, use
674 component type for the resolution
675
f96b2d85
AC
6762011-08-02 Eric Botcazou <ebotcazou@adacore.com>
677
678 * einfo.adb (Base_Type): Tune implementation for speed.
679
6802011-08-02 Robert Dewar <dewar@adacore.com>
681
682 * freeze.adb: Minor reformatting.
683
8b3c6430
AC
6842011-08-02 Thomas Quinot <quinot@adacore.com>
685
686 * scos.ads: Update comments.
687
6882011-08-02 Ed Schonberg <schonberg@adacore.com>
689
690 * sem_ch3.adb (Build_Derived_Type): Inherit the convention from the
691 base type, because the parent may be a subtype of a private type whose
692 convention is established in a private part.
693
6942011-08-02 Hristian Kirtchev <kirtchev@adacore.com>
695
696 * exp_ch6.adb (Expand_N_Extended_Return_Statement): Wrap the return
697 statement in a block when the expansion of the return expression has
698 created a finalization chain.
699 * freeze.adb (Freeze_Expression): Alphabetize all choices associated
700 with the parent node.
701 Add N_Extended_Return_Statement to handle the case where a transient
702 object declaration appears in the Return_Object_Declarations list of
703 an extended return statement.
704
7052011-08-02 Matthew Gingell <gingell@adacore.com>
706
707 * adaint.c (__gnat_is_symbolic_link_attr): Supress warning on possibly
708 unused parameter 'name'.
709
7102011-08-02 Ed Schonberg <schonberg@adacore.com>
711
712 * sem_elim.adb (Set_Eliminated): If the overridden operation is an
713 inherited operation, check whether its alias, which is the source
714 operastion that it renames, has been marked eliminated.
715
cae81f17
JM
7162011-08-02 Javier Miranda <miranda@adacore.com>
717
718 * exp_util.adb (Safe_Prefixed_Reference): Do not consider safe an
719 in-mode parameter whose type is an access type since it can be used to
720 modify its designated object. Enforce code that handles as safe an
721 access type that is not access-to-constant but it is the result of a
722 previous removal of side-effects.
723 (Remove_Side_Effects): Minor code reorganization of cases which require
724 no action. Done to incorporate documentation on new cases uncovered
725 working in this ticket: no action needed if this routine was invoked
726 too early and the nodes are not yet decorated.
727 * sem_res.adb (Resolve_Slice): Minor code cleanup replacling two calls
728 to routine Remove_Side_Effects by calls to Force_Evaluation since they
729 were issued with actuals that are implicitly provided by
730 Force_Evaluation.
731
218e6dee
RD
7322011-08-02 Robert Dewar <dewar@adacore.com>
733
734 * sem_ch3.adb, sem_res.adb: Minor reformatting.
735
7a489a2b
AC
7362011-08-02 Yannick Moy <moy@adacore.com>
737
738 * sem_attr.adb (Check_Formal_Restriction_On_Attribute): new procedure
739 to issue an error in formal mode on attribute not supported in this mode
740 (Analyze_Attribute): issue errors on standard attributes not supported
741 in formal mode.
742 * sem_ch3.adb (Modular_Type_Declaration): remove obsolete part of
743 comment, and issue error in formal mode on modulus which is not a power
744 of 2.
745 (Process_Range_Expr_In_Decl): issue error in formal mode on non-static
746 range.
747 * sem_ch8.adb (Find_Type): issue error in formal mode on 'Base in
748 subtype mark.
749 * sem_res.adb (Resolve_Unary_Op): issue error in formal mode on unary
750 operator on modular type (except 'not').
751
7522011-08-02 Robert Dewar <dewar@adacore.com>
753
754 * gnat_rm.texi: Minor reformatting.
755
cb7fa356
AC
7562011-08-02 Arnaud Charlet <charlet@adacore.com>
757
758 * s-osinte-linux.ads: Minor comment update and reformatting.
759 * i-cexten.ads: Make this unit pure, as for its parent.
760 Will allow its usage in more contexts if needed.
761
7622011-08-02 Robert Dewar <dewar@adacore.com>
763
764 * s-utf_32.ads: Minor comment fix.
765
7662011-08-02 Ed Schonberg <schonberg@adacore.com>
767
768 * sem_res.adb (Resolve_Actuals): if the subprogram is a primitive
769 operation of a tagged synchronized type, handle the case where the
770 controlling argument is overloaded.
771
7722011-08-02 Yannick Moy <moy@adacore.com>
773
774 * gnat_rm.texi, opt.ads, sem_prag.adb, snames.ads-tmpl:
775 Replace pragma SPARK_95 with pragma Restrictions (SPARK)
776 * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings): set
777 SPARK mode and formal verification mode on processing SPARK restriction
778 * s-rident.ads (Restriction_Id): add SPARK restriction in those not
779 requiring consistency checking.
780
5cc9353d
RD
7812011-08-02 Robert Dewar <dewar@adacore.com>
782
783 * sem_res.adb: Minor reformatting.
784
e51537ff
RD
7852011-08-02 Robert Dewar <dewar@adacore.com>
786
787 * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
788 a-cforse.ads: Remove unneeded with of Ada.Containers
789 Remove commented out pragma Inline's
790 Move specifications of new subprograms to the actual specs
791
83fa09c5
AC
7922011-08-02 Yannick Moy <moy@adacore.com>
793
794 * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
795 a-cforse.ads: Update comments.
796
7972011-08-02 Ed Schonberg <schonberg@adacore.com>
798
799 * sem_attr.adb: add attribute name when 'Result has the wrong prefix.
800
d11cfaf8
RD
8012011-08-02 Robert Dewar <dewar@adacore.com>
802
803 * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
804 a-cforse.ads, a-cofove.ads: Minor reformatting.
805
300b98bb
AC
8062011-08-02 Claire Dross <dross@adacore.com>
807
808 * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads,
809 a-cofove.ads: Add comments.
810
8112011-08-02 Yannick Moy <moy@adacore.com>
812
813 * gnat_rm.texi: Document formal containers.
814
8152011-08-02 Emmanuel Briot <briot@adacore.com>
816
817 * g-comlin.adb (Goto_Section, Getopt): fix handling of "*" when there
818 are empty sections.
819
19fb051c
AC
8202011-08-02 Robert Dewar <dewar@adacore.com>
821
822 * mlib-prj.adb, restrict.ads, sem_aggr.adb, sem_ch12.adb: Minor
823 reformatting.
824
8252011-08-02 Robert Dewar <dewar@adacore.com>
826
827 * aspects.adb: New aspects Default_Value and Default_Component_Value
828 New format of Aspect_Names table checks for omitted entries
829 * aspects.ads: Remove mention of Aspect_Cancel and add documentation on
830 handling of boolean aspects for derived types.
831 New aspects Default_Value and Default_Component_Value
832 New format of Aspect_Names table checks for omitted entries
833 * einfo.ads, einfo.adb (Has_Default_Component_Value): New flag
834 (Has_Default_Value): New flag
835 (Has_Default_Component_Value): New flag
836 (Has_Default_Value): New flag
837 * par-ch13.adb (P_Aspect_Specifications): New format of Aspect_Names
838 table.
839 * par-prag.adb: New pragmas Default_Value and Default_Component_Value
840 * sem_ch13.adb (Analyze_Aspect_Specifications): New aspects
841 Default_Value and Default_Component_Value
842 * sem_prag.adb: New pragmas Default_Value and Default_Component_Value
843 New aspects Default_Value and Default_Component_Value
844 * snames.ads-tmpl: New pragmas Default_Value and Default_Component_Value
845 * sprint.adb: Print N_Aspect_Specification node when called from gdb
846
8472011-08-02 Vincent Celier <celier@adacore.com>
848
849 * prj-nmsc.adb (Check_Library_Attributes): For virtual library project,
850 inherit library kind.
851
8522011-08-02 Ed Schonberg <schonberg@adacore.com>
853
854 * sem_res.adb: Add guards in calls to Matching_Static_Array_Bounds.
855 Minor reformatting.
856
8572011-08-02 Robert Dewar <dewar@adacore.com>
858
859 * i-cstrin.ads: Updates to make Interfaces.C.Strings match RM
860
5f7747af
AC
8612011-08-02 Yannick Moy <moy@adacore.com>
862
863 * sem_aggr.adb (Resolve_Aggregate): Fix thinko.
864
8652011-08-02 Robert Dewar <dewar@adacore.com>
866
867 * impunit.adb: Add comment.
868
a5fe697b
AC
8692011-08-02 Yannick Moy <moy@adacore.com>
870
871 * sem_aggr.adb (Check_Qualified_Aggregate): new procedure which checks
872 qualification of aggregates in formal mode
873 (Is_Top_Level_Aggregate): returns True for an aggregate not contained in
874 another aggregate
875 (Resolve_Aggregate): complete the test that an aggregate is adequately
876 qualified in formal mode
877
8782011-08-02 Pascal Obry <obry@adacore.com>
879
880 * make.adb, bindgen.adb, gnatbind.adb: Minor reformatting.
881 * mlib-prj.adb: Supress warning when compiling binder generated file.
882 (Build_Library): Supress all warnings when compiling the binder
883 generated file.
884
bd65a2d7 8852011-08-02 Yannick Moy <moy@adacore.com>
d4487611 886
bd65a2d7
AC
887 * errout.adb, errout.ads (Check_Formal_Restriction): move procedure
888 from here...
889 * restrict.adb, restrict.ads (Check_Formal_Restriction): ...to here
890 * sem_aggr.adb, sem_ch5.adb, sem_util.adb:
891 Add with/use clauses to make Check_Formal_Restriction visible
892
8932011-08-02 Ed Schonberg <schonberg@adacore.com>
894
895 * sem_ch12.adb (Check_Generic_Actuals): handle properly actual
896 in-parameters when type of the generic formal is private in the generic
897 spec and non-private in the body.
898
8992011-08-02 Claire Dross <dross@adacore.com>
900
901 * a-cfdlli.adb, a-cfdlli.ads, a-cfhase.adb, a-cfhase.ads, a-cfhama.adb,
902 a-cfhama.ads, a-cforse.adb, a-cforse.ads, a-cforma.adb, a-cforma.ads,
903 a-cofove.adb, a-cofove.ads: New files implementing formal containers.
904 * impunit.adb, Makefile.rtl: Take new files into account.
d4487611
AC
905
9062011-08-02 Robert Dewar <dewar@adacore.com>
907
908 * sem_aggr.adb, sem_ch3.adb, sem_ch5.adb, make.adb, sem_res.adb,
909 sem_attr.adb, sem_ch6.adb, sem_ch8.adb: Minor reformatting.
910
bd434b3f
YM
9112011-08-02 Yannick Moy <moy@adacore.com>
912
913 * sem_aggr.adb (Resolve_Aggregate): disable incorrectly placed check in
914 formal mode
915 * sem_util.adb (Matching_Static_Array_Bounds): proper detection of
916 matching static array bounds, taking into account the special case of
917 string literals
918 * sem_ch3.adb: Typo in comment.
919
fe5d3068
YM
9202011-08-02 Yannick Moy <moy@adacore.com>
921
922 * errout.adb, errout.ads (Check_Formal_Restriction): new procedure
923 which issues an error in formal mode if its argument node is originally
924 from source
925 * sem_ch3.adb (Analyze_Full_Type_Declaration): move test that a type
926 has a discriminant specification so that it does not include the case
927 of derived types
928 (Derived_Type_Declaration): move here the test that a derived type has a
929 discriminant specification
930 * sem_aggr.adb (Resolve_Record_Aggregate): test the presence of the
931 first element of a component association before accessing its choices
932 (presence of component association is not enough)
933 * exp_ch6.adb (Expand_N_Subprogram_Declaration): test if a subprogram
934 declaration is a library item before accessing the next element in a
935 list, as library items are not member of lists
936 * sem_attr.adb, sem_ch11.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
937 sem_ch8.adb, sem_ch9.adb, sem_res.adb, sem_util.adb: use
938 Check_Formal_Restriction whenever possible.
939
b60a3f26
AC
9402011-08-02 Ed Schonberg <schonberg@adacore.com>
941
942 * sem_ch3.adb (Find_Type_Of_Object): In ASIS mode, create an itype
943 reference when needed.
944
9452011-08-02 Bob Duff <duff@adacore.com>
946
947 * gnat_ugn.texi: Fix typo.
948
9492011-08-02 Vincent Celier <celier@adacore.com>
950
951 * make.adb (Gnatmake): Use MLib.Tgt.Archive_Ext as the extension of
952 archive file name. Do not use the full path name of archives for Open
953 VMS.
954
eaba57fb
RD
9552011-08-02 Robert Dewar <dewar@adacore.com>
956
957 * sem_ch12.adb, sem_ch11.adb: New calling sequence for
958 Analyze_Aspect_Specifications
959 * sem_ch13.adb
960 (Analyze_Aspect_Specifications): New handling for boolean aspects
961 * sem_ch13.ads (Analyze_Aspect_Specifications): New calling sequence
962 * sem_ch3.adb, sem_ch6.adb, sem_ch7.adb, sem_ch9.adb: New calling
963 sequence for Analyze_Aspect_Specifications
964 * sem_prag.adb (Analyze_Pragma): Remove use of Aspect_Cancel entirely
965 * sinfo.ads, sinfo.adb (Aspect_Cancel): Remove, no longer used
966
9672011-08-02 Robert Dewar <dewar@adacore.com>
968
969 * freeze.adb (Freeze_Entity): Remove handling of delayed boolean
970 aspects, since these no longer exist.
971
9722011-08-02 Robert Dewar <dewar@adacore.com>
973
974 * par-ch13.adb (Aspect_Specifications_Present): Always return false on
975 semicolon, do not try to see if there are aspects following it.
976 * par-ch3.adb (P_Declarative_Items): Better message for unexpected
977 aspect spec.
978
8830d1d2
AC
9792011-08-02 Robert Dewar <dewar@adacore.com>
980
981 * sem_ch8.adb, aspects.ads: Minor reformatting.
982
9832011-08-02 Eric Botcazou <ebotcazou@adacore.com>
984
985 * sem_ch13.ads (Analyze_Aspect_Specification): Add pragma Inline.
986 * sem_ch13.adb (Analyze_Non_Null_Aspect_Specifications): New procedure
987 extracted from...
988 (Analyze_Aspect_Specifications): ...here. Call above procedure.
989
7ff2d234
AC
9902011-08-02 Yannick Moy <moy@adacore.com>
991
992 * exp_ch6.adb (Expand_N_Subprogram_Declaration): issue error in formal
993 mode on subprogram declaration outside of package specification, unless
994 it is followed by a pragma Import
995 * sem_ch3.adb (Access_Definition, Access_Subprogram_Declaration,
996 Access_Type_Declaration): issue error in formal mode on access type
997 (Analyze_Incomplete_Type_Decl): issue error in formal mode on
998 incomplete type
999 (Analyze_Object_Declaration): issue error in formal mode on object
1000 declaration which does not respect SPARK restrictions
1001 (Analyze_Subtype_Declaration): issue error in formal mode on subtype
1002 declaration which does not respect SPARK restrictions
1003 (Constrain_Decimal, Constrain_Float, Constrain_Ordinary_Fixed): issue
1004 error in formal mode on digits or delta constraint
1005 (Decimal_Fixed_Point_Type_Declaration): issue error in formal mode on
1006 decimal fixed point type
1007 (Derived_Type_Declaration): issue error in formal mode on derived type
1008 other than type extensions of tagged record types
1009 * sem_ch6.adb (Process_Formals): remove check in formal mode, redundant
1010 with check on access definition
1011 * sem_ch9.adb (Analyze_Protected_Definition): issue error in formal
1012 mode on protected definition.
1013 (Analyze_Task_Definition): issue error in formal mode on task definition
1014
10152011-08-02 Robert Dewar <dewar@adacore.com>
1016
1017 * make.adb, sem_ch8.adb, s-inmaop-vxworks.adb: Minor reformatting.
1018
806f6d37
AC
10192011-08-02 Javier Miranda <miranda@adacore.com>
1020
1021 * sem_ch6.adb (Can_Override_Operator): New function.
1022 (Verify_Overriding_Indicator): Add missing code to check overriding
1023 indicator in operators. Fixes regression.
1024 (Check_Overriding_Indicator): Minor reformating after replacing the
1025 code that evaluates if the subprogram can override an operator by
1026 invocations to the above new function.
1027 * einfo.adb
1028 (Write_Field26_Name): Add missing code to ensure that, following
1029 the documentation in einfo.ads, this field is not shown as attribute
1030 "Static_Initialization" on non-dispatching functions.
1031
10322011-08-02 Jose Ruiz <ruiz@adacore.com>
1033
1034 * sem_res.adb (Resolve_Call): A call to
1035 Ada.Real_Time.Timing_Events.Set_Handler violates restriction
1036 No_Relative_Delay (AI-0211) only when it sets a relative timing event,
1037 i.e., when the second parameter is of type Time_Span.
1038
10392011-08-02 Vincent Celier <celier@adacore.com>
1040
1041 * make.adb (Gnatmake): use <library dir>/lib<library name>.a to link
1042 with an archive instead of -L<library dir> -l<library name>.
1043
10442011-08-02 Ed Schonberg <schonberg@adacore.com>
1045
1046 * sem_ch8.adb (Analyze_Use_Type): If the clause is being re-analyzed,
1047 mark the base types In_Use in addition to making the operations
1048 use_visible.
1049
10502011-08-02 Ed Falis <falis@adacore.com>
1051
1052 * init.c: add and setup __gnat_signal_mask for the exception signals
1053 * s-inmaop-vxworks.adb: new file.
1054 * s-intman-vxworks.adb: remove unnecessary initializations and
1055 simplify remaining
1056 * s-intman-vxworks.ads: remove unnecessary variable
1057 * s-taprop-vxworks.adb: simplify signal initialization
1058
780d052e
RD
10592011-08-02 Robert Dewar <dewar@adacore.com>
1060
1061 * sem_ch8.adb: Minor code reorganization, comment updates.
1062
10632011-08-02 Robert Dewar <dewar@adacore.com>
1064
1065 * sem_res.adb (Matching_Static_Array_Bounds): Moved to Sem_Util
1066 * sem_util.ads, sem_util.adb (Matching_Static_Array_Bounds): Moved
1067 here from Sem_Res.
1068 (Matching_Static_Array_Bounds): Use Is_Ok_Static_Expression
1069 (Matching_Static_Array_Bounds): Moved here from Sem_Res
1070
29efbb8c
ES
10712011-08-02 Ed Schonberg <schonberg@adacore.com>
1072
1073 * atree.h, atree.ads, atree.adb: New subprograms to manipulate Elist5.
1074 * par_ch8.adb (P_Use_Type): initialize Used_Operations for node.
1075 * sinfo.ads, sinfo.adb (Used_Operations): new attribute of
1076 use_type_clauses, to handle more efficiently use_type and use_all_type
1077 constructs.
1078 * sem_ch8.adb: Rewrite Use_One_Type and End_Use_Type to handle the
1079 Ada2012 Use_All_Type clause.
1080 (Use_Class_Wide_Operations): new procedure.
1081
b0186f71
AC
10822011-08-02 Robert Dewar <dewar@adacore.com>
1083
1084 * exp_util.adb, par-ch10.adb, par-ch6.adb, sem.adb, sem_ch6.adb,
1085 sem_ch6.ads, sinfo.adb, sinfo.ads, sprint.adb: Change parameterized
1086 expression to expression function.
1087
10882011-08-02 Ed Schonberg <schonberg@adacore.com>
1089
1090 * sem_ch4.adb: transform simple Ada2012 membership into equality only
1091 if types are compatible.
1092
10932011-08-02 Yannick Moy <moy@adacore.com>
1094
1095 * sem_res.adb (Matching_Static_Array_Bounds): new function which
1096 returns True if its argument array types have same dimension and same
1097 static bounds at each index.
1098 (Resolve_Actuals): issue an error in formal mode on actuals passed as
1099 OUT or IN OUT paramaters which are not view conversions in SPARK.
1100 (Resolve_Arithmetic_Op): issue an error in formal mode on
1101 multiplication or division with operands of fixed point types which are
1102 not qualified or explicitly converted.
1103 (Resolve_Comparison_Op): issue an error in formal mode on comparisons of
1104 Boolean or array type (except String) operands.
1105 (Resolve_Equality_Op): issue an error in formal mode on equality
1106 operators for array types other than String with non-matching static
1107 bounds.
1108 (Resolve_Logical_Op): issue an error in formal mode on logical operators
1109 for array types with non-matching static bounds. Factorize the code in
1110 Matching_Static_Array_Bounds.
1111 (Resolve_Qualified_Expression): issue an error in formal mode on
1112 qualified expressions for array types with non-matching static bounds.
1113 (Resolve_Type_Conversion): issue an error in formal mode on type
1114 conversion for array types with non-matching static bounds
1115
767bb4e8
AC
11162011-08-02 Robert Dewar <dewar@adacore.com>
1117
1118 * par-ch10.adb: Minor code reorganization (use Nkind_In).
1119
11202011-08-02 Ed Schonberg <schonberg@adacore.com>
1121
1122 * par-ch9.adb: save location of entry for proper error message.
1123
4ac2477e
JM
11242011-08-02 Javier Miranda <miranda@adacore.com>
1125
1126 * sem_type.ads, sem_type.adb (Is_Ancestor): Addition of a new formal
1127 (Use_Full_View) which permits this routine to climb through the
1128 ancestors using the full-view of private parents.
1129 * sem_util.adb (Collect_Interfaces_Info, Implements_Interface): Set
1130 Use_Full_View to true in calls to Is_Ancestor.
1131 * sem_disp.adb (Override_Dispatching_Operation): Set Use_Full_View to
1132 true in call to Is_Ancestor.
1133 * exp_ch3.adb (Build_Offset_To_Top_Functions, Initialize_Tag): Set
1134 Use_Full_View to true in call to Is_Ancestor.
1135 * exp_ch7.adb (Controller_Component): Set Use_Full_View to true in
1136 call to Is_Ancestor.
1137 * exp_ch4.adb (Expand_N_Type_Conversion, Tagged_Membership): Set
1138 Use_Full_View to true in calls to Is_Ancestor.
1139 * exp_disp.adb (Expand_Interface_Actuals, Make_Secondary_DT, Make_DT,
1140 Make_Select_Specific_Data_Table, Register_Primitive,
1141 Set_All_DT_Position): Set Use_Full_View to true in calls to Is_Ancestor.
1142 * exp_intr.adb (Expand_Dispatching_Constructor_Call): Set Use_Full_View
1143 to true in call to Is_Ancestor.
1144 * exp_util.adb (Find_Interface_ADT, Find_Interface_Tag): Set
1145 Use_Full_View to true in calls to Is_Ancestor.
1146 * exp_cg.adb
1147 (Write_Call_Info): Set Use_Full_View to true in call to Is_Ancestor.
1148 (Write_Type_Info): Set Use_Full_View to true in call to Is_Ancestor.
1149
9f90d123
AC
11502011-08-02 Robert Dewar <dewar@adacore.com>
1151
1152 * gnat_rm.texi: Minor reformatting.
1153 * sem_prag.adb: Minor reformatting.
1154
11552011-08-02 Tristan Gingold <gingold@adacore.com>
1156
1157 * vms_data.ads: Add VMS qualifier for -gnateP.
1158
11592011-08-02 Robert Dewar <dewar@adacore.com>
1160
1161 * par-ch13.adb (P_Aspect_Specification): New meaning of Decl = Empty
1162 * par-ch7.adb (P_Package): Proper placement of aspects for package
1163 decl/instantiation.
1164 * par-endh.adb (Check_End): Ad Is_Sloc parameter
1165 (End_Statements): Add Is_Sloc parameterr
1166 * par.adb (P_Aspect_Specification): New meaning of Decl = Empty
1167 (Check_End): Ad Is_Sloc parameter
1168 (End_Statements): Add Is_Sloc parameterr
1169
11702011-08-02 Vincent Celier <celier@adacore.com>
1171
1172 * ug_words: Add VMS qualifier equivalent to -gnateP:
1173 /SYMBOL_PREPROCESSING.
1174
11752011-08-02 Jose Ruiz <ruiz@adacore.com>
1176
1177 * gnat-style.texi: For hexadecimal numeric literals the typical
1178 grouping of digits is 4 to represent 2 bytes.
1179 A procedure spec which is split into several lines is indented two
1180 characters.
1181
11822011-08-02 Yannick Moy <moy@adacore.com>
1183
1184 * exp_aggr.adb (Is_Others_Aggregate): move function to other unit.
1185 * sem_aggr.adb, sem_aggr.ads (Is_Others_Aggregate): move function here
1186 (Resolve_Aggregate): issue errors in formal modes when aggregate is not
1187 properly qualified
1188 (Resolve_Array_Aggregate): issue errors in formal modes on non-static
1189 choice in array aggregate
1190 (Resolve_Extension_Aggregate): issue errors in formal modes on subtype
1191 mark as ancestor
1192 (Resolve_Record_Aggregate): issue errors in formal modes on mixed
1193 positional and named aggregate for record, or others in record
1194 aggregate, or multiple choice in record aggregate
1195 * sem_res.adb (Resolve_Logical_Op): issue errors in formal mode when
1196 array operands to logical operations AND, OR and XOR do not have the
1197 same static lower and higher bounds
1198 * sem_ch5.adb, sinfo.ads: Correct typos in comments
1199
2933b16c
RD
12002011-08-01 Robert Dewar <dewar@adacore.com>
1201
1202 * sem_util.ads, sem_util.adb, sem_ch6.adb (Last_Source_Statement):
1203 Replaces Last_Source_Node_In_Sequence.
1204 * err_vars.ads (Error_Msg_Lang): 16 is OK, don't need 4K
1205 * errout.adb (Set_Error_Msg_Lang): Takes arg with no parens, but stores
1206 parens and blank in string (this was inconsistently implemented).
1207 * errout.ads
1208 (Set_Error_Msg_Lang): Takes arg with no parens, but stores parens and
1209 blank in string (this was inconsistently implemented).
1210 * gnat1drv.adb
1211 (Set_Global_Switches): Set formal mode switches appropriately
1212 * opt.ads, opt.adb: Formal mode is now global switches, more consistent
1213 * par-prag.adb
1214 (Analyze_Pragma, case SPARK_95): Set opt switches appropriately and
1215 call Set_Error_Msg_Lang to set "spark" as language name.
1216 * par.adb: Remove unnecessary call to set formal language for errout
1217 * sem_prag.adb (P_Pragma, case SPARK_95): Set opt switches
1218 appropriately and call Set_Error_Msg_Lang to set "spark" as language
1219 name.
1220 * sem_ch4.adb (Analyze_Concatenation_Operand): remove procedure and
1221 calls to it, moved after resolution so that types are known
1222 * sem_res.adb (Resolve_Op_Concat): issue an error in formal mode if
1223 result of concatenation is not of type String
1224 (Resolve_Op_Concat_Arg): issue an error in formal mode if an operand of
1225 concatenation is not properly restricted
1226 * gnat_rm.texi: Add doc on pragma Spark_95.
1227 * gcc-interface/Makefile.in: Remove obsolete target pairs for
1228 Interfaces.C.* on VMS. Remove s-parame-vms-restrict.ads.
1229 * gcc-interface/Make-lang.in: Update dependencies.
1230
05dbd302
AC
12312011-08-01 Javier Miranda <miranda@adacore.com>
1232
1233 * sem_disp.adb (Override_Dispatching_Operation): Enforce strictness of
1234 condition that detects if the overridden operation must replace an
1235 existing entity.
1236
12372011-08-01 Javier Miranda <miranda@adacore.com>
1238
1239 * exp_ch4.adb (Expand_N_Case_Expression): Propagate to the expanded
1240 code declarations inserted by Insert_Actions in each alternative of the
1241 N_Case_Expression node.
1242
12432011-08-01 Robert Dewar <dewar@adacore.com>
1244
1245 * sem_ch6.adb: Minor code reorganization.
1246 * sem_util.adb: Minor reformatting.
1247
af9e051f
PO
12482011-08-01 Pascal Obry <obry@adacore.com>
1249
1250 * prj-env.adb: Remove <prefix>/lib/gpr/<target> project search path.
1251 * gnat_ugn.texi: Add documentation for VERSIONINFO Windows resource.
1252
1d801f21
AC
12532011-08-01 Yannick Moy <moy@adacore.com>
1254
1255 * par-ch4.adb (P_Name): issue a syntax error in SPARK mode on character
1256 literal or operator symbol which is prefixed
1257 * sem_attr.adb (Analyze_Access_Attribute): issue an error in formal
1258 mode on access attributes.
1259 * sem_ch4.adb (Analyze_Concatenation_Operand): new procedure to check
1260 that concatenation operands are properly restricted in formal mode
1261 (Analyze_Concatenation, Analyze_Concatenation_Rest): call new procedure
1262 Analyze_Concatenation_Operand. Issue an error in formal mode if the
1263 result of the concatenation has a type different from String.
1264 (Analyze_Conditional_Expression, Analyze_Explicit_Dereference,
1265 Analyze_Quantified_Expression, Analyze_Slice,
1266 Analyze_Null): issue an error in formal mode on unsupported constructs
1267 * sem_ch5.adb
1268 (Analyze_Block_Statement): only issue error on source block statement
1269 * sem_util.ads, sem_util.adb (Last_Source_Node_In_Sequence): new
1270 function which returns the last node in a list of nodes for which
1271 Comes_From_Source returns True, if any
1272 * sem_ch6.adb (Check_Missing_Return): minor refactoring to use
1273 Last_Source_Node_In_Sequence
1274 * sem_ch8.adb (Analyze_Exception_Renaming, Analyze_Generic_Renaming,
1275 Analyze_Object_Renaming, Analyze_Use_Package): issue an error in formal
1276 mode on unsupported constructs
1277 * sem_ch9.adb Do not return after issuing error in formal mode, as the
1278 rest of the actions may be needed later on since the error is marked as
1279 not serious.
1280 * sinfo.ads: Typos in comments.
1281
12822011-08-01 Pascal Obry <obry@adacore.com>
1283
1284 * projects.texi: Minor editing.
1285
53beff22
YM
12862011-08-01 Yannick Moy <moy@adacore.com>
1287
1288 * err_vars.ads (Error_Msg_Lang, Error_Msg_Langlen): new variables for
1289 insertion character ~~
1290 * errout.ads, errout.adb (Formal_Error_Msg_...): remove procedures
1291 (Set_Error_Msg_Lang): new procedure which fixes the language for use
1292 with insertion character ~~
1293 (Set_Msg_Text): treat insertion character ~~
1294 * par-ch4.adb, par-ch5.adb, par-endh.adb, sem_attr.adb, sem_ch11.adb,
1295 sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_util.adb: Replace calls to
1296 Formal_Error_Msg_... procedures by equivalent Error_Msg_...
1297 procedures. Favor calls to Error_Msg_F(E) over Error_Msg_N(E). Make
1298 errors related to the formal language restriction not serious
1299 (insertion character |).
1300 * par.adb (Par): set formal language for error messages if needed
1301 * sem_ch6.adb (Check_Missing_Return): take into account possible
1302 generated statements at the end of the function
1303 * snames.ads-tmpl (Name_SPARK_95, Pragma_SPARK_95): new variable and
1304 enumeration value to define a new pragma SPARK_95
1305 * opt.ads, opt.adb (SPARK_Version_Type, SPARK_Version_Default,
1306 SPARK_Version): new type and variables to store the SPARK version
1307 (none by default).
1308 (SPARK_Mode): return True when SPARK_Version is set
1309 * par-prag.adb: Correct indentation
1310 (Prag): take Pragma_SPARK_95 into account
1311 * sem_prag.adb (Set_Mechanism_Value, Sig_Flags): take Pragma_SPARK_95
1312 into account.
1313
8d606a78
RD
13142011-08-01 Robert Dewar <dewar@adacore.com>
1315
1316 * sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, prj-part.adb, par-ch4.adb,
1317 sem_util.adb, sem_ch4.adb, sem_ch6.adb, sem_ch6.ads, sem_ch8.adb,
1318 sem_ch8.ads, sem_ch13.ads, par-ch5.adb, prj-env.ads: Minor reformatting
1319
1982d5a8
PO
13202011-08-01 Pascal Obry <obry@adacore.com>
1321
1322 * prj-part.ads, prj-part.adb (Parse): Add Target_Name parameter. Pass
1323 Target_Name to Get_Path call.
1324 (Parse_Single_Project): Likewise.
1325 (Post_Parse_Context_Clause): Likewise.
1326 * prj-env.ads, prj-env.adb (Find_Project): Add Target_Name parameter.
1327 Call Initialise_Project_Path with the proper Target_Name.
1328 (Initialize_Project_Path): Add <gnat_root>/<target_name>/lib/gnat
1329 search path.
1330 (Get_Path): Add Target_Name parameter. Call Initialise_Project_Path
1331 with the proper Target_Name.
1332 * prj-conf.adb (Get_Or_Create_Configuration_File): Pass Target_Name to
1333 Part.Parse routine.
1334 (Parse_Project_And_Apply_Config): Likewise.
1335 * prj-makr.adb (Initialize): Pass empty Target_Name to Parse routine.
1336 This is fine as this part of the code is supporting only native
1337 compilation.
1338 * prj-pars.adb (Parse): Pass empty Target_Name to Parse routine. This
1339 is fine as this part of the code is supporting only native compilation.
1340
0d53d36b
AC
13412011-08-01 Yannick Moy <moy@adacore.com>
1342
1343 * sem_util.adb (Enter_Name): issue error in formal mode on declaration
1344 of homonym, unless the homonym is one of the cases allowed in SPARK
1345 * par-ch5.adb (Parse_Decls_Begin_End): issue error in SPARK mode for
1346 package declaration occurring after a body.
1347
13482011-08-01 Robert Dewar <dewar@adacore.com>
1349
1350 * checks.adb, exp_ch4.adb: Minor reformatting.
1351
13522011-08-01 Javier Miranda <miranda@adacore.com>
1353
1354 * einfo.ads (Access_Disp_Table): Fix documentation.
1355 (Dispatch_Table_Wrappers): Fix documentation.
1356
13572011-08-01 Pascal Obry <obry@adacore.com>
1358
1359 * prj-env.adb, prj-env.ads: Minor reformatting.
1360
8ed68165
AC
13612011-08-01 Yannick Moy <moy@adacore.com>
1362
1363 * sem_util.ads, sem_util.adb, par.adb, par_util.adb
1364 (Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move
1365 procedures out of these packages.
1366 * errout.ads, errout.adb
1367 (Formal_Error_Msg, Formal_Error_Msg_N, Formal_Error_Msg_SP): move
1368 procedures in of this package
1369 (Formal_Error_Msg_NE): new procedure for wrapper on Error_Msg_NE
1370 * par-ch5.adb (Parse_Decls_Begin_End): issue syntax error in SPARK mode
1371 on misplaced later vs initial declarations, like in Ada 83
1372 * sem_attr.adb (Processing for Analyze_Attribute): issue error in
1373 formal mode on attribute of private type whose full type declaration
1374 is not visible
1375 * sem_ch3.adb (Analyze_Declarations): issue error in formal mode on a
1376 package declaration inside a package specification
1377 (Analyze_Full_Type_Declaration): issue error in formal mode on
1378 controlled type or discriminant type
1379 * sem_ch6.adb (Analyze_Subprogram_Specification): only issue error on
1380 user-defined operator means that it should come from the source
1381 (New_Overloaded_Entity): issue error in formal mode on overloaded
1382 entity.
1383 * sem_ch6.ads, sem_ch13.ads: typos in comments.
1384
13852011-08-01 Thomas Quinot <quinot@adacore.com>
1386
1387 * atree.adb: Minor reformatting.
1388 * checks.adb: Minor reformatting.
1389
4230bdb7
AC
13902011-08-01 Vincent Celier <celier@adacore.com>
1391
1392 * s-parame-vms-ia64.ads: Fix typo in comment
1393 Minor reformatting
1394 * s-parame-vms-restrict.ads: Removed, unused.
1395
13962011-08-01 Javier Miranda <miranda@adacore.com>
1397
1398 * exp_ch3.adb
1399 (Is_Variable_Size_Array): Remove local subprogram Is_Constant_Bound.
1400 * sem_ch3.adb
1401 (Constrain_Index): Remove side effects in the evaluation of the bounds.
1402 * sem_ch3.ads, sem_ch3.adb
1403 (Is_Constant_Bound): New extended version of the subprogram that was
1404 previously located inside function Exp_Ch3.Is_Variable_Size_Array.
1405 Moved here since it is shared by routines of sem_ch3 and exp_ch3.
1406 * sem_aux.ads (Constant_Value): Fix typo in comment.
1407 * checks.adb (Generate_Index_Checks): New implementation which, for
1408 array objects with constant bounds, generates the runtime check
1409 referencing the bounds of the array type. For other cases this routine
1410 provides its previous behavior obtaining such values from the array
1411 object.
1412 * sem_res.adb (Set_Slice_Subtype): Link a copied range subtree with its
1413 parent type.
1414 * atree.adb (New_Copy): Reset flag Is_Overloaded in the new copy since
1415 we cannot have semantic interpretations of the new node.
1416
2010d078
AC
14172011-08-01 Ed Schonberg <schonberg@adacore.com>
1418
1419 * sem_ch6.adb (Fully_Conformant_Expressions): handle quantified
1420 expressions.
1421
14222011-08-01 Arnaud Charlet <charlet@adacore.com>
1423
1424 * sem_ch8.adb: Minor code editing.
1425 * s-vxwext.adb: Remove trailing space.
1426 * freeze.adb, freeze.ads, errout.ads, erroutc.adb: Fix GPLv3 header for
1427 consistency with other files.
1428
14292011-08-01 Thomas Quinot <quinot@adacore.com>
1430
1431 * s-auxdec.ads, s-auxdec-vms_64.ads: Minor reformatting.
1432
14332011-08-01 Ed Schonberg <schonberg@adacore.com>
1434
1435 * par-ch10.adb: reject parameterized expressions as compilation unit.
1436 * sem_ch4.adb: handle properly conditional expression with overloaded
1437 then_clause and no else_clause.
1438
14392011-08-01 Tristan Gingold <gingold@adacore.com>
1440
1441 * s-parame-vms-alpha.ads, s-parame-vms-ia64.ads: Redeclare C_Address
1442 like done by System.Aux_DEC.
1443 * env.c (__gnat_setenv) [VMS]: Put logicals into LNM$PROCESS table.
1444
daec8eeb
YM
14452011-08-01 Yannick Moy <moy@adacore.com>
1446
1447 * par-endh.adb (Check_End): issue a syntax error in SPARK mode for
1448 missing label at end of declaration (subprogram or package)
1449 * par-ch4.adb (P_Name): issue a syntax error in SPARK mode for mixing
1450 of positional and named parameter association
1451 * par.adb, par-util.adb (Formal_Error_Msg_SP): new wrapper on
1452 Error_Msg_SP which adds a prefix to the error message giving the name
1453 of the formal language analyzed
1454 * sem_ch6.adb (Analyze_Return_Type): issue an error in formal mode for
1455 access result type in subprogram, unconstrained array as result type,.
1456 (Analyze_Subprogram_Declaration): issue an error in formal mode for null
1457 procedure
1458 * sem_ch8.adb: Code clean up.
1459
38171f43
AC
14602011-08-01 Javier Miranda <miranda@adacore.com>
1461
1462 * sem_ch7.adb (Uninstall_Declarations): Remove useless code.
1463 * einfo.ads (Access_Disp_Table): Fix documentation.
1464 (Dispatch_Table_Wrappers): Fix documentation.
1465 * einfo.adb (Access_Disp_Table, Dispatch_Table_Wrappers,
1466 Set_Access_Disp_Table, Set_Dispatch_Table_Wrappers): Fix the assertions
1467 to enforce the documentation of this attribute.
1468 (Set_Is_Interface): Cleanup the assertion.
1469 * exp_ch4.adb (Expand_Allocator_Expression, Tagged_Membership): Locate
1470 the Underlying_Type entity before reading attribute Access_Disp_Table.
1471 * exp_disp.adb (Expand_Dispatching_Call, Expand_Interface_Conversion):
1472 Locate the Underlying_Type before reading attribute Access_Disp_Table.
1473 * exp_aggr.adb (Build_Array_Aggr_Code, Build_Record_Aggr_Code): Locate
1474 the Underlying_Type entity before reading attribute Access_Disp_Table.
1475 * exp_ch3.adb (Build_Record_Init_Proc, Expand_N_Object_Declaration):
1476 Locate the Underlying_Type entity before reading attribute
1477 Access_Disp_Table.
1478
14792011-08-01 Ed Schonberg <schonberg@adacore.com>
1480
1481 * s-poosiz.ads: Additional overriding indicators.
1482
14832011-08-01 Yannick Moy <moy@adacore.com>
1484
1485 * sem_ch5.adb (Analyze_Exit_Statement): add return after error in
1486 formal mode.
1487 (Analyze_Iteration_Scheme): issue error in formal mode when loop
1488 parameter specification does not include a subtype mark.
1489 * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): issue error in
1490 formal mode on abstract subprogram.
1491 (Analyze_Subprogram_Specification): issue error in formal mode on
1492 user-defined operator.
1493 (Process_Formals): issue error in formal mode on access parameter and
1494 default expression.
1495 * sem_ch9.adb (Analyze_Abort_Statement,
1496 Analyze_Accept_Statement, Analyze_Asynchronous_Select,
1497 Analyze_Conditional_Entry_Call, Analyze_Delay_Relative,
1498 Analyze_Delay_Until, Analyze_Entry_Call_Alternative,
1499 Analyze_Requeue, Analyze_Selective_Accept,
1500 Analyze_Timed_Entry_Call): issue error in formal mode on such constructs
1501 * sem_ch11.adb (Analyze_Raise_Statement, Analyze_Raise_xxx_Error):
1502 issue error in formal mode on user-defined raise statement.
1503
1f250383
AC
15042011-08-01 Thomas Quinot <quinot@adacore.com>
1505
1506 * sem_ch6.adb (Enter_Overloaded_Entity): Do not warn about a
1507 declaration being hidden when overriding an implicit inherited
1508 subprogram.
1509 * par-ch10.adb (P_Compilation_Unit): In syntax check only mode
1510 (-gnats), do not complain about a source file that contains only a
1511 pragma No_Body.
1512
15132011-08-01 Ed Schonberg <schonberg@adacore.com>
1514
1515 * sem_ch5.adb (Analyze_Iterator_Scheme): Do not overwrite type of loop
1516 variable if already set.
1517
607d0635
AC
15182011-08-01 Arnaud Charlet <charlet@adacore.com>
1519
1520 * g-socket-dummy.adb, s-osinte-linux.ads, g-socket-dummy.ads,
1521 g-debuti.adb, g-tasloc.adb, g-debuti.ads, g-tasloc.ads,
1522 s-osinte-hpux.ads, g-sercom.adb, g-soliop-solaris.ads, g-sercom.ads,
1523 g-sptain.ads, g-curexc.ads, s-tasloc.adb, s-tasloc.ads, s-tataat.adb,
1524 g-ctrl_c.adb, a-reatim.adb, s-tataat.ads, g-dirope.adb, g-ctrl_c.ads,
1525 g-dirope.ads, g-boubuf.adb, g-calend.adb, g-boubuf.ads, g-souinf.ads,
1526 g-table.adb, g-bytswa-x86.adb, g-wispch.adb, g-io.adb, g-table.ads,
1527 g-wispch.ads, g-io.ads, g-memdum.adb, g-memdum.ads, g-busorg.adb,
1528 g-busorg.ads, g-regpat.adb, g-sothco-dummy.adb, g-encstr.adb,
1529 g-regpat.ads, g-sothco-dummy.ads, s-osinte-aix.ads, g-encstr.ads,
1530 g-sercom-mingw.adb, s-mastop-vms.adb, g-diopit.adb, g-diopit.ads,
1531 s-vxwext.adb, g-dyntab.adb, g-dyntab.ads, g-crc32.adb,
1532 g-sercom-linux.adb, g-crc32.ads, s-regpat.adb, g-flocon.ads,
1533 s-regpat.ads, g-stheme.adb, g-sestin.ads, s-taspri-posix-noaltstack.ads,
1534 g-soliop.ads, s-inmaop-posix.adb, g-locfil.ads, g-enblsp-vms-alpha.adb,
1535 g-socthi-dummy.adb, g-socthi-dummy.ads, gnat.ads, g-moreex.adb,
1536 g-moreex.ads, g-dynhta.adb, g-dynhta.ads, g-deutst.ads, g-htable.adb,
1537 g-cgicoo.adb, g-htable.ads, g-cgicoo.ads, a-interr.adb,
1538 g-socthi-vms.adb, g-socthi-vms.ads, g-hesora.adb, g-bubsor.adb,
1539 g-hesora.ads, g-bubsor.ads, g-md5.adb, g-md5.ads, s-intman-irix.adb,
1540 s-htable.adb, s-osinte-vms.adb, s-htable.ads, s-osinte-vms.ads,
1541 s-taprob.adb, g-bytswa.adb, g-bytswa.ads, s-osinte-solaris-posix.ads,
1542 a-suenco.adb, g-comver.adb, g-comver.ads, g-exctra.adb,
1543 s-osinte-solaris.adb, g-exctra.ads, s-osinte-irix.ads,
1544 s-osinte-solaris.ads, a-caldel-vms.adb, g-socthi-vxworks.adb,
1545 g-expect.adb, g-socthi-vxworks.ads, g-expect.ads, g-comlin.ads,
1546 g-heasor.adb, g-heasor.ads, g-traceb.adb, g-traceb.ads, g-decstr.adb,
1547 g-spipat.adb, g-decstr.ads, g-spipat.ads, s-mastop-tru64.adb,
1548 g-except.ads, g-thread.adb, g-hesorg.adb, g-thread.ads, g-hesorg.ads,
1549 g-expect-vms.adb, a-stuten.ads, g-spchge.adb, g-spchge.ads,
1550 g-u3spch.adb, g-u3spch.ads, g-spitbo.adb, g-spitbo.ads,
1551 s-osinte-dummy.ads, s-osinte-posix.adb, g-pehage.adb, g-pehage.ads,
1552 s-gloloc-mingw.adb, g-sha1.ads, s-traceb-hpux.adb,
1553 g-trasym-unimplemented.adb, g-trasym-unimplemented.ads, g-io_aux.adb,
1554 g-regexp.adb, g-io_aux.ads, g-socthi-mingw.adb, g-regexp.ads,
1555 s-osinte-hpux-dce.adb, g-socthi-mingw.ads, g-cgi.adb,
1556 s-osinte-hpux-dce.ads, g-cgi.ads, g-byorma.adb, g-boumai.ads,
1557 g-byorma.ads, a-caldel.adb, s-regexp.adb, s-regexp.ads,
1558 g-soliop-mingw.ads, g-sptavs.ads, s-osinte-tru64.ads, g-speche.adb,
1559 g-speche.ads, g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads,
1560 s-osinte-darwin.ads, i-vxwork-x86.ads, g-awk.adb, i-vxwork.ads,
1561 g-awk.ads, g-zspche.adb, g-zspche.ads, g-socket.adb, g-sptabo.ads,
1562 g-socket.ads, g-semaph.adb, g-semaph.ads, s-taspri-posix.ads,
1563 g-enblsp-vms-ia64.adb, g-cgideb.adb, g-cgideb.ads, g-sothco.adb,
1564 s-osinte-freebsd.ads, g-sothco.ads, g-catiio.adb, g-casuti.adb,
1565 g-catiio.ads, g-casuti.ads, g-trasym.adb, g-trasym.ads, s-casuti.adb,
1566 g-os_lib.adb, s-traceb-mastop.adb, g-busora.adb, s-interr-dummy.adb,
1567 g-busora.ads, g-enutst.ads, s-os_lib.adb, a-tasatt.adb,
1568 s-osinte-mingw.ads: Update to GPLv3 run-time license.
1569 Use GNAT instead of GNARL.
1570
15712011-08-01 Bob Duff <duff@adacore.com>
1572
1573 * a-cdlili.ads, a-cihama.ads, a-coinve.ads, a-ciorse.ads, a-coorma.ads,
1574 a-cidlli.ads, a-ciormu.ads, a-cihase.ads, a-cohama.ads, a-coorse.ads,
1575 a-ciorma.ads, a-coormu.ads, a-convec.ads, a-cohase.ads: Minor
1576 reformatting.
1577
15782011-08-01 Yannick Moy <moy@adacore.com>
1579
1580 * debug.adb (d.D) reverve flag for the SPARK mode
1581 (d.E) reverve flag for SPARK generation mode
1582 (d.F) reverve flag for Why generation mode
1583 * opt.ads, opt.adb (ALFA_Mode, ALFA_Through_SPARK_Mode,
1584 ALFA_Through_Why_Mode, Formal_Verification_Mode, SPARK_Mode): New
1585 functions which return True when the corresponding modes are set
1586 (Formal_Language): return "spark" or "alfa" when in formal verification
1587 mode.
1588 * sem_util.ads, sem_util.adb (Formal_Error_Msg): new wrapper on
1589 Error_Msg to prefix the error message with a tag giving the formal
1590 language
1591 (Formal_Error_Msg_N): new wrapper on Error_Msg_N to prefix the error
1592 message with a tag giving the formal language
1593 * sem_ch5.adb (Analyze_Block_Statement): issue error in formal mode on
1594 block statement
1595 (Analyze_Case_Statement): issue error in formal mode on case statement
1596 with a single "others" case alternative
1597 (Analyze_Exit_Statement): issue errors in formal mode on exit
1598 statements which do not respect SPARK restrictions
1599 (Analyze_Goto_Statement): issue error in formal mode on goto statement
1600 (Check_Unreachable_Code): always issue an error (not a warning) in
1601 formal mode on unreachable code (concerns both code after an infinite
1602 loop and after an unconditional jump, both not allowed in SPARK)
1603 * sem_ch6.adb (Analyze_Return_Statement): add call to
1604 Set_Return_Present for a procedure containing a return statement
1605 (already done for functions in Analyze_Function_Return)
1606 (Analyze_Function_Return): issue error in formal mode on extended
1607 return or if return is not last statement in function
1608 (Check_Missing_Return): issue error in formal mode if function does
1609 not end with return or if procedure contains a return
1610 * sem_ch8.ads, sem_ch8.adb (Has_Loop_In_Inner_Open_Scopes): new
1611 function to detect if there is an inner scope of its parameter S which
1612 is a loop.
1613
16142011-08-01 Thomas Quinot <quinot@adacore.com>
1615
1616 * sem_ch6.ads: Minor reformatting.
1617
d8b3ccb9
AC
16182011-08-01 Javier Miranda <miranda@adacore.com>
1619
1620 * sem_util.adb (Abstract_Interface_List): Complete condition when
1621 processing private type declarations to avoid reading unavailable
1622 attribute.
1623 (Is_Synchronized_Tagged_Type): Complete condition when processing
1624 private extension declaration nodes to avoid reading unavailable
1625 attribute.
1626
16272011-08-01 Thomas Quinot <quinot@adacore.com>
1628
1629 * sem_ch3.adb: Minor reformatting.
1630
16312011-08-01 Thomas Quinot <quinot@adacore.com>
1632
1633 * s-parame-ae653.ads, s-parame-vms-alpha.ads, s-parame-hpux.ads,
1634 i-cpoint.adb, i-cstrin.adb, i-cpoint.ads, i-cstrin.ads,
1635 s-parame-vms-ia64.ads, s-parame.ads, i-c.ads, s-parame-vxworks.ads,
1636 s-parame-vms-restrict.ads: Remove duplicated Interfaces.C.* packages
1637 for VMS, instead parametrize the common implementation with
1638 System.Parameters declarations.
1639
0bb9276c
AC
16402011-08-01 Eric Botcazou <ebotcazou@adacore.com>
1641
1642 * gnat_rm.texi: Document limitation of Pragma No_Strict_Aliasing.
1643
16442011-08-01 Tristan Gingold <gingold@adacore.com>
1645
1646 * seh_init.c: Fix SEH handler installation on win64.
1647
16482011-08-01 Ed Schonberg <schonberg@adacore.com>
1649
1650 * sem_ch3.adb (Access_Subprogram_Declaration): in Asis mode, prevent
1651 double analysis of an anonymous access to subprogram, because it can
1652 lead to improper sharing of profiles and a back-end crash.
1653
6a2e4f0b
AC
16542011-08-01 Robert Dewar <dewar@adacore.com>
1655
1656 * make.adb, sem_ch4.adb: Minor reformatting.
1657 * gcc-interface/Make-lang.in: Update dependencies.
1658 * sem_util.adb, exp_ch5.adb: Minor reformatting.
1659
16602011-08-01 Arnaud Charlet <charlet@adacore.com>
1661
1662 * gnat_rm.texi: Fix definition of Long_Integer.
1663
16642011-08-01 Ed Schonberg <schonberg@adacore.com>
1665
1666 * exp_aggr.adb: check limit size of static aggregate unconditionally,
1667 to prevent storage exhaustion.
1668 * exp_ch7.adb (Clean_Simple_Protected_Objects): if the scope being
1669 finalized is a function body, insert the cleanup code before the final
1670 return statement, to prevent spurious warnings.
1671 * s-pooglo.ads: add overriding indicator.
1672
4561baf7
ES
16732011-08-01 Ed Schonberg <schonberg@adacore.com>
1674
1675 * sem_ch4.adb (Operator_Check): improve error message when both a
1676 with_clause and a use_clause are needed to make operator usage legal.
1677 * sem_util.ads, sem_util.adb (Unit_Is_Visible): new predicate to
1678 determine whether a compilation unit is visible within an other,
1679 either through a with_clause in the current unit, or a with_clause in
1680 its library unit or one one of its parents.
1681
383e179e
AC
16822011-08-01 Ed Schonberg <schonberg@adacore.com>
1683
1684 * exp_ch5.adb (Expand_N_Iterator_Loop): handle properly an iterator
1685 over an arbitrary expression of an array or container type.
1686 * lib-xref.adb: clarify comment.
1687
16882011-08-01 Bob Duff <duff@adacore.com>
1689
1690 * einfo.ads: Minor reformatting.
1691 * debug.adb: Minor comment improvement.
1692
16932011-08-01 Javier Miranda <miranda@adacore.com>
1694
1695 * sem_ch4.adb (Try_Object_Operation): For class-wide subprograms do not
1696 consider hidden subprograms as valid candidates.
1697
16982011-08-01 Arnaud Charlet <charlet@adacore.com>
1699
1700 * make.adb (Compile): Strip -mxxx switches in CodePeer mode.
1701
17022011-08-01 Vasiliy Fofanov <fofanov@adacore.com>
1703
1704 * gnat_ugn.texi: Fix typo.
1705
61c161b2
AC
17062011-08-01 Robert Dewar <dewar@adacore.com>
1707
1708 * i-cstrin.adb, sem_util.adb, exp_ch11.adb, sem_ch8.adb,
1709 lib-xref.adb: Minor reformatting
1710
17112011-08-01 Gary Dismukes <dismukes@adacore.com>
1712
1713 * exp_ch6.adb (Expand_N_Extended_Return_Statement): Replace test of
1714 when to generate a call to Move_Final_List.
1715 (Has_Controlled_Parts): Remove this function.
1716
84df40f7
AC
17172011-08-01 Geert Bosch <bosch@adacore.com>
1718
1719 * par-ch3.adb (P_Discrete_Choice_List): Improve error message for extra
1720 "," in choice list.
1721
17222011-08-01 Thomas Quinot <quinot@adacore.com>
1723
1724 * exp_ch11.adb (Expand_N_Raise_Statement): Mark N_Raise_xxx_Error for
1725 explicit raise of a predefined exception as Comes_From_Source if the
1726 original N_Raise_Statement comes from source.
1727
17282011-08-01 Robert Dewar <dewar@adacore.com>
1729
1730 * sinfo.ads: Add comment.
1731 * sem_ch6.adb: Minor reformatting.
1732
17332011-08-01 Robert Dewar <dewar@adacore.com>
1734
1735 * freeze.adb (Freeze_Entity): Refine check for bad component size
1736 clause to avoid rejecting confirming clause when atomic/aliased present.
1737
17382011-08-01 Ed Schonberg <schonberg@adacore.com>
1739
1740 * sem_ch8.adb (Find_Direct_Name, Analyze_Expanded_Name): use Is_LHS to
1741 better determine whether an entity reference is a write.
1742 * sem_util.adb (Is_LHS): refine predicate to handle assignment to a
1743 subcomponent.
1744 * lib-xref.adb (Output_References): Do no suppress a read reference at
1745 the same location as an immediately preceeding modify-reference, to
1746 handle properly in-out actuals.
1747
17482011-08-01 Tristan Gingold <gingold@adacore.com>
1749
1750 * env.c (__gnat_setenv) [VMS]: Refine previous change.
1751
17522011-08-01 Quentin Ochem <ochem@adacore.com>
1753
1754 * i-cstrin.adb (New_String): Changed implementation, now uses only the
1755 heap to compute the result.
1756
c7f0d2c0
AC
17572011-08-01 Robert Dewar <dewar@adacore.com>
1758
1759 * atree.ads: Minor reformatting.
1760
17612011-08-01 Emmanuel Briot <briot@adacore.com>
1762
1763 * g-expect.adb (Get_Command_Output): Fix memory leak.
1764
17652011-08-01 Geert Bosch <bosch@adacore.com>
1766
1767 * cstand.adb (P_Float_Type): New procedure to print the definition of
1768 predefined fpt types.
1769 (P_Mixed_Name): New procedure to print a name using mixed case
1770 (Print_Standard): Use P_Float_Type for printing floating point types
1771 * einfo.adb (Machine_Emax_Value): Add preliminary support for quad
1772 precision IEEE float.
1773
17742011-08-01 Thomas Quinot <quinot@adacore.com>
1775
1776 * sem_ch3.adb: Minor reformatting.
1777
17782011-08-01 Ed Schonberg <schonberg@adacore.com>
1779
1780 * sem_ch6.adb (Analyze_Parameterized_Expression): If the expression is
1781 the completion of a generic function, insert the new body rather than
1782 rewriting the original.
1783
17842011-08-01 Yannick Moy <moy@adacore.com>
1785
1786 * sinfo.ads, errout.ads: Typos in comments.
1787
1c54829e
AC
17882011-08-01 Robert Dewar <dewar@adacore.com>
1789
1790 * par-endh.adb: Minor reformatting.
1791
17922011-08-01 Robert Dewar <dewar@adacore.com>
1793
1794 * aspects.ads, aspects.adb: Add aspects for library unit pragmas
1795 (Pre_Post_Aspects): New subtype.
1796 * par-ch12.adb (P_Generic): New syntax for aspects in packages
1797 * par-ch13.adb (P_Aspect_Specifications): Add Semicolon parameter
1798 * par-ch7.adb (P_Package): Remove Decl parameter
1799 (P_Package): Handle new syntax for aspects (before IS)
1800 * par-ch9.adb (P_Protected_Definition): Remove Decl parameter, handle
1801 new aspect syntax
1802 (P_Task_Definition): Remove Decl parameter, handle new aspect syntax
1803 * par.adb (P_Aspect_Specifications): Add Semicolon parameter
1804 (P_Package): Remove Decl parameter
1805 * sem_ch13.adb (Analyze_Aspect_Specifications): Handle library unit
1806 aspects
1807 * sem_ch7.adb (Analyze_Package_Declaration): Analyze new format aspect
1808 specs
1809 * sem_util.ads, sem_util.adb (Static_Boolean): New function
1810 * sinfo.ads: Document new syntax for aspects in packages etc.
1811 * sprint.adb: Handle new syntax of aspects before IS in package
1812
18132011-08-01 Thomas Quinot <quinot@adacore.com>
1814
1815 * atree.ads: Minor reformatting.
1816 * sem_prag.adb: Minor reformatting.
1817
18182011-08-01 Robert Dewar <dewar@adacore.com>
1819
1820 * exp_util.adb (Insert_Actions): Fix error in handling Actions for
1821 case expr alternative.
1822
18232011-08-01 Ed Schonberg <schonberg@adacore.com>
1824
1825 * sem_ch12.adb: Fix typo.
1826
9eea4346
GB
18272011-08-01 Geert Bosch <bosch@adacore.com>
1828
1829 * sem_prag.adb (Check_No_Link_Name): New procedure.
1830 (Process_Import_Or_Interface): Use Check_No_Link_Name.
1831 * cstand.adb (Create_Standard): Use Esize (Standard_Long_Long_Float)
1832 instead of Standard_Long_Long_Float_Size global. Preparation for
1833 eventual removal of per type constants.
1834 * exp_util.ads (Get_Stream_Size): New function returning the stream
1835 size value of subtype E.
1836 * exp_util.adb (Get_Stream_Size): Implement new function.
1837 * exp_strm.adb (Build_Elementary_Input_Call): Use Get_Stream_Size
1838 function.
1839 * exp_attr.adb (Attribute_Stream_Size): Use Get_Stream_Size
1840 * einfo.adb:
1841 (Machine_Mantissa_Value): Handle 128-bit quad precision IEEE floats
1842
3d6c3bd7
GB
18432011-08-01 Geert Bosch <bosch@adacore.com>
1844
1845 * cstand.adb: Fix comments.
1846 * sem_prag.adb (Analyze_Pragma): Use List_Length instead of explicit
1847 count of arguments.
1848
e7d897b8
AC
18492011-08-01 Robert Dewar <dewar@adacore.com>
1850
1851 * exp_ch4.adb, sem_cat.adb: Minor reformatting.
1852
18532011-08-01 Geert Bosch <bosch@adacore.com>
1854
1855 * atree.ads: Fix comment.
1856
c228a069
AC
18572011-08-01 Robert Dewar <dewar@adacore.com>
1858
1859 * aspects.ads, aspects.adb (Aspect_Names): Moved from body to spec.
1860 * par-ch13.adb (P_Aspect_Specifications): Check misspelled aspect name.
1861 * par.adb: Add with for Namet.Sp.
1862 * par-tchk.adb: Minor reformatting.
1863
18642011-08-01 Vincent Celier <celier@adacore.com>
1865
1866 * mlib-tgt-specific-vms-alpha.adb, mlib-tgt-specific-vms-ia64.adb
1867 (Build_Dynamic_Library): Use new function Init_Proc_Name to get the name
1868 of the init procedure of a SAL.
1869 * mlib-tgt-vms_common.ads, mlib-tgt-vms_common.adb (Init_Proc_Name):
1870 New procedure.
1871
18722011-08-01 Thomas Quinot <quinot@adacore.com>
1873
1874 * exp_ch4.adb, s-tasini.ads, sem_attr.adb, s-soflin.ads: Minor
1875 reformatting.
1876
18772011-08-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1878
1879 * adaint.c (__gnat_file_time_name_attr): Get rid of warning.
1880
18812011-08-01 Thomas Quinot <quinot@adacore.com>
1882
1883 * sem_util.adb, sem_util.ads (Has_Overriding_Initialize): Make function
1884 conformant with its spec (return True only for types that have
1885 an overriding Initialize primitive operation that prevents them from
1886 having preelaborable initialization).
1887 * sem_cat.adb (Validate_Object_Declaration): Fix test for preelaborable
1888 initialization for controlled types in Ada 2005 or later mode.
1889
857ade1b
RD
18902011-08-01 Robert Dewar <dewar@adacore.com>
1891
1892 * aspects.ads, aspects.adb: Add aspect Type_Invariant, Precondition,
1893 Postcondition.
1894 (Same_Aspect): New function.
1895 * sem_ch13.adb (Analyze_Aspect_Specifications): Add aspect
1896 Type_Invariant, Precondition, Postcondition.
1897 * snames.ads-tmpl: Add Name_Type_Invariant.
1898
bd949ee2
RD
18992011-08-01 Robert Dewar <dewar@adacore.com>
1900
1901 * freeze.adb (Freeze_Entity): Don't call Check_Aspect_At_Freeze_Point
1902 here.
1903 (Freeze_All_Ent): Fix error in handling inherited aspects.
1904 * sem_ch13.adb (Analyze_Aspect_Specifications): Skip aspect that is
1905 already analyzed, but don't skip entire processing of a declaration,
1906 that's wrong in some cases of declarations being rewritten.
1907 (Analyze_Aspect_Specification): Set Is_Delayed_Aspect in aspects.
1908 Don't delay for integer, string literals
1909 Treat predicates in usual manner for delay, remove special case code,
1910 not needed.
1911 (Analyze_Freeze_Entity): Make call to Check_Aspect_At_Freeze_Point
1912 (Build_Predicate_Function): Update saved expression in aspect
1913 (Build_Invariant_Procedure): Update saved expression in aspect
1914 * exp_ch4.adb (Expand_N_Selected_Component): Only do the optimization
1915 of replacement of discriminant references if the reference is simple.
1916
f1c952af
RD
19172011-08-01 Robert Dewar <dewar@adacore.com>
1918
1919 * aspects.ads, aspects.adb: Add Static_Predicate and Dynamic_Predicate.
1920 * sem_ch13.adb (Analyze_Aspect_Specification): Add processing for
1921 Static_Predicate and Dynamic_Predicate.
1922 (Build_Predicate_Function): Add processing for Static_Predicate
1923 and Dynamic_Predicate.
1924 * sinfo.ads, sinfo.adb (From_Dynamic_Predicate): New flag
1925 (From_Static_Predicate): New flag
1926 * snames.ads-tmpl: Add Name_Static_Predicate and Name_Dynamic_Predicate
1927
19282011-08-01 Robert Dewar <dewar@adacore.com>
1929
1930 * usage.adb: Documentation cleanup for Ada version modes in usage.
1931 * expander.adb: Minor reformatting.
1932
47e11d08
AC
19332011-08-01 Robert Dewar <dewar@adacore.com>
1934
1935 * atree.ads: Minor comment fix.
1936 * a-stwifi.adb, a-stzfix.adb, a-strfix.adb, a-ztexio.ads, a-textio.ads,
1937 a-witeio.ads, sem_prag.adb: Minor reformatting.
1938
19392011-08-01 Doug Rupp <rupp@adacore.com>
1940
1941 * env.c (__gnat_setenv) [VMS]: Force 32bit on item list structure
1942 pointers. Use descrip.h header file for convenience. Add some
1943 comments.
1944
19452011-08-01 Robert Dewar <dewar@adacore.com>
1946
1947 * freeze.adb (Freeze_Entity): Call Check_Aspect_At_Freeze_Point
1948 (Freeze_All): Call Check_Aspect_At_End_Of_Declarations
1949 * sem_ch13.ads, sem_ch13.adb (Check_Aspect_At_Freeze_Point):
1950 New procedure.
1951 (Check_Aspect_At_End_Of_Declarations): New procedure
1952 (Analye_Aspect_Specification): Minor changes for above procedures
1953 * sinfo.ads, sinfo.adb (Is_Delayed_Aspect): Now set in aspect
1954 specification node as well.
1955
19562011-08-01 Pascal Obry <obry@adacore.com>
1957
1958 * adaint.c (_gnat_stat): GetFilesAttributesEx() would fail on special
1959 Windows files. Use GetFilesAttributes() in this case to check for file
1960 existence instead of returning with an error code.
1961
a3a16b21
VC
19622011-08-01 Vincent Celier <celier@adacore.com>
1963
1964 * a-stzfix.adb, a-stwifi.adb (Replace_Slice): Fixed computation when
1965 High is above Source length.
1966
ff58cc69
RD
19672011-08-01 Robert Dewar <dewar@adacore.com>
1968
1969 * a-ztexio.ads, a-textio.ads, a-witeio.ads: Fix comment.
1970
6bb88533
AC
19712011-08-01 Robert Dewar <dewar@adacore.com>
1972
1973 * aspects.ads (Boolean_Aspects): New subtype.
1974 * exp_ch13.adb (Expand_Freeze_Entity): Fix errors in handling aspects
1975 for derived types in cases where the parent type and derived type have
1976 aspects.
1977 * freeze.adb (Freeze_Entity): Fix problems in handling derived type
1978 with aspects when parent type also has aspects.
1979 (Freeze_Entity): Deal with delay of boolean aspects (must evaluate
1980 boolean expression at this point).
1981 * sem_ch13.adb (Analyze_Aspect_Specifications): Delay all aspects in
1982 accordance with final decision on the Ada 2012 feature.
1983 * sinfo.ads, sinfo.adb (Is_Boolean_Aspect): New flag.
1984
19852011-08-01 Matthew Heaney <heaney@adacore.com>
1986
1987 * a-chtgbo.adb (Delete_Node_Sans_Free): Replace iterator with selector.
1988
060a3f28
AC
19892011-08-01 Pascal Obry <obry@adacore.com>
1990
1991 * a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb:
1992 Fix Replace_Slice when High is above current string size.
1993 (Replace_Slice): Fix DL computation when High is above current
1994 string length.
1995
19962011-08-01 Gary Dismukes <dismukes@adacore.com>
1997
1998 * gnat_rm.texi: Add documentation for pragma Static_Elaboration_Desired.
1999
e7f567a3
AC
20002011-08-01 Matthew Heaney <heaney@adacore.com>
2001
2002 * a-rbtgbo.adb (Delete_Node_Sans_Free): Fixed assignment to left child
2003 of node.
2004
20052011-08-01 Pascal Obry <obry@adacore.com>
2006
2007 * a-stzunb-shared.adb, a-strunb-shared.adb, a-stwiun-shared.adb: Minor
2008 reformatting.
2009
1a265e78
AC
20102011-08-01 Ed Schonberg <schonberg@adacore.com>
2011
2012 * sem_attr.adb (Analyze_Attribute, case 'Access): Handle properly named
2013 access to protected subprograms in generic bodies.
2014 * sem_ch6.adb (Analyze_Subprogram_Declaration): If the context is a
2015 protected type, indicate that the convention of the subprogram is
2016 Convention_Protected, because it may be used in subsequent declarations
2017 within the protected declaration.
2018
20192011-08-01 Vincent Celier <celier@adacore.com>
2020
2021 * mlib-prj.adb (Build_Library): Use "ada_" as the prefix for the "init"
2022 and "final" procedures when the name of the library is "ada", to avoid
2023 duplicate symbols "adainit" and "adafinal" in executables.
2024
67e28ef8
ES
20252011-08-01 Ed Schonberg <schonberg@adacore.com>
2026
2027 * sem_attr.adb (Analyze_Attribute, case 'Result): Handle properly a
2028 quantified expression that appears within a postcondition and uses the
2029 Ada2012 'Result attribute.
2030
6da2ca7d
RO
20312011-07-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2032
2033 * init.c (__gnat_error_handler): Cast reason to int.
2034 (__gnat_install_handler): Explain sa_sigaction use.
2035
7d5997c6
EB
20362011-07-24 Eric Botcazou <ebotcazou@adacore.com>
2037
2038 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: If the
2039 subprogram has copy-in copy-out parameters, try to promote the mode of
2040 the return type if it is passed in registers.
2041
4b4cfdd5
EB
20422011-07-24 Eric Botcazou <ebotcazou@adacore.com>
2043
2044 * gcc-interface/utils2.c (build_binary_op) <ARRAY_REF>: Do not mark the
2045 left operand as addressable.
2046
f3d34576
EB
20472011-07-24 Eric Botcazou <ebotcazou@adacore.com>
2048
2049 * gcc-interface/gigi.h (build_function_stub): Remove.
2050 (build_return_expr): Likewise.
2051 (convert_vms_descriptor): Declare.
2052 * gcc-interface/utils.c (convert_vms_descriptor): Make global.
2053 (build_function_stub): Move to...
2054 * gcc-interface/utils2.c (build_return_expr): Move to...
2055 * gcc-interface/trans.c (build_function_stub): ...here.
2056 (build_return_expr): ...here.
2057 (Subprogram_Body_to_gnu): Add local variable for language_function.
2058 Disconnect the parameter attributes cache, if any, once done with it.
2059 Call end_subprog_body only after setting the end_locus.
2060 Build the stub associated with the function, if any, at the very end.
2061 (gnat_to_gnu) <N_Return_Statement>: Remove couple of useless local
2062 variables and streamline control flow.
2063
0a6ecc08
AC
20642011-07-23 Arnaud Charlet <charlet@adacore.com>
2065
2066 PR ada/49819
2067 * gcc-interface/Makefile.in (powerpc-linux): Remove reference to
2068 g-trasym-dwarf.adb.
2069
5b6d595b
RO
20702011-07-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2071
2072 PR bootstrap/49794
2073 * init.c [sun && __SVR4 && !__vxworks] (__gnat_install_handler):
2074 Assign to act.sa_sigaction.
2075 * tracebak.c [USE_GENERIC_UNWINDER] (__gnat_backtrace): Cast
2076 current->return_address to char * before arithmetic.
2077
94017021
RO
20782011-07-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2079
2080 * init.c [sgi] (__gnat_error_handler): Update sigaction(2) citation.
2081 Correct argument types.
2082 Extract code from reason.
2083 (__gnat_install_handler): Assign to act.sa_sigaction.
2084
52fd02bb
EB
20852011-07-21 Eric Botcazou <ebotcazou@adacore.com>
2086
2087 * gcc-interface/Make-lang.in (GNAT1_ADA_OBJS): Move ada/b_gnat1.o to...
2088 (GNAT1_OBJS): ...here.
2089
f39a9ca2
EB
20902011-07-15 Eric Botcazou <ebotcazou@adacore.com>
2091
2092 PR ada/48711
2093 * g-socthi-mingw.adb (Fill): Fix formatting.
2094
9e36aa23
EB
2095 * gcc-interface/gigi.h: Move around comment.
2096
e3aca522
JDA
20972011-07-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2098
2099 PR ada/46350
2100 * s-taprop-hpux-dce.adb (Abort_Task): Remove unnecessary cast.
2101
696b1960
FW
21022011-07-14 Florian Weimer <fw@deneb.enyo.de>
2103
2104 PR ada/48711
2105 * g-socthi-mingw.adb (Fill): Guard against invalid MSG_WAITALL.
2106
f542c405
EB
21072011-07-13 Eric Botcazou <ebotcazou@adacore.com>
2108
2109 * gcc-interface/utils.c (build_vms_descriptor32): Skip the 32-bit
2110 range comparison if Pmode is SImode.
2111
9e9bd455
LG
21122011-07-12 Laurent GUERBY <laurent@guerby.net>
2113 Eric Botcazou <ebotcazou@adacore.com>
2114
2115 * adadecode.c: Wrap up in extern "C" block.
2116 * adadecode.h: Likewise.
2117 * adaint.c: Likewise. Remove 'const' keyword.
2118 * adaint.h: Likewise.
2119 * argv.c: Likewise.
2120 * atree.h: Likewise.
2121 * cio.c: Likewise.
2122 * cstreams.c: Likewise.
2123 * env.c: Likewise.
2124 * exit.c: Likewise.
2125 * fe.h: Likewise.
2126 * final.c: Likewise.
2127 * init.c: Likewise.
2128 * initialize.c: Likewise.
2129 * link.c: Likewise.
2130 * namet.h: Likewise.
2131 * nlists.h: Likewise.
2132 * raise.c: Likewise.
2133 * raise.h: Likewise.
2134 * repinfo.h: Likewise.
2135 * seh_init.c: Likewise.
2136 * targext.c: Likewise.
2137 * tracebak.c: Likewise.
2138 * uintp.h: Likewise.
2139 * urealp.h: Likewise.
2140 * xeinfo.adb: Wrap up generated C code in extern "C" block.
2141 * xsinfo.adb: Likewise.
2142 * xsnamest.adb: Likewise.
2143 * gcc-interface/gadaint.h: Wrap up in extern "C" block.
2144 * gcc-interface/gigi.h: Wrap up some prototypes in extern "C" block.
2145 * gcc-interface/misc.c: Likewise.
2146 * gcc-interface/Make-lang.in (GCC_LINK): Use LINKER.
2147 (GNAT1_C_OBJS): Remove ada/b_gnat1.o. List ada/seh_init.o and
2148 ada/targext.o here...
2149 (GNAT_ADA_OBJS): ...and not here.
2150 (GNAT1_ADA_OBJS): Add ada/b_gnat1.o.
2151 (GNATBIND_OBJS): Reorder.
2152
7644b3c7
RH
21532011-07-07 Richard Henderson <rth@redhat.com>
2154
2155 * gcc-interface/misc.c (gnat_init_gcc_eh): Don't call
2156 dwarf2out_frame_init.
2157
8384ac41
EB
21582011-07-07 Eric Botcazou <ebotcazou@adacore.com>
2159
2160 * gcc-interface/misc.c (gnat_init): Tweak previous change.
2161
fbdd5d87
RO
21622011-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2163
2164 PR target/39150
2165 * gcc-interface/Makefile.in: Handle x86_64-solaris2.
2166
1a072294
RG
21672011-07-06 Richard Guenther <rguenther@suse.de>
2168
8384ac41
EB
2169 * gcc-interface/misc.c (gnat_init): Merge calls to
2170 build_common_tree_nodes and build_common_tree_nodes_2.
1a072294
RG
2171 Re-initialize boolean_false_node.
2172
bc712852
EB
21732011-07-02 Eric Botcazou <ebotcazou@adacore.com>
2174 Olivier Hainque <hainque@adacore.com>
2175 Nicolas Setton <setton@adacore.com>
2176
2177 * gcc-interface/utils.c (record_builtin_type): Set TYPE_ARTIFICIAL on
2178 the type according to the ARTIFICIAL_P parameter.
2179 (create_type_decl): Likewise.
2180 (create_type_stub_decl): Set TYPE_ARTIFICIAL on the type to 1.
2181
2eb22389
EB
21822011-07-01 Eric Botcazou <ebotcazou@adacore.com>
2183
2184 * gcc-interface/Make-lang.in (gnat1): Prepend '+' to the command.
2185 (gnatbind): Likewise.
2186
4bdaaf2f
RO
21872011-06-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2188
2189 * gcc-interface/Makefile.in (TOOLS_LIBS): Add $(LIBINTL).
2190
c020c92b
EB
21912011-06-18 Eric Botcazou <ebotcazou@adacore.com>
2192
2193 * gcc-interface/decl.c (gnat_to_gnu_component_type): Use GNAT_TYPE
2194 local variable throughout. Remove useless call to Base_Type.
2195 (gnat_to_gnu_field): Use GNAT_FIELD_TYPE local variable throughout.
2196 Take it also into account for the volatileness of the field. Set the
2197 TREE_SIDE_EFFECTS flag as well in this case. Reorder some warnings.
2198
96769d32
EB
21992011-06-18 Eric Botcazou <ebotcazou@adacore.com>
2200
2201 * gcc-interface/trans.c (Identifier_to_gnu): Don't set TREE_THIS_NOTRAP
2202 on a dereference built for a by-ref object if it has an address clause.
2203
7e4680c1
EB
22042011-06-18 Eric Botcazou <ebotcazou@adacore.com>
2205
2206 * einfo.ads (Address_Taken): Document use for the second argument of
2207 Asm_Input and Asm_Output attributes.
2208 * sem_attr.adb (Analyze_Attribute) <Attribute_Asm_Input>: If the second
2209 argument is an entity name, then set Address_Taken on it.
2210 <Attribute_Asm_Output>: Likewise.
2211 * gcc-interface/trans.c (lvalue_required_for_attribute_p): Handle the
2212 Attr_Asm_Input and Attr_Asm_Output attributes explicitly.
2213 (gnat_to_gnu) <N_Code_Statement>: If an operand is going to end up in
2214 memory and is a CONST_DECL, retrieve its corresponding VAR_DECL.
2215
22162011-06-16 Joern Rennecke <joern.rennecke@embecosm.com>
d5cc9181
JR
2217
2218 PR middle-end/46500
2219 * gcc-interface/decl.c (gnat_to_gnu_param): Use pack_cumulative_args.
2220
677f3fa8
JM
22212011-06-14 Joseph Myers <joseph@codesourcery.com>
2222
2223 * gcc-interface/Make-lang.in (gnatbind$(exeext)): Use ggc-none.o.
2224 (ada/utils.o): Update dependencies.
2225 * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Add
2226 ../../../libcpp/libcpp.a.
2227 * gcc-interface/utils.c: Include common/common-target.h.
2228 (process_attributes): Use targetm_common.have_named_sections.
2229
009db074
RG
22302011-06-07 Richard Guenther <rguenther@suse.de>
2231
0bad0e23
EB
2232 * gcc-interface/misc.c (gnat_init): Do not set size_type_node or call
2233 set_sizetype.
009db074 2234
3bfc61cf
EB
22352011-06-06 Eric Botcazou <ebotcazou@adacore.com>
2236
0bad0e23 2237 * gcc-interface/utils2.c (gnat_stabilize_reference): Propagate the
3bfc61cf
EB
2238 TREE_THIS_NOTRAP flag.
2239
5c4a1c7b
EB
22402011-06-06 Eric Botcazou <ebotcazou@adacore.com>
2241
2242 * gcc-interface/utils2.c (gnat_stabilize_reference) <COMPOUND_EXPR>:
2243 Fix thinko.
2244
e9f57686
EB
22452011-06-06 Eric Botcazou <ebotcazou@adacore.com>
2246
2247 * gcc-interface/trans.c (Identifier_to_gnu): Also handle deferred
2248 constants whose full view has discriminants specially.
2249
10e4d056
EB
22502011-06-06 Eric Botcazou <ebotcazou@adacore.com>
2251
2252 * gcc-interface/utils.c: Include diagnostic.h.
2253 (gnat_write_global_declarations): Output debug information for all
2254 global type declarations before finalizing the compilation unit.
2255 * gcc-interface/Make-lang.in (ada/utils.o): Add dependency.
2256
0957c029
JJ
22572011-05-25 Jakub Jelinek <jakub@redhat.com>
2258
2259 * gcc-interface/utils.c (def_fn_type): Remove extra va_end.
2260
52d0a7ac
KT
22612011-05-25 Kai Tietz <ktietz@redhat.com>
2262
2263 * adaint.c (__gnat_to_canonical_file_list_next): Use array
2264 initialization instead of const/none-const pointer assignment.
2265
1ed1641d
JM
22662011-05-24 Joseph Myers <joseph@codesourcery.com>
2267
2268 * gcc-interface/Make-lang.in (GNAT1_OBJS): Don't include
2269 $(EXTRA_GNAT1_OBJS).
2270 (GNATBIND_OBJS): Don't include $(EXTRA_GNATBIND_OBJS).
2271 (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Remove.
2272 (gnat1$(exeext), gnatbind$(exeext)): Use libcommon-target.a.
2273 * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use
2274 libcommon-target.a instead of prefix.o.
2275
9fe72ebd
JM
22762011-05-21 Joseph Myers <joseph@codesourcery.com>
2277
2278 PR ada/49097
0bad0e23 2279 * gcc-interface/Make-lang.in (gnatbind$(exeext)): Depend on $(LIBDEPS).
9fe72ebd 2280
2691e6d7
JM
22812011-05-20 Joseph Myers <joseph@codesourcery.com>
2282
0bad0e23
EB
2283 * gcc-interface/Make-lang.in (EXTRA_GNATBIND_OBJS): Remove version.o.
2284 * gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use libcommon.a
2285 instead of version.o.
2691e6d7 2286
bf6490b5
KT
22872011-05-18 Kai Tietz <ktietz@redhat.com>
2288
2289 * gcc-interface/trans.c (Exception_Handler_to_gnu_sjlj): Use
2290 boolean_false_node instead of integer_zero_node.
2291 (convert_with_check): Likewise.
2292 * gcc-interface/decl.c (choices_to_gnu): Likewise.
2293
7bf9a5ac
EB
22942011-05-12 Eric Botcazou <ebotcazou@adacore.com>
2295
2296 * gcc-interface/trans.c (call_to_gnu): In the by-reference case, if the
2297 type of the parameter is an unconstrained array, convert the actual to
2298 the type of the formal in the In Out and Out cases as well.
2299
e5b00edf
NF
23002011-05-11 Nathan Froyd <froydnj@codesourcery.com>
2301
2302 * gcc-interface/utils.c (def_fn_type): Don't call build_function_type;
2303 call build_function_type_array or build_varargs_function_type_array
2304 instead.
2305 (create_subprog_type): Don't call build_function_type; call
2306 build_function_type_vec instead.
2307
51545682
NF
23082011-05-11 Nathan Froyd <froydnj@codesourcery.com>
2309
2310 * gcc-interface/ada-tree.h (TYPE_OBJECT_RECORD_TYPE): Use TYPE_MINVAL.
2311 (TYPE_GCC_MIN_VALUE): Use TYPE_MINVAL.
2312 (TYPE_GCC_MAX_VALUE): Use TYPE_MAXVAL.
2313
c99c0026
EB
23142011-05-07 Eric Botcazou <ebotcazou@adacore.com>
2315
f620bd21
EB
2316 * gcc-interface/decl.c (intrin_arglists_compatible_p): Remove spaces.
2317
c99c0026
EB
2318 * gcc-interface/gigi.h (global_bindings_p): Adjust prototype.
2319 * gcc-interface/utils.c (global_bindings_p): Return bool and simplify.
2320
3d528853
NF
23212011-05-05 Nathan Froyd <froydnj@codesourcery.com>
2322
c99c0026 2323 * gcc-interface/trans.c (Case_Statement_to_gnu): Call build_case_label.
3d528853 2324
d7d058c5
NF
23252011-05-05 Nathan Froyd <froydnj@codesourcery.com>
2326
2327 * gcc-interface/decl.c (intrin_arglists_compatible_p): Use iterators
2328 instead of accessing TYPE_ARG_TYPES directly.
2329 * gcc-interface/utils.c (handle_nonnull_attribute): Likewise.
2330
805e60a0
EB
23312011-05-05 Eric Botcazou <ebotcazou@adacore.com>
2332
2333 PR ada/48844
2334 * gcc-interface/gigi.h (get_variant_part): Declare.
2335 * gcc-interface/decl.c (get_variant_part): Make global.
2336 * gcc-interface/utils2.c (find_common_type): Do not return T1 if the
2337 types have the same constant size, are record types and T1 has a
2338 variant part while T2 doesn't.
2339
907a08d9
EB
23402011-05-05 Eric Botcazou <ebotcazou@adacore.com>
2341
2342 * gcc-interface/utils.c (begin_subprog_body): Do not call
2343 get_pending_sizes.
2344 (end_subprog_body): Likewise.
2345
d35936ab
RG
23462011-05-04 Richard Guenther <rguenther@suse.de>
2347
2348 * gcc-interface/trans.c (gnat_to_gnu): Remove zero notrunc argument to
2349 int_const_binop.
2350 (pos_to_constructor): Likewise.
2351
c1fd8753
NF
23522011-05-03 Nathan Froyd <froydnj@codesourcery.com>
2353 Eric Botcazou <ebotcazou@adacore.com>
2354
2355 * gcc-interface/trans.c (gigi): Call build_function_type_list instead
2356 of build_function_type. Adjust calls to...
2357 (build_raise_check): ...this. Do not take a void_tree parameter.
2358 Call build_function_type_list instead of build_function_type.
2359 Fix head comment and swap couple of conditional blocks.
2360
4fb87d2b
EB
23612011-04-30 Eric Botcazou <ebotcazou@adacore.com>
2362
2363 * gnatvsn.ads (Library_Version): Bump to 4.7.
2364 (Current_Year): Bump to 2011.
2365
fa5e5a76
MM
23662011-04-29 Michael Matz <matz@suse.de>
2367
2368 * gcc-interface/misc.c (gnat_handle_option): Set
2369 warn_maybe_uninitialized.
2370
8d6a2f69
GP
23712011-04-23 Gerald Pfeifer <gerald@pfeifer.com>
2372
2373 * gnat_ugn.texi (Complexity Metrics Control): Update link to
2374 the Watson/McCabe paper.
2375
770937fd
JM
23762011-04-23 Jim Meyering <meyering@redhat.com>
2377
2378 * gnat_ugn.texi (Examples of gnatxref Usage): Fix typo: s/it it/it is/
2379
eb601ae1
EB
23802011-04-22 Eric Botcazou <ebotcazou@adacore.com>
2381
2382 * gcc-interface/decl.c (make_packable_type): Copy DECL_PARALLEL_TYPE
2383 onto the new type.
2384
7d7fcb08
EB
23852011-04-22 Eric Botcazou <ebotcazou@adacore.com>
2386
2387 * gcc-interface/gigi.h (create_subprog_decl): Add ARTIFICIAL_FLAG
2388 parameter.
2389 * gcc-interface/utils.c (create_subprog_decl): Likewise. Set
2390 DECL_ARTIFICIAL and DECL_NO_INLINE_WARNING_P on the DECL accordingly.
2391 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Add
2392 ARTIFICIAL_FLAG local variable and pass it to create_subprog_decl.
2393 <all>: Do not set flags on the reused DECL node coming from an alias.
2394 Set DECL_IGNORED_P on the DECL node built for subprograms if they
2395 don't need debug info here...
2396 * gcc-interface/trans.c (Subprogram_Body_to_gnu): ...and not here.
2397 (gigi): Adjust calls to create_subprog_decl.
2398 (build_raise_check): Likewise.
2399 (establish_gnat_vms_condition_handler): Likewise.
2400 (Compilation_Unit_to_gnu): Likewise.
2401 (gnat_to_gnu): Likewise.
2402
e1876cac
EB
24032011-04-21 Eric Botcazou <ebotcazou@adacore.com>
2404
2405 * gcc-interface/Makefile.in (NO_SIBLING_ADAFLAGS): Always define.
2406 (NO_REORDER_ADAFLAGS): New variable.
2407 (EXTRA_GNATTOOLS): Always define.
2408 (../stamp-gnatlib1-$(RTSDIR): Copy tsystem.h.
2409 Clean up and adjust list of files compiled with special options.
2410 * gcc-interface/Make-lang.in: Likewise.
2411 (ada/decl.o): Cosmetical change.
2412 (ada/misc.o): Remove dependency on $(PLUGIN_H).
2413
04695783
JM
24142011-04-20 Jim Meyering <meyering@redhat.com>
2415
2416 * initialize.c (__gnat_initialize): Remove useless if-before-free.
2417
23399579
EB
24182011-04-17 Eric Botcazou <ebotcazou@adacore.com>
2419
2420 * gcc-interface/Make-lang.in (gnatbind): Replace $(ALL_CFLAGS) with
2421 $(CFLAGS) on the link line.
2422
51c5169c
EB
24232011-04-17 Eric Botcazou <ebotcazou@adacore.com>
2424
2425 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Function>: Declare the
2426 padded type built for the return type if it is unconstrained.
2427
61e46a7d
NF
24282011-04-14 Nathan Froyd <froydnj@codesourcery.com>
2429
2430 * gcc-interface/utils.c (gnat_poplevel): Use block_chainon.
2431
81f653d6
NF
24322011-04-12 Nathan Froyd <froydnj@codesourcery.com>
2433
b4867846
EB
2434 * gcc-interface/ada-tree.h (union lang_tree_node): Check for TS_COMMON
2435 before calling TREE_CHAIN.
81f653d6
NF
2436 * gcc-interface/misc.c (gnat_init_ts): New function.
2437 (LANG_HOOKS_INIT_TS): Define.
2438
a358e188
MJ
24392011-04-12 Martin Jambor <mjambor@suse.cz>
2440
b4867846
EB
2441 * gcc-interface/utils.c (end_subprog_body): Call cgraph_get_create_node
2442 instead of cgraph_node.
a358e188 2443
29b1c5a4
EB
24442011-04-08 Eric Botcazou <ebotcazou@adacore.com>
2445
2446 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Set minimum
2447 alignment on fields of the RETURN type built for the Copy-In Copy-Out
2448 mechanism.
2449
88872b00
EB
24502011-04-08 Eric Botcazou <ebotcazou@adacore.com>
2451
2452 * gcc-interface/trans.c (Identifier_to_gnu): Do not return initializers
2453 of aggregate types that contain a placeholder.
2454
dcf0c47e
NF
24552011-04-08 Nathan Froyd <froydnj@codesourcery.com>
2456
2457 * gcc-interface/utils.c (handle_sentinel_attribute): Don't use
b4867846 2458 TYPE_ARG_TYPES.
dcf0c47e
NF
2459 (handle_type_generic_attribute): Likewise.
2460
53e3000c
EB
24612011-04-04 Eric Botcazou <ebotcazou@adacore.com>
2462
2463 PR ada/47163
2464 * s-oscons-tmplt.c (MSG_WAITALL): Fix thinko in previous change.
2465
ab380bb4
KT
24662011-04-04 Kai Tietz <ktietz@redhat.com>
2467
2468 PR ada/47163
0bad0e23
EB
2469 * s-oscons-tmplt.c (MSG_WAITALL): Define it for native windows targets
2470 to flag value.
ab380bb4 2471
8ffac116
EB
24722011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2473
2474 * gcc-interface/utils2.c (build_allocator): In the unconstrained array
2475 type case, do not strip a padding type around the array type.
2476
de9528f0
EB
24772011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2478
2479 * gcc-interface/utils.c (update_pointer_to): Finalize named pointer
2480 types.
2481
d9d7a26c
EB
24822011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2483
2484 * gcc-interface/lang.opt (feliminate-unused-debug-types): Delete.
2485 * gcc-interface/misc.c (gnat_handle_option): Remove special handling
de9528f0 2486 code for -feliminate-unused-debug-types.
d9d7a26c
EB
2487 (gnat_post_options): Likewise.
2488
4cb12a90
EB
24892011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2490
2491 * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial
2492 declaration of a pointer type, then set DECL_ORIGINAL_TYPE to a
2493 distinct copy.
2494
acccc61c
EB
24952011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2496
2497 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not force the
2498 DECL_ARTIFICIAL flag on enumeration types.
2499
583eb0c9
EB
25002011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2501
2502 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do not make
2503 fat pointer types artificial unconditionally.
2504 <E_Array_Subtype>: Attach the base array type as a parallel type if it
2505 isn't artificial.
2506
e3edbd56
EB
25072011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2508
2509 * gcc-interface/gigi.h (get_dummy_type): Declare.
2510 (build_dummy_unc_pointer_types): Likewise.
2511 (finish_fat_pointer_type): Likewise.
2512 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If a dummy
2513 fat pointer type has been built, complete it in place.
2514 <E_Access_Type>: Call build_dummy_unc_pointer_types to build dummy fat
2515 and thin pointers. Remove useless variable.
2516 (finish_fat_pointer_type): Make global and move to...
2517 * gcc-interface/utils.c (finish_fat_pointer_type): ...here.
2518 (get_dummy_type): New function.
2519 (build_dummy_unc_pointer_types): Likewise.
2520 (gnat_pushdecl): Propage the name to the anonymous variants only.
2521 (update_pointer_to): Only adjust the pointer types in the unconstrained
2522 array case.
2523
65444786
EB
25242011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2525
2526 * gcc-interface/ada-tree.h (DECL_TAFT_TYPE_P): New flag.
2527 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Incomplete_Type>: Set it
2528 if this is a Taft amendment type and the full declaration is available.
2529 * gcc-interface/trans.c (process_type): Likewise.
2530 If there is an old type, mark the new one as used if DECL_TAFT_TYPE_P.
2531 (process_freeze_entity): Likewise.
2532 * gcc-interface/utils.c (dummy_global): New static variable.
2533 (gnat_write_global_declarations): If there are types declared as used
2534 at the global level, insert them in the global hash table.
2535
1aeb40dd
EB
25362011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2537
2538 * gcc-interface/gigi.h (record_builtin_type): Add ARTIFICIAL_P param.
2539 * gcc-interface/utils.c (gnat_pushdecl): If this is a non-artificial
2540 declaration of an array type, then set DECL_ORIGINAL_TYPE to a distinct
2541 copy.
2542 (record_builtin_type): Add ARTIFICIAL_P parameter. Set DECL_ARTIFICIAL
2543 flag of the type accordingly.
2544 * gcc-interface/trans.c (gigi): Adjust calls to record_builtin_type.
2545
80ec8b4c
EB
25462011-04-02 Eric Botcazou <ebotcazou@adacore.com>
2547
2548 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer
2549 finalizing types when updating the pointers to the designated type.
2550 <all>: Finalize the deferred types even if we didn't defer processing
2551 of incomplete types in this invocation.
2552
2a9d769a
OH
25532011-04-01 Olivier Hainque <hainque@adacore.com>
2554 Nicolas Setton <setton@adacore.com>
2555 Eric Botcazou <ebotcazou@adacore.com>
2556
2557 * gcc-interface/misc.c (gnat_descriptive_type): New function.
2558 (LANG_HOOKS_DESCRIPTIVE_TYPE): Redefine to gnat_descriptive_type.
2559
2438d7a6
KT
25602011-03-28 Kai Tietz <ktietz@redhat.com>
2561
333d8aff 2562 * gcc-interface/Makefile.in (SO_LIB): Handle multilib build for native
80ec8b4c
EB
2563 Windows targets.
2564 (EH_MECHANISM): Use GCC exception mechanism for native Windows targets.
2565 * system-mingw.ads (System): Change ZCX_By_Default default to True.
333d8aff 2566
80ec8b4c 2567 * raise-gcc.c (PERSONALITY_FUNCTION): Add prototype.
2438d7a6 2568
8ad150f6
TG
25692011-03-28 Tristan Gingold <gingold@adacore.com>
2570
2571 PR ada/44431
80ec8b4c
EB
2572 * gcc-interface/Make-lang.in (ada/b_gnat1.adb): Replace ada/b_gnat1.c.
2573 Use ada output of gnatbind.
8ad150f6
TG
2574 (ada/b_gnatb.adb): Ditto.
2575 (ada/b_gnat1.o, ada/b_gnatb.o): New rules.
2576 (ada.mostlyclean, ada.stage1)
2577 (ada.stage2, ada.stage3, ada.stage4, ada.stageprofile)
2578 (ada.stagefeedback): Adjust.
80ec8b4c 2579 * gcc-interface/Makefile.in (b_gnatl.adb): Replace b_gnatl.c.
8ad150f6
TG
2580 Use ada output of gnatbind.
2581 (b_gnatm.adb): Ditto.
2582 (b_gnatl.o, b_gnatm.o): New rules.
2583
51c7954d
EB
25842011-03-26 Eric Botcazou <ebotcazou@adacore.com>
2585
2586 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL
2587 for the padded type built to support a specified size or alignment.
2588
6ddf9843
EB
25892011-03-26 Eric Botcazou <ebotcazou@adacore.com>
2590
2591 * gcc-interface/gigi.h (finalize_from_with_types): Adjust comment.
2592 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Defer
2593 unconditionally to the end of the unit when the designated type is
2594 limited_with'ed.
2595 <all>: Rename local variable. Attempt to un-defer types only and do it
2596 for limited_with'ed types as well.
2597 (finalize_from_with_types): Adjust comment. Rename variable and tidy.
2598 * gcc-interface/trans.c (Compilation_Unit_to_gnu): Use GNAT_UNIT
2599 consistently and remove redundant call to finalize_from_with_types.
2600
5daed84a
EB
26012011-03-26 Eric Botcazou <ebotcazou@adacore.com>
2602
2603 * inline.adb (Back_End_Cannot_Inline): Lift restriction on calls to
2604 subprograms without a previous spec declared in the same unit.
2605 * gcc-interface/trans.c (Compilation_Unit_to_gnu): Process inlined
2606 subprograms at the end of the unit instead of at the beginning.
2607 * gcc-interface/utils.c (create_subprog_decl): Check that the entity
2608 isn't public for the special handling of non-inline functions nested
2609 inside inline external functions.
2610
0edf1bb2
JL
26112011-03-25 Jeff Law <law@redhat.com>
2612
5daed84a 2613 * gcc-interface/utils.c (def_fn_type): Add missing va_end.
0edf1bb2 2614
e3c4580e
EB
26152011-03-24 Eric Botcazou <ebotcazou@adacore.com>
2616
2617 * einfo.ads (Size_Depends_On_Discriminant): Adjust description.
2618 * layout.adb (Compute_Size_Depends_On_Discriminant): New procedure
2619 to compute Set_Size_Depends_On_Discriminant.
2620 (Layout_Type): Call it on array types in back-end layout mode.
2621 * sem_util.adb (Requires_Transient_Scope): Return true for array
2622 types only if the size depends on the value of discriminants.
2623 * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Use the RHS
2624 type if the RHS is a call to a function that returns an unconstrained
2625 type with default discriminant.
2626
abbc8c7b
EB
26272011-03-24 Eric Botcazou <ebotcazou@adacore.com>
2628
2629 * gcc-interface/trans.c (gnat_to_gnu): Remove obsolete case of
2630 non-conversion to the nominal result type at the end.
2631
ddb5a105
EB
26322011-03-23 Eric Botcazou <ebotcazou@adacore.com>
2633
2634 * gcc-interface/trans.c (create_temporary): New function taken from...
2635 (create_init_temporary): ...here. Call it.
2636 (call_to_gnu): Create the temporary for the return value early, if any.
2637 Create it for a function with copy-in/copy-out parameters if there is
2638 no target; in other cases of copy-in/copy-out, use another temporary.
2639 Push the new binding level lazily. Add and rename local variables.
2640
0d853156
EB
26412011-03-23 Eric Botcazou <ebotcazou@adacore.com>
2642
2643 * gcc-interface/decl.c (validate_size): Improve comments and tweak
2644 error message.
2645 (set_rm_size): Likewise.
2646
4184ef1b
EB
26472011-03-23 Eric Botcazou <ebotcazou@adacore.com>
2648
2649 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create TYPE_DECL
2650 for the padded type built in order to support a specified alignment.
2651 Fix incorrect formatting.
2652
bf7eefab
EB
26532011-03-21 Eric Botcazou <ebotcazou@adacore.com>
2654
2655 PR bootstrap/48216
2656 * gcc-interface/decl.c (elaborate_expression_1): Localize GNU_DECL.
2657
ef0feeb2
EB
26582011-03-21 Eric Botcazou <ebotcazou@adacore.com>
2659
2660 * gcc-interface/decl.c (components_to_record): Add REORDER parameter,
2661 rename DEBUG_INFO_P into DEBUG_INFO and move P_GNU_REP_LIST parameter
2662 to the end of the list. Adjust recursive call. Rename local variable.
2663 If REORDER is true, reorder components of the record type.
2664 (gnat_to_gnu_entity): Pass OK_To_Reorder_Components flag as argument to
2665 components_to_record and adjust the parameter list.
2666
646f9414
EB
26672011-03-21 Eric Botcazou <ebotcazou@adacore.com>
2668
2669 * gcc-interface/decl.c (elaborate_expression_1): When optimization is
2670 disabled, use the variable for bounds of loop iteration scheme.
2671
62d784f7
KT
26722011-03-21 Kai Tietz <ktietz@redhat.com>
2673
2674 PR target/12171
0bad0e23 2675 * gcc-interface/utils.c (gnat_internal_attribute_table): Add column.
62d784f7 2676
f230d759
EB
26772011-03-17 Eric Botcazou <ebotcazou@adacore.com>
2678
2679 * gcc-interface/decl.c (elaborate_expression_1): Try harder to find
2680 out whether the expression is read-only. Short-circuit placeholder
2681 case and rename a couple of local variables.
2682
bb1f7929
EB
26832011-03-17 Eric Botcazou <ebotcazou@adacore.com>
2684
2685 * gcc-interface/gigi.h (smaller_form_type_p): Declare.
2686 * gcc-interface/trans.c (smaller_form_type_p): Make global and move...
2687 * gcc-interface/utils.c (smaller_form_type_p): ...to here.
2688 (convert): Deal with conversions from a smaller form type specially.
2689
400a2d24
EB
26902011-02-14 Eric Botcazou <ebotcazou@adacore.com>
2691
2692 * gcc-interface/misc.c (gnat_init_options): Do not concatenate -I and
2693 its argument, except for the special -I- switch.
2694
c26bc3ad
GP
26952011-02-12 Gerald Pfeifer <gerald@pfeifer.com>
2696
0bad0e23
EB
2697 * gnat_ugn.texi (Compiling Different Versions of Ada): Update link to
2698 "Ada Issues".
c26bc3ad 2699
07b8e910
EB
27002011-02-08 Eric Botcazou <ebotcazou@adacore.com>
2701
2702 * gcc-interface/Makefile.in (x86-64 darwin): Handle multilibs.
2703
31a5a547
EB
27042011-02-03 Eric Botcazou <ebotcazou@adacore.com>
2705
2706 * gcc-interface/gigi.h (fill_vms_descriptor): Take GNU_TYPE instead of
2707 GNAT_FORMAL.
2708 * gcc-interface/utils2.c (fill_vms_descriptor): Move from here to...
2709 * gcc-interface/utils.c (fill_vms_descriptor): ...here. Take GNU_TYPE
2710 instead of GNAT_FORMAL. Protect the expression against multiple uses.
2711 Do not generate the check directly, instead instantiate the template
2712 check present in the descriptor.
2713 (make_descriptor_field): Move around.
2714 (build_vms_descriptor32): Build a template check in the POINTER field.
2715 (build_vms_descriptor): Remove useless suffixes.
2716 * gcc-interface/trans.c (call_to_gnu): Adjust fill_vms_descriptor call.
2717
dcf25f59
EB
27182011-01-26 Eric Botcazou <ebotcazou@adacore.com>
2719
2720 PR bootstrap/47467
2721 * targext.c: Include target files if IN_RTS is defined.
2722
0418e131
RG
27232011-01-26 Richard Guenther <rguenther@suse.de>
2724
2725 PR bootstrap/47467
2726 * targext.c: Include config.h.
2727 * gcc-interface/Make-lang.in (ada/targext.o): Add $(CONFIG_H)
2728 dependency.
2729
c6eecbd8
PO
27302011-01-04 Pascal Obry <obry@adacore.com>
2731 Eric Botcazou <ebotcazou@adacore.com>
2732
2733 * gcc-interface/decl.c: Disable Stdcall convention handling for 64-bit.
2734
2d3c7e4f
EB
27352011-01-04 Eric Botcazou <ebotcazou@adacore.com>
2736
2737 * gcc-interface/trans.c (Case_Statement_to_gnu): Put the SLOC of the
2738 end-of-case on the end label and its associated gotos, if any.
2739
0394741f
EB
27402011-01-04 Eric Botcazou <ebotcazou@adacore.com>
2741
2742 * gcc-interface/trans.c (Subprogram_Body_to_gnu): Evaluate the
2743 expressions of the parameter cache within the statement group of
2744 the CICO mechanism.
2745
2a02d090
OH
27462011-01-04 Olivier Hainque <hainque@adacore.com>
2747 Eric Botcazou <ebotcazou@adacore.com>
2748
2749 * gcc-interface/trans.c (BLOCK_SOURCE_END_LOCATION): Provide default.
2750 (set_end_locus_from_node): New function.
2751 (Subprogram_Body_to_gnu): Use it to mark both the inner BIND_EXPR we
2752 make and the function end_locus.
2753 (Compilation_Unit_to_gnu): Call it instead of a straight Sloc_to_locus
2754 for the elaboration subprogram.
2755 (set_gnu_expr_location_from_node) <default case>: Use it to attempt to
2756 set the end_locus of the expression as well.
2757
89f5e978
EB
27582011-01-04 Eric Botcazou <ebotcazou@adacore.com>
2759
2760 PR ada/47131
2761 * gcc-interface/trans.c (Identifier_to_gnu): In SJLJ mode, do not make
2762 variables that are referenced in exception handlers volatile.
2763
2764
ad41bd84 2765\f
797103eb 2766Copyright (C) 2011 Free Software Foundation, Inc.
ad41bd84
JM
2767
2768Copying and distribution of this file, with or without modification,
2769are permitted in any medium without royalty provided the copyright
2770notice and this notice are preserved.
This page took 1.115048 seconds and 5 git commands to generate.