1 2013-02-06 Robert Dewar <dewar@adacore.com>
3 * s-dim.ads, clean.adb: Minor reformatting.
5 2013-02-06 Javier Miranda <miranda@adacore.com>
7 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Undo previous patch.
8 (Can_Split_Unconstrained_Function): Only split the inlined function if
9 the compiler generates the code of its body.
11 2013-02-06 Robert Dewar <dewar@adacore.com>
13 * exp_prag.adb, sem_ch3.adb, exp_attr.adb, sem_prag.adb, sem_ch6.adb,
14 exp_intr.adb, exp_dist.adb, sem_ch13.adb: Internal clean up for
17 2013-02-06 Robert Dewar <dewar@adacore.com>
19 * gnat_rm.texi: Minor text updates for pragma Warning.
21 2013-02-06 Geert Bosch <bosch@adacore.com>
23 * s-multip.adb (Number_Of_CPUs): Short-circuit in case of
26 2013-02-06 Vincent Celier <celier@adacore.com>
28 * clean.adb (Delete): On VMS use host notation to delete all files.
30 2013-02-06 Robert Dewar <dewar@adacore.com>
32 * sem_prag.adb, sem_ch6.adb, prj-conf.adb, erroutc.adb: Minor
35 2013-02-06 Gary Dismukes <dismukes@adacore.com>
37 * sem_ch6.adb (Check_For_Primitive_Subprogram): Test for
38 the special case of a user-defined equality that overrides
39 the predefined equality of a nonderived type declared in a
41 * sem_util.adb (Collect_Primitive_Operations): Add test for
42 Is_Primitive when looping over the subprograms following a type,
43 to catch the case of primitives such as a user-defined equality,
44 which otherwise won't be found when the type is not a derived
45 type and is declared in a declarative part.
47 2013-02-06 Vincent Celier <celier@adacore.com>
49 * prj-conf.adb (Check_Target): Always return True when Target
50 is empty (Get_Or_Create_Configuration_File.Get_Project_Target):
51 New procedure to get the value of attribute Target in the main
53 (Get_Or_Create_Configuration_File.Do_Autoconf): No
54 need to get the value of attribute Target in the main project.
55 (Get_Or_Create_Configuration_File): Call Get_Project_Target and
56 use the target fom this call.
58 2013-02-06 Eric Botcazou <ebotcazou@adacore.com>
60 * erroutc.adb (Validate_Specific_Warning): Do not issue the
61 warning about an ineffective Pragma Warnings for -Wxxx warnings.
62 * sem_prag.adb (Analyze_Pragma) <Warnings>: Accept -Wxxx warnings.
63 * gnat_rm.texi (Pragma Warnings): Document coordination with
64 warnings of the GCC back-end.
66 2013-02-06 Javier Miranda <miranda@adacore.com>
68 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Do not build the body
69 of an inlined function if we do not generate code for the function.
71 2013-02-06 Pascal Obry <obry@adacore.com>
73 * s-os_lib.adb (Locate_Exec_On_Path): Call Normalize_Pathname
74 with Resolve_Links set to False.
76 2013-02-03 Eric Botcazou <ebotcazou@adacore.com>
78 * gcc-interface/decl.c: Include diagnostic-core.h.
79 (gnat_to_gnu_entity) <E_Array_Type>: Sorry if Reverse_Storage_Order
81 <E_Record_Type>: Likewise.
82 * gcc-interface/Make-lang.in (ada/decl.o): Add $(DIAGNOSTIC_CORE_H).
84 2013-01-29 Ben Brosgol <brosgol@adacore.com>
86 * gnat_rm.texi: Fixed typos. Minor edits.
88 2013-01-29 Bob Duff <duff@adacore.com>
90 * a-convec.adb: Minor reformatting.
92 2013-01-29 Pascal Obry <obry@adacore.com>
94 * tempdir.adb, tempdir.ads (Use_Temp_Dir): Set wether to use the temp
97 2013-01-29 Ed Schonberg <schonberg@adacore.com>
99 * exp_ch5.adb (Expand_Iterator_Loop_Over_Array): Preserve loop
100 identifier only if it comes from source.
101 (Expand_N_Loop_Statement): If the domain of iteration is an
102 enumeration type with a representation clause, remove from
103 visibility the loop identifier before rewriting the loop as a
104 block with a declaration for said identifier.
105 * sem_util.adb (Remove_Homonym): Handle properly the default case.
107 2013-01-29 Vincent Celier <celier@adacore.com>
109 * prj-proc.adb: Minor comment spelling fix.
111 2013-01-29 Pascal Obry <obry@adacore.com>
113 * prj-proc.adb (Process_Expression_Variable_Decl): Prepend
114 Project_Path to current environment.
116 2013-01-29 Thomas Quinot <quinot@adacore.com>
118 * sprint.adb (Sprint_Node_Actual): Output freeze nodes for
119 itypes even if Dump_Freeze_Null is not set.
121 2013-01-29 Robert Dewar <dewar@adacore.com>
123 * sem_util.adb: Minor reformatting.
124 * s-rident.ads: Minor comment fixes.
126 2013-01-29 Pascal Obry <obry@adacore.com>
128 * prj-env.ads, prj-env.adb (Add_Directories): Add parameter to
129 control if the path is prepended or appended.
131 2013-01-29 Ed Schonberg <schonberg@adacore.com>
133 * sem_ch6.adb (Analyze_Expression_Function): An expression
134 function declaration is not a subprogram declaration, and thus
135 cannot appear in a protected definition.
137 2013-01-29 Hristian Kirtchev <kirtchev@adacore.com>
139 * exp_util.adb (Insert_Actions): When new
140 actions come from the expression of the expression with actions,
141 then they must be added to the list of existing actions.
143 2013-01-29 Eric Botcazou <ebotcazou@adacore.com>
145 * sem_ch3.adb (Analyze_Subtype_Declaration) <Private_Kind>: For
146 the subtype of a constrained private type with discriminants
147 that has got a full view, show that the completion is a clone
150 2013-01-29 Javier Miranda <miranda@adacore.com>
152 * errout.ads, errout.adb (Get_Ignore_Errors): New subprogram.
153 * opt.ads (Warn_On_Overlap): Update documentation.
154 * sem_aggr.adb (Resolve_Aggregate, Resolve_Extension_Aggregate):
155 Check function writable actuals.
156 * sem_ch3.adb (Build_Derived_Record_Type,
157 Record_Type_Declaration): Check function writable actuals.
158 * sem_ch4.adb (Analyze_Range): Check function writable actuals.
159 * sem_ch5.adb (Analyze_Assignment): Remove code of the initial
160 implementation of AI05-0144.
161 * sem_ch6.adb (Analyze_Function_Return,
162 (Analyze_Procedure_Call.Analyze_Call_And_Resolve): Remove code
163 of the initial implementation of AI05-0144.
164 * sem_res.adb (Resolve): Remove code of the initial implementation.
165 (Resolve_Actuals): Call Check_Function_Writable_Actuals and remove call
166 of the initial implementation.
167 (Resolve_Arithmetic_Op, Resolve_Logical_Op,
168 Resolve_Membership_Op): Check function writable actuals.
169 * sem_util.ad[sb] (Actuals_In_Call): Removed
170 (Check_Order_Dependence): Removed (Save_Actual): Removed
171 (Check_Function_Writable_Actuals): New subprogram.
172 * usage.adb (Usage): Update documentation.
173 * warnsw.adb (Set_Warning_Switch): Enable warn_on_overlap when
174 setting all warnings.
176 2013-01-29 Robert Dewar <dewar@adacore.com>
178 * a-calend-vms.adb: Minor comment fix.
180 2013-01-29 Robert Dewar <dewar@adacore.com>
182 * mlib-utl.adb, gnatlink.adb: Avoid reference to ASCII.Back_Slash
183 because of casing issues.
184 * sem_util.ads: Minor comment fix.
185 * style.adb (Check_Identifier): Set proper casing for entities
187 * styleg.adb: Minor comment improvement.
188 * stylesw.ads (Style_Check_Standard): Fix bad comments.
190 2013-01-29 Hristian Kirtchev <kirtchev@adacore.com>
192 * sem_prag.adb: Add the grammar for pragmas Abstract_State and Global.
193 (Analyze_Pragma): Push the scope of the related subprogram and install
194 its formals once before starting the analysis of the [moded] global
197 2013-01-29 Pascal Obry <obry@adacore.com>
199 * prj-proc.adb (Process_Expression_Variable_Decl): Always handle
200 relative paths in Project_Path as relative to the aggregate
201 project location. Note that this was what was documented.
203 2013-01-29 Vincent Celier <celier@adacore.com>
205 * gnatcmd.adb: For "gnat stub -P ...", do not check the naming
206 scheme for Ada, when Ada is not a language for the project.
208 2013-01-29 Ed Schonberg <schonberg@adacore.com>
210 * sem_ch3.adb (Analyze_Subtype_Declaration): Inherit
211 Is_Generic_Actual_Type flag in a nested instance.
212 * sem_ch12.adb (Restore_Private_Views): Preserve
213 Is_Generic_Actual_Type flag if actual is a Generic_Actual_Type
214 of an enclosing instance.
215 * sem_util.adb (Corresponding_Generic_Type): Handle generic actual
216 which is an actual of an enclosing instance.
217 * sem_type.adb (Real_Actual): If a generic_actual_type is the
218 formal of an enclosing generic and thus renames the corresponding
219 actual, use the actual of the enclosing instance to resolve
220 spurious ambiguities in instantiations when two formals are
221 instantiated with the same actual.
223 2013-01-29 Robert Dewar <dewar@adacore.com>
225 * gnat_rm.texi: Document all Ada 2005 and Ada 2012 pragmas as
226 being available as implementation-defined pragmas in earlier
229 2013-01-29 Vincent Celier <celier@adacore.com>
231 * clean.adb (Delete): On VMS, delete all versions of the file.
233 2013-01-29 Robert Dewar <dewar@adacore.com>
235 * par-ch6.adb (No_Constraint_Maybe_Expr_Func): New procedure.
236 * par-util.adb (No_Constraint): Undo special handling, moved
239 2013-01-29 Robert Dewar <dewar@adacore.com>
241 * aspects.ads: Aspect Warnings is implementation defined Add
242 some other missing entries to impl-defined list Mark Warnings
243 as GNAT pragma in main list.
244 * sem_ch8.adb: Process aspects for all cases of renaming
247 2013-01-29 Robert Dewar <dewar@adacore.com>
249 * sem_ch6.adb (Analyze_Function_Call): Set In_Assertion flag.
250 * sem_elab.adb (Check_Internal_Call_Continue): Do not issue
251 warnings about possible elaboration error if call is within
253 * sinfo.ads, sinfo.adb (In_Assertion): New flag in N_Function_Call node.
255 2013-01-29 Robert Dewar <dewar@adacore.com>
257 * a-calend-vms.adb, g-eacodu-vms.adb, g-trasym-vms-alpha.adb,
258 * s-auxdec-vms-ia64.adb, s-mastop-vms.adb, s-osprim-vms.adb,
259 s-tasdeb-vms.adb: Replace pragma Interface by pragma Import.
261 2013-01-29 Robert Dewar <dewar@adacore.com>
263 * opt.ads (Ignore_Style_Checks_Pragmas): New flag.
264 * par-prag.adb (Par, case Style_Checks): Recognize
265 Ignore_Style_Checks_Pragmas.
266 * sem_prag.adb (Analyze_Pragma, case Style_Checks): Recognize
267 Ignore_Style_Checks_Pragmas.
268 * switch-c.adb: Recognize -gnateY switch.
269 * usage.adb: Add documentation for "-gnateY".
270 * vms_data.ads: Add IGNORE_STYLE_CHECKS_PRAGMAS (-gnateY).
272 2013-01-29 Vincent Celier <celier@adacore.com>
274 * clean.adb (Clean_Executables): Add Sid component when calling
276 * make.adb: When inserting in the Queue, add the Source_Id
277 (Sid) when it is known (Start_Compile_If_Possible): When the
278 Source_Id is known (Sid), get the path name of the ALI file
279 (Full_Lib_File) from it, to avoid finding old ALI files in other
281 * makeutl.ads (Source_Info): New Source_Id component Sid in
282 Format_Gnatmake variant.
284 2013-01-29 Robert Dewar <dewar@adacore.com>
286 * gnat_ugn.texi: Document -gnateY.
288 2013-01-29 Doug Rupp <rupp@adacore.com>
290 * s-osinte-vms.ads, s-taprop-vms.adb, system-vms_64.ads,
291 system-vms-ia64.ads: Replace pragma Interface by pragma Import.
293 2013-01-29 Robert Dewar <dewar@adacore.com>
295 * atree.ads, atree.adb (Node30): New function.
296 (Set_Node30): New procedure.
297 (Num_Extension_Nodes): Change to 5 (activate new fields/flags).
298 * atree.h: Add macros for Field30 and Node30.
299 * einfo.ads, einfo.adb: Move some fields to avoid duplexing.
300 * treepr.adb (Print_Entity_Information): Print fields 30-35.
302 2013-01-29 Robert Dewar <dewar@adacore.com>
304 * sem_prag.adb (Analyze_Pragma, case Interface): Consider to
305 be a violation of No_Obsolescent_Features even in Ada 95. Also
306 generates a warning in -gnatwj mode.
307 (Analyze_Pragma, case Interface_Name): Generates a warning in -gnatwj
309 * gnat_ugn.texi: Additional documentation on -gnatwj and pragma
312 2013-01-29 Vincent Celier <celier@adacore.com>
314 * snames.ads-tmpl: Add new standard name Trailing_Switches.
316 2013-01-29 Ed Schonberg <schonberg@adacore.com>
318 * sem_disp.adb (Check_Controlling_Type): If a designated type T
319 of an anonymous access type is a limited view of a tagged type,
320 it can be a controlling type only if the subprogram is in the
323 2013-01-29 Vincent Celier <celier@adacore.com>
325 * gnatcmd.adb: Use the project where the config pragmas file is
326 declared to get its path.
328 2013-01-29 Vincent Celier <celier@adacore.com>
330 * prj-attr.adb: New attribute Linker'Trailing_Switches.
332 2013-01-22 Eric Botcazou <ebotcazou@adacore.com>
334 * gcc-interface/trans.c (gnat_to_gnu) <N_Expression_With_Actions>: Do
335 not translate the Etype of the node before translating the Actions.
337 2013-01-22 Eric Botcazou <ebotcazou@adacore.com>
339 * gcc-interface/trans.c (Pragma_to_gnu) <Name_Space>: Use optimize_size
340 instead of optimize and adjust warning message.
341 (Compilation_Unit_to_gnu): Process pragmas preceding the unit.
343 2013-01-22 Tristan Gingold <gingold@adacore.com>
345 * gcc-interface/gigi.h (ADT_unhandled_except_decl,
346 ADT_unhandled_others_decl): New.
347 (unhandled_others_decl, unhandled_except_decl): Define.
348 * gcc-interface/trans.c: Include common/common-target.h.
349 (gigi): Initialize them.
350 (Subprogram_Body_to_gnu): On SEH targets, wrap the body of the main
351 function in a try/catch clause.
353 2013-01-11 Eric Botcazou <ebotcazou@adacore.com>
355 * gcc-interface/Make-lang.in (COMMON_ADAFLAGS): Remove -gnata.
356 (CHECKING_ADAFLAGS): New.
357 (ALL_ADAFLAGS): Include CHECKING_ADAFLAGS.
359 2013-01-10 Eric Botcazou <ebotcazou@adacore.com>
361 * gcc-interface/config-lang.in (boot_language_boot_flags): Delete.
362 * gcc-interface/Make-lang.in (BOOT_ADAFLAGS): Likewise.
364 2013-01-07 Eric Botcazou <ebotcazou@adacore.com>
366 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Adjust
367 comment about type extension with discriminants.
368 <E_Record_Subtype>: Remove useless test and reorder conditions.
369 (elaborate_entity) <E_Record_Subtype>: Likewise.
371 2013-01-07 Richard Biener <rguenther@suse.de>
374 * gcc-interface/Make-lang.in (ada.install-common): Always apply
375 program_transform_name.
377 2013-01-06 Eric Botcazou <ebotcazou@adacore.com>
379 * gnatvsn.ads (Current_Year): Bump to 2013.
381 2013-01-06 Olivier Hainque <hainque@adacore.com>
383 * gcc-interface/decl.c (gnat_to_gnu_field): Emit a specialized
384 diagnostic for component size mismatch wrt volatile requirements.
385 Add a gcc_unreachable() at the end of the checks for size. Split
386 the check on volatile for positions into one check on atomic and
387 a subsequent one on volatile.
389 2013-01-06 Eric Botcazou <ebotcazou@adacore.com>
391 * gcc-interface/decl.c (elaborate_entity) <E_Record_Type>: Delete.
393 2013-01-06 Eric Botcazou <ebotcazou@adacore.com>
395 * gcc-interface/decl.c (gnat_to_gnu_entity) <discrete_type>: Do not
396 pack the field of the record type made for a misaligned type.
398 2013-01-06 Eric Botcazou <ebotcazou@adacore.com>
400 * gcc-interface/decl.c (annotate_value) <COMPONENT_REF>: Be prepared
401 for discriminants inherited from parent record types.
403 2013-01-04 Robert Dewar <dewar@adacore.com>
405 * warnsw.adb: Minor fixes to -gnatw.d handling.
407 2013-01-04 Robert Dewar <dewar@adacore.com>
409 * einfo.adb, atree.adb: Enlarge entities to make 63 more flags, 6 more
412 2013-01-04 Joel Brobecker <brobecker@adacore.com>
414 * gnat_ugn.texi: Fix typo.
416 2013-01-04 Robert Dewar <dewar@adacore.com>
418 * gnat_rm.texi: Document alignment choice for subtypes.
420 2013-01-04 Robert Dewar <dewar@adacore.com>
422 * validsw.ads: Minor fix to comment.
424 2013-01-04 Doug Rupp <rupp@adacore.com>
426 * Makefile.rtl (GNATRTL_NONTASKING_OBJS,
427 GNATRTL_ALTIVEC_OBJS): Factor g-al* objects.
428 * gcc-interface/Makefile.in (ADA_EXCLUDE_SRCS): Add g-al* sources.
429 (GNATRTL_ALTIVEC_OBJS): Override to null for VMS.
430 Rename leon vxworks toolchain as leon-wrs-vxworks.
431 * gcc-interface/Make-lang.in: Update dependencies
433 2013-01-04 Pascal Obry <obry@adacore.com>
435 * prj.ads (For_Each_Source): Add Locally_Removed parameter.
436 (Source_Iterator): Add Locally_Removed field.
437 * prj.adb (For_Each_Source): Ignore Locally_Removed files if needed.
440 2013-01-04 Robert Dewar <dewar@adacore.com>
442 * exp_attr.adb: Minor reformatting.
444 2013-01-04 Robert Dewar <dewar@adacore.com>
446 * checks.adb (Insert_Valid_Check): Fix handling of renamed
447 packed array element.
448 * exp_ch4.adb (Expand_Concatenate): Fix some missing parent
449 fields in generated code.
450 * exp_util.adb (Side_Effect_Free): Improve detection of cases
453 2013-01-04 Robert Dewar <dewar@adacore.com>
455 * sinfo.ads: Clean up order of N_xxx subtypes
457 2013-01-04 Vincent Celier <celier@adacore.com>
459 * prj-conf.adb (Check_Target): Allow --autoconf= with no target.
461 2013-01-04 Robert Dewar <dewar@adacore.com>
463 * types.ads, prj-conf.adb, par-tchk.adb: Minor reformatting.
465 2013-01-04 Robert Dewar <dewar@adacore.com>
467 * par-ch6.adb (P_Subprogram): Better handling of missing IS
468 after expression function.
469 * par-util.adb (No_Constraint): Improve handling to avoid bad warnings.
471 2013-01-04 Robert Dewar <dewar@adacore.com>
473 * exp_util.ads, exp_util.adb (Insert_Actions): In expression with
474 actions case, new actions are appended to the sequence rather than
477 2013-01-04 Robert Dewar <dewar@adacore.com>
479 * gnat_ugn.texi: Document -gnatw.d/w.D (does no apply in VMS mode).
480 * usage.adb: Add lines for -gnatw.d/w.D switches.
481 * warnsw.adb: Minor fixes (some missing cases of setting
482 Warning_Doc_Switch). Reject -gnatw.d and -gnatw.D in VMS mode.
484 2013-01-04 Robert Dewar <dewar@adacore.com>
486 * exp_util.adb (Remove_Side_Effects): Make sure scope suppress
489 2013-01-04 Robert Dewar <dewar@adacore.com>
491 * usage.adb: Document -gnateF (check overflow for predefined Float).
493 2013-01-04 Robert Dewar <dewar@adacore.com>
495 * sem_res.adb (Resolve_Type_Conversion): Remove incorrect
496 prevention of call to Apply_Type_Conversion_Checks, which resulted
497 in missing check flags in formal mode.
499 2013-01-04 Vincent Celier <celier@adacore.com>
501 * makeutl.ads (Db_Switch_Args): New table used by gprbuild.
502 * prj-conf.adb (Check_Builder_Switches): Check for switches
503 --config= (Get_Db_Switches): New procedure to get the --db
504 switches so that they are used when invoking gprconfig in
506 (Do_Autoconf): When invoking gprconfig, use the --db switches, if any.
508 2013-01-04 Pascal Obry <obry@adacore.com>
510 * prj-nmsc.adb: Minor reformatting.
512 2013-01-04 Vincent Celier <celier@adacore.com>
514 * makeutl.ads (Root_Environment): New variable, moved rom
515 gprbuild (Load_Standard_Base): New Boolean variable, moved
517 * prj-conf.adb (Check_Builder_Switches): New procedure to check
518 for switch --RTS in package Builder. If a runtime specified
519 by --RTS is a relative path name, but not a base name, then
520 find the path on the Project Search Path.
521 (Do_Autoconf): Call Check_Builder_Switches.
522 (Locate_Runtime): New procedure, moved from gprbuild, to get the
523 absolute paths of runtimes when they are not specified as a base name.
524 * prj-conf.ads (Locate_Runtime): New procedure, moved from gprbuild.
526 2013-01-04 Ed Schonberg <schonberg@adacore.com>
528 * sem_ch3.adb (Build_Private_Derived_Type): Set
529 Has_Private_Ancestor on type derived from an untagged private
530 type whose full view has discriminants
531 * sem_aggr.adb (Resolve_Record_Aggregate): Reject non-extension
532 aggregate for untagged record type with private ancestor.
534 2013-01-04 Thomas Quinot <quinot@adacore.com>
536 * sem_elab.adb, sem_ch3.adb: Minor reformatting.
538 2013-01-04 Robert Dewar <dewar@adacore.com>
540 * table.adb: Minor reformatting.
542 2013-01-04 Ed Schonberg <schonberg@adacore.com>
544 * sem_ch10.adb (Check_Redundant_Withs): A with_clause that does
545 not come from source does not generate a warning for redundant
548 2013-01-04 Hristian Kirtchev <kirtchev@adacore.com>
550 * aspects.adb, aspects.ads: Add Aspect_Global to all relevant tables.
551 * par-prag.adb: Add pragma Global to the list of pragmas that
552 do not need special processing by the parser.
553 * sem_ch13.adb (Analyze_Aspect_Specifications): Convert aspect
554 Global into a pragma without any form of legality checks. The
555 work is done by Analyze_Pragma. The aspect and pragma are both
556 marked as needing delayed processing. Insert the corresponding
557 pragma of aspect Abstract_State in the visible declarations of the
559 (Check_Aspect_At_Freeze_Point): Aspect Global
560 does not need processing even though it is marked as delayed.
561 Alphabetize the list on aspect names.
562 * sem_prag.adb: Add a value for pragma Global in table Sig_Flags.
563 (Analyze_Pragma): Add ??? comment about the grammar of pragma
564 Abstract_State. Move the error location from the pragma to the
565 state to improve the quality of error placement. Add legality
566 checks for pragma Global.
567 * snames.ads-tmpl Add the following specially recognized names
569 2013-01-04 Eric Botcazou <ebotcazou@adacore.com>
571 * sem_ch3.adb: Fix minor typo.
573 2013-01-04 Ed Schonberg <schonberg@adacore.com>
575 * par-ch13.adb (Aspect_Specifications_Present): In Strict mode,
576 accept an aspect name followed by a comma, indicating a defaulted
579 2013-01-04 Joel Brobecker <brobecker@adacore.com brobecker>
581 * gnat_ugn.texi: Document procedure to codesign GDB on Darwin.
582 Update doc on gnattest --separates switch.
584 2013-01-04 Thomas Quinot <quinot@adacore.com>
586 * s-chepoo.ads: Minor reformatting.
588 2013-01-04 Arnaud Charlet <charlet@adacore.com>
590 * usage.adb: Remove mention of -gnatN in usage.
592 2013-01-04 Robert Dewar <dewar@adacore.com>
594 * exp_prag.adb, gnatcmd.adb, exp_util.adb, table.adb, sem_prag.adb,
595 freeze.adb, sem_ch4.adb, sem_warn.adb, opt.ads, exp_aggr.adb,
596 prj-conf.adb, sem_ch13.adb: Minor reformatting.
598 2013-01-04 Thomas Quinot <quinot@adacore.com>
600 * sinfo.ads: Minor documentation update.
602 2013-01-04 Thomas Quinot <quinot@adacore.com>
604 * sem_ch3.adb, einfo.adb (Analyze_Object_Declaration): Do not set Ekind
605 before resolving initialization expression.
607 2013-01-04 Hristian Kirtchev <kirtchev@adacore.com>
609 * checks.adb (Generate_Index_Checks): Delay the generation of
610 the check for an indexed component where the prefix mentions
611 Loop_Entry until the attribute has been properly expanded.
612 * exp_ch5.adb (Expand_Loop_Entry_Attributes): Perform minor
613 decoration of the constant that captures the value of Loop_Entry's
614 prefix at the entry point into a loop. Generate index checks
615 for an attribute reference that has been transformed into an
618 2013-01-04 Thomas Quinot <quinot@adacore.com>
620 * exp_prag.adb, exp_util.adb, exp_util.ads, freeze.adb, exp_aggr.adb,
621 sem_ch13.adb (Exp_Aggr.Collect_Initialization_Statements): Nothing to
622 do if Obj is already frozen.
623 (Exp_Util.Find_Init_Call): Rename to...
624 (Exp_Util.Remove_Init_Call): New subprogram, renamed from
625 Find_Init_Call. Remove the initialization call from the enclosing
626 list if found, and if it is from an Initialization_Statements
628 (Exp_Util.Append_Freeze_Action): Minor code reorganization.
629 (Exp_Util.Append_Freeze_Actions): Ensure a freeze node has been
630 allocated (as is already done in Append_Freeze_Action).
631 (Freeze.Freeze_Entity): For an object with captured
632 Initialization_Statements and non-delayed freezeing, unwrap the
633 initialization statements and insert and them directly in the
635 (Sem_Ch13.Check_Address_Clause): For an object
636 with Initialization_Statements and an address clause, unwrap the
637 initialization statements when moving them to the freeze actions.
639 2013-01-03 Pascal Obry <obry@adacore.com>
641 * prj-attr.adb, projects.texi, snames.ads-tmpl: Add package remote and
642 corresponding attibutes.
644 2013-01-03 Thomas Quinot <quinot@adacore.com>
646 * exp_aggr.adb: Minor comment improvement.
648 2013-01-03 Hristian Kirtchev <kirtchev@adacore.com>
650 * aspects.adb, aspects.ads: Add Aspect_Abstract_State to all the
652 * einfo.ads, einfo.adb: Add Integrity_Level and Refined_State to
653 the description of fields (Abstract_States): New routine.
654 (Integrity_Level): New routine.
655 (Has_Property): New routine.
656 (Is_Input_State): New routine.
657 (Is_Null_State): New routine.
658 (Is_Output_State): New routine.
659 (Is_Volatile_State): New routine.
660 (Refined_State): New routine.
661 (Set_Abstract_States): New routine.
662 (Set_Integrity_Level): New routine.
663 (Set_Refined_State): New routine.
664 (Write_Field8_Name): Add proper output for E_Abstract_State.
665 (Write_Field9_Name): Add proper output for E_Abstract_State.
666 (Write_Field25_Name): Add proper output for E_Package.
667 * lib-xref.ads: Add new letter for an abstract state.
668 * par-prag.adb: Add pragma Abstract_State to the list of pragma
669 that do not need special processing by the parser.
670 * sem_ch13.adb (Analyze_Aspect_Specifications): Convert
671 aspect Abstract_State into a pragma without any form
672 of legality checks. The work is done by Analyze_Pragma.
673 (Check_Aspect_At_Freeze_Point): Aspect Abstract_State does not
674 require delayed analysis.
675 * sem_prag.adb: Add a value for pragma Abstract_State in table
677 (Analyze_Pragma): Add legality checks for pragma
678 Abstract_State. Analysis of individual states introduces a state
679 abstraction entity into the visibility chain.
680 * snames.ads-tmpl: Add new names for abstract state and
681 integrity. Add new pragma id for abstract state.
683 2013-01-03 Bob Duff <duff@adacore.com>
685 * table.adb (Reallocate): Calculate new Length in
686 Long_Integer to avoid overflow.
688 2013-01-03 Thomas Quinot <quinot@adacore.com>
690 * sem_ch3.adb, sinfo.ads, freeze.adb, sem_ch4.adb, exp_aggr.adb
691 (Sem_Ch3.Analyze_Object_Declaration): Set Ekind early so that
692 it is set properly when expanding the initialization expression.
693 (Freeze.Check_Address_Clause): Transfer initialization expression
694 to an assignment in the freeze actions, so that the object is
695 initialized only after being elaborated by GIGI.
696 (Sinfo (comments), Sem_Ch4.Analyze_Expression_With_Actions): Allow
697 a Null_Statement as the expression in an Expression_With_Actions.
698 (Exp_Aggr.Collect_Initialization_Statements): New subprogram
699 shared by expansion of record and array aggregates, used to
700 capture statements for an aggregate used to initalize an object
701 into an Expression_With_Actions (which acts as a container for
703 (Exp_Aggr.Convert_Aggr_In_Obj_Decl): Use the above to
704 capture initialization statements, instead of the previously
705 existing loop which left freeze nodes out of the capturing
706 construct (causing out of order elaboration crashes in GIGI).
707 (Exp_Aggr.Expand_Array_Aggregate): Use the above to capture
708 initialization statements (this was previously not done for
709 arrays). Also do not unconditionally prevent in place expansion
710 for an object with address clause.
712 2013-01-03 Thomas Quinot <quinot@adacore.com>
714 * gnat_rm.texi, freeze.adb (Check_Component_Storage_Order): Check that
715 a record extension has the same scalar storage order as the parent type.
717 2013-01-03 Thomas Quinot <quinot@adacore.com>
719 * exp_ch4.adb: Add comment.
721 2013-01-03 Vincent Celier <celier@adacore.com>
723 * prj.adb: Minor spelling error correction in comment.
725 2013-01-03 Vincent Celier <celier@adacore.com>
727 * gnatcmd.adb (GNATCmd): If a single main has been specified
728 as an absolute path, use its simple file name to find specific
729 switches, instead of the absolute path.
731 2013-01-03 Javier Miranda <miranda@adacore.com>
733 * sem_warn.adb (Warn_On_Overlapping_Actuals): For overlapping
734 parameters that are record types or array types generate warnings
735 only compiling under -gnatw.i
736 * opt.ads (Extensions_Allowed): Restore previous documentation.
738 2013-01-03 Vincent Celier <celier@adacore.com>
740 * prj-conf.adb (Do_Autoconf): If Target is specified in the
741 main project, but not on the command line, use the Target in
742 the project to invoke gprconfig in auto-configuration.
743 * makeutl.ads (Default_Config_Name): New constant String.
745 2013-01-03 Arnaud Charlet <charlet@adacore.com>
747 * usage.adb: Minor: fix typo in usage.
749 2013-01-03 Thomas Quinot <quinot@adacore.com>
751 * sem_ch13.adb (Analyze_Record_Representation_Clause): Reject
752 an illegal component clause for an inherited component in a
755 2013-01-03 Emmanuel Briot <briot@adacore.com>
757 * xref_lib.adb (Parse_Identifier_Info): Fix handling of arrays, which
758 have information in the ALI file for both the index and the component
761 2013-01-03 Emmanuel Briot <briot@adacore.com>
763 * projects.texi: Fix error in documenting the project path
764 computed for an aggregate project.
766 2013-01-03 Javier Miranda <miranda@adacore.com>
768 * sem_warn.adb (Warn_On_Overlapping_Actuals): Adding documentation
769 plus restricting the functionality of this routine to cover the
770 cases described in the Ada 2012 reference manual. The previous
771 extended support is now available under -gnatX.
772 * s-tassta.adb (Finalize_Global_Tasks): Addition of a dummy
773 variable to call Timed_Sleep. Required to avoid warning on
774 overlapping out-mode actuals.
775 * opt.ads (Extensions_Allowed): Update documentation.
777 2013-01-03 Tristan Gingold <gingold@adacore.com>
779 * s-arit64.ads: Use Multiply_With_Ovflo_Check as __gnat_mulv64.
781 * gcc-interface/Makefile.in: Remove reference to arit64.c.
783 2013-01-03 Thomas Quinot <quinot@adacore.com>
785 * checks.adb, checks.ads (Apply_Address_Clause_Check): The check must
786 be generated at the start of the freeze actions for the entity, not
787 before (or after) the freeze node.
789 2013-01-03 Thomas Quinot <quinot@adacore.com>
791 * exp_aggr.adb (Exp_Aggr.Convert_Aggregate_In_Obj_Decl):
792 Reorganize code to capture initialization statements in a block,
793 so that freeze nodes are excluded from the captured block.
795 2013-01-03 Thomas Quinot <quinot@adacore.com>
797 * exp_ch11.adb: Minor reformatting.
799 2013-01-03 Thomas Quinot <quinot@adacore.com>
801 * exp_util.adb, einfo.adb, einfo.ads, freeze.adb, exp_aggr.adb,
802 sem_ch13.adb (Einfo.Initialization_Statements,
803 Einfo.Set_Initialization_Statements): New entity attribute
805 (Exp_Util.Find_Init_Call): Handle case of an object initialized
806 by an aggregate converted to a block of assignment statements.
807 (Freeze.Check_Address_Clause): Do not clear Has_Delayed_Freeze
808 even for objects that require a constant address, because the
809 address expression might involve entities that have yet to be
810 elaborated at the point of the object declaration.
811 (Exp_Aggr.Convert_Aggregate_In_Obj_Decl): For a type that does
812 not require a transient scope, capture the assignment statements
813 in a block so that they can be moved down after elaboration of
814 an address clause if needed.
815 (Sem_Ch13.Check_Constant_Address_Clause.Check_Expr_Constants,
816 case N_Unchecked_Conversion): Do not replace operand subtype with
817 its base type as this violates a GIGI invariant if the operand
818 is an identifier (in which case the etype of the identifier
819 is expected to be equal to that of the denoted entity).
821 2013-01-03 Javier Miranda <miranda@adacore.com>
823 * sem_util.ads, sem_util.adb (Denotes_Same_Object): Extend the
824 functionality of this routine to cover cases described in the Ada 2012
827 2013-01-03 Ed Schonberg <schonberg@adacore.com>
829 * sem_elab.adb (Set_Elaboration_Constraint): Handle properly
830 a 'Access attribute reference when the subprogram is called
833 2013-01-03 Arnaud Charlet <charlet@adacore.com>
835 * s-tpobop.adb (PO_Do_Or_Queue): Refine assertion, since a
836 select statement may be called from a controlled (e.g. Initialize)
837 operation and have abort always deferred.
839 2013-01-03 Robert Dewar <dewar@adacore.com>
841 * sem_ch8.adb, einfo.ads, einfo.adb: Minor code reorganization.
843 2013-01-03 Javier Miranda <miranda@adacore.com>
845 * exp_ch3.adb (Make_Controlling_Function_Wrappers): Exclude
846 internal entities associated with interfaces and add minimum
847 decoration to the defining entity of the generated wrapper to
848 allow overriding interface primitives.
849 * sem_disp.ads (Override_Dispatching_Operation): Addition of a
850 new formal (Is_Wrapper).
851 * sem_disp.adb (Override_Dispatching_Operation): When overriding
852 interface primitives the new formal helps identifying that the
853 new operation is not fully decorated.
855 2013-01-03 Thomas Quinot <quinot@adacore.com>
857 * sem_ch7.adb, sem_ch10.adb, einfo.adb, einfo.ads, sem_ch12.adb,
858 rtsfind.adb, sem_elab.adb, sem_ch4.adb, sem_ch8.adb
859 (Einfo.Is_Visible_Child_Unit, Einfo.Set_Is_Visible_Child_Unit):
860 Rename to Is_Visible_Lib_Unit, Set_Is_Visible_Lib_Unit, and
861 update spec accordingly (now also applies to root library units).
862 (Sem_Ch10.Analyze_Subunit.Analyze_Subunit_Context): Toggle above flag
863 on root library units, not only child units.
864 (Sem_Ch10.Install[_Limited]_Withed_Unit): Same.
865 (Sem_Ch10.Remove_Unit_From_Visibility): Reset Is_Visible_Lib_Unit
866 even for root library units.
867 (Sem_Ch8.Find_Expanded_Name): A selected component form whose prefix is
868 Standard is an expanded name for a root library unit.
870 2013-01-03 Thomas Quinot <quinot@adacore.com>
872 * exp_ch3.adb: Minor reformatting.
874 2013-01-03 Olivier Hainque <hainque@adacore.com>
876 * tracebak.c: Reinstate changes to support ppc-lynx178.
878 2013-01-03 Ed Schonberg <schonberg@adacore.com>
880 * atree.ads: Minor reformatting and documentation enhancement.
882 2013-01-03 Ed Schonberg <schonberg@adacore.com>
884 * exp_ch3.adb (Expand_N_Object_Declaration): If the object has
885 a class-wide type and a renaming declaration is created for it,
886 preserve entity chain, which already contains generated internal
887 types. This ensures that freezing actions are properly generated
888 for all objects declared subsequently in the same scope, and
889 that debugging information is generated for them.
890 * sem_util.adb, sem_util.ads (we): New debugging routine, to
891 display entity chain of a given scope.
893 2013-01-03 Robert Dewar <dewar@adacore.com>
895 * exp_intr.adb: Minor reformatting.
897 2013-01-03 Robert Dewar <dewar@adacore.com>
899 * einfo.adb: Minor reformatting.
901 2013-01-03 Pascal Obry <obry@adacore.com>
903 * adaint.c, adaint.h (__gnat_get_module_name): Removed.
904 (__gnat_is_module_name_supported): Removed.
905 * s-win32.ads: Add some needed definitions.
906 * g-trasym.ads: Update comments.
908 2013-01-03 Robert Dewar <dewar@adacore.com>
910 * layout.adb (Set_Composite_Alignment): Fix problems of
911 interactions with Optimize_Alignment set to Space.
913 2013-01-03 Thomas Quinot <quinot@adacore.com>
915 * exp_disp.adb: Minor reformatting.
917 2013-01-02 Richard Biener <rguenther@suse.de>
920 * gcc-interface/Makefile.in: Add $(GMPINC) to includes.
922 2013-01-02 Thomas Quinot <quinot@adacore.com>
924 * exp_intr.adb (Expand_Dispatching_Constructor_Call): Remove
925 side effects from Tag_Arg early, doing it too late may cause a
926 crash due to inconsistent Parent link.
927 * sem_ch8.adb, einfo.ads: Minor reformatting.
929 2013-01-02 Robert Dewar <dewar@adacore.com>
931 * einfo.ads, einfo.adb (Has_Independent_Components): New flag.
932 * freeze.adb (Size_Known): We do not know the size of a packed
933 record if it has atomic components, by reference type components,
934 or independent components.
935 * sem_prag.adb (Analyze_Pragma, case Independent_Components): Set new
936 flag Has_Independent_Components.
938 2013-01-02 Yannick Moy <moy@adacore.com>
940 * opt.ads (Warn_On_Suspicious_Contract): Set to True by default.
941 * usage.adb (Usage): Update usage message.
943 2013-01-02 Pascal Obry <obry@adacore.com>
945 * adaint.c (__gnat_is_module_name_supported): New constant.
947 2013-01-02 Ed Schonberg <schonberg@adacore.com>
949 * sem_attr.adb (Check_Array_Type): Reject an attribute reference on an
950 array whose component type does not have a completion.
952 2013-01-02 Geert Bosch <bosch@adacore.com>
954 * a-nllcef.ads, a-nlcefu.ads, a-nscefu.ads: Make Pure.
956 2013-01-02 Robert Dewar <dewar@adacore.com>
958 * par_sco.adb: Minor reformatting.
960 2013-01-02 Javier Miranda <miranda@adacore.com>
962 * sem_aggr.adb (Resolve_Array_Aggregate): Remove dead code.
964 2013-01-02 Olivier Hainque <hainque@adacore.com>
966 * a-exctra.ads (Get_PC): New function.
968 2013-01-02 Thomas Quinot <quinot@adacore.com>
970 * sem_ch8.adb: Minor reformatting.
972 2013-01-02 Thomas Quinot <quinot@adacore.com>
974 * sem_ch7.adb: Minor reformatting.
976 2013-01-02 Thomas Quinot <quinot@adacore.com>
978 * freeze.adb (Check_Component_Storage_Order): Do not crash on
981 2013-01-02 Robert Dewar <dewar@adacore.com>
983 * gnat1drv.adb, targparm.adb, targparm.ads: Minor name change: add
984 On_Target to Atomic_Sync_Default.
986 2013-01-02 Robert Dewar <dewar@adacore.com>
988 * sem_warn.adb (Warn_On_Known_Condition): Suppress warning for
989 comparison of attribute result with constant
990 * a-ststio.adb, s-direio.adb, s-rannum.adb: Remove unnecessary pragma
991 Warnings (Off, "..");
993 2013-01-02 Yannick Moy <moy@adacore.com>
995 * sem_prag.ads: Minor correction of comment.
997 2013-01-02 Thomas Quinot <quinot@adacore.com>
999 * par_sco.adb (Traverse_Package_Declaration): The first
1000 declaration in a nested package is dominated by the preceding
1001 declaration in the enclosing scope.
1003 2013-01-02 Pascal Obry <obry@adacore.com>
1005 * adaint.c, adaint.h (__gnat_get_module_name): Return the actual
1006 module containing a given address.
1008 2013-01-02 Thomas Quinot <quinot@adacore.com>
1010 * sem_ch3.adb: Minor reformatting.
1012 2013-01-02 Pascal Obry <obry@adacore.com>
1014 * cstreams.c (__gnat_ftell64): New routine. Use _ftelli64 on
1015 Win64 and default to ftell on other platforms.
1016 (__gnat_fsek64): Likewise.
1017 * i-cstrea.ads: Add fssek64 and ftell64 specs.
1018 * s-crtl.ads: Likewise.
1019 * a-ststio.adb, s-direio.adb (Size): Use 64 bits version when required.
1020 (Set_Position): Likewise.
1022 2013-01-02 Thomas Quinot <quinot@adacore.com>
1024 * par_sco.adb: Generate X SCOs for default expressions in
1025 subprogram body stubs. Do not generate any SCO for package,
1026 task, or protected body stubs.
1028 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1030 * sem_ch3.adb: Further improvement to ASIS mode for anonymous
1031 access to protected subprograms.
1033 2013-01-02 Robert Dewar <dewar@adacore.com>
1035 * par_sco.adb, vms_data.ads: Minor reformatting.
1037 2013-01-02 Thomas Quinot <quinot@adacore.com>
1039 * par_sco.adb (Traverse_Declarations_Or_Statement): Function
1040 form, returning value of Current_Dominant upon exit, for chaining
1042 (Traverse_Declarations_Or_Statement.Traverse_One, case
1043 N_Block_Statement): First statement is dominated by last declaration.
1044 (Traverse_Subprogram_Or_Task_Body): Ditto.
1045 (Traverse_Package_Declaration): First private
1046 declaration is dominated by last visible declaration.
1047 (Traverse_Sync_Definition): Ditto.
1049 2013-01-02 Thomas Quinot <quinot@adacore.com>
1051 * gnat_rm.texi: Restrict the requirement for Scalar_Storage_Order
1052 matching Bit_Order to record types only, since array types do not
1055 2013-01-02 Vincent Celier <celier@adacore.com>
1057 * gnat_ugn.texi: Remove documentation of -gnateO, which is an
1059 * usage.adb: Indicate that -gnateO is an internal switch.
1061 2013-01-02 Thomas Quinot <quinot@adacore.com>
1063 * par_sco.adb: Add SCO generation for task types and single
1065 * get_scos.adb: When adding an instance table entry for a
1066 non-nested instantiation, make sure the Enclosing_Instance is
1069 2013-01-02 Hristian Kirtchev <kirtchev@adacore.com>
1071 * sem_attr.adb (Analyze_Attribute): Skip the special _Parent
1072 scope generated for subprogram inlining purposes while trying
1073 to locate the enclosing function.
1074 * sem_prag.adb (Analyze_Pragma): Preanalyze the boolean
1075 expression of pragma Postcondition when the pragma comes from
1076 source and appears inside a subprogram body.
1078 2013-01-02 Thomas Quinot <quinot@adacore.com>
1080 * switch-c.adb, fe.h, back_end.adb: Enable generation of instantiation
1081 information in debug info unconditionally when using -fdump-scos,
1082 instead of relying on a separate command line switch -fdebug-instances.
1083 * gcc-interface/Make-lang.in: Update dependencies.
1085 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1087 * sem_ch12.adb: Additional refinement of predicate.
1089 2013-01-02 Vincent Celier <celier@adacore.com>
1091 * vms_data.ads: Remove incorrect spaces at end of descriptions
1092 of qualifiers for single switch.
1094 2013-01-02 Ben Brosgol <brosgol@adacore.com>
1096 * gnat_rm.texi: Minor edits / wordsmithing in section on pragma
1097 Check_Float_Overflow.
1099 2013-01-02 Thomas Quinot <quinot@adacore.com>
1101 * sprint.adb (Sprint_Node_Actual): Do not add extra parens for
1102 a conditional expression (CASE or IF expression) that already
1103 has parens. Also omit ELSE keyword for an IF expression without
1106 2013-01-02 Thomas Quinot <quinot@adacore.com>
1108 * gnat1drv.adb (Adjust_Global_Switches): Adjust back-end
1109 flag_debug_instances here, after front-end switches have been
1112 2013-01-02 Vincent Celier <celier@adacore.com>
1114 * usage.adb: Minor reformatting.
1116 2013-01-02 Arnaud Charlet <charlet@adacore.com>
1118 * opt.ads: Fix typo.
1120 2013-01-02 Thomas Quinot <quinot@adacore.com>
1122 * par_sco.adb: Generate P decision SCOs for SPARK pragmas
1123 Assume and Loop_Invariant.
1125 2013-01-02 Robert Dewar <dewar@adacore.com>
1127 * vms_data.ads: Add entry for Float_Check_Valid (-gnateF).
1128 * ug_words: Add entry for Float_Check_Overflow.
1129 * usage.adb: Minor reformatting.
1130 * gnat_ugn.texi: Add documentation for -gnateF (Check_Float_Overflow).
1132 2013-01-02 Vincent Celier <celier@adacore.com>
1134 * gnat_ugn.texi: Add documentation for switches -gnateA, -gnated,
1135 -gnateO=, -gnatet and -gnateV.
1136 * ug_words: Add qualifiers equivalent to -gnateA, -gnated,
1137 -gnatet and -gnateV.
1138 * usage.adb: Add lines for -gnatea, -gnateO and -gnatez.
1139 * vms_data.ads: Add new compiler qualifiers /ALIASING_CHECK
1140 (-gnateA), /DISABLE_ATOMIC_SYNCHRONIZATION (-gnated),
1141 /PARAMETER_VALIDITY_CHECK (-gnateV) and /TARGET_DEPENDENT_INFO
1144 2013-01-02 Robert Dewar <dewar@adacore.com>
1146 * checks.adb (Apply_Scalar_Range_Check): Implement Check_Float_Overflow.
1147 * opt.ads, opt.adb: Handle flags Check_Float_Overflow[_Config].
1148 * par-prag.adb: Add dummy entry for pragma Check_Float_Overflow.
1149 * sem_prag.adb: Implement pragma Check_Float_Overflow.
1150 * snames.ads-tmpl: Add entries for pragma Check_Float_Overflow.
1151 * switch-c.adb: Recognize -gnateF switch.
1152 * tree_io.ads: Update ASIS version number.
1153 * gnat_rm.texi: Add documentation of pragma Check_Float_Overflow.
1155 2013-01-02 Robert Dewar <dewar@adacore.com>
1157 * checks.adb, exp_ch4.adb, exp_ch6.adb, exp_ch7.adb, exp_ch9.adb,
1158 exp_disp.adb, exp_dist.adb, exp_intr.adb, exp_prag.adb, exp_util.adb,
1159 freeze.adb, gnat1drv.adb, inline.adb, layout.adb, lib-xref.adb,
1160 par-ch10.adb, par-labl.adb, par-load.adb, par-util.adb, restrict.adb,
1161 sem_ch13.adb, sem_ch4.adb, sem_ch6.adb, sem_dim.adb, sem_elab.adb,
1162 sem_res.adb, sem_warn.adb, sinput-l.adb: Add tags to warning messages.
1163 * sem_ch6.ads, warnsw.ads, opt.ads: Minor comment updates.
1165 2013-01-02 Robert Dewar <dewar@adacore.com>
1167 * err_vars.ads: Minor comment fix.
1169 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1171 * sem_ch12.adb: Refine predicate.
1173 2013-01-02 Robert Dewar <dewar@adacore.com>
1175 * errout.ads: Minor comment fixes.
1176 * opt.ads: Minor comment additions.
1177 * exp_aggr.adb: Add tags to warning messages
1178 * exp_ch11.adb, exp_ch3.adb, exp_ch4.adb, exp_util.adb, sem_aggr.adb,
1179 sem_attr.adb, sem_case.adb, sem_cat.adb, sem_ch3.adb, sem_ch4.adb,
1180 sem_ch5.adb, sem_disp.adb, sem_dist.adb, sem_elab.adb, sem_eval.adb,
1181 sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb, sem_util.adb,
1182 sem_warn.adb: Add tags to warning messages
1184 2013-01-02 Doug Rupp <rupp@adacore.com>
1186 * init.c [VMS] Remove subtest on reason mask for ACCVIO that is a C_E.
1188 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1190 * sem_ch12.adb: Recover source name for renamed packagea.
1192 2013-01-02 Robert Dewar <dewar@adacore.com>
1194 * errout.adb (Set_Msg_Insertion_Warning): Correct typo causing
1195 tests to fail if insertion sequence is at end of message string.
1196 * opt.ads: Minor comment fixes and additions.
1197 * sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_ch10.adb, sem_ch11.adb,
1198 sem_ch12.adb, sem_ch13.adb: Add tags to warning messages.
1199 * sem_ch6.ads, sem_ch6.adb (Cannot_Inline): Deal with warning message
1200 tags. Add tags to warning messages.
1202 2013-01-02 Robert Dewar <dewar@adacore.com>
1204 * err_vars.ads (Warning_Doc_Switch): New flag.
1205 * errout.adb (Error_Msg_Internal): Implement new warning flag
1206 doc tag stuff (Set_Msg_Insertion_Warning): New procedure.
1207 * errout.ads: Document new insertion sequences ?? ?x? ?.x?
1208 * erroutc.adb (Output_Msg_Text): Handle ?? and ?x? warning doc
1210 * erroutc.ads (Warning_Msg_Char): New variable.
1211 (Warn_Chr): New field in error message object.
1212 * errutil.adb (Error_Msg): Set Warn_Chr in error message object.
1213 * sem_ch13.adb: Minor reformatting.
1214 * warnsw.adb: Add handling for -gnatw.d and -gnatw.D
1215 (Warning_Doc_Switch).
1216 * warnsw.ads: Add handling of -gnatw.d/.D switches (warning
1219 2013-01-02 Robert Dewar <dewar@adacore.com>
1221 * opt.ads: Minor reformatting.
1223 2013-01-02 Doug Rupp <rupp@adacore.com>
1225 * init.c: Reorganize VMS section.
1226 (scan_condtions): New function for scanning condition tables.
1227 (__gnat_handle_vms_condtion): Use actual exception name for imported
1228 exceptions vice IMPORTED_EXCEPTION.
1229 Move condition table scanning into separate function. Move formerly
1230 special handled conditions to system condition table. Use SYS$PUTMSG
1231 output to fill exception message field for formally special handled
1232 condtions, in particular HPARITH to provide more clues about cause and
1233 location then raised from the translated image.
1235 2013-01-02 Thomas Quinot <quinot@adacore.com>
1237 * sem_ch13.adb (Analyze_Aspect_Specifications): For a Pre/Post
1238 aspect that applies to a library subprogram, prepend corresponding
1239 pragma to the Pragmas_After list, in order for split AND THEN
1240 sections to be processed in the expected order.
1242 2013-01-02 Thomas Quinot <quinot@adacore.com>
1244 * exp_prag.adb (Expand_Pragma_Check): The statements generated
1245 for the pragma must have the sloc of the pragma, not the
1246 sloc of the condition, otherwise this creates anomalies in the
1247 generated debug information that confuse coverage analysis tools.
1249 2013-01-02 Thomas Quinot <quinot@adacore.com>
1251 * sem_ch13.adb: Minor reformatting.
1253 2013-01-02 Arnaud Charlet <charlet@adacore.com>
1255 * g-excact.ads (Core_Dump): Clarify that this subprogram does
1256 not dump cores under Windows.
1258 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1260 * sem_ch8.adb (Analyze_Primitive_Renamed_Operation): The prefixed
1261 view of a subprogram has convention Intrnnsic, and a renaming
1262 of a prefixed view cannot be the prefix of an Access attribute.
1264 2013-01-02 Robert Dewar <dewar@adacore.com>
1266 * restrict.adb: Minor reformatting.
1268 2013-01-02 Thomas Quinot <quinot@adacore.com>
1270 * exp_prag.adb: Minor reformatting.
1272 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1274 * sem_ch12.adb (Get_Associated_Node): If the node is an
1275 identifier that denotes an unconstrained array in an object
1276 declaration, it is rewritten as the name of an anonymous
1277 subtype whose bounds are given by the initial expression in the
1278 declaration. When checking whether that identifier is global
1279 reference, use the original node, not the local generated subtype.
1281 2013-01-02 Olivier Hainque <hainque@adacore.com>
1283 * tracebak.c: Revert previous change, incomplete.
1285 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1287 * sem_ch13.adb (Analyze_Aspect_Specifications): If the aspect
1288 appears on a subprogram body that acts as a spec, place the
1289 corresponding pragma in the declarations of the body, so that
1290 e.g. pre/postcondition checks can be generated appropriately.
1292 2013-01-02 Robert Dewar <dewar@adacore.com>
1294 * sem_ch3.adb: Minor reformatting and code reorganization.
1296 2013-01-02 Vincent Celier <celier@adacore.com>
1298 * switch-m.adb (Normalize_Compiler_Switches): Record the
1299 complete switch -fstack-check=specific instead of its shorter
1300 alias -fstack-check.
1302 2013-01-02 Ed Schonberg <schonberg@adacore.com>
1304 * sem_ch3.adb (Derive_Subprogram): Enforce RM 6.3.1 (8):
1305 if the derived type is a tagged generic formal type with
1306 unknown discriminants, the inherited operation has convention
1307 Intrinsic. As such, the 'Access attribute cannot be applied to it.
1309 2013-01-02 Thomas Quinot <quinot@adacore.com>
1311 * sem_attr.adb: Minor reformatting.
1313 2013-01-02 Thomas Quinot <quinot@adacore.com>
1315 * par_sco.adb: Add SCO generation for S of protected types and
1316 single protected object declarations.
1318 2013-01-02 Robert Dewar <dewar@adacore.com>
1320 * sem_eval.adb, osint.ads: Minor reformatting.
1322 2013-01-02 Hristian Kirtchev <kirtchev@adacore.com>
1324 * sem_prag.adb (Analyze_Pragma): Check the legality of pragma Assume.
1326 2013-01-02 Thomas Quinot <quinot@adacore.com>
1328 * sem_eval.adb (Compile_Time_Compare): For static operands, we
1329 can perform a compile time comparison even if in preanalysis mode.
1331 2013-01-02 Thomas Quinot <quinot@adacore.com>
1333 * par_sco.adb (SCO_Record): Always use
1334 Traverse_Declarations_Or_Statements to process the library level
1335 declaration, so that SCOs are properly generated for its aspects.
1337 2013-01-02 Thomas Quinot <quinot@adacore.com>
1339 * scos.ads (In_Decision): Add missing entry for 'a'.
1340 * sem_prag.adb (Analyze_Pragma, case pragma Check): Omit
1341 call to Set_SCO_Pragma_Enabled for Invariant and Predicate.
1342 * sem_ch13.adb: Minor comment update.
1344 Copyright (C) 2013 Free Software Foundation, Inc.
1346 Copying and distribution of this file, with or without modification,
1347 are permitted in any medium without royalty provided the copyright
1348 notice and this notice are preserved.