1 2013-01-29 Thomas Quinot <quinot@adacore.com>
3 * sprint.adb (Sprint_Node_Actual): Output freeze nodes for
4 itypes even if Dump_Freeze_Null is not set.
6 2013-01-29 Robert Dewar <dewar@adacore.com>
8 * sem_util.adb: Minor reformatting.
9 * s-rident.ads: Minor comment fixes.
11 2013-01-29 Pascal Obry <obry@adacore.com>
13 * prj-env.ads, prj-env.adb (Add_Directories): Add parameter to
14 control if the path is prepended or appended.
16 2013-01-29 Ed Schonberg <schonberg@adacore.com>
18 * sem_ch6.adb (Analyze_Expression_Function): An expression
19 function declaration is not a subprogram declaration, and thus
20 cannot appear in a protected definition.
22 2013-01-29 Hristian Kirtchev <kirtchev@adacore.com>
24 * exp_util.adb (Insert_Actions): When new
25 actions come from the expression of the expression with actions,
26 then they must be added to the list of existing actions.
28 2013-01-29 Eric Botcazou <ebotcazou@adacore.com>
30 * sem_ch3.adb (Analyze_Subtype_Declaration) <Private_Kind>: For
31 the subtype of a constrained private type with discriminants
32 that has got a full view, show that the completion is a clone
35 2013-01-29 Javier Miranda <miranda@adacore.com>
37 * errout.ads, errout.adb (Get_Ignore_Errors): New subprogram.
38 * opt.ads (Warn_On_Overlap): Update documentation.
39 * sem_aggr.adb (Resolve_Aggregate, Resolve_Extension_Aggregate):
40 Check function writable actuals.
41 * sem_ch3.adb (Build_Derived_Record_Type,
42 Record_Type_Declaration): Check function writable actuals.
43 * sem_ch4.adb (Analyze_Range): Check function writable actuals.
44 * sem_ch5.adb (Analyze_Assignment): Remove code of the initial
45 implementation of AI05-0144.
46 * sem_ch6.adb (Analyze_Function_Return,
47 (Analyze_Procedure_Call.Analyze_Call_And_Resolve): Remove code
48 of the initial implementation of AI05-0144.
49 * sem_res.adb (Resolve): Remove code of the initial implementation.
50 (Resolve_Actuals): Call Check_Function_Writable_Actuals and remove call
51 of the initial implementation.
52 (Resolve_Arithmetic_Op, Resolve_Logical_Op,
53 Resolve_Membership_Op): Check function writable actuals.
54 * sem_util.ad[sb] (Actuals_In_Call): Removed
55 (Check_Order_Dependence): Removed (Save_Actual): Removed
56 (Check_Function_Writable_Actuals): New subprogram.
57 * usage.adb (Usage): Update documentation.
58 * warnsw.adb (Set_Warning_Switch): Enable warn_on_overlap when
61 2013-01-29 Robert Dewar <dewar@adacore.com>
63 * a-calend-vms.adb: Minor comment fix.
65 2013-01-29 Robert Dewar <dewar@adacore.com>
67 * mlib-utl.adb, gnatlink.adb: Avoid reference to ASCII.Back_Slash
68 because of casing issues.
69 * sem_util.ads: Minor comment fix.
70 * style.adb (Check_Identifier): Set proper casing for entities
72 * styleg.adb: Minor comment improvement.
73 * stylesw.ads (Style_Check_Standard): Fix bad comments.
75 2013-01-29 Hristian Kirtchev <kirtchev@adacore.com>
77 * sem_prag.adb: Add the grammar for pragmas Abstract_State and Global.
78 (Analyze_Pragma): Push the scope of the related subprogram and install
79 its formals once before starting the analysis of the [moded] global
82 2013-01-29 Pascal Obry <obry@adacore.com>
84 * prj-proc.adb (Process_Expression_Variable_Decl): Always handle
85 relative paths in Project_Path as relative to the aggregate
86 project location. Note that this was what was documented.
88 2013-01-29 Vincent Celier <celier@adacore.com>
90 * gnatcmd.adb: For "gnat stub -P ...", do not check the naming
91 scheme for Ada, when Ada is not a language for the project.
93 2013-01-29 Ed Schonberg <schonberg@adacore.com>
95 * sem_ch3.adb (Analyze_Subtype_Declaration): Inherit
96 Is_Generic_Actual_Type flag in a nested instance.
97 * sem_ch12.adb (Restore_Private_Views): Preserve
98 Is_Generic_Actual_Type flag if actual is a Generic_Actual_Type
99 of an enclosing instance.
100 * sem_util.adb (Corresponding_Generic_Type): Handle generic actual
101 which is an actual of an enclosing instance.
102 * sem_type.adb (Real_Actual): If a generic_actual_type is the
103 formal of an enclosing generic and thus renames the corresponding
104 actual, use the actual of the enclosing instance to resolve
105 spurious ambiguities in instantiations when two formals are
106 instantiated with the same actual.
108 2013-01-29 Robert Dewar <dewar@adacore.com>
110 * gnat_rm.texi: Document all Ada 2005 and Ada 2012 pragmas as
111 being available as implementation-defined pragmas in earlier
114 2013-01-29 Vincent Celier <celier@adacore.com>
116 * clean.adb (Delete): On VMS, delete all versions of the file.
118 2013-01-29 Robert Dewar <dewar@adacore.com>
120 * par-ch6.adb (No_Constraint_Maybe_Expr_Func): New procedure.
121 * par-util.adb (No_Constraint): Undo special handling, moved
124 2013-01-29 Robert Dewar <dewar@adacore.com>
126 * aspects.ads: Aspect Warnings is implementation defined Add
127 some other missing entries to impl-defined list Mark Warnings
128 as GNAT pragma in main list.
129 * sem_ch8.adb: Process aspects for all cases of renaming
132 2013-01-29 Robert Dewar <dewar@adacore.com>
134 * sem_ch6.adb (Analyze_Function_Call): Set In_Assertion flag.
135 * sem_elab.adb (Check_Internal_Call_Continue): Do not issue
136 warnings about possible elaboration error if call is within
138 * sinfo.ads, sinfo.adb (In_Assertion): New flag in N_Function_Call node.
140 2013-01-29 Robert Dewar <dewar@adacore.com>
142 * a-calend-vms.adb, g-eacodu-vms.adb, g-trasym-vms-alpha.adb,
143 * s-auxdec-vms-ia64.adb, s-mastop-vms.adb, s-osprim-vms.adb,
144 s-tasdeb-vms.adb: Replace pragma Interface by pragma Import.
146 2013-01-29 Robert Dewar <dewar@adacore.com>
148 * opt.ads (Ignore_Style_Checks_Pragmas): New flag.
149 * par-prag.adb (Par, case Style_Checks): Recognize
150 Ignore_Style_Checks_Pragmas.
151 * sem_prag.adb (Analyze_Pragma, case Style_Checks): Recognize
152 Ignore_Style_Checks_Pragmas.
153 * switch-c.adb: Recognize -gnateY switch.
154 * usage.adb: Add documentation for "-gnateY".
155 * vms_data.ads: Add IGNORE_STYLE_CHECKS_PRAGMAS (-gnateY).
157 2013-01-29 Vincent Celier <celier@adacore.com>
159 * clean.adb (Clean_Executables): Add Sid component when calling
161 * make.adb: When inserting in the Queue, add the Source_Id
162 (Sid) when it is known (Start_Compile_If_Possible): When the
163 Source_Id is known (Sid), get the path name of the ALI file
164 (Full_Lib_File) from it, to avoid finding old ALI files in other
166 * makeutl.ads (Source_Info): New Source_Id component Sid in
167 Format_Gnatmake variant.
169 2013-01-29 Robert Dewar <dewar@adacore.com>
171 * gnat_ugn.texi: Document -gnateY.
173 2013-01-29 Doug Rupp <rupp@adacore.com>
175 * s-osinte-vms.ads, s-taprop-vms.adb, system-vms_64.ads,
176 system-vms-ia64.ads: Replace pragma Interface by pragma Import.
178 2013-01-29 Robert Dewar <dewar@adacore.com>
180 * atree.ads, atree.adb (Node30): New function.
181 (Set_Node30): New procedure.
182 (Num_Extension_Nodes): Change to 5 (activate new fields/flags).
183 * atree.h: Add macros for Field30 and Node30.
184 * einfo.ads, einfo.adb: Move some fields to avoid duplexing.
185 * treepr.adb (Print_Entity_Information): Print fields 30-35.
187 2013-01-29 Robert Dewar <dewar@adacore.com>
189 * sem_prag.adb (Analyze_Pragma, case Interface): Consider to
190 be a violation of No_Obsolescent_Features even in Ada 95. Also
191 generates a warning in -gnatwj mode.
192 (Analyze_Pragma, case Interface_Name): Generates a warning in -gnatwj
194 * gnat_ugn.texi: Additional documentation on -gnatwj and pragma
197 2013-01-29 Vincent Celier <celier@adacore.com>
199 * snames.ads-tmpl: Add new standard name Trailing_Switches.
201 2013-01-29 Ed Schonberg <schonberg@adacore.com>
203 * sem_disp.adb (Check_Controlling_Type): If a designated type T
204 of an anonymous access type is a limited view of a tagged type,
205 it can be a controlling type only if the subprogram is in the
208 2013-01-29 Vincent Celier <celier@adacore.com>
210 * gnatcmd.adb: Use the project where the config pragmas file is
211 declared to get its path.
213 2013-01-29 Vincent Celier <celier@adacore.com>
215 * prj-attr.adb: New attribute Linker'Trailing_Switches.
217 2013-01-22 Eric Botcazou <ebotcazou@adacore.com>
219 * gcc-interface/trans.c (gnat_to_gnu) <N_Expression_With_Actions>: Do
220 not translate the Etype of the node before translating the Actions.
222 2013-01-22 Eric Botcazou <ebotcazou@adacore.com>
224 * gcc-interface/trans.c (Pragma_to_gnu) <Name_Space>: Use optimize_size
225 instead of optimize and adjust warning message.
226 (Compilation_Unit_to_gnu): Process pragmas preceding the unit.
228 2013-01-22 Tristan Gingold <gingold@adacore.com>
230 * gcc-interface/gigi.h (ADT_unhandled_except_decl,
231 ADT_unhandled_others_decl): New.
232 (unhandled_others_decl, unhandled_except_decl): Define.
233 * gcc-interface/trans.c: Include common/common-target.h.
234 (gigi): Initialize them.
235 (Subprogram_Body_to_gnu): On SEH targets, wrap the body of the main
236 function in a try/catch clause.
238 2013-01-11 Eric Botcazou <ebotcazou@adacore.com>
240 * gcc-interface/Make-lang.in (COMMON_ADAFLAGS): Remove -gnata.
241 (CHECKING_ADAFLAGS): New.
242 (ALL_ADAFLAGS): Include CHECKING_ADAFLAGS.
244 2013-01-10 Eric Botcazou <ebotcazou@adacore.com>
246 * gcc-interface/config-lang.in (boot_language_boot_flags): Delete.
247 * gcc-interface/Make-lang.in (BOOT_ADAFLAGS): Likewise.
249 2013-01-07 Eric Botcazou <ebotcazou@adacore.com>
251 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Adjust
252 comment about type extension with discriminants.
253 <E_Record_Subtype>: Remove useless test and reorder conditions.
254 (elaborate_entity) <E_Record_Subtype>: Likewise.
256 2013-01-07 Richard Biener <rguenther@suse.de>
259 * gcc-interface/Make-lang.in (ada.install-common): Always apply
260 program_transform_name.
262 2013-01-06 Eric Botcazou <ebotcazou@adacore.com>
264 * gnatvsn.ads (Current_Year): Bump to 2013.
266 2013-01-06 Olivier Hainque <hainque@adacore.com>
268 * gcc-interface/decl.c (gnat_to_gnu_field): Emit a specialized
269 diagnostic for component size mismatch wrt volatile requirements.
270 Add a gcc_unreachable() at the end of the checks for size. Split
271 the check on volatile for positions into one check on atomic and
272 a subsequent one on volatile.
274 2013-01-06 Eric Botcazou <ebotcazou@adacore.com>
276 * gcc-interface/decl.c (elaborate_entity) <E_Record_Type>: Delete.
278 2013-01-06 Eric Botcazou <ebotcazou@adacore.com>
280 * gcc-interface/decl.c (gnat_to_gnu_entity) <discrete_type>: Do not
281 pack the field of the record type made for a misaligned type.
283 2013-01-06 Eric Botcazou <ebotcazou@adacore.com>
285 * gcc-interface/decl.c (annotate_value) <COMPONENT_REF>: Be prepared
286 for discriminants inherited from parent record types.
288 2013-01-04 Robert Dewar <dewar@adacore.com>
290 * warnsw.adb: Minor fixes to -gnatw.d handling.
292 2013-01-04 Robert Dewar <dewar@adacore.com>
294 * einfo.adb, atree.adb: Enlarge entities to make 63 more flags, 6 more
297 2013-01-04 Joel Brobecker <brobecker@adacore.com>
299 * gnat_ugn.texi: Fix typo.
301 2013-01-04 Robert Dewar <dewar@adacore.com>
303 * gnat_rm.texi: Document alignment choice for subtypes.
305 2013-01-04 Robert Dewar <dewar@adacore.com>
307 * validsw.ads: Minor fix to comment.
309 2013-01-04 Doug Rupp <rupp@adacore.com>
311 * Makefile.rtl (GNATRTL_NONTASKING_OBJS,
312 GNATRTL_ALTIVEC_OBJS): Factor g-al* objects.
313 * gcc-interface/Makefile.in (ADA_EXCLUDE_SRCS): Add g-al* sources.
314 (GNATRTL_ALTIVEC_OBJS): Override to null for VMS.
315 Rename leon vxworks toolchain as leon-wrs-vxworks.
316 * gcc-interface/Make-lang.in: Update dependencies
318 2013-01-04 Pascal Obry <obry@adacore.com>
320 * prj.ads (For_Each_Source): Add Locally_Removed parameter.
321 (Source_Iterator): Add Locally_Removed field.
322 * prj.adb (For_Each_Source): Ignore Locally_Removed files if needed.
325 2013-01-04 Robert Dewar <dewar@adacore.com>
327 * exp_attr.adb: Minor reformatting.
329 2013-01-04 Robert Dewar <dewar@adacore.com>
331 * checks.adb (Insert_Valid_Check): Fix handling of renamed
332 packed array element.
333 * exp_ch4.adb (Expand_Concatenate): Fix some missing parent
334 fields in generated code.
335 * exp_util.adb (Side_Effect_Free): Improve detection of cases
338 2013-01-04 Robert Dewar <dewar@adacore.com>
340 * sinfo.ads: Clean up order of N_xxx subtypes
342 2013-01-04 Vincent Celier <celier@adacore.com>
344 * prj-conf.adb (Check_Target): Allow --autoconf= with no target.
346 2013-01-04 Robert Dewar <dewar@adacore.com>
348 * types.ads, prj-conf.adb, par-tchk.adb: Minor reformatting.
350 2013-01-04 Robert Dewar <dewar@adacore.com>
352 * par-ch6.adb (P_Subprogram): Better handling of missing IS
353 after expression function.
354 * par-util.adb (No_Constraint): Improve handling to avoid bad warnings.
356 2013-01-04 Robert Dewar <dewar@adacore.com>
358 * exp_util.ads, exp_util.adb (Insert_Actions): In expression with
359 actions case, new actions are appended to the sequence rather than
362 2013-01-04 Robert Dewar <dewar@adacore.com>
364 * gnat_ugn.texi: Document -gnatw.d/w.D (does no apply in VMS mode).
365 * usage.adb: Add lines for -gnatw.d/w.D switches.
366 * warnsw.adb: Minor fixes (some missing cases of setting
367 Warning_Doc_Switch). Reject -gnatw.d and -gnatw.D in VMS mode.
369 2013-01-04 Robert Dewar <dewar@adacore.com>
371 * exp_util.adb (Remove_Side_Effects): Make sure scope suppress
374 2013-01-04 Robert Dewar <dewar@adacore.com>
376 * usage.adb: Document -gnateF (check overflow for predefined Float).
378 2013-01-04 Robert Dewar <dewar@adacore.com>
380 * sem_res.adb (Resolve_Type_Conversion): Remove incorrect
381 prevention of call to Apply_Type_Conversion_Checks, which resulted
382 in missing check flags in formal mode.
384 2013-01-04 Vincent Celier <celier@adacore.com>
386 * makeutl.ads (Db_Switch_Args): New table used by gprbuild.
387 * prj-conf.adb (Check_Builder_Switches): Check for switches
388 --config= (Get_Db_Switches): New procedure to get the --db
389 switches so that they are used when invoking gprconfig in
391 (Do_Autoconf): When invoking gprconfig, use the --db switches, if any.
393 2013-01-04 Pascal Obry <obry@adacore.com>
395 * prj-nmsc.adb: Minor reformatting.
397 2013-01-04 Vincent Celier <celier@adacore.com>
399 * makeutl.ads (Root_Environment): New variable, moved rom
400 gprbuild (Load_Standard_Base): New Boolean variable, moved
402 * prj-conf.adb (Check_Builder_Switches): New procedure to check
403 for switch --RTS in package Builder. If a runtime specified
404 by --RTS is a relative path name, but not a base name, then
405 find the path on the Project Search Path.
406 (Do_Autoconf): Call Check_Builder_Switches.
407 (Locate_Runtime): New procedure, moved from gprbuild, to get the
408 absolute paths of runtimes when they are not specified as a base name.
409 * prj-conf.ads (Locate_Runtime): New procedure, moved from gprbuild.
411 2013-01-04 Ed Schonberg <schonberg@adacore.com>
413 * sem_ch3.adb (Build_Private_Derived_Type): Set
414 Has_Private_Ancestor on type derived from an untagged private
415 type whose full view has discriminants
416 * sem_aggr.adb (Resolve_Record_Aggregate): Reject non-extension
417 aggregate for untagged record type with private ancestor.
419 2013-01-04 Thomas Quinot <quinot@adacore.com>
421 * sem_elab.adb, sem_ch3.adb: Minor reformatting.
423 2013-01-04 Robert Dewar <dewar@adacore.com>
425 * table.adb: Minor reformatting.
427 2013-01-04 Ed Schonberg <schonberg@adacore.com>
429 * sem_ch10.adb (Check_Redundant_Withs): A with_clause that does
430 not come from source does not generate a warning for redundant
433 2013-01-04 Hristian Kirtchev <kirtchev@adacore.com>
435 * aspects.adb, aspects.ads: Add Aspect_Global to all relevant tables.
436 * par-prag.adb: Add pragma Global to the list of pragmas that
437 do not need special processing by the parser.
438 * sem_ch13.adb (Analyze_Aspect_Specifications): Convert aspect
439 Global into a pragma without any form of legality checks. The
440 work is done by Analyze_Pragma. The aspect and pragma are both
441 marked as needing delayed processing. Insert the corresponding
442 pragma of aspect Abstract_State in the visible declarations of the
444 (Check_Aspect_At_Freeze_Point): Aspect Global
445 does not need processing even though it is marked as delayed.
446 Alphabetize the list on aspect names.
447 * sem_prag.adb: Add a value for pragma Global in table Sig_Flags.
448 (Analyze_Pragma): Add ??? comment about the grammar of pragma
449 Abstract_State. Move the error location from the pragma to the
450 state to improve the quality of error placement. Add legality
451 checks for pragma Global.
452 * snames.ads-tmpl Add the following specially recognized names
454 2013-01-04 Eric Botcazou <ebotcazou@adacore.com>
456 * sem_ch3.adb: Fix minor typo.
458 2013-01-04 Ed Schonberg <schonberg@adacore.com>
460 * par-ch13.adb (Aspect_Specifications_Present): In Strict mode,
461 accept an aspect name followed by a comma, indicating a defaulted
464 2013-01-04 Joel Brobecker <brobecker@adacore.com brobecker>
466 * gnat_ugn.texi: Document procedure to codesign GDB on Darwin.
467 Update doc on gnattest --separates switch.
469 2013-01-04 Thomas Quinot <quinot@adacore.com>
471 * s-chepoo.ads: Minor reformatting.
473 2013-01-04 Arnaud Charlet <charlet@adacore.com>
475 * usage.adb: Remove mention of -gnatN in usage.
477 2013-01-04 Robert Dewar <dewar@adacore.com>
479 * exp_prag.adb, gnatcmd.adb, exp_util.adb, table.adb, sem_prag.adb,
480 freeze.adb, sem_ch4.adb, sem_warn.adb, opt.ads, exp_aggr.adb,
481 prj-conf.adb, sem_ch13.adb: Minor reformatting.
483 2013-01-04 Thomas Quinot <quinot@adacore.com>
485 * sinfo.ads: Minor documentation update.
487 2013-01-04 Thomas Quinot <quinot@adacore.com>
489 * sem_ch3.adb, einfo.adb (Analyze_Object_Declaration): Do not set Ekind
490 before resolving initialization expression.
492 2013-01-04 Hristian Kirtchev <kirtchev@adacore.com>
494 * checks.adb (Generate_Index_Checks): Delay the generation of
495 the check for an indexed component where the prefix mentions
496 Loop_Entry until the attribute has been properly expanded.
497 * exp_ch5.adb (Expand_Loop_Entry_Attributes): Perform minor
498 decoration of the constant that captures the value of Loop_Entry's
499 prefix at the entry point into a loop. Generate index checks
500 for an attribute reference that has been transformed into an
503 2013-01-04 Thomas Quinot <quinot@adacore.com>
505 * exp_prag.adb, exp_util.adb, exp_util.ads, freeze.adb, exp_aggr.adb,
506 sem_ch13.adb (Exp_Aggr.Collect_Initialization_Statements): Nothing to
507 do if Obj is already frozen.
508 (Exp_Util.Find_Init_Call): Rename to...
509 (Exp_Util.Remove_Init_Call): New subprogram, renamed from
510 Find_Init_Call. Remove the initialization call from the enclosing
511 list if found, and if it is from an Initialization_Statements
513 (Exp_Util.Append_Freeze_Action): Minor code reorganization.
514 (Exp_Util.Append_Freeze_Actions): Ensure a freeze node has been
515 allocated (as is already done in Append_Freeze_Action).
516 (Freeze.Freeze_Entity): For an object with captured
517 Initialization_Statements and non-delayed freezeing, unwrap the
518 initialization statements and insert and them directly in the
520 (Sem_Ch13.Check_Address_Clause): For an object
521 with Initialization_Statements and an address clause, unwrap the
522 initialization statements when moving them to the freeze actions.
524 2013-01-03 Pascal Obry <obry@adacore.com>
526 * prj-attr.adb, projects.texi, snames.ads-tmpl: Add package remote and
527 corresponding attibutes.
529 2013-01-03 Thomas Quinot <quinot@adacore.com>
531 * exp_aggr.adb: Minor comment improvement.
533 2013-01-03 Hristian Kirtchev <kirtchev@adacore.com>
535 * aspects.adb, aspects.ads: Add Aspect_Abstract_State to all the
537 * einfo.ads, einfo.adb: Add Integrity_Level and Refined_State to
538 the description of fields (Abstract_States): New routine.
539 (Integrity_Level): New routine.
540 (Has_Property): New routine.
541 (Is_Input_State): New routine.
542 (Is_Null_State): New routine.
543 (Is_Output_State): New routine.
544 (Is_Volatile_State): New routine.
545 (Refined_State): New routine.
546 (Set_Abstract_States): New routine.
547 (Set_Integrity_Level): New routine.
548 (Set_Refined_State): New routine.
549 (Write_Field8_Name): Add proper output for E_Abstract_State.
550 (Write_Field9_Name): Add proper output for E_Abstract_State.
551 (Write_Field25_Name): Add proper output for E_Package.
552 * lib-xref.ads: Add new letter for an abstract state.
553 * par-prag.adb: Add pragma Abstract_State to the list of pragma
554 that do not need special processing by the parser.
555 * sem_ch13.adb (Analyze_Aspect_Specifications): Convert
556 aspect Abstract_State into a pragma without any form
557 of legality checks. The work is done by Analyze_Pragma.
558 (Check_Aspect_At_Freeze_Point): Aspect Abstract_State does not
559 require delayed analysis.
560 * sem_prag.adb: Add a value for pragma Abstract_State in table
562 (Analyze_Pragma): Add legality checks for pragma
563 Abstract_State. Analysis of individual states introduces a state
564 abstraction entity into the visibility chain.
565 * snames.ads-tmpl: Add new names for abstract state and
566 integrity. Add new pragma id for abstract state.
568 2013-01-03 Bob Duff <duff@adacore.com>
570 * table.adb (Reallocate): Calculate new Length in
571 Long_Integer to avoid overflow.
573 2013-01-03 Thomas Quinot <quinot@adacore.com>
575 * sem_ch3.adb, sinfo.ads, freeze.adb, sem_ch4.adb, exp_aggr.adb
576 (Sem_Ch3.Analyze_Object_Declaration): Set Ekind early so that
577 it is set properly when expanding the initialization expression.
578 (Freeze.Check_Address_Clause): Transfer initialization expression
579 to an assignment in the freeze actions, so that the object is
580 initialized only after being elaborated by GIGI.
581 (Sinfo (comments), Sem_Ch4.Analyze_Expression_With_Actions): Allow
582 a Null_Statement as the expression in an Expression_With_Actions.
583 (Exp_Aggr.Collect_Initialization_Statements): New subprogram
584 shared by expansion of record and array aggregates, used to
585 capture statements for an aggregate used to initalize an object
586 into an Expression_With_Actions (which acts as a container for
588 (Exp_Aggr.Convert_Aggr_In_Obj_Decl): Use the above to
589 capture initialization statements, instead of the previously
590 existing loop which left freeze nodes out of the capturing
591 construct (causing out of order elaboration crashes in GIGI).
592 (Exp_Aggr.Expand_Array_Aggregate): Use the above to capture
593 initialization statements (this was previously not done for
594 arrays). Also do not unconditionally prevent in place expansion
595 for an object with address clause.
597 2013-01-03 Thomas Quinot <quinot@adacore.com>
599 * gnat_rm.texi, freeze.adb (Check_Component_Storage_Order): Check that
600 a record extension has the same scalar storage order as the parent type.
602 2013-01-03 Thomas Quinot <quinot@adacore.com>
604 * exp_ch4.adb: Add comment.
606 2013-01-03 Vincent Celier <celier@adacore.com>
608 * prj.adb: Minor spelling error correction in comment.
610 2013-01-03 Vincent Celier <celier@adacore.com>
612 * gnatcmd.adb (GNATCmd): If a single main has been specified
613 as an absolute path, use its simple file name to find specific
614 switches, instead of the absolute path.
616 2013-01-03 Javier Miranda <miranda@adacore.com>
618 * sem_warn.adb (Warn_On_Overlapping_Actuals): For overlapping
619 parameters that are record types or array types generate warnings
620 only compiling under -gnatw.i
621 * opt.ads (Extensions_Allowed): Restore previous documentation.
623 2013-01-03 Vincent Celier <celier@adacore.com>
625 * prj-conf.adb (Do_Autoconf): If Target is specified in the
626 main project, but not on the command line, use the Target in
627 the project to invoke gprconfig in auto-configuration.
628 * makeutl.ads (Default_Config_Name): New constant String.
630 2013-01-03 Arnaud Charlet <charlet@adacore.com>
632 * usage.adb: Minor: fix typo in usage.
634 2013-01-03 Thomas Quinot <quinot@adacore.com>
636 * sem_ch13.adb (Analyze_Record_Representation_Clause): Reject
637 an illegal component clause for an inherited component in a
640 2013-01-03 Emmanuel Briot <briot@adacore.com>
642 * xref_lib.adb (Parse_Identifier_Info): Fix handling of arrays, which
643 have information in the ALI file for both the index and the component
646 2013-01-03 Emmanuel Briot <briot@adacore.com>
648 * projects.texi: Fix error in documenting the project path
649 computed for an aggregate project.
651 2013-01-03 Javier Miranda <miranda@adacore.com>
653 * sem_warn.adb (Warn_On_Overlapping_Actuals): Adding documentation
654 plus restricting the functionality of this routine to cover the
655 cases described in the Ada 2012 reference manual. The previous
656 extended support is now available under -gnatX.
657 * s-tassta.adb (Finalize_Global_Tasks): Addition of a dummy
658 variable to call Timed_Sleep. Required to avoid warning on
659 overlapping out-mode actuals.
660 * opt.ads (Extensions_Allowed): Update documentation.
662 2013-01-03 Tristan Gingold <gingold@adacore.com>
664 * s-arit64.ads: Use Multiply_With_Ovflo_Check as __gnat_mulv64.
666 * gcc-interface/Makefile.in: Remove reference to arit64.c.
668 2013-01-03 Thomas Quinot <quinot@adacore.com>
670 * checks.adb, checks.ads (Apply_Address_Clause_Check): The check must
671 be generated at the start of the freeze actions for the entity, not
672 before (or after) the freeze node.
674 2013-01-03 Thomas Quinot <quinot@adacore.com>
676 * exp_aggr.adb (Exp_Aggr.Convert_Aggregate_In_Obj_Decl):
677 Reorganize code to capture initialization statements in a block,
678 so that freeze nodes are excluded from the captured block.
680 2013-01-03 Thomas Quinot <quinot@adacore.com>
682 * exp_ch11.adb: Minor reformatting.
684 2013-01-03 Thomas Quinot <quinot@adacore.com>
686 * exp_util.adb, einfo.adb, einfo.ads, freeze.adb, exp_aggr.adb,
687 sem_ch13.adb (Einfo.Initialization_Statements,
688 Einfo.Set_Initialization_Statements): New entity attribute
690 (Exp_Util.Find_Init_Call): Handle case of an object initialized
691 by an aggregate converted to a block of assignment statements.
692 (Freeze.Check_Address_Clause): Do not clear Has_Delayed_Freeze
693 even for objects that require a constant address, because the
694 address expression might involve entities that have yet to be
695 elaborated at the point of the object declaration.
696 (Exp_Aggr.Convert_Aggregate_In_Obj_Decl): For a type that does
697 not require a transient scope, capture the assignment statements
698 in a block so that they can be moved down after elaboration of
699 an address clause if needed.
700 (Sem_Ch13.Check_Constant_Address_Clause.Check_Expr_Constants,
701 case N_Unchecked_Conversion): Do not replace operand subtype with
702 its base type as this violates a GIGI invariant if the operand
703 is an identifier (in which case the etype of the identifier
704 is expected to be equal to that of the denoted entity).
706 2013-01-03 Javier Miranda <miranda@adacore.com>
708 * sem_util.ads, sem_util.adb (Denotes_Same_Object): Extend the
709 functionality of this routine to cover cases described in the Ada 2012
712 2013-01-03 Ed Schonberg <schonberg@adacore.com>
714 * sem_elab.adb (Set_Elaboration_Constraint): Handle properly
715 a 'Access attribute reference when the subprogram is called
718 2013-01-03 Arnaud Charlet <charlet@adacore.com>
720 * s-tpobop.adb (PO_Do_Or_Queue): Refine assertion, since a
721 select statement may be called from a controlled (e.g. Initialize)
722 operation and have abort always deferred.
724 2013-01-03 Robert Dewar <dewar@adacore.com>
726 * sem_ch8.adb, einfo.ads, einfo.adb: Minor code reorganization.
728 2013-01-03 Javier Miranda <miranda@adacore.com>
730 * exp_ch3.adb (Make_Controlling_Function_Wrappers): Exclude
731 internal entities associated with interfaces and add minimum
732 decoration to the defining entity of the generated wrapper to
733 allow overriding interface primitives.
734 * sem_disp.ads (Override_Dispatching_Operation): Addition of a
735 new formal (Is_Wrapper).
736 * sem_disp.adb (Override_Dispatching_Operation): When overriding
737 interface primitives the new formal helps identifying that the
738 new operation is not fully decorated.
740 2013-01-03 Thomas Quinot <quinot@adacore.com>
742 * sem_ch7.adb, sem_ch10.adb, einfo.adb, einfo.ads, sem_ch12.adb,
743 rtsfind.adb, sem_elab.adb, sem_ch4.adb, sem_ch8.adb
744 (Einfo.Is_Visible_Child_Unit, Einfo.Set_Is_Visible_Child_Unit):
745 Rename to Is_Visible_Lib_Unit, Set_Is_Visible_Lib_Unit, and
746 update spec accordingly (now also applies to root library units).
747 (Sem_Ch10.Analyze_Subunit.Analyze_Subunit_Context): Toggle above flag
748 on root library units, not only child units.
749 (Sem_Ch10.Install[_Limited]_Withed_Unit): Same.
750 (Sem_Ch10.Remove_Unit_From_Visibility): Reset Is_Visible_Lib_Unit
751 even for root library units.
752 (Sem_Ch8.Find_Expanded_Name): A selected component form whose prefix is
753 Standard is an expanded name for a root library unit.
755 2013-01-03 Thomas Quinot <quinot@adacore.com>
757 * exp_ch3.adb: Minor reformatting.
759 2013-01-03 Olivier Hainque <hainque@adacore.com>
761 * tracebak.c: Reinstate changes to support ppc-lynx178.
763 2013-01-03 Ed Schonberg <schonberg@adacore.com>
765 * atree.ads: Minor reformatting and documentation enhancement.
767 2013-01-03 Ed Schonberg <schonberg@adacore.com>
769 * exp_ch3.adb (Expand_N_Object_Declaration): If the object has
770 a class-wide type and a renaming declaration is created for it,
771 preserve entity chain, which already contains generated internal
772 types. This ensures that freezing actions are properly generated
773 for all objects declared subsequently in the same scope, and
774 that debugging information is generated for them.
775 * sem_util.adb, sem_util.ads (we): New debugging routine, to
776 display entity chain of a given scope.
778 2013-01-03 Robert Dewar <dewar@adacore.com>
780 * exp_intr.adb: Minor reformatting.
782 2013-01-03 Robert Dewar <dewar@adacore.com>
784 * einfo.adb: Minor reformatting.
786 2013-01-03 Pascal Obry <obry@adacore.com>
788 * adaint.c, adaint.h (__gnat_get_module_name): Removed.
789 (__gnat_is_module_name_supported): Removed.
790 * s-win32.ads: Add some needed definitions.
791 * g-trasym.ads: Update comments.
793 2013-01-03 Robert Dewar <dewar@adacore.com>
795 * layout.adb (Set_Composite_Alignment): Fix problems of
796 interactions with Optimize_Alignment set to Space.
798 2013-01-03 Thomas Quinot <quinot@adacore.com>
800 * exp_disp.adb: Minor reformatting.
802 2013-01-02 Richard Biener <rguenther@suse.de>
805 * gcc-interface/Makefile.in: Add $(GMPINC) to includes.
807 2013-01-02 Thomas Quinot <quinot@adacore.com>
809 * exp_intr.adb (Expand_Dispatching_Constructor_Call): Remove
810 side effects from Tag_Arg early, doing it too late may cause a
811 crash due to inconsistent Parent link.
812 * sem_ch8.adb, einfo.ads: Minor reformatting.
814 2013-01-02 Robert Dewar <dewar@adacore.com>
816 * einfo.ads, einfo.adb (Has_Independent_Components): New flag.
817 * freeze.adb (Size_Known): We do not know the size of a packed
818 record if it has atomic components, by reference type components,
819 or independent components.
820 * sem_prag.adb (Analyze_Pragma, case Independent_Components): Set new
821 flag Has_Independent_Components.
823 2013-01-02 Yannick Moy <moy@adacore.com>
825 * opt.ads (Warn_On_Suspicious_Contract): Set to True by default.
826 * usage.adb (Usage): Update usage message.
828 2013-01-02 Pascal Obry <obry@adacore.com>
830 * adaint.c (__gnat_is_module_name_supported): New constant.
832 2013-01-02 Ed Schonberg <schonberg@adacore.com>
834 * sem_attr.adb (Check_Array_Type): Reject an attribute reference on an
835 array whose component type does not have a completion.
837 2013-01-02 Geert Bosch <bosch@adacore.com>
839 * a-nllcef.ads, a-nlcefu.ads, a-nscefu.ads: Make Pure.
841 2013-01-02 Robert Dewar <dewar@adacore.com>
843 * par_sco.adb: Minor reformatting.
845 2013-01-02 Javier Miranda <miranda@adacore.com>
847 * sem_aggr.adb (Resolve_Array_Aggregate): Remove dead code.
849 2013-01-02 Olivier Hainque <hainque@adacore.com>
851 * a-exctra.ads (Get_PC): New function.
853 2013-01-02 Thomas Quinot <quinot@adacore.com>
855 * sem_ch8.adb: Minor reformatting.
857 2013-01-02 Thomas Quinot <quinot@adacore.com>
859 * sem_ch7.adb: Minor reformatting.
861 2013-01-02 Thomas Quinot <quinot@adacore.com>
863 * freeze.adb (Check_Component_Storage_Order): Do not crash on
866 2013-01-02 Robert Dewar <dewar@adacore.com>
868 * gnat1drv.adb, targparm.adb, targparm.ads: Minor name change: add
869 On_Target to Atomic_Sync_Default.
871 2013-01-02 Robert Dewar <dewar@adacore.com>
873 * sem_warn.adb (Warn_On_Known_Condition): Suppress warning for
874 comparison of attribute result with constant
875 * a-ststio.adb, s-direio.adb, s-rannum.adb: Remove unnecessary pragma
876 Warnings (Off, "..");
878 2013-01-02 Yannick Moy <moy@adacore.com>
880 * sem_prag.ads: Minor correction of comment.
882 2013-01-02 Thomas Quinot <quinot@adacore.com>
884 * par_sco.adb (Traverse_Package_Declaration): The first
885 declaration in a nested package is dominated by the preceding
886 declaration in the enclosing scope.
888 2013-01-02 Pascal Obry <obry@adacore.com>
890 * adaint.c, adaint.h (__gnat_get_module_name): Return the actual
891 module containing a given address.
893 2013-01-02 Thomas Quinot <quinot@adacore.com>
895 * sem_ch3.adb: Minor reformatting.
897 2013-01-02 Pascal Obry <obry@adacore.com>
899 * cstreams.c (__gnat_ftell64): New routine. Use _ftelli64 on
900 Win64 and default to ftell on other platforms.
901 (__gnat_fsek64): Likewise.
902 * i-cstrea.ads: Add fssek64 and ftell64 specs.
903 * s-crtl.ads: Likewise.
904 * a-ststio.adb, s-direio.adb (Size): Use 64 bits version when required.
905 (Set_Position): Likewise.
907 2013-01-02 Thomas Quinot <quinot@adacore.com>
909 * par_sco.adb: Generate X SCOs for default expressions in
910 subprogram body stubs. Do not generate any SCO for package,
911 task, or protected body stubs.
913 2013-01-02 Ed Schonberg <schonberg@adacore.com>
915 * sem_ch3.adb: Further improvement to ASIS mode for anonymous
916 access to protected subprograms.
918 2013-01-02 Robert Dewar <dewar@adacore.com>
920 * par_sco.adb, vms_data.ads: Minor reformatting.
922 2013-01-02 Thomas Quinot <quinot@adacore.com>
924 * par_sco.adb (Traverse_Declarations_Or_Statement): Function
925 form, returning value of Current_Dominant upon exit, for chaining
927 (Traverse_Declarations_Or_Statement.Traverse_One, case
928 N_Block_Statement): First statement is dominated by last declaration.
929 (Traverse_Subprogram_Or_Task_Body): Ditto.
930 (Traverse_Package_Declaration): First private
931 declaration is dominated by last visible declaration.
932 (Traverse_Sync_Definition): Ditto.
934 2013-01-02 Thomas Quinot <quinot@adacore.com>
936 * gnat_rm.texi: Restrict the requirement for Scalar_Storage_Order
937 matching Bit_Order to record types only, since array types do not
940 2013-01-02 Vincent Celier <celier@adacore.com>
942 * gnat_ugn.texi: Remove documentation of -gnateO, which is an
944 * usage.adb: Indicate that -gnateO is an internal switch.
946 2013-01-02 Thomas Quinot <quinot@adacore.com>
948 * par_sco.adb: Add SCO generation for task types and single
950 * get_scos.adb: When adding an instance table entry for a
951 non-nested instantiation, make sure the Enclosing_Instance is
954 2013-01-02 Hristian Kirtchev <kirtchev@adacore.com>
956 * sem_attr.adb (Analyze_Attribute): Skip the special _Parent
957 scope generated for subprogram inlining purposes while trying
958 to locate the enclosing function.
959 * sem_prag.adb (Analyze_Pragma): Preanalyze the boolean
960 expression of pragma Postcondition when the pragma comes from
961 source and appears inside a subprogram body.
963 2013-01-02 Thomas Quinot <quinot@adacore.com>
965 * switch-c.adb, fe.h, back_end.adb: Enable generation of instantiation
966 information in debug info unconditionally when using -fdump-scos,
967 instead of relying on a separate command line switch -fdebug-instances.
968 * gcc-interface/Make-lang.in: Update dependencies.
970 2013-01-02 Ed Schonberg <schonberg@adacore.com>
972 * sem_ch12.adb: Additional refinement of predicate.
974 2013-01-02 Vincent Celier <celier@adacore.com>
976 * vms_data.ads: Remove incorrect spaces at end of descriptions
977 of qualifiers for single switch.
979 2013-01-02 Ben Brosgol <brosgol@adacore.com>
981 * gnat_rm.texi: Minor edits / wordsmithing in section on pragma
982 Check_Float_Overflow.
984 2013-01-02 Thomas Quinot <quinot@adacore.com>
986 * sprint.adb (Sprint_Node_Actual): Do not add extra parens for
987 a conditional expression (CASE or IF expression) that already
988 has parens. Also omit ELSE keyword for an IF expression without
991 2013-01-02 Thomas Quinot <quinot@adacore.com>
993 * gnat1drv.adb (Adjust_Global_Switches): Adjust back-end
994 flag_debug_instances here, after front-end switches have been
997 2013-01-02 Vincent Celier <celier@adacore.com>
999 * usage.adb: Minor reformatting.
1001 2013-01-02 Arnaud Charlet <charlet@adacore.com>
1003 * opt.ads: Fix typo.
1005 2013-01-02 Thomas Quinot <quinot@adacore.com>
1007 * par_sco.adb: Generate P decision SCOs for SPARK pragmas
1008 Assume and Loop_Invariant.
1010 2013-01-02 Robert Dewar <dewar@adacore.com>
1012 * vms_data.ads: Add entry for Float_Check_Valid (-gnateF).
1013 * ug_words: Add entry for Float_Check_Overflow.
1014 * usage.adb: Minor reformatting.
1015 * gnat_ugn.texi: Add documentation for -gnateF (Check_Float_Overflow).
1017 2013-01-02 Vincent Celier <celier@adacore.com>
1019 * gnat_ugn.texi: Add documentation for switches -gnateA, -gnated,
1020 -gnateO=, -gnatet and -gnateV.
1021 * ug_words: Add qualifiers equivalent to -gnateA, -gnated,
1022 -gnatet and -gnateV.
1023 * usage.adb: Add lines for -gnatea, -gnateO and -gnatez.
1024 * vms_data.ads: Add new compiler qualifiers /ALIASING_CHECK
1025 (-gnateA), /DISABLE_ATOMIC_SYNCHRONIZATION (-gnated),
1026 /PARAMETER_VALIDITY_CHECK (-gnateV) and /TARGET_DEPENDENT_INFO
1029 2013-01-02 Robert Dewar <dewar@adacore.com>
1031 * checks.adb (Apply_Scalar_Range_Check): Implement Check_Float_Overflow.
1032 * opt.ads, opt.adb: Handle flags Check_Float_Overflow[_Config].
1033 * par-prag.adb: Add dummy entry for pragma Check_Float_Overflow.
1034 * sem_prag.adb: Implement pragma Check_Float_Overflow.
1035 * snames.ads-tmpl: Add entries for pragma Check_Float_Overflow.
1036 * switch-c.adb: Recognize -gnateF switch.
1037 * tree_io.ads: Update ASIS version number.
1038 * gnat_rm.texi: Add documentation of pragma Check_Float_Overflow.
1040 2013-01-02 Robert Dewar <dewar@adacore.com>
1042 * checks.adb, exp_ch4.adb, exp_ch6.adb, exp_ch7.adb, exp_ch9.adb,
1043 exp_disp.adb, exp_dist.adb, exp_intr.adb, exp_prag.adb, exp_util.adb,
1044 freeze.adb, gnat1drv.adb, inline.adb, layout.adb, lib-xref.adb,
1045 par-ch10.adb, par-labl.adb, par-load.adb, par-util.adb, restrict.adb,
1046 sem_ch13.adb, sem_ch4.adb, sem_ch6.adb, sem_dim.adb, sem_elab.adb,
1047 sem_res.adb, sem_warn.adb, sinput-l.adb: Add tags to warning messages.
1048 * sem_ch6.ads, warnsw.ads, opt.ads: Minor comment updates.
1050 2013-01-02 Robert Dewar <dewar@adacore.com>
1052 * err_vars.ads: Minor comment fix.
1054 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1056 * sem_ch12.adb: Refine predicate.
1058 2013-01-02 Robert Dewar <dewar@adacore.com>
1060 * errout.ads: Minor comment fixes.
1061 * opt.ads: Minor comment additions.
1062 * exp_aggr.adb: Add tags to warning messages
1063 * exp_ch11.adb, exp_ch3.adb, exp_ch4.adb, exp_util.adb, sem_aggr.adb,
1064 sem_attr.adb, sem_case.adb, sem_cat.adb, sem_ch3.adb, sem_ch4.adb,
1065 sem_ch5.adb, sem_disp.adb, sem_dist.adb, sem_elab.adb, sem_eval.adb,
1066 sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb, sem_util.adb,
1067 sem_warn.adb: Add tags to warning messages
1069 2013-01-02 Doug Rupp <rupp@adacore.com>
1071 * init.c [VMS] Remove subtest on reason mask for ACCVIO that is a C_E.
1073 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1075 * sem_ch12.adb: Recover source name for renamed packagea.
1077 2013-01-02 Robert Dewar <dewar@adacore.com>
1079 * errout.adb (Set_Msg_Insertion_Warning): Correct typo causing
1080 tests to fail if insertion sequence is at end of message string.
1081 * opt.ads: Minor comment fixes and additions.
1082 * sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_ch10.adb, sem_ch11.adb,
1083 sem_ch12.adb, sem_ch13.adb: Add tags to warning messages.
1084 * sem_ch6.ads, sem_ch6.adb (Cannot_Inline): Deal with warning message
1085 tags. Add tags to warning messages.
1087 2013-01-02 Robert Dewar <dewar@adacore.com>
1089 * err_vars.ads (Warning_Doc_Switch): New flag.
1090 * errout.adb (Error_Msg_Internal): Implement new warning flag
1091 doc tag stuff (Set_Msg_Insertion_Warning): New procedure.
1092 * errout.ads: Document new insertion sequences ?? ?x? ?.x?
1093 * erroutc.adb (Output_Msg_Text): Handle ?? and ?x? warning doc
1095 * erroutc.ads (Warning_Msg_Char): New variable.
1096 (Warn_Chr): New field in error message object.
1097 * errutil.adb (Error_Msg): Set Warn_Chr in error message object.
1098 * sem_ch13.adb: Minor reformatting.
1099 * warnsw.adb: Add handling for -gnatw.d and -gnatw.D
1100 (Warning_Doc_Switch).
1101 * warnsw.ads: Add handling of -gnatw.d/.D switches (warning
1104 2013-01-02 Robert Dewar <dewar@adacore.com>
1106 * opt.ads: Minor reformatting.
1108 2013-01-02 Doug Rupp <rupp@adacore.com>
1110 * init.c: Reorganize VMS section.
1111 (scan_condtions): New function for scanning condition tables.
1112 (__gnat_handle_vms_condtion): Use actual exception name for imported
1113 exceptions vice IMPORTED_EXCEPTION.
1114 Move condition table scanning into separate function. Move formerly
1115 special handled conditions to system condition table. Use SYS$PUTMSG
1116 output to fill exception message field for formally special handled
1117 condtions, in particular HPARITH to provide more clues about cause and
1118 location then raised from the translated image.
1120 2013-01-02 Thomas Quinot <quinot@adacore.com>
1122 * sem_ch13.adb (Analyze_Aspect_Specifications): For a Pre/Post
1123 aspect that applies to a library subprogram, prepend corresponding
1124 pragma to the Pragmas_After list, in order for split AND THEN
1125 sections to be processed in the expected order.
1127 2013-01-02 Thomas Quinot <quinot@adacore.com>
1129 * exp_prag.adb (Expand_Pragma_Check): The statements generated
1130 for the pragma must have the sloc of the pragma, not the
1131 sloc of the condition, otherwise this creates anomalies in the
1132 generated debug information that confuse coverage analysis tools.
1134 2013-01-02 Thomas Quinot <quinot@adacore.com>
1136 * sem_ch13.adb: Minor reformatting.
1138 2013-01-02 Arnaud Charlet <charlet@adacore.com>
1140 * g-excact.ads (Core_Dump): Clarify that this subprogram does
1141 not dump cores under Windows.
1143 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1145 * sem_ch8.adb (Analyze_Primitive_Renamed_Operation): The prefixed
1146 view of a subprogram has convention Intrnnsic, and a renaming
1147 of a prefixed view cannot be the prefix of an Access attribute.
1149 2013-01-02 Robert Dewar <dewar@adacore.com>
1151 * restrict.adb: Minor reformatting.
1153 2013-01-02 Thomas Quinot <quinot@adacore.com>
1155 * exp_prag.adb: Minor reformatting.
1157 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1159 * sem_ch12.adb (Get_Associated_Node): If the node is an
1160 identifier that denotes an unconstrained array in an object
1161 declaration, it is rewritten as the name of an anonymous
1162 subtype whose bounds are given by the initial expression in the
1163 declaration. When checking whether that identifier is global
1164 reference, use the original node, not the local generated subtype.
1166 2013-01-02 Olivier Hainque <hainque@adacore.com>
1168 * tracebak.c: Revert previous change, incomplete.
1170 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1172 * sem_ch13.adb (Analyze_Aspect_Specifications): If the aspect
1173 appears on a subprogram body that acts as a spec, place the
1174 corresponding pragma in the declarations of the body, so that
1175 e.g. pre/postcondition checks can be generated appropriately.
1177 2013-01-02 Robert Dewar <dewar@adacore.com>
1179 * sem_ch3.adb: Minor reformatting and code reorganization.
1181 2013-01-02 Vincent Celier <celier@adacore.com>
1183 * switch-m.adb (Normalize_Compiler_Switches): Record the
1184 complete switch -fstack-check=specific instead of its shorter
1185 alias -fstack-check.
1187 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1189 * sem_ch3.adb (Derive_Subprogram): Enforce RM 6.3.1 (8):
1190 if the derived type is a tagged generic formal type with
1191 unknown discriminants, the inherited operation has convention
1192 Intrinsic. As such, the 'Access attribute cannot be applied to it.
1194 2013-01-02 Thomas Quinot <quinot@adacore.com>
1196 * sem_attr.adb: Minor reformatting.
1198 2013-01-02 Thomas Quinot <quinot@adacore.com>
1200 * par_sco.adb: Add SCO generation for S of protected types and
1201 single protected object declarations.
1203 2013-01-02 Robert Dewar <dewar@adacore.com>
1205 * sem_eval.adb, osint.ads: Minor reformatting.
1207 2013-01-02 Hristian Kirtchev <kirtchev@adacore.com>
1209 * sem_prag.adb (Analyze_Pragma): Check the legality of pragma Assume.
1211 2013-01-02 Thomas Quinot <quinot@adacore.com>
1213 * sem_eval.adb (Compile_Time_Compare): For static operands, we
1214 can perform a compile time comparison even if in preanalysis mode.
1216 2013-01-02 Thomas Quinot <quinot@adacore.com>
1218 * par_sco.adb (SCO_Record): Always use
1219 Traverse_Declarations_Or_Statements to process the library level
1220 declaration, so that SCOs are properly generated for its aspects.
1222 2013-01-02 Thomas Quinot <quinot@adacore.com>
1224 * scos.ads (In_Decision): Add missing entry for 'a'.
1225 * sem_prag.adb (Analyze_Pragma, case pragma Check): Omit
1226 call to Set_SCO_Pragma_Enabled for Invariant and Predicate.
1227 * sem_ch13.adb: Minor comment update.
1229 Copyright (C) 2013 Free Software Foundation, Inc.
1231 Copying and distribution of this file, with or without modification,
1232 are permitted in any medium without royalty provided the copyright
1233 notice and this notice are preserved.