1 2009-07-09 Tom Tromey <tromey@redhat.com>
3 * raise-gcc.c: Include dwarf2h (unconditionally).
5 2009-07-09 Ed Schonberg <schonberg@adacore.com>
7 * sem_ch10.adb (Install_Context): If the unit is a package body,
8 install the private with_clauses of the corresponding package
11 2009-07-09 Robert Dewar <dewar@adacore.com>
13 * checks.adb: Minor reformatting
15 2009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
17 * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
20 2009-07-09 Thomas Quinot <quinot@adacore.com>
22 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
23 Do not warn for a constant overlaying any constant object
25 2009-07-09 Ed Schonberg <schonberg@adacore.com>
27 * sem_ch10.adb (Install_Context): If the unit is a package body,
28 install the private with_clauses of the corresponding package
31 2009-07-09 Robert Dewar <dewar@adacore.com>
33 * checks.adb: Minor reformatting
35 2009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
37 * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
40 2009-07-09 Thomas Quinot <quinot@adacore.com>
42 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
43 Do not warn for a constant overlaying any constant object
45 2009-06-25 Arnaud Charlet <charlet@adacore.com>
47 * gcc-interface/Make-lang.in: Update dependencies
49 2009-07-09 Thomas Quinot <quinot@adacore.com>
51 * g-socket.adb (Check_Selector): Do not create local copies of the
52 socket sets on the stack.
54 2009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
56 * gnat_ugn.texi: Add missing VMS translations.
58 2009-07-09 Ed Schonberg <schonberg@adacore.com>
60 * sem_prag.adb (Analyze_Pragma, case Precondition): Do not analyze the
61 condition, to prevent generation of visible code during expansion,
62 when Check is not enabled.
64 2009-07-09 Gary Dismukes <dismukes@adacore.com>
66 * checks.adb (Install_Static_Check): Call Possible_Local_Raise so that
67 the check gets registered for any available local handler
70 * sem_util.adb: Add with and use of Exp_Ch11.
71 (Apply_Compile_Time_Constraint_Error): Call Possible_Local_Raise so
72 that the check gets registered for any available local handler.
74 * exp_ch4.adb (Expand_N_Slice): Remove call to Enable_Range_Check
77 2009-07-09 Steve Baird <baird@adacore.com>
79 * exp_ch11.adb (Force_Static_Allocation_Of_Referenced_Objects): New
81 (Expand_N_Exception_Declaration): Fix handling of exceptions
82 declared in a subprogram.
84 2009-07-09 Emmanuel Briot <briot@adacore.com>
86 * prj-nmsc.adb (Find_Sources): Avoid error messages from gprbuild from
89 2009-07-09 Thomas Quinot <quinot@adacore.com>
91 * freeze.adb: Minor reformatting
93 * exp_ch3.adb: Minor comment fix.
95 * sinfo.ads: Minor comment fix
97 2009-07-09 Ed Schonberg <schonberg@adacore.com>
99 * exp_ch4.adb (Expand_N_Conditional_Expression): Set Related_Expression.
101 2009-07-09 Ed Schonberg <schonberg@adacore.com>
103 * freeze.adb (Freeze_Expression): If the expression is the name of a
104 function in a call, and the function has not been frozen yet, create
105 extra formals for it to ensure that the proper actuals are created
106 when expanding the call.
108 2009-07-09 Emmanuel Briot <briot@adacore.com>
110 * prj-pp.adb (Print): Fix handling of source index when set on a
113 2009-07-09 Ed Schonberg <schonberg@adacore.com>
115 * einfo.ads, einfo.adb: New attribute Related_Expression, used to link
116 a temporary to the source expression whose value it captures.
118 * exp_util.adb (Remove_Side_Effects): Set Related_Expression as needed.
120 2009-07-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
122 * gcc-interface/trans.c (gnat_gimplify_expr): Replace EXPR_LOCUS by
125 2009-07-07 Gary Dismukes <dismukes@adacore.com>
127 * exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for in out
128 parameters when the subtype of the actual is not known to be a subrange
129 of the formal's subtype.
130 (Expand_Call): Generate a range check only in the E_In_parameter case
131 (in out parameter range checks are now handled in Expand_Actuals).
133 * exp_ch4.adb (Expand_N_Slice): Restore code that calls
136 2009-07-07 Robert Dewar <dewar@adacore.com>
138 * a-stwise.adb, a-stzsea.adb, a-strsea.adb: Add comments
140 2009-07-07 Javier Miranda <miranda@adacore.com>
142 * exp_disp.adb (Expand_Interface_Conversion): Handle access type whose
143 designated type comes from a limited views.
145 2009-07-07 Emmanuel Briot <briot@adacore.com>
147 * prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Fix handling of
148 locally removed files that are later made visible again in an importing
151 2009-07-07 Robert Dewar <dewar@adacore.com>
153 * gnat_rm.texi: Clarify documentation of Stream_Convert pragma
155 2009-07-07 Sergey Rybin <rybin@adacore.com>
157 * gnat_ugn.texi: Add an example to the description of gnatcheck
158 'Style_Checks' rule option.
160 2009-07-07 Tristan Gingold <gingold@adacore.com>
162 * seh_init.c: Fix inline assembly statement in seh_init.c
164 2009-07-07 Ed Schonberg <schonberg@adacore.com>
166 * sem_warn.adb (Check_References): Do not emit warnings on formals of
167 an entry body. Only the formals of the entry declaration are traced.
169 2009-07-07 Robert Dewar <dewar@adacore.com>
171 * s-osprim-mingw.adb: Minor code reorganization
173 2009-07-07 Robert Dewar <dewar@adacore.com>
175 * prj-nmsc.adb: Minor reformatting
177 2009-07-07 Pascal Obry <obry@adacore.com>
179 * a-stwise.adb, a-stzsea.adb, a-strsea.adb (Index): properly handle
180 cases where Pattern is longer than Source.
182 2009-07-07 Pascal Obry <obry@adacore.com>
184 * s-osprim-mingw.adb (Get_Base_Time): Avoid infinite loop.
186 2009-07-07 Emmanuel Briot <briot@adacore.com>
188 * prj-nmsc.adb (Process_Naming): canonicalize file suffixes read in the
191 2009-07-07 Ed Schonberg <schonberg@adacore.com>
193 * exp_ch3.adb (Expand_Freeze_Record_Type): Add extra formals to
194 primitive operations, in case one of them is called in the
195 initialization procedure for the type.
197 2009-07-07 Robert Dewar <dewar@adacore.com>
199 * a-calend.adb: Minor code reorganization (use conditional expressions)
201 * s-stusta.ads, s-interr-hwint.adb, g-expect-vms.adb, s-secsta.ads,
202 prj-nmsc.adb, a-teioed.adb, output.ads, prj-attr.ads, a-textio.adb,
203 s-taskin.ads, scans.ads, s-osinte-vms.adb, s-taprop-solaris.adb,
204 s-tpopsp-posix-foreign.adb, s-trafor-default.adb, gnat1drv.adb,
205 s-stchop-vxworks.adb, s-tpopsp-posix.adb, prj-env.adb, prj-env.ads,
206 g-comlin.adb, exp_ch11.adb: Minor reformatting.
208 2009-07-07 Gary Dismukes <dismukes@adacore.com>
210 * checks.adb (Generate_Range_Check): Replace type conversions with
211 unchecked conversions to support the case of performing range checks
212 on Enum'Val (permits integer values to be converted to enumeration).
214 * exp_attr.adb (Expand_N_Attribute_Reference, cases Attribute_Pred,
215 Attribute_Succ): Set Do_Range_Check to False before calling
216 Expand_Pred_Succ, to prevent gigi from generating any range checks.
217 (Expand_N_Attribute_Reference, case Attribute_Val):
218 Generate a range check when needed (and set Do_Range_Check to False).
220 * exp_ch3.adb (Expand_N_Object_Declaration): Generate a range check on
221 scalar object initialization if needed.
223 * exp_ch4.adb (Expand_Allocator_Expression): Generate range checks
224 when needed on scalar allocators.
225 (Expand_N_Qualified_Expression): Generate range check when needed.
226 (Expand_N_Slice): Remove call to Enable_Range_Check on slice ranges.
227 Checks on slice ranges handled in Resolve_Slice.
229 * exp_ch5.adb (Expand_N_Assignment_Statement): Generate a range check,
230 when needed, for all scalar assignments, not just discrete.
231 (Expand_Simple_Function_Return): Resolve the conversion created for a
232 scalar function return so that the conversion will get expanded to
233 generate a possible constraint check.
235 * exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for out and
236 in out scalar actuals when subtypes don't match, to ensure generation
237 of return checks (and set Do_Range_Check to False).
238 (Expand_Call): Uncomment code to perform range checks, but make it apply
239 only to in and in out parameters (checks on parameter returns are
240 handled in Expand_Actuals). If a scalar actual for a call to a derived
241 subprogram is marked as needing a range check, peform it here (and set
242 Do_Range_Check to False).
244 * sem_aggr.adb (Resolve_*_Aggregate.Resolve_Aggr_Expr): Generate a
245 range check on scalar component associations when needed.
247 * sem_eval.adb (In_Subrange_Of): Return False when the first type has
248 infinities but the second type does not, as these aren't compatible
249 floating-point types.
251 * sem_res.adb (Resolve_Slice): In the case where the prefix of the
252 slice is itself a slice, pick up the Etype of the prefix. This handles
253 the case where the prefix was an Image attribute expanded to a slice,
254 and ensures that we get the subtype with the slice constraint rather
255 than the unconstrained subbtype of the 'Image.
257 2009-07-07 Ed Schonberg <schonberg@adacore.com>
259 * sem_ch4.adb (Analyze_Conditional_Expression): handle properly
260 overloaded expressions in a conditional expressions.
262 * sem_res.adb (Resolve): Handle properly overloaded conditional
265 2009-07-07 Robert Dewar <dewar@adacore.com>
267 * scng.adb: Minor reformattting
269 * par-ch2.adb (Scan_Pragma_Argument_Association): Pragma argument
270 association allows conditional expression without parens.
272 * par-ch4.adb (P_Name): Attribute arguments can be conditional
273 expressions without enclosing parentheses, and also as parameters,
274 indexing expressions etc.
275 (P_Conditional_Expression): New procedure
276 (P_Expression_If_OK): New procedure
278 * par.adb (P_Conditional_Expression): New procedure
279 (P_Expression_If_OK): New procedure
281 * sem_ch4.adb (Analyze_Conditional_Expression): Allow for two argument
282 form of conditional expression.
284 * sem_res.adb (Resolve_Conditional_Expression): Deal with supplying
285 missing True argument if ELSE argument missing.
287 * sinfo.adb (Is_Elsif): New flag
289 * sinfo.ads (N_Conditional_Expression): This node is now a syntactic
290 part of the language, and the documentation is modified accordingly.
293 2009-07-06 Olivier Hainque <hainque@adacore.com>
295 * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu,
296 setjmp_longjmp): Attach the exception propagation reraise fallback
297 to the sequence end label location when we have it.
299 2009-07-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
302 * init.c (APPLE): Include <mach/mach_init.h>.
303 (__gnat_error_handler, APPLE): Add ATTRIBUTE_UNUSED marker.
305 2009-07-04 Eric Botcazou <ebotcazou@adacore.com>
307 * ada-tree.h (SET_TYPE_LANG_SPECIFIC): Rewrite.
308 (SET_DECL_LANG_SPECIFIC): Likewise.
309 (TYPE_RM_VALUE): New macro.
310 (SET_TYPE_RM_VALUE): Likewise.
311 (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUE.
312 (TYPE_RM_MIN_VALUE): Likewise.
313 (TYPE_RM_MAX_VALUE): Likewise.
314 (SET_TYPE_RM_SIZE): Rewrite in terms of SET_TYPE_RM_VALUE.
315 (SET_TYPE_RM_MIN_VALUE): Likewise.
316 (SET_TYPE_RM_MAX_VALUE): Likewise.
317 * decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Remove kludge.
319 2009-07-04 Laurent GUERBY <laurent@guerby.net>
322 * tracebak.c (__gnat_backtrace): Fix old-style definition.
324 2009-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
326 * tracebak.c [i386 && sun] (IS_BAD_PTR): Use -1UL in comparison.
328 2009-07-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
331 * init.c (__gnat_error_handler, HP-UX): Add ATTRIBUTE_UNUSED marker to
334 2009-07-01 Eric Botcazou <ebotcazou@adacore.com>
336 * init.c (__gnat_error_handler, Solaris): Add ATTRIBUTE_UNUSED marker.
338 2009-06-30 Eric Botcazou <ebotcazou@adacore.com>
340 * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Do not use
341 the type of the left operand if it pads a self-referential type when
342 the right operand is a constructor.
344 * gcc-interface/lang-specs.h: Fix copyright date.
346 2009-06-30 Eric Botcazou <ebotcazou@adacore.com>
348 * gcc-interface/decl.c: Include tree-inline.h.
349 (annotate_value) <CALL_EXPR>: Try to inline the call in the expression.
350 * gcc-interface/utils.c (max_size) <CALL_EXPR>: Likewise.
351 * gcc-interface/utils2.c: Include tree-inline.
352 (known_alignment) <CALL_EXPR>: Likewise.
354 2009-06-30 Eric Botcazou <ebotcazou@adacore.com>
356 * raise-gcc.c: Include dwarf2.h conditionally.
358 2009-06-29 Tom Tromey <tromey@redhat.com>
360 * raise-gcc.c: Include elf/dwarf2.h.
362 2009-06-27 Laurent GUERBY <laurent@guerby.net>
364 * tb-gcc.c (trace_callback): Add casts to silence warning.
366 2009-06-27 Eric Botcazou <ebotcazou@adacore.com>
368 * tb-gcc.c: Fix copyright notice.
370 2009-06-27 Eric Botcazou <ebotcazou@adacore.com>
372 * init.c (__gnat_set_globals): Add prototype.
373 * adaint.c (__gnat_binder_supports_auto_init): Likewise.
374 (__gnat_sals_init_using_constructors): Likewise.
375 * gcc-interface/utils.c (gnat_pushlevel): Likewise.
376 (get_block_jmpbuf_decl): Likewise.
377 (gnat_poplevel): Likewise.
378 (merge_sizes): Rename local variable.
379 (copy_type): Likewise.
380 (build_vms_descriptor32): Likewise.
381 (build_vms_descriptor): Likewise.
382 (convert_vms_descriptor64): Likewise.
383 (convert_vms_descriptor32): Likewise.
384 (convert_to_fat_pointer): Likewise.
385 (maybe_unconstrained_array): Likewise.
386 (def_fn_type): Use promoted type with va_arg.
387 * gcc-interface/decl.c (gnat_to_gnu_entity): Add declaration.
388 (substitute_in_type): Rename local variable.
389 * gcc-interface/Make-lang.in (ada-warn): Use STRICT_WARN.
391 2009-06-26 Laurent GUERBY <laurent@guerby.net>
393 * tb-gcc.c (trace_callback): Use char* instead of void*.
394 * gcc-interface/misc.c (enumerate_modes): Make loop C++ compatible.
395 * gcc-interface/trans.c (parm_attr): Rename to parm_attr_d.
396 (Attribute_to_gnu): Adjust for above change.
397 (Subprogram_Body_to_gnu): Likewise.
398 * gcc-interface/utils.c (merge_sizes): Rename local variable.
399 (copy_type): Likewise.
400 (build_vms_descriptor32): Likewise.
401 (build_vms_descriptor): Likewise.
402 (convert_vms_descriptor64): Likewise.
403 (convert_vms_descriptor32): Likewise.
404 (convert_to_fat_pointer): Likewise.
405 (maybe_unconstrained_array): Likewise.
406 * gcc-interface/decl.c (substitute_in_type): Likewise.
408 2009-06-26 Eric Botcazou <ebotcazou@adacore.com>
410 * gcc-interface/decl.c (cannot_be_superflat_p): New predicate.
411 (gnat_to_gnu_entity) <E_Array_Subtype>: Use it to build the expression
412 of the upper bound of the index types.
414 2009-06-26 Eric Botcazou <ebotcazou@adacore.com>
416 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Factor
417 out common predicate. Use the maximum to compute the upper bound of
418 the index type only when it is not wider than sizetype. Perform the
419 comparison in the index type for the generic expression. Use real
420 precision to decide whether to generate special types for debugging
423 2009-06-26 Matthew Gingell <gingell@adacore.com>
425 * adaint.c: Do not use the dummy version of convert_addresses on LynxOS
427 2009-06-26 Vincent Celier <celier@adacore.com>
429 * prj.ads (No_Language_Config): Value of Dependency_Kind is None by
432 2009-06-26 Robert Dewar <dewar@adacore.com>
434 * exp_ch4.adb, gnatcmd.adb, make.adb: Minor reformatting
436 2009-06-26 Eric Botcazou <ebotcazou@adacore.com>
438 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Pass
439 correct arguments to create_field_decl. Remove redundant iteration.
440 Rewrite computation of the maximum size.
441 <E_Array_Subtype>: Reorder and simplify handling of special cases.
442 Rewrite computation of the maximum size. Use consistent naming.
443 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Length>: Swap
444 comparison order for consistency. Use generic integer node to
445 build the operator and fold the result.
447 2009-06-25 Vincent Celier <celier@adacore.com>
449 * vms_data.ads: Minor comment change
451 2009-06-25 Gary Dismukes <dismukes@adacore.com>
453 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Don't build an
454 assignment statement to targeting a caller-provided object when the
455 result type is an interface type.
457 * exp_ch6.adb (Expand_Call): Remove redundant test of
458 Is_Limited_Interface (Is_Inherently_Limited is sufficient).
459 (Is_Build_In_Place_Function): Remove test for Is_Limited_Interface.
461 * sem_aggr.adb (Check_Expr_OK_In_Limited_Aggregate): Add type in call
462 to OK_For_Limited_Init.
464 * sem_aux.adb (Is_Inherently_Limited_Type): Revise limited type
465 condition so that True is returned for all limited interfaces, not
466 just synchronized ones. Ignore components of an interface type when
467 checking for limited components (such a component can be a parent
470 * sem_ch3.ads (OK_For_Limited_Init_In_05): Add type parameter.
471 (OK_For_Limited_Init): Add type parameter.
473 * sem_ch3.adb (Check_Initialization): Add type in call to
475 (OK_For_Limited_Init): Add new type param in call to
476 OK_For_Limited_Init_In_05.
477 (OK_For_Limited_Init_In_05): Permit arbitrary expressions of a
478 nonlimited type when the context type is a limited interface. Add type
481 * sem_ch4.adb (Analyze_Allocator): Add type in call to
484 * sem_ch6.adb (Check_Limited_Return): Add type in call to
487 * sem_ch12.adb (Analyze_Formal_Object_Declaration): Add type in call to
489 (Instantiate_Object): Add type in call to OK_For_Limited_Init.
491 * sem_type.adb (Interface_Present_In_Ancestor): In the case of a
492 class-wide interface, get the base type before applying Etype, in order
493 to account for class-wide subtypes.
495 2009-06-25 Emmanuel Briot <briot@adacore.com>
497 * gnatcmd.adb, prj-proc.adb, make.adb, prj.adb, prj.ads, prj-nmsc.adb,
498 prj-util.adb, prj-env.adb, prj-env.ads: Merge handling of naming_data
499 between gnatmake and gprbuild.
500 (Naming_Data): Removed, no longer used
501 (Naming_Table, Project_Tree_Ref.Namings): Removed, since this is only
502 needed locally in one subprogram, no need to store forever in the
504 (Check_Naming_Scheme, Check_Package_Naming): Merged, since they play
506 (Body_Suffix_Of, Body_Suffix_Id_Of, Register_Default_Naming_Scheme,
507 Same_Naming_Scheme, Set_Body_Suffix, Set_Spec_Suffix, Spec_Suffix_Of,
508 Spec_Suffix_Id_Of): removed, no longer used.
510 2009-06-25 Javier Miranda <miranda@adacore.com>
512 * sem_res.adb (Resolve_Allocator): Skip test requiring exact match of
513 types on qualified expression in calls to imported C++ constructors.
515 * exp_ch4.adb (Expand_Allocator_Expression): Add missing support for
516 imported C++ constructors.
518 2009-06-25 Sergey Rybin <rybin@adacore.com>
520 * vms_data.ads: Add qualifier for new gnatcheck '-t' option.
522 2009-06-25 Vincent Celier <celier@adacore.com>
524 * s-os_lib.adb (Normalize_Pathname.Get_Directory): If directory
525 provided, on Windows change all '/' to '\'.
527 * fmap.ads, fmap.adb (Remove_Forbidden_File_Name): Remove, no longer
528 used. Minor comment changes
530 * prj-nmsc.adb: Do not call Fmap.Add_Forbidden_File_Name or
531 Remove_Forbidden_File_Name.
533 2009-06-25 Quentin Ochem <ochem@adacore.com>
535 * prj.ads (Unit_Index): Now general access type.
537 2009-06-25 Pascal Obry <obry@adacore.com>
539 * a-stwise.adb, a-stzsea.adb: Fix confusion between 'Length and 'Last.
541 2009-06-25 Emmanuel Briot <briot@adacore.com>
543 * fmap.ads, make.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb,
544 prj-env.ads (Source_Data.Get_Object): Field removed, since it can be
545 computed efficiently from the other fields.
546 (Object_To_Global_Archive): New subprogram
547 (Create_Mapping): Remove unneeded call to Remove_Forbidden_File_Name.
548 (Override_Kind): Fix handling of separates in Ada.
549 (Create_Mapping_File): Remove duplicate code
550 (Naming_Data.Implementation_Exception, Specification_Exception):
551 field removed, since never used.
552 (Naming_Data.Specs, .Bodies): field removed, since this is only
553 used while processing the project and is not needed once the tree
554 is in memory. This brings Naming_Data and Lang_Naming_Data
555 closer (same content now, but different use still).
557 2009-06-25 Pascal Obry <obry@adacore.com>
559 * sem_ch4.adb: Minor reformatting.
561 * a-strsea.adb: Fix confusion between 'Length and 'Last.
563 2009-06-25 Ed Schonberg <schonberg@adacore.com>
565 * exp_attr.adb (Expand_N_Attribute_Reference, case 'Access and
566 Unchecked_Access): If the context is an interface type, and the prefix
567 is of the corresponding class-wide type, do not insert a conversion
568 because the pointer displacement has already taken place, and we must
569 retain the class-wide type in a dispatching context.
571 2009-06-25 Emmanuel Briot <briot@adacore.com>
573 * prj-nmsc.adb, prj-env.adb (Override_Kind): Unset the unit field of
574 the previous source file.
575 (Create_Mapping): Iterate on sources rather than on units.
577 2009-06-25 Emmanuel Briot <briot@adacore.com>
579 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb,
580 prj-env.adb, prj-env.ads (Slash): removed, no longer used
581 (Source_Data): no longer use Path.Name to point to a locally removed
582 file. Instead we use the field Locally_Removed which is clearer
584 2009-06-25 Arnaud Charlet <charlet@adacore.com>
586 * gcc-interface/Make-lang.in: Remove references to sem_maps.o
588 * sem_maps.adb, sem_maps.ads: Removed, not used.
590 2009-06-25 Ed Falis <falis@adacore.com>
592 * s-vxwext-rtp.ads: Add missing declaration
594 2009-06-25 Matthew Gingell <gingell@adacore.com>
596 * a-stwise.adb, a-stzsea.adb (Count, Index): Avoid local copy on stack,
597 speed up unmapped case.
599 2009-06-25 Vincent Celier <celier@adacore.com>
601 * prj-nmsc.adb (Check): Change error message for illegal abstract
604 2009-06-25 Robert Dewar <dewar@adacore.com>
606 * gnat_ugn.texi: Add note on use of -gnatct for ASIS
608 2009-06-25 Emmanuel Briot <briot@adacore.com>
610 * fmap.ads: Add documentation on mapping files
612 2009-06-25 Robert Dewar <dewar@adacore.com>
614 * exp_ch6.adb, g-socket.ads, g-socket.adb, sem_ch3.adb: Minor
617 2009-06-24 Robert Dewar <dewar@adacore.com>
619 * prj-nmsc.adb, prj-nmsc.ads, prj-proc.adb, prj.adb: Minor reformatting
621 * a-strsea.adb (Count): Avoid local copy on stack, speed up unmapped
625 2009-06-24 Ed Schonberg <schonberg@adacore.com>
627 * sem_ch4.adb (Analyze_One_Call): Check that at least one actual is
628 present when checking whether a call may be interpreted as an indexing
629 of the result of a call.
631 * exp_ch9.adb (Expand_N_Subprogram_Declaration): Place the generated
632 body for a null procedure on the freeze actions for the procedure, so
633 that it will be analyzed at the proper place without premature freezing
636 * sem_ch3.adb (Check_Completion): Code cleanup.
637 Do not diagnose a null procedure without a body, if previous errors
638 have disabled expansion.
640 2009-06-24 Doug Rupp <rupp@adacore.com>
642 * init.c [VMS] Resignal C$_SIGKILL
644 2009-06-24 Ed Falis <falis@adacore.com>
646 * s-vxwext.adb, s-vxwext-kernel.adb: Add s-vxwext body for VxWorks 5
647 Define ERROR in body for VxWorks 6 kernel
649 2009-06-24 Pascal Obry <obry@adacore.com>
651 * g-socket.adb, g-socket.ads: Fix possible unexpected constraint error
652 in [Send/Receive]_Socket.
654 2009-06-24 Emmanuel Briot <briot@adacore.com>
656 * prj-proc.adb, prj-proc.ads, prj.ads, prj-nmsc.adb, prj-nmsc.ads,
657 prj-conf.adb, prj-conf.ads (Allow_Duplicate_Basenames): New parameter
658 to several subprograms.
659 (Source_Data.Other_Part): Removed, since can be computed from the
661 (Other_Part): New subprogram.
663 2009-06-24 Emmanuel Briot <briot@adacore.com>
665 * gnat_ugn.texi, prj-nmsc.adb (Suffix_Matches): A suffix can also match
666 the full base name of the file when the suffix doesn't start with a '.'.
668 2009-06-24 Vincent Celier <celier@adacore.com>
670 * prj-nmsc.adb (Check): A project declared abstract is legal if no
671 attribute Source_Dirs, Source_Files, Source_List_File or Languages is
674 2009-06-24 Robert Dewar <dewar@adacore.com>
676 * clean.adb, gnatcmd.adb, make.adb, mlib-prj.adb,
677 prj-env.adb: Minor reformatting
679 2009-06-24 Ed Falis <falis@adacore.com>
681 * s-taprop-vxworks.adb, s-osinte-vxworks.ads, s-vxwext.ads,
682 s-vxwext-kernel.adb, s-vxwext-kernel.ads, s-vxwext-rtp.adb,
683 s-tasinf-vxworks.ads, gcc-interface/Makefile.in: Add processor affinity
684 support for VxWorks SMP.
686 * gcc-interface/Make-lang.in: Update dependencies
688 2009-06-24 Emmanuel Briot <briot@adacore.com>
690 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
691 prj-nmsc.adb, prj-env.adb, prj-proc.adb (Units_Table): Removed, since
693 (Source_Data.Lang_Kind): Removed, since it duplicates information
694 already available through Language.Config.
695 (Source_Data.Compile): Removed, since information is already available
696 through the language.
697 (Is_Compilable): New subprogram.
698 (Source_Data.Dependency): Removed, since already available through
700 (Source_Data.Object_Exist, Object_Linked): Removed since available
701 through the language already.
702 (Unit_Data.File_Names): Is now also set in multi_language mode, to
703 bring the two modes closer in the resulting data structures.
704 (Source_Data.Unit): Now a direct pointer to the unit data, rather than
705 just the name that would point into a hash table.
706 (Get_Language_From_Name): New subprogram.
708 2009-06-24 Javier Miranda <miranda@adacore.com>
710 * exp_ch4.adb (Expand_N_Type_Conversion): Handle entities that are
711 visible through limited-with context clauses. In addition, avoid an
712 extra tag check that is not required when the class-wide
713 designated types of the operand and target types are
715 (Tagged_Membership): Handle entities from the limited view.
717 2009-06-24 Emmanuel Briot <briot@adacore.com>
719 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.ads, clean.adb,
720 prj-nmsc.adb, prj-env.adb (File_Name_Data): removed
721 (Spec_Or_Body): now a subtype of Source_Kind, to avoid using two
722 different vocabularies for similar concepts (Impl/Body_Part and
724 (Unit_Data): now points directly to a Source_Id, rather than duplicating
725 some of the information in File_Name_Data. This also saves a bit of
726 memory. However, since we are now using a pointer we need to test
727 for null explicitly in several places of the code
729 2009-06-24 Javier Miranda <miranda@adacore.com>
731 * exp_ch4.adb (Expand_N_Type_Conversion): return immediately
732 from processing the type conversion when the node is
733 replaced by an N_Raise_Program_Error node.
735 2009-06-24 Hristian Kirtchev <kirtchev@adacore.com>
737 * sem_ch6.adb (Designates_From_With_Type): New routine.
738 (Process_Formals): Since anonymous access types are no longer flagged
739 as from with types, traverse the designated type to determine whether
740 it is coming from a limited view.
742 * sem_res.adb: Remove with and use clauses for Sem_Ch10.
743 (Full_Designated_Type): Use Available_View to extract the non-limited /
746 2009-06-24 Robert Dewar <dewar@adacore.com>
748 * exp_ch6.adb: Minor reformatting
750 * layout.adb: Minor reformatting
752 * make.adb: Minor reformatting
754 2009-06-24 Thomas Quinot <quinot@adacore.com>
756 * sem_ch10.adb: Minor code reorganization.
758 2009-06-24 Eric Botcazou <ebotcazou@adacore.com>
760 * ttypes.ads: Minor editing.
762 2009-06-24 Robert Dewar <dewar@adacore.com>
764 * exp_ch6.adb (Expand_Actuals): Use Is_Volatile, not Treat_As_Volatile
765 in deciding to do call-by-copy code.
767 2009-06-24 Vincent Celier <celier@adacore.com>
769 * make.adb (Gnatmake): To decide if an executable should be rebuilt,
770 check if an externally built library file is more current than the
773 2009-06-23 Olivier Hainque <hainque@adacore.com>
775 * gcc-interface/utils.c (handle_vector_size_attribute): Import from
776 c-common.c and populate in gnat_internal_attribute_table.
778 2009-06-23 Ed Schonberg <schonberg@adacore.com>
780 * sem_res.adb (Valid_Conversion, Full_Designated_Type): Use
781 Available_View only when designated type of an anonymous access type
784 2009-06-23 Robert Dewar <dewar@adacore.com>
786 * sem_ch10.adb: Minor reformatting
788 * ali.ads: Mino reformatting.
790 * gnat1drv.adb (Adjust_Global_Switches): New procedure (take care of
791 turning off inlining if ASIS mode active).
793 * switch-c.adb: Remove fiddling with Inspector_Mode and ASIS_Mode
794 This belongs in gnat1drv.adb after switches are scanned.
796 2009-06-23 Hristian Kirtchev <kirtchev@adacore.com>
798 * sem_attr.adb: Add with and use clauses for Sem_Ch10.
799 (Check_Not_Incomplete_Type): Minor reformatting. Retrieve the root type
800 when dealing with class-wide types. Detect a legal shadow entity and
801 retrieve its non-limited view.
803 * sem_ch10.adb (Has_With_Clause): Move the spec and body of the
804 subprogram to top package level from Intall_Limited_Withed_Unit.
805 (Install_Limited_Withed_Unit): Remove spec and body of Has_With_Clause.
806 Add check which prevents the installation of a limited view if the
807 non-limited view is already visible through a with clause.
808 (Is_Legal_Shadow_Entity_In_Body): New routine. Detect a residual, but
809 legal shadow entity which may occur in subprogram formals of anonymous
812 * sem_ch10.ads (Is_Legal_Shadow_Entity_In_Body): New routine.
814 * sem_ch3.adb (Access_Definition): Remove the propagation of flag
815 From_With_Type from the designated type to the generated anonymous
816 access type. Remove associated comment.
818 * sem_res.adb Add with and use clauses for Sem_Ch10.
819 (Full_Designated_Type): Detect a legal shadow entity and retrieve its
820 non-limited view. Since the shadow entity may replace a regular
821 incomplete type, return the available full view.
823 2009-06-23 Ed Schonberg <schonberg@adacore.com>
825 * sem_ch10.adb (Remove_Limited_With_Clause): Clean up code that handles
826 incomplete type declarations. Previous code was potentially quadratic
827 in the number of visible declarations in any package appearing in a
830 2009-06-23 Robert Dewar <dewar@adacore.com>
832 * prj-conf.ads, prj-part.adb, prj-proc.adb, prj-proc.ads, sem_ch8.adb,
833 xref_lib.adb: Minor reformatting
835 2009-06-23 Robert Dewar <dewar@adacore.com>
837 * a-stzhas.adb: Provide dummy body to avoid build problems with old
838 versions which did have a body for this unit.
840 2009-06-23 Vincent Celier <celier@adacore.com>
842 * prj-attr.adb: Attribute names Initial_Required_Switches and
843 Final_Required_Switches changed to Leading_Required_Switches and
844 Trailing_Required_Switches.
846 * prj-nmsc.adb (Process_Compiler): Attribute names
847 Initial_Required_Switches and Final_Required_Switches changed to
848 Leading_Required_Switches and Trailing_Required_Switches.
850 * prj.ads (Language_Config): Component Initial_Required_Switches and
851 Final_Required_Switches changed to Leading_Required_Switches and
852 Trailing_Required_Switches.
854 * snames.ads-tmpl: Remove standard names Initial_Required_Switches and
855 Final_Required_Switches; add standard names Leading_Required_Switches
856 and Trailing_Required_Switches.
858 2009-06-23 Thomas Quinot <quinot@adacore.com>
860 * prj-conf.adb: Minor reformatting
862 * xref_lib.adb: Minor cleanup
864 2009-06-23 Emmanuel Briot <briot@adacore.com>
866 * prj-proc.adb, prj-proc.ads, prj-nmsc.adb, prj-nmsc.ads, prj-conf.adb,
867 prj-conf.ads (Check_Configuration): New parameter
868 Compiler_Driver_Mandatory.
870 2009-06-23 Ed Schonberg <schonberg@adacore.com>
872 * sem_ch10.adb (Analyze_With_Clause): If a subprogram instance in the
873 context of the current unit has an inline pragma, the instance is not
874 rewritten as the declaration of the package wrapper. Handle both
875 possibilities when retrieving the visible subprogram that renames the
876 instantiation itself.
878 2009-06-23 Javier Miranda <miranda@adacore.com>
880 * exp_ch4.adb (Displace_Allocator_Pointer, Expand_N_Allocator): Handle
881 designated types referencing entities from the limited view.
883 2009-06-23 Robert Dewar <dewar@adacore.com>
885 * s-strhas.adb, s-strhas.ads: Restrict to 32-bit modular types
887 * s-imgdec.adb (Set_Decimal_Digits): Fix error of too many digits for
890 * prj-conf.ads: Minor reformatting
892 * prj-conf.adb: Minor reformatting
894 2009-06-23 Vasiliy Fofanov <fofanov@adacore.com>
896 * g-debpoo.adb (Dump_Gnatmem): Output dummy timestamps for allocations
897 to correspond to the log format that gnatmem now expects.
899 2009-06-23 Vincent Celier <celier@adacore.com>
901 * prj-attr.adb: New attributes Initial_Required_Switches,
902 Final_Required_Switches and Object_File_Switches
904 * prj-nmsc.adb (Process_Compiler): Process new attributes
905 Name_Final_Required_Switches, Name_Initial_Required_Switches and
906 Name_Object_File_Switches.
908 * prj.ads (Language_Config): New component
909 Compiler_Initial_Required_Switches (replace Compiler_Required_Switches),
910 Compiler_Final_Required_Switches and Object_File_Switches.
912 * snames.ads-tmpl: New standard names Initial_Required_Switches,
913 Final_Required_Switches and Object_File_Switches
915 2009-06-23 Pascal Obry <obry@adacore.com>
917 * s-strhas.adb, s-strhas.ads: Minor reformatting.
919 2009-06-23 Ed Schonberg <schonberg@adacore.com>
921 * sem_ch10.adb (Install_Limited_Withed_Unit): a null procedure does
922 not indicate that the enclosing unit needs a body.
924 2009-06-23 Emmanuel Briot <briot@adacore.com>
926 * prj-conf.ads, prj-conf.adb: New files part of the project manager.
928 2009-06-23 Ed Schonberg <schonberg@adacore.com>
930 * sem_ch3.adb (Derive_Subprogram): If the inherited subprogram is a
931 primitive equality include it with its source name even if the
932 operation is currently invisible, to make sure that the corresponding
933 slot in the dispatch table is reserved for the internal equality
934 subsequently generated during expansion.
936 2009-06-23 Matthew Gingell <gingell@adacore.com>
938 * Makefile.rtl, a-stwiha.adb: Add a-stwiha.adb back.
940 2009-06-22 Jose Ruiz <ruiz@adacore.com>
942 * sysdep.c (__gnat_localtime_tzoff for RTX):
943 SystemTimeToTzSpecificLocalTime is not supported by RTX. Use
944 GetTimeZoneInformation instead.
946 2009-06-22 Robert Dewar <dewar@adacore.com>
948 * sem_res.adb (Check_No_Direct_Boolean_Operators): New procedure
950 2009-06-22 Ed Schonberg <schonberg@adacore.com>
952 * sem_ch12.adb (Collect_Previous_Instances): Do not collect
953 instantiations declared in a previous generic package body.
955 2009-06-22 Robert Dewar <dewar@adacore.com>
957 * gnat_rm.texi: Add doc that X=True and X=False is allowed for the
958 restriction No_Direct_Boolean_Operators.
960 2009-06-22 Thomas Quinot <quinot@adacore.com>
962 * bindusg.adb: Minor fixes to gnatbind usage message
964 * sem_eval.adb: Minor reformatting
966 2009-06-22 Javier Miranda <miranda@adacore.com>
968 * sem_ch3.adb (Analyze_Object_Declaration, Freeze_Entity): Move to the
969 freezing point the check on the use of abstract types in object
970 declarations. Done to allow the declaration of C++ imported variables
971 or constants whose type corresponds with an imported C++ classes for
972 which the constructor is not imported.
974 2009-06-22 Thomas Quinot <quinot@adacore.com>
976 * sem_ch6.adb: Minor reformatting
978 2009-06-22 Ed Schonberg <schonberg@adacore.com>
980 * exp_ch3.adb (Build_Initialization_Call): If a discriminated record
981 component is constrained with an expression rather than with a
982 discriminant of the enclosing type, use that expression when building
983 the call to default-initialize the component, when the call is part of
984 an aggregate with box initialization.
986 2009-06-22 Ed Schonberg <schonberg@adacore.com>
988 * sem_ch6.adb (Check_Overriding_Indicator): Clean up code, make warning
989 unconditional rather than a style check, because a formal name out of
992 2009-06-22 Vincent Celier <celier@adacore.com>
994 * prj-nmsc.adb (Locate_Directory): Indicate the project name when
995 creating a directory automatically.
997 2009-06-22 Eric Botcazou <ebotcazou@adacore.com>
999 * sem_ch3.adb (Create_Constrained_Components): For a subtype of an
1000 untagged derived type, add a hidden component for every constrained
1001 discriminant of the parent type to keep record layout consistent.
1003 2009-06-22 Thomas Quinot <quinot@adacore.com>
1005 * exp_ch3.adb: Minor code reorganization (avoid an unnecessary tree
1008 2009-06-22 Matthew Gingell <gingell@adacore.com>
1010 * a-stzhas.adb, a-stwiha.adb, impunit.adb, a-swbwha.adb, a-shcain.adb,
1011 s-htable.adb, a-szuzha.adb, a-stunha.adb, a-stboha.adb, a-strhas.adb,
1012 g-spitbo.adb, s-strhas.adb, a-szbzha.adb, s-strhas.ads, Makefile.rtl,
1013 a-swuwha.adb: New unit System.String_Hash.
1014 Refactor redundant cut and pasted hash functions with instances of a
1015 new generic hash function.
1016 Implement a new string hashing algorithm which appears in testing to
1017 be move effective than to previous approach.
1019 2009-06-22 Ed Falis <falis@adacore.com>
1021 * sysdep.c: remove include for nfsLib.h and an NFS specific error
1022 message for VxWorks 653 vThreads: not supported by the OS.
1024 * gsocket.h: disable sockets for VxWorks 653 vThreads.
1026 2009-06-22 Robert Dewar <dewar@adacore.com>
1028 * sem_ch6.adb: Add ??? comment for bad use of Style_Check
1030 2009-06-22 Robert Dewar <dewar@adacore.com>
1032 * sinput.adb, sinput.ads (Expr_First_Char, Expr_Last_Char): Replaced
1035 * freeze.adb: Minor comment updates
1037 * s-valrea.adb (Bad_Based_Value): New procedure
1038 (Scan_Real): Raise exceptions with messages
1040 2009-06-22 Matthew Gingell <gingell@adacore.com>
1042 * adaint.h: Complete previous change.
1044 2009-06-22 Thomas Quinot <quinot@adacore.com>
1046 * exp_ch7.ads, exp_ch3.adb: Minor reformatting
1048 2009-06-22 Ed Schonberg <schonberg@adacore.com>
1050 * sem_ch6.adb (Check_Overriding_Indicator): When style checks are
1051 enabled, emit warning when a non-controlling argument of the overriding
1052 operation appears out of place vis-a-vis of the formal of the
1053 overridden operation.
1055 2009-06-22 Vincent Celier <celier@adacore.com>
1057 * gnatcmd.adb (Check_Files): Close temporary files after all file names
1058 have been written into it.
1060 2009-06-22 Matthew Gingell <gingell@adacore.com>
1062 * adaint.c, adaint.h, cstreams.c: Call stat64 on platforms where it is
1065 2009-06-22 Thomas Quinot <quinot@adacore.com>
1067 * sem_disp.adb (Check_Direct_Call): Handle the case where the full
1068 view of the root type is visible at the point of the call.
1070 2009-06-22 Pat Rogers <rogers@adacore.com>
1072 * gnat_ugn.texi: Revised a sentence to correct a minor grammar error.
1074 2009-06-22 Jerome Lambourg <lambourg@adacore.com>
1076 * freeze.adb: Add comments.
1078 2009-06-21 Thomas Quinot <quinot@adacore.com>
1080 * exp_ch3.adb, exp_prag.adb, exp_util.adb, exp_util.ads, freeze.adb,
1081 sem_ch13.adb, sem_elab.adb (Exp_Prag.Expand_Pragma_Import_Or_Interface):
1082 Factor out code to new subprogram...
1083 (Exp_Util.Find_Init_Call): New shared routine to find the init proc call
1084 for a default initialized variable.
1085 (Freeze.Check_Address_Clause): Do not reset Has_Delayed_Freeze on an
1086 entity that has an associated freeze node.
1087 (Sem_Ch13.Analyze_Attribute_Definition_Clause, case Address):
1088 If there is an init call for the object, defer it to the object freeze
1090 (Check_Elab_Call.Find_Init_Call): Rename to Check_Init_Call, to avoid
1091 name clash with new subprogram introduced in Exp_Util.
1093 2009-06-21 Robert Dewar <dewar@adacore.com>
1095 * einfo.ads: Minor reformatting
1097 2009-06-21 Ed Falis <falis@adacore.com>
1099 * env.c (__gnat_environ): return NULL for vThreads - unimplemented
1101 2009-06-21 Eric Botcazou <ebotcazou@adacore.com>
1103 * einfo.ads: Update comments.
1105 2009-06-21 Hristian Kirtchev <kirtchev@adacore.com>
1107 * sem_disp.adb (Check_Direct_Call): New routine. Dispatching calls
1108 where the controlling formal is of private class-wide type whose
1109 completion is a synchronized type can be converted into direct calls.
1111 2009-06-21 Vincent Celier <celier@adacore.com>
1113 * gnatcmd.adb (Check_Files): When all sources of the project are to be
1114 indicated to gnatcheck, gnatpp or gnatmetric, always specify the list
1115 of sources using -files=, so that the distinction can be made by the
1116 tool of a call with no source (to display the usage) from a call with
1117 a project file that contains no source.
1119 2009-06-21 Jerome Lambourg <lambourg@adacore.com>
1121 * exp_ch3.adb (Build_Array_Init_Proc): Do not build the init proc in
1122 case of VM convention arrays.
1124 2009-06-20 Robert Dewar <dewar@adacore.com>
1126 * a-nudira.adb: Minor reformatting
1128 2009-06-20 Ed Schonberg <schonberg@adacore.com>
1130 * exp_ch3.adb (Build_Record_Init_Proc): When copying initial
1131 expressions (possibly from a parent type) indicate that the scope of
1132 the new itypes is the initialization procedure being built.
1134 2009-06-20 Robert Dewar <dewar@adacore.com>
1136 * a-nudira.adb (Fits_In_32_Bits): New name (inverted sense) for
1137 Needs_64, and now computed without anomolies for some dynamic types.
1139 2009-06-20 Thomas Quinot <quinot@adacore.com>
1141 * sem_prag.adb: Minor reformatting
1143 * exp_disp.ads: Minor reformatting
1145 2009-06-20 Ed Schonberg <schonberg@adacore.com>
1147 * sem_ch3.adb (Is_OK_For_Limited_Init): An unchecked conversion of a
1148 function call is a legal expression to initialize a limited object.
1150 * exp_ch3.adb: Rename various freeze operations that perform expansion
1151 actions, to prevent confusion with subprograms in the freeze package.
1153 2009-06-20 Ed Schonberg <schonberg@adacore.com>
1155 * sem.adb (Walk_Library_Units): Check instantiations first.
1157 * sem_ch6.adb (Analyze_Subprogram_Declaration): Mark a subprogram as a
1158 private primitive if it is a function with a controlling result that is
1159 a type extension with progenitors.
1161 * exp_ch9.adb (Build_Wrapper_Spec, Build_Wrapper_Body): Handle properly
1162 a primitive operation of a synchronized tagged type that has a
1165 2009-06-20 Thomas Quinot <quinot@adacore.com>
1167 * einfo.ads: Fix typo.
1169 2009-06-20 Ed Falis <falis@adacore.com>
1171 * s-vxwext.ads, s-vxwext-kernel.adb: Complete previous change.
1173 2009-06-19 Eric Botcazou <ebotcazou@adacore.com>
1175 * gcc-interface/trans.c (emit_check): Do not wrap up the result
1177 (protect_multiple_eval): Always protect complex expressions.
1179 2009-06-19 Emmanuel Briot <briot@adacore.com>
1181 * prj-ext.adb, makeutl.adb, makeutl.ads (Executable_Prefix_Path): Now
1182 make sure we always return a name ending with a path separator.
1184 2009-06-19 Javier Miranda <miranda@adacore.com>
1186 * sem_ch12.adb (Instantiate_Package_Body, Instantiate_Subprogram_Body):
1187 Save and restore the visibility of the parent when installed.
1189 2009-06-19 Jose Ruiz <ruiz@adacore.com>
1191 * s-tposen.ads (Protection_Entry): Replace fields L, Ceiling, and Owner
1192 by Common which contains all these fields.
1194 * s-tposen.adb (Initialize_Protection_Entry, Lock_Entry,
1195 Lock_Read_Only_Entry, Timed_Protected_Single_Entry_Call, Unlock_Entry):
1196 Remove code duplication in this package by means of calling the
1197 equivalent code in s-taprob.
1199 2009-06-19 Robert Dewar <dewar@adacore.com>
1201 * a-einuoc.ads: Minor reformatting
1203 2009-06-19 Ed Falis <falis@adacore.com>
1205 * a-einuoc.ads, s-osinte-vxworks.ads, s-vxwext.ads, s-vxwext-kernel.adb,
1206 s-vxwext-kernel.ads, s-vxwext-rtp.ads: Code clean up.
1208 2009-06-19 Eric Botcazou <ebotcazou@adacore.com>
1210 * einfo.ads (Handling of Type'Size Values): Fix Object_Size values.
1212 2009-06-19 Robert Dewar <dewar@adacore.com>
1214 * a-nudira.adb (Need_64): Handle negative ranges and also dynamic
1217 * checks.adb (Determine_Range): Move the test for generic types later.
1219 * sem_eval.adb (Compile_Time_Compare): Improve circuitry to catch more
1221 (Eval_Relational_Op): Fold more cases including string compares
1223 * sem_util.ads, sem_util.adb (References_Generic_Formal_Type): New
1226 2009-06-19 Robert Dewar <dewar@adacore.com>
1228 * sem_type.ads, sem_ch12.adb: Minor reformatting
1230 * s-wchcnv.adb (UTF_32_To_Char_Sequence): Handle invalid data properly
1232 2009-06-19 Ed Schonberg <schonberg@adacore.com>
1234 * exp_ch9.adb (Build_Wrapper_Spec): Handle properly an overridden
1235 primitive operation of a rivate extension whose controlling argument
1236 is an out parameter.
1238 * sem.adb (Walk_Library_Units): exclude generic package declarations
1241 2009-06-19 Thomas Quinot <quinot@adacore.com>
1243 * i-vxwoio.ads: Add comments
1245 2009-06-19 Thomas Quinot <quinot@adacore.com>
1247 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
1248 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
1249 g-socthi.adb, g-socthi.ads, g-socket.adb, g-sothco.ads
1250 (GNAT.Sockets.Thin.C_Ioctl): Rename to Socket_Ioctl.
1251 (GNAT.Sockets.Thin.Socket_Ioctl): Use new function
1252 Thin_Common.Socket_Ioctl.
1253 (GNAT.Sockets.Thin_Common.Socket_Ioctl): Binding to new C wrapper
1254 __gnat_socket_ioctl.
1255 (__gnat_socket_ioctl): Wrapper for ioctl(2) called with a single int*
1256 argument after the file descriptor and request code.
1258 2009-06-19 Robert Dewar <dewar@adacore.com>
1260 * checks.adb: Minor reformatting
1262 2009-06-19 Jose Ruiz <ruiz@adacore.com>
1264 * env.c (__gnat_environ): RTX does not support this functionality.
1266 2009-06-19 Ed Schonberg <schonberg@adacore.com>
1268 * sem.adb (Walk_Library_Items): Include bodies in the list of units to
1269 traverse, to account for front-end inlining and instantiations in a
1270 spec or in the main unit.
1272 2009-06-19 Robert Dewar <dewar@adacore.com>
1274 * checks.adb (Determine_Range): Do not attempt to get range of generic
1277 2009-06-19 Sergey Rybin <rybin@adacore.com>
1279 * gnat_ugn.texi, vms_data.ads: Add the documentation for the new
1280 gnatmetric option for generating the schema file for gnatmetric XML
1281 output. Add corresponding VMS qualifier.
1283 2009-06-19 Robert Dewar <dewar@adacore.com>
1285 * g-cgi.adb: Minor reformatting
1287 2009-06-19 Eric Botcazou <ebotcazou@adacore.com>
1289 * s-intman-solaris.adb (Notify_Exception): Do not discriminate on the
1290 signal code for SIGFPE and raise Program_Error for SIGILL.
1292 * s-osinte-solaris.ads: Remove signal code constants for SIGFPE.
1294 2009-06-19 Ed Schonberg <schonberg@adacore.com>
1296 * sem_ch8.adb (Nvis_Messages): Do not list an entity declared in a
1297 generic package if there is a visibility candidate that is declared in
1300 2009-06-18 Olivier Hainque <hainque@adacore.com>
1302 * system-aix64.ads: New file.
1303 * gcc-interface/Makefile.in (aix LIBGNAT_TARGET_PAIRS): Use the
1304 64bit system.ads for ppc64 multilib variants.
1306 2009-06-16 Robert Dewar <dewar@adacore.com>
1307 Olivier Hainque <hainque@adacore.com>
1309 Relax constraints on Machine_Attribute argument types:
1310 * sem_prag.adb (Check_Arg_Is_Static_Expression): Allow for
1312 (Analyze_Attribute, case Machine_Attribute): Allow any type for arg 3.
1313 * gcc-interface/decl.c (prepend_attributes): Accept static
1314 expressions of any type as attribute arguments, not only string
1316 * gnat_rm.texi (pragma Machine_Attribute section): Adjust to reflect
1317 the relaxation of the restriction on the Info argument type.
1319 2009-06-13 Aldy Hernandez <aldyh@redhat.com>
1321 * gcc-interface/utils.c (record_builtin_type): Pass location
1322 argument to build_decl.
1323 (create_type_stub_decl): Same.
1324 (create_type_decl): Same.
1325 (create_var_decl_1): Same.
1326 (create_field_decl): Same.
1327 (create_param_decl): Same.
1328 (create_label_decl): Same.
1329 (create_subprog_decl): Same.
1330 * gcc-interface/decl.c (gnat_to_gnu_entity): Same.
1331 * gcc-interface/trans.c (Case_Statement_to_gnu): Pass location
1332 argument to create_artificial_label.
1333 (Loop_Statement_to_gnu): Same.
1334 (Subprogram_Body_to_gnu): Same.
1335 (gnat_gimplify_stmt): Same.
1337 2009-06-11 Richard Henderson <rth@redhat.com>
1339 * gcc-interface/misc.c (gnat_handle_option): Rename OPT_gdwarf_ to
1342 2009-06-11 Ed Schonberg <schonberg@adacore.com>
1344 * sem_attr.adb (Resolve_Attribute, case 'access): Add missing
1345 accessibiliy check on access_to_subprogram in the context of an
1346 anonymous access that is not an access parameter.
1348 2009-06-11 Eric Botcazou <ebotcazou@adacore.com>
1350 * tracebak.c (i386 section): Define IS_BAD_PTR on Solaris.
1352 2009-06-11 Quentin Ochem <ochem@adacore.com>
1354 * sem_warn.adb, scng.adb, sfn_scan.adb, freeze.adb: Add CODEFIX
1355 comments for message handled by GPS.
1357 2009-06-11 Matthew Gingell <gingell@adacore.com>
1359 * adaint.c: Use fopen64 instead of fopen on platforms where we know
1362 2009-06-11 Pascal Obry <obry@adacore.com>
1364 * g-cgi.ads: Fix comment typo.
1366 * g-cgi.adb: Properly decode "+" in CGI parameters as spaces.
1368 2009-06-10 Eric Botcazou <ebotcazou@adacore.com>
1370 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Use
1371 a reference to the original type for the type of the field of the
1373 (maybe_pad_type): Likewise.
1375 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Factor
1376 common predicate and remove redundant setting of TYPE_BY_REFERENCE_P.
1377 Pass correctly typed arguments to create_field_decl.
1378 <E_Record_Subtype>: Set BLKmode for tagged and limited types in the
1379 case of contrained discriminants as well. Use the padded base type
1380 in the other case as well. Rename temporary variable. Tweak test.
1381 Factor common access pattern. Set GNU_SIZE only once.
1383 2009-06-09 Olivier Hainque <hainque@adacore.com>
1385 * gcc-interface/utils2.c (build_call_alloc_dealloc_proc): New
1386 helper for build_call_alloc_dealloc with arguments to be interpreted
1387 identically. Process the case where a GNAT_PROC to call is provided.
1388 (maybe_wrap_malloc): New helper for build_call_alloc_dealloc, to build
1389 and return an allocator for DATA_SIZE bytes aimed at containing a
1390 DATA_TYPE object, using the default __gnat_malloc allocator. Honor
1391 DATA_TYPE alignments greater than what the latter offers.
1392 (maybe_wrap_free): New helper for build_call_alloc_dealloc, to
1393 release a DATA_TYPE object designated by DATA_PTR using the
1394 __gnat_free entry point.
1395 (build_call_alloc_dealloc): Expect object data type instead of naked
1396 alignment constraint. Use the new helpers.
1397 (build_allocator): Remove special processing for the super-aligned
1398 case, now handled by build_call_alloc_dealloc. Pass data
1399 type instead of the former alignment argument, as expected by the new
1401 * gcc-interface/gigi.h (build_call_alloc_dealloc): Adjust prototype
1403 * gcc-interface/trans.c (gnat_to_gnu) <case N_Free_Statement>:
1404 Remove special processing for the super-aligned case, now handled
1405 by build_call_alloc_dealloc. Pass data type instead of the former
1406 alignment argument, as expected by the new interface.
1408 2009-06-08 Alexandre Oliva <aoliva@redhat.com>
1410 * lib-writ.adb (flag_compare_debug): Import.
1411 (Write_ALI): Skip during -fcompare-debug-second.
1413 2009-06-03 Eric Botcazou <ebotcazou@adacore.com>
1415 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: When
1416 adjusting the discriminant nodes in an extension, use the full view
1417 of the parent subtype if it is of a private kind.
1419 2009-06-03 Eric Botcazou <ebotcazou@adacore.com>
1421 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Add the
1422 _Parent field, if any, to the record before adding the other fields.
1423 <E_Record_Subtype>: Put the _Controller field before the other fields
1424 except for the _Tag or _Parent fields.
1425 (components_to_record): Likewise. Retrieve the _Parent field from the
1428 2009-06-03 Eric Botcazou <ebotcazou@adacore.com>
1430 * gcc-interface/decl.c (substitution_list): Rename to build_subst_list,
1431 remove unused parameter and simplify.
1432 (gnat_to_gnu_entity) <E_Record_Type>: Do not set TYPE_FIELDS. Factor
1433 common predicate. Rewrite loop for clarity. Use GNU_TYPE directly
1434 as context for all discriminants. Fix formatting nits.
1435 <E_Record_Subtype>: Add cosmetic 'break'. Test Has_Discriminants
1436 before Discriminant_Constraint. Adjust for above renaming. Do not
1437 set GNU_TYPE more than once.
1438 (elaborate_entity): Test Has_Discriminants on the entity and use
1439 Implementation_Base_Type.
1440 (components_to_record): Rename component_list to gnat_component_list.
1441 Retrieve the _Parent field from the list. Fix nits in comments.
1442 Clarify logic in loop. Pass correct arguments to create_field_decl.
1444 2009-06-02 Eric Botcazou <ebotcazou@adacore.com>
1446 * gcc-interface/Make-lang.in: Fix formatting.
1448 2009-06-01 Olivier Hainque <hainque@adacore.com>
1449 Eric Botcazou <ebotcazou@adacore.com>
1451 * gcc-interface/utils.c (convert) <CONSTRUCTOR case>: When converting
1452 to the packable version of the type, clear TREE_STATIC/TREE_CONSTANT
1453 on the result if at least one of the input fields couldn't be output
1454 as a static constant any more.
1456 2009-06-01 Olivier Hainque <hainque@adacore.com>
1457 Eric Botcazou <ebotcazou@adacore.com>
1459 * gcc-interface/utils2.c (gnat_build_constructor): Factor
1460 out code. Use initializer_constant_valid_for_bitfield_p and
1461 CONSTRUCTOR_BITFIELD_P for bit-fields.
1463 2009-05-26 Ian Lance Taylor <iant@google.com>
1465 * gcc-interface/Makefile.in (COMPILER): Define.
1466 (COMPILER_FLAGS, ALL_COMPILERFLAGS): Define.
1467 (.c.o, cio.o, init.o, initialize.o, targext.o): Use $(COMPILER).
1468 (seh_init.o, tracebak.o): Likewise.
1469 * gcc-interface/Make-lang.in (ada/targext.o): Likewise.
1470 (ada/cio.o, ada/init.o, ada/initialize.o, ada/raise.o): Likewise.
1471 (ada/tracebak.o, ada/cuintp.o, ada/decl.o, ada/misc.o): Likewise.
1472 (ada/targtyps.o, ada/trans.o, ada/utils.o): Likewise.
1473 (ada/utils2.o): Likewise.
1475 2009-05-24 Olivier Hainque <hainque@adacore.com>
1477 * switch.adb (Is_Internal_GCC_Switch, Switch_Last): Bodies of ...
1478 * switch.ads (Is_Internal_GCC_Switch, Switch_Last): New functions.
1479 Add -auxbase variants to the list of recognized internal switches.
1480 * back_end.adb (Scan_Back_End_Switches): Use the new functions and
1482 * lib.ads: Make comment on internal GCC switches more general.
1483 * gcc-interface/lang-specs.h (specs for Ada): Pass -auxbase variants
1486 2009-05-23 Eric Botcazou <ebotcazou@adacore.com>
1488 * gcc-interface/misc.c (gnat_get_subrange_bounds): Fix thinko.
1490 2009-05-23 Eric Botcazou <ebotcazou@adacore.com>
1492 * gcc-interface/decl.c (set_rm_size): Bypass the check for packed array
1495 2009-05-23 Eric Botcazou <ebotcazou@adacore.com>
1497 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not modify the
1498 original type because of the alignment when there is an address clause.
1500 2009-05-20 Eric Botcazou <ebotcazou@adacore.com>
1502 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: When
1503 discriminants affect the shape of the subtype, retrieve the GCC type
1504 directly from the original field if the GNAT types for the field and
1505 the original field are the same.
1507 2009-05-15 Eric Botcazou <ebotcazou@adacore.com>
1509 * gcc-interface/ada-tree.h (TYPE_GCC_MIN_VALUE, TYPE_GCC_MAX_VALUE):
1511 (TYPE_RM_VALUES): Likewise.
1512 (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUES.
1513 (SET_TYPE_RM_SIZE): New macro.
1514 (TYPE_RM_MIN_VALUE, TYPE_RM_MAX_VALUE): Likewise.
1515 (SET_TYPE_RM_SIZE, SET_TYPE_RM_MAX_VALUE): Likewise.
1516 (TYPE_MIN_VALUE, TYPE_MAX_VALUE): Redefine.
1517 * gcc-interface/gigi.h (create_range_type): Declare.
1518 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>
1519 Use SET_TYPE_RM_MAX_VALUE to set the upper bound on the UMT type.
1520 <E_Signed_Integer_Subtype>: Build a regular integer type first and
1521 then set the RM bounds. Use SET_TYPE_RM_SIZE to set the RM size.
1522 <E_Floating_Point_Subtype>: Build a regular floating-point type first
1523 and then set the RM bounds.
1524 <E_Array_Type>: Use create_range_type instead of build_range_type.
1525 <E_Array_Subtype>: Build a regular integer type first and then set
1526 the RM bounds for the extra subtype.
1527 <E_String_Literal_Subtype>: Use create_range_type instead of
1529 <all>: Set the RM bounds for enumeration types and the GCC bounds for
1530 floating-point types.
1531 (set_rm_size): Use SET_TYPE_RM_SIZE to set the RM size.
1532 (make_type_from_size) <INTEGER_TYPE>: Use SET_TYPE_RM_{MIN,MAX}_VALUE
1533 to set the bounds. Use SET_TYPE_RM_SIZE to set the RM size.
1534 (substitute_in_type) <INTEGER_TYPE>: Deal with GCC bounds for domain
1535 types and with RM bounds for subtypes.
1536 * gcc-interface/misc.c (LANG_HOOKS_GET_SUBRANGE_BOUNDS): Define.
1537 (gnat_print_type) <REAL_TYPE>: New case.
1538 <ENUMERAL_TYPE>: Fall through to above case.
1539 (gnat_get_subrange_bounds): New function.
1540 * gcc-interface/trans.c (add_decl_expr): Mark the trees rooted as
1541 TYPE_RM_MIN_VALUE and TYPE_RM_MAX_VALUE, if any.
1542 * gcc-interface/utils.c (gnat_init_decl_processing): Use precision 8
1543 for booleans. Adjust and use SET_TYPE_RM_SIZE to set the RM size.
1544 (create_range_type): New function.
1545 (create_param_decl): Build a regular integer type first and then set
1546 the RM bounds for the extra subtype.
1547 (unchecked_convert): Remove kludge for 'Valid.
1548 * gcc-interface/utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Convert
1549 the index to sizetype instead of TYPE_DOMAIN.
1551 2009-05-14 Eric Botcazou <ebotcazou@adacore.com>
1553 * gcc-interface/decl.c (elaborate_expression_1): Remove GNAT_EXPR
1554 parameter and move check for static expression to...
1555 (elaborate_expression): ...here. Adjust call to above function.
1556 (gnat_to_gnu_entity): Likewise for all calls. Use correct arguments
1557 in calls to elaborate_expression.
1558 (elaborate_entity): Likewise.
1559 (substitution_list): Likewise.
1560 (maybe_variable): Fix formatting.
1561 (substitute_in_type) <REAL_TYPE>: Merge with INTEGER_TYPE case and add
1563 * gcc-interface/trans.c (protect_multiple_eval): Minor cleanup.
1565 2009-05-07 Arnaud Charlet <charlet@adacore.com>
1567 * gcc-interface/Make-lang.in: Update dependencies.
1569 2009-05-06 Laurent GUERBY <laurent@guerby.net>
1571 * s-linux.ads, s-linux-alpha.ads, s-linux-hppa.ads, osinte-linux.ads:
1572 Define sa_handler_pos.
1573 * s-osinte-linux.ads: Use it.
1574 * s-linux-mipsel.ads: New.
1575 * system-linux-mips64el.ads: New.
1576 * gcc-interface/Makefile.in: Multilib handling for mipsel-linux and
1579 2009-05-06 Arnaud Charlet <charlet@adacore.com>
1581 * exp_ch5.adb, exp_util.adb, exp_attr.adb, sem_util.adb, sem_res.adb,
1582 targparm.adb, targparm.ads, exp_ch4.adb, exp_ch6.adb, exp_disp.adb,
1583 opt.ads, exp_aggr.adb, exp_intr.adb, sem_disp.adb, exp_ch3.adb
1584 (Tagged_Type_Expansion): New flag.
1585 Replace use of VM_Target related to tagged types expansion by
1586 Tagged_Type_Expansion, since tagged type expansion is not necessarily
1587 linked to VM targets.
1589 2009-05-06 Robert Dewar <dewar@adacore.com>
1591 * sem_attr.adb: Add processing for Standard'Compiler_Version
1593 * sinput.adb (Expr_Last_Char): Fix some copy-paste errors for paren
1595 (Expr_First_Char): Add ??? comment that paren skipping needs work
1596 (Expr_Last_Char): Add ??? comment that paren skipping needs work
1598 * exp_attr.adb: Add processing for Compiler_Version
1600 * sem_attr.adb: New attribute Compiler_Version
1602 * snames.ads-tmpl: Add entries for Compiler_Version attribute
1604 * gnat_rm.texi: Document Compiler_Version attribute
1606 2009-05-06 Robert Dewar <dewar@adacore.com>
1608 * errout.adb: Minor reformatting
1610 * scng.adb, sem_prag.adb, par-ch4.adb, sem_res.adb, par-ch6.adb,
1611 sem_ch6.adb, par-prag.adb, sem_ch8.adb, sem_warn.adb, par-util.adb,
1612 styleg.adb: Add stylized comments to error messages that are included
1613 in the codefix circuitry of IDE's such as GPS.
1615 2009-05-06 Sergey Rybin <rybin@adacore.com>
1617 * gnat_ugn.texi: For Misnamed_Identifiers rule all description of the
1618 new form of the rule parameter that allows to specify the suffix for
1619 access-to-access type names.
1621 2009-05-06 Robert Dewar <dewar@adacore.com>
1623 * sem_warn.adb (Warn_On_Useless_Assignment): Avoid false negative for
1624 out parameter assigned when exception handlers are present.
1626 * sem_ch5.adb (Analyze_Exit_Statement): Kill current value last
1627 assignments on exit.
1629 * par-ch9.adb, sem_aggr.adb, par-endh.adb, sem_res.adb, par-ch6.adb,
1630 sinput-l.adb, par-load.adb, errout.ads, sem_ch4.adb, lib-load.adb,
1631 prj-dect.adb, par-ch12.adb, sem_ch8.adb, par-util.adb, par-ch3.adb,
1632 par-tchk.adb, par-ch5.adb: This patch adds stylized comments to error
1633 messages that are included in the codefix circuitry of IDE's such as
1636 * sinput.ads, sinput.adb (Expr_First_Char): New function
1637 (Expr_Last_Char): New function
1639 2009-05-06 Sergey Rybin <rybin@adacore.com>
1641 * gnat_ugn.texi: Add subsection for Exits_From_Conditional_Loops rule
1642 Add formal definition for extra exit point metric
1644 2009-05-06 Pascal Obry <obry@adacore.com>
1646 * adaint.c: Support for setting attributes on unicode filename on
1649 2009-05-06 Robert Dewar <dewar@adacore.com>
1651 * sem_warn.adb: Minor reformatting
1653 2009-05-06 Javier Miranda <miranda@adacore.com>
1655 * sem_prag.adb (Process_Import_Or_Interface): Imported CPP types must
1656 not have discriminants or components with default expressions.
1657 (Analyze_Pragma): For pragma CPP_Class check that imported types
1658 have no discriminants and components have no default expression.
1660 * sem_aggr.adb (Resolve_Aggr_Expr): Add missing check on wrong use of
1661 class-wide types in the expression of a record component association.
1663 2009-05-06 Sergey Rybin <rybin@adacore.com>
1665 * vms_data.ads: Add qualifier for gnatmetric extra exit points metric
1667 * gnat_ugn.texi: Add description for the new extra exit points metric
1668 (gnatmetric section).
1670 2009-05-06 Robert Dewar <dewar@adacore.com>
1672 * s-fileio.adb: Minor comment update
1674 * sem_ch8.adb: Minor reformatting
1676 * exp_ch3.adb: Update comments.
1678 2009-05-06 Tristan Gingold <gingold@adacore.com>
1680 * init.c, s-osinte-darwin.ads: Reduce alternate stack size
1682 2009-05-06 Arnaud Charlet <charlet@adacore.com>
1684 * gcc-interface/Makefile.in: Update LIBGNAT_TARGET_PAIRS for Xenomai.
1685 Fix missing unit for rtp-smp runtime on both ppc and x86 vxworks
1687 * gcc-interface/Make-lang.in: Update dependencies
1689 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1691 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Revert previous
1692 change. The context clause of a generic instance declaration must be
1693 preserved until the end of the compilation, because it may have to be
1694 installed/removed repeatedly.
1695 The latest change to sem.adb ensures that the context of both spec and
1696 body of an instance is traversed before the instance itself, making
1697 this patch redundant.
1699 2009-05-06 Gary Dismukes <dismukes@adacore.com>
1701 * sem_aggr.adb: Fix typo.
1703 2009-05-06 Thomas Quinot <quinot@adacore.com>
1705 * exp_ch3.adb (Expand_N_Object_Declaration): For a controlled object
1706 declaration, do not adjust if the declaration is to be rewritten into
1709 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1711 * sem_ch8.adb (Find_Type): Reject the use of a task type in its own
1714 2009-05-06 Bob Duff <duff@adacore.com>
1716 * s-fileio.adb (File_IO_Clean_Up_Type): Make this type limited, since
1717 otherwise the compiler would be allowed to optimize away the cleanup
1720 2009-05-06 Gary Dismukes <dismukes@adacore.com>
1722 * gnat_ugn.texi: Fix typo.
1724 2009-05-06 Thomas Quinot <quinot@adacore.com>
1726 * g-debuti.adb: Minor reformatting
1728 * exp_attr.adb: Minor reformatting
1730 2009-05-06 Robert Dewar <dewar@adacore.com>
1732 * sem_aggr.adb: Minor reformatting.
1734 * g-socthi-vms.adb: Minor reformatting
1736 2009-05-06 Bob Duff <duff@adacore.com>
1738 * g-table.ads, g-table.adb, g-dyntab.ads, g-dyntab.adb:
1739 (Append_All): Add Append_All to g-table and g-dyntab, similar to table.
1741 2009-05-06 Bob Duff <duff@adacore.com>
1743 * gnat_ugn.texi, gnat_rm.texi: Add missing documentation for warnings
1746 2009-05-06 Javier Miranda <miranda@adacore.com>
1748 * sem_aggr.adb (Valid_Ancestor_Type): Add support for C++ constructors.
1749 (Resolve_Extension_Aggregate): Do not reject C++ constructors in
1750 extension aggregates.
1751 (Resolve_Record_Aggregate): Add support for C++ constructors in
1752 extension aggregates.
1754 * exp_aggr.adb (Build_Record_Aggr_Code): Add support for C++
1755 constructors in extension aggregates.
1757 2009-05-06 Robert Dewar <dewar@adacore.com>
1759 * freeze.adb (Freeze_Record_Type): Improve error msg for bad size
1762 2009-05-06 Thomas Quinot <quinot@adacore.com>
1764 * g-socthi-vms.adb (C_Recvmsg, C_Sendmsg): Convert Msg to appropriate
1765 packed type, since on OpenVMS, struct msghdr is packed.
1767 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1769 * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
1770 call returning an unconstrained composite value, create the proper
1771 subtype for it, as is done for object dclarations with unconstrained
1772 nominal subtypes. Perform this transformation regarless of whether
1773 call comes from source.
1775 2009-05-06 Robert Dewar <dewar@adacore.com>
1777 * freeze.adb (Freeze_Record_Type): Implement Implicit_Packing for
1781 Add documentation for pragma Implicit_Packing applied to record
1784 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1786 * sem.adb (Walk_Library_Items): Place all with_clauses of an
1787 instantiation on the spec, because late instance bodies may generate
1788 with_clauses for the instance body but are inserted in the instance
1791 2009-05-06 Emmanuel Briot <briot@adacore.com>
1793 * prj-nmsc.adb (Locate_Directory): Remove unused parameters, and add
1794 support for returning the directory even if it doesn't exist. This is
1795 used for the object directory, since we are always setting it to a
1796 non-null value, and we should set it to an absolute name rather than a
1797 relative name for the sake of external tools that might depend on it.
1798 (Check_Library_Attributes): When Project.Library_Dir is known, check
1799 that the directory exists.
1801 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1803 * sem_attr.adb (Check_Dereference): If the prefix of an attribute
1804 reference is an implicit dereference, do not freeze the designated type
1805 if within a default expression or when preanalyzing a pre/postcondtion.
1807 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1809 * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
1810 call returning an unconstrained composite value, create the proper
1811 subtype for it, as is done for object dclarations with unconstrained
1814 2009-05-06 Robert Dewar <dewar@adacore.com>
1816 * sem_ch13.adb (Check_Constant_Address_Clause): Minor error message
1819 * freeze.adb: Minor reformatting
1821 2009-05-06 Thomas Quinot <quinot@adacore.com>
1823 * sem_ch3.adb (Access_Type_Declaration): An access type whose
1824 designated type is a limited view from a limited with clause (flagged
1825 From_With_Type) is not itself such a limited view.
1827 2009-05-06 Emmanuel Briot <briot@adacore.com>
1829 * prj-nmsc.adb: Remove unused variable.
1831 * clean.adb, gnatcmd.adb, makeutl.ads, prj-pars.adb, prj-pars.ads,
1832 prj-proc.ads, prj.ads, switch-m.adb (Subdirs_Option): Moved to
1833 makeutl.ads, since not all users of prj.ads need this.
1835 2009-05-06 Javier Miranda <miranda@adacore.com>
1837 * exp_aggr.adb (Build_Record_Aggr_Code): Add implicit call to the C++
1838 constructor in case of aggregates whose type is a CPP_Class type.
1840 2009-05-06 Robert Dewar <dewar@adacore.com>
1842 * sem_ch13.adb: Minor comment additions
1844 * osint.adb: Minor reformatting
1846 2009-05-06 Pascal Obry <obry@adacore.com>
1848 * initialize.c: On Windows, keep full pathname to expanded command
1851 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1853 * sem_aggr.adb (Resolve_Record_Aggregate): If a defaulted component of
1854 an aggregate with box default is of a discriminated private type, do
1855 not build a subaggregate for it.
1856 A proper call to the initialization procedure is generated for it.
1858 2009-05-06 Thomas Quinot <quinot@adacore.com>
1860 * rtsfind.adb, rtsfind.ads, exp_dist.adb, exp_dist.ads
1861 (Exp_Dist.Build_TC_Call, Build_From_Any_Call, Build_To_Any_Call):
1862 Use PolyORB strings to represent Ada.Strings.Unbounded_String value;
1863 use standard array code for Standard.String.
1864 (Exp_Dist): Bump PolyORB s-parint API version to 3.
1865 (Rtsfind): New entities TA_Std_String, Unbounded_String.
1867 2009-05-06 Robert Dewar <dewar@adacore.com>
1869 * g-comlin.ads: Minor reformatting
1871 * xoscons.adb: Minor reformatting
1873 2009-05-06 Gary Dismukes <dismukes@adacore.com>
1875 * sem_aggr.adb (Resolve_Record_Aggregate): In step 5, get the
1876 Underlying_Type before retrieving the type definition for gathering
1877 components, to account for the case where the type is private.
1879 2009-05-06 Tristan Gingold <gingold@adacore.com>
1881 * g-comlin.ads: Fix minor typos (Getopt instead of Get_Opt).
1883 2009-05-06 Thomas Quinot <quinot@adacore.com>
1885 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
1886 g-socthi-vxworks.ads, g-socthi-mingw.adb g-socthi-mingw.ads,
1887 g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb
1888 (GNAT.Sockets.Thin.C_Sendmsg, GNAT.Sockets.Thin.C_Recvmsg,
1889 Windows versions): Fix incorrect base
1890 address of Iovec (it's Msg_Iov, not Msg_Iov'Address).
1891 (GNAT.Sockets.Thin.C_Sendto, GNAT.Sockets.Thin.C_Recvfrom): Use a
1892 System.Address for the To parameter instead of a Sockaddr_In_Access, to
1893 achieve independance from AF_INET family, and also to allow this
1894 parameter to be retrieved from a Msghdr for the Windows case where
1895 these routines are used to implement C_Sendmsg and C_Recvmsg.
1897 2009-05-06 Bob Duff <duff@adacore.com>
1899 * g-expect.adb, g-expect.ads: Minor reformatting
1901 * sdefault.ads: Minor comment fix
1903 * g-expect-vms.adb: Minor reformatting
1905 * table.ads, table.adb (Append_All): New convenience procedure for
1906 appending a whole array.
1908 * comperr.adb (Compiler_Abort): Mention the -gnatd.n switch in the bug
1909 box message. Call Osint.Dump_Source_File_Names to print out the file
1910 list, instead of rummaging around in various data structures.
1912 * debug.adb: New switch -gnatd.n, to print source file names as they
1915 * alloc.ads: Add parameters for Osint.File_Name_Chars.
1917 * osint.ads, osint.adb (Dump_Source_File_Names): New procedure to print
1918 out source file names during a "bug box".
1919 (Include_Dir_Default_Prefix): Use memo-izing to avoid repeated new/free.
1920 (Read_Source_File): Print out the file name, if requested via -gnatd.n.
1921 If it's not part of the runtimes, store it for later printing by
1922 Dump_Source_File_Names.
1924 2009-05-06 Javier Miranda <miranda@adacore.com>
1926 * gnat_rm.texi (CPP_Constructor): Avoid duplication of the
1927 documentation and add reference to the GNAT user guide for further
1930 2009-05-06 Javier Miranda <miranda@adacore.com>
1932 * gnat_ugn.texi: Complete documentation for CPP_Constructor and remove
1933 also wrong examples that use extension aggregates.
1935 2009-05-06 Albert Lee <lee@adacore.com>
1937 * s-oscons-tmplt.c (System.OS_Constants): Do not use special definition
1938 of Msg_Iovlen_T for VMS.
1940 2009-05-04 Laurent GUERBY <laurent@guerby.net>
1943 * make.adb (Scan_Make_Arg): Pass --param= to compiler and linker.
1945 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1947 * sem_ch8.adb (Analyze_Subprogram_Renaming): Improve error message on
1948 box-defaulted operator in an instantiation, when the type of the
1949 operands is not directly visible.
1951 2009-04-29 Gary Dismukes <dismukes@adacore.com>
1953 * sem_aggr.adb (Valid_Limited_Ancestor): Undo previous change.
1954 (Resolve_Extension_Aggregate): Call Check_Parameterless_Call after the
1955 analysis of the ancestor part. Remove prohibition against limited
1956 interpretations of the ancestor expression in the case of Ada 2005.
1957 Revise error message in overloaded case, adding a message to cover
1960 2009-04-29 Thomas Quinot <quinot@adacore.com>
1962 * xoscons.adb: Minor reformatting
1964 2009-04-29 Bob Duff <duff@adacore.com>
1966 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not ignore
1967 attribute_definition_clauses for the following attributes when the
1968 -gnatI switch is used: External_Tag, Input, Output, Read, Storage_Pool,
1969 Storage_Size, Write. Otherwise, we get spurious errors (for example,
1970 missing Read attribute on remote types).
1972 * gnat_ugn.texi: Document the change, and add a stern warning.
1974 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1976 * sem_attr.adb (Check_Local_Access): Indicate that value tracing is
1977 disabled not just for the current scope, but for the innermost dynamic
1980 2009-04-29 Arnaud Charlet <charlet@adacore.com>
1982 * gcc-interface/Make-lang.in: Update dependencies
1984 2009-04-29 Vincent Celier <celier@adacore.com>
1986 * prj-part.adb: Minor comment update
1988 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1990 * sem_aggr.adb (Resolve_Record_Aggregate): handle properly
1991 box-initialized records with discriminated subcomponents that are
1992 constrained by discriminants of enclosing components. New subsidiary
1993 procedures Add_Discriminant_Values, Propagate_Discriminants.
1995 2009-04-29 Arnaud Charlet <charlet@adacore.com>
1997 * g-socket.adb: Code clean up.
1999 2009-04-29 Gary Dismukes <dismukes@adacore.com>
2001 * sem_aggr.adb (Valid_Limited_Ancestor): Add test for the name of a
2002 function entity, to cover the case of a parameterless function call
2003 that has not been resolved.
2005 2009-04-29 Robert Dewar <dewar@adacore.com>
2007 * err_vars.ads, prj-part.adb, scans.ads, exp_tss.adb: Minor
2008 reformatting and comment updates.
2010 2009-04-29 Arnaud Charlet <charlet@adacore.com>
2012 * gnat_ugn.texi: Update some documentation about interfacing with C++
2013 Mention -fkeep-inline-functions.
2015 * gnat_ugn.texi: Minor edits
2017 2009-04-29 Ed Schonberg <schonberg@adacore.com>
2019 * sem_aggr.adb (Resolve_Record_Aggregate): When building an aggregate
2020 for a defaulted component of an enclosing aggregate, inherit the type
2021 from the component declaration of the enclosing type.
2023 2009-04-29 Albert Lee <lee@adacore.com>
2025 * g-socthi-vms.ads, g-socthi-vxworks.ads, s-oscons-tmplt.c,
2026 g-socthi-mingw.ads, g-socthi.ads, g-socket.adb, g-sothco.ads
2027 (System.OS_Constants): New type Msg_Iovlen_T which follows whether the
2028 msg_iovlen field in struct msghdr is 32 or 64 bits wide.
2029 Relocate the Msghdr record type from GNAT.Sockets.Thin to
2030 GNAT.Sockets.Common, and use System.OS_Constants.Msg_Iovlen_T as the
2031 type for the Msg_Iovlen field.
2033 2009-04-29 Vincent Celier <celier@adacore.com>
2035 * sinput-l.adb (Load_File): When preprocessing, set temporarily the
2036 Source_File_Index_Table entries for the source, to avoid crash when
2039 * gnatcmd.adb (Test_If_Relative_Path): Use
2040 Makeutl.Test_If_Relative_Path.
2042 * makeutl.adb:(Test_If_Relative_Path): Process switches --RTS= only if
2043 Including_RTS is True.
2045 * makeutl.ads (Test_If_Relative_Path): New Boolean parameter
2046 Including_RTS defaulted to False.
2048 * sinput.ads, scans.ads, err_vars.ads: Initialize some variables with
2051 2009-04-29 Javier Miranda <miranda@adacore.com>
2053 * gnat_ugn.texi: Adding documentation for non-default C++ constructors.
2055 2009-04-29 Javier Miranda <miranda@adacore.com>
2057 * sem_ch3.adb (Analyze_Object_Declaration): Disable error message
2058 associated with dyamically tagged expressions if the expression
2059 initializing a tagged type corresponds with a non default CPP
2061 (OK_For_Limited_Init): CPP constructor calls are OK for initialization
2062 of limited type objects.
2064 * sem_ch5.adb (Analyze_Assignment): Improve the error message reported
2065 when a CPP constructor is called in an assignment. Disable also the
2066 error message associated with dyamically tagged expressions if the
2067 exporession initializing a tagged type corresponds with a non default
2070 * sem_prag.adb (Analyze_Pragma): Remove code disabling the use of
2071 non-default C++ constructors.
2073 * sem_util.ads, sem_util.adb (Is_CPP_Constructor_Call): New subprogram.
2075 * exp_tss.ads, exp_tss.adb (Base_Init_Proc): Add support for
2076 non-default constructors.
2077 (Init_Proc): Add support for non-default constructors.
2079 * exp_disp.adb (Set_Default_Constructor): Removed.
2080 (Set_CPP_Constructors): Code based in removed Set_Default_Constructor
2081 but extending its functionality to handle non-default constructors.
2083 * exp_aggr.adb (Build_Record_Aggr_Code): Add support for non-default
2084 constructors. Minor code cleanup removing unrequired label and goto
2087 * exp_ch3.adb (Build_Initialization_Call): Add support for non-default
2089 (Build_Init_Statements): Add support for non-default constructors.
2090 (Expand_N_Object_Declaration): Add support for non-default constructors.
2091 (Freeze_Record_Type): Replace call to Set_Default_Constructor by call
2092 to Set_CPP_Constructors.
2094 * exp_ch5.adb (Expand_N_Assignment_Statement): Add support for
2095 non-default constructors.
2096 Required to handle its use in build-in-place statements.
2098 * gnat_rm.texi (CPP_Constructor): Document new extended use of this
2099 pragma for non-default C++ constructors and the new compiler support
2100 that allows the use of these constructors in record components, limited
2101 aggregates, and extended return statements.
2103 2009-04-29 Vincent Celier <celier@adacore.com>
2105 * prj-part.adb (Parse_Single_Project): Do not attempt to find a
2106 project extending an abstract project.
2108 2009-04-29 Eric Botcazou <ebotcazou@adacore.com>
2110 * targparm.ads: Fix oversight.
2112 2009-04-29 Ed Schonberg <schonberg@adacore.com>
2114 * lib-xref.adb (Output_Overridden_Op): Follow several levels of
2115 derivation when necessary, to find the user-subprogram that is actally
2118 2009-04-29 Robert Dewar <dewar@adacore.com>
2120 * sem_util.adb (May_Be_Lvalue): Fix cases involving indexed/selected
2123 2009-04-29 Ed Schonberg <schonberg@adacore.com>
2125 * exp_ch9.ads, exp_ch9.adb (Build_Wrapper_Spec): Use source line of
2126 primitive operation, rather than source line of synchronized type, when
2127 building the wrapper for a primitive operation that overrides an
2128 operation inherited from a progenitor, to improve the error message on
2129 duplicate declarations.
2131 * sem_ch3.adb (Process_Full_View): Use new signature of
2134 2009-04-29 Robert Dewar <dewar@adacore.com>
2136 * prj-nmsc.ads: Minor reformatting
2138 2009-04-29 Eric Botcazou <ebotcazou@adacore.com>
2140 * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of the
2141 expression on the existing parent If statement.
2143 2009-04-29 Robert Dewar <dewar@adacore.com>
2145 * prj-proc.adb, prj.ads: Minor reformatting
2147 2009-04-29 Eric Botcazou <ebotcazou@adacore.com>
2149 * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of an
2150 existing parent If statement on the newly created one.
2152 2009-04-29 Emmanuel Briot <briot@adacore.com>
2154 * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb,
2155 prj-part.ads, prj.adb, prj.ads, clean.adb, prj-dect.adb, prj-dect.ads,
2156 prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-makr.adb
2157 (Set_In_Configuration, In_Configuration): Removed.
2158 Replaced by an extra parameter Is_Config_File in several parameter to
2159 avoid global variables to store the state of the parser.
2161 2009-04-29 Ed Schonberg <schonberg@adacore.com>
2163 * sinfo.ads, sinfo.adb: New attribute Next_Implicit_With, to chain
2164 with_clauses generated for the same unit through rtsfind, and that
2165 appear in the context of different units.
2167 * rtsfind.adb: New attribute First_Implicit_With, component of the
2168 Unit_Record that stores information about a unit loaded through rtsfind.
2170 2009-04-29 Gary Dismukes <dismukes@adacore.com>
2172 * exp_ch3.adb (Stream_Operation_OK): Return True for limited interfaces
2173 (other conditions permitting), so that abstract stream subprograms will
2174 be declared for them.
2176 2009-04-29 Bob Duff <duff@adacore.com>
2178 * g-expect.adb (Expect_Internal): Fix check for overfull buffer.
2180 * g-expect.ads: Minor comment fixes.
2182 2009-04-29 Ed Schonberg <schonberg@adacore.com>
2184 * freeze.adb, lib-xref.adb (Check_Dispatching_Operation): if the
2185 dispatching operation is a body without previous spec, update the list
2186 of primitive operations to ensure that cross-reference information is
2189 2009-04-29 Albert Lee <lee@adacore.com>
2191 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
2192 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
2193 g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads
2194 (GNAT.Sockets.Thin.C_Readv,
2195 GNAT.Sockets.Thin.C_Writev): Remove unused subprograms.
2196 (GNAT.Sockets.Thin.C_Recvmsg,
2197 GNAT.Sockets.Thin.C_Sendmsg): New bindings to call recvmsg(2) and
2199 (GNAT.Sockets.Receive_Vector, GNAT.Sockets.Send_Vector): Use
2200 C_Recvmsg/C_Sendmsg rather than Readv/C_Writev.
2202 2009-04-29 Ed Schonberg <schonberg@adacore.com>
2204 * sem_disp.adb (Check_Dispatching_Operation): if the dispatching
2205 operation is a body without previous spec, update the list of
2206 primitive operations to ensure that cross-reference information is
2209 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): When creating a
2210 new compilation unit node for the instance declaration, keep the
2211 context items of the original unit on it, so that the context of the
2212 instance body only holds the context inherited from the generic body.
2214 2009-04-29 Bob Duff <duff@adacore.com>
2216 * sem_res.adb: Minor comment fix.
2218 2009-04-29 Thomas Quinot <quinot@adacore.com>
2220 * sem_elim.adb: Minor reformatting
2222 2009-04-29 Ed Schonberg <schonberg@adacore.com>
2224 * exp_aggr.adb (Convert_To_Positional): if the current unit is a
2225 predefined unit, allow arbitrary number of components in static
2226 aggregate, to ensure that the same level of constant folding applies
2227 for Ada 95 and Ada 05 versions of the file.
2229 2009-04-29 Ed Schonberg <schonberg@adacore.com>
2231 * sem_elim.adb (Check_Eliminated): Handle new improved eliminate
2232 information: no need for full scope check.
2233 (Eliminate_Error): Do not emit error in a generic context.
2235 2009-04-29 Ed Falis <falis@adacore.com>
2237 * adaint.c (__gnat_rmdir): return error code if VTHREADS is defined.
2238 VxWorks 653 POS does not support rmdir.
2240 2009-04-29 Matteo Bordin <bordin@adacore.com>
2242 * s-stausa.adb, s-stausa.ads: Get_Usage_Range: changing the way
2243 results are printed.
2245 2009-04-29 Arnaud Charlet <charlet@adacore.com>
2247 * s-taskin.adb (Initialize): Remove pragma Warnings Off and remove
2250 2009-04-29 Thomas Quinot <quinot@adacore.com>
2252 * make.adb: Minor reformatting.
2253 Minor code reorganization throughout.
2255 2009-04-29 Matteo Bordin <bordin@adacore.com>
2257 * s-stausa.ads: Changed visibility of type Task_Result: moved to
2258 public part to give application visibility over it.
2259 This is for future improvement and to build a public API on top of it.
2260 Changed record components name of type Task_Result to reflect the new
2263 * s-stausa.adb: Actual_Size_Str changed to reflect the new way of
2264 reporting Stack usage.
2266 * gnat_ugn.texi: Update doc of stack usage report.
2268 * g-tastus.ads, s-stusta.ads, s-stusta.adb: New files.
2270 * Makefile.rtl: Add new run-time files.
2272 2009-04-29 Pascal Obry <obry@adacore.com>
2274 * initialize.c: Do not expand quoted arguments.
2276 2009-04-29 Emmanuel Briot <briot@adacore.com>
2278 * prj-ext.adb, prj.adb, prj.ads: Fix memory leaks.
2280 * clean.adb (Ultimate_Extension_Of): removed, since duplicate of
2281 Prj.Ultimate_Extending_Project_Of
2283 2009-04-29 Ed Schonberg <schonberg@adacore.com>
2285 * exp_ch7.adb (Build_Final_List): If the designated type is a Taft
2286 Amendment type, add the with_clause for Finalization.List_Controller
2287 only if the current context is a package body.
2289 2009-04-29 Thomas Quinot <quinot@adacore.com>
2291 * sem_ch12.adb: Minor reformatting
2293 * sem_aggr.adb: Minor reformatting
2295 * sem_ch6.adb, sem_cat.ads: Minor reformatting
2297 * sem_ch10.adb, gnat1drv.adb, prj-nmsc.adb: Minor reformatting
2299 2009-04-29 Quentin Ochem <ochem@adacore.com>
2301 * prj.ads (Source_Id): Now general pointer type.
2303 2009-04-29 Thomas Quinot <quinot@adacore.com>
2305 * exp_ch7.adb, rtsfind.adb: Minor reformatting
2307 * sem_res.adb: Minor reformatting
2309 2009-04-29 Thomas Quinot <quinot@adacore.com>
2311 * sem_res.adb (Static_Concatenation): An N_Op_Concat with static
2312 operands is static only if it is a predefined concatenation operator.
2314 * sem_util.adb: Minor reformatting
2316 * sem_ch12.adb (Save_References): When propagating semantic information
2317 from generic copy back to generic template, for the case of an
2318 identifier that has been rewritten to an explicit dereference whose
2319 prefix is either an object name or a parameterless funcion call
2320 denoting a global object or function, properly capture the denoted
2321 global entity: perform the corresponding rewriting in the template,
2322 and point the rewritten identifier to the correct global entity (not
2323 to the associated identifier in the generic copy).
2325 2009-04-29 Robert Dewar <dewar@adacore.com>
2327 * rtsfind.adb, prj-env.adb: Minor reformatting
2328 Minor code reorganization
2330 2009-04-29 Emmanuel Briot <briot@adacore.com>
2332 * make.adb: Fix comment
2334 * prj.adb (Ultimate_Extending_Project_Of): Fix handling when no project
2335 is given as argument, as might happen in gnatmake.
2337 2009-04-29 Ed Schonberg <schonberg@adacore.com>
2339 * sem_ch3.adb (Check_Abstract_Overriding): Improve error message when
2340 an abstract operation of a progenitor is not properly overridden by an
2341 operation of a derived synchronized type.
2343 2009-04-29 Robert Dewar <dewar@adacore.com>
2345 * mlib-prj.adb, mlib-tgt.adb, mlib-tgt.ads, prj-nmsc.adb,
2346 prj-proc.adb: Minor reformatting
2347 Minor code reorganization
2349 2009-04-29 Bob Duff <duff@adacore.com>
2351 * exp_ch7.adb (Build_Final_List): For an access type that designates a
2352 Taft Amendment type, if the access type needs finalization, make sure
2353 the implicit with clause for List_Controller occurs on the package spec.
2355 * rtsfind.adb (Text_IO_Kludge): Fine tune the creation of implicit
2356 with's created for the pseudo-children of Text_IO and friends. In
2357 particular, avoid cycles, such as Ada.Wide_Text_IO.Integer_IO and
2358 Ada.Text_IO.Integer_IO both with-ing each other.
2360 * sem.adb (Walk_Library_Items): Suppress assertion failure in certain
2361 oddball cases when pragma Extend_System is used.
2363 * sem_ch12.adb (Get_Associated_Node): Prevent direct 'with' cycles in
2364 the case where a package spec instantiates a generic whose body with's
2365 this package, so Walk_Library_Items won't complain about cyclic with's.
2367 2009-04-29 Emmanuel Briot <briot@adacore.com>
2369 * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads,
2370 prj-pp.adb, prj-pp.ads, makeutl.adb, clean.adb, prj-nmsc.adb,
2371 mlib-tgt.adb, mlib-tgt.ads, prj-util.adb, prj-env.adb, prj-env.ads
2372 (Project_Id): now a real pointer to Project_Data, instead of an index
2373 into the Projects_Table. This simplifies the API significantly, avoiding
2374 extra lookups in this table and the need to pass the Project_Tree_Ref
2375 parameter in several cases
2377 2009-04-29 Nicolas Setton <setton@adacore.com>
2379 * gcc-interface/Makefile.in: Produce .dSYM files for shared libs on
2382 2009-04-25 Eric Botcazou <ebotcazou@adacore.com>
2384 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Put
2387 2009-04-24 Robert Dewar <dewar@adacore.com>
2389 * mlib-prj.adb, prj-env.adb, prj-nmsc.adb, prj-proc.adb, make.adb,
2390 clean.adb: Minor reformatting.
2391 Minor code reorganization and message improvement.
2393 2009-04-24 Emmanuel Briot <briot@adacore.com>
2395 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-nmsc.ads
2396 (Alternate_Languages): now implemented as a malloc-ed list rather
2397 than through a table.
2399 2009-04-24 Thomas Quinot <quinot@adacore.com>
2401 * sem_res.adb (Static_Concatenation): Simplify predicate to make it
2402 accurately handle cases such as "lit" & "lit" and
2403 "lit" & static_string_constant
2405 2009-04-24 Emmanuel Briot <briot@adacore.com>
2407 * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
2408 prj-nmsc.adb, prj-env.adb (Project_List_Table, Project_Element):
2409 removed. Lists of projects are now implemented via standard malloc
2410 rather than through the table.
2412 2009-04-24 Thomas Quinot <quinot@adacore.com>
2414 * sem_ch12.adb: Minor reformatting
2416 * g-trasym.adb: Minor reformatting
2418 * exp_ch6.adb: Minor reformatting
2420 2009-04-24 Robert Dewar <dewar@adacore.com>
2422 * layout.adb (Layout_Type): For packed array type, copy unset
2423 size/alignment fields from the referenced Packed_Array_Type.
2425 2009-04-24 Bob Duff <duff@adacore.com>
2427 * lib-load.adb (Make_Instance_Unit): Revert previous change, no
2428 longer needed after sem_ch12 changes.
2430 * sem.adb (Walk_Library_Items): Include with's in some debugging
2433 2009-04-24 Emmanuel Briot <briot@adacore.com>
2435 * prj.ads, prj-nmsc.adb (Unit_Project): removed, since in fact we were
2436 only ever using the Project field.
2438 2009-04-24 Ed Schonberg <schonberg@adacore.com>
2440 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Do not set
2441 Body_Required on the generated compilation node. The new node is linked
2442 to its body, but both share the same file, so we do not set this flag
2443 on the new unit so as not to create a spurious dependency on a
2444 non-existent body in the ali file for the instance.
2446 2009-04-24 Robert Dewar <dewar@adacore.com>
2448 * make.adb: Minor reformatting
2450 2009-04-24 Emmanuel Briot <briot@adacore.com>
2452 * prj.adb, prj.ads, prj-nmsc.adb (Check_File, Record_Ada_Source,
2453 Add_Source): merge some code between those. In particular change where
2454 file normalization is done to avoid a few extra calls to
2455 Canonicalize_File_Name. This also removes the need for passing
2456 Current_Dir in a number of subprograms.
2458 2009-04-24 Bob Duff <duff@adacore.com>
2460 * lib-load.adb (Make_Instance_Unit): In the case where In_Main is
2461 False, assign the correct unit to the Cunit field of the new table
2462 entry. We want the spec unit, not the body unit.
2464 * rtsfind.adb (Make_Unit_Name, Maybe_Add_With): Simplify calling
2465 interface for these.
2466 (Maybe_Add_With): Check whether we're trying to a with on the current
2467 unit, and avoid creating such directly self-referential with clauses.
2468 (Text_IO_Kludge): Add implicit with's for the generic pseudo-children of
2469 [[Wide_]Wide_]Text_IO. These are needed for Walk_Library_Items,
2470 and matches existing comments in the spec.
2472 * sem.adb (Walk_Library_Items): Add various special cases to make the
2475 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Use Body_Cunit
2476 instead of Parent (N), for uniformity.
2478 2009-04-24 Robert Dewar <dewar@adacore.com>
2480 * errout.ads: Minor reformatting
2482 2009-04-24 Emmanuel Briot <briot@adacore.com>
2484 * gnat_ugn.texi (Library Projects): add documentation on gnatmake's
2485 behavior when the project includes sources from multiple languages
2487 2009-04-24 Vincent Celier <celier@adacore.com>
2489 * prj.adb (Has_Foreign_Sources): Returns True in Ada_Only mode if there
2490 is a language other than Ada declared.
2492 * makeutl.adb (Linker_Options_Switches): Call For_All_Projects with
2493 Imported_First set to True.
2495 2009-04-24 Ed Schonberg <schonberg@adacore.com>
2497 * sem_res.adb: additional optimization to inhibit creation of
2498 redundant transient scopes.
2500 2009-04-24 Bob Duff <duff@adacore.com>
2502 * rtsfind.ads: Minor comment fix
2504 2009-04-24 Emmanuel Briot <briot@adacore.com>
2506 * prj-proc.adb, prj-nmsc.adb (Find_Ada_Sources,
2507 Get_Path_Name_And_Record_Ada_Sources): merged, since these were
2508 basically doing the same work (for explicit or implicit sources).
2509 (Find_Explicit_Sources): renamed to Find_Sources to better reflect its
2510 role. Rewritten to share some code (testing that all explicit sources
2511 have been found) between ada_only and multi_language modes.
2513 2009-04-24 Jerome Lambourg <lambourg@adacore.com>
2515 * sem_prag.adb (Check_Form_Of_Interface_Name): Allow space in Ext_Name
2516 for CLI imported types.
2517 (Analyze_Pragma): Allow CIL or Java imported functions returning
2518 access-to-subprogram types.
2520 2009-04-24 Emmanuel Briot <briot@adacore.com>
2522 * make.adb, prj.adb, prj.ads, makeutl.adb, makeutl.ads:
2523 (Project_Data.Dir_Path): field removed, since it can be computed
2524 directly from .Directory, and is needed only once when processing the
2525 project is buildgpr.adb or make.adb
2527 2009-04-24 Robert Dewar <dewar@adacore.com>
2529 * prj-env.adb, prj-proc.adb, prj.adb, prj.ads,
2530 rtsfind.adb: Minor reformatting.
2531 Minor code reorganization
2533 2009-04-24 Arnaud Charlet <charlet@adacore.com>
2535 * mlib-prj.adb: Use friendlier english identifier.
2537 * gnatcmd.adb, make.adb: Use better english identifiers.
2539 2009-04-24 Robert Dewar <dewar@adacore.com>
2541 * clean.adb: Minor reformatting
2543 2009-04-24 Robert Dewar <dewar@adacore.com>
2545 * einfo.adb (OK_To_Rename): New flag
2547 * einfo.ads (OK_To_Rename): New flag
2549 * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite as renames if
2552 * exp_ch4.adb (Expand_Concatenate): Mark temp variable OK_To_Rename
2554 * sem_ch7.adb (Uninstall_Declarations): Allow for renames from
2557 2009-04-24 Emmanuel Briot <briot@adacore.com>
2559 * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, makeutl.adb,
2560 clean.adb, prj-nmsc.adb, prj-env.adb, prj-env.ads (Project_Data.Seen):
2561 field removed. This is not a property of the
2562 project, just a boolean used to traverse the project tree, and storing
2563 it in the structure prevents doing multiple traversal in parallel.
2564 (Project_Data.Checked): also removed, since it was playing the same role
2565 as Seen when we had two nested loops, and this is no longer necessary
2566 (For_All_Imported_Projects): removed, since in fact there was already
2567 the equivalent in For_Every_Project_Imported. The latter was rewritten
2568 to use a local hash table instead of Project_Data.Seen
2569 Various loops were rewritten to use For_Every_Project_Imported, thus
2570 removing the need for Project_Data.Seen. This avoids a lot of code
2573 2009-04-24 Ed Schonberg <schonberg@adacore.com>
2575 * sem_res.adb (Resolve_Actuals): Do not create blocks around code
2576 statements, even though the actual of the call is a concatenation,
2577 because the argument is static, and we want to preserve warning
2578 messages about sequences of code statements that are not marked
2581 * sem_warn.adb: remove obsolete comment about warning being obsolete
2583 * s-tasren.adb (Task_Do_Or_Queue): If a timed entry call is being
2584 requeued and the delay has expired while within the accept statement
2585 that executes the requeue, do not perform the requeue and indicate that
2586 the timed call has been aborted.
2588 2009-04-24 Emmanuel Briot <briot@adacore.com>
2590 * mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
2591 (Has_Ada_Sources, Has_Foreign_Sources): new subprograms
2592 (Project_Data.Ada_Sources_Present, Foreign_Sources_Present): removed,
2593 since they can be computed from the above.
2595 2009-04-24 Vincent Celier <celier@adacore.com>
2597 * gnatcmd.adb: Call Prj.Env.Initialize with the Project_Tree
2599 * prj-env.adb: Move all global variables to the private part of the
2601 Access these new components instead of the global variables no longer
2603 (Add_To_Path): New Project_Tree_Ref parameter, to access the new
2604 components that were previously global variables.
2606 * prj-env.ads (Initialize): New Project_Tree_Ref parameter
2607 (Set_Mapping_File_Initial_State_To_Empty): New Project_Tree_Ref
2610 * prj-nmsc.adb (Compute_Unit_Name): New Project_Tree_Ref parameter to
2611 be able to call Set_Mapping_File_Initial_State_To_Empty with it.
2613 * prj.adb (Initialize): Do not call Prj.Env.Initialize
2614 (Reset): Do not call Prj.Env.Initialize. Instead, initialize the new
2615 components in the private part of the project tree data.
2617 * prj.ads (Private_Project_Tree_Data): new components moved from
2618 Prj.Env: Current_Source_Path_File, Current_Object_Path_File,
2619 Ada_Path_Buffer, Ada_Path_Length, Ada_Prj_Include_File_Set,
2620 Ada_Prj_Objects_File_Set, Fill_Mapping_File.
2622 2009-04-24 Vincent Celier <celier@adacore.com>
2624 * opt.ads (Unchecked_Shared_Lib_Imports): New Boolean flag.
2626 * prj-nmsc.adb (Check_Library): No error for imports by shared library
2627 projects, when --unchecked-shared-lib-imports is used.
2629 2009-04-24 Robert Dewar <dewar@adacore.com>
2631 * sem_ch7.adb: Minor reformatting
2633 2009-04-24 Tristan Gingold <gingold@adacore.com>
2635 * s-osinte-darwin.adb, s-osinte-darwin.ads: lwp_self now returns the
2638 2009-04-24 Emmanuel Briot <briot@adacore.com>
2640 * prj-env.adb, prj-env.ads (Body_Path_Name_Of, Spec_Path_Name_Of,
2641 Path_Name_Of_Library_Unit_Body): rEmove unused subprograms.
2642 (For_All_Imported_Projects): new procedure
2643 (For_All_Source_Dirs, For_All_Object_Dirs): Rewritten based on the
2644 above rather than duplicating code.
2646 2009-04-24 Emmanuel Briot <briot@adacore.com>
2648 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
2649 (Source_Id, Source_Data): use a real list to store sources rather than
2650 using an external table to store the elements. This makes code more
2651 efficient and more readable.
2653 2009-04-24 Emmanuel Briot <briot@adacore.com>
2655 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
2656 (Source_Iterator): new type.
2657 This removes the need for having the sources on three different
2658 lists at the project tree, project and language level. They are now
2661 2009-04-24 Emmanuel Briot <briot@adacore.com>
2663 * gnatcmd.adb, prj.adb, prj.ads: Remove unused entities
2665 2009-04-24 Ed Schonberg <schonberg@adacore.com>
2667 * sem_warn.adb: Add comment on obsolete warning
2669 2009-04-24 Arnaud Charlet <charlet@adacore.com>
2671 * s-tassta.adb (Create_Task): Fix violation of locking rule.
2673 2009-04-24 Emmanuel Briot <briot@adacore.com>
2675 * prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb (Language_Index): renamed
2676 to Language_Ptr to better reflect its new implementation.
2677 (Project_Data.First_Languages_Processing): renamed to Languages now
2678 that the field with that name is no longer used
2679 (Project_Data.Languages): removed, no longer used, and duplicates
2680 information already available through First_Language_Processing.
2681 (Prj.Language_Index): now an actual pointer, instead of an index into
2682 a table. This makes the list somewhat more obvious, but more importantly
2683 removes the need to pass a pointer to the project_tree_data in a few
2684 places, and makes accessing the attributes of a languages more
2687 2009-04-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2688 Thomas Quinot <quinot@adacore.com>
2690 * fe.h (Set_Identifier_Casing): Add const to second parameter.
2691 * gcc-interface/misc.c (internal_error_function): Make copy of return
2692 from pp_formatted_text before assigning BUFFER to it.
2693 (gnat_init): Likewise for main_input_filename and gnat_argv.
2694 (gnat_printable_name): Remove cast from call to Set_Identifier_Casing.
2696 2009-04-24 Eric Botcazou <ebotcazou@adacore.com>
2698 * ttypes.ads (Target_Double_Float_Alignment): New variable.
2699 (Target_Double_Scalar_Alignment): Likewise.
2700 * get_targ.ads (Get_Strict_Alignment): Adjust external name.
2701 (Get_Double_Float_Alignment): New imported function.
2702 (Get_Double_Scalar_Alignment): Likewise.
2703 * layout.adb (Set_Elem_Alignment): Take into account specific caps for
2704 the alignment of "double" floating-point types and "double" or larger
2705 scalar types, as parameterized by Target_Double_Float_Alignment and
2706 Target_Double_Scalar_Alignment respectively.
2707 * gcc-interface/gigi.h (double_float_alignment): Declare.
2708 (double_scalar_alignment): Likewise.
2709 (is_double_float_or_array): Likewise.
2710 (is_double_scalar_or_array): Likewise.
2711 (get_target_double_float_alignment): Likewise.
2712 (get_target_double_scalar_alignment): Likewise.
2713 * gcc-interface/targtyps.c (get_strict_alignment): Rename into...
2714 (get_target_strict_alignment): ...this.
2715 (get_target_double_float_alignment): New function.
2716 (get_target_double_scalar_alignment): Likewise.
2717 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
2718 Test the presence of an alignment clause for under-aligned integer
2719 types. Take into account specific caps for the alignment of "double"
2720 floating-point types and "double" or larger scalar types, as
2721 parameterized by Target_Double_Float_Alignment and
2722 Target_Double_Scalar_Alignment respectively.
2723 (validate_alignment): Likewise.
2724 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Alignment>: Likewise.
2725 (gigi): Initialize double_float_alignment and double_scalar_alignment.
2726 * gcc-interface/utils.c (double_float_alignment): New global variable.
2727 (double_scalar_alignment): Likewise.
2728 (is_double_float_or_array): New predicate.
2729 (is_double_scalar_or_array): Likewise.
2731 2009-04-24 Eric Botcazou <ebotcazou@adacore.com>
2733 * gcc-interface/utils2.c (build_cond_expr): Move SAVE_EXPR ahead of
2734 the conditional expression only if it is common to both arms.
2736 2009-04-24 Eric Botcazou <ebotcazou@adacore.com>
2738 * gcc-interface/gigi.h (build_call_alloc_dealloc): Update comment.
2739 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Pass correct
2740 arguments to build_allocator.
2741 * gcc-interface/utils2.c (build_call_alloc_dealloc): Update comment.
2742 Remove code handling special allocator and assert its uselessness.
2744 2009-04-24 Eric Botcazou <ebotcazou@adacore.com>
2746 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If an
2747 alignment is specified, do not promote that of the component type
2749 <E_Array_Subtype>: Likewise.
2751 2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
2753 * einfo.ads (Is_True_Constant): Lift restriction on atomic objects.
2754 * sinfo.ads (Object Declaration): Likewise.
2755 (Assignment Statement): Likewise.
2756 * freeze.adb (Expand_Atomic_Aggregate): Remove useless test.
2757 Do not force Is_True_Constant to false on the temporary.
2758 (Freeze_Entity): Do not force Is_True_Constant to false on names on
2759 the RHS of object declarations.
2760 * gcc-interface/trans.c (lvalue_required_p) <N_Object_Declaration>:
2761 New case. Return 1 if the object is atomic.
2762 <N_Assignment_Statement>: Likewise.
2764 2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
2766 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>
2767 For packed array types, make the original array type a parallel type
2768 for the modular type and its JM wrapper if the type is bit-packed.
2769 <E_Array_Subtype>: Likewise. Do not generate the special XA parallel
2770 record type for packed array types. Remove kludge.
2772 2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
2774 * gcc-interface/gigi.h (create_index_type): Adjust head comment.
2775 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
2776 Use front-end predicates to compute signedness and precision.
2777 <E_String_Literal_Subtype>: Fold range type.
2778 Make sure to set longest_float_type_node to a scalar type.
2779 (elaborate_entity): Use consistent Constraint_Error spelling.
2780 (substitute_in_type) <INTEGER_TYPE>: Always copy the type.
2781 * gcc-interface/misc.c (gnat_print_type) <INTEGER_TYPE>: Use brief
2782 output for the modulus, if any.
2783 <ENUMERAL_TYPE>: Likewise for the RM size.
2784 * gcc-interface/trans.c (gnat_to_gnu): Use consistent Constraint_Error
2786 * gcc-interface/utils.c (finish_record_type): Really test the alignment
2787 of BLKmode bit-fields to compute their addressability.
2788 (create_index_type): Adjust comments.
2789 (create_param_decl): Create the biased subtype manually.
2790 * gcc-interface/utils2.c (build_component_ref): Use consistent
2791 Constraint_Error spelling.
2793 2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
2795 * gcc-interface/cuintp.c: Clean up include directives.
2796 * gcc-interface/targtyps.c: Likewise.
2797 * gcc-interface/decl.c: Likewise.
2798 * gcc-interface/misc.c: Likewise.
2799 * gcc-interface/trans.c: Likewise.
2800 * gcc-interface/utils.c: Likewise.
2801 * gcc-interface/utils2.c: Likewise.
2802 * gcc-interface/Make-lang.in: Adjust dependencies accordingly.
2804 2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
2806 * gcc-interface/ada-tree.h (union lang_tree_node): Use standard idiom.
2807 (SET_TYPE_LANG_SPECIFIC): Likewise. Fix formatting.
2808 (SET_DECL_LANG_SPECIFIC): Likewise.
2810 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
2811 Update comment about use of build_range_type.
2812 <E_Array_Type, E_Array_Subtype>: Use consistent naming convention.
2813 <E_Array_Subtype>: Rework comments about TYPE_ACTUAL_BOUNDS and add
2814 check for other cases of overloading.
2815 * gcc-interface/trans.c (gigi): Use size_int in lieu of build_int_cst.
2816 * gcc-interface/utils2.c (build_call_raise): Fix off-by-one error.
2817 Use size_int in lieu of build_int_cst.
2818 (build_call_alloc_dealloc): Use build_index_2_type in lieu of
2821 2009-04-22 Eric Botcazou <ebotcazou@adacore.com>
2823 * gcc-interface/utils2.c (build_binary_op) <PLUS_EXPR>: If operation's
2824 type is an enumeral or a boolean type, change it to an integer type
2825 with the same mode and signedness.
2827 2009-04-22 Eric Botcazou <ebotcazou@adacore.com>
2829 * gcc-interface/utils.c (create_var_decl_1): Do not emit debug info
2830 for an external constant whose initializer is not absolute.
2832 2009-04-22 Taras Glek <tglek@mozilla.com>
2834 * gcc-interface/ada-tree.h: Update GTY annotations to new syntax.
2835 * gcc-interface/trans.c: Likewise.
2836 * gcc-interface/utils.c: Likewise.
2838 2009-04-22 Ed Schonberg <schonberg@adacore.com>
2840 * sem_res.adb: Create block around procedure call when actual is a
2843 2009-04-22 Thomas Quinot <quinot@adacore.com>
2845 * s-soflin.ads: Fix typos
2847 2009-04-22 Vincent Celier <celier@adacore.com>
2849 * prj-env.adb: Minor comment change
2851 * prj-nmsc.adb (Check_Common): Add guard to avoid calling
2852 Get_Name_String with No_File.
2854 * tempdir.adb (Create_Temp_File): Output diagnostic when temp file
2855 cannot be created even when not in verbose mode.
2857 2009-04-22 Emmanuel Briot <briot@adacore.com>
2859 * make.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj.adb,
2860 prj.ads (Create_Mapping_File): merge the two versions for Ada_Only and
2861 Multi_Language modes, to avoid code duplication.
2862 (Project_Data.Include_Language): Removed.
2864 2009-04-22 Vincent Celier <celier@adacore.com>
2866 * tempdir.adb (Create_Temp_File): Add a diagnostic in verbose mode when
2867 the temporary file cannot be created, indicating the directory when the
2868 creation was attempted.
2870 2009-04-22 Emmanuel Briot <briot@adacore.com>
2872 * prj-env.adb, prj-env.ads (Create_Mapping_File): we need to compare
2873 the language names, not their indices.
2875 2009-04-22 Emmanuel Briot <briot@adacore.com>
2877 * prj.ads, prj-nmsc.adb, prj-env.adb, prj-env.ads
2878 (Source_Data.Language_Name): Field removed.
2880 2009-04-22 Emmanuel Briot <briot@adacore.com>
2882 * prj.adb, prj.ads, prj-nmsc.adb (Project_Data.Unit_Based_Language_*):
2885 2009-04-22 Emmanuel Briot <briot@adacore.com>
2887 * prj-nmsc.adb (Check_Naming_Ada_Only): Properly initialize the
2888 separate_suffix to the same value as the body_suffix.
2890 2009-04-22 Robert Dewar <dewar@adacore.com>
2892 * prj.adb: Minor code reorganization
2895 * prj-proc.adb: Minor code reorganization, clean up.
2897 * prj-nmsc.adb: Minor reformatting
2898 Minor code reorganization
2900 * gnat_ugn.texi: Add to doc on strict aliasing
2902 2009-04-22 Pascal Obry <obry@adacore.com>
2904 * s-osinte-mingw.ads: Rename Reserved field in CRITICAL_SECTION to
2907 * s-tasini.adb: Minor reformatting.
2909 * s-tassta.adb: Minor reformatting.
2911 2009-04-22 Emmanuel Briot <briot@adacore.com>
2913 * prj-proc.adb, prj-nmsc.adb (Check_Naming_Schemes): split into several
2914 smaller subprograms.
2915 Renamed to Check_File_Naming_Schemes to avoid confusion with the
2916 other Check_Naming_Schemes functions that plays a totally different
2918 (Check_Unit_Based_Lang, Check_File_Based_Lang): new subprograms,
2919 extracted from the above. These were partially rewritten to avoid
2920 unnecessary code and temporary variables.
2921 (Compute_Unit_Name): new subprogram, merge of Check_Unit_Based_Lang
2922 and Get_Unit (which for now still exist since they contain mode-specific
2925 2009-04-22 Emmanuel Briot <briot@adacore.com>
2927 * prj.ads, prj.adb, prj-nmsc.adb, prj-proc.adb (Recursive_Process):
2928 Remove duplicated code.
2929 (Canonical_Case_File_Name): new subprogram
2930 (Check_And_Normalize_Unit_Names): new subprogram
2931 (Write_Attr): new subprogram
2932 Better sharing of code
2933 (Check_Naming_Ada_Only, Check_Naming_Multi_Lang): new subprogram, to
2934 split Check_Naming and help find duplicated code
2935 (Check_Common): new subprogram, sharing code between ada_only and
2936 multi_language mode.
2937 (Naming_Data.Dot_Repl_Loc): field removed
2939 2009-04-22 Emmanuel Briot <briot@adacore.com>
2941 * prj-proc.adb, prj-nmsc.adb (Load_Naming_Exceptions): New subprogram.
2942 Minor refactoring to reduce the size of
2943 Process_Sources_In_Multi_Language_Mode.
2944 Avoid extra copied of Source_Data, which we found in the past could be
2946 (Mark_Excluded_Sources): new subprogram.
2947 (Remove_Locally_Removed_Files_From_Units): merged into the above
2948 Refactors Process_Sources_In_Multi_Language_Mode to reduce its size,
2949 and allow better sharing of code between multi_lang and ada_only modes
2950 (Project_Extends): removed, since exact duplicate of Prj.Is_Extending
2952 2009-04-22 Emmanuel Briot <briot@adacore.com>
2954 * prj-proc.adb, prj.adb, prj.ads (Project_Data.First_Referred_By):
2955 Removed, since unused.
2957 2009-04-22 Vincent Celier <celier@adacore.com>
2959 * prj-attr.adb: New single project level attribute
2960 Separate_Run_Path_Options.
2962 * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
2963 attribute Seperate_Run_Path_Options.
2965 * prj.ads: (Project_Configuration): New Boolean component
2966 Separate_Run_Path_Options, defaulted to False.
2968 * snames.ads-tmpl: New standard name Seperate_Run_Path_Options
2970 2009-04-22 Robert Dewar <dewar@adacore.com>
2972 * sem_type.adb: Minor reformatting
2974 * mlib.adb: Minor reformatting
2976 * sem_aggr.adb: Minor reformatting. Defend against junk aggregate from
2979 2009-04-22 Nicolas Setton <setton@adacore.com>
2981 * link.c: Add flag __gnat_separate_run_path_options.
2983 * mlib.adb (Separate_Run_Path_Options): New subprogram.
2985 * mlib.ads (Separate_Run_Path_Options): Declare.
2987 * gnatcmd.adb (Process_Link): Add support for emitting one "rpath"
2988 switch per directory, rather than one "rpath" switch listing all
2991 * gnatlink.adb (Process_Binder_File): Likewise.
2993 * make.adb (Gnatmake): Likewise.
2995 2009-04-22 Hristian Kirtchev <kirtchev@adacore.com>
2997 * exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): Code cleanup.
2998 Add a call to Move_Final_List when the target of the assignment is a
2999 return object that needs finalization and the expression is a
3000 controlled build-in-place function.
3002 2009-04-22 Vincent Celier <celier@adacore.com>
3004 * make.adb (Gnatmake, Bind_Step): call Set_Ada_Paths with
3005 Including_Libraries set to True.
3007 2009-04-22 Ed Schonberg <schonberg@adacore.com>
3009 * lib-load.ads, lib-load.adb (Make_Child_Decl_Unit): New subprogram, to
3010 create a unit table entry for the subprogram declaration created for a
3011 child suprogram body that has no separate specification.
3013 * sem_ch10.adb (Analyze_Compilation_Unit): For a child unit that is a
3014 subprogram body, call Make_Child_Decl_Unit.
3016 * lib.adb (Get_Cunit_Unit_Number): Verify that an entry not yet in the
3017 table can only be the created specification of a child subprogram body
3018 that is the main unit, which has not been entered in the table yet.
3020 * errout.adb (Output_Messages): Ignore created specification of a
3021 child subprogram body to prevent repeated listing of error messages.
3023 * gnat1drv.adb (gnat1drv): The generated specification for a child
3024 subprogram body does not generate code.
3026 2009-04-22 Arnaud Charlet <charlet@adacore.com>
3028 * s-bitops.adb, s-bitops.ads (Raise_Error): Do not use Ada 05 syntax,
3029 since this unit is now part of bootstrap units, so must use Ada 95
3032 2009-04-22 Thomas Quinot <quinot@adacore.com>
3034 * a-tasatt.adb: Minor reformatting
3036 2009-04-22 Bob Duff <duff@adacore.com>
3038 * s-stalib.ads: Remove "with System;" since we're inside System, so
3041 2009-04-22 Vincent Celier <celier@adacore.com>
3043 * prj-nmsc.adb (Add_Source): Always put the dependency file name in
3044 the source record, as there may be a dependency file even if no object
3047 2009-04-22 Robert Dewar <dewar@adacore.com>
3049 * lib-load.adb: Minor reformatting
3051 * lib-load.ads: Minor reformatting
3053 * sinfo.ads: Minor reformatting
3055 2009-04-22 Bob Duff <duff@adacore.com>
3057 * exp_pakd.adb: Minor comment fixes.
3059 * sinfo.ads, par-load.adb, sem_ch10.adb, lib-load.ads, lib-load.adb
3060 sem_ch12.adb: Change the meaning of the Library_Unit attribute to
3061 include units containing instantiations, as well as units that are
3062 generic instantiations.
3064 * sem.adb: Include dependents and corresponding specs/bodies in the
3067 * gcc-interface/Make-lang.in:
3068 sem now depends on s-bitops, because of the packed array of Booleans.
3070 2009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3072 * gcc-interface/ada-tree.def: Fix formatting nits.
3073 (REGION_STMT): Delete.
3074 (HANDLER_STMT): Likewise.
3075 * gcc-interface/ada-tree.h: Fix formatting nits.
3077 (REGION_STMT_BODY): Likewise.
3078 (REGION_STMT_HANDLE): Likewise.
3079 (REGION_STMT_BLOCK): Likewise.
3080 (HANDLER_STMT_ARG): Likewise.
3081 (HANDLER_STMT_LIST): Likewise.
3082 (HANDLER_STMT_BLOCK): Likewise.
3083 * gcc-interface/gigi.h (fp_prec_to_size): Update comment.
3084 (fp_size_to_prec): Likewise.
3085 (largest_move_alignment): Delete.
3086 (gnat_compute_largest_alignment): Likewise.
3088 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
3089 Remove redundant code.
3090 <E_Array_Type>: Remove redundant assert.
3091 <E_Array_Subtype>: Exit early from index computation in pathological
3093 Rewrite conditional assignment.
3094 (make_type_from_size): Likewise.
3095 * gcc-interface/misc.c (largest_move_alignment): Delete.
3096 (gnat_finish_incomplete_decl): Likewise.
3097 (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Likewise.
3098 (asm_out_file): Likewise
3099 (gnat_print_type) <INTEGER_TYPE>: Fall through to ENUMERAL_TYPE case.
3100 (gnat_dwarf_name): Move around.
3101 * gcc-interface/trans.c (Attribute_to_gnu): Fix minor nits.
3102 (gigi): Remove call to gnat_compute_largest_alignment.
3103 * utils.c (create_field_decl): Rewrite conditional assignment.
3106 2009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3108 * gcc-interface/decl.c (gnat_to_gnu_entity): Compute is_type predicate
3109 on entry. Defer common processing for types. Reorder and clean up.
3110 Compute the equivalent GNAT node and the default size for types only.
3111 <E_Modular_Integer_Type>: Directly use Esize for the type's precision.
3112 <E_Access_Type>: For an unconstrained designated type, do not pretend
3113 that a dummy type is always made.
3114 <all> Fix nits in comments.
3115 (validate_size): Fix formatting nits and comments.
3116 (set_rm_size): Likewise.
3117 * gcc-interface/utils.c (create_param_decl): Replace bogus argument
3118 passed to TARGET_PROMOTE_PROTOTYPES hook.
3120 2009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3122 * fe.h (Get_External_Name): Declare.
3123 * gcc-interface/gigi.h (concat_id_with_name): Rename to...
3124 (concat_name): ...this.
3125 * gcc-interface/decl.c (gnat_to_gnu_entity): Rename gnu_entity_id to
3126 gnu_entity_name and adjust for above renaming.
3127 <E_Access_Type>: Use create_concat_name to get the name of the various
3128 types associated with unconstrained array types.
3129 (make_aligning_type): Adjust for above renaming.
3130 (maybe_pad_type): Likewise.
3131 (components_to_record): Likewise. Use get_identifier_with_length for
3132 the encoding of the variant.
3133 (get_entity_name): Use get_identifier_with_length.
3134 (create_concat_name): Likewise. Use Get_External_Name if no suffix.
3135 Do not fiddle with Name_Buffer.
3136 (concat_id_with_name): Rename to...
3137 (concat_name): ...this. Use get_identifier_with_length. Do not fiddle
3139 * gcc-interface/utils.c (rest_of_record_type_compilation): Adjust for
3142 2009-04-21 Joseph Myers <joseph@codesourcery.com>
3144 * ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
3147 2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3149 * gcc-interface/trans.c (gnat_to_gnu): Do not overwrite location info.
3151 2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3153 * gcc-interface/ada-tree.h (TYPE_RM_SIZE_NUM): Delete.
3154 (TYPE_RM_SIZE): Access TYPE_LANG_SLOT_1 directly for integral types.
3155 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>:
3156 Remove useless support code for packed array types and assert its
3158 <E_Signed_Integer_Subtype>: Reuse entity identifier in more places and
3159 adjust for TYPE_RM_SIZE change.
3160 <all> Fix nits in comments. Use Original_Array_Type accessor instead
3161 of Associated_Node_For_Itype accessor for packed array types.
3162 (make_packable_type): Likewise.
3163 (maybe_pad_type): Likewise.
3164 (set_rm_size): Likewise. Rework conditional statement. Adjust for
3165 TYPE_RM_SIZE change.
3166 (make_type_from_size): Adjust for TYPE_RM_SIZE change.
3167 (rm_size): Fix nits in comments. Rework conditional statements.
3168 * gcc-interface/misc.c (gnat_print_type): Adjust for TYPE_RM_SIZE
3170 * gcc-interface/trans.c (Attribute_to_gnu): Fix nits in comments.
3171 * gcc-interface/utils.c (gnat_init_decl_processing): Use more
3172 appropriate function to initialize the size_type_node. Adjust for
3173 TYPE_RM_SIZE change.
3175 2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3177 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set force_global
3178 for imported subprograms.
3180 2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3182 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not make
3183 constant objects covered by 13.3(19) volatile.
3185 2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3187 * gcc-interface/utils.c (create_type_decl): Do not pass declarations
3188 of dummy fat pointer types to the debug back-end.
3190 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3192 * gcc-interface/decl.c (gnat_to_gnu_entity): Rewrite Esize calculation.
3193 <E_Signed_Integer_Subtype>: Set the RM size on the integer type
3194 before wrapping it up in the record type. Do not overwrite the
3195 Ada size of the record type with the Esize.
3197 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3199 * gcc-interface/trans.c (unchecked_conversion_lhs_nop): New predicate.
3200 (gnat_to_gnu) <N_Unchecked_Type_Conversion>: Return the expression
3201 if the conversion is on the LHS of an assignment and a no-op.
3202 <all> Do not convert the result to the result type if the Parent
3203 node is such a conversion.
3205 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3207 * gcc-interface/ada-tree.h (DECL_HAS_REP_P): Delete.
3208 * gcc-interface/decl.c (gnat_to_gnu_entity): Add support for extension
3209 of types with unknown discriminants.
3210 (substitute_in_type): Rewrite and restrict to formal substitutions.
3211 * gcc-interface/utils.c (create_field_decl): Do not set DECL_HAS_REP_P.
3212 (update_pointer_to): Update comment.
3214 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3216 * sem_ch8.adb (Use_One_Package): In an instance, if two
3217 potentially_use_visible and non-overloadable homonyms are available
3218 from the actuals of distinct formal packages, retain the current one,
3219 which was visible in the generic, to prevent spurious visibility
3221 (End_Use_Package): Restore use_visibility when needed.
3223 2009-04-20 Sergey Rybin <rybin@adacore.com>
3225 * gnat_ugn.texi, vms_data.ads: Update doc.
3227 2009-04-20 Arnaud Charlet <charlet@adacore.com>
3229 * gcc-interface/Make-lang.in: Update dependencies
3231 * gcc-interface/Makefile.in: Link run-time against winsock2 lib under
3234 2009-04-20 Robert Dewar <dewar@adacore.com>
3236 * checks.ads: Fix documentation of range check handling
3238 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3240 * sem_ch8.adb (Use_One_Type): Use proper entity on warning message for
3241 a redundant use_type clause.
3243 2009-04-20 Robert Dewar <dewar@adacore.com>
3245 * sem_attr.adb (Eval_Attribute, case Length): Catch more cases where
3246 this attribute can be evaluated at compile time.
3247 (Eval_Attribute, case Range_Length): Same improvement
3249 * sem_eval.ads, sem_eval.adb (Compile_Time_Compare): New procedure
3251 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3253 * sem_ch6.adb (Analye_Subprogram_Declaration): Code reorganization,
3254 for better handling of null procedures.
3255 (Check_Overriding_Indicator): Do not emit a warning on a missing
3256 overriding indicator on an operator when the type of which the operator
3257 is a primitive is private.
3259 2009-04-20 Bob Duff <duff@adacore.com>
3261 * sem.adb, gnat1drv.adb, debug.adb: Use the -gnatd.W switch to control
3264 2009-04-20 Robert Dewar <dewar@adacore.com>
3266 * sem_attr.adb: Minor reformatting
3268 * gnatcmd.adb: Minor reformatting
3270 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3272 * sem_ch4.adb (Analyze_User_Defined_Binary_Op): If left operand is
3273 overloaded and one interpretation matches the context, label the
3274 operand with the type of first formal.
3276 2009-04-20 Bob Duff <duff@adacore.com>
3278 * debug.ads: Minor comment fix.
3280 * debug.adb: Minor comment fixes.
3282 2009-04-20 Javier Miranda <miranda@adacore.com>
3284 * rtsfind.ads (RE_Null_Id): New entity of package Ada.Exceptions
3286 * exp_ch6.adb (Expand_Inlined_Call): Undo previous patch.
3288 * exp_ch11.adb (Expand_N_Raise_Statement): When the raise stmt
3289 is expanded into a call to Raise_Exception, avoid passing the
3290 exception-name'identity in runtimes in which this argument
3293 2009-04-20 Jerome Lambourg <lambourg@adacore.com>
3295 * impunit.adb: Add i-cil and i-cilobj packages, now needed by the
3296 generated bindings for cil.
3298 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3300 * sem_aggr.adb (Resolve_Record_Aggregate): If the type has unknown
3301 discriminants, collect components from the Underlying_Record_View,
3302 which will be used in the expansion of the aggregate into assignments.
3304 * sem_ch3.adb: Do not label derived type with unknown discriminants as
3305 having a private declaration.
3307 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3309 * exp_util.adb (Expand_Subtype_From_Expr): use the
3310 underlying_record_view when available, to create the proper constrained
3311 subtype for an object of a derived type with unknown discriminants.
3313 2009-04-20 Javier Miranda <miranda@adacore.com>
3315 * exp_ch6.adb (Expand_Inlined_Call): Avoid generation of temporaries for
3316 formals that have pragma unreferenced.
3318 2009-04-20 Pascal Obry <obry@adacore.com>
3320 * a-direct.adb (To_Lower_If_Case_Insensitive): Removed.
3321 Remove all calls to To_Lower_If_Case_Insensitive to preserve
3322 the pathname original casing.
3324 2009-04-20 Robert Dewar <dewar@adacore.com>
3326 * g-trasym.adb: Minor reformatting
3328 * s-os_lib.adb: Minor reformatting
3330 * sem.adb: Minor reformatting
3331 Minor code reorganization
3333 * sem_ch3.adb: Minor reformatting
3335 * sem_ch4.adb: Minor reformatting
3337 * sem_ch8.adb: Minor reformatting
3339 * sem_type.adb: Minor reformatting
3341 2009-04-20 Javier Miranda <miranda@adacore.com>
3343 * sem_disp.adb (Find_Dispatching_Type): For subprograms internally
3344 generated by derivations of tagged types use the aliased subprogram a
3345 reference to locate their controlling type.
3347 2009-04-20 Tristan Gingold <gingold@adacore.com>
3349 * g-trasym.adb: Set size of result buffer before calling
3352 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3354 * sem_ch4.adb (Valid_Candidate): When checking whether a prefixed call
3355 to a function returning an array can be interpreted as a call with
3356 defaulted parameters whose result is indexed, take into account the
3357 types of all the indices of the array result type.
3359 2009-04-20 Pascal Obry <obry@adacore.com>
3361 * a-direct.adb, s-os_lib.adb: Minor reformatting.
3363 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3365 * sem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect
3366 null exclusion qualifiers for object renaming declarations.
3368 2009-04-20 Nicolas Roche <roche@adacore.com>
3370 * sysdep.c (__gnat_localtime_tzoff): on Windows, manipulated times are
3371 unsigned long long. So compare local_time and utc_time before computing
3374 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3376 * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
3377 of the Underlying_Record_View before that of the derived type.
3379 * exp_ch3.adb (Expand_Record_Extension): Do not special-case types
3380 with unknown discriminants with regard to the parent subtype.
3382 2009-04-20 Bob Duff <duff@adacore.com>
3384 * sem.adb (Semantics, Walk_Library_Items): Include dependents of bodies
3385 that are not included. This is necessary if the main unit is a generic
3388 * gnat1drv.adb (Gnat1drv): Comment out the call to Check_Library_Items,
3389 because it doesn't work if -gnatn is used.
3391 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3393 * rtsfind.adb (RTE, RTE_Record_Component): In
3394 Configurable_Run_Time_Mode, do not enable front-end inlining.
3396 2009-04-20 Thomas Quinot <quinot@adacore.com>
3398 * g-socthi-vms.adb: Remove now unnecessary WITH clause on
3399 System.Address_To_Access_Conversions.
3401 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3403 * sem.adb: Guard against ill-formed subunits.
3405 2009-04-20 Bob Duff <duff@adacore.com>
3407 * output.adb (Flush_Buffer): Do not indent blank lines.
3408 (Ignore_Output): New procedure for output suppression.
3410 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
3412 * a-calfor.adb (Image): Subtract 0.5 from the sub second component only
3413 when it is positive. This avoids a potential constraint error raised
3414 by the conversion to Natural.
3416 2009-04-20 Gary Dismukes <dismukes@adacore.com>
3418 * exp_ch5.adb (Expand_Assign_Array): For the case where the assignment
3419 involves a target that has a specified address, don't set Forward_OK
3420 and Backward_OK to False if the rhs is an aggregate, since overlap
3423 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3425 * sem_ch8.adb (Analyze_Object_Renaming): Reject ambiguous expressions
3426 in an object renaming declaration when the expected type is an
3427 anonymous access type.
3429 * sem_type.adb (Disambiguate): Use anonymousness to resolve a potential
3430 ambiguity when one interpretation is an anonymous access type and the
3431 other is a named access type, and the context itself is anonymous
3433 2009-04-20 Thomas Quinot <quinot@adacore.com>
3435 * einfo.ads: Minor comment rewording
3437 * sem_aggr.adb: Minor comment rewording
3439 * sem_ch3.adb, sem_ch6.adb: Minor reformatting
3441 2009-04-20 Pascal Obry <obry@adacore.com>
3443 * adaint.c (__gnat_is_readable_file): Check for file existence
3444 when not using ACL (always the case on remote drives).
3446 2009-04-20 Robert Dewar <dewar@adacore.com>
3448 * sinfo.ads: Minor comment fixes
3450 * exp_disp.adb: Minor reformatting
3452 * gnat1drv.adb: Minor reformatting
3454 * output.adb: Minor reformatting
3456 * s-vxwext-kernel.ads: Minor reformatting
3458 * sem.ads: Minor reformatting
3460 * sem.adb: Minor reformatting
3462 * sem_elim.adb: Minor reformatting
3464 * uname.ads: Minor reformatting
3466 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3468 * init.c (__gnat_adjust_context_for_raise): On x86{-64}/Linux, add
3469 a small dope of 4 words to the adjustment to the stack pointer.
3471 2009-04-20 Thomas Quinot <quinot@adacore.com>
3473 * xoscons.adb: generate C header s-oscons.h in
3474 addition to s-oscons.ads.
3476 * socket.c: On VMS, use s-oscons.h.
3478 * sem_ch3.adb: Minor reformatting
3480 * exp_ch9.adb: Minor reformatting
3482 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3484 * gcc-interface/trans.c (check_for_eliminated_entity): Remove.
3485 (Attribute_to_gnu): Do not call check_for_eliminated_entity.
3486 (call_to_gnu): Likewise.
3488 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3490 * gcc-interface/trans.c (gigi): Declare the name of the compilation
3491 unit as the first global name at the very beginning.
3493 2009-04-20 Thomas Quinot <quinot@adacore.com>
3495 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
3496 s-oscons-tmplt.c, gsocket.h, g-socthi-mingw.ads, g-socthi.ads,
3497 g-sothco.ads (__gnat_inet_pton): Needs to be enabled for HP-UX as well,
3498 since HP-UX supports neither inet_aton nor inet_pton (altough the
3499 latter is part of the Single UNIX Specification!).
3500 So reorganize code, and share C implementation based on inet_addr(3)
3501 with VMS (instead of having a VMS specific Ada implementation in
3504 2009-04-20 Gary Dismukes <dismukes@adacore.com>
3506 * osint-c.ads, osint-c.adb (Get_Object_Output_File_Name): New function
3507 to return the object file name saved by Set_Object_Output_File_Name.
3509 2009-04-20 Emmanuel Briot <briot@adacore.com>
3511 * g-comlin.adb (Initialize_Option_Scan): Fix initialization of parsers
3512 for the standard command line, when argc has been modified since the
3513 start of the application.
3515 2009-04-20 Thomas Quinot <quinot@adacore.com>
3517 * socket.c (__gnat_inet_pton, Windows case): Adjust return value.
3518 WSAStringToAddress returns 0 for success and SOCKET_ERROR for failure.
3520 2009-04-20 Bob Duff <duff@adacore.com>
3522 * gnat1drv.adb (Gnat1drv): Put call to Check_Library_Items inside
3525 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3527 * exp_ch9.adb (Build_Protected_Sub_Specification): Mark generated
3528 subprogram as Eliminated when source operation is.
3529 (Expand_N_Protected_Type_Declaration): Generate protected and
3530 unprotected specs for the internal operations, even if the source
3531 operation is eliminated.
3533 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
3535 * exp_ch3.adb (Make_Predefined_Primitive_Specs,
3536 Predefined_Primitive_Bodies): Do not create the declarations and bodies
3537 of the primitive subprograms associated with dispatching select
3538 statements when the runtime is in configurable mode.
3540 2009-04-20 Ed Falis <falis@adacore.com>
3542 * s-vxwext-kernel.ads (tickGet): Use tick64Get.
3544 2009-04-20 Thomas Quinot <quinot@adacore.com>
3546 * s-oscons-tmplt.c: Add support for generating a dummy version of
3547 s-oscons.ads providing all possible constants.
3549 * g-socthi-mingw.ads: Fix calling convention for __gnat_inet_pton.
3551 * socket.c (__gnat_inet_pton): On Windows make sure we always use the
3552 ANSI version (not the UNICODE version) of WSAStringToAddress.
3554 2009-04-20 Pascal Obry <obry@adacore.com>
3556 * adaint.c (__gnat_set_OWNER_ACL): properly free memory
3557 allocated for the security descriptor and make sure all
3558 handles are closed before leaving this procedure.
3560 2009-04-20 Javier Miranda <miranda@adacore.com>
3562 * einfo.ads, einfo.adb (Is_Underlying_Record_View): New subprogram
3563 (Set_Is_Underlying_Record_View): New subprogram
3565 * sem_aggr.adb (Discr_Present, Resolve_Record_Aggregate): In case of
3566 private types with unknown discriminants use the underlying record view
3569 * sem_ch3.adb (Build_Derived_Private_Type): Enable construction of the
3570 underlying record view in the full view of private types whose parent
3571 has unknown discriminants.
3572 (Build_Derived_Record_Type): Avoid generating the class-wide entity
3573 associated with an underlying record view.
3574 (Derived_Type_Declaration): Avoid deriving parent primitives in
3575 underlying record views.
3577 * sem_ch6.adb (Check_Return_Subtype_Indication): Add support for
3578 records with unknown discriminants.
3580 * sem_type.adb (Covers): Handle underlying record views.
3581 (Is_Ancestor): Add support for underlying record views.
3583 * exp_attr.adb (Expand_Attribute): Expand attribute 'size into a
3584 dispatching call if the type of the target object is tagged and has
3585 unknown discriminants.
3587 * exp_aggr.adb (Resolve_Record_Aggregate): Add support for records with
3588 unknown discriminants.
3590 * exp_disp.adb (Build_Dispatch_Tables): Avoid generating dispatch
3591 tables for internally built underlying record views.
3593 * sprint.adb (sprint_node_actual): Improve output of aggregates with an
3594 empty list of component associations.
3596 2009-04-20 Thomas Quinot <quinot@adacore.com>
3598 * sem_ch10.adb: Minor reformatting
3600 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
3601 g-socthi-mingw.ads, g-socthi.ads, g-socket.adb
3602 (GNAT.Sockets.Inet_Addr): Do not use non-portable inet_aton, instead use
3603 standard inet_pton API (and emulate it on platforms that do not
3605 (GNAT.Sockets.Thin.Inet_Pton, VMS case): Implement in terms of
3606 DECC$INET_ADDR, imported in Ada.
3607 (GNAT.Sockets.Thin.Inet_Pton, VxWorks and Windows cases): Use C
3608 implementation provided by GNAT runtime.
3609 (__gnat_inet_pton): C implementation of inet_pton(3) for VxWorks and
3612 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3614 * gnat_ugn.texi: Add documentation for -fno-ivopts.
3616 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3618 * sem_ch10.adb (Analyze_Context): Do not analyze a unit in a
3619 with_clause if it is the main unit.
3621 2009-04-20 Thomas Quinot <quinot@adacore.com>
3623 * sem_type.adb, ali.adb, erroutc.adb: Minor code reorganization
3624 (no behaviour change): Use Append instead of Increment_Last followed
3627 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
3629 * exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate the
3630 declarations of all primitives associated with dispatching asynchronous,
3631 conditional and timed selects when dispaching calls are forbidden and
3632 select statements are not allowed (such as in Ravenscar).
3633 (Predefined_Primitive_Bodies): Ditto for bodies.
3635 * exp_disp.ad (Make_DT): Do not create and populate the
3636 Select_Specific_Data of the dispatch table when dispatching calls are
3637 forbidden and select statements are not allowed (such as in Ravenscar).
3639 2009-04-20 Robert Dewar <dewar@adacore.com>
3641 * a-tifiio.adb: Minor reformatting
3643 2009-04-20 Thomas Quinot <quinot@adacore.com>
3645 * g-socthi-vms.adb, g-socket.adb, g-socket.ads: inet_aton(3), unlike
3646 other C library functions, report *failure* with a zero status, and
3647 success with a non-zero status.
3649 2009-04-20 Bob Duff <duff@adacore.com>
3651 * sem.ads, sem.adb (Walk_Library_Items): New generic procedure.
3652 (Semantics): After analyzing each unit, Append it to the
3653 Comp_Unit_List, if appropriate.
3655 * gnat1drv.adb (Check_Library_Items): New procedure for debugging
3657 (Gnat1drv): Correct comment regarding Back_End_Mode.
3659 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3661 * gnat_ugn.texi: Add documentation for -fno-inline-small-functions.
3663 2009-04-20 Thomas Quinot <quinot@adacore.com>
3665 * s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
3666 output.adb, output.ads, s-taprop-hpux-dce.adb,
3667 s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-posix.adb: Minor
3670 2009-04-20 Thomas Quinot <quinot@adacore.com>
3672 * g-socket.adb, g-socket.ads, g-socthi-mingw.ads, g-socthi-vms.adb,
3673 g-socthi-vms.ads, g-socthi-vxworks.ads, g-socthi.ads
3674 (GNAT.Sockets.Thin.C_Inet_Addr): Remove.
3675 (GNAT.Sockets.Thin.Inet_Aton): New function, imported from C library
3676 except for VMS where it is reimplemented in Ada using DECC$INET_ADDR.
3677 (GNAT.Sockets.Inet_Addr): Use inet_aton(3) instead of inet_addr(3).
3679 * debug.adb: Fix typo
3681 * gnat_rm.texi: Minor doc fix.
3683 * sem_ch7.adb, freeze.adb: Minor reformatting
3685 2009-04-20 Thomas Quinot <quinot@adacore.com>
3687 * g-socket.ads: Add new constants:
3689 Unspecified_Group_Inet_Addr
3690 All_Hosts_Group_Inet_Addr
3691 All_Routers_Group_Inet_Addr
3693 * s-oscons-tmplt.c, g-sttsne-vxworks.adb (System.OS_Constants): Add
3694 ERANGE (Result too large).
3695 (GNAT.Sockets.Thin.Task_Safe_NetDB, VxWorks version): Add missing
3696 propagation of errno to caller.
3698 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
3700 * a-calend.adb, a-calend-vms.adb: Increase the number of leap seconds
3701 to 24. Increment Leap_Seconds_Count and add an entry to aggregate
3704 2009-04-20 Gary Dismukes <dismukes@adacore.com>
3706 * sem_elim.ads (Check_For_Eliminated_Subprogram): New procedure for
3707 checking for references to eliminated subprograms that should be
3709 (Eliminate_Error_Message): Update comment to say "references" rather
3710 than "calls" (since attribute cases are handled here as well).
3712 * sem_elim.adb (Check_For_Eliminated_Subprogram): New procedure for
3713 checking for references to eliminated subprograms that should be
3714 flagged. Add with and use of Sem and Sem_Util.
3716 * sem_res.adb (Resolve_Call): Reject calls to eliminated subprograms.
3717 Add with and use of Sem_Elim.
3719 * sem_attr.adb (Analyze_Access_Attribute): Reject access attributes
3720 applied to eliminated subprograms.
3721 (Analyze_Attribute): Reject 'Address and 'Code_Address applied to
3722 eliminated subprograms.
3723 Add with and use of Sem_Elim.
3725 * sem_disp.adb (Check_Dispatching_Call): Remove error check for calls
3726 to eliminated subprograms, now handled during Resolve_Call.
3727 Remove with and use of Sem_Elim.
3729 * exp_disp.adb (Make_DT): Get Ultimate_Alias of primitive before
3730 testing Is_Eliminated, for proper handling of primitive derived from
3731 eliminated subprograms.
3733 2009-04-20 Vincent Celier <celier@adacore.com>
3735 * mlib-prj.adb (Build_Library): Use the shared library linker, if one
3736 has been declared (Library_GCC or Linker'Driver), for the driver name.
3738 * prj-nmsc.adb (Process_Linker): If Library_GCC is not declared and
3739 Linker'Driver is, use Linker'Driver as the shared library linker.
3740 (Process_Project_Level_Simple_Attributes): Issue a warning if attribute
3741 Library_GCC is declared.
3742 (Check_Library_Attributes): Set up the shared linker driver: either
3743 Library_GCC or Linker'Driver. Issue a warning if Library_GCC is
3746 2009-04-20 Thomas Quinot <quinot@adacore.com>
3748 * g-socket.ads (Send_Socket): Fix misleading comment.
3750 2009-04-20 Arnaud Charlet <charlet@adacore.com>
3752 * switch-c.adb (Scan_Front_End_Switches): Disable inspector mode in
3755 2009-04-20 Geert Bosch <bosch@adacore.com>
3757 * a-tifiio.adb (Put): Avoid generating too many digits for certain
3758 fixed types with smalls that are neither integer or the reciprocal
3761 2009-04-20 Bob Duff <duff@adacore.com>
3763 * uname.ads: Minor comment fix.
3765 * types.ads: Minor comment fix.
3767 2009-04-20 Pascal Obry <obry@adacore.com>
3769 * adaint.c (__gnat_get_libraries_from_registry): Fix code to
3770 avoid warning. At the same time fix a memory leak.
3772 * osint.adb (Get_Libraries_From_Registry): Properly free memory
3773 returned by the above routine.
3775 2009-04-20 Robert Dewar <dewar@adacore.com>
3777 * s-conca5.adb, s-conca5.ads, s-conca7.adb, s-conca7.ads, s-conca9.adb,
3778 s-conca9.ads, rtsfind.ads, s-conca2.adb, s-conca2.ads, s-conca4.adb,
3779 s-conca4.ads, s-conca6.adb, s-conca6.ads, s-conca8.adb, s-conca8.ads,
3780 s-conca3.adb, s-conca3.ads (Str_Concat_Bounds_x): New functions.
3782 * exp_ch4.adb (Expand_Concatenate): Minor code reorganization
3784 2009-04-20 Pascal Obry <obry@adacore.com>
3786 * initialize.c (__gnat_initialize): Add braces to kill warning.
3788 * adaint.c: Minor reformatting, remove trailing spaces.
3790 2009-04-17 Arnaud Charlet <charlet@adacore.com>
3792 * gcc-interface/Make-lang.in: Update dependencies.
3794 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3796 * adaint.h (__gnat_lwp_self): Declare on Linux.
3798 * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'.
3800 2009-04-20 Robert Dewar <dewar@adacore.com>
3802 * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement
3803 front-end part of -fpreserve-control-flow switch.
3805 2009-04-20 Bob Duff <duff@adacore.com>
3807 * rtsfind.adb: Minor comment fix
3809 2009-04-20 Robert Dewar <dewar@adacore.com>
3811 * exp_aggr.adb: Minor reformatting
3812 Minor code reorganization (use Nkind_In)
3814 * g-socket.adb: Minor reformatting
3816 * g-socket.ads: Minor comment fix
3818 * s-auxdec.ads: Minor comment and organization update.
3820 * s-auxdec-vms_64.ads: Minor comment and organization update.
3822 * sem_ch10.adb: Minor addition of ??? comment
3824 * sem_disp.adb: Minor reformatting
3826 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3828 * inline.adb (Add_Inlined_Subprogram): Do not place on the back-end
3829 list a caller of an inlined subprogram, if the caller itself is not
3832 2009-04-20 Pascal Obry <obry@adacore.com>
3834 * adaint.c: Disable use of ACL on network drives.
3836 2009-04-20 Arnaud Charlet <charlet@adacore.com>
3838 * gnat_ugn.texi: Add examples.
3840 2009-04-20 Thomas Quinot <quinot@adacore.com>
3842 * g-socket.ads (Abort_Selector): Clarify documentation.
3844 2009-04-20 Arnaud Charlet <charlet@adacore.com>
3846 * opt.ads (Inspector_Mode): Update documentation of this flag.
3848 2009-04-20 Thomas Quinot <quinot@adacore.com>
3850 * g-socket.ads: Minor reformatting
3852 * socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to
3853 consider S_resolvLib error codes since we only use the hostLib wrappers.
3855 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3857 * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
3858 of the Underlying_Record_View after that of the derived type.
3860 2009-04-20 Arnaud Charlet <charlet@adacore.com>
3862 * switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining
3865 2009-04-20 Javier Miranda <miranda@adacore.com>
3867 * sem_ch6.adb (New_Overloaded_Entity): Minor reformating.
3869 * sem_ch6.ads (Subtype_Conformant, Type_Conformant): Add missing
3872 * exp_aggr.adb (Build_Record_Aggr_Code): Code cleanup.
3875 (Check_Dispatching_Operation): Set attribute Is_Dispatching_Operation
3876 in internally built overriding subprograms.
3878 2009-04-20 Doug Rupp <rupp@adacore.com>
3880 * s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types.
3882 * s-auxdec.ads: Likewise
3884 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3886 * sem_ch3.adb (Find_Type_Name): Reject the completion of a private
3887 type by an interface.
3889 * exp_ch6.adb (Expand_Call): Inline To_Address unconditionally, to
3890 minimze difference in expanded tree when compiled as spec of the main
3891 unit, or as a spec in the context of another unit.
3893 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
3895 * a-calend.adb: Remove types char_Pointer, int, tm and tm_Pointer.
3896 (localtime_tzoff): This routine no longer accepts an actual of type
3898 (UTC_Time_Offset): Remove local variable Secs_TM.
3900 * sysdep.c (__gnat_localtime_tzoff): This routine no longer accepts an
3901 actual of type struct tm*. Add local variable of type struct tm for all
3902 targets that provide localtime_r and need to invoke it.
3904 2009-04-20 Thomas Quinot <quinot@adacore.com>
3906 * s-oscons-tmplt.c, g-socket.adb, g-socket.ads
3907 (GNAT.Sockets.Resolve_Error): Add case of EPIPE
3908 Add case of EAGAIN for platforms where it is not equal to EWOULDBLOCK
3910 2009-04-20 Robert Dewar <dewar@adacore.com>
3912 * sem_ch3.adb: Minor reformatting
3914 * lib-load.adb: Minor reformatting
3916 * sem_ch4.adb: Minor reformatting
3918 2009-04-20 Robert Dewar <dewar@adacore.com>
3920 * namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec
3921 (equal values => False).
3923 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3925 * exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls
3926 to null procedures can be inlined unconditionally.
3928 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3930 * gcc-interface/trans.c (call_to_gnu): When creating the copy for a
3931 non-addressable parameter passed by reference, do not convert the
3932 actual if its type is already the nominal type, unless it is of
3933 self-referential size.
3935 2009-04-20 Arnaud Charlet <charlet@adacore.com>
3937 * gnat_ugn.texi: Fix typos.
3939 2009-04-20 Robert Dewar <dewar@adacore.com>
3941 * debug.adb, gnat1drv.adb, sem_ch13.adb: Add circuitry to
3942 Validate_Unchecked_Warnings to suppress warnings about size or
3943 alignment or extra bits if either type involved has pragma Warnings
3944 (Off) set for the type entity.
3946 2009-04-19 Eric Botcazou <ebotcazou@adacore.com>
3948 * gcc-interface/trans.c (gigi): Make the special IA-64 descriptor type
3949 a builtin type and give it a name.
3951 2009-04-17 Diego Novillo <dnovillo@google.com>
3953 * gcc-interface/misc.c (gnat_expand_expr): Remove.
3954 (LANG_HOOKS_EXPAND_EXPR): Remove.
3956 2009-04-17 Robert Dewar <dewar@adacore.com>
3958 * sem_ch3.adb: Minor reformatting
3960 2009-04-17 Pascal Obry <obry@adacore.com>
3962 * adaint.c: Add __gnat_use_acl global variable to control use of ACL.
3964 2009-04-17 Ed Schonberg <schonberg@adacore.com>
3966 * sem_ch3.adb (Build_Derived_Enumeration_Type): Diagnose properly
3967 illegal constraints on type derived from formal discrete types.
3969 2009-04-17 Thomas Quinot <quinot@adacore.com>
3973 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
3974 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
3975 g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb,
3976 g-socket.ads (GNAT.Sockets.Thin.C_Send,
3977 GNAT.Sockets.Thin.Syscall_Send): Remove unused subprograms.
3978 Replace calls to send(2) with equivalent sendto(2) calls.
3979 (GNAT.Sockets.Send_Socket): Factor common code in inlined subprogram.
3980 (GNAT.Sockets.Write): Account for the case of hyper-empty arrays, do not
3981 report an error in that case. Factor code common to the two versions
3982 (datagram and stream) in common routine Stream_Write.
3984 2009-04-17 Robert Dewar <dewar@adacore.com>
3986 * exp_disp.adb: Minor reformatting
3987 Minor code reorganization (use Nkind_In)
3989 * prepcomp.adb: Minor reformatting
3991 * sem_ch3.adb: Minor reformatting
3993 * sem_res.adb: Minor comment addition
3995 * exp_ch5.adb (Expand_Assign_Array): Use Has_Address_Clause to test
3998 * lib-xref.adb (Generate_Reference): Exclude recursive calls from
3999 setting Is_Referenced
4001 * types.ads: Minor reformatting
4003 2009-04-17 Arnaud Charlet <charlet@adacore.com>
4005 * gnat_ugn.texi: Initial documentation on binding generator.
4007 2009-04-17 Ed Schonberg <schonberg@adacore.com>
4009 * einfo.ads, einfo.adb: New attribute Underlying_Record_View, to handle
4010 type extensions whose parent is a type with unknown discriminants.
4012 * exp_aggr.adb (Expand_Record_Aggregate): If the type of an extension
4013 aggregate has unknown discriminants, use the Underlying_Record_View to
4014 obtain the discriminants of the ancestor part.
4016 * exp_disp.adb (Build_Dispatch_Tables): Types that are
4017 Underlying_Record_Views share the dispatching information of the
4018 original record extension.
4020 * exp_ch3.adb (Expand_Record_Extension): If the type inherits unknown
4021 discriminants, propagate dispach table information to the
4022 Underlying_Record_View.
4024 * sem_ch3.adb (Build_Derived_Private_Type): If parent type has unknown
4025 discriminants and declaration is not a completion, generate
4026 Underlying_Record_View to provide proper discriminant information to
4027 the front-end and to gigi.
4029 2009-04-17 Robert Dewar <dewar@adacore.com>
4031 * s-conca5.adb, g-sercom.adb, s-conca5.ads, s-conca7.adb, exp_imgv.adb,
4032 s-conca7.ads, s-crc32.adb, s-crc32.ads, s-conca9.adb, s-conca9.ads,
4033 s-addope.adb, i-cstrin.ads, s-addope.ads, s-carun8.adb, s-carun8.ads,
4034 g-htable.ads, g-hesora.adb, g-hesora.ads, s-htable.adb, s-htable.ads,
4035 s-conca2.adb, s-conca2.ads, a-except.adb, s-conca4.adb, a-except.ads,
4036 s-conca4.ads, s-except.adb, s-except.ads, s-conca6.adb, s-conca6.ads,
4037 g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads, s-conca8.adb,
4038 s-conca8.ads, g-byorma.adb, g-byorma.ads, s-memory.adb, s-memory.ads,
4039 g-speche.adb, g-speche.ads, g-stsifd-sockets.adb, exp_dist.adb,
4040 s-imgenu.adb, s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-exctab.adb,
4041 s-exctab.ads, s-imenne.adb, s-imenne.ads, s-casuti.adb, osint.adb,
4042 s-assert.adb, s-casuti.ads, s-assert.ads, s-os_lib.adb, s-conca3.adb,
4043 s-conca3.ads: Remove unneeded pragma Warnings
4045 2009-04-17 Robert Dewar <dewar@adacore.com>
4047 * g-moreex.adb: Add comments.
4049 * s-auxdec.ads: Add ??? comment for uncommented pragma Warnings (Off)
4051 * s-auxdec-vms_64.ads: Add ??? comment for uncommented pragma
4054 * prepcomp.adb: Add ??? comment
4056 * a-tasatt.adb: Minor reformatting
4058 * g-trasym-vms-alpha.adb: Add ??? comment
4060 * g-trasym-vms-ia64.adb: Add ??? comment
4062 * xoscons.adb: Minor reformatting
4064 * s-tassta.adb: Minor reformatting
4066 * s-scaval.adb: Add ??? comment
4068 * stand.ads: Minor code clean up (remove junk with of Namet)
4070 * s-strcom.adb, s-strcom.ads, s-string.adb, s-string.ads, s-sopco3.adb,
4071 s-sopco3.ads, s-strops.adb, s-strops.ads, s-sopco5.adb, s-sopco5.ads,
4072 s-wchcnv.adb, s-wchcnv.ads, s-ststop.adb, s-ststop.ads, s-soflin.adb,
4073 s-soflin.ads, s-traceb.adb, s-traceb.ads, s-traent.adb, s-traent.ads,
4074 s-secsta.adb, s-secsta.ads, s-utf_32.adb, s-utf_32.ads, s-wchcon.adb,
4075 s-wchjis.adb, s-wchcon.ads, s-wchjis.ads, s-sopco4.adb, s-sopco4.ads,
4076 s-stache.adb, s-stache.ads, s-stoele.adb, s-stoele.ads, s-stalib.adb,
4077 s-stalib.ads, s-os_lib.ads, s-purexc.ads: Remove no longer needed
4078 Warnings off pragmas.
4080 2009-04-17 Pascal Obry <obry@adacore.com>
4082 * initialize.c: Fix test for reallocating the arguments array.
4084 2009-04-17 Geert Bosch <bosch@adacore.com>
4086 * exp_fixd.adb (Expand_Convert_Float_To_Fixed): Have float to fixed
4087 conversion truncate only for decimal fixed point types.
4089 2009-04-17 Jerome Lambourg <lambourg@adacore.com>
4091 * g-comlin.adb (Initialize_Scan_Option): Make sure the sections are
4094 2009-04-17 Robert Dewar <dewar@adacore.com>
4096 * exp_ch5.adb (Expand_Assign_Array): Do not set Forwards_OK and
4097 Backwards_OK if either operand has an address clause.
4099 2009-04-17 Pascal Obry <obry@adacore.com>
4101 * initialize.c: Code clean up, use realloc.
4103 2009-04-17 Pascal Obry <obry@adacore.com>
4105 * initialize.c: Do not get Unicode command line if Unicode support not
4107 Add support for wildcard expansion for Unicode parameters on Win32.
4109 * mingw32.h: Add missing macros when Unicode support not activated.
4111 2009-04-17 Javier Miranda <miranda@adacore.com>
4113 * sem_ch6.adb (Check_Anonymous_Return): Add missing checks to
4114 avoid generating code that references the Current_Master
4115 when compiling without tasks.
4117 2009-04-17 Vincent Celier <celier@adacore.com>
4119 * prj-attr.adb: New project level attribute Target
4121 * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
4124 * prj.ads (Project_Configuration): New component Target
4126 2009-04-17 Thomas Quinot <quinot@adacore.com>
4128 * exp_ch7.adb (Expand_Ctrl_Function_Call): Remove incorrect special
4129 case for the case of an aggregate component, the attach call for the
4130 result is actually needed.
4132 * exp_aggr.adb (Backend_Processing_Possible): Backend processing for
4133 an array aggregate must be disabled if the component type requires
4136 * exp_ch3.adb: Minor reformatting
4138 2009-04-17 Bob Duff <duff@adacore.com>
4140 * output.ads (Indent,Outdent): New procedures for indenting the output.
4141 (Write_Char): Correct comment -- LF _is_ allowed.
4143 * output.adb (Indent,Outdent): New procedures for indenting the output.
4144 Keep track of the indentation level, and make sure it doesn't get too
4146 (Flush_Buffer): Insert spaces at the beginning of each line, if
4147 indentation level is nonzero.
4148 (Save_Output_Buffer,Restore_Output_Buffer): Save and restore the current
4150 (Set_Standard_Error,Set_Standard_Output): Remove superfluous
4151 "Next_Col := 1;". Flush_Buffer does that.
4153 * sem_ch6.adb, sem_ch7.adb (Debug_Flag_C): Reorganize the output
4154 controlled by the -gnatdc switch. It now occurs on entry/exit to the
4155 relevant analysis routines, and calls Indent/Outdent to make the
4156 indentation reflect the nesting level. Add "helper" routines, since
4157 otherwise lots of "return;" statements would skip the debugging output.
4159 2009-04-17 Arnaud Charlet <charlet@adacore.com>
4161 * s-taprop-tru64.adb, s-taprop-vms.adb, s-taprop-linux.adb,
4162 s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop-hpux-dce.adb,
4163 s-taprop-posix.adb (Suspend_Until_True): Protect against early wakeup.
4165 2009-04-17 Thomas Quinot <quinot@adacore.com>
4167 * exp_aggr.adb: Minor code reorganization, no behaviour change.
4169 2009-04-17 Ed Schonberg <schonberg@adacore.com>
4171 * sem_ch8.adb (Use_One_Type): Handle properly a redundant use type
4172 clause in a unit that is a package body or a subunit, when the previous
4173 clause appears in a spec or a parent.
4175 2009-04-17 Thomas Quinot <quinot@adacore.com>
4177 * sinfo.ads, exp_aggr.adb, exp_aggr.ads: Minor reformatting
4179 * exp_ch7.adb: Minor reformatting
4181 2009-04-17 Bob Duff <duff@adacore.com>
4183 * exp_ch4.adb (Expand_Allocator_Expression): In an initialized
4184 allocator, check that the expression of the qualified expression obeys
4185 the constraints of the subtype of the qualified expression.
4187 2009-04-17 Thomas Quinot <quinot@adacore.com>
4189 * sprint.adb (Write_Itype): Add handling of enumeration subtypes.
4191 2009-04-17 Ed Schonberg <schonberg@adacore.com>
4193 * exp_ch4.adb (Expand_Allocator_Expression): Apply constraint check to
4194 aggregate, using context imposed by subtype mark in allocator.
4196 2009-04-17 Pascal Obry <obry@adacore.com>
4198 * gnat_rm.texi: Document GNAT_CODE_PAGE environment variable
4200 2009-04-17 Nicolas Roche <roche@adacore.com>
4202 * initialize.c (__gnat_initialize): remove MAX_PATH limitation on each
4205 2009-04-17 Gary Dismukes <dismukes@adacore.com>
4207 * sem_elim.adb (Eliminate_Error_Msg): Minor change to error message to
4208 cover both calls and attribute references ("call" => "reference").
4210 2009-04-17 Ed Schonberg <schonberg@adacore.com>
4212 * sem_ch3.adb (Analyze_Subtype_Declaration): A subtype of an access
4213 type for which Storage_Size is set to 0 is legal in a pure unit.
4215 2009-04-17 Thomas Quinot <quinot@adacore.com>
4217 * exp_ch7.adb: Minor reformatting
4219 2009-04-17 Robert Dewar <dewar@adacore.com>
4221 * restrict.adb (Check_Restriction_No_Dependence): Don't check
4222 restriction if outside main extended source unit.
4224 * sem_ch10.adb (Analyze_With_Clause): Check No_Dependence restriction
4225 for parents of child units as well as the child unit itself.
4227 2009-04-17 Bob Duff <duff@adacore.com>
4229 * checks.ads: Minor comment fix
4231 * exp_aggr.ads: Minor comment fix
4233 2009-04-17 Nicolas Roche <roche@adacore.com>
4235 * adaint.c: Improve cross compiler detection and handling.
4237 2009-04-17 Eric Botcazou <ebotcazou@adacore.com>
4239 * exp_ch4.adb (Expand_Concatenation): Do not use calls at -Os.
4241 2009-04-17 Pascal Obry <obry@adacore.com>
4243 * mingw32.h: Add S2WSC and WS2SC macros to convert to/from
4246 * adaint.h: Encoding_Unspecified is now defined. Corresponds to the
4247 value when no encoding form paramter is set on Text_IO services.
4249 * adaint.c: CurrentCodePage new variable on Windows.
4250 Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
4253 * mkdir.c: Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
4256 * initialize.c: Initialize CurrentCodePage depending on GNAT_CODE_PAGE
4257 environment variable value. Default is UTF-8.
4259 * s-crtl.ads: Filename_Encoding add Unspecified in the enumeration type.
4260 fopen and freopen encoding parameter is now set to Unspecified.
4261 The default value is in this case UTF-8 (as it was before) but
4262 use the new macros that convert to/from the code page set
4263 at runtime (CurrentCodePage).
4265 * s-fileio.adb: When no encoding specified use Unspecified value.
4267 2009-04-17 Ed Schonberg <schonberg@adacore.com>
4269 * atree.adb, atree.ads: Remove dead code.
4271 2009-04-17 Arnaud Charlet <charlet@adacore.com>
4273 * gcc-interface/Make-lang.in: Update dependencies.
4275 2009-04-17 Ed Schonberg <schonberg@adacore.com>
4277 * sem_ch3.adb (Access_Subprogram_Definition): Additional checks on
4278 illegal uses of incomplete types in formal parts and return types.
4280 * sem_ch6.adb (Process_Formals): Taft-amendment types are legal in
4281 access to subprograms.
4283 * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to use
4284 Taft-amendment types as the return type of an access_to_function type.
4286 * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
4287 type for access_to_subprograms. The check is performed on package exit.
4289 2009-04-17 Ed Schonberg <schonberg@adacore.com>
4291 * atree.ads, atree.adb: Move New_Copy_Tree.to sem_util.
4293 * nlists.ads, nlists.adb: Move New_Copy_List to sem_util.
4295 * lib-load.adb: Use Copy_Separate_Tree rather than New_Copy_Tree
4297 * sem_util.ads, sem_util.adb: New_Copy_Tree and New_Copy_List belong in
4298 semantic units, because the handling of itypes in the copied tree
4299 requires semantic information that does not belong in atree.
4301 2009-04-17 Robert Dewar <dewar@adacore.com>
4303 * par-ch6.adb: Minor reformatting
4305 * prj.adb: Minor reformatting
4307 2009-04-17 Gary Dismukes <dismukes@adacore.com>
4309 * par-ch6.adb (P_Subprogram): Overriding indicators should be allowed
4310 on protected subprogram bodies, so exclude the case where Pf_Flags is
4311 Pf_Decl_Pbod from the error check.
4313 * par-ch9.adb (P_Protected_Operation_Items): Permit overriding
4314 indicators on subprograms in protected bodies, and proceed with parsing
4317 * sem_ch6.adb (Verify_Overriding_Indicator): Exclude protected
4318 subprograms from the check for primitiveness on subprograms with
4319 overriding indicators.
4320 (Check_Overriding_Indicator): Include protected subprograms in the
4321 style check for missing overriding indicators.
4323 2009-04-17 Tristan Gingold <gingold@adacore.com>
4325 * init.c: Fix stack checking for x86 Darwin.
4327 2009-04-17 Vincent Celier <celier@adacore.com>
4329 * prj-attr.adb: New project level attribute Object_File_Suffix
4332 * prj-nmsc.adb (Add_Source): Use the object file suffix to get the
4334 (Process_Compiler): Process attribute Object_File_Suffix
4336 * prj.adb (Object_Name): Use suffix Object_File_Suffix instead of
4337 platform suffix, when specified.
4339 * prj.ads (Language_Config): New component Object_File_Suffix,
4340 defaulted to No_Name.
4341 (Object_Name): New parameter Object_File_Suffix, defaulted to No_Name
4343 * snames.ads-tmpl: New standard name Object_File_Suffix
4345 2009-04-17 Robert Dewar <dewar@adacore.com>
4347 * gnat_rm.texi: Add documentation about No_Streams restriction
4349 * sem_attr.adb (Check_Stream_Attribute): Exclude implicit stream
4350 attributes when checking No_Streams restriction.
4352 2009-04-17 Thomas Quinot <quinot@adacore.com>
4354 * rtsfind.ads (RE_Request_Destroy): New PolyORB s-parint entity.
4356 * exp_dist.adb (PolyORB_Support.Build_General_Calling_Stubs): Add
4357 missing calls to RE_Request_Destroy to deallocate request objects after
4360 2009-04-17 Nicolas Setton <setton@adacore.com>
4362 * link.c: Fix support for passing a response file under Darwin.
4364 2009-04-17 Emmanuel Briot <briot@adacore.com>
4366 * prj.adb (Free): new subprogram.
4368 2009-04-17 Ed Schonberg <schonberg@adacore.com>
4370 * sem_ch3.adb: additional initialization on incomplete subtypes.
4372 * sem_ch6.adb (Process_Formals): if the subprogram is in the private
4373 part and one of the formals is an incomplete tagged type, attach to
4374 list of private dependends of the type for later validation.
4376 * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to declare
4377 primitive operations of a Taft-amendmment type.
4379 * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
4380 type. The check is performed on package exit, possibly after the
4381 subprogram is frozen.
4383 2009-04-17 Vincent Celier <celier@adacore.com>
4385 * prj-nmsc.adb (Get_Directories): Get the object and exec directory
4386 before looking for source directories, but make sure that there are nil
4387 if they are not explicitely declared and there is explicitely no
4388 sources in the project.
4390 2009-04-17 Pascal Obry <obry@adacore.com>
4392 * initialize.c: Set gnat_argv with UTF-8 encoded strings on Windows.
4394 * init.c: Fix minor typo and style fix.
4396 2009-04-17 Robert Dewar <dewar@adacore.com>
4398 * a-except.adb, a-except-2005.adb: Add PE_Address_Of_Intrinsic
4400 * sem_attr.adb (Analyze_Attribute, case Address): Use
4401 PE_Address_Of_Intrinsic.
4403 * types.ads: Add PE_Address_Of_Intrinsic
4405 * types.h: Add PE_Address_Of_Intrinsic
4407 2009-04-17 Nicolas Setton <setton@adacore.com>
4409 * gcc-interface/Makefile.in: Under darwin, build shared libraries
4410 with install_name starting with "@rpath/".
4412 2009-04-17 Nicolas Setton <setton@adacore.com>
4414 * link.c: Add darwin section
4416 2009-04-16 Robert Dewar <dewar@adacore.com>
4418 * g-pehage.adb: Minor reformatting
4420 * sem_ch12.adb: Minor reformatting
4422 * exp_dist.adb: Minor reformatting
4424 * bindgen.adb: Minor style fixes.
4426 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4428 * sem_eval.adb (Eval_Indexed_Component): Extend constant-folding of
4429 indexed components to the case where the prefix is a static string
4432 2009-04-16 Javier Miranda <miranda@adacore.com>
4434 * exp_ch3.adb (Expand_N_Object_Declaration): In case of build-in-place
4435 objects avoid any further expansion of the expression initializing the
4438 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4440 * sem_ch12.adb (Preanalyze_Actuals): If the instance is a child unit
4441 that hides an outer homograph, make that homograph invisible when
4442 analyzing the actuals, to to prevent illegal direct visibility on it.
4444 2009-04-16 Eric Botcazou <ebotcazou@adacore.com>
4446 * g-pehage.adb (Initialize): Fix off-by-one error.
4448 2009-04-16 Tristan Gingold <gingold@adacore.com>
4450 * init.c: Detect real stack overflow on Darwin.
4452 * system-darwin-x86.ads: Use stack probing on darwin x86.
4454 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4456 * sem_attr.adb (Analyze_Attribute, case 'Address): It is illegal to
4457 take the address of an intrinsic subprogram.
4459 2009-04-16 Arnaud Charlet <charlet@adacore.com>
4461 * gcc-interface/Makefile.in: Change g-trasym to g-trasym-unimplemented
4462 for the targets where GNAT.Traceback.Symbolic is not supported.
4464 2009-04-16 Vincent Celier <celier@adacore.com>
4466 * g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: New file.
4468 * g-trasym.ads: Update comments.
4470 2009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
4472 * tracebak.c (STOP_FRAME): Verify validity of the current address
4473 before dereferencing.
4475 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4477 * sprint.adb (Write_Itype): If the itype is an array subtype, preserve
4478 the original location of the index expressions and the index subtypes,
4479 to prevent spurious out-of-scope references in gigi.
4481 2009-04-16 Tristan Gingold <gingold@adacore.com>
4483 * init.c, s-osinte-darwin.ads, system-darwin-x86_64.ads:
4484 Add support for stack checking on darwin.
4486 2009-04-16 Vincent Celier <celier@adacore.com>
4488 * prj-attr.adb: New attribute Runtime_Source_Dir
4490 * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Process
4491 attribute Runtime_Source_Dir.
4492 (Check_Naming_Schemes): Give default values to out parameters to avoid
4495 * prj.ads (Language_Config): New component Runtime_Source_Dir
4497 * snames.ads-tmpl: New standard name Runtime_Source_Dir
4499 2009-04-16 Pascal Obry <obry@adacore.com>
4501 * adaint.h, adaint.c (__gnat_rmdir): New routine.
4502 Simple wrapper routines used to convert to proper encoding on
4505 * s-crtl.ads: Use __gnat_rmdir instead of direct call to the C library.
4507 * g-dirope.adb (Remove_Dir): Fix a bug, the root directory was removed
4510 2009-04-16 Pascal Obry <obry@adacore.com>
4512 * s-crtl.ads, s-os_lib.adb: Minor code clean-up.
4514 2009-04-16 Thomas Quinot <quinot@adacore.com>
4516 * snames.ads-tmpl (Name_Defined): New predefined name for use by the
4517 integrated preprocessor.
4519 * prep.ads, prep.adb (Setup_Hooks): New subprogram.
4520 (Initialize): Split into two subprograms, Initialize (to be called
4521 prior to compiler command line processing) and Setup_Hooks (to be called
4522 later on when the first source file is loaded).
4524 * gprep.adb: Change call to Prep.Initialize to call to Prep.Setup_Hooks.
4525 Add call to Prep.Initialize.
4527 * sinput-l.adb, prepcomp.adb: Change call to Prep.Initialize to call
4528 to Prep.Setup_Hooks.
4530 2009-04-16 Pascal Obry <obry@adacore.com>
4532 * adaint.h, adaint.c (__gnat_chdir): New routine.
4533 Simple wrapper routines used to convert to proper encoding on
4536 * s-crtl.ads: Use __gnat_chdir instead of direct call to the C library.
4538 * a-direct.adb, g-dirope.adb: Use chdir from System.CRTL.
4540 2009-04-16 Quentin Ochem <ochem@adacore.com>
4542 * sinput-p.adb (Clear_Source_File_Table): Use Sinput.Initialize instead
4545 2009-04-16 Eric Botcazou <ebotcazou@adacore.com>
4547 * a-convec.ads (Is_Empty): Mark inline.
4549 2009-04-16 Nicolas Roche <roche@adacore.com>
4551 * init.c (__gnat_init_float): Initialize FPU on x86_64 windows
4553 2009-04-16 Thomas Quinot <quinot@adacore.com>
4555 * prepcomp.adb: Minor reformatting
4557 2009-04-16 Jerome Lambourg <lambourg@adacore.com>
4559 * sem_prag.adb (Process_Import_Or_Interface): With .NET,
4560 Access_Subprogram types can also be imported.
4561 (Check_Form_Of_Interface_Name): Accept '/' character in entity CIL
4564 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4566 * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
4567 preserve homonym chain when the declaration is rewritten into a
4568 renaming declaration, in order to preserve visibility structure.
4570 2009-04-16 Jerome Lambourg <lambourg@adacore.com>
4572 * sem_prag.adb (Analyze_Pragma): Make sure that pragma pack is not
4573 taken into account for VM targets.
4575 2009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
4577 * g-calend.ads, g-calend.adb (Week_In_Year): Now calls
4579 (Year_Week_In_Year): New routine which contains the original code from
4580 Week_In_Year. Add the missing special case for January 1st falling on
4583 2009-04-16 Thomas Quinot <quinot@adacore.com>
4585 * exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic
4586 actual type, use the base type to build the To_Any function.
4587 (Build_From_Any_Function): Remove junk, useless subtype conversion.
4589 2009-04-16 Thomas Quinot <quinot@adacore.com>
4591 * exp_ch9.adb, exp_code.adb, tbuild.adb, sem_case.adb,
4592 restrict.adb: Minor code reorganization (use
4593 Add_{Char,Str}_To_Name_Buffer instead of inlining it by hand).
4595 2009-04-16 Bob Duff <duff@adacore.com>
4597 * exp_ch6.ads, exp_ch6.adb (Is_Build_In_Place_Function_Return): Remove,
4600 2009-04-16 Thomas Quinot <quinot@adacore.com>
4602 * sem_ch4.adb: Minor reformatting
4604 * adaint.c: Remove junk duplicated code.
4606 * sem_ch3.adb: Minor reformatting
4608 * exp_dist.adb: Minor comment rewording
4610 2009-04-16 Robert Dewar <dewar@adacore.com>
4612 * gnat_rm.texi: Document effect of Assume_No_Invalid_Values and -gnatVa
4615 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4617 * sem_ch4.adb (Find_Equality_Types): Filter out types that are not
4618 usable before calling Add_One_Interp, to resolve spurious ambiguities.
4620 2009-04-16 Robert Dewar <dewar@adacore.com>
4622 * Make-lang.in: Add entries for s-conca?.o
4624 * Makefile.rtl: Add entries for s-conca?
4626 * debug.adb: Add debug flags -gnatd.c and -gnatd.C to control behavior
4627 of concatenation expansion
4629 * exp_ch4.adb (Expand_Concatenation): Generate calls for certain
4630 string cases instead of expanding assignments inline.
4632 * opt.ads (Optimize_Size): New flag
4634 * s-conca2.ads, s-conca2.adb, s-conca3.adb, s-conca3.ads,
4635 s-conca4.adb, s-conca4.ads, s-conca5.adb, s-conca5.ads, s-conca6.adb,
4636 s-conca6.ads, s-conca7.ads, s-conca7.adb, s-conca8.adb, s-conca8.ads,
4637 s-conca9.adb, s-conca9.ads: New file.
4639 2009-04-16 Robert Dewar <dewar@adacore.com>
4641 * exp_ch6.adb: Add comments
4643 * rtsfind.ads: Add entries for s-conca? routines
4645 2009-04-16 Arnaud Charlet <charlet@adacore.com>
4647 * gcc-interface/Make-lang.in: Update dependencies.
4649 * gcc-interface/Makefile.in: Update translation for vms.
4651 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4653 * sem_ch12.adb (Map_Formal_Package_Entities): renamed from Map_Entities
4654 and made global, to be used when installing parents of a child
4655 instance, to provide mappings for entities declared in formal packages
4656 of ancestor units. Now called from Install_Formal_Packages.
4658 2009-04-16 Doug Rupp <rupp@adacore.com>
4660 * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events with others
4661 notation for clarity.
4663 * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
4664 s-taprop-mingw.adb, s-taprop-linux.adb, s-taprop-solaris.adb,
4665 s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-posix.adb
4666 (Initialize): Initialize Known_Tasks with Environment task.
4668 * s-taskin.ads (Task_States): Move new states to end for the sake of
4671 * s-tassta.adb (Task_Wrapper): Fix comment about Enter_Task.
4673 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4675 * exp_ch9.adb (Expand_N_Protected_Type_Declaration): If a protected
4676 operation has an inline pragma, propagate the flag to the internal
4677 unprotected subprogram.
4679 2009-04-16 Doug Rupp <rupp@adacore.com>
4681 * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-mingw.adb,
4682 s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-irix.adb,
4683 s-taprop-hpux-dce.adb, s-taprop-posix.adb
4684 (Enter_Task): Move Known_Tasks initialization to s-tassta.adb
4686 * s-taprop-vms.adb (Enter_Task): Likewise.
4687 (Initialize): Import DBEXT, Debug_Register. Register DBGEXT callback.
4689 * s-tassta.adb (Activate_Tasks): After task creation set state to
4690 Activating, vice Runnable. Initialize Known_Tasks, moved here from
4691 s-taprop.adb (Enter_Task). Set Debug_Event_Activating for debugger.
4692 Set state to Runnable after above.
4693 (Task_Wrapper): Set Debug_Event_Run. In exception block set
4694 Debug_Event_Terminated.
4696 * s-taskin.ads (Task_States): Add new states Activiting and
4697 Activator_Delay_Sleep.
4698 (Bit_Array, Debug_Event_Array): New types.
4699 (Global_Task_Debug_Event_Set: New flag.
4700 (Common_ATCB): New field Debug_Events.
4702 * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events.
4704 * s-tasren.adb (Timed_Selective_Wait): Set Activator_Delay_Sleep vice
4707 * s-tasini.adb (Locked_Abort_To_Level): Add case alternatives for when
4708 Activating and when Acceptor_Delay_Sleep.
4710 * s-tasdeb.ads: Add constants for Debug_Events.
4711 (Debug_Event_Kind_Type): New subtype.
4712 (Signal_Debug_Event): New subprogram.
4714 * s-tasdeb.adb (Signal_Debug_Event): New null subprogram.
4716 2009-04-16 Thomas Quinot <quinot@adacore.com>
4718 * sem_elim.adb: Minor reformatting
4720 * freeze.adb: Minor reformatting
4722 * exp_ch4.adb: Minor reformatting
4724 2009-04-16 Emmanuel Briot <briot@adacore.com>
4726 * prj-nmsc.adb (Path_Name_Of): fix memory leak
4728 2009-04-16 Robert Dewar <dewar@adacore.com>
4730 * sinfo.ads (Backwards_OK, Forwards_OK): Clarify documentation
4732 2009-04-16 Vincent Celier <celier@adacore.com>
4734 * fmap.adb (Initialize): Show the current line when the mapping file
4735 is detected as "incorrectly formatted".
4737 2009-04-16 Robert Dewar <dewar@adacore.com>
4739 * sem_ch12.adb: Minor reformatting
4741 * sem_ch5.adb: Minor comment addition
4743 * sem_util.adb: Minor reformatting
4745 * sinput-p.adb: Minor reformatting
4746 Add missing pragma Warnings (On)
4748 2009-04-16 Ed Falis <falis@adacore.com>
4750 * s-vxwext-kernel.adb: (ERROR): deleted unused constant
4752 2009-04-16 Vincent Celier <celier@adacore.com>
4754 * ali-util.adb: Minor comment spelling error fix
4756 2009-04-16 Eric Botcazou <ebotcazou@adacore.com>
4758 * exp_ch5.adb (Expand_Assign_Array): For the GCC back-end, do not
4759 generate an assignment loop in case of overlap.
4761 2009-04-16 Olivier Hainque <hainque@adacore.com>
4763 * gnat_ugn.texi (gnatmem description): Make it explicit that
4764 gnatmem is designed to work in association with static runtime
4767 2009-04-16 Thomas Quinot <quinot@adacore.com>
4769 * sem_type.adb: Minor reformatting
4771 2009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
4773 * s-osprim-darwin.adb, s-osprim-posix.adb (Clock): Add comment
4774 concerning return codes of gettimeofday and return value check.
4776 2009-04-16 Ed Falis <falis@adacore.com>
4778 * s-vxwext-kernel.ads (Int_Lock, Int_Unlock): set to convention C so
4779 body can be renaming of imported routines.
4781 2009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
4783 * s-asthan-vms-alpha.adb: Disable warnings on alignment in a more
4786 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
4788 * exp_ch9.adb: Comment improvements.
4789 (Build_Entry_Family_Name): Add parentheses around the index of a entry
4792 2009-04-15 Bob Duff <duff@adacore.com>
4794 * sem_warn.adb (Check_Infinite_Loop_Warning): Catch cases like
4795 "while X /= null loop" where X is unchanged inside the loop. We were
4796 not warning in this case, because of the pointers -- we feared that the
4797 loop variable could be updated via a pointer, if there are any pointers
4798 around the place. But that is impossible in this case.
4800 * sem_util.adb (May_Be_Lvalue): This routine was overly pessimistic in
4801 the case of dereferences. In X.all, X cannot be an l-value. We now
4802 catch that case (and implicit dereferences, too).
4804 2009-04-15 Vincent Celier <celier@adacore.com>
4806 * sinput-p.ads, sinput-p.adb (Clear_Source_File_Table): New procedure
4808 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4810 * sem_ch12.adb (Is_Actual_Of_Previous_Formal): Make fully recursive.
4812 (Analyze_Package_Instantiation): If generic unit in child instance is
4813 the same as generic unit in parent instance, look for an outer homonym
4814 to locate the desired generic.
4816 2009-04-15 Bob Duff <duff@adacore.com>
4818 * sem_ch5.adb (Analyze_Loop_Statement): Don't check for infinite loop
4819 warnings unless the loop comes from source, because checking generated
4820 loops is a waste of time, and makes it harder to debug
4821 Check_Infinite_Loop_Warning.
4823 * sem_warn.adb (Check_Infinite_Loop_Warning): If the local variable
4824 tested in the while loop is a renaming, do not warn. Otherwise, we get
4825 false alarms, because it's usually renaming something that we can't
4826 deal with (an indexed component, a global variable, ...).
4828 * gnat_rm.texi: Fix typo
4830 2009-04-15 Thomas Quinot <quinot@adacore.com>
4832 * sem_ch6.adb: Minor reformatting
4834 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
4836 * exp_ch7.adb (Expand_Ctrl_Function_Call): Check for the case where the
4837 immediate parent of the controlled function call is a component
4840 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4842 * sem_ch8.adb (Use_One_Type): If the type is tagged, indicate that the
4843 corresponding class-wide type is also in use.
4845 2009-04-15 Thomas Quinot <quinot@adacore.com>
4847 * frontend.adb: Minor comment fix
4849 2009-04-15 Robert Dewar <dewar@adacore.com>
4851 * gnatchop.adb (BOM_Length): New global variable
4852 (Write_Unit): Add new parameter Write_BOM
4853 (Write_Chopped_Files): Check for BOM and set Write_BOM for call
4856 * gnat_ugn.texi: Add note on propagation of BOM by gnatchop
4858 2009-04-15 Geert Bosch <bosch@adacore.com>
4860 * system-mingw-x86_64.ads, system-darwin-x86_64.ads
4861 (Backend_Overflow_Checks): Set to True.
4863 2009-04-15 Gary Dismukes <dismukes@adacore.com>
4865 * par-ch3.adb (P_Type_Declaration): Issue an error if the synchronized
4866 keyword is given in a record extension.
4868 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
4870 * exp_ch7.adb (Expand_Ctrl_Function_Call): Procede with the expansion
4871 of a controlled function call in the context of a record aggregate.
4872 This does not apply to array aggregates since the call will be expanded
4875 2009-04-15 Ed Falis <falis@adacore.com>
4877 * s-osinte-vxworks-kernel.adb, s-osinte-vxworks.adb,
4878 s-osinte-vxworks.ads s-vxwext.ads, s-vxwext-kernel.adb,
4879 s-vxwext-kernel.ads, s-vxwext-rtp.ads, s-vxwext-rtp.adb: Reorganize
4880 s-osinte-vxworks* and s-vxwext*.
4882 2009-04-15 Arnaud Charlet <charlet@adacore.com>
4884 * gcc-interface/Make-lang.in: Update dependencies.
4886 * gcc-interface/Makefile.in: Reorganization of s-osinte-vxworks*
4889 2009-04-15 Robert Dewar <dewar@adacore.com>
4891 * sem_ch13.adb (Unchecked_Conversions): Store source location instead
4892 of node for location for warning messages.
4894 * gnatchop.adb: Minor reformatting
4896 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4898 * exp_ch6.adb: additional guard for renaming declarations for in
4899 parameters of an array type.
4901 2009-04-15 Robert Dewar <dewar@adacore.com>
4903 * sem_eval.adb (Get_Static_Length): Go to origin node for array bounds
4904 in case they were rewritten by expander (Force_Evaluation).
4906 * targparm.adb (Get_Target_Parameters): Correct check for
4907 Suppress_Exception_Locations.
4909 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4911 * exp_ch6.adb (Expand_Inlined_Call): If an in-parameter in a call to be
4912 inlined is of an array type that is not bit-packed, use a renaming
4913 declaration to capture its value, rather than a constant declaration.
4915 2009-04-15 Robert Dewar <dewar@adacore.com>
4917 * rtsfind.adb: Minor reformatting.
4919 2009-04-15 Emmanuel Briot <briot@adacore.com>
4921 * prj-part.adb, prj-tree.adb, prj-tree.ads (Restore_And_Free): renames
4922 Restore, and free the saved context.
4924 2009-04-15 Gary Dismukes <dismukes@adacore.com>
4926 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Move error check
4927 for illegal private extension from a synchronized interface parent in
4928 front of check for illegal limited extension so that limited extension
4929 from a synchronized interface will be rejected.
4930 (Check_Ifaces): Check that a private extension that has a synchronized
4931 interface as a progenitor must be explicitly declared synchronized.
4932 Also check that a record extension cannot derive from a synchronized
4935 2009-04-15 Pascal Obry <obry@adacore.com>
4937 * adaint.h (__gnat_unlink): Add spec.
4938 (__gnat_rename): Likewise.
4940 2009-04-15 Vincent Celier <celier@adacore.com>
4942 * prj-nmsc.adb: Minor spelling error corrections in error messages
4944 2009-04-15 Robert Dewar <dewar@adacore.com>
4946 * sinfo.ads: Minor comment update
4948 * opt.ads: Minor comment updates
4950 * checks.adb (Enable_Overflow_Check): Do not set Do_Overflow_Check for
4953 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4955 * exp_disp.ads, exp_disp.adb (Register_Primitive): Is now a function
4956 that generates the code needed to update a dispatch table when a
4957 primitive operation is declared with a subprogram body without previous
4958 spec. Insertion of the generated code is responsibility of the caller.
4959 (Make_DT): When building static tables, append the code created by
4960 Register_Primitive to update a secondary table after it has been
4963 * exp_ch3.adb, exp_ch6.adb: use new version of Register_Primitive.
4965 * sem_disp.adb (Check_Dispatching_Operation): Call Register_Primitive
4966 on an overriding operation that implements an interface operation only
4967 if not building static dispatch tables.
4969 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
4971 * a-caldel-vms.adb (To_Duration): Declare a "safe" end of time which
4972 does not cause overflow when converted to Duration. Use the safe value
4973 as the maximum allowable time delay..
4975 2009-04-15 Jerome Lambourg <lambourg@adacore.com>
4977 * g-comlin.adb (Set_Command_Line): When adding a switch with attached
4978 parameter, specify that the delimiter is NUL, otherwise "-j2" will be
4979 translated to "-j 2".
4981 2009-04-15 Bob Duff <duff@adacore.com>
4983 * rtsfind.adb (Maybe_Add_With): Split out procedure to add implicit
4984 with_clauses, to avoid code duplication. Change this processing so we
4985 always add a with_clause on the main unit if needed.
4987 2009-04-15 Pascal Obry <obry@adacore.com>
4989 Add support for Win32 native encoding for delete/rename routines.
4991 * adaint.c (__gnat_unlink): New routine.
4992 (__gnat_rename): New routine.
4993 Simple wrapper routines used to convert to proper encoding on
4996 * s-os_lib.adb: Use __gnat_unlink and __gnat_rename instead of direct
4997 call to the C library.
4999 * g-sercom-mingw.adb, s-win32.ads: Update Win32 binding.
5001 2009-04-15 Robert Dewar <dewar@adacore.com>
5003 * s-tassta.adb: Minor reformatting
5005 2009-04-15 Robert Dewar <dewar@adacore.com>
5007 * frontend.adb (Frontend): Set proper default for
5008 Warn_On_Non_Local_Exception.
5010 * opt.ads (Exception_Handler_Encountered): New flag
5011 (No_Warn_On_Non_Local_Exception): New flag
5013 * par-ch11.adb (P_Exception_Handler): Set Exception_Handler_Encountered
5015 * sem_warn.adb (Set_Warning_Switch): Set No_Warn_On_Non_Local_Exception
5016 (Set_Dot_Warning_Switch): Set No_Warn_On_Non_Local_Exception
5018 2009-04-15 Cyrille Comar <comar@adacore.com>
5020 * s-tassta.adb, a-exextr.adb, a-elchha.adb
5021 (Ada.Exception.Last_Chance_Handler): Do not print unhandled exception
5022 message when exception traces are active since it would generate
5023 redundant information.
5024 (Exception_Traces.Notify_Exception): put message output by a critical
5025 section to avoid unsynchronized output.
5026 (Trace_Unhandled_Exception_In_Task): put message output by a critical
5027 section to avoid unsynchronized output.
5029 2009-04-15 Emmanuel Briot <briot@adacore.com>
5031 * g-comlin.adb, prj-tree.adb, prj-tree.ads, prj.adb, prj.ads
5032 (Free): New subprogram.
5034 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5036 * a-calend.adb: Add new constant Nanos_In_Four_Years.
5037 (Formatting_Operations.Time_Of): Change the way four year chunks of
5038 nanoseconds are added to the intermediate result.
5040 2009-04-15 Nicolas Setton <setton@adacore.com>
5042 * sysdep.c: Add __APPLE__ in the list of systems where get_immediate
5043 does not need to wait for a carriage return.
5045 2009-04-15 Tristan Gingold <gingold@adacore.com>
5047 * bindgen.adb: Do not generate adafinal if No_Finalization restriction
5050 2009-04-15 Ed Schonberg <schonberg@adacore.com>
5052 * freeze.adb (Freeze_Entity): improve error message for improper use of
5054 Diagnose additional illegal uses of incomplete types in formal parts.
5055 appearing in formal parts.
5057 * sem_ch6.adb (Process_Formals, Analyze_Return_Type): ditto.
5059 2009-04-15 Robert Dewar <dewar@adacore.com>
5061 * exp_ch4.adb (Expand_N_Allocator): Install test for object too large.
5063 2009-04-15 Nicolas Roche <roche@adacore.com>
5065 * adaint.c: Add function __gnat_lwp_self that retrieves the LWP of the
5068 * s-osinte-linux.ads: Import the __gnat_lwp_self function as lwp_self
5070 * s-taprop-linux.adb (Enter_Task): Store the LWP in the TCB
5072 2009-04-15 Ed Schonberg <schonberg@adacore.com>
5074 * sem_ch4.adb: improve error message on exponentiation.
5076 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5078 * a-calend.adb: Move constant Epoch_Offset from package
5079 Conversion_Operations to top level.
5080 (Delay_Operations.To_Duration): Define a constant which represents
5081 "end of time" and use it as a guard against very distant delay dates.
5082 Protect the code against overflow when performing the origin shift to
5085 2009-04-15 Robert Dewar <dewar@adacore.com>
5087 * sem_prag.adb: Minor reformatting.
5089 * sem_type.adb: Minor reformatting
5091 2009-04-15 Javier Miranda <miranda@adacore.com>
5093 * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Add missing
5094 support to check eliminated subprograms.
5096 * sem_elim.ads (Eliminate_Error_Msg): Update documentation.
5098 * sem_elim.adb (Set_Eliminated): Add support for elimination of
5099 dispatching subprograms.
5101 * exp_disp.adb (Make_DT): Minor code cleanup when freezing primitive
5102 operations. Initialize with "null" the slots of eliminated dispaching
5104 (Write_DT): Add output for eliminated primitives.
5106 * sem_disp.adb (Check_Dispatching_Call): Check eliminated primitives.
5108 2009-04-15 Ed Schonberg <schonberg@adacore.com>
5110 * sem_ch8.adb (Use_One_Type): If both clauses appear on the same unit,
5111 the second is redundant, regardless of scopes.
5113 2009-04-15 Vincent Celier <celier@adacore.com>
5115 * prj-nmsc.adb (Get_Directories): Check for sources before checking
5116 the object directory as when there are no sources, they may not be any
5119 * make.adb (Gnatmake): Do not attempt to get the path name of the exec
5120 directory, when there are no exec directory.
5122 2009-04-15 Ed Schonberg <schonberg@adacore.com>
5124 * sem_type.adb (Remove_Conversions): In order to resolve spurious
5125 ambiguities, refine removal of universal interpretations from complex
5126 expressions with literal arguments, when some numeric operators have
5127 been declared abstract.
5129 2009-04-15 Ed Falis <falis@adacore.com>
5131 * init.c: Map SIGSEGV to Storage_Error for all targets for uniformity
5132 and backward compatibility for targets using probing for stack overflow
5134 2009-04-15 Ed Schonberg <schonberg@adacore.com>
5136 * sem_prag.adb (Analyze_Pragma, case 'Obsolescent): Pragma is legal
5137 after any declaration, including renaming declarations.
5139 2009-04-15 Arnaud Charlet <charlet@adacore.com>
5141 * gcc-interface/Make-lang.in: Update dependencies.
5143 * gcc-interface/Makefile.in: Fix VxWorks target pairs.
5144 Update xenomai target pairs.
5146 2009-04-15 Javier Miranda <miranda@adacore.com>
5148 * exp_ch4.adb (Expand_N_Allocator): Code cleanup.
5150 * sem_ch6.adb (Check_Anonymous_Return): Add missing support for
5151 functions returning anonymous access to class-wide limited types. Mark
5152 also the containing scope as a task master.
5154 * sem_ch8.adb (Restore_Scope_Stack): Add missing management for
5155 limited-withed packages. Required to restore their visibility after
5156 processing packages associated with implicit with-clauses.
5158 * exp_ch3.adb (Build_Class_Wide_Master): Avoid marking masters
5159 associated with return statements because this work is now done by
5160 Check_Anonymous_Return.
5161 (Build_Master): Code cleanup.
5163 2009-04-15 Thomas Quinot <quinot@adacore.com>
5165 * sem_warn.ads: Minor reformatting
5167 2009-04-15 Ed Schonberg <schonberg@adacore.com>
5169 * sem_ch3.adb: better error message for illegal interfaces
5171 * sem_ch6.adb (Possible_Freeze): Delay freezing a subprogram if a
5172 formal is an incomplete type from a limited_with clause.
5174 2009-04-15 Vincent Celier <celier@adacore.com>
5176 * prj-nmsc.adb (Locate_Directory): New Boolean parameter
5177 Externally_Built indicating if the project is externally built. If it
5178 is, and --subdirs is specified, but the subdir does not exist, look
5179 for the specified directory, without the subdir.
5181 2009-04-15 Gary Dismukes <dismukes@adacore.com>
5183 * a-tasatt.adb: Fix typo, plus minor reformatting
5185 * sem_ch3.ads: Add missing hyphen ("class wide" => "class-wide").
5187 * sem_ch10.adb: Add missing hyphen ("use visible" => "use-visible").
5189 2009-04-15 Ed Schonberg <schonberg@adacore.com>
5191 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Verify that a
5192 private extension whose parent is a synchronized interface carries an
5193 explicit synchronized keyword.
5195 2009-04-15 Thomas Quinot <quinot@adacore.com>
5197 * exp_smem.adb (Make_Shared_Var_Procs): For a protected type,
5198 instantiate generic shared object package with the corresponding
5201 2009-04-15 Arnaud Charlet <charlet@adacore.com>
5203 * system-linux-sparc.ads: Remove obsolete entries.
5205 2009-04-15 Thomas Quinot <quinot@adacore.com>
5207 * s-tasuti.ads: Add ??? comment
5209 2009-04-15 Ed Schonberg <schonberg@adacore.com>
5211 * sem_ch3.adb (Analyze_Type_Declaration): Create freeze node for access
5212 type even if the designated type comes from a limited_with clause, to
5213 ensure that the symbol for the finalization list of the access type is
5216 2009-04-10 Robert Dewar <dewar@adacore.com>
5218 * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): Catch more cases
5219 for warning suppression.
5221 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5223 * sem_ch8.adb (Use_One_Type): If the two use_type clauses are
5224 identical, there is no redudancy to check.
5226 2009-04-10 Gary Dismukes <dismukes@adacore.com>
5228 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Delete redundant
5229 calls initializing SS_Allocator (which is initialized in following
5231 (Expand_Simple_Function_Return): Add comment about False value for
5232 Comes_From_Source on secondary-stack allocator.
5234 * exp_ch9.adb (Build_Entry_Family_Name): Add comment.
5235 (Build_Entry_Name): Add comment.
5237 2009-04-10 Robert Dewar <dewar@adacore.com>
5239 * einfo.ads, einfo.adb (Low_Bound_Tested): New name for Low_Bound_Known
5241 * sem_prag.adb (Analyze_Pragma, case Check): Remove check for lower
5242 bound tested, since this is now done more generally in Sem_Res.
5244 * sem_res.adb (Resolve_Comparison_Op): Add call to
5245 Check_Lower_Bound_Tested.
5246 (Resolve_Equality_Op): Add call to Check_Lower_Bound_Tested
5248 * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): New procedure
5249 (Low_Bound_Tested): New name for Low_Bound_Known flag
5251 * exp_ch5.adb: Minor reformatting
5254 Add comments on copying the Comes_From_Source flag for allocators
5257 Add comments on copying the Comes_From_Source flag for allocators
5259 * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Copy
5260 Comes_From_Source flag from old allocator to new one.
5262 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5264 * sem_ch6.ads: Address missing documentation query
5266 2009-04-10 Vincent Celier <celier@adacore.com>
5269 Add new Linker attributes Max_Command_Line_Length, Response_File_Format
5270 and Response_File_Switches.
5272 * prj-nmsc.adb (Process_Linker): Process new attributes
5273 Max_Command_Line_Length, Response_File_Format and
5274 Response_File_Switches.
5276 * prj.ads (Response_File_Format): New enumeration type
5277 (Project_Configuration): New componants Max_Command_Line_Length,
5278 Resp_File_Format and Resp_File_Options.
5280 * snames.ads-tmpl: Add new standard names for linking response files
5281 for gprbuild: GNU, None, Object_List, Option_List,
5282 Max_Command_Line_Length, Response_File_Format and
5283 Response_File_Switches.
5285 2009-04-10 Geert Bosch <bosch@adacore.com>
5287 * system-aix.ads, system-darwin-ppc.ads, system-darwin-x86.ads,
5288 system-freebsd-x86.ads, system-hpux.ads, system-hpux-ia64.ads,
5289 system-irix-n32.ads, system-irix-o32.ads, system-linux-alpha.ads,
5290 system-linux-hppa.ads, system-linux-ia64.ads, system-linux-ppc.ads,
5291 system-linux-s390.ads, system-linux-s390x.ads, system-linux-sh4.ads,
5292 system-linux-sparc.ads, system-linux-x86_64.ads, system-linux-x86.ads,
5293 system-mingw.ads, system-solaris-sparc.ads, system-solaris-sparcv9.ads,
5294 system-solaris-x86.ads, system-tru64.ads, system-vms_64.ads,
5295 system-vms.ads, system-vms-ia64.ads, system-vms-zcx.ads,
5296 system-vxworks-arm.ads, system-vxworks-m68k.ads,
5297 system-vxworks-mips.ads, system-vxworks-ppc.ads,
5298 system-vxworks-sparcv9.ads, system-vxworks-x86.ads
5299 (Backend_Overflow_Checks): Set to True.
5301 2009-04-10 Thomas Quinot <quinot@adacore.com>
5303 * exp_attr.adb: Minor reformatting
5305 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5307 * sem_prag.adb (Check_Precondition_Postcondition): Within a generic,
5308 analyze the expression for a postcondition, even if the compiler mode
5311 2009-04-10 Robert Dewar <dewar@adacore.com>
5313 * sem_aux.adb: Minor reformatting
5315 2009-04-10 Ed Falis <falis@adacore.com>
5317 * init.c: Change VxWorks 6 stack overflow checking for kernel apps.
5319 * system-vxworks-ppc.ads, system-vxworks-x86.ads: Update header.
5321 2009-04-10 Thomas Quinot <quinot@adacore.com>
5323 * sem_ch6.ads (Check_Subtype_Conformant): Add ??? comment for
5324 undocumented formal.
5327 * a-direio.ads: Fix typo in comment
5329 * sem_ch3.adb, g-dirope.adb, sem_type.adb, sem_ch12.adb, sem_case.adb,
5330 errout.adb, sem_ch4.adb, sem_ch11.adb, exp_dist.adb, sem_ch13.adb:
5331 Use uniform phrasing for comment at start of subprogram body.
5333 * xsnamest.adb: Add note to explain why we use specific names for the
5334 newly generated files instead of generating snames.{ads,adb,h} directly
5336 2009-04-10 Sergey Rybin <rybin@adacore.com>
5339 Add qualifier for new gnatstub option '--no-exception'
5342 Add the description of the new gnatstub option '--no-exception'
5344 2009-04-10 Robert Dewar <dewar@adacore.com>
5346 * rtsfind.adb: Minor reformatting
5348 2009-04-10 Thomas Quinot <quinot@adacore.com>
5350 * sem_disp.adb: Minor reformatting.
5351 Add comment pointing to RM clause for the case of warning against a
5352 (failed) attempt at declaring a primitive operation elsewhere than in a
5355 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5357 * sem_ch12.adb (Denotes_Formal_Package): Check whether the package is
5358 an actual for a previous formal package of the current instance.
5360 2009-04-10 Bob Duff <duff@adacore.com>
5362 * rtsfind.adb (RTE): Put implicit with_clauses on whatever unit needs
5363 them first, rather than on the extended main unit.
5365 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5367 * sem_ch6.adb (Check_Discriminant_Conformance): If discriminant
5368 specification of full view carries a null exclusion indicator, create
5369 an itype for it, to check for conformance with partial view.
5371 2009-04-10 Bob Duff <duff@adacore.com>
5373 * rtsfind.ads: Minor code change: make RE_Unit_Table constant.
5375 * rtsfind.adb: Minor comment changes, and remove useless code.
5377 * sinfo.ads: Add ??? comment.
5379 2009-04-10 Vincent Celier <celier@adacore.com>
5381 * vms_data.ads: Add missing GNAT SYNC VMS qualifiers -main= and -U
5383 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5385 * exp_attr.adb (Expand_N_Attribute_Reference, case 'Tag): If the tagged
5386 type is a synchronized type, retrieve tag information from the
5387 corresponding record, which has the dispatch table link.
5389 2009-04-10 Jerome Lambourg <lambourg@adacore.com>
5391 * g-comlin.adb (Group_Analysis): Take care of switches that might be
5392 decomposed afterwards, but are present as-is in the command line
5393 configuration, and thus should be kept as-is.
5395 2009-04-10 Robert Dewar <dewar@adacore.com>
5397 * gnat_rm.texi: Document that postconditions are tested on implicit
5400 * sem_aux.adb: Minor reformatting
5402 2009-04-10 Gary Dismukes <dismukes@adacore.com>
5404 * itypes.adb (Create_Null_Excluding_Itype): Apply Base_Type when
5407 * par-ch3.adb (P_Access_Type_Definition): Set new attribute
5408 Null_Exclusion_In_Return_Present when an access-to-function type has a
5409 result type with an explicit not null.
5411 * sem_ch3.adb (Access_Subprogram_Definition): If a null exclusion is
5412 given on the result type, then create a null-excluding itype for the
5415 * sem_ch6.adb (Analyze_Return_Type): Create a null-excluding itype in
5416 the case where a null exclusion is imposed on a named access type.
5417 (Analyze_Subprogram_Specification): Push and pop the scope of the
5418 function around the call to Analyze_Return_Type in the case of no
5419 formals, for consistency with handling when formals are present
5420 (Process_Formals does this). Ensures that any itype created for the
5421 return type will be associated with the proper scope.
5423 * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): If a null
5424 exclusion is given on a generic function's result type, then create a
5425 null-excluding itype for the generic function.
5426 (Instantiate_Object): Set Null_Exclusion_Present of a constant created
5427 for an actual for a formal in object according to the setting on the
5428 formal. Ensures null exclusion checks are done when the association is
5431 * sinfo.ads: Add new flag Null_Exclusion_In_Return_Present on
5432 N_Access_Function_Definition.
5434 * sinfo.adb: Add Get_ and Set_ operations for
5435 Null_Exclusion_In_Return_Present.
5437 2009-04-10 Bob Duff <duff@adacore.com>
5439 * exp_ch5.adb, exp_ch6.adb, sem_ch6.adb: Move the code that creates a
5440 call to the _Postconditions procedure in the case of implicit returns
5441 from analysis to expansion. This eliminates some duplicated code. Use
5442 the Postcondition_Proc to find the identity of this procedure during
5445 2009-04-10 Robert Dewar <dewar@adacore.com>
5447 * sem_ch6.adb: Minor code clean up.
5449 * einfo.ads, sem_attr.adb: Minor comment fixes.
5451 2009-04-10 Robert Dewar <dewar@adacore.com>
5453 * sem_ch8.adb: Minor reformatting
5455 2009-04-10 Robert Dewar <dewar@adacore.com>
5457 * einfo.ads, einfo.adb (Postcondition_Proc): New attribute for
5460 * sem_ch6.adb: Minor code clean up.
5462 2009-04-10 Robert Dewar <dewar@adacore.com>
5464 * mlib-tgt-specific-xi.adb: Minor reformatting
5466 2009-04-10 Bob Duff <duff@adacore.com>
5468 * einfo.ads: Minor comment fixes
5470 2009-04-10 Vincent Celier <celier@adacore.com>
5472 * snames.ads-tmpl: Remove names that are no longer used in the
5474 Mark specifically those that are used only in gprbuild
5476 2009-04-10 Eric Botcazou <ebotcazou@adacore.com>
5478 * init.c: Adjust EH support code on Alpha/Tru64.
5480 2009-04-10 Bob Duff <duff@adacore.com>
5482 * sem_ch6.adb (Process_PPCs): Add a call to the _Postconditions
5483 procedure on every path that could return implicitly (not via a return
5484 statement) from a procedure.
5486 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5488 * exp_ch9.adb (Build_Master_Entity): An extended return statement is a
5489 valid scope for a task declarations and therefore for a master id.
5491 2009-04-10 Robert Dewar <dewar@adacore.com>
5493 * sem_aux.adb: Minor reformatting
5495 2009-04-10 Vincent Celier <celier@adacore.com>
5497 * scn.adb (Obsolescent_Check_Flag): New Boolean flag, initialized to
5499 (Obsolescent_Check): Do nothing if Obsolescent_Check_Flag is False
5500 (Set_Obsolescent_Check): New procedure to change the value of
5501 Obsolescent_Check_Flag.
5503 * scn.ads (Set_Obsolescent_Check): New procedure to control
5506 * sinput-l.adb (Load_File): Do not check for pragma Restrictions on
5507 obsolescent features while preprocessing.
5509 2009-04-10 Thomas Quinot <quinot@adacore.com>
5511 * xsnamest.adb: Use XUtil to have uniform line endings (UNIX style) in
5512 generated files on all platforms.
5514 2009-04-10 Robert Dewar <dewar@adacore.com>
5516 * sem_aux.adb: Minor reformatting
5518 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5520 * sem_ch3.adb (Access_Definition): Handle properly the case of a
5521 protected function with formals that returns an anonymous access type.
5523 2009-04-10 Thomas Quinot <quinot@adacore.com>
5525 * sem_disp.adb: Minor reformatting
5527 2009-04-10 Vasiliy Fofanov <fofanov@adacore.com>
5529 * seh_init.c: Do not use the 32-bit specific implementation of
5530 __gnat_install_SEH_handler on 64-bit Windows target (64-bit specific
5533 2009-04-10 Jose Ruiz <ruiz@adacore.com>
5535 * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Target_Name may contain
5536 a '/' at the end so we better use the complete target name to determine
5537 whether it is a PowerPC 55xx target.
5539 2009-04-10 Thomas Quinot <quinot@adacore.com>
5541 * sem_eval.adb: Minor reformatting
5543 2009-04-10 Thomas Quinot <quinot@adacore.com>
5545 * snames.h, snames.ads, snames.adb: Remove files, now generated from
5548 * snames.h-tmpl, snames.ads-tmpl, snames.adb-tmpl: Templates for the
5551 * xsnamest.adb: New file.
5553 * gcc-interface/Make-lang.in: New target for automated generation of
5554 snames.ads, snames.adb and snames.h
5556 2009-04-10 Tristan Gingold <gingold@adacore.com>
5558 * gcc-interface/Makefile.in, gcc-interface/utils.c: Include "rtl.h" to
5559 avoid compile time warnings.
5560 Do not add gcc/config in include search list while compiling the RTS.
5561 Pragma Thread_Local_Storage is available on any target.
5563 2009-04-10 Bob Duff <duff@adacore.com>
5565 * sem.ads, par.adb, sem_ch6.adb, sem_ch8.adb: Minor comment fixes.
5567 2009-04-10 Tristan Gingold <gingold@adacore.com>
5569 * init.c: Install signal handler on Darwin.
5571 2009-04-10 Robert Dewar <dewar@adacore.com>
5573 * sem_prag.adb: Minor reformatting
5575 * exp_util.adb (Make_Non_Empty_Check): New function
5576 (Silly_Boolean_Array_Not_Test): Add call to Make_Non_Empty_Check
5577 (Silly_Boolean_Array_Xor_Test): Use Make_Non_Empty_Check
5579 2009-04-10 Arnaud Charlet <charlet@adacore.com>
5581 * make.adb, gnatlink.adb: Rename JGNAT toolchain.
5583 2009-04-10 Jose Ruiz <ruiz@adacore.com>
5585 * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Insert the appropriate
5586 tool prefix for AVR and PowerPC 55xx targets.
5588 2009-04-10 Robert Dewar <dewar@adacore.com>
5590 * sem_warn.adb (Within_Postcondition): New function
5591 (Check_Unset_Reference): Use Within_Postcondition to stop bad warning
5593 2009-04-10 Robert Dewar <dewar@adacore.com>
5595 * sem_warn.adb: Minor reformatting
5597 * make.adb: Minor reformatting.
5599 2009-04-10 Gary Dismukes <dismukes@adacore.com>
5601 * exp_ch7.adb (Find_Final_List): When creating a finalization-chain
5602 entity and the scope is a subprogram, retrieve the Sloc of the
5603 subprogram's body rather than using the sloc of the spec, for better
5604 line-stepping behavior in gdb.
5605 (Wrap_Transient_Declaration): For the Sloc of nodes created with a list
5606 controller, use the Sloc of the first declaration of the containing list
5607 rather than that of the node that triggered creation of the list
5610 2009-04-10 Vincent Celier <celier@adacore.com>
5612 * prj-nmsc.adb (Check_Naming_Schemes): Initialize local variable Casing
5613 to avoid gcc warning.
5615 2009-04-10 Robert Dewar <dewar@adacore.com>
5617 * g-comlin.adb: Add ??? comment
5619 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5621 * sem_warn.adb (Check_Unused_Withs): Do not emit message about
5622 unreferenced entities for a package with no visible declarations.
5624 2009-04-10 Robert Dewar <dewar@adacore.com>
5626 * exp_ch9.adb: Minor reformatting
5628 2009-04-10 Thomas Quinot <quinot@adacore.com>
5630 * sem_prag.adb: Minor reformatting
5632 2009-04-10 Vincent Celier <celier@adacore.com>
5635 (Check_Library_Attributes): For a project qualified as a library project
5636 that is not a library project, indicate in the error message which
5637 attributes are missing (Library_Dir and/or Library_Name).
5639 2009-04-10 Bob Duff <duff@adacore.com>
5641 * exp_ch5.adb, exp_ch9.adb: Avoid use of No_Position in Sloc of
5642 generated nodes, because it might confuse various circuits in the FE.
5644 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5646 * sem_prag.adb (Analyze_Pragma, case Task_Name): Do not expand argument
5647 of pragma. It will be recopied and analyzed when used in call to
5650 * sem_res.adb (Resolve_Call): Clarify use of secondary stack within
5651 initialization operations and recognize use of it in procedure calls
5654 * exp_ch9.adb (Make_Task_Create_Call): Copy full tree of Task_Name
5655 argument, because it may have side-effects.
5657 * exp_ch2.adb: Remove obsolete comments on default functions
5659 2009-04-10 Jose Ruiz <ruiz@adacore.com>
5661 * adaint.c (RTX section): Do for RTX the same thing as we do for
5662 Windows (include ctype.h and define a fallback ISALPHA if IN_RTS).
5664 2009-04-10 Robert Dewar <dewar@adacore.com>
5666 * sem_aux.ads, sem_aux.adb (Nearest_Current_Scope): New function.
5668 * sem_res.adb (Resolve_Call): Fix test for
5669 Suppress_Value_Tracking_On_Call (was wrong for the case of a call from
5670 a non-dynamic scope).
5672 2009-04-10 Robert Dewar <dewar@adacore.com>
5674 * make.adb: Add comment.
5677 2009-04-10 Nicolas Setton <setton@adacore.com>
5679 * s-osprim-darwin.adb: New file.
5681 * s-osinte-darwin.adb, s-osinte-darwin.ads: Fix binding to timespec.
5683 2009-04-10 Thomas Quinot <quinot@adacore.com>
5685 * g-socket.ads: Add comment clarifying alignment requirement for Fd_Set
5687 2009-04-09 Nick Clifton <nickc@redhat.com>
5689 * adadecode.h: Change copyright header to refer to version
5690 3 of the GNU General Public License with version 3.1 of the
5691 GCC Runtime Library Exception and to point readers at the
5692 COPYING3 and COPYING3.RUNTIME files and the FSF's license web
5694 * 9drpc.adb: Likewise.
5695 * a-assert.adb: Likewise.
5696 * a-astaco.adb: Likewise.
5697 * a-calari.adb: Likewise.
5698 * a-calcon.adb: Likewise.
5699 * a-calcon.ads: Likewise.
5700 * a-caldel.ads: Likewise.
5701 * a-calend-vms.adb: Likewise.
5702 * a-calend-vms.ads: Likewise.
5703 * a-calend.adb: Likewise.
5704 * a-calend.ads: Likewise.
5705 * a-calfor.adb: Likewise.
5706 * a-catizo.adb: Likewise.
5707 * a-cdlili.adb: Likewise.
5708 * a-cdlili.ads: Likewise.
5709 * a-cgaaso.adb: Likewise.
5710 * a-cgaaso.ads: Likewise.
5711 * a-cgarso.adb: Likewise.
5712 * a-cgcaso.adb: Likewise.
5713 * a-chacon.adb: Likewise.
5714 * a-chacon.ads: Likewise.
5715 * a-chahan.adb: Likewise.
5716 * a-chahan.ads: Likewise.
5717 * a-chlat9.ads: Likewise.
5718 * a-chtgke.adb: Likewise.
5719 * a-chtgke.ads: Likewise.
5720 * a-chtgop.adb: Likewise.
5721 * a-chtgop.ads: Likewise.
5722 * a-chzla1.ads: Likewise.
5723 * a-chzla9.ads: Likewise.
5724 * a-cidlli.adb: Likewise.
5725 * a-cidlli.ads: Likewise.
5726 * a-cihama.adb: Likewise.
5727 * a-cihama.ads: Likewise.
5728 * a-cihase.adb: Likewise.
5729 * a-cihase.ads: Likewise.
5730 * a-ciorma.adb: Likewise.
5731 * a-ciorma.ads: Likewise.
5732 * a-ciormu.adb: Likewise.
5733 * a-ciormu.ads: Likewise.
5734 * a-ciorse.adb: Likewise.
5735 * a-ciorse.ads: Likewise.
5736 * a-clrefi.adb: Likewise.
5737 * a-clrefi.ads: Likewise.
5738 * a-cohama.adb: Likewise.
5739 * a-cohama.ads: Likewise.
5740 * a-cohase.adb: Likewise.
5741 * a-cohase.ads: Likewise.
5742 * a-cohata.ads: Likewise.
5743 * a-coinve.adb: Likewise.
5744 * a-coinve.ads: Likewise.
5745 * a-colien.adb: Likewise.
5746 * a-colien.ads: Likewise.
5747 * a-colire.adb: Likewise.
5748 * a-colire.ads: Likewise.
5749 * a-comlin.adb: Likewise.
5750 * a-comlin.ads: Likewise.
5751 * a-convec.adb: Likewise.
5752 * a-convec.ads: Likewise.
5753 * a-coorma.adb: Likewise.
5754 * a-coorma.ads: Likewise.
5755 * a-coormu.adb: Likewise.
5756 * a-coormu.ads: Likewise.
5757 * a-coorse.adb: Likewise.
5758 * a-coorse.ads: Likewise.
5759 * a-coprnu.adb: Likewise.
5760 * a-coprnu.ads: Likewise.
5761 * a-crbltr.ads: Likewise.
5762 * a-crbtgk.adb: Likewise.
5763 * a-crbtgk.ads: Likewise.
5764 * a-crbtgo.adb: Likewise.
5765 * a-crbtgo.ads: Likewise.
5766 * a-crdlli.adb: Likewise.
5767 * a-crdlli.ads: Likewise.
5768 * a-cwila1.ads: Likewise.
5769 * a-cwila9.ads: Likewise.
5770 * a-decima.adb: Likewise.
5771 * a-decima.ads: Likewise.
5772 * a-diocst.adb: Likewise.
5773 * a-diocst.ads: Likewise.
5774 * a-direct.adb: Likewise.
5775 * a-direct.ads: Likewise.
5776 * a-direio.adb: Likewise.
5777 * a-direio.ads: Likewise.
5778 * a-dirval-mingw.adb: Likewise.
5779 * a-dirval-vms.adb: Likewise.
5780 * a-dirval.adb: Likewise.
5781 * a-dirval.ads: Likewise.
5782 * a-dynpri.adb: Likewise.
5783 * a-einuoc.adb: Likewise.
5784 * a-einuoc.ads: Likewise.
5785 * a-elchha.adb: Likewise.
5786 * a-elchha.ads: Likewise.
5787 * a-envvar.adb: Likewise.
5788 * a-excach.adb: Likewise.
5789 * a-except-2005.adb: Likewise.
5790 * a-except-2005.ads: Likewise.
5791 * a-except.adb: Likewise.
5792 * a-except.ads: Likewise.
5793 * a-excpol-abort.adb: Likewise.
5794 * a-excpol.adb: Likewise.
5795 * a-exctra.adb: Likewise.
5796 * a-exctra.ads: Likewise.
5797 * a-exetim-mingw.adb: Likewise.
5798 * a-exetim-mingw.ads: Likewise.
5799 * a-exexda.adb: Likewise.
5800 * a-exexpr-gcc.adb: Likewise.
5801 * a-exexpr.adb: Likewise.
5802 * a-exextr.adb: Likewise.
5803 * a-exstat.adb: Likewise.
5804 * a-filico.adb: Likewise.
5805 * a-filico.ads: Likewise.
5806 * a-finali.adb: Likewise.
5807 * a-finali.ads: Likewise.
5808 * a-interr.ads: Likewise.
5809 * a-intnam-aix.ads: Likewise.
5810 * a-intnam-darwin.ads: Likewise.
5811 * a-intnam-dummy.ads: Likewise.
5812 * a-intnam-freebsd.ads: Likewise.
5813 * a-intnam-hpux.ads: Likewise.
5814 * a-intnam-irix.ads: Likewise.
5815 * a-intnam-linux.ads: Likewise.
5816 * a-intnam-lynxos.ads: Likewise.
5817 * a-intnam-mingw.ads: Likewise.
5818 * a-intnam-rtems.ads: Likewise.
5819 * a-intnam-solaris.ads: Likewise.
5820 * a-intnam-tru64.ads: Likewise.
5821 * a-intnam-vms.ads: Likewise.
5822 * a-intnam-vxworks.ads: Likewise.
5823 * a-intsig.adb: Likewise.
5824 * a-intsig.ads: Likewise.
5825 * a-ngcefu.adb: Likewise.
5826 * a-ngcoar.adb: Likewise.
5827 * a-ngcoty.adb: Likewise.
5828 * a-ngcoty.ads: Likewise.
5829 * a-ngelfu.adb: Likewise.
5830 * a-ngrear.adb: Likewise.
5831 * a-ngrear.ads: Likewise.
5832 * a-nudira.adb: Likewise.
5833 * a-nudira.ads: Likewise.
5834 * a-nuflra.adb: Likewise.
5835 * a-nuflra.ads: Likewise.
5836 * a-numaux-darwin.adb: Likewise.
5837 * a-numaux-darwin.ads: Likewise.
5838 * a-numaux-libc-x86.ads: Likewise.
5839 * a-numaux-vxworks.ads: Likewise.
5840 * a-numaux-x86.adb: Likewise.
5841 * a-numaux-x86.ads: Likewise.
5842 * a-numaux.ads: Likewise.
5843 * a-rbtgso.adb: Likewise.
5844 * a-rbtgso.ads: Likewise.
5845 * a-reatim.ads: Likewise.
5846 * a-retide.adb: Likewise.
5847 * a-retide.ads: Likewise.
5848 * a-rttiev.adb: Likewise.
5849 * a-rttiev.ads: Likewise.
5850 * a-secain.adb: Likewise.
5851 * a-secain.ads: Likewise.
5852 * a-sequio.adb: Likewise.
5853 * a-sequio.ads: Likewise.
5854 * a-shcain.adb: Likewise.
5855 * a-shcain.ads: Likewise.
5856 * a-siocst.adb: Likewise.
5857 * a-siocst.ads: Likewise.
5858 * a-slcain.adb: Likewise.
5859 * a-slcain.ads: Likewise.
5860 * a-ssicst.adb: Likewise.
5861 * a-ssicst.ads: Likewise.
5862 * a-stboha.adb: Likewise.
5863 * a-stmaco.ads: Likewise.
5864 * a-storio.adb: Likewise.
5865 * a-strbou.adb: Likewise.
5866 * a-strbou.ads: Likewise.
5867 * a-stream.ads: Likewise.
5868 * a-strfix.adb: Likewise.
5869 * a-strhas.adb: Likewise.
5870 * a-strmap.adb: Likewise.
5871 * a-strmap.ads: Likewise.
5872 * a-strsea.adb: Likewise.
5873 * a-strsea.ads: Likewise.
5874 * a-strsup.adb: Likewise.
5875 * a-strsup.ads: Likewise.
5876 * a-strunb.adb: Likewise.
5877 * a-strunb.ads: Likewise.
5878 * a-ststio.adb: Likewise.
5879 * a-ststio.ads: Likewise.
5880 * a-stunau.adb: Likewise.
5881 * a-stunau.ads: Likewise.
5882 * a-stunha.adb: Likewise.
5883 * a-stwibo.adb: Likewise.
5884 * a-stwibo.ads: Likewise.
5885 * a-stwifi.adb: Likewise.
5886 * a-stwiha.adb: Likewise.
5887 * a-stwima.adb: Likewise.
5888 * a-stwima.ads: Likewise.
5889 * a-stwise.adb: Likewise.
5890 * a-stwise.ads: Likewise.
5891 * a-stwisu.adb: Likewise.
5892 * a-stwisu.ads: Likewise.
5893 * a-stwiun.adb: Likewise.
5894 * a-stwiun.ads: Likewise.
5895 * a-stzbou.adb: Likewise.
5896 * a-stzbou.ads: Likewise.
5897 * a-stzfix.adb: Likewise.
5898 * a-stzhas.adb: Likewise.
5899 * a-stzmap.adb: Likewise.
5900 * a-stzmap.ads: Likewise.
5901 * a-stzsea.adb: Likewise.
5902 * a-stzsea.ads: Likewise.
5903 * a-stzsup.adb: Likewise.
5904 * a-stzsup.ads: Likewise.
5905 * a-stzunb.adb: Likewise.
5906 * a-stzunb.ads: Likewise.
5907 * a-suteio.adb: Likewise.
5908 * a-suteio.ads: Likewise.
5909 * a-swbwha.adb: Likewise.
5910 * a-swmwco.ads: Likewise.
5911 * a-swunau.adb: Likewise.
5912 * a-swunau.ads: Likewise.
5913 * a-swuwha.adb: Likewise.
5914 * a-swuwti.adb: Likewise.
5915 * a-swuwti.ads: Likewise.
5916 * a-sytaco.adb: Likewise.
5917 * a-sytaco.ads: Likewise.
5918 * a-szbzha.adb: Likewise.
5919 * a-szmzco.ads: Likewise.
5920 * a-szunau.adb: Likewise.
5921 * a-szunau.ads: Likewise.
5922 * a-szuzha.adb: Likewise.
5923 * a-szuzti.adb: Likewise.
5924 * a-szuzti.ads: Likewise.
5925 * a-tags.adb: Likewise.
5926 * a-tags.ads: Likewise.
5927 * a-tasatt.ads: Likewise.
5928 * a-taside.adb: Likewise.
5929 * a-taside.ads: Likewise.
5930 * a-taster.adb: Likewise.
5931 * a-teioed.adb: Likewise.
5932 * a-teioed.ads: Likewise.
5933 * a-textio.adb: Likewise.
5934 * a-textio.ads: Likewise.
5935 * a-tiboio.adb: Likewise.
5936 * a-ticoau.adb: Likewise.
5937 * a-ticoau.ads: Likewise.
5938 * a-ticoio.adb: Likewise.
5939 * a-ticoio.ads: Likewise.
5940 * a-tideau.adb: Likewise.
5941 * a-tideau.ads: Likewise.
5942 * a-tideio.adb: Likewise.
5943 * a-tideio.ads: Likewise.
5944 * a-tienau.adb: Likewise.
5945 * a-tienau.ads: Likewise.
5946 * a-tienio.adb: Likewise.
5947 * a-tienio.ads: Likewise.
5948 * a-tifiio.adb: Likewise.
5949 * a-tifiio.ads: Likewise.
5950 * a-tiflau.adb: Likewise.
5951 * a-tiflau.ads: Likewise.
5952 * a-tiflio.adb: Likewise.
5953 * a-tiflio.ads: Likewise.
5954 * a-tigeau.adb: Likewise.
5955 * a-tigeau.ads: Likewise.
5956 * a-tiinau.adb: Likewise.
5957 * a-tiinau.ads: Likewise.
5958 * a-tiinio.adb: Likewise.
5959 * a-tiinio.ads: Likewise.
5960 * a-timoau.adb: Likewise.
5961 * a-timoau.ads: Likewise.
5962 * a-timoio.adb: Likewise.
5963 * a-timoio.ads: Likewise.
5964 * a-tiocst.adb: Likewise.
5965 * a-tiocst.ads: Likewise.
5966 * a-titest.adb: Likewise.
5967 * a-wichun.adb: Likewise.
5968 * a-wichun.ads: Likewise.
5969 * a-witeio.adb: Likewise.
5970 * a-witeio.ads: Likewise.
5971 * a-wtcoau.adb: Likewise.
5972 * a-wtcoau.ads: Likewise.
5973 * a-wtcoio.adb: Likewise.
5974 * a-wtcstr.adb: Likewise.
5975 * a-wtcstr.ads: Likewise.
5976 * a-wtdeau.adb: Likewise.
5977 * a-wtdeau.ads: Likewise.
5978 * a-wtdeio.adb: Likewise.
5979 * a-wtdeio.ads: Likewise.
5980 * a-wtedit.adb: Likewise.
5981 * a-wtedit.ads: Likewise.
5982 * a-wtenau.adb: Likewise.
5983 * a-wtenau.ads: Likewise.
5984 * a-wtenio.adb: Likewise.
5985 * a-wtenio.ads: Likewise.
5986 * a-wtfiio.adb: Likewise.
5987 * a-wtfiio.ads: Likewise.
5988 * a-wtflau.adb: Likewise.
5989 * a-wtflau.ads: Likewise.
5990 * a-wtflio.adb: Likewise.
5991 * a-wtflio.ads: Likewise.
5992 * a-wtgeau.adb: Likewise.
5993 * a-wtgeau.ads: Likewise.
5994 * a-wtinau.adb: Likewise.
5995 * a-wtinau.ads: Likewise.
5996 * a-wtinio.adb: Likewise.
5997 * a-wtmoau.adb: Likewise.
5998 * a-wtmoau.ads: Likewise.
5999 * a-wtmoio.adb: Likewise.
6000 * a-wtmoio.ads: Likewise.
6001 * a-wttest.adb: Likewise.
6002 * a-wwboio.adb: Likewise.
6003 * a-zchuni.adb: Likewise.
6004 * a-zchuni.ads: Likewise.
6005 * a-ztcoau.adb: Likewise.
6006 * a-ztcoau.ads: Likewise.
6007 * a-ztcoio.adb: Likewise.
6008 * a-ztcstr.adb: Likewise.
6009 * a-ztcstr.ads: Likewise.
6010 * a-ztdeau.adb: Likewise.
6011 * a-ztdeau.ads: Likewise.
6012 * a-ztdeio.adb: Likewise.
6013 * a-ztdeio.ads: Likewise.
6014 * a-ztedit.adb: Likewise.
6015 * a-ztedit.ads: Likewise.
6016 * a-ztenau.adb: Likewise.
6017 * a-ztenau.ads: Likewise.
6018 * a-ztenio.adb: Likewise.
6019 * a-ztenio.ads: Likewise.
6020 * a-ztexio.adb: Likewise.
6021 * a-ztexio.ads: Likewise.
6022 * a-ztfiio.adb: Likewise.
6023 * a-ztfiio.ads: Likewise.
6024 * a-ztflau.adb: Likewise.
6025 * a-ztflau.ads: Likewise.
6026 * a-ztflio.adb: Likewise.
6027 * a-ztflio.ads: Likewise.
6028 * a-ztgeau.adb: Likewise.
6029 * a-ztgeau.ads: Likewise.
6030 * a-ztinau.adb: Likewise.
6031 * a-ztinau.ads: Likewise.
6032 * a-ztinio.adb: Likewise.
6033 * a-ztmoau.adb: Likewise.
6034 * a-ztmoau.ads: Likewise.
6035 * a-ztmoio.adb: Likewise.
6036 * a-ztmoio.ads: Likewise.
6037 * a-zttest.adb: Likewise.
6038 * a-zzboio.adb: Likewise.
6039 * adadecode.c: Likewise.
6040 * adaint.c: Likewise.
6041 * adaint.h: Likewise.
6042 * alloc.ads: Likewise.
6044 * arit64.c: Likewise.
6045 * atree.adb: Likewise.
6046 * atree.ads: Likewise.
6047 * aux-io.c: Likewise.
6049 * casing.adb: Likewise.
6050 * casing.ads: Likewise.
6052 * csets.adb: Likewise.
6053 * csets.ads: Likewise.
6054 * cstreams.c: Likewise.
6055 * ctrl_c.c: Likewise.
6056 * debug.adb: Likewise.
6057 * debug.ads: Likewise.
6058 * dec.ads: Likewise.
6059 * einfo.adb: Likewise.
6060 * einfo.ads: Likewise.
6061 * elists.adb: Likewise.
6062 * elists.ads: Likewise.
6065 * errno.c: Likewise.
6068 * final.c: Likewise.
6069 * fname.adb: Likewise.
6070 * fname.ads: Likewise.
6071 * g-allein.ads: Likewise.
6072 * g-alleve.adb: Likewise.
6073 * g-alleve.ads: Likewise.
6074 * g-altcon.adb: Likewise.
6075 * g-altcon.ads: Likewise.
6076 * g-altive.ads: Likewise.
6077 * g-alveop.adb: Likewise.
6078 * g-alveop.ads: Likewise.
6079 * g-alvety.ads: Likewise.
6080 * g-alvevi.ads: Likewise.
6081 * g-arrspl.adb: Likewise.
6082 * g-arrspl.ads: Likewise.
6083 * g-calend.ads: Likewise.
6084 * g-comlin.adb: Likewise.
6085 * g-debpoo.adb: Likewise.
6086 * g-debpoo.ads: Likewise.
6087 * g-eacodu-vms.adb: Likewise.
6088 * g-eacodu.adb: Likewise.
6089 * g-excact.adb: Likewise.
6090 * g-excact.ads: Likewise.
6091 * g-locfil.adb: Likewise.
6092 * g-os_lib.ads: Likewise.
6093 * g-rannum.adb: Likewise.
6094 * g-rannum.ads: Likewise.
6095 * g-regist.adb: Likewise.
6096 * g-regist.ads: Likewise.
6097 * g-signal.adb: Likewise.
6098 * g-signal.ads: Likewise.
6099 * g-soccon.ads: Likewise.
6100 * g-string.adb: Likewise.
6101 * g-string.ads: Likewise.
6102 * g-strspl.ads: Likewise.
6103 * g-timsta.adb: Likewise.
6104 * g-timsta.ads: Likewise.
6105 * g-trasym-vms-alpha.adb: Likewise.
6106 * g-trasym-vms-ia64.adb: Likewise.
6107 * g-utf_32.adb: Likewise.
6108 * g-utf_32.ads: Likewise.
6109 * g-wistsp.ads: Likewise.
6110 * g-zstspl.ads: Likewise.
6112 * gnatvsn.adb: Likewise.
6113 * gnatvsn.ads: Likewise.
6114 * gsocket.h: Likewise.
6115 * hostparm.ads: Likewise.
6116 * i-c.adb: Likewise.
6117 * i-cexten.ads: Likewise.
6118 * i-cobol.adb: Likewise.
6119 * i-cobol.ads: Likewise.
6120 * i-cpoint.adb: Likewise.
6121 * i-cpoint.ads: Likewise.
6122 * i-cpp.adb: Likewise.
6123 * i-cpp.ads: Likewise.
6124 * i-cstrea-vms.adb: Likewise.
6125 * i-cstrea.adb: Likewise.
6126 * i-cstrea.ads: Likewise.
6127 * i-cstrin.adb: Likewise.
6128 * i-cstrin.ads: Likewise.
6129 * i-forbla-darwin.adb: Likewise.
6130 * i-forbla-unimplemented.ads: Likewise.
6131 * i-forbla.adb: Likewise.
6132 * i-forbla.ads: Likewise.
6133 * i-forlap.ads: Likewise.
6134 * i-fortra.adb: Likewise.
6135 * i-pacdec.adb: Likewise.
6136 * i-pacdec.ads: Likewise.
6137 * i-vxwoio.adb: Likewise.
6138 * i-vxwoio.ads: Likewise.
6139 * indepsw-aix.adb: Likewise.
6140 * indepsw-gnu.adb: Likewise.
6141 * indepsw-mingw.adb: Likewise.
6142 * indepsw.adb: Likewise.
6143 * indepsw.ads: Likewise.
6145 * initialize.c: Likewise.
6146 * interfac.ads: Likewise.
6147 * krunch.adb: Likewise.
6148 * krunch.ads: Likewise.
6149 * lib-list.adb: Likewise.
6150 * lib-sort.adb: Likewise.
6151 * lib.adb: Likewise.
6152 * lib.ads: Likewise.
6154 * math_lib.adb: Likewise.
6155 * memtrack.adb: Likewise.
6156 * mingw32.h: Likewise.
6157 * mkdir.c: Likewise.
6158 * namet-sp.adb: Likewise.
6159 * namet-sp.ads: Likewise.
6160 * namet.adb: Likewise.
6161 * namet.ads: Likewise.
6162 * nlists.adb: Likewise.
6163 * nlists.ads: Likewise.
6164 * opt.adb: Likewise.
6165 * opt.ads: Likewise.
6166 * output.adb: Likewise.
6167 * output.ads: Likewise.
6168 * raise-gcc.c: Likewise.
6169 * raise.c: Likewise.
6170 * raise.h: Likewise.
6171 * repinfo.adb: Likewise.
6172 * repinfo.ads: Likewise.
6173 * repinfo.h: Likewise.
6174 * rident.ads: Likewise.
6175 * s-addima.adb: Likewise.
6176 * s-addima.ads: Likewise.
6177 * s-addope.adb: Likewise.
6178 * s-addope.ads: Likewise.
6179 * s-arit64.adb: Likewise.
6180 * s-arit64.ads: Likewise.
6181 * s-assert.adb: Likewise.
6182 * s-assert.ads: Likewise.
6183 * s-asthan-vms-alpha.adb: Likewise.
6184 * s-asthan.adb: Likewise.
6185 * s-asthan.ads: Likewise.
6186 * s-atacco.adb: Likewise.
6187 * s-atacco.ads: Likewise.
6188 * s-auxdec-empty.adb: Likewise.
6189 * s-auxdec-empty.ads: Likewise.
6190 * s-auxdec-vms_64.ads: Likewise.
6191 * s-auxdec.adb: Likewise.
6192 * s-auxdec.ads: Likewise.
6193 * s-bitops.adb: Likewise.
6194 * s-bitops.ads: Likewise.
6195 * s-boarop.ads: Likewise.
6196 * s-carsi8.adb: Likewise.
6197 * s-carsi8.ads: Likewise.
6198 * s-carun8.adb: Likewise.
6199 * s-carun8.ads: Likewise.
6200 * s-casi16.adb: Likewise.
6201 * s-casi16.ads: Likewise.
6202 * s-casi32.adb: Likewise.
6203 * s-casi32.ads: Likewise.
6204 * s-casi64.adb: Likewise.
6205 * s-casi64.ads: Likewise.
6206 * s-casuti.ads: Likewise.
6207 * s-caun16.adb: Likewise.
6208 * s-caun16.ads: Likewise.
6209 * s-caun32.adb: Likewise.
6210 * s-caun32.ads: Likewise.
6211 * s-caun64.adb: Likewise.
6212 * s-caun64.ads: Likewise.
6213 * s-chepoo.ads: Likewise.
6214 * s-crc32.adb: Likewise.
6215 * s-crc32.ads: Likewise.
6216 * s-crtl.ads: Likewise.
6217 * s-direio.adb: Likewise.
6218 * s-direio.ads: Likewise.
6219 * s-dsaser.ads: Likewise.
6220 * s-except.adb: Likewise.
6221 * s-except.ads: Likewise.
6222 * s-exctab.adb: Likewise.
6223 * s-exctab.ads: Likewise.
6224 * s-exnint.adb: Likewise.
6225 * s-exnint.ads: Likewise.
6226 * s-exnllf.adb: Likewise.
6227 * s-exnllf.ads: Likewise.
6228 * s-exnlli.adb: Likewise.
6229 * s-exnlli.ads: Likewise.
6230 * s-expint.adb: Likewise.
6231 * s-expint.ads: Likewise.
6232 * s-explli.adb: Likewise.
6233 * s-explli.ads: Likewise.
6234 * s-expllu.adb: Likewise.
6235 * s-expllu.ads: Likewise.
6236 * s-expmod.adb: Likewise.
6237 * s-expmod.ads: Likewise.
6238 * s-expuns.adb: Likewise.
6239 * s-expuns.ads: Likewise.
6240 * s-fatflt.ads: Likewise.
6241 * s-fatgen.adb: Likewise.
6242 * s-fatgen.ads: Likewise.
6243 * s-fatlfl.ads: Likewise.
6244 * s-fatllf.ads: Likewise.
6245 * s-fatsfl.ads: Likewise.
6246 * s-ficobl.ads: Likewise.
6247 * s-fileio.adb: Likewise.
6248 * s-fileio.ads: Likewise.
6249 * s-filofl.ads: Likewise.
6250 * s-finimp.adb: Likewise.
6251 * s-finimp.ads: Likewise.
6252 * s-finroo.adb: Likewise.
6253 * s-finroo.ads: Likewise.
6254 * s-fishfl.ads: Likewise.
6255 * s-fore.adb: Likewise.
6256 * s-fore.ads: Likewise.
6257 * s-fvadfl.ads: Likewise.
6258 * s-fvaffl.ads: Likewise.
6259 * s-fvagfl.ads: Likewise.
6260 * s-gearop.adb: Likewise.
6261 * s-gearop.ads: Likewise.
6262 * s-gecobl.adb: Likewise.
6263 * s-gecobl.ads: Likewise.
6264 * s-gecola.adb: Likewise.
6265 * s-gecola.ads: Likewise.
6266 * s-gerebl.adb: Likewise.
6267 * s-gerebl.ads: Likewise.
6268 * s-gerela.adb: Likewise.
6269 * s-gerela.ads: Likewise.
6270 * s-geveop.adb: Likewise.
6271 * s-geveop.ads: Likewise.
6272 * s-gloloc.adb: Likewise.
6273 * s-gloloc.ads: Likewise.
6274 * s-hibaen.ads: Likewise.
6275 * s-imenne.adb: Likewise.
6276 * s-imenne.ads: Likewise.
6277 * s-imgbiu.adb: Likewise.
6278 * s-imgbiu.ads: Likewise.
6279 * s-imgboo.adb: Likewise.
6280 * s-imgboo.ads: Likewise.
6281 * s-imgcha.adb: Likewise.
6282 * s-imgcha.ads: Likewise.
6283 * s-imgdec.adb: Likewise.
6284 * s-imgdec.ads: Likewise.
6285 * s-imgenu.adb: Likewise.
6286 * s-imgenu.ads: Likewise.
6287 * s-imgint.adb: Likewise.
6288 * s-imgint.ads: Likewise.
6289 * s-imgllb.adb: Likewise.
6290 * s-imgllb.ads: Likewise.
6291 * s-imglld.adb: Likewise.
6292 * s-imglld.ads: Likewise.
6293 * s-imglli.adb: Likewise.
6294 * s-imglli.ads: Likewise.
6295 * s-imgllu.adb: Likewise.
6296 * s-imgllu.ads: Likewise.
6297 * s-imgllw.adb: Likewise.
6298 * s-imgllw.ads: Likewise.
6299 * s-imgrea.adb: Likewise.
6300 * s-imgrea.ads: Likewise.
6301 * s-imguns.adb: Likewise.
6302 * s-imguns.ads: Likewise.
6303 * s-imgwch.adb: Likewise.
6304 * s-imgwch.ads: Likewise.
6305 * s-imgwiu.adb: Likewise.
6306 * s-imgwiu.ads: Likewise.
6307 * s-inmaop-dummy.adb: Likewise.
6308 * s-inmaop-vms.adb: Likewise.
6309 * s-inmaop.ads: Likewise.
6310 * s-interr-hwint.adb: Likewise.
6311 * s-interr-sigaction.adb: Likewise.
6312 * s-interr-vms.adb: Likewise.
6313 * s-interr.adb: Likewise.
6314 * s-interr.ads: Likewise.
6315 * s-intman-dummy.adb: Likewise.
6316 * s-intman-mingw.adb: Likewise.
6317 * s-intman-posix.adb: Likewise.
6318 * s-intman-solaris.adb: Likewise.
6319 * s-intman-vms.adb: Likewise.
6320 * s-intman-vms.ads: Likewise.
6321 * s-intman-vxworks.adb: Likewise.
6322 * s-intman-vxworks.ads: Likewise.
6323 * s-intman.ads: Likewise.
6324 * s-io.adb: Likewise.
6325 * s-io.ads: Likewise.
6326 * s-linux-alpha.ads: Likewise.
6327 * s-linux-hppa.ads: Likewise.
6328 * s-linux.ads: Likewise.
6329 * s-maccod.ads: Likewise.
6330 * s-mantis.adb: Likewise.
6331 * s-mantis.ads: Likewise.
6332 * s-mastop-irix.adb: Likewise.
6333 * s-mastop.adb: Likewise.
6334 * s-mastop.ads: Likewise.
6335 * s-memcop.ads: Likewise.
6336 * s-memory-mingw.adb: Likewise.
6337 * s-memory.adb: Likewise.
6338 * s-memory.ads: Likewise.
6339 * s-os_lib.ads: Likewise.
6340 * s-oscons-tmplt.c: Likewise.
6341 * s-osinte-aix.adb: Likewise.
6342 * s-osinte-darwin.adb: Likewise.
6343 * s-osinte-freebsd.adb: Likewise.
6344 * s-osinte-irix.adb: Likewise.
6345 * s-osinte-lynxos-3.adb: Likewise.
6346 * s-osinte-rtems.ads: Likewise.
6347 * s-osinte-tru64.adb: Likewise.
6348 * s-osinte-vxworks-kernel.adb: Likewise.
6349 * s-osinte-vxworks.adb: Likewise.
6350 * s-osprim-mingw.adb: Likewise.
6351 * s-osprim-posix.adb: Likewise.
6352 * s-osprim-solaris.adb: Likewise.
6353 * s-osprim-unix.adb: Likewise.
6354 * s-osprim-vms.adb: Likewise.
6355 * s-osprim-vms.ads: Likewise.
6356 * s-osprim-vxworks.adb: Likewise.
6357 * s-osprim.ads: Likewise.
6358 * s-pack03.adb: Likewise.
6359 * s-pack03.ads: Likewise.
6360 * s-pack05.adb: Likewise.
6361 * s-pack05.ads: Likewise.
6362 * s-pack06.adb: Likewise.
6363 * s-pack06.ads: Likewise.
6364 * s-pack07.adb: Likewise.
6365 * s-pack07.ads: Likewise.
6366 * s-pack09.adb: Likewise.
6367 * s-pack09.ads: Likewise.
6368 * s-pack10.adb: Likewise.
6369 * s-pack10.ads: Likewise.
6370 * s-pack11.adb: Likewise.
6371 * s-pack11.ads: Likewise.
6372 * s-pack12.adb: Likewise.
6373 * s-pack12.ads: Likewise.
6374 * s-pack13.adb: Likewise.
6375 * s-pack13.ads: Likewise.
6376 * s-pack14.adb: Likewise.
6377 * s-pack14.ads: Likewise.
6378 * s-pack15.adb: Likewise.
6379 * s-pack15.ads: Likewise.
6380 * s-pack17.adb: Likewise.
6381 * s-pack17.ads: Likewise.
6382 * s-pack18.adb: Likewise.
6383 * s-pack18.ads: Likewise.
6384 * s-pack19.adb: Likewise.
6385 * s-pack19.ads: Likewise.
6386 * s-pack20.adb: Likewise.
6387 * s-pack20.ads: Likewise.
6388 * s-pack21.adb: Likewise.
6389 * s-pack21.ads: Likewise.
6390 * s-pack22.adb: Likewise.
6391 * s-pack22.ads: Likewise.
6392 * s-pack23.adb: Likewise.
6393 * s-pack23.ads: Likewise.
6394 * s-pack24.adb: Likewise.
6395 * s-pack24.ads: Likewise.
6396 * s-pack25.adb: Likewise.
6397 * s-pack25.ads: Likewise.
6398 * s-pack26.adb: Likewise.
6399 * s-pack26.ads: Likewise.
6400 * s-pack27.adb: Likewise.
6401 * s-pack27.ads: Likewise.
6402 * s-pack28.adb: Likewise.
6403 * s-pack28.ads: Likewise.
6404 * s-pack29.adb: Likewise.
6405 * s-pack29.ads: Likewise.
6406 * s-pack30.adb: Likewise.
6407 * s-pack30.ads: Likewise.
6408 * s-pack31.adb: Likewise.
6409 * s-pack31.ads: Likewise.
6410 * s-pack33.adb: Likewise.
6411 * s-pack33.ads: Likewise.
6412 * s-pack34.adb: Likewise.
6413 * s-pack34.ads: Likewise.
6414 * s-pack35.adb: Likewise.
6415 * s-pack35.ads: Likewise.
6416 * s-pack36.adb: Likewise.
6417 * s-pack36.ads: Likewise.
6418 * s-pack37.adb: Likewise.
6419 * s-pack37.ads: Likewise.
6420 * s-pack38.adb: Likewise.
6421 * s-pack38.ads: Likewise.
6422 * s-pack39.adb: Likewise.
6423 * s-pack39.ads: Likewise.
6424 * s-pack40.adb: Likewise.
6425 * s-pack40.ads: Likewise.
6426 * s-pack41.adb: Likewise.
6427 * s-pack41.ads: Likewise.
6428 * s-pack42.adb: Likewise.
6429 * s-pack42.ads: Likewise.
6430 * s-pack43.adb: Likewise.
6431 * s-pack43.ads: Likewise.
6432 * s-pack44.adb: Likewise.
6433 * s-pack44.ads: Likewise.
6434 * s-pack45.adb: Likewise.
6435 * s-pack45.ads: Likewise.
6436 * s-pack46.adb: Likewise.
6437 * s-pack46.ads: Likewise.
6438 * s-pack47.adb: Likewise.
6439 * s-pack47.ads: Likewise.
6440 * s-pack48.adb: Likewise.
6441 * s-pack48.ads: Likewise.
6442 * s-pack49.adb: Likewise.
6443 * s-pack49.ads: Likewise.
6444 * s-pack50.adb: Likewise.
6445 * s-pack50.ads: Likewise.
6446 * s-pack51.adb: Likewise.
6447 * s-pack51.ads: Likewise.
6448 * s-pack52.adb: Likewise.
6449 * s-pack52.ads: Likewise.
6450 * s-pack53.adb: Likewise.
6451 * s-pack53.ads: Likewise.
6452 * s-pack54.adb: Likewise.
6453 * s-pack54.ads: Likewise.
6454 * s-pack55.adb: Likewise.
6455 * s-pack55.ads: Likewise.
6456 * s-pack56.adb: Likewise.
6457 * s-pack56.ads: Likewise.
6458 * s-pack57.adb: Likewise.
6459 * s-pack57.ads: Likewise.
6460 * s-pack58.adb: Likewise.
6461 * s-pack58.ads: Likewise.
6462 * s-pack59.adb: Likewise.
6463 * s-pack59.ads: Likewise.
6464 * s-pack60.adb: Likewise.
6465 * s-pack60.ads: Likewise.
6466 * s-pack61.adb: Likewise.
6467 * s-pack61.ads: Likewise.
6468 * s-pack62.adb: Likewise.
6469 * s-pack62.ads: Likewise.
6470 * s-pack63.adb: Likewise.
6471 * s-pack63.ads: Likewise.
6472 * s-parame-ae653.ads: Likewise.
6473 * s-parame-hpux.ads: Likewise.
6474 * s-parame-rtems.adb: Likewise.
6475 * s-parame-vms-alpha.ads: Likewise.
6476 * s-parame-vms-ia64.ads: Likewise.
6477 * s-parame-vms-restrict.ads: Likewise.
6478 * s-parame-vxworks.adb: Likewise.
6479 * s-parame-vxworks.ads: Likewise.
6480 * s-parame.adb: Likewise.
6481 * s-parame.ads: Likewise.
6482 * s-parint.adb: Likewise.
6483 * s-parint.ads: Likewise.
6484 * s-pooglo.adb: Likewise.
6485 * s-pooglo.ads: Likewise.
6486 * s-pooloc.adb: Likewise.
6487 * s-pooloc.ads: Likewise.
6488 * s-poosiz.adb: Likewise.
6489 * s-poosiz.ads: Likewise.
6490 * s-powtab.ads: Likewise.
6491 * s-proinf-irix-athread.adb: Likewise.
6492 * s-proinf-irix-athread.ads: Likewise.
6493 * s-proinf.adb: Likewise.
6494 * s-proinf.ads: Likewise.
6495 * s-purexc.ads: Likewise.
6496 * s-rannum.adb: Likewise.
6497 * s-rannum.ads: Likewise.
6498 * s-restri.adb: Likewise.
6499 * s-restri.ads: Likewise.
6500 * s-rident.ads: Likewise.
6501 * s-rpc.adb: Likewise.
6502 * s-rpc.ads: Likewise.
6503 * s-scaval.adb: Likewise.
6504 * s-scaval.ads: Likewise.
6505 * s-secsta.adb: Likewise.
6506 * s-secsta.ads: Likewise.
6507 * s-sequio.adb: Likewise.
6508 * s-sequio.ads: Likewise.
6509 * s-shasto.adb: Likewise.
6510 * s-shasto.ads: Likewise.
6511 * s-soflin.adb: Likewise.
6512 * s-soflin.ads: Likewise.
6513 * s-solita.adb: Likewise.
6514 * s-solita.ads: Likewise.
6515 * s-sopco3.adb: Likewise.
6516 * s-sopco3.ads: Likewise.
6517 * s-sopco4.adb: Likewise.
6518 * s-sopco4.ads: Likewise.
6519 * s-sopco5.adb: Likewise.
6520 * s-sopco5.ads: Likewise.
6521 * s-stache.adb: Likewise.
6522 * s-stache.ads: Likewise.
6523 * s-stalib.adb: Likewise.
6524 * s-stalib.ads: Likewise.
6525 * s-stausa.adb: Likewise.
6526 * s-stausa.ads: Likewise.
6527 * s-stchop-limit.ads: Likewise.
6528 * s-stchop-rtems.adb: Likewise.
6529 * s-stchop-vxworks.adb: Likewise.
6530 * s-stchop.adb: Likewise.
6531 * s-stchop.ads: Likewise.
6532 * s-stoele.adb: Likewise.
6533 * s-stoele.ads: Likewise.
6534 * s-stopoo.adb: Likewise.
6535 * s-stopoo.ads: Likewise.
6536 * s-stratt.adb: Likewise.
6537 * s-stratt.ads: Likewise.
6538 * s-strcom.adb: Likewise.
6539 * s-strcom.ads: Likewise.
6540 * s-string.adb: Likewise.
6541 * s-string.ads: Likewise.
6542 * s-strops.adb: Likewise.
6543 * s-strops.ads: Likewise.
6544 * s-strxdr.adb: Likewise.
6545 * s-ststop.adb: Likewise.
6546 * s-ststop.ads: Likewise.
6547 * s-taasde.adb: Likewise.
6548 * s-taasde.ads: Likewise.
6549 * s-tadeca.adb: Likewise.
6550 * s-tadeca.ads: Likewise.
6551 * s-tadert.adb: Likewise.
6552 * s-tadert.ads: Likewise.
6553 * s-taenca.adb: Likewise.
6554 * s-taenca.ads: Likewise.
6555 * s-taprob.ads: Likewise.
6556 * s-taprop-dummy.adb: Likewise.
6557 * s-taprop-hpux-dce.adb: Likewise.
6558 * s-taprop-irix.adb: Likewise.
6559 * s-taprop-linux.adb: Likewise.
6560 * s-taprop-lynxos.adb: Likewise.
6561 * s-taprop-mingw.adb: Likewise.
6562 * s-taprop-posix.adb: Likewise.
6563 * s-taprop-solaris.adb: Likewise.
6564 * s-taprop-tru64.adb: Likewise.
6565 * s-taprop-vms.adb: Likewise.
6566 * s-taprop-vxworks.adb: Likewise.
6567 * s-taprop.ads: Likewise.
6568 * s-tarest.adb: Likewise.
6569 * s-tarest.ads: Likewise.
6570 * s-tasdeb.adb: Likewise.
6571 * s-tasdeb.ads: Likewise.
6572 * s-tasinf-irix.ads: Likewise.
6573 * s-tasinf-linux.adb: Likewise.
6574 * s-tasinf-linux.ads: Likewise.
6575 * s-tasinf-mingw.adb: Likewise.
6576 * s-tasinf-mingw.ads: Likewise.
6577 * s-tasinf-solaris.adb: Likewise.
6578 * s-tasinf-solaris.ads: Likewise.
6579 * s-tasinf-tru64.ads: Likewise.
6580 * s-tasinf.adb: Likewise.
6581 * s-tasinf.ads: Likewise.
6582 * s-tasini.adb: Likewise.
6583 * s-tasini.ads: Likewise.
6584 * s-taskin.adb: Likewise.
6585 * s-taskin.ads: Likewise.
6586 * s-taspri-dummy.ads: Likewise.
6587 * s-taspri-hpux-dce.ads: Likewise.
6588 * s-taspri-mingw.ads: Likewise.
6589 * s-taspri-solaris.ads: Likewise.
6590 * s-taspri-tru64.ads: Likewise.
6591 * s-taspri-vms.ads: Likewise.
6592 * s-taspri-vxworks.ads: Likewise.
6593 * s-tasque.adb: Likewise.
6594 * s-tasque.ads: Likewise.
6595 * s-tasren.adb: Likewise.
6596 * s-tasren.ads: Likewise.
6597 * s-tasres.ads: Likewise.
6598 * s-tassta.adb: Likewise.
6599 * s-tassta.ads: Likewise.
6600 * s-tasuti.adb: Likewise.
6601 * s-tasuti.ads: Likewise.
6602 * s-tfsetr-default.adb: Likewise.
6603 * s-tfsetr-vxworks.adb: Likewise.
6604 * s-tpinop.adb: Likewise.
6605 * s-tpinop.ads: Likewise.
6606 * s-tpoben.adb: Likewise.
6607 * s-tpoben.ads: Likewise.
6608 * s-tpobop.adb: Likewise.
6609 * s-tpobop.ads: Likewise.
6610 * s-tpopde-vms.adb: Likewise.
6611 * s-tpopde-vms.ads: Likewise.
6612 * s-tpopsp-lynxos.adb: Likewise.
6613 * s-tpopsp-posix-foreign.adb: Likewise.
6614 * s-tpopsp-posix.adb: Likewise.
6615 * s-tpopsp-solaris.adb: Likewise.
6616 * s-tpopsp-vxworks.adb: Likewise.
6617 * s-tporft.adb: Likewise.
6618 * s-tposen.adb: Likewise.
6619 * s-tposen.ads: Likewise.
6620 * s-traceb.adb: Likewise.
6621 * s-traceb.ads: Likewise.
6622 * s-traces-default.adb: Likewise.
6623 * s-traces.adb: Likewise.
6624 * s-traces.ads: Likewise.
6625 * s-traent-vms.adb: Likewise.
6626 * s-traent-vms.ads: Likewise.
6627 * s-traent.adb: Likewise.
6628 * s-traent.ads: Likewise.
6629 * s-trafor-default.adb: Likewise.
6630 * s-trafor-default.ads: Likewise.
6631 * s-tratas-default.adb: Likewise.
6632 * s-tratas.adb: Likewise.
6633 * s-tratas.ads: Likewise.
6634 * s-unstyp.ads: Likewise.
6635 * s-utf_32.adb: Likewise.
6636 * s-utf_32.ads: Likewise.
6637 * s-vaflop-vms-alpha.adb: Likewise.
6638 * s-vaflop.adb: Likewise.
6639 * s-vaflop.ads: Likewise.
6640 * s-valboo.adb: Likewise.
6641 * s-valboo.ads: Likewise.
6642 * s-valcha.adb: Likewise.
6643 * s-valcha.ads: Likewise.
6644 * s-valdec.adb: Likewise.
6645 * s-valdec.ads: Likewise.
6646 * s-valenu.adb: Likewise.
6647 * s-valenu.ads: Likewise.
6648 * s-valint.adb: Likewise.
6649 * s-valint.ads: Likewise.
6650 * s-vallld.adb: Likewise.
6651 * s-vallld.ads: Likewise.
6652 * s-vallli.adb: Likewise.
6653 * s-vallli.ads: Likewise.
6654 * s-valllu.adb: Likewise.
6655 * s-valllu.ads: Likewise.
6656 * s-valrea.adb: Likewise.
6657 * s-valrea.ads: Likewise.
6658 * s-valuns.adb: Likewise.
6659 * s-valuns.ads: Likewise.
6660 * s-valuti.adb: Likewise.
6661 * s-valuti.ads: Likewise.
6662 * s-valwch.adb: Likewise.
6663 * s-valwch.ads: Likewise.
6664 * s-veboop.adb: Likewise.
6665 * s-veboop.ads: Likewise.
6666 * s-vector.ads: Likewise.
6667 * s-vercon.adb: Likewise.
6668 * s-vercon.ads: Likewise.
6669 * s-vmexta.adb: Likewise.
6670 * s-vmexta.ads: Likewise.
6671 * s-vxwext-kernel.ads: Likewise.
6672 * s-vxwext-rtp.adb: Likewise.
6673 * s-vxwext-rtp.ads: Likewise.
6674 * s-vxwext.ads: Likewise.
6675 * s-vxwork-arm.ads: Likewise.
6676 * s-vxwork-m68k.ads: Likewise.
6677 * s-vxwork-mips.ads: Likewise.
6678 * s-vxwork-ppc.ads: Likewise.
6679 * s-vxwork-sparcv9.ads: Likewise.
6680 * s-vxwork-x86.ads: Likewise.
6681 * s-wchcnv.adb: Likewise.
6682 * s-wchcnv.ads: Likewise.
6683 * s-wchcon.adb: Likewise.
6684 * s-wchcon.ads: Likewise.
6685 * s-wchjis.adb: Likewise.
6686 * s-wchjis.ads: Likewise.
6687 * s-wchstw.adb: Likewise.
6688 * s-wchstw.ads: Likewise.
6689 * s-wchwts.adb: Likewise.
6690 * s-wchwts.ads: Likewise.
6691 * s-widboo.adb: Likewise.
6692 * s-widboo.ads: Likewise.
6693 * s-widcha.adb: Likewise.
6694 * s-widcha.ads: Likewise.
6695 * s-widenu.adb: Likewise.
6696 * s-widenu.ads: Likewise.
6697 * s-widlli.adb: Likewise.
6698 * s-widlli.ads: Likewise.
6699 * s-widllu.adb: Likewise.
6700 * s-widllu.ads: Likewise.
6701 * s-widwch.adb: Likewise.
6702 * s-widwch.ads: Likewise.
6703 * s-win32.ads: Likewise.
6704 * s-winext.ads: Likewise.
6705 * s-wwdcha.adb: Likewise.
6706 * s-wwdcha.ads: Likewise.
6707 * s-wwdenu.adb: Likewise.
6708 * s-wwdenu.ads: Likewise.
6709 * s-wwdwch.adb: Likewise.
6710 * s-wwdwch.ads: Likewise.
6711 * scans.adb: Likewise.
6712 * scans.ads: Likewise.
6713 * seh_init.c: Likewise.
6714 * sfn_scan.adb: Likewise.
6715 * sinfo.adb: Likewise.
6716 * sinfo.ads: Likewise.
6717 * sinput.adb: Likewise.
6718 * sinput.ads: Likewise.
6719 * snames.adb: Likewise.
6720 * snames.ads: Likewise.
6721 * socket.c: Likewise.
6722 * stand.adb: Likewise.
6723 * stand.ads: Likewise.
6724 * stringt.adb: Likewise.
6725 * stringt.ads: Likewise.
6726 * sysdep.c: Likewise.
6727 * system-aix.ads: Likewise.
6728 * system-darwin-ppc.ads: Likewise.
6729 * system-darwin-x86.ads: Likewise.
6730 * system-darwin-x86_64.ads: Likewise.
6731 * system-freebsd-x86.ads: Likewise.
6732 * system-hpux-ia64.ads: Likewise.
6733 * system-hpux.ads: Likewise.
6734 * system-irix-n32.ads: Likewise.
6735 * system-irix-n64.ads: Likewise.
6736 * system-irix-o32.ads: Likewise.
6737 * system-linux-alpha.ads: Likewise.
6738 * system-linux-hppa.ads: Likewise.
6739 * system-linux-ia64.ads: Likewise.
6740 * system-linux-mips.ads: Likewise.
6741 * system-linux-mipsel.ads: Likewise.
6742 * system-linux-ppc.ads: Likewise.
6743 * system-linux-ppc64.ads: Likewise.
6744 * system-linux-s390.ads: Likewise.
6745 * system-linux-s390x.ads: Likewise.
6746 * system-linux-sh4.ads: Likewise.
6747 * system-linux-sparc.ads: Likewise.
6748 * system-linux-sparcv9.ads: Likewise.
6749 * system-linux-x86.ads: Likewise.
6750 * system-linux-x86_64.ads: Likewise.
6751 * system-lynxos-ppc.ads: Likewise.
6752 * system-lynxos-x86.ads: Likewise.
6753 * system-mingw-x86_64.ads: Likewise.
6754 * system-mingw.ads: Likewise.
6755 * system-rtems.ads: Likewise.
6756 * system-solaris-sparc.ads: Likewise.
6757 * system-solaris-sparcv9.ads: Likewise.
6758 * system-solaris-x86.ads: Likewise.
6759 * system-solaris-x86_64.ads: Likewise.
6760 * system-tru64.ads: Likewise.
6761 * system-vms-ia64.ads: Likewise.
6762 * system-vms-zcx.ads: Likewise.
6763 * system-vms.ads: Likewise.
6764 * system-vms_64.ads: Likewise.
6765 * system-vxworks-arm.ads: Likewise.
6766 * system-vxworks-m68k.ads: Likewise.
6767 * system-vxworks-mips.ads: Likewise.
6768 * system-vxworks-ppc.ads: Likewise.
6769 * system-vxworks-sparcv9.ads: Likewise.
6770 * system-vxworks-x86.ads: Likewise.
6771 * system.ads: Likewise.
6772 * table.adb: Likewise.
6773 * table.ads: Likewise.
6774 * targext.c: Likewise.
6775 * targparm.ads: Likewise.
6776 * tree_in.adb: Likewise.
6777 * tree_in.ads: Likewise.
6778 * tree_io.adb: Likewise.
6779 * tree_io.ads: Likewise.
6780 * types.adb: Likewise.
6781 * types.ads: Likewise.
6782 * uintp.adb: Likewise.
6783 * uintp.ads: Likewise.
6784 * uname.adb: Likewise.
6785 * uname.ads: Likewise.
6786 * urealp.adb: Likewise.
6787 * urealp.ads: Likewise.
6788 * vx_stack_info.c: Likewise.
6789 * widechar.adb: Likewise.
6790 * widechar.ads: Likewise.
6791 * exp_attr.adb: Change copyright header to refer to version
6792 3 of the GNU General Public License and to point readers at the
6793 COPYING3 file and the FSF's license web page.
6794 * sem.adb: Likewise.
6795 * sem_attr.ads: Likewise.
6796 * freeze.adb: Likewise.
6797 * freeze.ads: Likewise.
6798 * errout.ads: Likewise.
6799 * erroutc.adb: Likewise.
6800 * exp_ch11.ads: Likewise.
6802 2009-04-09 Jakub Jelinek <jakub@redhat.com>
6804 * config-lang.in: Change copyright header to refer to version
6805 3 of the GNU General Public License and to point readers at the
6806 COPYING3 file and the FSF's license web page.
6807 * gcc-interface/trans.c: Likewise.
6808 * gnathtml.pl: Likewise.
6809 * gcc-interface/ada.h: Likewise. Remove runtime exception.
6810 * gcc-interface/gigi.h: Likewise.
6811 * gcc-interface/misc.c: Likewise.
6812 * gcc-interface/targtyps.c: Likewise.
6814 2009-04-09 Nicolas Setton <setton@adacore.com>
6816 * s-osinte-darwin.ads: Fix wrong binding to struc timeval.
6818 * s-osinte-darwin.adb (To_Timeval): Adapt to fixed implementation of
6821 2009-04-09 Bob Duff <duff@adacore.com>
6823 * exp_ch5.adb, exp_ch9.adb: Correct miscellaneous Slocs in
6824 internally-generated nodes related to select statements to avoid
6825 confusing the debugger.
6827 2009-04-09 Pascal Obry <obry@adacore.com>
6829 * make.adb: Ensure that all linker arguments are duplicated.
6831 2009-04-09 Robert Dewar <dewar@adacore.com>
6833 * sem_ch5.adb: Minor reformatting
6835 2009-04-09 Vincent Celier <celier@adacore.com>
6838 Change GNAT CHECK qualifier /DIAGNOSIS_LIMIT to /DIAGNOSTIC_LIMIT
6839 New qualifier /LEXPAND_SOURCE=nnn for -gnatGnnn
6840 New qualifier /LXDEBUG=nnn for -gnatDnnn
6844 Update documentation for VMS qualifiers equivalent to -gnatGnn and
6847 2009-04-09 Nicolas Setton <setton@adacore.com>
6849 * s-osinte-darwin.ads: (Pad_Type): Make this an array of unsigned_long,
6850 to match layout of siginfo_t in sys/signal.h.
6852 * gcc-interface/Makefile.in: Add section for x86_64 darwin.
6854 2009-04-09 Thomas Quinot <quinot@adacore.com>
6856 * g-socket.ads: (Fd_Set): Use Interfaces.C.long alignment.
6858 2009-04-09 Nicolas Setton <setton@adacore.com>
6860 * s-oscons-tmplt.c: Allow long lines in the generated spec.
6861 Add generation of Darwin-specific constants needed when binding to the
6864 2009-04-09 Robert Dewar <dewar@adacore.com>
6867 (Insert_Valid_Check): Avoid unnecessary generation of junk declaration
6868 when no invalid values exist, Avoid duplicate read of atomic variable.
6870 * cstand.adb (Build_Signed_Integer_Type): Set Is_Known_Valid
6871 (Standard_Unsigned): Set Is_Known_Valid
6873 * sem_ch3.adb (Analyze_Subtype_Declaration): Copy Is_Known_Valid on
6874 subtype declaration if no constraint.
6875 (Set_Modular_Size): Set Is_Known_Valid if appropriate
6876 (Build_Derived_Numeric_Type): Copy Is_Known_Valid if no constraint
6878 2009-04-09 Robert Dewar <dewar@adacore.com>
6880 * switch-c.adb, gnat_ugn.texi, vms_data.ads, switch.adb,
6881 switch.ads: for numeric switches, an optional equal sign is always
6884 2009-04-09 Vincent Celier <celier@adacore.com>
6886 * prj-nmsc.adb (Get_Unit): Do not consider Casing on platform where
6887 the case of file names is not significant.
6889 2009-04-09 Vincent Celier <celier@adacore.com>
6891 * errout.adb: Remove dependency on package Style
6893 * style.ads, styleg.adb, styleg.ads (RM_Column_Check): Remove function,
6896 * stylesw.ads, stylesw.adb (RM_Column_Check): New function, moved from
6899 * errutil.adb, par.adb: Import Stylesw
6901 2009-04-09 Arnaud Charlet <charlet@adacore.com>
6903 * opt.ads: Fix typos.
6905 2009-04-09 Robert Dewar <dewar@adacore.com>
6907 * einfo.adb: Minor reformatting
6909 2009-04-09 Robert Dewar <dewar@adacore.com>
6911 * gcc-interface/Make-lang.in, style.ads, style.adb: Reorganize style
6914 * styleg-c.ads, styleg-c.adb: Removed, no longer used.
6916 2009-04-09 Robert Dewar <dewar@adacore.com>
6918 * g-comver.adb: Minor reformatting.
6920 2009-04-09 Thomas Quinot <quinot@adacore.com>
6922 * lib-load.ads (Load_Unit): Update documentation.
6924 2009-04-09 Ed Schonberg <schonberg@adacore.com>
6926 * lib-load.adb (Load_Unit): When loading the parent of a child unit
6927 named in a with_clause, retain the with_clause to preserve a
6928 limited_with indication.
6930 2009-04-09 Robert Dewar <dewar@adacore.com>
6932 * sem_ch7.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, sem_util.adb,
6933 exp_ch13.adb, sem_ch6.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb,
6934 sem_cat.adb: Code clean up: use Is_Package_Or_Generic_Package where
6935 possible to replace an OR of two separate tests.
6937 2009-04-09 Robert Dewar <dewar@adacore.com>
6939 * binderr.adb, errout.adb, errutil.adb: New circuitry for handling
6942 * erroutc.adb, erroutc.ads (Warnings_Suppressed): Now tests global
6943 warning status as well.
6945 * opt.ads (Maximum_Messages): New name for Maximum_Errors.
6947 * switch-b.adb, switch-c.adb: Change name Maximum_Errors to
6950 * bindusg.adb, usage.adb: Update line for -gnatm switch
6952 * gnat_ugn.texi: Update documentation for -gnatmnn compiler switch and
6955 2009-04-09 Robert Dewar <dewar@adacore.com>
6957 * sem_ch10.adb: Minor reformatting.
6959 2009-04-09 Bob Duff <duff@adacore.com>
6961 * exp_ch11.adb (Expand_Exception_Handlers, Prepend_Call_To_Handler):
6962 Set Sloc of generated nodes for calls to Undefer_Aborts and
6963 Save_Occurrence to No_Location, so the debugger ignores them and
6964 therefore does not jump back and forth when single stepping.
6966 2009-04-09 Robert Dewar <dewar@adacore.com>
6968 * switch-b.adb: Minor reformatting.
6970 2009-04-09 Robert Dewar <dewar@adacore.com>
6972 * sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, exp_atag.adb, layout.adb,
6973 sem_dist.adb, exp_ch7.adb, sem_ch5.adb, sem_type.adb, exp_imgv.adb,
6974 exp_util.adb, sem_aux.adb, sem_aux.ads, exp_attr.adb, exp_ch9.adb,
6975 sem_ch7.adb, inline.adb, fe.h, sem_ch9.adb, exp_code.adb, einfo.adb,
6976 einfo.ads, exp_pakd.adb, checks.adb, sem_ch12.adb, exp_smem.adb,
6977 tbuild.adb, freeze.adb, sem_util.adb, sem_res.adb, sem_attr.adb,
6978 exp_dbug.adb, sem_case.adb, exp_tss.adb, exp_ch4.adb, exp_ch6.adb,
6979 sem_smem.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, exp_disp.adb,
6980 sem_ch8.adb, exp_aggr.adb, sem_eval.adb, sem_cat.adb, exp_dist.adb,
6981 sem_ch13.adb, exp_strm.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb:
6982 Reorganize einfo/sem_aux, moving routines from einfo to sem_aux
6984 2009-04-09 Robert Dewar <dewar@adacore.com>
6986 * exp_util.adb (Silly_Boolean_Array_Xor_Test): Simplify existing code.
6988 * atree.h: Add Elist26
6990 * gnat_ugn.texi: Complete documentation deprecating -gnatN for non-gcc
6993 2009-04-09 Javier Miranda <miranda@adacore.com>
6995 * exp_disp.adb (Export_DT): Addition of a new argument (Index); used to
6996 retrieve from the Dispatch_Table_Wrappers list the external name.
6997 Addition of documentation.
6998 (Make_Secondary_DT): Addition of a new argument (Suffix_Index) that is
6999 used to export secondary dispatch tables (in the previous version of
7000 the frontend only primary dispatch tables were exported). Addition of
7002 (Import_DT): New subprogram (internal of Make_Tags). Used to import a
7003 dispatch table of a given tagged type.
7004 (Make_Tags): Modified to import secondary dispatch tables.
7006 * sem_ch3.adb (Analyze_Object_Declaration): Code cleanup.
7007 (Constant_Redeclaration): Code cleanup.
7009 * einfo.ads (Dispatch_Table_Wrapper): Renamed to
7010 Dispatch_Table_Wrappers. Update documentation.
7012 * einfo.adb (Dispatch_Table_Wrapper, Set_Dispatch_Table_Wrapper):
7013 Renamed to Dispatch_Table_Wrappers.
7015 * sem_util.adb (Collect_Interface_Components): Improve handling of
7018 * atree.ads (Elist26, Set_Elist26): New subprograms
7020 * atree.adb (Elist26, Set_Elist26): New subprograms
7022 2009-04-09 Javier Miranda <miranda@adacore.com>
7024 * sem_ch3.adb (Build_Derived_Record_Type): Fix typo.
7025 (Derive_Progenitor_Subprograms): Handle interfaces in subtypes of
7028 2009-04-09 Robert Dewar <dewar@adacore.com>
7030 * s-direio.adb: Minor reformatting
7032 * exp_ch4.adb (Expand_Concatenate): Avoid overflow checks for String
7034 2009-04-09 Robert Dewar <dewar@adacore.com>
7036 * exp_ch4.adb (Expand_Concatenate): Improve handling of overflow cases
7038 2009-04-09 Pascal Obry <obry@adacore.com>
7040 * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coinve.ads,
7041 s-tpoben.adb, s-tpoben.ads, s-finimp.adb, s-finimp.ads,
7042 a-convec.adb, a-convec.ads, a-finali.adb, a-finali.ads,
7043 a-filico.ads: Add some missing overriding keywords.
7045 2009-04-09 Pascal Obry <obry@adacore.com>
7047 * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coorma.ads, a-cihase.adb,
7048 a-cihase.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads,
7049 a-coormu.adb, a-coormu.ads, a-cohase.adb, a-cohase.ads: Minor
7052 2009-04-09 Ed Schonberg <schonberg@adacore.com>
7054 * sem_ch6.adb (Check_Overriding_Indicator): Do not generate warning on
7055 missing overriding indicator if the new declaration is not seen as
7058 2009-04-09 Thomas Quinot <quinot@adacore.com>
7060 * exp_ch4.adb (Expand_Concatenate): Add circuitry to properly handle
7061 overflows in computation of bounds.
7063 2009-04-09 Pascal Obry <obry@adacore.com>
7065 * a-cihama.adb, a-cgcaso.adb, a-cihase.adb, a-cohase.adb: Fix some
7068 2009-04-09 Robert Dewar <dewar@adacore.com>
7070 * sem_attr.adb (Check_Stream_Attribute): Check violation of
7071 restriction No_Streams
7073 * gnat_rm.texi: Clarify No_Streams restriction
7075 * g-socket.adb: Minor reformatting.
7077 2009-04-09 Thomas Quinot <quinot@adacore.com>
7079 * g-socket.ads: Mark Initialize and Finalize as obsolesent interfaces.
7081 2009-04-09 Geert Bosch <bosch@adacore.com>
7083 * exp_fixd.adb (Build_Conversion): Accept new optional Trunc argument.
7084 (Set_Result): Likewise.
7085 (Expand_Convert_Float_To_Fixed): Have Set_Result truncate the
7086 conversion, as required by RM 4.6(31).
7088 2009-04-08 Robert Dewar <dewar@adacore.com>
7090 * checks.adb (Enable_Overflow_Check): Do not enable if overflow checks
7093 * exp_ch4.adb (Expand_Concatenate): Make sure checks are off for all
7096 2009-04-08 Robert Dewar <dewar@adacore.com>
7098 * sem_ch12.adb (Analyze_Package_Instantiation): Remove test for
7099 No_Local_Allocators restriction preventing local instantiation.
7101 2009-04-08 Thomas Quinot <quinot@adacore.com>
7103 * sem_eval.adb: Minor comment fix
7105 2009-04-08 Thomas Quinot <quinot@adacore.com>
7107 * g-socket.adb, g-socket.ads (GNAT.Sockets.Sockets_Library_Controller):
7108 New limited controlled type used to automate the initialization and
7109 finalization of the sockets implementation.
7110 (GNAT.Sockets.Initialize, Finalize): Make these no-ops
7112 2009-04-08 Vincent Celier <celier@adacore.com>
7114 * prj-attr.adb: New read-only project-level attribute Project_Dir
7116 * prj-proc.adb (Add_Attributes): New parameter Project_Dir, value of
7117 read-only attribute of the same name.
7118 (Process_Declarative_Items): Call Add_Attributes with Project_Dir
7119 (Recursive_Process): Ditto
7121 * snames.adb: Add new standard name Project_Dir
7123 * snames.ads: Add new standard name Project_Dir
7125 2009-04-08 Thomas Quinot <quinot@adacore.com>
7127 * checks.adb: Minor reformatting
7129 2009-04-08 Vincent Celier <celier@adacore.com>
7131 * vms_data.ads: Add documentation for new style keyword
7132 OVERRIDING_INDICATORS
7134 2009-04-08 Robert Dewar <dewar@adacore.com>
7136 * sem_ch3.adb (Check_Completion.Post_Error): Post error on spec if the
7137 spec is in the current unit.
7139 2009-04-08 Ed Schonberg <schonberg@adacore.com>
7141 * sem_util.adb (Is_Protected_Self_Reference): Add guard to check for
7144 * usage.adb, gnat_ugn.texi: add info on -gnatyO: overriding indicators
7146 2009-04-08 Vincent Celier <celier@adacore.com>
7148 * vms_data.ads: Add VMS equivalent for -gnatyO (OVERRIDING_INDICATORS)
7150 2009-04-08 Thomas Quinot <quinot@adacore.com>
7152 * checks.ads: Minor reformatting
7154 2009-04-08 Robert Dewar <dewar@adacore.com>
7156 * gnat_rm.texi: Update documentation of pragma Obsolescent
7158 * sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow identifiers to
7159 be omitted, and allow Entity parameter to be omitted.
7161 2009-04-08 Thomas Quinot <quinot@adacore.com>
7163 * exp_util.adb: Minor comment fix
7165 2009-04-08 Robert Dewar <dewar@adacore.com>
7167 * g-socket.ads: Fix bad syntax in pragma Obsolescent
7169 * par-ch2.adb (Scan_Pragma_Argument_Association): Check for error of
7170 argument with no identifier following one that has an identifier. Was
7171 missed in some cases.
7173 * sem_prag.adb (Analyze_Pragma, case Check_Policy): Allow Policy
7175 (Analyze_Pragma, case Obsolescent): Allow Message, Version identifiers
7177 * snames.adb: Add Name_Policy
7179 * snames.ads: Add Name_Policy
7181 2009-04-08 Robert Dewar <dewar@adacore.com>
7183 * gnat_rm.texi: Minor reformatting
7185 * par-ch2.adb: Minor reformatting
7187 2009-04-08 Robert Dewar <dewar@adacore.com>
7189 * exp_attr.adb, sem_attr.adb, sem_util.adb: Code clean up.
7191 2009-04-08 Robert Dewar <dewar@adacore.com>
7193 * sem_cat.adb (Check_Categorization_Dependencies): Handle Preelaborate
7194 properly in the presence of Remote_Types or Remote_Call_Interface.
7196 * sem_util.adb: Add comment.
7198 2009-04-08 Robert Dewar <dewar@adacore.com>
7200 * ug_words: Add /ASSUME_VALID for -gnatB
7202 * vms_data.ads: Add /ASSUME_VALID for -gnatB
7204 * sem_cat.adb: Add clarifying commment
7206 * a-direio.ads (Bytes): Make sure value is non-zero
7208 2009-04-08 Ed Schonberg <schonberg@adacore.com>
7210 * sem_util.adb (Is_Variable): If the prefix is an explicit dereference
7211 that does not come from source, check for a rewritten function call in
7212 prefixed notation before other forms of rewriting.
7214 2009-04-08 Robert Dewar <dewar@adacore.com>
7216 * Makefile.rtl: Remove s-strops and s-sopco? from the run time, since
7217 these are now obsolescent units used only for bootrapping with an
7220 2009-04-08 Robert Dewar <dewar@adacore.com>
7222 * gnat_rm.texi: Add documentation for pragma Thread_Local_Storage
7224 * sem_ch3.adb: Minor comment updates
7226 2009-04-08 Ed Schonberg <schonberg@adacore.com>
7228 * inline.adb (Back_End_Cannot_Inline): restrict warning to subprograms
7229 that come from source.
7231 2009-04-08 Tristan Gingold <gingold@adacore.com>
7233 * gcc-interface/gigi.h (enum attr_type): Add ATTR_THREAD_LOCAL_STORAGE.
7234 * gcc-interface/decl.c (prepend_attributes): New case
7235 Pragma_Thread_Local_Storage.
7236 * gcc-interface/utils.c (process_attributes): New case
7237 ATTR_THREAD_LOCAL_STORAGE.
7239 2009-04-08 Ed Schonberg <schonberg@adacore.com>
7241 * inline.adb (Back_End_Cannot_Inline): Do not mark a body as inlineable
7242 by the back-end if it contains a call to a subprogram without a
7243 previous spec that is declared in the same unit.
7245 * errout.ads: Update comments on uses of dirs
7247 2009-04-08 Robert Dewar <dewar@adacore.com>
7249 * exp_ch4.adb (Expand_Concatenate): Make sure nodes are properly typed
7251 2009-04-08 Tristan Gingold <gingold@adacore.com>
7253 * sem_prag.adb: Restrict pragma Thread_Local_Storage to library level
7255 Set Has_Gigi_Rep_Item flag to TLS variables (to ease gigi work).
7257 2009-04-08 Vincent Celier <celier@adacore.com>
7260 (Add_Source): Add the mapping of the unit name to source file name in
7261 the Unit_Sources_HT hash table, if the unit name is not null.
7263 * prj.adb (Reset): Reset hash table Tree.Unit_Sources_HT
7265 * prj.ads (Unit_Sources_Htable): New hash table instantiation
7266 (Project_Tree_Data): New component Unit_Sources_HT
7268 2009-04-08 Thomas Quinot <quinot@adacore.com>
7270 * sem_ch8.adb: Minor reformatting.
7271 Minor code reorganization.
7273 2009-04-08 Robert Dewar <dewar@adacore.com>
7275 * snames.h, einfo.adb, einfo.ads, sem_prag.adb, snames.adb,
7276 snames.ads, freeze.adb, par-prag.adb: Add implementation of
7277 pragma Thread_Local_Storage, setting new flag
7278 Has_Pragma_Thread_Local_Storage in corresponding entities.
7280 2009-04-08 Emmanuel Briot <briot@adacore.com>
7282 * prj.ads: Update comment on switches file
7284 * prj-nmsc.adb: Code clean up. Use renaming clauses.
7286 2009-04-08 Robert Dewar <dewar@adacore.com>
7288 * exp_ch4.adb (Expand_Concatenate): Further fixes to bounds handling
7290 2009-04-08 Thomas Quinot <quinot@adacore.com>
7292 * ali-util.adb: Minor comment fix
7294 2009-04-08 Ed Schonberg <schonberg@adacore.com>
7296 * sem_ch8.adb (Analyze_Use_Type): Improve error message when clause
7297 appears in a context clause, and the enclosing package is mentioned in
7298 a limited_with_clause.
7299 (Use_One_Type): Reject clause if type is still incomplete.
7301 2009-04-08 Emmanuel Briot <briot@adacore.com>
7303 * prj-nmsc.adb (Check_File, Process_Sources_In_Multi_Language_Mode):
7304 avoid copies of Source_Data variables when possible, since these
7305 involve calls to memcpy() which are done too many times.
7307 2009-04-08 Robert Dewar <dewar@adacore.com>
7309 * exp_ch4.adb (Expand_Concatenate): Clean up code
7311 2009-04-07 Thomas Quinot <quinot@adacore.com>
7313 * exp_ch4.adb (Expand_Concatenate): Add missing conversion to index
7314 type for the case of concatenating a constrained array indexed by an
7317 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7319 * sem_ch6.adb (Check_Conformance): when checking conformance of an
7320 operation that overrides an abstract operation inherited from an
7321 interface, return False if only one of the controlling formals is an
7324 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7326 * sem_ch8.adb (Analyze_Object_Renaming): additional error messages
7327 mandated by AI05-105.
7329 2009-04-07 Vincent Celier <celier@adacore.com>
7331 * prj-nmsc.adb (Get_Mains): Warn if a main is an empty string
7333 2009-04-07 Thomas Quinot <quinot@adacore.com>
7335 * usage.adb: Minor fix in usage message.
7337 * sem_ch10.adb (Remove_Homonyms): Fix subtype of formal in body to
7338 match declaration; the correct subtype is Node_Id, not Entity_Id,
7339 because the expected node kind is an identifier, not a defining
7342 * switch-c.adb: Minor reformatting.
7344 * uintp.adb: Minor reformatting.
7346 2009-04-07 Robert Dewar <dewar@adacore.com>
7348 * exp_ch13.adb: Minor reformatting
7350 2009-04-07 Robert Dewar <dewar@adacore.com>
7352 * sem_warn.adb (Check_Infinite_Loop_Warning.Test_Ref): Add defence
7353 against missing parent.
7355 2009-04-07 Thomas Quinot <quinot@adacore.com>
7357 * xoscons.adb: Minor reformatting
7359 2009-04-07 Robert Dewar <dewar@adacore.com>
7361 * rtsfind.ads: Remove obsolete string concatenation entries
7363 2009-04-07 Robert Dewar <dewar@adacore.com>
7365 * exp_ch4.adb (Expand_Concatenate): Redo handling of bounds
7367 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7369 * sem_ch10.adb (Check_Body_Required): Handle properly imported
7372 2009-04-07 Gary Dismukes <dismukes@adacore.com>
7374 * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case
7375 Attribute_Address): When Init_Or_Norm_Scalars is True and the object
7376 is of a scalar or string type then suppress the setting of the
7377 expression to Empty.
7379 * freeze.adb (Warn_Overlay): Also emit the warnings about default
7380 initialization for the cases of scalar and string objects when
7381 Init_Or_Norm_Scalars is True.
7383 2009-04-07 Bob Duff <duff@adacore.com>
7385 * s-secsta.ads, g-pehage.ads, s-fileio.ads: Minor comment fixes
7387 2009-04-07 Bob Duff <duff@adacore.com>
7389 * gnat_rm.texi, s-fileio.adb (System.File_IO.Open): New feature: A
7390 Form parameter of Text_Translation=No allows binary mode for Text_IO
7393 * gnat_rm.texi: Document Form parameter Text_Translation=xxx.
7395 2009-04-07 Javier Miranda <miranda@adacore.com>
7397 * exp_ch5.adb (Expand_Assign_Array): Add implicit conversion when
7398 processing the bounds for bit packed arrays or VM target machines.
7400 2009-04-07 Thomas Quinot <quinot@adacore.com>
7402 * g-sothco.ads (Int_Access): Remove extraneous access type (use
7403 anonymous access instead).
7404 (Get_Socket_From_Set): Fix incorrectly reverted formals
7405 Last and Socket to match the underlying C routine.
7407 * g-socket.adb, g-socket.ads
7408 (Get): Use named parameter associations instead of positional ones in
7409 call go Get_Socket_From_Set, since this routine has two formals of the
7411 (Image): New procedure.
7413 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
7414 g-socthi-vxworks.ads, g-socthi-mingw.ads, g-socthi.adb, g-socthi.ads:
7415 (C_Ioctl, Syscall_Ioctl): use "access C.int" instead of "Int_Access"
7416 for type of Arg formal.
7418 * sem_warn.adb: Minor reformatting
7420 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7422 * sem_util.adb (Has_Tagged_Component): Fix typo in loop that iterates
7423 over record components.
7425 2009-04-07 Nicolas Roche <roche@adacore.com>
7428 Don't include resolvLib.h on VxWorks 6 (kernel and rtp). This library
7429 has disappeared between VxWorks 6.4 and VxWorks 6.5
7430 In RTP mode use time.h instead of times.h
7432 2009-04-07 Robert Dewar <dewar@adacore.com>
7434 * exp_ch4.adb (Expand_N_Op_Concat): Improve lower bound handling
7436 2009-04-07 Kevin Pouget <pouget@adacore.com>
7438 * exp_dist.adb: Modify Build_From_Any_Fonction procedure to correct
7439 expanded code for constrained types.
7441 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7443 * sem_ch4.adb (Analyze_Overloaded_Selected_Component): implement
7444 AI05-105: in an object renaming declaration, anonymousness is a name
7447 * sem_ch8.adb (Analyze_Object_Renaming): Ditto.
7449 2009-04-07 Arnaud Charlet <charlet@adacore.com>
7451 * g-comlin.adb (Expansion): Fix old regression: also return directory
7452 names when matching.
7454 2009-04-07 Robert Dewar <dewar@adacore.com>
7457 (Expand_N_Op_Concat): Call Expand_Concatenate for all cases
7458 (Expand_Concatenate): New name for Expand_Concatenate_String which has
7459 been rewritten to handle all types.
7460 (Expand_Concatenate_Other): Remove
7462 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7464 * lib-xref.adb (Generate_Reference): A default subprogram in an
7465 instance appears within the tree for the instance, but generates an
7466 implicit reference in the ALI.
7468 2009-04-07 Javier Miranda <miranda@adacore.com>
7470 * sem_ch3.adb (Build_Derived_Record_Type): When processing a tagged
7471 derived type that has discriminants, propagate the list of interfaces
7472 to the corresponding new base type. In addition, propagate also
7473 attribute Limited_Present (found working in this patch).
7475 2009-04-07 Robert Dewar <dewar@adacore.com>
7477 * exp_ch4.adb: Rewrite concatenation expansion.
7479 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7481 * sem_ch8.adb (Restore_Scope_Stack): First_Private_Entity is only
7482 relevant to packages.
7484 2009-04-07 Robert Dewar <dewar@adacore.com>
7486 * sem_attr.adb: Minor reformatting
7488 * sem_ch6.adb: Minor reformatting
7490 2009-04-07 Tristan Gingold <gingold@adacore.com>
7492 * socket.c: Add more protections against S_resolvLib_ macros.
7494 2009-04-07 Thomas Quinot <quinot@adacore.com>
7496 * sem_attr.adb: Minor reformatting
7498 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7500 * sem_ch6.adb (New_Overloaded_Entity): New predicate
7501 Is_Overriding_Alias to handle properly types that inherit two homonym
7502 operations that have distinct dispatch table entries.
7504 2009-04-07 Emmanuel Briot <briot@adacore.com>
7506 * s-regexp.adb (Create_Mapping): Ignore excaped open parenthesis when
7507 looking for the end of a parenthesis group
7509 2009-04-07 Tristan Gingold <gingold@adacore.com>
7511 * gsocket.h Don't #include resolvLib.h if __RTP__ is defined.
7513 * socket.c Don't use resolvLib_ macros if not defined.
7515 2009-04-07 Robert Dewar <dewar@adacore.com>
7517 * g-socket.adb: Minor reformatting.
7519 * g-socthi-mingw.adb: Minor reformatting
7521 * g-sothco.ads: Minor reformatting
7524 (Expand_Concatenate_String): Complete rewrite to generate efficient code
7525 inline instead of relying on external library routines.
7527 * s-strops.ads, s-sopco5.ads, s-sopco5.adb, s-sopco4.ads, s-sopco4.adb,
7528 s-sopco3.ads, s-sopco3.adb, s-strops.adb: Note that this unit is now
7531 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7534 (Eval_Attribute): for attributes of array objects that are not strings,
7535 attributes are not static if nominal subtype of object is unconstrained.
7537 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7539 * sem_ch6.adb (New_Overloaded_Entity): If two implicit homonym
7540 operations for a type T in an instance do not override each other,
7541 when T is derived from a formal private type, the corresponding
7542 operations inherited by a type derived from T outside
7543 of the instance do not override each other either.
7545 2009-04-07 Robert Dewar <dewar@adacore.com>
7547 (Osint.Fail): Change calling sequence to have one string arg
7548 (Make.Make_Failed): Same change
7549 All callers are adjusted to use concatenation
7551 2009-04-07 Robert Dewar <dewar@adacore.com>
7553 * exp_ch4.adb: Fix documentation typo
7555 2009-04-07 Robert Dewar <dewar@adacore.com>
7557 * tbuild.ads: Minor reformatting
7559 2009-04-07 Javier Miranda <miranda@adacore.com>
7561 * exp_disp.adb (Make_DT): Avoid the generation of the OSD_Table
7562 when compiling under ZFP runtime.
7564 2009-04-07 Robert Dewar <dewar@adacore.com>
7566 * g-comlin.adb: Minor reformatting
7568 2009-04-07 Thomas Quinot <quinot@adacore.com>
7570 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
7571 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
7572 g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads, g-sothco.ads:
7573 Remove dynamic allocation of Fd_Set in Socket_Set_Type objects.
7575 2009-04-07 Robert Dewar <dewar@adacore.com>
7577 * gnat_ugn.texi: Document -gnatDnn/-gnatGnn
7579 * opt.ads (Sprint_Line_Limit): New parameter
7581 * sprint.adb: Usa Sprint_Line_Limit instead of Line_Limit throughout
7583 * switch-c.adb: Recognize -gnatDnnn and -gnatGnnn switches
7585 * usage.adb: Output information for -gnatGnn -gnatDnn
7587 2009-04-07 Robert Dewar <dewar@adacore.com>
7589 * make.adb: Minor reformatting
7591 2009-04-07 Robert Dewar <dewar@adacore.com>
7593 * mlib-tgt-specific-vms-alpha.adb: Minor reformatting
7595 2009-04-07 Robert Dewar <dewar@adacore.com>
7597 * mlib-tgt-specific-vms-ia64.adb: Minor reformatting
7599 2009-04-07 Robert Dewar <dewar@adacore.com>
7602 Remove Assume_Valid parameter from In_Subrange_Of calls
7605 (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
7606 (Is_In_Range): Remove incorrect use of Assume_Valid
7607 (Is_Out_Of_Range): Remove incorrect use of Assume_Valid
7610 (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
7611 (Is_In_Range): Documentation cleanup
7612 (Is_Out_Of_Range): Documentation cleanup
7615 Add documentation for Assume_No_Invalid_Values pragma
7617 * sem_ch12.adb: Minor reformatting
7619 * sem_ch6.adb: (Check_Conformance): Avoid cascaded errors
7621 * sem_prag.adb: Improve error message.
7623 * gnatchop.adb, osint.ads, sinput.adb, sinput.ads, styleg.adb:
7624 LF/CR no longer recognized as line terminator
7626 * switch.ads: Minor documentation improvement
7628 * vms_data.ads: Minor reformatting
7630 2009-04-07 Robert Dewar <dewar@adacore.com>
7632 * checks.adb (Determine_Range): Add Assume_Valid parameter
7634 * checks.ads (Determine_Range): Add Assume_Valid parameter
7636 * errout.adb (Error_Msg_NEL): Use Suppress_Loop_Warnings rather than
7637 Is_Null_Loop to suppress warnings in a loop body.
7640 (Rewrite_Comparison): Major rewrite to accomodate invalid values
7643 (Expand_N_Loop_Statement): Delete loop known not to execute
7646 (Assume_No_Invalid_Values): Now set to False, and as documented, this
7647 fully enables the proper handling of invalid values.
7650 New calling sequence for Is_In_Range
7653 (Analyze_Iteration_Scheme): Accomodate possible invalid values
7654 in determining if a loop range is null.
7657 (Is_In_Range): Add Assume_Valid parameter
7658 (Is_Out_Of_Range): Add Assume_Valid_Parameter
7659 (Compile_Time_Compare): Major rewrite to accomodate invalid values and
7660 also to do more accurate and complete range analysis, catching more
7664 (Is_In_Range): Add Assume_Valid parameter
7665 (Is_Out_Of_Range): Add Assume_Valid_Parameter
7668 New calling sequence for Is_In_Range
7671 (Suppress_Loop_Warnings): New flag
7674 (Is_Null_Loop): Update documentation
7675 (Suppress_Loop_Warnings): New flag
7677 * gnat_ugn.texi: Document -gnatB switch
7679 2009-04-07 Arnaud Charlet <charlet@adacore.com>
7681 * gnatvsn.ads: Bump version number.
7683 2009-04-07 Thomas Quinot <quinot@adacore.com>
7685 * exp_ch3.adb: Minor rewording (comments)
7687 2009-04-07 Robert Dewar <dewar@adacore.com>
7689 * exp_disp.adb: Minor reformatting
7691 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7693 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Test the
7695 * gcc-interface/trans.c (lvalue_required_p): Likewise.
7697 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7699 * gcc-interface/trans.c (Attribute_to_gnu) <Max_Size_In_Storage_Elmts>:
7700 Do not convert the result. Remove obsolete comment.
7702 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7704 * gcc-interface/trans.c (establish_gnat_vms_condition_handler): Clear
7706 (Subprogram_Body_to_gnu): Fix pasto.
7708 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7710 * gcc-interface/gigi.h (standard_datatypes): Remove ADT_void_type_decl.
7711 (void_type_decl_node): Remove.
7712 (init_gigi_decls): Likewise.
7713 (gnat_install_builtins): Declare.
7714 (record_builtin_type): Likewise.
7715 (create_type_stub_decl): Likewise.
7716 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Void>: Use void_type.
7717 (gnat_to_gnu_entity) <E_Array_Type>: Make fat and thin pointer types
7719 <E_Array_Subtype>: Use the index types, not only their name, in the
7720 record giving the names of the bounds, if any.
7721 For a packed array type, make it artificial only if the base type
7722 was artificial as well. Remove redundant statement.
7723 (gnat_to_gnu_entity) <E_Incomplete_Type>: Do not create TYPE_DECL for
7725 Use create_type_stub_decl to build the TYPE_STUB_DECL of types.
7726 (rest_of_type_decl_compilation_no_defer): Likewise.
7727 * gcc-interface/misc.c (gnat_printable_name): Add missing guard.
7728 * gcc-interface/utils.c (make_dummy_type): Always create TYPE_STUB_DECL
7729 and use create_type_stub_decl to build it.
7730 (gnat_pushdecl): Rewrite condition.
7731 (gnat_install_builtins): Remove bogus declaration.
7732 (record_builtin_type): New function.
7733 (finish_record_type): Use create_type_stub_decl to build TYPE_STUB_DECL
7735 (create_type_stub_decl): New function.
7736 (create_type_decl): Assert that the type is not dummy. If the type
7737 hasn't been named yet, equate the TYPE_STUB_DECL to the created node.
7738 (build_vms_descriptor32): Do not create TYPE_DECL for the descriptor.
7739 (build_vms_descriptor): Likewise.
7740 (init_gigi_decls): Delete and move bulk of code to...
7741 * gcc-interface/trans.c (gigi): ...here. Use record_builtin_type.
7742 (emit_range_check): Add gnat_node parameter.
7743 (emit_index_check): Likewise.
7744 (emit_check): Likewise.
7745 (build_unary_op_trapv): Likewise.
7746 (build_binary_op_trapv): Likewise.
7747 (convert_with_check): Likewise.
7748 (Attribute_to_gnu): Adjust calls for above changes.
7749 (call_to_gnu): Likewise.
7750 (gnat_to_gnu): Likewise.
7751 (assoc_to_constructor): Likewise.
7752 (pos_to_constructor): Likewise.
7753 (Sloc_to_locus): Set BUILTINS_LOCATION for Standard_Location nodes.
7754 (process_type): Do not create TYPE_DECL for dummy types.
7756 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7758 * gcc-interface/decl.c (gnat_to_gnu_entity): Reorder local variables.
7759 * gcc-interface/trans.c: Fix formatting throughout. Fix comments.
7760 * gcc-interface/utils.c: Fix comments.
7762 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7764 * gcc-interface/decl.c (compile_time_known_address_p): Rewrite and
7766 (gnat_to_gnu_type): Move around.
7767 (get_unpadded_type): Likewise.
7768 * gcc-interface/utils.c (update_pointer_to): Use synthetic macro.
7771 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7773 * gcc-interface/trans.c (check_for_eliminated_entity): New function.
7774 (Attribute_to_gnu): Invoke it for Access- and Address-like attributes.
7775 (call_to_gnu): Invoke it instead of manually checking.
7777 2009-04-04 Eric Botcazou <ebotcazou@adacore.com>
7779 * gcc-interface/utils.c (finish_record_type): Force structural equality
7780 checks if the record type is discriminated.
7782 2009-03-31 Eric Botcazou <ebotcazou@adacore.com>
7784 * system-linux-alpha.ads (Functions_Return_By_DSP): Remove.
7785 * system-linux-mips.ads (Functions_Return_By_DSP): Likewise.
7786 * system-linux-mipsel.ads (Functions_Return_By_DSP): Likewise.
7787 * system-linux-s390.ads (Functions_Return_By_DSP): Likewise.
7788 * system-linux-s390x.ads (Functions_Return_By_DSP): Likewise.
7789 * system-linux-sparc.ads (Functions_Return_By_DSP): Likewise.
7790 * system-linux-sparcv9.ads (Functions_Return_By_DSP): Likewise.
7792 2009-03-30 Paolo Bonzini <bonzini@gnu.org>
7794 * gcc-interface/decl.c (maybe_pad_type): Use TREE_OVERFLOW instead
7795 of TREE_CONSTANT_OVERFLOW.
7797 2009-03-30 Joseph Myers <joseph@codesourcery.com>
7799 PR rtl-optimization/323
7800 * gcc-interface/misc.c (gnat_post_options): Set
7801 flag_excess_precision_cmdline. Give an error for
7802 -fexcess-precision=standard for processors where the option is
7805 2009-03-27 H.J. Lu <hongjiu.lu@intel.com>
7808 * gcc-interface/utils.c (create_field_decl): Use "unsigned int"
7811 2009-03-11 Olivier Hainque <hainque@adacore.com>
7813 * gcc-interface/trans.c (gnat_to_gnu) <case N_Slice>: In range
7814 checks processing, remove unintended TREE_TYPE walk on index type.
7816 2009-03-01 Eric Botcazou <ebotcazou@adacore.com>
7819 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do no
7820 call make_packable_type on fat pointer types.
7821 <E_Array_Subtype>: Likewise.
7822 <E_Record_Subtype>: Call make_packable_type on all record types
7823 except for fat pointer types.
7824 (make_packable_type): Likewise.
7825 (gnat_to_gnu_field): Likewise.
7827 2009-02-28 Eric Botcazou <ebotcazou@adacore.com>
7829 * gcc-interface/Makefile.in (cygwin/mingw): Revert accidental
7830 EH_MECHANISM change made on 2007-12-06.
7832 2009-02-26 Andreas Schwab <schwab@suse.de>
7835 * Makefile.in (srcdir): Set to @top_srcdir@ instead of @srcdir@.
7836 * gcc-interface/Makefile.in: Change all uses of $(srcdir),
7837 $(fsrcdir) and $(fsrcpfx) to add ada subdir.
7839 (target_cpu_default): Substitute.
7841 2009-02-25 Laurent GUERBY <laurent@guerby.net>
7844 * a-teioed.adb (Expand): Fix Result overflow.
7846 2009-02-25 Laurent GUERBY <laurent@guerby.net>
7848 * gcc-interface/Makefile.in: Fix multilib handling for
7851 2009-02-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
7853 * s-oscons-tmplt.c [__osf__ && !_SS_MAXSIZE]: Undef AF_UNIX6.
7855 2009-02-18 H.J. Lu <hongjiu.lu@intel.com>
7857 * gcc-interface/misc.c (gnat_post_options): Turn off warn_psabi.
7859 2009-02-16 Eric Botcazou <ebotcazou@adacore.com>
7861 * gcc-interface/deftarg.c: Remove.
7863 2009-02-10 Olivier Hainque <hainque@adacore.com>
7864 Eric Botcazou <ebotcazou@adacore.com>
7866 * gcc-interface/decl.c (enum alias_set_op): New enumeration.
7867 (copy_alias_set): Rename into...
7868 (relate_alias_sets): ...this. Add third parameter OP. Retrieve the
7869 underlying array of unconstrained arrays for the new type as well.
7870 If the old and new alias sets don't conflict, make one a subset of
7871 the other as per the OP parameter.
7872 (gnat_to_gnu_entity): Adjust calls to copy_alias_set.
7873 <E_Record_Type>: Do not copy the alias set for derived types.
7874 For all types, make the alias set of derived types a superset of
7875 that of their parent type.
7876 (make_aligning_type): Adjust calls to copy_alias_set.
7877 (make_packable_type): Likewise.
7878 * gcc-interface/trans.c (gnat_to_gnu)<N_Validate_Unchecked_Conversion>:
7879 Check for alias set conflict instead of strict equality to issue the
7882 2009-02-09 Eric Botcazou <ebotcazou@adacore.com>
7884 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
7885 Set TYPE_NONALIASED_COMPONENT on the array type only if appropriate.
7886 (copy_alias_set): Assert that arrays have the same aliasing settings.
7887 (substitute_in_type) <ARRAY_TYPE>: Copy TYPE_NONALIASED_COMPONENT.
7889 2009-02-08 Eric Botcazou <ebotcazou@adacore.com>
7891 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
7892 Set TYPE_NONALIASED_COMPONENT on the array type.
7894 2009-01-31 Laurent GUERBY <laurent@guerby.net>
7896 * gcc-interface/Makefile.in: Fix mipsel linux handling.
7898 2009-01-16 Jakub Jelinek <jakub@redhat.com>
7900 * gcc-interface/Makefile.in: Fix multilib handling for
7903 2009-01-12 Eric Botcazou <ebotcazou@adacore.com>
7905 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Really strip
7906 only useless conversions around renamed objects.
7908 2009-01-11 Eric Botcazou <ebotcazou@adacore.com>
7910 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Put
7911 the _Tag field before any discriminants in the field list.
7912 (components_to_record): Remove obsolete comment.
7916 Copyright (C) 2009 Free Software Foundation, Inc.
7918 Copying and distribution of this file, with or without modification,
7919 are permitted in any medium without royalty provided the copyright
7920 notice and this notice are preserved.