sem_ch6.adb (Analyze_Null_Procedure): New subprogram...
[gcc.git] / gcc / ada / ChangeLog
1 2013-04-11 Ed Schonberg <schonberg@adacore.com>
2
3 * sem_ch6.adb (Analyze_Null_Procedure): New subprogram, mostly
4 extracted from Analyze_Subprogram_Declaration, to handle null
5 procedure declarations that in ada 2012 can be completions of
6 previous declarations.
7
8 2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
9
10 * sem_prag.adb (Entity_Of): Moved to Exp_Util.
11 * exp_util.ads, exp_util.adb (Entity_Of): New routine.
12
13 2013-04-11 Robert Dewar <dewar@adacore.com>
14
15 * g-spipat.ads: Minor comment fix.
16
17 2013-04-11 Robert Dewar <dewar@adacore.com>
18
19 * sem_prag.adb, sem_util.adb, sem_res.adb, exp_ch4.adb: Minor
20 reformatting.
21
22 2013-04-11 Thomas Quinot <quinot@adacore.com>
23
24 * exp_util.ads (Fully_Qualified_Name_String): Document that the
25 constructed literal is the entity name in all upper case.
26
27 2013-04-11 Thomas Quinot <quinot@adacore.com>
28
29 * sem_util.adb (Set_Entity_With_Style_Check): Fix logic of
30 check for implementation defined identifiers.
31
32 2013-04-11 Yannick Moy <moy@adacore.com>
33
34 * checks.adb (Apply_Type_Conversion_Checks): Add an explanation
35 of why range check and length are put on different nodes.
36 * exp_ch4.adb (Apply_Type_Conversion_Checks): Remove check marks
37 when doing their expansion.
38
39 2013-04-11 Ed Schonberg <schonberg@adacore.com>
40
41 * sem_util.ads, sem_util.adb (Get_Incomplete_View_Of_Ancestor):
42 New function to implement the notion introduced in RM 7.3.1
43 (5.2/3): in a child unit, a derived type is within the derivation
44 class of an ancestor declared in a parent unit, even if there
45 is an intermediate derivation that does not see the full view
46 of that ancestor.
47 * sem_res.adb (Valid_Conversion): if all else fails, examine if an
48 incomplete view of an ancestor makes a numeric conversion legal.
49
50 2013-04-11 Ed Schonberg <schonberg@adacore.com>
51
52 * sem_ch6.adb: in Ada2012 operators can only have in
53 parameters.
54
55 2013-04-11 Vincent Celier <celier@adacore.com>
56
57 * makeutl.adb (Create_Binder_Mapping_File): Do not put into
58 the mapping file ALI files of sources that have been replaced.
59
60 2013-04-11 Vincent Celier <celier@adacore.com>
61
62 * projects.texi: Add subsection Duplicate Sources in Projects.
63
64 2013-04-11 Vincent Celier <celier@adacore.com>
65
66 * gnat_ugn.texi: Add documentation for gnatmake switch -droot_dir/**
67
68 2013-04-11 Arnaud Charlet <charlet@adacore.com>
69
70 * init.c (__gnat_install_handler): Only set up an alternate
71 stack when installing a signal handler for SIGSEGV.
72
73 2013-04-11 Thomas Quinot <quinot@adacore.com>
74
75 * g-socket.adb (Connect_Socket, timeout version): Call
76 underlying connect operation directly, not through the 2-argument
77 Connect_Socket thick binding, in order to avoid raising a junk
78 exception for the EINPROGRESS return.
79
80 2013-04-11 Robert Dewar <dewar@adacore.com>
81
82 * a-cdlili.adb: Minor addition of pragma Warnings (Off).
83
84 2013-04-11 Robert Dewar <dewar@adacore.com>
85
86 * hostparm.ads: Minor reformatting.
87
88 2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
89
90 * aspects.ads, aspects.adb: Add Aspect_Depends to all the relevant
91 tables.
92 * elists.ads, elists.adb (Contains): New routine.
93 * par-prag.adb: Pragma Depends does not need any special treatment
94 by the parser.
95 * sem_ch13.adb (Analyze_Aspect_Specifications):
96 Transform aspect Depends into a corresponding pragma.
97 (Check_Aspect_At_Freeze_Point): Aspect Depends does not need
98 inspection at its freeze point.
99 * sem_prag.adb (Analyze_Pragma): Perform analysis and
100 normalization of pragma Depends. Remove the use of function
101 Is_Duplicate_Item. Use End_Scope to uninstalle the formal
102 parameters of a subprogram. Add a value for pragma Depends in
103 table Sig_Flags.
104 (Is_Duplicate_Item): Removed.
105 * snames.ads-tmpl: Add predefined name for Depends as well as
106 a pragma identifier.
107
108 2013-04-11 Arnaud Charlet <charlet@adacore.com>
109
110 * gnat1drv.adb: Minor code clean up.
111
112 2013-04-11 Arnaud Charlet <charlet@adacore.com>
113
114 * debug.adb, sem_ch13.adb (Analyze_Enumeration_Representation_Clause):
115 Ignore enumeration rep clauses by default in CodePeer mode, unless
116 -gnatd.I is specified.
117
118 2013-04-11 Ed Schonberg <schonberg@adacore.com>
119
120 * sem_util.adb (Safe_To_Capture_Value): If the node belongs to
121 an expression that has been attached to the else_actions of an
122 if-expression, the capture is not safe.
123
124 2013-04-11 Yannick Moy <moy@adacore.com>
125
126 * checks.adb (Apply_Type_Conversion_Checks): Put check mark on type
127 conversion for arrays.
128
129 2013-04-11 Robert Dewar <dewar@adacore.com>
130
131 * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb: Minor reformatting.
132
133 2013-04-11 Johannes Kanig <kanig@adacore.com>
134
135 * adabkend.adb: Minor comment addition.
136
137 2013-04-11 Matthew Heaney <heaney@adacore.com>
138
139 * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb ("="): Increment
140 lock counts before entering loop.
141 (Find): Ditto.
142 (Is_Sorted, Merge, Sort): Ditto.
143 (Reverse_Find): Ditto.
144 (Splice_Internal): Internal operation to refactor splicing logic.
145 (Splice): Some logic moved into Splice_Internal.
146
147 2013-04-11 Johannes Kanig <kanig@adacore.com>
148
149 * adabkend.adb (Scan_Compiler_Arguments): Do not call
150 Set_Output_Object_File_Name in Alfa_Mode
151 * gnat1drv.adb (Adjust_Global_Switches): Take Alfa_Mode into account.
152 * opt.ads: Fix documentation.
153
154 2013-04-11 Robert Dewar <dewar@adacore.com>
155
156 * sem_res.adb: Minor code reorganization and comment fixes.
157 * sem_type.adb: Minor reformatting.
158
159 2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
160
161 * exp_ch4.adb (Process_Transient_Object): Add new
162 local variable Fin_Call. Remove and explain ??? comment. Use the
163 Actions of logical operators "and then" and "or else" to insert
164 the generated finalization call.
165
166 2013-04-11 Eric Botcazou <ebotcazou@adacore.com>
167
168 * gnat_rm.texi: Fix typo.
169
170 2013-04-11 Ed Schonberg <schonberg@adacore.com>
171
172 * sem_res.adb: Minor reformatting.
173
174 2013-04-11 Robert Dewar <dewar@adacore.com>
175
176 * atree.h: Add declarations for Flag255-Flag289 Fix declaration
177 of Field30 (was wrong, but no effect, since not yet referenced by
178 back end) Add declarations for Field31-Field35 Add declarations
179 for Node31-Node35.
180 * einfo.ads, einfo.adb (Has_Invariants): No longer applies to
181 procedures.
182 (Has_Predicates): No longer applies to functions.
183 (Is_Predicate_Function): New flag.
184 (Is_Predicate_Function_M): New flag.
185 (Is_Invariant_Procedure): New flag.
186 (Predicate_Function_M): New function.
187 (Set_Predicate_Function_M): New procedure.
188 * exp_ch11.adb (Expand_N_Raise_Expression): Take care of special
189 case of appearing in predicate used for membership test.
190 * exp_ch3.adb (Insert_Component_Invariant_Checks): Set
191 Is_Invariant_Procedure flag.
192 * exp_ch4.adb (Expand_Op_In): Call special predicate function
193 that takes care of raise_expression nodes in the predicate.
194 * exp_util.ads, exp_util.adb (Make_Predicate_Call): Add argument Mem for
195 membership case.
196 * sem_ch13.adb (Build_Predicate_Functions): New name for
197 Build_Predicate_Function. Major rewrite to take care of raise
198 expression in predicate for membership tests.
199 * sem_res.adb (Resolve_Actuals): Include both predicate functions
200 in defense against infinite predicate function loops.
201 * sinfo.ads, sinfo.adb (Convert_To_Return_False): New flag.
202
203 2013-04-11 Robert Dewar <dewar@adacore.com>
204
205 * sem_prag.adb: Minor reformatting.
206
207 2013-04-11 Ed Schonberg <schonberg@adacore.com>
208
209 * lib-xref.adb: Generate reference for component of anonymous
210 access type.
211
212 2013-04-11 Robert Dewar <dewar@adacore.com>
213
214 * stand.ads: Minor reformatting.
215
216 2013-04-11 Matthew Heaney <heaney@adacore.com>
217
218 * a-convec.adb, a-coinve.adb, a-cobove.adb ("="): Increment lock
219 counts before entering loop.
220 (Find, Find_Index): Ditto.
221 (Is_Sorted, Merge, Sort): Ditto.
222 (Reverse_Find, Reverse_Find_Index): Ditto.
223
224 2013-04-11 Robert Dewar <dewar@adacore.com>
225
226 * exp_ch11.ads, exp_ch11.adb (Expand_N_Raise_Expression): New procedure.
227 * exp_util.adb (Insert_Actions): Add entry for N_Raise_Expression.
228 * expander.adb: Add call to Expand_N_Raise_Expression.
229 * par-ch11.adb (P_Raise_Expression): New procedure.
230 * par-ch4.adb (P_Relation): Handle Raise_Expression.
231 * par.adb (P_Raise_Expression): New procedure.
232 * sem.adb: Add handling for N_Raise_Expression.
233 * sem_ch11.ads, sem_ch11.adb (Analyze_Raise_Expression): New procedure.
234 * sem_res.adb (Resolve): Add handling for N_Raise_Expression.
235 * sinfo.ads, sinfo.adb (N_Raise_Expression): New node.
236 * sprint.adb (Sprint_Node_Actual): Add handling for N_Raise_Expression.
237 * stand.ads (Any_Type): Document use with N_Raise_Expression.
238
239 2013-04-11 Vincent Celier <celier@adacore.com>
240
241 * gnat_ugn.texi: Remove section "The Development Environments"
242 now that all predefined attributes are documented, including
243 those in package IDE.
244
245 2013-04-11 Ed Schonberg <schonberg@adacore.com>
246
247 * sem_ch6.adb: Preserve parent link in copy of expression.
248
249 2013-04-11 Vincent Celier <celier@adacore.com>
250
251 * projects.texi: Complete rewrite of the subsection Attributes
252 in section "Project file Reference".
253
254 2013-04-11 Robert Dewar <dewar@adacore.com>
255
256 * exp_ch4.adb: Minor reformatting.
257
258 2013-04-11 Robert Dewar <dewar@adacore.com>
259
260 * exp_ch4.adb (Expand_Concatenate): Remove wrapping in
261 expression-with-actions node. No longer needed given fix to
262 sem_prag and caused loss of some useful warnings.
263 * sem.ads: Minor reformatting.
264 * sem_prag.adb (Check_Disabled): Removed, to be replaced by not
265 Check_Enabled. These two routines were curiously incompatible
266 causing confusion.
267 (Analyze_Pragma, case Check): Make sure we do
268 not expand the string argument if the check is disabled. Avoid
269 use of Check_Disabled, which resulted in missing analysis in
270 some cases.
271 * sem_prag.ads (Check_Disabled): Removed, to be replaced by not
272 Check_Enabled. These two routines were curiously incompatible
273 causing confusion.
274
275 2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
276
277 * exp_ch4.adb (Process_Transient_Object): Use
278 an unchecked conversion when associating a transient controlled
279 object with its "hook".
280
281 2013-04-11 Ed Schonberg <schonberg@adacore.com>
282
283 * sem_prag.adb (Analyze_Pragma, case
284 Preelaborable_Initialization): The pragma is legal if it comes
285 from an aspect on the private view of the type, even though its
286 analysis point takes place later at the freeze point.
287
288 2013-04-11 Robert Dewar <dewar@adacore.com>
289
290 * sem_ch6.adb: Minor reformatting.
291
292 2013-04-11 Yannick Moy <moy@adacore.com>
293
294 * ali-util.adb (Read_Withed_ALIs): Do not consider it an error to
295 read ALI files with No_Object=True in Alfa mode.
296 * gnat1drv.adb: Set appropriately Back_End_Mode in Alfa mode, whether
297 this is during frame condition generation of translation to Why.
298
299 2013-04-11 Robert Dewar <dewar@adacore.com>
300
301 * exp_ch4.adb: Minor code reorganization
302 * types.ads: Minor reformatting.
303
304 2013-04-11 Johannes Kanig <kanig@adacore.com>
305
306 * opt.ads New global boolean Frame_Condition_Mode to avoid
307 referring to command line switch.
308 * gnat1drv.adb (Gnat1drv) set frame condition mode when -gnatd.G
309 is present, and disable Code generation in that case. Disable
310 ALI file generation when switch is *not* present.
311
312 2013-04-11 Ed Schonberg <schonberg@adacore.com>
313
314 * sem_ch6.adb (Analyze_Expression_Function): Perform the
315 pre-analysis on a copy of the expression, to prevent downstream
316 visbility issues involving operators and instantiations.
317
318 2013-04-11 Johannes Kanig <kanig@adacore.com>
319
320 * debug.adb: Reservation and documentation for -gnatd.G switch.
321 * gnat1drv.adb (Adjust_Global_Switches) Take into account -gnatd.G
322 switch, and set ALI file generation accordingly.
323
324 2013-04-11 Robert Dewar <dewar@adacore.com>
325
326 * exp_ch4.adb, exp_dist.adb: Minor reformatting.
327 * gnat_rm.texi, gnat_ugn.texi: -020 Add documentation clarifying that
328 check names introduced with pragma Check_Name are suppressed by -gnatp.
329
330 2013-04-11 Vincent Celier <celier@adacore.com>
331
332 * gnat_ugn.texi, projects.texi: Move chapter "Tools Supporting Project
333 Files" from projects.texi to gnat_ugn.texi.
334
335 2013-04-11 Arnaud Charlet <charlet@adacore.com>
336
337 * gcc-interface/Make-lang.in: Update dependencies.
338
339 2013-04-11 Yannick Moy <moy@adacore.com>
340
341 * gnat1drv.adb (Adjust_Global_Switches): Allow missing body in Alfa
342 mode.
343
344 2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
345
346 * exp_ch4.adb (Expand_N_Allocator): Detect the
347 allocation of an anonymous controlled object where the type of
348 the context is named. Use the pool and finalization master of
349 the named access type to allocate the object.
350
351 2013-04-11 Vincent Celier <celier@adacore.com>
352
353 * gnat_ugn.texi: Remove most mentions of gprbuild.
354 * projects.texi: Remove all mentions of asociative array
355 attributes.
356
357 2013-04-11 Robert Dewar <dewar@adacore.com>
358
359 * sem_prag.adb, sem_attr.adb, gnat1drv.adb, prj-makr.adb,
360 opt.ads, sem_ch13.adb: Minor reformatting.
361 * debug.adb: Minor comment fix (remove junk .I doc).
362
363 2013-04-11 Thomas Quinot <quinot@adacore.com>
364
365 * rtsfind.ads, exp_dist.adb, exp_dist.ads (Rtsfind.PCS_Version, case
366 PolyORB): Bump to 6.
367 (Exp_Dist.PolyORB_Support): Replace TC_Build with
368 Build_Complex_TC.
369
370 2013-04-11 Arnaud Charlet <charlet@adacore.com>
371
372 * debug.adb, sem_prag.adb, par-ch2.adb, sem_attr.adb, gnat1drv.adb,
373 exp_disp.adb, opt.ads, sem_ch13.adb (Relaxed_RM_Semantics): New flag.
374 Enable this flag in CodePeer mode, and also via -gnatd.M.
375 Replace some uses of CodePeer_Mode by Relaxed_RM_Semantics.
376
377 2013-04-11 Ed Schonberg <schonberg@adacore.com>
378
379 * sem_ch8.adb (Check_Constrained_Object): If a subtype is created
380 from the renamed object in an object renaming declaration with
381 an unconstrained nominal subtype, freeze the created subtype at
382 once, to prevent order of elaboration issues in the backend.
383
384 2013-04-11 Arnaud Charlet <charlet@adacore.com>
385
386 * exp_aggr.adb (Aggr_Size_OK): Refine setting of Max_Aggr_Size
387 in particular in CodePeer mode.
388
389 2013-04-11 Vincent Celier <celier@adacore.com>
390
391 * gnat_ugn.texi: Add documentation for backup copies of project
392 files for gnatname.
393
394 2013-04-11 Tristan Gingold <gingold@adacore.com>
395
396 * gnat_rm.texi: Add Detect_BLocking in the ravenscar profile
397 pragma list.
398
399 2013-04-11 Vincent Celier <celier@adacore.com>
400
401 * gnatname.adb (Scan_Args): Recognize new switch --no-backup
402 (Usage): Add line for --no-backup.
403 * opt.ads (No_Backup): New Boolean variable, initialized to False.
404 (Ada_Version_Default): Switch to Ada 2012 by default.
405 * prj-makr.adb (Initialize): Create a backup for an existing
406 project file if gnatname is not invoked with --no-backup.
407
408 2013-04-11 Thomas Quinot <quinot@adacore.com>
409
410 * exp_ch4.adb: Minor code improvement: replace various calls to
411 Make_If_Statement in expansion with Make_Implicit_If_Statement.
412
413 2013-04-11 Eric Botcazou <ebotcazou@adacore.com>
414
415 * ali.adb: Fix minor typo.
416
417 2013-04-11 Thomas Quinot <quinot@adacore.com>
418
419 * exp_ch4.adb (Find_Enclosing_Context): Add missing case of
420 N_Procedure_Call_Statement.
421
422 2013-04-11 Robert Dewar <dewar@adacore.com>
423
424 * debug.adb: Minor comment fix.
425
426 2013-04-11 Johannes Kanig <kanig@adacore.com>
427
428 * debug.adb: Remove comment for -gnatd.G.
429
430 2013-04-11 Thomas Quinot <quinot@adacore.com>
431
432 * exp_ch4.adb (Expand_Record_Equality.Suitable_Element):
433 Remove recursive routine, replace with...
434 (Expand_Record_Equality.Element_To_Compare): New subroutine,
435 implement iterative search for next element to compare.
436 Add explanatory comment in the tagged case.
437
438 2013-04-11 Ed Schonberg <schonberg@adacore.com>
439
440 * sem_ch5.adb: remove spurious warning from non-empty loop.
441 * sem_ch8.adb (Enclosing_Instance): Make public to other routines
442 in the package, in order to suppress redundant semantic checks
443 on subprogram renamings in nested instantiations.
444
445 2013-04-11 Robert Dewar <dewar@adacore.com>
446
447 * errout.ads: Minor reformatting.
448 * sem_eval.adb (Why_Not_Static): Now issues continuation messages
449 (Why_Not_Static): Test for aggregates behind string literals.
450 * sem_eval.ads (Why_Not_Static): Now issues continuation messages.
451
452 2013-04-11 Robert Dewar <dewar@adacore.com>
453
454 * exp_ch4.adb (Expand_Concatenation): Wrap expansion in
455 Expressions_With_Actions.
456
457 2013-04-11 Ed Schonberg <schonberg@adacore.com>
458
459 * sem_ch6.adb (Base_Types_Match): For an actual type in an
460 instance, the base type may itself be a subtype, so find true
461 base type to determine compatibility.
462
463 2013-04-11 Robert Dewar <dewar@adacore.com>
464
465 * s-osprim-mingw.adb, sem_ch3.adb, sem_prag.adb, sem_util.adb.
466 makeutl.adb, sem_ch8.adb: Minor reformatting.
467
468 2013-04-11 Vincent Celier <celier@adacore.com>
469
470 * gnat_ugn.texi: Minor fixes for VMS.
471 * ug_words: Minor addition: -gnato? => /OVERFLOW_CHECKS=?.
472
473 2013-04-11 Robert Dewar <dewar@adacore.com>
474
475 * usage.adb (Usage): Minor edit to -gnatW message
476
477 2013-04-11 Robert Dewar <dewar@adacore.com>
478
479 * exp_aggr.adb (Expand_N_Aggregate): Add circuit for handling
480 others for string literal case. Also add big ??? comment about
481 this new code, which should be redundant, but is not.
482 * sem_eval.adb (Eval_Concatenation): Handle non-static case
483 properly (Eval_String_Literal): Handle non-static literal properly
484
485 2013-03-20 Tobias Burnus <burnus@net-b.de>
486
487 * i-fortra.ads: Update comment, add Ada 2012's optional
488 Star and Kind data types for enhanced interoperability.
489
490 2013-03-16 Eric Botcazou <ebotcazou@adacore.com>
491
492 * gnatvsn.ads (Library_Version): Bump to 4.9.
493
494 2013-03-08 Cesar Strauss <cestrauss@gmail.com>
495
496 PR ada/52123
497 * seh_init.c (Raise_From_Signal_Handler): Declare as no-return.
498 (__gnat_SEH_error_handler): Likewise. Remove final return.
499
500 2013-03-06 Eric Botcazou <ebotcazou@adacore.com>
501
502 * gcc-interface/trans.c (Attribute_to_gnu): Abort instead of erroring
503 out for an unimplemented attribute.
504
505 2013-03-06 Eric Botcazou <ebotcazou@adacore.com>
506
507 * gcc-interface/decl.c (gnat_to_gnu_field): Remove the wrapper around
508 a misaligned integral type if a size is specified for the field.
509
510 2013-03-06 Eric Botcazou <ebotcazou@adacore.com>
511
512 * gcc-interface/trans.c (Raise_Error_to_gnu) <CE_Index_Check_Failed>:
513 Record the unpadded type of the index type on the RCI stack.
514
515 2013-03-06 Eric Botcazou <ebotcazou@adacore.com>
516
517 * gcc-interface/trans.c (emit_range_check): Assert that the range type
518 is a numerical type and remove useless local variables.
519
520 2013-02-25 Eric Botcazou <ebotcazou@adacore.com>
521
522 * gcc-interface/ada-tree.h: Back out change accidentally committed.
523
524 2013-02-21 Jakub Jelinek <jakub@redhat.com>
525
526 PR bootstrap/56258
527 * gnat-style.texi (@title): Remove @hfill.
528 * projects.texi: Avoid line wrapping inside of @pxref or @xref.
529
530 2013-02-14 Rainer Emrich <rainer@emrich-ebersheim.de>
531
532 PR target/52123
533 * tracebak.c: Cast from pointer via FARPROC.
534
535 2013-02-07 Simon Wright <simon@pushface.org>
536
537 PR target/50678
538 * init.c (__darwin_major_version): New function for x86-64/Darwin.
539 (__gnat_adjust_context_for_raise) [Darwin]: Disable the workaround
540 on Darwin 12 and above.
541
542 2013-02-06 Rainer Emrich <rainer@emrich-ebersheim.de>
543
544 PR target/52123
545 * adaint.c (__gnat_check_OWNER_ACL): Cast from pointer via
546 SECURITY_DESCRIPTOR *
547 (__gnat_set_OWNER_ACL): Cast from DWORD to ACCESS_MODE
548 (__gnat_portable_spawn): Fix cast to char* const*
549 (add_handle): Cast from pointer via void **
550 (add_handle): Cast from pointer via int *
551 (__gnat_locate_exec_on_path): Cast from pointer via TCHAR *
552 (__gnat_locate_exec_on_path): Cast from pointer via char *
553 * initialize.c (append_arg): Cast from pointer via LPWSTR
554 (__gnat_initialize): Cast from pointer via LPWSTR
555 * seh_init.c (__gnat_map_SEH): Cast from pointer via FARPROC
556
557 2013-02-06 Hristian Kirtchev <kirtchev@adacore.com>
558
559 * gcc-interface/Make-lang.in: Enable System.Stack_Checking.Operations
560 target pairs on VxWorks 5 only.
561
562 2013-02-06 Arnaud Charlet <charlet@adacore.com>
563
564 * gcc-interface/Make-lang.in: Update dependencies.
565
566 2013-02-06 Vincent Celier <celier@adacore.com>
567
568 * prj-proc.adb (Process_Aggregated_Projects): Use a new project
569 node tree for each project tree rooted at an aggregated project.
570
571 2013-02-06 Hristian Kirtchev <kirtchev@adacore.com>
572
573 * sem_util.adb (Is_Interface_Conversion): New routine.
574 (Object_Access_Level): Detect an interface conversion
575 that has been rewritten into a different construct. Use the
576 original form of the conversion to find the access level of
577 the operand.
578
579 2013-02-06 Eric Botcazou <ebotcazou@adacore.com>
580
581 * einfo.ads (Has_Pragma_No_Inline): New flag using Flag201.
582 (Has_Pragma_No_Inline): Declare and mark as inline.
583 (Set_Has_Pragma_No_Inline): Likewise.
584 * einfo.adb (Has_Pragma_No_Inline): New function.
585 (Set_Has_Pragma_No_Inline): New procedure.
586 (Write_Entity_Flags): Handle Has_Pragma_No_Inline.
587 * snames.ads-tmpl (Name_No_Inline): New pragma-related name.
588 (Pragma_Id): Add Pragma_No_Inline value.
589 * par-prag.adb (Prag): Handle Pragma_Inline.
590 * sem_prag.adb (Inline_Status): New enumeration type.
591 (Process_Inline): Change Active parameter
592 to Inline_Status and add support for suppressed inlining.
593 (Analyze_Pragma) <Pragma_Inline>: Adjust to above change.
594 <Pragma_Inline_Always>: Likewise.
595 <Pragma_No_Inline>: Implement new pragma No_Inline.
596 (Sig_Flags): Add Pragma_No_Inline.
597 * gnat_rm.texi (Implementation Defined Pragmas): Add No_Inline.
598 * gnat_ugn.texi (Switches for gcc): Mention Pragma No_Inline.
599
600 2013-02-06 Pascal Obry <obry@adacore.com>
601
602 * s-osprim-mingw.adb (Clock): Make sure we copy all data locally
603 to avoid interleaved modifications that could happen from another
604 task calling Get_Base_Data.
605 (Get_Base_Data): Make it a critical section. Avoid updating if another
606 task has already done it.
607
608 2013-02-06 Eric Botcazou <ebotcazou@adacore.com>
609
610 * sem_prag.adb: Minor reformatting.
611
612 2013-02-06 Pascal Obry <obry@adacore.com>
613
614 * s-tasloc.ads: Set System.Task_Lock to preelaborate.
615
616 2013-02-06 Eric Botcazou <ebotcazou@adacore.com>
617
618 * snames.ads-tmpl (Name_Loop_Optimize, Name_No_Unroll,
619 Name_Unroll, Name_No_Vector, Name_Vector): New pragma-related
620 names.
621 (Pragma_Id): Add Pragma_Loop_Optimize value.
622 * par-prag.adb (Prag): Handle Pragma_Loop_Optimize.
623 * sem_prag.adb (Check_Loop_Invariant_Variant_Placement): Rename to...
624 (Check_Loop_Pragma_Placement): ...this.
625 (Analyze_Pragma)
626 <Pragma_Loop_Invariant>: Adjust to above renaming.
627 <Loop_Variant>: Likewise.
628 <Pragma_Loop_Optimize>: Implement new pragma Loop_Optimize.
629 (Sig_Flags): Add Pragma_Loop_Optimize.
630 * gnat_rm.texi (Implementation Defined Pragmas): Add Loop_Optimize.
631 * gnat_ugn.texi (Vectorization of loops): Mention Loop_Optimize.
632
633 2013-02-06 Robert Dewar <dewar@adacore.com>
634
635 * osint.ads: Minor fix of typo.
636
637 2013-02-06 Sergey Rybin <rybin@adacore.com frybin>
638
639 * gnat_ugn.texi: gnatmetric: update the documentation of
640 complexity metrics for Ada 2012.
641
642 2013-02-06 Javier Miranda <miranda@adacore.com>
643
644 * exp_disp.adb (Make_Secondary_DT): Code cleanup:
645 remove useless initialization.
646
647 2013-02-06 Ed Schonberg <schonberg@adacore.com>
648
649 * sem_ch3.adb (Build_Discriminant_Constraints): Do not
650 generate overflow checks on a discriminant expression if the
651 discriminant constraint is applied to a private type that has
652 a full view, because the check will be applied when the full
653 view is elaborated. Removing the redundant check is not just
654 an optimization, but it prevents spurious assembler errors,
655 because of the way the backend generates names for expressions
656 that require overflow checking.
657
658 2013-02-06 Pascal Obry <obry@adacore.com>
659
660 * s-osprim-mingw.adb: Removes workaround for an old GNU/Linker
661 limitation on Windows.
662 (DA): Removed.
663 (LIA): Removed.
664 (LLIA): Removed.
665 (TFA): Removed.
666 (BTA): Removed.
667 (BMTA): Removed.
668 (BCA): Removed.
669 (BMCA): Removed.
670 (BTiA): Removed.
671 (Clock): Use variable corresponding to access.
672 (Get_Base_Time): Likewise.
673 (Monotonic_Clock): Likewise.
674
675 2013-02-06 Vincent Celier <celier@adacore.com>
676
677 * make.adb (Gnatmake): When gnatmake is called with a project
678 file, do not invoke gnatbind with -I-.
679 * makeutl.adb (Create_Binder_Mapping_File): Rewrite function. Get
680 the infos from all the sources.
681
682 2013-02-06 Ed Schonberg <schonberg@adacore.com>
683
684 * snames.ads-tmpl: Add Name_Overriding_Renamings and pragma
685 Overriding_Renamings.
686 * par-prag.adb: Recognize pragma Overriding_Renamings.
687 * opt.ads (Overriding_Renamings): flag to control compatibility
688 mode with Rational compiler, replaces Rational_Profile flag.
689 * sem_ch8.adb (Analyze_Subprogram_Renaming): When
690 Overriding_Renamings is enabled, accept renaming declarations
691 where the new subprogram renames and overrides a locally inherited
692 operation. Improve error message for some illegal renamings.
693 * sem_prag.adb (Analyze_Pragma): Add case for Overriding_Renamings.
694 (Set_Rational_Profile): The Rational_Profile enables
695 Overriding_Renamings, Implicit_Packing, and Use_Vads_Size.
696
697 2013-02-06 Ed Schonberg <schonberg@adacore.com>
698
699 * sem_util.adb: Set parent of copied aggregate component, to
700 prevent infinite loop.
701
702 2013-02-06 Robert Dewar <dewar@adacore.com>
703
704 * sem_ch3.adb, sem_ch10.adb: Minor reformatting.
705 * exp_disp.adb: Minor comment update.
706 * comperr.ads, osint.ads, rtsfind.adb, sem_prag.adb: Minor addition of
707 No_Return pragmas.
708
709 2013-02-06 Thomas Quinot <quinot@adacore.com>
710
711 * targparm.ads, sem_ch13.adb (Support_Nondefault_SSO): New target
712 parameter, defaulted to False for now, indicates targets where
713 non-default scalar storage order may be specified.
714
715 2013-02-06 Thomas Quinot <quinot@adacore.com>
716
717 * sprint.adb (Write_Itype): Treat E_Record_Subtype_With_Private
718 same as E_Record_Subtype. Display E_Class_Wide_Subtype as
719 subtype, not type.
720
721 2013-02-06 Hristian Kirtchev <kirtchev@adacore.com>
722
723 * sem_ch3.adb (Complete_Private_Subtype): Inherit the
724 Has_Unknown_Discriminants from the full view of the base type.
725
726 2013-02-06 Tristan Gingold <gingold@adacore.com>
727
728 * raise-gcc.c: Remove useless includes (sys/stat.h, adaint.h)
729 Enclosing debugging functions within #ifndef inhibit_libc to
730 support builds without full C headers.
731
732 2013-02-06 Thomas Quinot <quinot@adacore.com>
733
734 * gnat_rm.texi: Add a minimal example of Scalar_Storage_Order.
735
736 2013-02-06 Hristian Kirtchev <kirtchev@adacore.com>
737
738 * sem_ch10.adb (Install_Limited_Withed_Unit): Add a missing
739 check to detect a parent-child relationship between two units in
740 order to correctly bypass the installation of a limited view. In
741 other words, the comment on the intended usage of the check was
742 correct, but the code itself did not reflect the behavior.
743
744 2013-02-06 Javier Miranda <miranda@adacore.com>
745
746 * exp_ch5.adb (Expand_N_Assignment_Statement): Do not generate the
747 runtime check on assignment to tagged types if compiling with checks
748 suppressed.
749
750 2013-02-06 Robert Dewar <dewar@adacore.com>
751
752 * exp_util.adb, checks.adb, sem_ch12.adb, sem_res.adb, prj-conf.adb,
753 s-os_lib.adb: Minor reformatting
754
755 2013-02-06 Vincent Celier <celier@adacore.com>
756
757 * ug_words: Add -gnateY = /IGNORE_STYLE_CHECKS_PRAGMAS.
758
759 2013-02-06 Ed Schonberg <schonberg@adacore.com>
760
761 * snames.ads-tmpl: Add Name_Rational and pragma Rational.
762 * par-prag.adb: Recognize pragma Rational.
763 * opt.ads (Rational_Profile): flag to control compatibility mode
764 with Rational compiler.
765 * sem_ch8.adb (Analyze_Subprogram_Renaming): When Rational profile
766 is enable, accept renaming declarations where the new subprogram
767 and the renamed entity have the same name.
768 * sem_prag.adb (analyze_pragma): Add pragma Rational, and recognize
769 Rational as a profile.
770
771 2013-02-06 Hristian Kirtchev <kirtchev@adacore.com>
772
773 * exp_ch5.adb (Expand_Loop_Entry_Attributes): When
774 dealing with a for loop that iterates over a subtype indication
775 with a range, use the low and high bounds of the subtype.
776
777 2013-02-06 Nicolas Roche <roche@adacore.com>
778
779 * s-os_lib.adb (Normalize_Arguments): Arguments containing tabs should
780 be quoted
781
782 2013-02-06 Vincent Celier <celier@adacore.com>
783
784 * prj-conf.adb (Process_Project_And_Apply_Config): New variable
785 Conf_Project. New recursive procedure Check_Project to find a non
786 aggregate project and put its Project_Id in Conf_Project. Fails if
787 no such project can be found.
788 (Get_Or_Create_Configuration_File): New parameter Conf_Project.
789 (Do_Autoconf): Use project directory of project Conf_Project to store
790 the generated configuration project file.
791 * prj-conf.ads (Get_Or_Create_Configuration_File): New parameter
792 Conf_Project.
793
794 2013-02-06 Javier Miranda <miranda@adacore.com>
795
796 * sem_res.adb (Resolve_Actuals): Generate a read
797 reference for out-mode parameters in the cases specified by
798 RM 6.4.1(12).
799
800 2013-02-06 Hristian Kirtchev <kirtchev@adacore.com>
801
802 * sem_attr.adb (Resolve_Attribute): Do not resolve the prefix of
803 Loop_Entry, instead wait until the attribute has been expanded. The
804 delay ensures that any generated checks or temporaries are inserted
805 before the relocated prefix.
806
807 2013-02-06 Ed Schonberg <schonberg@adacore.com>
808
809 * sem_ch12.adb: Code clean up.
810
811 2013-02-06 Ed Schonberg <schonberg@adacore.com>
812
813 * checks.adb (Apply_Discriminant_Check): Look for discriminant
814 constraint in full view of private type when needed.
815 * sem_ch12.adb (Validate_Array_Type_Instance): Specialize
816 previous patch to components types that are private and without
817 discriminants.
818
819 2013-02-06 Hristian Kirtchev <kirtchev@adacore.com>
820
821 * exp_ch4.adb (Find_Enclosing_Context): Recognize
822 a simple return statement as one of the cases that require special
823 processing with respect to temporary controlled function results.
824 (Process_Transient_Object): Do attempt to finalize a temporary
825 controlled function result when the associated context is
826 a simple return statement. Instead, leave this task to the
827 general finalization mechanism.
828
829 2013-02-06 Thomas Quinot <quinot@adacore.com>
830
831 * einfo.ads: Minor reformatting.
832 (Status_Flag_Or_Transient_Decl): Add ??? comment.
833
834 2013-02-06 Hristian Kirtchev <kirtchev@adacore.com>
835
836 * exp_ch4.adb (Expand_N_Expression_With_Actions): Rewritten. This
837 routine should be able to properly detect controlled transient
838 objects in its actions and generate the appropriate finalization
839 actions.
840 * exp_ch6.adb (Enclosing_Context): Removed.
841 (Expand_Ctrl_Function_Call): Remove local subprogram and
842 constant. Use routine Within_Case_Or_If_Expression to determine
843 whether the lifetime of the function result must be extended to
844 match that of the context.
845 * exp_util.ads, exp_util.adb (Within_Case_Or_If_Expression): New
846 routine.
847
848 2013-02-06 Ed Schonberg <schonberg@adacore.com>
849
850 * sem_ch12.adb (Validate_Array_Type_Instance): Extend check
851 for subtype matching of component type of formal array type,
852 to avoid spurious error when component type is a separate actual
853 in the instance, and there may be a discrepancy between private
854 and full view of component type.
855
856 2013-02-06 Robert Dewar <dewar@adacore.com>
857
858 * s-dim.ads, clean.adb: Minor reformatting.
859
860 2013-02-06 Javier Miranda <miranda@adacore.com>
861
862 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Undo previous patch.
863 (Can_Split_Unconstrained_Function): Only split the inlined function if
864 the compiler generates the code of its body.
865
866 2013-02-06 Robert Dewar <dewar@adacore.com>
867
868 * exp_prag.adb, sem_ch3.adb, exp_attr.adb, sem_prag.adb, sem_ch6.adb,
869 exp_intr.adb, exp_dist.adb, sem_ch13.adb: Internal clean up for
870 N_Pragma nodes.
871
872 2013-02-06 Robert Dewar <dewar@adacore.com>
873
874 * gnat_rm.texi: Minor text updates for pragma Warning.
875
876 2013-02-06 Geert Bosch <bosch@adacore.com>
877
878 * s-multip.adb (Number_Of_CPUs): Short-circuit in case of
879 CPU'Last = 1.
880
881 2013-02-06 Vincent Celier <celier@adacore.com>
882
883 * clean.adb (Delete): On VMS use host notation to delete all files.
884
885 2013-02-06 Robert Dewar <dewar@adacore.com>
886
887 * sem_prag.adb, sem_ch6.adb, prj-conf.adb, erroutc.adb: Minor
888 reformatting.
889
890 2013-02-06 Gary Dismukes <dismukes@adacore.com>
891
892 * sem_ch6.adb (Check_For_Primitive_Subprogram): Test for
893 the special case of a user-defined equality that overrides
894 the predefined equality of a nonderived type declared in a
895 declarative part.
896 * sem_util.adb (Collect_Primitive_Operations): Add test for
897 Is_Primitive when looping over the subprograms following a type,
898 to catch the case of primitives such as a user-defined equality,
899 which otherwise won't be found when the type is not a derived
900 type and is declared in a declarative part.
901
902 2013-02-06 Vincent Celier <celier@adacore.com>
903
904 * prj-conf.adb (Check_Target): Always return True when Target
905 is empty (Get_Or_Create_Configuration_File.Get_Project_Target):
906 New procedure to get the value of attribute Target in the main
907 project.
908 (Get_Or_Create_Configuration_File.Do_Autoconf): No
909 need to get the value of attribute Target in the main project.
910 (Get_Or_Create_Configuration_File): Call Get_Project_Target and
911 use the target fom this call.
912
913 2013-02-06 Eric Botcazou <ebotcazou@adacore.com>
914
915 * erroutc.adb (Validate_Specific_Warning): Do not issue the
916 warning about an ineffective Pragma Warnings for -Wxxx warnings.
917 * sem_prag.adb (Analyze_Pragma) <Warnings>: Accept -Wxxx warnings.
918 * gnat_rm.texi (Pragma Warnings): Document coordination with
919 warnings of the GCC back-end.
920
921 2013-02-06 Javier Miranda <miranda@adacore.com>
922
923 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Do not build the body
924 of an inlined function if we do not generate code for the function.
925
926 2013-02-06 Pascal Obry <obry@adacore.com>
927
928 * s-os_lib.adb (Locate_Exec_On_Path): Call Normalize_Pathname
929 with Resolve_Links set to False.
930
931 2013-02-03 Eric Botcazou <ebotcazou@adacore.com>
932
933 * gcc-interface/decl.c: Include diagnostic-core.h.
934 (gnat_to_gnu_entity) <E_Array_Type>: Sorry if Reverse_Storage_Order
935 is set on the entity.
936 <E_Record_Type>: Likewise.
937 * gcc-interface/Make-lang.in (ada/decl.o): Add $(DIAGNOSTIC_CORE_H).
938
939 2013-01-29 Ben Brosgol <brosgol@adacore.com>
940
941 * gnat_rm.texi: Fixed typos. Minor edits.
942
943 2013-01-29 Bob Duff <duff@adacore.com>
944
945 * a-convec.adb: Minor reformatting.
946
947 2013-01-29 Pascal Obry <obry@adacore.com>
948
949 * tempdir.adb, tempdir.ads (Use_Temp_Dir): Set wether to use the temp
950 directory.
951
952 2013-01-29 Ed Schonberg <schonberg@adacore.com>
953
954 * exp_ch5.adb (Expand_Iterator_Loop_Over_Array): Preserve loop
955 identifier only if it comes from source.
956 (Expand_N_Loop_Statement): If the domain of iteration is an
957 enumeration type with a representation clause, remove from
958 visibility the loop identifier before rewriting the loop as a
959 block with a declaration for said identifier.
960 * sem_util.adb (Remove_Homonym): Handle properly the default case.
961
962 2013-01-29 Vincent Celier <celier@adacore.com>
963
964 * prj-proc.adb: Minor comment spelling fix.
965
966 2013-01-29 Pascal Obry <obry@adacore.com>
967
968 * prj-proc.adb (Process_Expression_Variable_Decl): Prepend
969 Project_Path to current environment.
970
971 2013-01-29 Thomas Quinot <quinot@adacore.com>
972
973 * sprint.adb (Sprint_Node_Actual): Output freeze nodes for
974 itypes even if Dump_Freeze_Null is not set.
975
976 2013-01-29 Robert Dewar <dewar@adacore.com>
977
978 * sem_util.adb: Minor reformatting.
979 * s-rident.ads: Minor comment fixes.
980
981 2013-01-29 Pascal Obry <obry@adacore.com>
982
983 * prj-env.ads, prj-env.adb (Add_Directories): Add parameter to
984 control if the path is prepended or appended.
985
986 2013-01-29 Ed Schonberg <schonberg@adacore.com>
987
988 * sem_ch6.adb (Analyze_Expression_Function): An expression
989 function declaration is not a subprogram declaration, and thus
990 cannot appear in a protected definition.
991
992 2013-01-29 Hristian Kirtchev <kirtchev@adacore.com>
993
994 * exp_util.adb (Insert_Actions): When new
995 actions come from the expression of the expression with actions,
996 then they must be added to the list of existing actions.
997
998 2013-01-29 Eric Botcazou <ebotcazou@adacore.com>
999
1000 * sem_ch3.adb (Analyze_Subtype_Declaration) <Private_Kind>: For
1001 the subtype of a constrained private type with discriminants
1002 that has got a full view, show that the completion is a clone
1003 of the full view.
1004
1005 2013-01-29 Javier Miranda <miranda@adacore.com>
1006
1007 * errout.ads, errout.adb (Get_Ignore_Errors): New subprogram.
1008 * opt.ads (Warn_On_Overlap): Update documentation.
1009 * sem_aggr.adb (Resolve_Aggregate, Resolve_Extension_Aggregate):
1010 Check function writable actuals.
1011 * sem_ch3.adb (Build_Derived_Record_Type,
1012 Record_Type_Declaration): Check function writable actuals.
1013 * sem_ch4.adb (Analyze_Range): Check function writable actuals.
1014 * sem_ch5.adb (Analyze_Assignment): Remove code of the initial
1015 implementation of AI05-0144.
1016 * sem_ch6.adb (Analyze_Function_Return,
1017 (Analyze_Procedure_Call.Analyze_Call_And_Resolve): Remove code
1018 of the initial implementation of AI05-0144.
1019 * sem_res.adb (Resolve): Remove code of the initial implementation.
1020 (Resolve_Actuals): Call Check_Function_Writable_Actuals and remove call
1021 of the initial implementation.
1022 (Resolve_Arithmetic_Op, Resolve_Logical_Op,
1023 Resolve_Membership_Op): Check function writable actuals.
1024 * sem_util.ad[sb] (Actuals_In_Call): Removed
1025 (Check_Order_Dependence): Removed (Save_Actual): Removed
1026 (Check_Function_Writable_Actuals): New subprogram.
1027 * usage.adb (Usage): Update documentation.
1028 * warnsw.adb (Set_Warning_Switch): Enable warn_on_overlap when
1029 setting all warnings.
1030
1031 2013-01-29 Robert Dewar <dewar@adacore.com>
1032
1033 * a-calend-vms.adb: Minor comment fix.
1034
1035 2013-01-29 Robert Dewar <dewar@adacore.com>
1036
1037 * mlib-utl.adb, gnatlink.adb: Avoid reference to ASCII.Back_Slash
1038 because of casing issues.
1039 * sem_util.ads: Minor comment fix.
1040 * style.adb (Check_Identifier): Set proper casing for entities
1041 in ASCII.
1042 * styleg.adb: Minor comment improvement.
1043 * stylesw.ads (Style_Check_Standard): Fix bad comments.
1044
1045 2013-01-29 Hristian Kirtchev <kirtchev@adacore.com>
1046
1047 * sem_prag.adb: Add the grammar for pragmas Abstract_State and Global.
1048 (Analyze_Pragma): Push the scope of the related subprogram and install
1049 its formals once before starting the analysis of the [moded] global
1050 list.
1051
1052 2013-01-29 Pascal Obry <obry@adacore.com>
1053
1054 * prj-proc.adb (Process_Expression_Variable_Decl): Always handle
1055 relative paths in Project_Path as relative to the aggregate
1056 project location. Note that this was what was documented.
1057
1058 2013-01-29 Vincent Celier <celier@adacore.com>
1059
1060 * gnatcmd.adb: For "gnat stub -P ...", do not check the naming
1061 scheme for Ada, when Ada is not a language for the project.
1062
1063 2013-01-29 Ed Schonberg <schonberg@adacore.com>
1064
1065 * sem_ch3.adb (Analyze_Subtype_Declaration): Inherit
1066 Is_Generic_Actual_Type flag in a nested instance.
1067 * sem_ch12.adb (Restore_Private_Views): Preserve
1068 Is_Generic_Actual_Type flag if actual is a Generic_Actual_Type
1069 of an enclosing instance.
1070 * sem_util.adb (Corresponding_Generic_Type): Handle generic actual
1071 which is an actual of an enclosing instance.
1072 * sem_type.adb (Real_Actual): If a generic_actual_type is the
1073 formal of an enclosing generic and thus renames the corresponding
1074 actual, use the actual of the enclosing instance to resolve
1075 spurious ambiguities in instantiations when two formals are
1076 instantiated with the same actual.
1077
1078 2013-01-29 Robert Dewar <dewar@adacore.com>
1079
1080 * gnat_rm.texi: Document all Ada 2005 and Ada 2012 pragmas as
1081 being available as implementation-defined pragmas in earlier
1082 versions of Ada.
1083
1084 2013-01-29 Vincent Celier <celier@adacore.com>
1085
1086 * clean.adb (Delete): On VMS, delete all versions of the file.
1087
1088 2013-01-29 Robert Dewar <dewar@adacore.com>
1089
1090 * par-ch6.adb (No_Constraint_Maybe_Expr_Func): New procedure.
1091 * par-util.adb (No_Constraint): Undo special handling, moved
1092 to par-ch6.adb.
1093
1094 2013-01-29 Robert Dewar <dewar@adacore.com>
1095
1096 * aspects.ads: Aspect Warnings is implementation defined Add
1097 some other missing entries to impl-defined list Mark Warnings
1098 as GNAT pragma in main list.
1099 * sem_ch8.adb: Process aspects for all cases of renaming
1100 declarations.
1101
1102 2013-01-29 Robert Dewar <dewar@adacore.com>
1103
1104 * sem_ch6.adb (Analyze_Function_Call): Set In_Assertion flag.
1105 * sem_elab.adb (Check_Internal_Call_Continue): Do not issue
1106 warnings about possible elaboration error if call is within
1107 an assertion.
1108 * sinfo.ads, sinfo.adb (In_Assertion): New flag in N_Function_Call node.
1109
1110 2013-01-29 Robert Dewar <dewar@adacore.com>
1111
1112 * a-calend-vms.adb, g-eacodu-vms.adb, g-trasym-vms-alpha.adb,
1113 * s-auxdec-vms-ia64.adb, s-mastop-vms.adb, s-osprim-vms.adb,
1114 s-tasdeb-vms.adb: Replace pragma Interface by pragma Import.
1115
1116 2013-01-29 Robert Dewar <dewar@adacore.com>
1117
1118 * opt.ads (Ignore_Style_Checks_Pragmas): New flag.
1119 * par-prag.adb (Par, case Style_Checks): Recognize
1120 Ignore_Style_Checks_Pragmas.
1121 * sem_prag.adb (Analyze_Pragma, case Style_Checks): Recognize
1122 Ignore_Style_Checks_Pragmas.
1123 * switch-c.adb: Recognize -gnateY switch.
1124 * usage.adb: Add documentation for "-gnateY".
1125 * vms_data.ads: Add IGNORE_STYLE_CHECKS_PRAGMAS (-gnateY).
1126
1127 2013-01-29 Vincent Celier <celier@adacore.com>
1128
1129 * clean.adb (Clean_Executables): Add Sid component when calling
1130 Queue.Insert.
1131 * make.adb: When inserting in the Queue, add the Source_Id
1132 (Sid) when it is known (Start_Compile_If_Possible): When the
1133 Source_Id is known (Sid), get the path name of the ALI file
1134 (Full_Lib_File) from it, to avoid finding old ALI files in other
1135 object directories.
1136 * makeutl.ads (Source_Info): New Source_Id component Sid in
1137 Format_Gnatmake variant.
1138
1139 2013-01-29 Robert Dewar <dewar@adacore.com>
1140
1141 * gnat_ugn.texi: Document -gnateY.
1142
1143 2013-01-29 Doug Rupp <rupp@adacore.com>
1144
1145 * s-osinte-vms.ads, s-taprop-vms.adb, system-vms_64.ads,
1146 system-vms-ia64.ads: Replace pragma Interface by pragma Import.
1147
1148 2013-01-29 Robert Dewar <dewar@adacore.com>
1149
1150 * atree.ads, atree.adb (Node30): New function.
1151 (Set_Node30): New procedure.
1152 (Num_Extension_Nodes): Change to 5 (activate new fields/flags).
1153 * atree.h: Add macros for Field30 and Node30.
1154 * einfo.ads, einfo.adb: Move some fields to avoid duplexing.
1155 * treepr.adb (Print_Entity_Information): Print fields 30-35.
1156
1157 2013-01-29 Robert Dewar <dewar@adacore.com>
1158
1159 * sem_prag.adb (Analyze_Pragma, case Interface): Consider to
1160 be a violation of No_Obsolescent_Features even in Ada 95. Also
1161 generates a warning in -gnatwj mode.
1162 (Analyze_Pragma, case Interface_Name): Generates a warning in -gnatwj
1163 mode.
1164 * gnat_ugn.texi: Additional documentation on -gnatwj and pragma
1165 Interface[_Name].
1166
1167 2013-01-29 Vincent Celier <celier@adacore.com>
1168
1169 * snames.ads-tmpl: Add new standard name Trailing_Switches.
1170
1171 2013-01-29 Ed Schonberg <schonberg@adacore.com>
1172
1173 * sem_disp.adb (Check_Controlling_Type): If a designated type T
1174 of an anonymous access type is a limited view of a tagged type,
1175 it can be a controlling type only if the subprogram is in the
1176 same scope as T.
1177
1178 2013-01-29 Vincent Celier <celier@adacore.com>
1179
1180 * gnatcmd.adb: Use the project where the config pragmas file is
1181 declared to get its path.
1182
1183 2013-01-29 Vincent Celier <celier@adacore.com>
1184
1185 * prj-attr.adb: New attribute Linker'Trailing_Switches.
1186
1187 2013-01-22 Eric Botcazou <ebotcazou@adacore.com>
1188
1189 * gcc-interface/trans.c (gnat_to_gnu) <N_Expression_With_Actions>: Do
1190 not translate the Etype of the node before translating the Actions.
1191
1192 2013-01-22 Eric Botcazou <ebotcazou@adacore.com>
1193
1194 * gcc-interface/trans.c (Pragma_to_gnu) <Name_Space>: Use optimize_size
1195 instead of optimize and adjust warning message.
1196 (Compilation_Unit_to_gnu): Process pragmas preceding the unit.
1197
1198 2013-01-22 Tristan Gingold <gingold@adacore.com>
1199
1200 * gcc-interface/gigi.h (ADT_unhandled_except_decl,
1201 ADT_unhandled_others_decl): New.
1202 (unhandled_others_decl, unhandled_except_decl): Define.
1203 * gcc-interface/trans.c: Include common/common-target.h.
1204 (gigi): Initialize them.
1205 (Subprogram_Body_to_gnu): On SEH targets, wrap the body of the main
1206 function in a try/catch clause.
1207
1208 2013-01-11 Eric Botcazou <ebotcazou@adacore.com>
1209
1210 * gcc-interface/Make-lang.in (COMMON_ADAFLAGS): Remove -gnata.
1211 (CHECKING_ADAFLAGS): New.
1212 (ALL_ADAFLAGS): Include CHECKING_ADAFLAGS.
1213
1214 2013-01-10 Eric Botcazou <ebotcazou@adacore.com>
1215
1216 * gcc-interface/config-lang.in (boot_language_boot_flags): Delete.
1217 * gcc-interface/Make-lang.in (BOOT_ADAFLAGS): Likewise.
1218
1219 2013-01-07 Eric Botcazou <ebotcazou@adacore.com>
1220
1221 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Adjust
1222 comment about type extension with discriminants.
1223 <E_Record_Subtype>: Remove useless test and reorder conditions.
1224 (elaborate_entity) <E_Record_Subtype>: Likewise.
1225
1226 2013-01-07 Richard Biener <rguenther@suse.de>
1227
1228 PR ada/864
1229 * gcc-interface/Make-lang.in (ada.install-common): Always apply
1230 program_transform_name.
1231
1232 2013-01-06 Eric Botcazou <ebotcazou@adacore.com>
1233
1234 * gnatvsn.ads (Current_Year): Bump to 2013.
1235
1236 2013-01-06 Olivier Hainque <hainque@adacore.com>
1237
1238 * gcc-interface/decl.c (gnat_to_gnu_field): Emit a specialized
1239 diagnostic for component size mismatch wrt volatile requirements.
1240 Add a gcc_unreachable() at the end of the checks for size. Split
1241 the check on volatile for positions into one check on atomic and
1242 a subsequent one on volatile.
1243
1244 2013-01-06 Eric Botcazou <ebotcazou@adacore.com>
1245
1246 * gcc-interface/decl.c (elaborate_entity) <E_Record_Type>: Delete.
1247
1248 2013-01-06 Eric Botcazou <ebotcazou@adacore.com>
1249
1250 * gcc-interface/decl.c (gnat_to_gnu_entity) <discrete_type>: Do not
1251 pack the field of the record type made for a misaligned type.
1252
1253 2013-01-06 Eric Botcazou <ebotcazou@adacore.com>
1254
1255 * gcc-interface/decl.c (annotate_value) <COMPONENT_REF>: Be prepared
1256 for discriminants inherited from parent record types.
1257
1258 2013-01-04 Robert Dewar <dewar@adacore.com>
1259
1260 * warnsw.adb: Minor fixes to -gnatw.d handling.
1261
1262 2013-01-04 Robert Dewar <dewar@adacore.com>
1263
1264 * einfo.adb, atree.adb: Enlarge entities to make 63 more flags, 6 more
1265 fields.
1266
1267 2013-01-04 Joel Brobecker <brobecker@adacore.com>
1268
1269 * gnat_ugn.texi: Fix typo.
1270
1271 2013-01-04 Robert Dewar <dewar@adacore.com>
1272
1273 * gnat_rm.texi: Document alignment choice for subtypes.
1274
1275 2013-01-04 Robert Dewar <dewar@adacore.com>
1276
1277 * validsw.ads: Minor fix to comment.
1278
1279 2013-01-04 Doug Rupp <rupp@adacore.com>
1280
1281 * Makefile.rtl (GNATRTL_NONTASKING_OBJS,
1282 GNATRTL_ALTIVEC_OBJS): Factor g-al* objects.
1283 * gcc-interface/Makefile.in (ADA_EXCLUDE_SRCS): Add g-al* sources.
1284 (GNATRTL_ALTIVEC_OBJS): Override to null for VMS.
1285 Rename leon vxworks toolchain as leon-wrs-vxworks.
1286 * gcc-interface/Make-lang.in: Update dependencies
1287
1288 2013-01-04 Pascal Obry <obry@adacore.com>
1289
1290 * prj.ads (For_Each_Source): Add Locally_Removed parameter.
1291 (Source_Iterator): Add Locally_Removed field.
1292 * prj.adb (For_Each_Source): Ignore Locally_Removed files if needed.
1293 (Next): Likewise.
1294
1295 2013-01-04 Robert Dewar <dewar@adacore.com>
1296
1297 * exp_attr.adb: Minor reformatting.
1298
1299 2013-01-04 Robert Dewar <dewar@adacore.com>
1300
1301 * checks.adb (Insert_Valid_Check): Fix handling of renamed
1302 packed array element.
1303 * exp_ch4.adb (Expand_Concatenate): Fix some missing parent
1304 fields in generated code.
1305 * exp_util.adb (Side_Effect_Free): Improve detection of cases
1306 needing renaming.
1307
1308 2013-01-04 Robert Dewar <dewar@adacore.com>
1309
1310 * sinfo.ads: Clean up order of N_xxx subtypes
1311
1312 2013-01-04 Vincent Celier <celier@adacore.com>
1313
1314 * prj-conf.adb (Check_Target): Allow --autoconf= with no target.
1315
1316 2013-01-04 Robert Dewar <dewar@adacore.com>
1317
1318 * types.ads, prj-conf.adb, par-tchk.adb: Minor reformatting.
1319
1320 2013-01-04 Robert Dewar <dewar@adacore.com>
1321
1322 * par-ch6.adb (P_Subprogram): Better handling of missing IS
1323 after expression function.
1324 * par-util.adb (No_Constraint): Improve handling to avoid bad warnings.
1325
1326 2013-01-04 Robert Dewar <dewar@adacore.com>
1327
1328 * exp_util.ads, exp_util.adb (Insert_Actions): In expression with
1329 actions case, new actions are appended to the sequence rather than
1330 prepended.
1331
1332 2013-01-04 Robert Dewar <dewar@adacore.com>
1333
1334 * gnat_ugn.texi: Document -gnatw.d/w.D (does no apply in VMS mode).
1335 * usage.adb: Add lines for -gnatw.d/w.D switches.
1336 * warnsw.adb: Minor fixes (some missing cases of setting
1337 Warning_Doc_Switch). Reject -gnatw.d and -gnatw.D in VMS mode.
1338
1339 2013-01-04 Robert Dewar <dewar@adacore.com>
1340
1341 * exp_util.adb (Remove_Side_Effects): Make sure scope suppress
1342 is restored on exit.
1343
1344 2013-01-04 Robert Dewar <dewar@adacore.com>
1345
1346 * usage.adb: Document -gnateF (check overflow for predefined Float).
1347
1348 2013-01-04 Robert Dewar <dewar@adacore.com>
1349
1350 * sem_res.adb (Resolve_Type_Conversion): Remove incorrect
1351 prevention of call to Apply_Type_Conversion_Checks, which resulted
1352 in missing check flags in formal mode.
1353
1354 2013-01-04 Vincent Celier <celier@adacore.com>
1355
1356 * makeutl.ads (Db_Switch_Args): New table used by gprbuild.
1357 * prj-conf.adb (Check_Builder_Switches): Check for switches
1358 --config= (Get_Db_Switches): New procedure to get the --db
1359 switches so that they are used when invoking gprconfig in
1360 auto-configuration.
1361 (Do_Autoconf): When invoking gprconfig, use the --db switches, if any.
1362
1363 2013-01-04 Pascal Obry <obry@adacore.com>
1364
1365 * prj-nmsc.adb: Minor reformatting.
1366
1367 2013-01-04 Vincent Celier <celier@adacore.com>
1368
1369 * makeutl.ads (Root_Environment): New variable, moved rom
1370 gprbuild (Load_Standard_Base): New Boolean variable, moved
1371 from gprbuild.
1372 * prj-conf.adb (Check_Builder_Switches): New procedure to check
1373 for switch --RTS in package Builder. If a runtime specified
1374 by --RTS is a relative path name, but not a base name, then
1375 find the path on the Project Search Path.
1376 (Do_Autoconf): Call Check_Builder_Switches.
1377 (Locate_Runtime): New procedure, moved from gprbuild, to get the
1378 absolute paths of runtimes when they are not specified as a base name.
1379 * prj-conf.ads (Locate_Runtime): New procedure, moved from gprbuild.
1380
1381 2013-01-04 Ed Schonberg <schonberg@adacore.com>
1382
1383 * sem_ch3.adb (Build_Private_Derived_Type): Set
1384 Has_Private_Ancestor on type derived from an untagged private
1385 type whose full view has discriminants
1386 * sem_aggr.adb (Resolve_Record_Aggregate): Reject non-extension
1387 aggregate for untagged record type with private ancestor.
1388
1389 2013-01-04 Thomas Quinot <quinot@adacore.com>
1390
1391 * sem_elab.adb, sem_ch3.adb: Minor reformatting.
1392
1393 2013-01-04 Robert Dewar <dewar@adacore.com>
1394
1395 * table.adb: Minor reformatting.
1396
1397 2013-01-04 Ed Schonberg <schonberg@adacore.com>
1398
1399 * sem_ch10.adb (Check_Redundant_Withs): A with_clause that does
1400 not come from source does not generate a warning for redundant
1401 with_clauses.
1402
1403 2013-01-04 Hristian Kirtchev <kirtchev@adacore.com>
1404
1405 * aspects.adb, aspects.ads: Add Aspect_Global to all relevant tables.
1406 * par-prag.adb: Add pragma Global to the list of pragmas that
1407 do not need special processing by the parser.
1408 * sem_ch13.adb (Analyze_Aspect_Specifications): Convert aspect
1409 Global into a pragma without any form of legality checks. The
1410 work is done by Analyze_Pragma. The aspect and pragma are both
1411 marked as needing delayed processing. Insert the corresponding
1412 pragma of aspect Abstract_State in the visible declarations of the
1413 related package.
1414 (Check_Aspect_At_Freeze_Point): Aspect Global
1415 does not need processing even though it is marked as delayed.
1416 Alphabetize the list on aspect names.
1417 * sem_prag.adb: Add a value for pragma Global in table Sig_Flags.
1418 (Analyze_Pragma): Add ??? comment about the grammar of pragma
1419 Abstract_State. Move the error location from the pragma to the
1420 state to improve the quality of error placement. Add legality
1421 checks for pragma Global.
1422 * snames.ads-tmpl Add the following specially recognized names
1423
1424 2013-01-04 Eric Botcazou <ebotcazou@adacore.com>
1425
1426 * sem_ch3.adb: Fix minor typo.
1427
1428 2013-01-04 Ed Schonberg <schonberg@adacore.com>
1429
1430 * par-ch13.adb (Aspect_Specifications_Present): In Strict mode,
1431 accept an aspect name followed by a comma, indicating a defaulted
1432 boolean aspect.
1433
1434 2013-01-04 Joel Brobecker <brobecker@adacore.com brobecker>
1435
1436 * gnat_ugn.texi: Document procedure to codesign GDB on Darwin.
1437 Update doc on gnattest --separates switch.
1438
1439 2013-01-04 Thomas Quinot <quinot@adacore.com>
1440
1441 * s-chepoo.ads: Minor reformatting.
1442
1443 2013-01-04 Arnaud Charlet <charlet@adacore.com>
1444
1445 * usage.adb: Remove mention of -gnatN in usage.
1446
1447 2013-01-04 Robert Dewar <dewar@adacore.com>
1448
1449 * exp_prag.adb, gnatcmd.adb, exp_util.adb, table.adb, sem_prag.adb,
1450 freeze.adb, sem_ch4.adb, sem_warn.adb, opt.ads, exp_aggr.adb,
1451 prj-conf.adb, sem_ch13.adb: Minor reformatting.
1452
1453 2013-01-04 Thomas Quinot <quinot@adacore.com>
1454
1455 * sinfo.ads: Minor documentation update.
1456
1457 2013-01-04 Thomas Quinot <quinot@adacore.com>
1458
1459 * sem_ch3.adb, einfo.adb (Analyze_Object_Declaration): Do not set Ekind
1460 before resolving initialization expression.
1461
1462 2013-01-04 Hristian Kirtchev <kirtchev@adacore.com>
1463
1464 * checks.adb (Generate_Index_Checks): Delay the generation of
1465 the check for an indexed component where the prefix mentions
1466 Loop_Entry until the attribute has been properly expanded.
1467 * exp_ch5.adb (Expand_Loop_Entry_Attributes): Perform minor
1468 decoration of the constant that captures the value of Loop_Entry's
1469 prefix at the entry point into a loop. Generate index checks
1470 for an attribute reference that has been transformed into an
1471 indexed component.
1472
1473 2013-01-04 Thomas Quinot <quinot@adacore.com>
1474
1475 * exp_prag.adb, exp_util.adb, exp_util.ads, freeze.adb, exp_aggr.adb,
1476 sem_ch13.adb (Exp_Aggr.Collect_Initialization_Statements): Nothing to
1477 do if Obj is already frozen.
1478 (Exp_Util.Find_Init_Call): Rename to...
1479 (Exp_Util.Remove_Init_Call): New subprogram, renamed from
1480 Find_Init_Call. Remove the initialization call from the enclosing
1481 list if found, and if it is from an Initialization_Statements
1482 attribute, reset it.
1483 (Exp_Util.Append_Freeze_Action): Minor code reorganization.
1484 (Exp_Util.Append_Freeze_Actions): Ensure a freeze node has been
1485 allocated (as is already done in Append_Freeze_Action).
1486 (Freeze.Freeze_Entity): For an object with captured
1487 Initialization_Statements and non-delayed freezeing, unwrap the
1488 initialization statements and insert and them directly in the
1489 enclosing list.
1490 (Sem_Ch13.Check_Address_Clause): For an object
1491 with Initialization_Statements and an address clause, unwrap the
1492 initialization statements when moving them to the freeze actions.
1493
1494 2013-01-03 Pascal Obry <obry@adacore.com>
1495
1496 * prj-attr.adb, projects.texi, snames.ads-tmpl: Add package remote and
1497 corresponding attibutes.
1498
1499 2013-01-03 Thomas Quinot <quinot@adacore.com>
1500
1501 * exp_aggr.adb: Minor comment improvement.
1502
1503 2013-01-03 Hristian Kirtchev <kirtchev@adacore.com>
1504
1505 * aspects.adb, aspects.ads: Add Aspect_Abstract_State to all the
1506 relevant tables.
1507 * einfo.ads, einfo.adb: Add Integrity_Level and Refined_State to
1508 the description of fields (Abstract_States): New routine.
1509 (Integrity_Level): New routine.
1510 (Has_Property): New routine.
1511 (Is_Input_State): New routine.
1512 (Is_Null_State): New routine.
1513 (Is_Output_State): New routine.
1514 (Is_Volatile_State): New routine.
1515 (Refined_State): New routine.
1516 (Set_Abstract_States): New routine.
1517 (Set_Integrity_Level): New routine.
1518 (Set_Refined_State): New routine.
1519 (Write_Field8_Name): Add proper output for E_Abstract_State.
1520 (Write_Field9_Name): Add proper output for E_Abstract_State.
1521 (Write_Field25_Name): Add proper output for E_Package.
1522 * lib-xref.ads: Add new letter for an abstract state.
1523 * par-prag.adb: Add pragma Abstract_State to the list of pragma
1524 that do not need special processing by the parser.
1525 * sem_ch13.adb (Analyze_Aspect_Specifications): Convert
1526 aspect Abstract_State into a pragma without any form
1527 of legality checks. The work is done by Analyze_Pragma.
1528 (Check_Aspect_At_Freeze_Point): Aspect Abstract_State does not
1529 require delayed analysis.
1530 * sem_prag.adb: Add a value for pragma Abstract_State in table
1531 Sig_Flags.
1532 (Analyze_Pragma): Add legality checks for pragma
1533 Abstract_State. Analysis of individual states introduces a state
1534 abstraction entity into the visibility chain.
1535 * snames.ads-tmpl: Add new names for abstract state and
1536 integrity. Add new pragma id for abstract state.
1537
1538 2013-01-03 Bob Duff <duff@adacore.com>
1539
1540 * table.adb (Reallocate): Calculate new Length in
1541 Long_Integer to avoid overflow.
1542
1543 2013-01-03 Thomas Quinot <quinot@adacore.com>
1544
1545 * sem_ch3.adb, sinfo.ads, freeze.adb, sem_ch4.adb, exp_aggr.adb
1546 (Sem_Ch3.Analyze_Object_Declaration): Set Ekind early so that
1547 it is set properly when expanding the initialization expression.
1548 (Freeze.Check_Address_Clause): Transfer initialization expression
1549 to an assignment in the freeze actions, so that the object is
1550 initialized only after being elaborated by GIGI.
1551 (Sinfo (comments), Sem_Ch4.Analyze_Expression_With_Actions): Allow
1552 a Null_Statement as the expression in an Expression_With_Actions.
1553 (Exp_Aggr.Collect_Initialization_Statements): New subprogram
1554 shared by expansion of record and array aggregates, used to
1555 capture statements for an aggregate used to initalize an object
1556 into an Expression_With_Actions (which acts as a container for
1557 a list of actions).
1558 (Exp_Aggr.Convert_Aggr_In_Obj_Decl): Use the above to
1559 capture initialization statements, instead of the previously
1560 existing loop which left freeze nodes out of the capturing
1561 construct (causing out of order elaboration crashes in GIGI).
1562 (Exp_Aggr.Expand_Array_Aggregate): Use the above to capture
1563 initialization statements (this was previously not done for
1564 arrays). Also do not unconditionally prevent in place expansion
1565 for an object with address clause.
1566
1567 2013-01-03 Thomas Quinot <quinot@adacore.com>
1568
1569 * gnat_rm.texi, freeze.adb (Check_Component_Storage_Order): Check that
1570 a record extension has the same scalar storage order as the parent type.
1571
1572 2013-01-03 Thomas Quinot <quinot@adacore.com>
1573
1574 * exp_ch4.adb: Add comment.
1575
1576 2013-01-03 Vincent Celier <celier@adacore.com>
1577
1578 * prj.adb: Minor spelling error correction in comment.
1579
1580 2013-01-03 Vincent Celier <celier@adacore.com>
1581
1582 * gnatcmd.adb (GNATCmd): If a single main has been specified
1583 as an absolute path, use its simple file name to find specific
1584 switches, instead of the absolute path.
1585
1586 2013-01-03 Javier Miranda <miranda@adacore.com>
1587
1588 * sem_warn.adb (Warn_On_Overlapping_Actuals): For overlapping
1589 parameters that are record types or array types generate warnings
1590 only compiling under -gnatw.i
1591 * opt.ads (Extensions_Allowed): Restore previous documentation.
1592
1593 2013-01-03 Vincent Celier <celier@adacore.com>
1594
1595 * prj-conf.adb (Do_Autoconf): If Target is specified in the
1596 main project, but not on the command line, use the Target in
1597 the project to invoke gprconfig in auto-configuration.
1598 * makeutl.ads (Default_Config_Name): New constant String.
1599
1600 2013-01-03 Arnaud Charlet <charlet@adacore.com>
1601
1602 * usage.adb: Minor: fix typo in usage.
1603
1604 2013-01-03 Thomas Quinot <quinot@adacore.com>
1605
1606 * sem_ch13.adb (Analyze_Record_Representation_Clause): Reject
1607 an illegal component clause for an inherited component in a
1608 record extension.
1609
1610 2013-01-03 Emmanuel Briot <briot@adacore.com>
1611
1612 * xref_lib.adb (Parse_Identifier_Info): Fix handling of arrays, which
1613 have information in the ALI file for both the index and the component
1614 types.
1615
1616 2013-01-03 Emmanuel Briot <briot@adacore.com>
1617
1618 * projects.texi: Fix error in documenting the project path
1619 computed for an aggregate project.
1620
1621 2013-01-03 Javier Miranda <miranda@adacore.com>
1622
1623 * sem_warn.adb (Warn_On_Overlapping_Actuals): Adding documentation
1624 plus restricting the functionality of this routine to cover the
1625 cases described in the Ada 2012 reference manual. The previous
1626 extended support is now available under -gnatX.
1627 * s-tassta.adb (Finalize_Global_Tasks): Addition of a dummy
1628 variable to call Timed_Sleep. Required to avoid warning on
1629 overlapping out-mode actuals.
1630 * opt.ads (Extensions_Allowed): Update documentation.
1631
1632 2013-01-03 Tristan Gingold <gingold@adacore.com>
1633
1634 * s-arit64.ads: Use Multiply_With_Ovflo_Check as __gnat_mulv64.
1635 * arit64.c: Removed
1636 * gcc-interface/Makefile.in: Remove reference to arit64.c.
1637
1638 2013-01-03 Thomas Quinot <quinot@adacore.com>
1639
1640 * checks.adb, checks.ads (Apply_Address_Clause_Check): The check must
1641 be generated at the start of the freeze actions for the entity, not
1642 before (or after) the freeze node.
1643
1644 2013-01-03 Thomas Quinot <quinot@adacore.com>
1645
1646 * exp_aggr.adb (Exp_Aggr.Convert_Aggregate_In_Obj_Decl):
1647 Reorganize code to capture initialization statements in a block,
1648 so that freeze nodes are excluded from the captured block.
1649
1650 2013-01-03 Thomas Quinot <quinot@adacore.com>
1651
1652 * exp_ch11.adb: Minor reformatting.
1653
1654 2013-01-03 Thomas Quinot <quinot@adacore.com>
1655
1656 * exp_util.adb, einfo.adb, einfo.ads, freeze.adb, exp_aggr.adb,
1657 sem_ch13.adb (Einfo.Initialization_Statements,
1658 Einfo.Set_Initialization_Statements): New entity attribute
1659 for objects.
1660 (Exp_Util.Find_Init_Call): Handle case of an object initialized
1661 by an aggregate converted to a block of assignment statements.
1662 (Freeze.Check_Address_Clause): Do not clear Has_Delayed_Freeze
1663 even for objects that require a constant address, because the
1664 address expression might involve entities that have yet to be
1665 elaborated at the point of the object declaration.
1666 (Exp_Aggr.Convert_Aggregate_In_Obj_Decl): For a type that does
1667 not require a transient scope, capture the assignment statements
1668 in a block so that they can be moved down after elaboration of
1669 an address clause if needed.
1670 (Sem_Ch13.Check_Constant_Address_Clause.Check_Expr_Constants,
1671 case N_Unchecked_Conversion): Do not replace operand subtype with
1672 its base type as this violates a GIGI invariant if the operand
1673 is an identifier (in which case the etype of the identifier
1674 is expected to be equal to that of the denoted entity).
1675
1676 2013-01-03 Javier Miranda <miranda@adacore.com>
1677
1678 * sem_util.ads, sem_util.adb (Denotes_Same_Object): Extend the
1679 functionality of this routine to cover cases described in the Ada 2012
1680 reference manual.
1681
1682 2013-01-03 Ed Schonberg <schonberg@adacore.com>
1683
1684 * sem_elab.adb (Set_Elaboration_Constraint): Handle properly
1685 a 'Access attribute reference when the subprogram is called
1686 Initialize.
1687
1688 2013-01-03 Arnaud Charlet <charlet@adacore.com>
1689
1690 * s-tpobop.adb (PO_Do_Or_Queue): Refine assertion, since a
1691 select statement may be called from a controlled (e.g. Initialize)
1692 operation and have abort always deferred.
1693
1694 2013-01-03 Robert Dewar <dewar@adacore.com>
1695
1696 * sem_ch8.adb, einfo.ads, einfo.adb: Minor code reorganization.
1697
1698 2013-01-03 Javier Miranda <miranda@adacore.com>
1699
1700 * exp_ch3.adb (Make_Controlling_Function_Wrappers): Exclude
1701 internal entities associated with interfaces and add minimum
1702 decoration to the defining entity of the generated wrapper to
1703 allow overriding interface primitives.
1704 * sem_disp.ads (Override_Dispatching_Operation): Addition of a
1705 new formal (Is_Wrapper).
1706 * sem_disp.adb (Override_Dispatching_Operation): When overriding
1707 interface primitives the new formal helps identifying that the
1708 new operation is not fully decorated.
1709
1710 2013-01-03 Thomas Quinot <quinot@adacore.com>
1711
1712 * sem_ch7.adb, sem_ch10.adb, einfo.adb, einfo.ads, sem_ch12.adb,
1713 rtsfind.adb, sem_elab.adb, sem_ch4.adb, sem_ch8.adb
1714 (Einfo.Is_Visible_Child_Unit, Einfo.Set_Is_Visible_Child_Unit):
1715 Rename to Is_Visible_Lib_Unit, Set_Is_Visible_Lib_Unit, and
1716 update spec accordingly (now also applies to root library units).
1717 (Sem_Ch10.Analyze_Subunit.Analyze_Subunit_Context): Toggle above flag
1718 on root library units, not only child units.
1719 (Sem_Ch10.Install[_Limited]_Withed_Unit): Same.
1720 (Sem_Ch10.Remove_Unit_From_Visibility): Reset Is_Visible_Lib_Unit
1721 even for root library units.
1722 (Sem_Ch8.Find_Expanded_Name): A selected component form whose prefix is
1723 Standard is an expanded name for a root library unit.
1724
1725 2013-01-03 Thomas Quinot <quinot@adacore.com>
1726
1727 * exp_ch3.adb: Minor reformatting.
1728
1729 2013-01-03 Olivier Hainque <hainque@adacore.com>
1730
1731 * tracebak.c: Reinstate changes to support ppc-lynx178.
1732
1733 2013-01-03 Ed Schonberg <schonberg@adacore.com>
1734
1735 * atree.ads: Minor reformatting and documentation enhancement.
1736
1737 2013-01-03 Ed Schonberg <schonberg@adacore.com>
1738
1739 * exp_ch3.adb (Expand_N_Object_Declaration): If the object has
1740 a class-wide type and a renaming declaration is created for it,
1741 preserve entity chain, which already contains generated internal
1742 types. This ensures that freezing actions are properly generated
1743 for all objects declared subsequently in the same scope, and
1744 that debugging information is generated for them.
1745 * sem_util.adb, sem_util.ads (we): New debugging routine, to
1746 display entity chain of a given scope.
1747
1748 2013-01-03 Robert Dewar <dewar@adacore.com>
1749
1750 * exp_intr.adb: Minor reformatting.
1751
1752 2013-01-03 Robert Dewar <dewar@adacore.com>
1753
1754 * einfo.adb: Minor reformatting.
1755
1756 2013-01-03 Pascal Obry <obry@adacore.com>
1757
1758 * adaint.c, adaint.h (__gnat_get_module_name): Removed.
1759 (__gnat_is_module_name_supported): Removed.
1760 * s-win32.ads: Add some needed definitions.
1761 * g-trasym.ads: Update comments.
1762
1763 2013-01-03 Robert Dewar <dewar@adacore.com>
1764
1765 * layout.adb (Set_Composite_Alignment): Fix problems of
1766 interactions with Optimize_Alignment set to Space.
1767
1768 2013-01-03 Thomas Quinot <quinot@adacore.com>
1769
1770 * exp_disp.adb: Minor reformatting.
1771
1772 2013-01-02 Richard Biener <rguenther@suse.de>
1773
1774 PR bootstrap/55784
1775 * gcc-interface/Makefile.in: Add $(GMPINC) to includes.
1776
1777 2013-01-02 Thomas Quinot <quinot@adacore.com>
1778
1779 * exp_intr.adb (Expand_Dispatching_Constructor_Call): Remove
1780 side effects from Tag_Arg early, doing it too late may cause a
1781 crash due to inconsistent Parent link.
1782 * sem_ch8.adb, einfo.ads: Minor reformatting.
1783
1784 2013-01-02 Robert Dewar <dewar@adacore.com>
1785
1786 * einfo.ads, einfo.adb (Has_Independent_Components): New flag.
1787 * freeze.adb (Size_Known): We do not know the size of a packed
1788 record if it has atomic components, by reference type components,
1789 or independent components.
1790 * sem_prag.adb (Analyze_Pragma, case Independent_Components): Set new
1791 flag Has_Independent_Components.
1792
1793 2013-01-02 Yannick Moy <moy@adacore.com>
1794
1795 * opt.ads (Warn_On_Suspicious_Contract): Set to True by default.
1796 * usage.adb (Usage): Update usage message.
1797
1798 2013-01-02 Pascal Obry <obry@adacore.com>
1799
1800 * adaint.c (__gnat_is_module_name_supported): New constant.
1801
1802 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1803
1804 * sem_attr.adb (Check_Array_Type): Reject an attribute reference on an
1805 array whose component type does not have a completion.
1806
1807 2013-01-02 Geert Bosch <bosch@adacore.com>
1808
1809 * a-nllcef.ads, a-nlcefu.ads, a-nscefu.ads: Make Pure.
1810
1811 2013-01-02 Robert Dewar <dewar@adacore.com>
1812
1813 * par_sco.adb: Minor reformatting.
1814
1815 2013-01-02 Javier Miranda <miranda@adacore.com>
1816
1817 * sem_aggr.adb (Resolve_Array_Aggregate): Remove dead code.
1818
1819 2013-01-02 Olivier Hainque <hainque@adacore.com>
1820
1821 * a-exctra.ads (Get_PC): New function.
1822
1823 2013-01-02 Thomas Quinot <quinot@adacore.com>
1824
1825 * sem_ch8.adb: Minor reformatting.
1826
1827 2013-01-02 Thomas Quinot <quinot@adacore.com>
1828
1829 * sem_ch7.adb: Minor reformatting.
1830
1831 2013-01-02 Thomas Quinot <quinot@adacore.com>
1832
1833 * freeze.adb (Check_Component_Storage_Order): Do not crash on
1834 _Tag component.
1835
1836 2013-01-02 Robert Dewar <dewar@adacore.com>
1837
1838 * gnat1drv.adb, targparm.adb, targparm.ads: Minor name change: add
1839 On_Target to Atomic_Sync_Default.
1840
1841 2013-01-02 Robert Dewar <dewar@adacore.com>
1842
1843 * sem_warn.adb (Warn_On_Known_Condition): Suppress warning for
1844 comparison of attribute result with constant
1845 * a-ststio.adb, s-direio.adb, s-rannum.adb: Remove unnecessary pragma
1846 Warnings (Off, "..");
1847
1848 2013-01-02 Yannick Moy <moy@adacore.com>
1849
1850 * sem_prag.ads: Minor correction of comment.
1851
1852 2013-01-02 Thomas Quinot <quinot@adacore.com>
1853
1854 * par_sco.adb (Traverse_Package_Declaration): The first
1855 declaration in a nested package is dominated by the preceding
1856 declaration in the enclosing scope.
1857
1858 2013-01-02 Pascal Obry <obry@adacore.com>
1859
1860 * adaint.c, adaint.h (__gnat_get_module_name): Return the actual
1861 module containing a given address.
1862
1863 2013-01-02 Thomas Quinot <quinot@adacore.com>
1864
1865 * sem_ch3.adb: Minor reformatting.
1866
1867 2013-01-02 Pascal Obry <obry@adacore.com>
1868
1869 * cstreams.c (__gnat_ftell64): New routine. Use _ftelli64 on
1870 Win64 and default to ftell on other platforms.
1871 (__gnat_fsek64): Likewise.
1872 * i-cstrea.ads: Add fssek64 and ftell64 specs.
1873 * s-crtl.ads: Likewise.
1874 * a-ststio.adb, s-direio.adb (Size): Use 64 bits version when required.
1875 (Set_Position): Likewise.
1876
1877 2013-01-02 Thomas Quinot <quinot@adacore.com>
1878
1879 * par_sco.adb: Generate X SCOs for default expressions in
1880 subprogram body stubs. Do not generate any SCO for package,
1881 task, or protected body stubs.
1882
1883 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1884
1885 * sem_ch3.adb: Further improvement to ASIS mode for anonymous
1886 access to protected subprograms.
1887
1888 2013-01-02 Robert Dewar <dewar@adacore.com>
1889
1890 * par_sco.adb, vms_data.ads: Minor reformatting.
1891
1892 2013-01-02 Thomas Quinot <quinot@adacore.com>
1893
1894 * par_sco.adb (Traverse_Declarations_Or_Statement): Function
1895 form, returning value of Current_Dominant upon exit, for chaining
1896 purposes.
1897 (Traverse_Declarations_Or_Statement.Traverse_One, case
1898 N_Block_Statement): First statement is dominated by last declaration.
1899 (Traverse_Subprogram_Or_Task_Body): Ditto.
1900 (Traverse_Package_Declaration): First private
1901 declaration is dominated by last visible declaration.
1902 (Traverse_Sync_Definition): Ditto.
1903
1904 2013-01-02 Thomas Quinot <quinot@adacore.com>
1905
1906 * gnat_rm.texi: Restrict the requirement for Scalar_Storage_Order
1907 matching Bit_Order to record types only, since array types do not
1908 have a Bit_Order.
1909
1910 2013-01-02 Vincent Celier <celier@adacore.com>
1911
1912 * gnat_ugn.texi: Remove documentation of -gnateO, which is an
1913 internal switch.
1914 * usage.adb: Indicate that -gnateO is an internal switch.
1915
1916 2013-01-02 Thomas Quinot <quinot@adacore.com>
1917
1918 * par_sco.adb: Add SCO generation for task types and single
1919 task declarations.
1920 * get_scos.adb: When adding an instance table entry for a
1921 non-nested instantiation, make sure the Enclosing_Instance is
1922 correctly set to 0.
1923
1924 2013-01-02 Hristian Kirtchev <kirtchev@adacore.com>
1925
1926 * sem_attr.adb (Analyze_Attribute): Skip the special _Parent
1927 scope generated for subprogram inlining purposes while trying
1928 to locate the enclosing function.
1929 * sem_prag.adb (Analyze_Pragma): Preanalyze the boolean
1930 expression of pragma Postcondition when the pragma comes from
1931 source and appears inside a subprogram body.
1932
1933 2013-01-02 Thomas Quinot <quinot@adacore.com>
1934
1935 * switch-c.adb, fe.h, back_end.adb: Enable generation of instantiation
1936 information in debug info unconditionally when using -fdump-scos,
1937 instead of relying on a separate command line switch -fdebug-instances.
1938 * gcc-interface/Make-lang.in: Update dependencies.
1939
1940 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1941
1942 * sem_ch12.adb: Additional refinement of predicate.
1943
1944 2013-01-02 Vincent Celier <celier@adacore.com>
1945
1946 * vms_data.ads: Remove incorrect spaces at end of descriptions
1947 of qualifiers for single switch.
1948
1949 2013-01-02 Ben Brosgol <brosgol@adacore.com>
1950
1951 * gnat_rm.texi: Minor edits / wordsmithing in section on pragma
1952 Check_Float_Overflow.
1953
1954 2013-01-02 Thomas Quinot <quinot@adacore.com>
1955
1956 * sprint.adb (Sprint_Node_Actual): Do not add extra parens for
1957 a conditional expression (CASE or IF expression) that already
1958 has parens. Also omit ELSE keyword for an IF expression without
1959 an ELSE part.
1960
1961 2013-01-02 Thomas Quinot <quinot@adacore.com>
1962
1963 * gnat1drv.adb (Adjust_Global_Switches): Adjust back-end
1964 flag_debug_instances here, after front-end switches have been
1965 processed.
1966
1967 2013-01-02 Vincent Celier <celier@adacore.com>
1968
1969 * usage.adb: Minor reformatting.
1970
1971 2013-01-02 Arnaud Charlet <charlet@adacore.com>
1972
1973 * opt.ads: Fix typo.
1974
1975 2013-01-02 Thomas Quinot <quinot@adacore.com>
1976
1977 * par_sco.adb: Generate P decision SCOs for SPARK pragmas
1978 Assume and Loop_Invariant.
1979
1980 2013-01-02 Robert Dewar <dewar@adacore.com>
1981
1982 * vms_data.ads: Add entry for Float_Check_Valid (-gnateF).
1983 * ug_words: Add entry for Float_Check_Overflow.
1984 * usage.adb: Minor reformatting.
1985 * gnat_ugn.texi: Add documentation for -gnateF (Check_Float_Overflow).
1986
1987 2013-01-02 Vincent Celier <celier@adacore.com>
1988
1989 * gnat_ugn.texi: Add documentation for switches -gnateA, -gnated,
1990 -gnateO=, -gnatet and -gnateV.
1991 * ug_words: Add qualifiers equivalent to -gnateA, -gnated,
1992 -gnatet and -gnateV.
1993 * usage.adb: Add lines for -gnatea, -gnateO and -gnatez.
1994 * vms_data.ads: Add new compiler qualifiers /ALIASING_CHECK
1995 (-gnateA), /DISABLE_ATOMIC_SYNCHRONIZATION (-gnated),
1996 /PARAMETER_VALIDITY_CHECK (-gnateV) and /TARGET_DEPENDENT_INFO
1997 (-gnatet).
1998
1999 2013-01-02 Robert Dewar <dewar@adacore.com>
2000
2001 * checks.adb (Apply_Scalar_Range_Check): Implement Check_Float_Overflow.
2002 * opt.ads, opt.adb: Handle flags Check_Float_Overflow[_Config].
2003 * par-prag.adb: Add dummy entry for pragma Check_Float_Overflow.
2004 * sem_prag.adb: Implement pragma Check_Float_Overflow.
2005 * snames.ads-tmpl: Add entries for pragma Check_Float_Overflow.
2006 * switch-c.adb: Recognize -gnateF switch.
2007 * tree_io.ads: Update ASIS version number.
2008 * gnat_rm.texi: Add documentation of pragma Check_Float_Overflow.
2009
2010 2013-01-02 Robert Dewar <dewar@adacore.com>
2011
2012 * checks.adb, exp_ch4.adb, exp_ch6.adb, exp_ch7.adb, exp_ch9.adb,
2013 exp_disp.adb, exp_dist.adb, exp_intr.adb, exp_prag.adb, exp_util.adb,
2014 freeze.adb, gnat1drv.adb, inline.adb, layout.adb, lib-xref.adb,
2015 par-ch10.adb, par-labl.adb, par-load.adb, par-util.adb, restrict.adb,
2016 sem_ch13.adb, sem_ch4.adb, sem_ch6.adb, sem_dim.adb, sem_elab.adb,
2017 sem_res.adb, sem_warn.adb, sinput-l.adb: Add tags to warning messages.
2018 * sem_ch6.ads, warnsw.ads, opt.ads: Minor comment updates.
2019
2020 2013-01-02 Robert Dewar <dewar@adacore.com>
2021
2022 * err_vars.ads: Minor comment fix.
2023
2024 2013-01-02 Ed Schonberg <schonberg@adacore.com>
2025
2026 * sem_ch12.adb: Refine predicate.
2027
2028 2013-01-02 Robert Dewar <dewar@adacore.com>
2029
2030 * errout.ads: Minor comment fixes.
2031 * opt.ads: Minor comment additions.
2032 * exp_aggr.adb: Add tags to warning messages
2033 * exp_ch11.adb, exp_ch3.adb, exp_ch4.adb, exp_util.adb, sem_aggr.adb,
2034 sem_attr.adb, sem_case.adb, sem_cat.adb, sem_ch3.adb, sem_ch4.adb,
2035 sem_ch5.adb, sem_disp.adb, sem_dist.adb, sem_elab.adb, sem_eval.adb,
2036 sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb, sem_util.adb,
2037 sem_warn.adb: Add tags to warning messages
2038
2039 2013-01-02 Doug Rupp <rupp@adacore.com>
2040
2041 * init.c [VMS] Remove subtest on reason mask for ACCVIO that is a C_E.
2042
2043 2013-01-02 Ed Schonberg <schonberg@adacore.com>
2044
2045 * sem_ch12.adb: Recover source name for renamed packagea.
2046
2047 2013-01-02 Robert Dewar <dewar@adacore.com>
2048
2049 * errout.adb (Set_Msg_Insertion_Warning): Correct typo causing
2050 tests to fail if insertion sequence is at end of message string.
2051 * opt.ads: Minor comment fixes and additions.
2052 * sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_ch10.adb, sem_ch11.adb,
2053 sem_ch12.adb, sem_ch13.adb: Add tags to warning messages.
2054 * sem_ch6.ads, sem_ch6.adb (Cannot_Inline): Deal with warning message
2055 tags. Add tags to warning messages.
2056
2057 2013-01-02 Robert Dewar <dewar@adacore.com>
2058
2059 * err_vars.ads (Warning_Doc_Switch): New flag.
2060 * errout.adb (Error_Msg_Internal): Implement new warning flag
2061 doc tag stuff (Set_Msg_Insertion_Warning): New procedure.
2062 * errout.ads: Document new insertion sequences ?? ?x? ?.x?
2063 * erroutc.adb (Output_Msg_Text): Handle ?? and ?x? warning doc
2064 tag stuff.
2065 * erroutc.ads (Warning_Msg_Char): New variable.
2066 (Warn_Chr): New field in error message object.
2067 * errutil.adb (Error_Msg): Set Warn_Chr in error message object.
2068 * sem_ch13.adb: Minor reformatting.
2069 * warnsw.adb: Add handling for -gnatw.d and -gnatw.D
2070 (Warning_Doc_Switch).
2071 * warnsw.ads: Add handling of -gnatw.d/.D switches (warning
2072 doc tag).
2073
2074 2013-01-02 Robert Dewar <dewar@adacore.com>
2075
2076 * opt.ads: Minor reformatting.
2077
2078 2013-01-02 Doug Rupp <rupp@adacore.com>
2079
2080 * init.c: Reorganize VMS section.
2081 (scan_condtions): New function for scanning condition tables.
2082 (__gnat_handle_vms_condtion): Use actual exception name for imported
2083 exceptions vice IMPORTED_EXCEPTION.
2084 Move condition table scanning into separate function. Move formerly
2085 special handled conditions to system condition table. Use SYS$PUTMSG
2086 output to fill exception message field for formally special handled
2087 condtions, in particular HPARITH to provide more clues about cause and
2088 location then raised from the translated image.
2089
2090 2013-01-02 Thomas Quinot <quinot@adacore.com>
2091
2092 * sem_ch13.adb (Analyze_Aspect_Specifications): For a Pre/Post
2093 aspect that applies to a library subprogram, prepend corresponding
2094 pragma to the Pragmas_After list, in order for split AND THEN
2095 sections to be processed in the expected order.
2096
2097 2013-01-02 Thomas Quinot <quinot@adacore.com>
2098
2099 * exp_prag.adb (Expand_Pragma_Check): The statements generated
2100 for the pragma must have the sloc of the pragma, not the
2101 sloc of the condition, otherwise this creates anomalies in the
2102 generated debug information that confuse coverage analysis tools.
2103
2104 2013-01-02 Thomas Quinot <quinot@adacore.com>
2105
2106 * sem_ch13.adb: Minor reformatting.
2107
2108 2013-01-02 Arnaud Charlet <charlet@adacore.com>
2109
2110 * g-excact.ads (Core_Dump): Clarify that this subprogram does
2111 not dump cores under Windows.
2112
2113 2013-01-02 Ed Schonberg <schonberg@adacore.com>
2114
2115 * sem_ch8.adb (Analyze_Primitive_Renamed_Operation): The prefixed
2116 view of a subprogram has convention Intrnnsic, and a renaming
2117 of a prefixed view cannot be the prefix of an Access attribute.
2118
2119 2013-01-02 Robert Dewar <dewar@adacore.com>
2120
2121 * restrict.adb: Minor reformatting.
2122
2123 2013-01-02 Thomas Quinot <quinot@adacore.com>
2124
2125 * exp_prag.adb: Minor reformatting.
2126
2127 2013-01-02 Ed Schonberg <schonberg@adacore.com>
2128
2129 * sem_ch12.adb (Get_Associated_Node): If the node is an
2130 identifier that denotes an unconstrained array in an object
2131 declaration, it is rewritten as the name of an anonymous
2132 subtype whose bounds are given by the initial expression in the
2133 declaration. When checking whether that identifier is global
2134 reference, use the original node, not the local generated subtype.
2135
2136 2013-01-02 Olivier Hainque <hainque@adacore.com>
2137
2138 * tracebak.c: Revert previous change, incomplete.
2139
2140 2013-01-02 Ed Schonberg <schonberg@adacore.com>
2141
2142 * sem_ch13.adb (Analyze_Aspect_Specifications): If the aspect
2143 appears on a subprogram body that acts as a spec, place the
2144 corresponding pragma in the declarations of the body, so that
2145 e.g. pre/postcondition checks can be generated appropriately.
2146
2147 2013-01-02 Robert Dewar <dewar@adacore.com>
2148
2149 * sem_ch3.adb: Minor reformatting and code reorganization.
2150
2151 2013-01-02 Vincent Celier <celier@adacore.com>
2152
2153 * switch-m.adb (Normalize_Compiler_Switches): Record the
2154 complete switch -fstack-check=specific instead of its shorter
2155 alias -fstack-check.
2156
2157 2013-01-02 Ed Schonberg <schonberg@adacore.com>
2158
2159 * sem_ch3.adb (Derive_Subprogram): Enforce RM 6.3.1 (8):
2160 if the derived type is a tagged generic formal type with
2161 unknown discriminants, the inherited operation has convention
2162 Intrinsic. As such, the 'Access attribute cannot be applied to it.
2163
2164 2013-01-02 Thomas Quinot <quinot@adacore.com>
2165
2166 * sem_attr.adb: Minor reformatting.
2167
2168 2013-01-02 Thomas Quinot <quinot@adacore.com>
2169
2170 * par_sco.adb: Add SCO generation for S of protected types and
2171 single protected object declarations.
2172
2173 2013-01-02 Robert Dewar <dewar@adacore.com>
2174
2175 * sem_eval.adb, osint.ads: Minor reformatting.
2176
2177 2013-01-02 Hristian Kirtchev <kirtchev@adacore.com>
2178
2179 * sem_prag.adb (Analyze_Pragma): Check the legality of pragma Assume.
2180
2181 2013-01-02 Thomas Quinot <quinot@adacore.com>
2182
2183 * sem_eval.adb (Compile_Time_Compare): For static operands, we
2184 can perform a compile time comparison even if in preanalysis mode.
2185
2186 2013-01-02 Thomas Quinot <quinot@adacore.com>
2187
2188 * par_sco.adb (SCO_Record): Always use
2189 Traverse_Declarations_Or_Statements to process the library level
2190 declaration, so that SCOs are properly generated for its aspects.
2191
2192 2013-01-02 Thomas Quinot <quinot@adacore.com>
2193
2194 * scos.ads (In_Decision): Add missing entry for 'a'.
2195 * sem_prag.adb (Analyze_Pragma, case pragma Check): Omit
2196 call to Set_SCO_Pragma_Enabled for Invariant and Predicate.
2197 * sem_ch13.adb: Minor comment update.
2198 \f
2199 Copyright (C) 2013 Free Software Foundation, Inc.
2200
2201 Copying and distribution of this file, with or without modification,
2202 are permitted in any medium without royalty provided the copyright
2203 notice and this notice are preserved.