1 2009-06-26 Eric Botcazou <ebotcazou@adacore.com>
3 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Factor
4 out common predicate. Use the maximum to compute the upper bound of
5 the index type only when it is not wider than sizetype. Perform the
6 comparison in the index type for the generic expression. Use real
7 precision to decide whether to generate special types for debugging
10 2009-06-26 Matthew Gingell <gingell@adacore.com>
12 * adaint.c: Do not use the dummy version of convert_addresses on LynxOS
14 2009-06-26 Vincent Celier <celier@adacore.com>
16 * prj.ads (No_Language_Config): Value of Dependency_Kind is None by
19 2009-06-26 Robert Dewar <dewar@adacore.com>
21 * exp_ch4.adb, gnatcmd.adb, make.adb: Minor reformatting
23 2009-06-26 Eric Botcazou <ebotcazou@adacore.com>
25 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Factor
26 out common predicate. Use the maximum to compute the upper bound of
27 the index type only when it is not wider than sizetype. Perform the
28 comparison in the index type for the generic expression. Use real
29 precision to decide whether to generate special types for debugging
32 2009-06-26 Eric Botcazou <ebotcazou@adacore.com>
34 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Pass
35 correct arguments to create_field_decl. Remove redundant iteration.
36 Rewrite computation of the maximum size.
37 <E_Array_Subtype>: Reorder and simplify handling of special cases.
38 Rewrite computation of the maximum size. Use consistent naming.
39 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Length>: Swap
40 comparison order for consistency. Use generic integer node to
41 build the operator and fold the result.
43 2009-06-25 Vincent Celier <celier@adacore.com>
45 * vms_data.ads: Minor comment change
47 2009-06-25 Gary Dismukes <dismukes@adacore.com>
49 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Don't build an
50 assignment statement to targeting a caller-provided object when the
51 result type is an interface type.
53 * exp_ch6.adb (Expand_Call): Remove redundant test of
54 Is_Limited_Interface (Is_Inherently_Limited is sufficient).
55 (Is_Build_In_Place_Function): Remove test for Is_Limited_Interface.
57 * sem_aggr.adb (Check_Expr_OK_In_Limited_Aggregate): Add type in call
58 to OK_For_Limited_Init.
60 * sem_aux.adb (Is_Inherently_Limited_Type): Revise limited type
61 condition so that True is returned for all limited interfaces, not
62 just synchronized ones. Ignore components of an interface type when
63 checking for limited components (such a component can be a parent
66 * sem_ch3.ads (OK_For_Limited_Init_In_05): Add type parameter.
67 (OK_For_Limited_Init): Add type parameter.
69 * sem_ch3.adb (Check_Initialization): Add type in call to
71 (OK_For_Limited_Init): Add new type param in call to
72 OK_For_Limited_Init_In_05.
73 (OK_For_Limited_Init_In_05): Permit arbitrary expressions of a
74 nonlimited type when the context type is a limited interface. Add type
77 * sem_ch4.adb (Analyze_Allocator): Add type in call to
80 * sem_ch6.adb (Check_Limited_Return): Add type in call to
83 * sem_ch12.adb (Analyze_Formal_Object_Declaration): Add type in call to
85 (Instantiate_Object): Add type in call to OK_For_Limited_Init.
87 * sem_type.adb (Interface_Present_In_Ancestor): In the case of a
88 class-wide interface, get the base type before applying Etype, in order
89 to account for class-wide subtypes.
91 2009-06-25 Emmanuel Briot <briot@adacore.com>
93 * gnatcmd.adb, prj-proc.adb, make.adb, prj.adb, prj.ads, prj-nmsc.adb,
94 prj-util.adb, prj-env.adb, prj-env.ads: Merge handling of naming_data
95 between gnatmake and gprbuild.
96 (Naming_Data): Removed, no longer used
97 (Naming_Table, Project_Tree_Ref.Namings): Removed, since this is only
98 needed locally in one subprogram, no need to store forever in the
100 (Check_Naming_Scheme, Check_Package_Naming): Merged, since they play
102 (Body_Suffix_Of, Body_Suffix_Id_Of, Register_Default_Naming_Scheme,
103 Same_Naming_Scheme, Set_Body_Suffix, Set_Spec_Suffix, Spec_Suffix_Of,
104 Spec_Suffix_Id_Of): removed, no longer used.
106 2009-06-25 Javier Miranda <miranda@adacore.com>
108 * sem_res.adb (Resolve_Allocator): Skip test requiring exact match of
109 types on qualified expression in calls to imported C++ constructors.
111 * exp_ch4.adb (Expand_Allocator_Expression): Add missing support for
112 imported C++ constructors.
114 2009-06-25 Sergey Rybin <rybin@adacore.com>
116 * vms_data.ads: Add qualifier for new gnatcheck '-t' option.
118 2009-06-25 Vincent Celier <celier@adacore.com>
120 * s-os_lib.adb (Normalize_Pathname.Get_Directory): If directory
121 provided, on Windows change all '/' to '\'.
123 * fmap.ads, fmap.adb (Remove_Forbidden_File_Name): Remove, no longer
124 used. Minor comment changes
126 * prj-nmsc.adb: Do not call Fmap.Add_Forbidden_File_Name or
127 Remove_Forbidden_File_Name.
129 2009-06-25 Quentin Ochem <ochem@adacore.com>
131 * prj.ads (Unit_Index): Now general access type.
133 2009-06-25 Pascal Obry <obry@adacore.com>
135 * a-stwise.adb, a-stzsea.adb: Fix confusion between 'Length and 'Last.
137 2009-06-25 Emmanuel Briot <briot@adacore.com>
139 * fmap.ads, make.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb,
140 prj-env.ads (Source_Data.Get_Object): Field removed, since it can be
141 computed efficiently from the other fields.
142 (Object_To_Global_Archive): New subprogram
143 (Create_Mapping): Remove unneeded call to Remove_Forbidden_File_Name.
144 (Override_Kind): Fix handling of separates in Ada.
145 (Create_Mapping_File): Remove duplicate code
146 (Naming_Data.Implementation_Exception, Specification_Exception):
147 field removed, since never used.
148 (Naming_Data.Specs, .Bodies): field removed, since this is only
149 used while processing the project and is not needed once the tree
150 is in memory. This brings Naming_Data and Lang_Naming_Data
151 closer (same content now, but different use still).
153 2009-06-25 Pascal Obry <obry@adacore.com>
155 * sem_ch4.adb: Minor reformatting.
157 * a-strsea.adb: Fix confusion between 'Length and 'Last.
159 2009-06-25 Ed Schonberg <schonberg@adacore.com>
161 * exp_attr.adb (Expand_N_Attribute_Reference, case 'Access and
162 Unchecked_Access): If the context is an interface type, and the prefix
163 is of the corresponding class-wide type, do not insert a conversion
164 because the pointer displacement has already taken place, and we must
165 retain the class-wide type in a dispatching context.
167 2009-06-25 Emmanuel Briot <briot@adacore.com>
169 * prj-nmsc.adb, prj-env.adb (Override_Kind): Unset the unit field of
170 the previous source file.
171 (Create_Mapping): Iterate on sources rather than on units.
173 2009-06-25 Emmanuel Briot <briot@adacore.com>
175 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb,
176 prj-env.adb, prj-env.ads (Slash): removed, no longer used
177 (Source_Data): no longer use Path.Name to point to a locally removed
178 file. Instead we use the field Locally_Removed which is clearer
180 2009-06-25 Arnaud Charlet <charlet@adacore.com>
182 * gcc-interface/Make-lang.in: Remove references to sem_maps.o
184 * sem_maps.adb, sem_maps.ads: Removed, not used.
186 2009-06-25 Ed Falis <falis@adacore.com>
188 * s-vxwext-rtp.ads: Add missing declaration
190 2009-06-25 Matthew Gingell <gingell@adacore.com>
192 * a-stwise.adb, a-stzsea.adb (Count, Index): Avoid local copy on stack,
193 speed up unmapped case.
195 2009-06-25 Vincent Celier <celier@adacore.com>
197 * prj-nmsc.adb (Check): Change error message for illegal abstract
200 2009-06-25 Robert Dewar <dewar@adacore.com>
202 * gnat_ugn.texi: Add note on use of -gnatct for ASIS
204 2009-06-25 Emmanuel Briot <briot@adacore.com>
206 * fmap.ads: Add documentation on mapping files
208 2009-06-25 Robert Dewar <dewar@adacore.com>
210 * exp_ch6.adb, g-socket.ads, g-socket.adb, sem_ch3.adb: Minor
213 2009-06-24 Robert Dewar <dewar@adacore.com>
215 * prj-nmsc.adb, prj-nmsc.ads, prj-proc.adb, prj.adb: Minor reformatting
217 * a-strsea.adb (Count): Avoid local copy on stack, speed up unmapped
221 2009-06-24 Ed Schonberg <schonberg@adacore.com>
223 * sem_ch4.adb (Analyze_One_Call): Check that at least one actual is
224 present when checking whether a call may be interpreted as an indexing
225 of the result of a call.
227 * exp_ch9.adb (Expand_N_Subprogram_Declaration): Place the generated
228 body for a null procedure on the freeze actions for the procedure, so
229 that it will be analyzed at the proper place without premature freezing
232 * sem_ch3.adb (Check_Completion): Code cleanup.
233 Do not diagnose a null procedure without a body, if previous errors
234 have disabled expansion.
236 2009-06-24 Doug Rupp <rupp@adacore.com>
238 * init.c [VMS] Resignal C$_SIGKILL
240 2009-06-24 Ed Falis <falis@adacore.com>
242 * s-vxwext.adb, s-vxwext-kernel.adb: Add s-vxwext body for VxWorks 5
243 Define ERROR in body for VxWorks 6 kernel
245 2009-06-24 Pascal Obry <obry@adacore.com>
247 * g-socket.adb, g-socket.ads: Fix possible unexpected constraint error
248 in [Send/Receive]_Socket.
250 2009-06-24 Emmanuel Briot <briot@adacore.com>
252 * prj-proc.adb, prj-proc.ads, prj.ads, prj-nmsc.adb, prj-nmsc.ads,
253 prj-conf.adb, prj-conf.ads (Allow_Duplicate_Basenames): New parameter
254 to several subprograms.
255 (Source_Data.Other_Part): Removed, since can be computed from the
257 (Other_Part): New subprogram.
259 2009-06-24 Emmanuel Briot <briot@adacore.com>
261 * gnat_ugn.texi, prj-nmsc.adb (Suffix_Matches): A suffix can also match
262 the full base name of the file when the suffix doesn't start with a '.'.
264 2009-06-24 Vincent Celier <celier@adacore.com>
266 * prj-nmsc.adb (Check): A project declared abstract is legal if no
267 attribute Source_Dirs, Source_Files, Source_List_File or Languages is
270 2009-06-24 Robert Dewar <dewar@adacore.com>
272 * clean.adb, gnatcmd.adb, make.adb, mlib-prj.adb,
273 prj-env.adb: Minor reformatting
275 2009-06-24 Ed Falis <falis@adacore.com>
277 * s-taprop-vxworks.adb, s-osinte-vxworks.ads, s-vxwext.ads,
278 s-vxwext-kernel.adb, s-vxwext-kernel.ads, s-vxwext-rtp.adb,
279 s-tasinf-vxworks.ads, gcc-interface/Makefile.in: Add processor affinity
280 support for VxWorks SMP.
282 * gcc-interface/Make-lang.in: Update dependencies
284 2009-06-24 Emmanuel Briot <briot@adacore.com>
286 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
287 prj-nmsc.adb, prj-env.adb, prj-proc.adb (Units_Table): Removed, since
289 (Source_Data.Lang_Kind): Removed, since it duplicates information
290 already available through Language.Config.
291 (Source_Data.Compile): Removed, since information is already available
292 through the language.
293 (Is_Compilable): New subprogram.
294 (Source_Data.Dependency): Removed, since already available through
296 (Source_Data.Object_Exist, Object_Linked): Removed since available
297 through the language already.
298 (Unit_Data.File_Names): Is now also set in multi_language mode, to
299 bring the two modes closer in the resulting data structures.
300 (Source_Data.Unit): Now a direct pointer to the unit data, rather than
301 just the name that would point into a hash table.
302 (Get_Language_From_Name): New subprogram.
304 2009-06-24 Javier Miranda <miranda@adacore.com>
306 * exp_ch4.adb (Expand_N_Type_Conversion): Handle entities that are
307 visible through limited-with context clauses. In addition, avoid an
308 extra tag check that is not required when the class-wide
309 designated types of the operand and target types are
311 (Tagged_Membership): Handle entities from the limited view.
313 2009-06-24 Emmanuel Briot <briot@adacore.com>
315 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.ads, clean.adb,
316 prj-nmsc.adb, prj-env.adb (File_Name_Data): removed
317 (Spec_Or_Body): now a subtype of Source_Kind, to avoid using two
318 different vocabularies for similar concepts (Impl/Body_Part and
320 (Unit_Data): now points directly to a Source_Id, rather than duplicating
321 some of the information in File_Name_Data. This also saves a bit of
322 memory. However, since we are now using a pointer we need to test
323 for null explicitly in several places of the code
325 2009-06-24 Javier Miranda <miranda@adacore.com>
327 * exp_ch4.adb (Expand_N_Type_Conversion): return immediately
328 from processing the type conversion when the node is
329 replaced by an N_Raise_Program_Error node.
331 2009-06-24 Hristian Kirtchev <kirtchev@adacore.com>
333 * sem_ch6.adb (Designates_From_With_Type): New routine.
334 (Process_Formals): Since anonymous access types are no longer flagged
335 as from with types, traverse the designated type to determine whether
336 it is coming from a limited view.
338 * sem_res.adb: Remove with and use clauses for Sem_Ch10.
339 (Full_Designated_Type): Use Available_View to extract the non-limited /
342 2009-06-24 Robert Dewar <dewar@adacore.com>
344 * exp_ch6.adb: Minor reformatting
346 * layout.adb: Minor reformatting
348 * make.adb: Minor reformatting
350 2009-06-24 Thomas Quinot <quinot@adacore.com>
352 * sem_ch10.adb: Minor code reorganization.
354 2009-06-24 Eric Botcazou <ebotcazou@adacore.com>
356 * ttypes.ads: Minor editing.
358 2009-06-24 Robert Dewar <dewar@adacore.com>
360 * exp_ch6.adb (Expand_Actuals): Use Is_Volatile, not Treat_As_Volatile
361 in deciding to do call-by-copy code.
363 2009-06-24 Vincent Celier <celier@adacore.com>
365 * make.adb (Gnatmake): To decide if an executable should be rebuilt,
366 check if an externally built library file is more current than the
369 2009-06-23 Olivier Hainque <hainque@adacore.com>
371 * gcc-interface/utils.c (handle_vector_size_attribute): Import from
372 c-common.c and populate in gnat_internal_attribute_table.
374 2009-06-23 Ed Schonberg <schonberg@adacore.com>
376 * sem_res.adb (Valid_Conversion, Full_Designated_Type): Use
377 Available_View only when designated type of an anonymous access type
380 2009-06-23 Robert Dewar <dewar@adacore.com>
382 * sem_ch10.adb: Minor reformatting
384 * ali.ads: Mino reformatting.
386 * gnat1drv.adb (Adjust_Global_Switches): New procedure (take care of
387 turning off inlining if ASIS mode active).
389 * switch-c.adb: Remove fiddling with Inspector_Mode and ASIS_Mode
390 This belongs in gnat1drv.adb after switches are scanned.
392 2009-06-23 Hristian Kirtchev <kirtchev@adacore.com>
394 * sem_attr.adb: Add with and use clauses for Sem_Ch10.
395 (Check_Not_Incomplete_Type): Minor reformatting. Retrieve the root type
396 when dealing with class-wide types. Detect a legal shadow entity and
397 retrieve its non-limited view.
399 * sem_ch10.adb (Has_With_Clause): Move the spec and body of the
400 subprogram to top package level from Intall_Limited_Withed_Unit.
401 (Install_Limited_Withed_Unit): Remove spec and body of Has_With_Clause.
402 Add check which prevents the installation of a limited view if the
403 non-limited view is already visible through a with clause.
404 (Is_Legal_Shadow_Entity_In_Body): New routine. Detect a residual, but
405 legal shadow entity which may occur in subprogram formals of anonymous
408 * sem_ch10.ads (Is_Legal_Shadow_Entity_In_Body): New routine.
410 * sem_ch3.adb (Access_Definition): Remove the propagation of flag
411 From_With_Type from the designated type to the generated anonymous
412 access type. Remove associated comment.
414 * sem_res.adb Add with and use clauses for Sem_Ch10.
415 (Full_Designated_Type): Detect a legal shadow entity and retrieve its
416 non-limited view. Since the shadow entity may replace a regular
417 incomplete type, return the available full view.
419 2009-06-23 Ed Schonberg <schonberg@adacore.com>
421 * sem_ch10.adb (Remove_Limited_With_Clause): Clean up code that handles
422 incomplete type declarations. Previous code was potentially quadratic
423 in the number of visible declarations in any package appearing in a
426 2009-06-23 Robert Dewar <dewar@adacore.com>
428 * prj-conf.ads, prj-part.adb, prj-proc.adb, prj-proc.ads, sem_ch8.adb,
429 xref_lib.adb: Minor reformatting
431 2009-06-23 Robert Dewar <dewar@adacore.com>
433 * a-stzhas.adb: Provide dummy body to avoid build problems with old
434 versions which did have a body for this unit.
436 2009-06-23 Vincent Celier <celier@adacore.com>
438 * prj-attr.adb: Attribute names Initial_Required_Switches and
439 Final_Required_Switches changed to Leading_Required_Switches and
440 Trailing_Required_Switches.
442 * prj-nmsc.adb (Process_Compiler): Attribute names
443 Initial_Required_Switches and Final_Required_Switches changed to
444 Leading_Required_Switches and Trailing_Required_Switches.
446 * prj.ads (Language_Config): Component Initial_Required_Switches and
447 Final_Required_Switches changed to Leading_Required_Switches and
448 Trailing_Required_Switches.
450 * snames.ads-tmpl: Remove standard names Initial_Required_Switches and
451 Final_Required_Switches; add standard names Leading_Required_Switches
452 and Trailing_Required_Switches.
454 2009-06-23 Thomas Quinot <quinot@adacore.com>
456 * prj-conf.adb: Minor reformatting
458 * xref_lib.adb: Minor cleanup
460 2009-06-23 Emmanuel Briot <briot@adacore.com>
462 * prj-proc.adb, prj-proc.ads, prj-nmsc.adb, prj-nmsc.ads, prj-conf.adb,
463 prj-conf.ads (Check_Configuration): New parameter
464 Compiler_Driver_Mandatory.
466 2009-06-23 Ed Schonberg <schonberg@adacore.com>
468 * sem_ch10.adb (Analyze_With_Clause): If a subprogram instance in the
469 context of the current unit has an inline pragma, the instance is not
470 rewritten as the declaration of the package wrapper. Handle both
471 possibilities when retrieving the visible subprogram that renames the
472 instantiation itself.
474 2009-06-23 Javier Miranda <miranda@adacore.com>
476 * exp_ch4.adb (Displace_Allocator_Pointer, Expand_N_Allocator): Handle
477 designated types referencing entities from the limited view.
479 2009-06-23 Robert Dewar <dewar@adacore.com>
481 * s-strhas.adb, s-strhas.ads: Restrict to 32-bit modular types
483 * s-imgdec.adb (Set_Decimal_Digits): Fix error of too many digits for
486 * prj-conf.ads: Minor reformatting
488 * prj-conf.adb: Minor reformatting
490 2009-06-23 Vasiliy Fofanov <fofanov@adacore.com>
492 * g-debpoo.adb (Dump_Gnatmem): Output dummy timestamps for allocations
493 to correspond to the log format that gnatmem now expects.
495 2009-06-23 Vincent Celier <celier@adacore.com>
497 * prj-attr.adb: New attributes Initial_Required_Switches,
498 Final_Required_Switches and Object_File_Switches
500 * prj-nmsc.adb (Process_Compiler): Process new attributes
501 Name_Final_Required_Switches, Name_Initial_Required_Switches and
502 Name_Object_File_Switches.
504 * prj.ads (Language_Config): New component
505 Compiler_Initial_Required_Switches (replace Compiler_Required_Switches),
506 Compiler_Final_Required_Switches and Object_File_Switches.
508 * snames.ads-tmpl: New standard names Initial_Required_Switches,
509 Final_Required_Switches and Object_File_Switches
511 2009-06-23 Pascal Obry <obry@adacore.com>
513 * s-strhas.adb, s-strhas.ads: Minor reformatting.
515 2009-06-23 Ed Schonberg <schonberg@adacore.com>
517 * sem_ch10.adb (Install_Limited_Withed_Unit): a null procedure does
518 not indicate that the enclosing unit needs a body.
520 2009-06-23 Emmanuel Briot <briot@adacore.com>
522 * prj-conf.ads, prj-conf.adb: New files part of the project manager.
524 2009-06-23 Ed Schonberg <schonberg@adacore.com>
526 * sem_ch3.adb (Derive_Subprogram): If the inherited subprogram is a
527 primitive equality include it with its source name even if the
528 operation is currently invisible, to make sure that the corresponding
529 slot in the dispatch table is reserved for the internal equality
530 subsequently generated during expansion.
532 2009-06-23 Matthew Gingell <gingell@adacore.com>
534 * Makefile.rtl, a-stwiha.adb: Add a-stwiha.adb back.
536 2009-06-22 Jose Ruiz <ruiz@adacore.com>
538 * sysdep.c (__gnat_localtime_tzoff for RTX):
539 SystemTimeToTzSpecificLocalTime is not supported by RTX. Use
540 GetTimeZoneInformation instead.
542 2009-06-22 Robert Dewar <dewar@adacore.com>
544 * sem_res.adb (Check_No_Direct_Boolean_Operators): New procedure
546 2009-06-22 Ed Schonberg <schonberg@adacore.com>
548 * sem_ch12.adb (Collect_Previous_Instances): Do not collect
549 instantiations declared in a previous generic package body.
551 2009-06-22 Robert Dewar <dewar@adacore.com>
553 * gnat_rm.texi: Add doc that X=True and X=False is allowed for the
554 restriction No_Direct_Boolean_Operators.
556 2009-06-22 Thomas Quinot <quinot@adacore.com>
558 * bindusg.adb: Minor fixes to gnatbind usage message
560 * sem_eval.adb: Minor reformatting
562 2009-06-22 Javier Miranda <miranda@adacore.com>
564 * sem_ch3.adb (Analyze_Object_Declaration, Freeze_Entity): Move to the
565 freezing point the check on the use of abstract types in object
566 declarations. Done to allow the declaration of C++ imported variables
567 or constants whose type corresponds with an imported C++ classes for
568 which the constructor is not imported.
570 2009-06-22 Thomas Quinot <quinot@adacore.com>
572 * sem_ch6.adb: Minor reformatting
574 2009-06-22 Ed Schonberg <schonberg@adacore.com>
576 * exp_ch3.adb (Build_Initialization_Call): If a discriminated record
577 component is constrained with an expression rather than with a
578 discriminant of the enclosing type, use that expression when building
579 the call to default-initialize the component, when the call is part of
580 an aggregate with box initialization.
582 2009-06-22 Ed Schonberg <schonberg@adacore.com>
584 * sem_ch6.adb (Check_Overriding_Indicator): Clean up code, make warning
585 unconditional rather than a style check, because a formal name out of
588 2009-06-22 Vincent Celier <celier@adacore.com>
590 * prj-nmsc.adb (Locate_Directory): Indicate the project name when
591 creating a directory automatically.
593 2009-06-22 Eric Botcazou <ebotcazou@adacore.com>
595 * sem_ch3.adb (Create_Constrained_Components): For a subtype of an
596 untagged derived type, add a hidden component for every constrained
597 discriminant of the parent type to keep record layout consistent.
599 2009-06-22 Thomas Quinot <quinot@adacore.com>
601 * exp_ch3.adb: Minor code reorganization (avoid an unnecessary tree
604 2009-06-22 Matthew Gingell <gingell@adacore.com>
606 * a-stzhas.adb, a-stwiha.adb, impunit.adb, a-swbwha.adb, a-shcain.adb,
607 s-htable.adb, a-szuzha.adb, a-stunha.adb, a-stboha.adb, a-strhas.adb,
608 g-spitbo.adb, s-strhas.adb, a-szbzha.adb, s-strhas.ads, Makefile.rtl,
609 a-swuwha.adb: New unit System.String_Hash.
610 Refactor redundant cut and pasted hash functions with instances of a
611 new generic hash function.
612 Implement a new string hashing algorithm which appears in testing to
613 be move effective than to previous approach.
615 2009-06-22 Ed Falis <falis@adacore.com>
617 * sysdep.c: remove include for nfsLib.h and an NFS specific error
618 message for VxWorks 653 vThreads: not supported by the OS.
620 * gsocket.h: disable sockets for VxWorks 653 vThreads.
622 2009-06-22 Robert Dewar <dewar@adacore.com>
624 * sem_ch6.adb: Add ??? comment for bad use of Style_Check
626 2009-06-22 Robert Dewar <dewar@adacore.com>
628 * sinput.adb, sinput.ads (Expr_First_Char, Expr_Last_Char): Replaced
631 * freeze.adb: Minor comment updates
633 * s-valrea.adb (Bad_Based_Value): New procedure
634 (Scan_Real): Raise exceptions with messages
636 2009-06-22 Matthew Gingell <gingell@adacore.com>
638 * adaint.h: Complete previous change.
640 2009-06-22 Thomas Quinot <quinot@adacore.com>
642 * exp_ch7.ads, exp_ch3.adb: Minor reformatting
644 2009-06-22 Ed Schonberg <schonberg@adacore.com>
646 * sem_ch6.adb (Check_Overriding_Indicator): When style checks are
647 enabled, emit warning when a non-controlling argument of the overriding
648 operation appears out of place vis-a-vis of the formal of the
649 overridden operation.
651 2009-06-22 Vincent Celier <celier@adacore.com>
653 * gnatcmd.adb (Check_Files): Close temporary files after all file names
654 have been written into it.
656 2009-06-22 Matthew Gingell <gingell@adacore.com>
658 * adaint.c, adaint.h, cstreams.c: Call stat64 on platforms where it is
661 2009-06-22 Thomas Quinot <quinot@adacore.com>
663 * sem_disp.adb (Check_Direct_Call): Handle the case where the full
664 view of the root type is visible at the point of the call.
666 2009-06-22 Pat Rogers <rogers@adacore.com>
668 * gnat_ugn.texi: Revised a sentence to correct a minor grammar error.
670 2009-06-22 Jerome Lambourg <lambourg@adacore.com>
672 * freeze.adb: Add comments.
674 2009-06-21 Thomas Quinot <quinot@adacore.com>
676 * exp_ch3.adb, exp_prag.adb, exp_util.adb, exp_util.ads, freeze.adb,
677 sem_ch13.adb, sem_elab.adb (Exp_Prag.Expand_Pragma_Import_Or_Interface):
678 Factor out code to new subprogram...
679 (Exp_Util.Find_Init_Call): New shared routine to find the init proc call
680 for a default initialized variable.
681 (Freeze.Check_Address_Clause): Do not reset Has_Delayed_Freeze on an
682 entity that has an associated freeze node.
683 (Sem_Ch13.Analyze_Attribute_Definition_Clause, case Address):
684 If there is an init call for the object, defer it to the object freeze
686 (Check_Elab_Call.Find_Init_Call): Rename to Check_Init_Call, to avoid
687 name clash with new subprogram introduced in Exp_Util.
689 2009-06-21 Robert Dewar <dewar@adacore.com>
691 * einfo.ads: Minor reformatting
693 2009-06-21 Ed Falis <falis@adacore.com>
695 * env.c (__gnat_environ): return NULL for vThreads - unimplemented
697 2009-06-21 Eric Botcazou <ebotcazou@adacore.com>
699 * einfo.ads: Update comments.
701 2009-06-21 Hristian Kirtchev <kirtchev@adacore.com>
703 * sem_disp.adb (Check_Direct_Call): New routine. Dispatching calls
704 where the controlling formal is of private class-wide type whose
705 completion is a synchronized type can be converted into direct calls.
707 2009-06-21 Vincent Celier <celier@adacore.com>
709 * gnatcmd.adb (Check_Files): When all sources of the project are to be
710 indicated to gnatcheck, gnatpp or gnatmetric, always specify the list
711 of sources using -files=, so that the distinction can be made by the
712 tool of a call with no source (to display the usage) from a call with
713 a project file that contains no source.
715 2009-06-21 Jerome Lambourg <lambourg@adacore.com>
717 * exp_ch3.adb (Build_Array_Init_Proc): Do not build the init proc in
718 case of VM convention arrays.
720 2009-06-20 Robert Dewar <dewar@adacore.com>
722 * a-nudira.adb: Minor reformatting
724 2009-06-20 Ed Schonberg <schonberg@adacore.com>
726 * exp_ch3.adb (Build_Record_Init_Proc): When copying initial
727 expressions (possibly from a parent type) indicate that the scope of
728 the new itypes is the initialization procedure being built.
730 2009-06-20 Robert Dewar <dewar@adacore.com>
732 * a-nudira.adb (Fits_In_32_Bits): New name (inverted sense) for
733 Needs_64, and now computed without anomolies for some dynamic types.
735 2009-06-20 Thomas Quinot <quinot@adacore.com>
737 * sem_prag.adb: Minor reformatting
739 * exp_disp.ads: Minor reformatting
741 2009-06-20 Ed Schonberg <schonberg@adacore.com>
743 * sem_ch3.adb (Is_OK_For_Limited_Init): An unchecked conversion of a
744 function call is a legal expression to initialize a limited object.
746 * exp_ch3.adb: Rename various freeze operations that perform expansion
747 actions, to prevent confusion with subprograms in the freeze package.
749 2009-06-20 Ed Schonberg <schonberg@adacore.com>
751 * sem.adb (Walk_Library_Units): Check instantiations first.
753 * sem_ch6.adb (Analyze_Subprogram_Declaration): Mark a subprogram as a
754 private primitive if it is a function with a controlling result that is
755 a type extension with progenitors.
757 * exp_ch9.adb (Build_Wrapper_Spec, Build_Wrapper_Body): Handle properly
758 a primitive operation of a synchronized tagged type that has a
761 2009-06-20 Thomas Quinot <quinot@adacore.com>
763 * einfo.ads: Fix typo.
765 2009-06-20 Ed Falis <falis@adacore.com>
767 * s-vxwext.ads, s-vxwext-kernel.adb: Complete previous change.
769 2009-06-19 Eric Botcazou <ebotcazou@adacore.com>
771 * gcc-interface/trans.c (emit_check): Do not wrap up the result
773 (protect_multiple_eval): Always protect complex expressions.
775 2009-06-19 Emmanuel Briot <briot@adacore.com>
777 * prj-ext.adb, makeutl.adb, makeutl.ads (Executable_Prefix_Path): Now
778 make sure we always return a name ending with a path separator.
780 2009-06-19 Javier Miranda <miranda@adacore.com>
782 * sem_ch12.adb (Instantiate_Package_Body, Instantiate_Subprogram_Body):
783 Save and restore the visibility of the parent when installed.
785 2009-06-19 Jose Ruiz <ruiz@adacore.com>
787 * s-tposen.ads (Protection_Entry): Replace fields L, Ceiling, and Owner
788 by Common which contains all these fields.
790 * s-tposen.adb (Initialize_Protection_Entry, Lock_Entry,
791 Lock_Read_Only_Entry, Timed_Protected_Single_Entry_Call, Unlock_Entry):
792 Remove code duplication in this package by means of calling the
793 equivalent code in s-taprob.
795 2009-06-19 Robert Dewar <dewar@adacore.com>
797 * a-einuoc.ads: Minor reformatting
799 2009-06-19 Ed Falis <falis@adacore.com>
801 * a-einuoc.ads, s-osinte-vxworks.ads, s-vxwext.ads, s-vxwext-kernel.adb,
802 s-vxwext-kernel.ads, s-vxwext-rtp.ads: Code clean up.
804 2009-06-19 Eric Botcazou <ebotcazou@adacore.com>
806 * einfo.ads (Handling of Type'Size Values): Fix Object_Size values.
808 2009-06-19 Robert Dewar <dewar@adacore.com>
810 * a-nudira.adb (Need_64): Handle negative ranges and also dynamic
813 * checks.adb (Determine_Range): Move the test for generic types later.
815 * sem_eval.adb (Compile_Time_Compare): Improve circuitry to catch more
817 (Eval_Relational_Op): Fold more cases including string compares
819 * sem_util.ads, sem_util.adb (References_Generic_Formal_Type): New
822 2009-06-19 Robert Dewar <dewar@adacore.com>
824 * sem_type.ads, sem_ch12.adb: Minor reformatting
826 * s-wchcnv.adb (UTF_32_To_Char_Sequence): Handle invalid data properly
828 2009-06-19 Ed Schonberg <schonberg@adacore.com>
830 * exp_ch9.adb (Build_Wrapper_Spec): Handle properly an overridden
831 primitive operation of a rivate extension whose controlling argument
834 * sem.adb (Walk_Library_Units): exclude generic package declarations
837 2009-06-19 Thomas Quinot <quinot@adacore.com>
839 * i-vxwoio.ads: Add comments
841 2009-06-19 Thomas Quinot <quinot@adacore.com>
843 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
844 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
845 g-socthi.adb, g-socthi.ads, g-socket.adb, g-sothco.ads
846 (GNAT.Sockets.Thin.C_Ioctl): Rename to Socket_Ioctl.
847 (GNAT.Sockets.Thin.Socket_Ioctl): Use new function
848 Thin_Common.Socket_Ioctl.
849 (GNAT.Sockets.Thin_Common.Socket_Ioctl): Binding to new C wrapper
851 (__gnat_socket_ioctl): Wrapper for ioctl(2) called with a single int*
852 argument after the file descriptor and request code.
854 2009-06-19 Robert Dewar <dewar@adacore.com>
856 * checks.adb: Minor reformatting
858 2009-06-19 Jose Ruiz <ruiz@adacore.com>
860 * env.c (__gnat_environ): RTX does not support this functionality.
862 2009-06-19 Ed Schonberg <schonberg@adacore.com>
864 * sem.adb (Walk_Library_Items): Include bodies in the list of units to
865 traverse, to account for front-end inlining and instantiations in a
866 spec or in the main unit.
868 2009-06-19 Robert Dewar <dewar@adacore.com>
870 * checks.adb (Determine_Range): Do not attempt to get range of generic
873 2009-06-19 Sergey Rybin <rybin@adacore.com>
875 * gnat_ugn.texi, vms_data.ads: Add the documentation for the new
876 gnatmetric option for generating the schema file for gnatmetric XML
877 output. Add corresponding VMS qualifier.
879 2009-06-19 Robert Dewar <dewar@adacore.com>
881 * g-cgi.adb: Minor reformatting
883 2009-06-19 Eric Botcazou <ebotcazou@adacore.com>
885 * s-intman-solaris.adb (Notify_Exception): Do not discriminate on the
886 signal code for SIGFPE and raise Program_Error for SIGILL.
888 * s-osinte-solaris.ads: Remove signal code constants for SIGFPE.
890 2009-06-19 Ed Schonberg <schonberg@adacore.com>
892 * sem_ch8.adb (Nvis_Messages): Do not list an entity declared in a
893 generic package if there is a visibility candidate that is declared in
896 2009-06-18 Olivier Hainque <hainque@adacore.com>
898 * system-aix64.ads: New file.
899 * gcc-interface/Makefile.in (aix LIBGNAT_TARGET_PAIRS): Use the
900 64bit system.ads for ppc64 multilib variants.
902 2009-06-16 Robert Dewar <dewar@adacore.com>
903 Olivier Hainque <hainque@adacore.com>
905 Relax constraints on Machine_Attribute argument types:
906 * sem_prag.adb (Check_Arg_Is_Static_Expression): Allow for
908 (Analyze_Attribute, case Machine_Attribute): Allow any type for arg 3.
909 * gcc-interface/decl.c (prepend_attributes): Accept static
910 expressions of any type as attribute arguments, not only string
912 * gnat_rm.texi (pragma Machine_Attribute section): Adjust to reflect
913 the relaxation of the restriction on the Info argument type.
915 2009-06-13 Aldy Hernandez <aldyh@redhat.com>
917 * gcc-interface/utils.c (record_builtin_type): Pass location
918 argument to build_decl.
919 (create_type_stub_decl): Same.
920 (create_type_decl): Same.
921 (create_var_decl_1): Same.
922 (create_field_decl): Same.
923 (create_param_decl): Same.
924 (create_label_decl): Same.
925 (create_subprog_decl): Same.
926 * gcc-interface/decl.c (gnat_to_gnu_entity): Same.
927 * gcc-interface/trans.c (Case_Statement_to_gnu): Pass location
928 argument to create_artificial_label.
929 (Loop_Statement_to_gnu): Same.
930 (Subprogram_Body_to_gnu): Same.
931 (gnat_gimplify_stmt): Same.
933 2009-06-11 Richard Henderson <rth@redhat.com>
935 * gcc-interface/misc.c (gnat_handle_option): Rename OPT_gdwarf_ to
938 2009-06-11 Ed Schonberg <schonberg@adacore.com>
940 * sem_attr.adb (Resolve_Attribute, case 'access): Add missing
941 accessibiliy check on access_to_subprogram in the context of an
942 anonymous access that is not an access parameter.
944 2009-06-11 Eric Botcazou <ebotcazou@adacore.com>
946 * tracebak.c (i386 section): Define IS_BAD_PTR on Solaris.
948 2009-06-11 Quentin Ochem <ochem@adacore.com>
950 * sem_warn.adb, scng.adb, sfn_scan.adb, freeze.adb: Add CODEFIX
951 comments for message handled by GPS.
953 2009-06-11 Matthew Gingell <gingell@adacore.com>
955 * adaint.c: Use fopen64 instead of fopen on platforms where we know
958 2009-06-11 Pascal Obry <obry@adacore.com>
960 * g-cgi.ads: Fix comment typo.
962 * g-cgi.adb: Properly decode "+" in CGI parameters as spaces.
964 2009-06-10 Eric Botcazou <ebotcazou@adacore.com>
966 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Use
967 a reference to the original type for the type of the field of the
969 (maybe_pad_type): Likewise.
971 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Factor
972 common predicate and remove redundant setting of TYPE_BY_REFERENCE_P.
973 Pass correctly typed arguments to create_field_decl.
974 <E_Record_Subtype>: Set BLKmode for tagged and limited types in the
975 case of contrained discriminants as well. Use the padded base type
976 in the other case as well. Rename temporary variable. Tweak test.
977 Factor common access pattern. Set GNU_SIZE only once.
979 2009-06-09 Olivier Hainque <hainque@adacore.com>
981 * gcc-interface/utils2.c (build_call_alloc_dealloc_proc): New
982 helper for build_call_alloc_dealloc with arguments to be interpreted
983 identically. Process the case where a GNAT_PROC to call is provided.
984 (maybe_wrap_malloc): New helper for build_call_alloc_dealloc, to build
985 and return an allocator for DATA_SIZE bytes aimed at containing a
986 DATA_TYPE object, using the default __gnat_malloc allocator. Honor
987 DATA_TYPE alignments greater than what the latter offers.
988 (maybe_wrap_free): New helper for build_call_alloc_dealloc, to
989 release a DATA_TYPE object designated by DATA_PTR using the
990 __gnat_free entry point.
991 (build_call_alloc_dealloc): Expect object data type instead of naked
992 alignment constraint. Use the new helpers.
993 (build_allocator): Remove special processing for the super-aligned
994 case, now handled by build_call_alloc_dealloc. Pass data
995 type instead of the former alignment argument, as expected by the new
997 * gcc-interface/gigi.h (build_call_alloc_dealloc): Adjust prototype
999 * gcc-interface/trans.c (gnat_to_gnu) <case N_Free_Statement>:
1000 Remove special processing for the super-aligned case, now handled
1001 by build_call_alloc_dealloc. Pass data type instead of the former
1002 alignment argument, as expected by the new interface.
1004 2009-06-08 Alexandre Oliva <aoliva@redhat.com>
1006 * lib-writ.adb (flag_compare_debug): Import.
1007 (Write_ALI): Skip during -fcompare-debug-second.
1009 2009-06-03 Eric Botcazou <ebotcazou@adacore.com>
1011 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: When
1012 adjusting the discriminant nodes in an extension, use the full view
1013 of the parent subtype if it is of a private kind.
1015 2009-06-03 Eric Botcazou <ebotcazou@adacore.com>
1017 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Add the
1018 _Parent field, if any, to the record before adding the other fields.
1019 <E_Record_Subtype>: Put the _Controller field before the other fields
1020 except for the _Tag or _Parent fields.
1021 (components_to_record): Likewise. Retrieve the _Parent field from the
1024 2009-06-03 Eric Botcazou <ebotcazou@adacore.com>
1026 * gcc-interface/decl.c (substitution_list): Rename to build_subst_list,
1027 remove unused parameter and simplify.
1028 (gnat_to_gnu_entity) <E_Record_Type>: Do not set TYPE_FIELDS. Factor
1029 common predicate. Rewrite loop for clarity. Use GNU_TYPE directly
1030 as context for all discriminants. Fix formatting nits.
1031 <E_Record_Subtype>: Add cosmetic 'break'. Test Has_Discriminants
1032 before Discriminant_Constraint. Adjust for above renaming. Do not
1033 set GNU_TYPE more than once.
1034 (elaborate_entity): Test Has_Discriminants on the entity and use
1035 Implementation_Base_Type.
1036 (components_to_record): Rename component_list to gnat_component_list.
1037 Retrieve the _Parent field from the list. Fix nits in comments.
1038 Clarify logic in loop. Pass correct arguments to create_field_decl.
1040 2009-06-02 Eric Botcazou <ebotcazou@adacore.com>
1042 * gcc-interface/Make-lang.in: Fix formatting.
1044 2009-06-01 Olivier Hainque <hainque@adacore.com>
1045 Eric Botcazou <ebotcazou@adacore.com>
1047 * gcc-interface/utils.c (convert) <CONSTRUCTOR case>: When converting
1048 to the packable version of the type, clear TREE_STATIC/TREE_CONSTANT
1049 on the result if at least one of the input fields couldn't be output
1050 as a static constant any more.
1052 2009-06-01 Olivier Hainque <hainque@adacore.com>
1053 Eric Botcazou <ebotcazou@adacore.com>
1055 * gcc-interface/utils2.c (gnat_build_constructor): Factor
1056 out code. Use initializer_constant_valid_for_bitfield_p and
1057 CONSTRUCTOR_BITFIELD_P for bit-fields.
1059 2009-05-26 Ian Lance Taylor <iant@google.com>
1061 * gcc-interface/Makefile.in (COMPILER): Define.
1062 (COMPILER_FLAGS, ALL_COMPILERFLAGS): Define.
1063 (.c.o, cio.o, init.o, initialize.o, targext.o): Use $(COMPILER).
1064 (seh_init.o, tracebak.o): Likewise.
1065 * gcc-interface/Make-lang.in (ada/targext.o): Likewise.
1066 (ada/cio.o, ada/init.o, ada/initialize.o, ada/raise.o): Likewise.
1067 (ada/tracebak.o, ada/cuintp.o, ada/decl.o, ada/misc.o): Likewise.
1068 (ada/targtyps.o, ada/trans.o, ada/utils.o): Likewise.
1069 (ada/utils2.o): Likewise.
1071 2009-05-24 Olivier Hainque <hainque@adacore.com>
1073 * switch.adb (Is_Internal_GCC_Switch, Switch_Last): Bodies of ...
1074 * switch.ads (Is_Internal_GCC_Switch, Switch_Last): New functions.
1075 Add -auxbase variants to the list of recognized internal switches.
1076 * back_end.adb (Scan_Back_End_Switches): Use the new functions and
1078 * lib.ads: Make comment on internal GCC switches more general.
1079 * gcc-interface/lang-specs.h (specs for Ada): Pass -auxbase variants
1082 2009-05-23 Eric Botcazou <ebotcazou@adacore.com>
1084 * gcc-interface/misc.c (gnat_get_subrange_bounds): Fix thinko.
1086 2009-05-23 Eric Botcazou <ebotcazou@adacore.com>
1088 * gcc-interface/decl.c (set_rm_size): Bypass the check for packed array
1091 2009-05-23 Eric Botcazou <ebotcazou@adacore.com>
1093 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not modify the
1094 original type because of the alignment when there is an address clause.
1096 2009-05-20 Eric Botcazou <ebotcazou@adacore.com>
1098 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: When
1099 discriminants affect the shape of the subtype, retrieve the GCC type
1100 directly from the original field if the GNAT types for the field and
1101 the original field are the same.
1103 2009-05-15 Eric Botcazou <ebotcazou@adacore.com>
1105 * gcc-interface/ada-tree.h (TYPE_GCC_MIN_VALUE, TYPE_GCC_MAX_VALUE):
1107 (TYPE_RM_VALUES): Likewise.
1108 (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUES.
1109 (SET_TYPE_RM_SIZE): New macro.
1110 (TYPE_RM_MIN_VALUE, TYPE_RM_MAX_VALUE): Likewise.
1111 (SET_TYPE_RM_SIZE, SET_TYPE_RM_MAX_VALUE): Likewise.
1112 (TYPE_MIN_VALUE, TYPE_MAX_VALUE): Redefine.
1113 * gcc-interface/gigi.h (create_range_type): Declare.
1114 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>
1115 Use SET_TYPE_RM_MAX_VALUE to set the upper bound on the UMT type.
1116 <E_Signed_Integer_Subtype>: Build a regular integer type first and
1117 then set the RM bounds. Use SET_TYPE_RM_SIZE to set the RM size.
1118 <E_Floating_Point_Subtype>: Build a regular floating-point type first
1119 and then set the RM bounds.
1120 <E_Array_Type>: Use create_range_type instead of build_range_type.
1121 <E_Array_Subtype>: Build a regular integer type first and then set
1122 the RM bounds for the extra subtype.
1123 <E_String_Literal_Subtype>: Use create_range_type instead of
1125 <all>: Set the RM bounds for enumeration types and the GCC bounds for
1126 floating-point types.
1127 (set_rm_size): Use SET_TYPE_RM_SIZE to set the RM size.
1128 (make_type_from_size) <INTEGER_TYPE>: Use SET_TYPE_RM_{MIN,MAX}_VALUE
1129 to set the bounds. Use SET_TYPE_RM_SIZE to set the RM size.
1130 (substitute_in_type) <INTEGER_TYPE>: Deal with GCC bounds for domain
1131 types and with RM bounds for subtypes.
1132 * gcc-interface/misc.c (LANG_HOOKS_GET_SUBRANGE_BOUNDS): Define.
1133 (gnat_print_type) <REAL_TYPE>: New case.
1134 <ENUMERAL_TYPE>: Fall through to above case.
1135 (gnat_get_subrange_bounds): New function.
1136 * gcc-interface/trans.c (add_decl_expr): Mark the trees rooted as
1137 TYPE_RM_MIN_VALUE and TYPE_RM_MAX_VALUE, if any.
1138 * gcc-interface/utils.c (gnat_init_decl_processing): Use precision 8
1139 for booleans. Adjust and use SET_TYPE_RM_SIZE to set the RM size.
1140 (create_range_type): New function.
1141 (create_param_decl): Build a regular integer type first and then set
1142 the RM bounds for the extra subtype.
1143 (unchecked_convert): Remove kludge for 'Valid.
1144 * gcc-interface/utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Convert
1145 the index to sizetype instead of TYPE_DOMAIN.
1147 2009-05-14 Eric Botcazou <ebotcazou@adacore.com>
1149 * gcc-interface/decl.c (elaborate_expression_1): Remove GNAT_EXPR
1150 parameter and move check for static expression to...
1151 (elaborate_expression): ...here. Adjust call to above function.
1152 (gnat_to_gnu_entity): Likewise for all calls. Use correct arguments
1153 in calls to elaborate_expression.
1154 (elaborate_entity): Likewise.
1155 (substitution_list): Likewise.
1156 (maybe_variable): Fix formatting.
1157 (substitute_in_type) <REAL_TYPE>: Merge with INTEGER_TYPE case and add
1159 * gcc-interface/trans.c (protect_multiple_eval): Minor cleanup.
1161 2009-05-07 Arnaud Charlet <charlet@adacore.com>
1163 * gcc-interface/Make-lang.in: Update dependencies.
1165 2009-05-06 Laurent GUERBY <laurent@guerby.net>
1167 * s-linux.ads, s-linux-alpha.ads, s-linux-hppa.ads, osinte-linux.ads:
1168 Define sa_handler_pos.
1169 * s-osinte-linux.ads: Use it.
1170 * s-linux-mipsel.ads: New.
1171 * system-linux-mips64el.ads: New.
1172 * gcc-interface/Makefile.in: Multilib handling for mipsel-linux and
1175 2009-05-06 Arnaud Charlet <charlet@adacore.com>
1177 * exp_ch5.adb, exp_util.adb, exp_attr.adb, sem_util.adb, sem_res.adb,
1178 targparm.adb, targparm.ads, exp_ch4.adb, exp_ch6.adb, exp_disp.adb,
1179 opt.ads, exp_aggr.adb, exp_intr.adb, sem_disp.adb, exp_ch3.adb
1180 (Tagged_Type_Expansion): New flag.
1181 Replace use of VM_Target related to tagged types expansion by
1182 Tagged_Type_Expansion, since tagged type expansion is not necessarily
1183 linked to VM targets.
1185 2009-05-06 Robert Dewar <dewar@adacore.com>
1187 * sem_attr.adb: Add processing for Standard'Compiler_Version
1189 * sinput.adb (Expr_Last_Char): Fix some copy-paste errors for paren
1191 (Expr_First_Char): Add ??? comment that paren skipping needs work
1192 (Expr_Last_Char): Add ??? comment that paren skipping needs work
1194 * exp_attr.adb: Add processing for Compiler_Version
1196 * sem_attr.adb: New attribute Compiler_Version
1198 * snames.ads-tmpl: Add entries for Compiler_Version attribute
1200 * gnat_rm.texi: Document Compiler_Version attribute
1202 2009-05-06 Robert Dewar <dewar@adacore.com>
1204 * errout.adb: Minor reformatting
1206 * scng.adb, sem_prag.adb, par-ch4.adb, sem_res.adb, par-ch6.adb,
1207 sem_ch6.adb, par-prag.adb, sem_ch8.adb, sem_warn.adb, par-util.adb,
1208 styleg.adb: Add stylized comments to error messages that are included
1209 in the codefix circuitry of IDE's such as GPS.
1211 2009-05-06 Sergey Rybin <rybin@adacore.com>
1213 * gnat_ugn.texi: For Misnamed_Identifiers rule all description of the
1214 new form of the rule parameter that allows to specify the suffix for
1215 access-to-access type names.
1217 2009-05-06 Robert Dewar <dewar@adacore.com>
1219 * sem_warn.adb (Warn_On_Useless_Assignment): Avoid false negative for
1220 out parameter assigned when exception handlers are present.
1222 * sem_ch5.adb (Analyze_Exit_Statement): Kill current value last
1223 assignments on exit.
1225 * par-ch9.adb, sem_aggr.adb, par-endh.adb, sem_res.adb, par-ch6.adb,
1226 sinput-l.adb, par-load.adb, errout.ads, sem_ch4.adb, lib-load.adb,
1227 prj-dect.adb, par-ch12.adb, sem_ch8.adb, par-util.adb, par-ch3.adb,
1228 par-tchk.adb, par-ch5.adb: This patch adds stylized comments to error
1229 messages that are included in the codefix circuitry of IDE's such as
1232 * sinput.ads, sinput.adb (Expr_First_Char): New function
1233 (Expr_Last_Char): New function
1235 2009-05-06 Sergey Rybin <rybin@adacore.com>
1237 * gnat_ugn.texi: Add subsection for Exits_From_Conditional_Loops rule
1238 Add formal definition for extra exit point metric
1240 2009-05-06 Pascal Obry <obry@adacore.com>
1242 * adaint.c: Support for setting attributes on unicode filename on
1245 2009-05-06 Robert Dewar <dewar@adacore.com>
1247 * sem_warn.adb: Minor reformatting
1249 2009-05-06 Javier Miranda <miranda@adacore.com>
1251 * sem_prag.adb (Process_Import_Or_Interface): Imported CPP types must
1252 not have discriminants or components with default expressions.
1253 (Analyze_Pragma): For pragma CPP_Class check that imported types
1254 have no discriminants and components have no default expression.
1256 * sem_aggr.adb (Resolve_Aggr_Expr): Add missing check on wrong use of
1257 class-wide types in the expression of a record component association.
1259 2009-05-06 Sergey Rybin <rybin@adacore.com>
1261 * vms_data.ads: Add qualifier for gnatmetric extra exit points metric
1263 * gnat_ugn.texi: Add description for the new extra exit points metric
1264 (gnatmetric section).
1266 2009-05-06 Robert Dewar <dewar@adacore.com>
1268 * s-fileio.adb: Minor comment update
1270 * sem_ch8.adb: Minor reformatting
1272 * exp_ch3.adb: Update comments.
1274 2009-05-06 Tristan Gingold <gingold@adacore.com>
1276 * init.c, s-osinte-darwin.ads: Reduce alternate stack size
1278 2009-05-06 Arnaud Charlet <charlet@adacore.com>
1280 * gcc-interface/Makefile.in: Update LIBGNAT_TARGET_PAIRS for Xenomai.
1281 Fix missing unit for rtp-smp runtime on both ppc and x86 vxworks
1283 * gcc-interface/Make-lang.in: Update dependencies
1285 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1287 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Revert previous
1288 change. The context clause of a generic instance declaration must be
1289 preserved until the end of the compilation, because it may have to be
1290 installed/removed repeatedly.
1291 The latest change to sem.adb ensures that the context of both spec and
1292 body of an instance is traversed before the instance itself, making
1293 this patch redundant.
1295 2009-05-06 Gary Dismukes <dismukes@adacore.com>
1297 * sem_aggr.adb: Fix typo.
1299 2009-05-06 Thomas Quinot <quinot@adacore.com>
1301 * exp_ch3.adb (Expand_N_Object_Declaration): For a controlled object
1302 declaration, do not adjust if the declaration is to be rewritten into
1305 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1307 * sem_ch8.adb (Find_Type): Reject the use of a task type in its own
1310 2009-05-06 Bob Duff <duff@adacore.com>
1312 * s-fileio.adb (File_IO_Clean_Up_Type): Make this type limited, since
1313 otherwise the compiler would be allowed to optimize away the cleanup
1316 2009-05-06 Gary Dismukes <dismukes@adacore.com>
1318 * gnat_ugn.texi: Fix typo.
1320 2009-05-06 Thomas Quinot <quinot@adacore.com>
1322 * g-debuti.adb: Minor reformatting
1324 * exp_attr.adb: Minor reformatting
1326 2009-05-06 Robert Dewar <dewar@adacore.com>
1328 * sem_aggr.adb: Minor reformatting.
1330 * g-socthi-vms.adb: Minor reformatting
1332 2009-05-06 Bob Duff <duff@adacore.com>
1334 * g-table.ads, g-table.adb, g-dyntab.ads, g-dyntab.adb:
1335 (Append_All): Add Append_All to g-table and g-dyntab, similar to table.
1337 2009-05-06 Bob Duff <duff@adacore.com>
1339 * gnat_ugn.texi, gnat_rm.texi: Add missing documentation for warnings
1342 2009-05-06 Javier Miranda <miranda@adacore.com>
1344 * sem_aggr.adb (Valid_Ancestor_Type): Add support for C++ constructors.
1345 (Resolve_Extension_Aggregate): Do not reject C++ constructors in
1346 extension aggregates.
1347 (Resolve_Record_Aggregate): Add support for C++ constructors in
1348 extension aggregates.
1350 * exp_aggr.adb (Build_Record_Aggr_Code): Add support for C++
1351 constructors in extension aggregates.
1353 2009-05-06 Robert Dewar <dewar@adacore.com>
1355 * freeze.adb (Freeze_Record_Type): Improve error msg for bad size
1358 2009-05-06 Thomas Quinot <quinot@adacore.com>
1360 * g-socthi-vms.adb (C_Recvmsg, C_Sendmsg): Convert Msg to appropriate
1361 packed type, since on OpenVMS, struct msghdr is packed.
1363 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1365 * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
1366 call returning an unconstrained composite value, create the proper
1367 subtype for it, as is done for object dclarations with unconstrained
1368 nominal subtypes. Perform this transformation regarless of whether
1369 call comes from source.
1371 2009-05-06 Robert Dewar <dewar@adacore.com>
1373 * freeze.adb (Freeze_Record_Type): Implement Implicit_Packing for
1377 Add documentation for pragma Implicit_Packing applied to record
1380 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1382 * sem.adb (Walk_Library_Items): Place all with_clauses of an
1383 instantiation on the spec, because late instance bodies may generate
1384 with_clauses for the instance body but are inserted in the instance
1387 2009-05-06 Emmanuel Briot <briot@adacore.com>
1389 * prj-nmsc.adb (Locate_Directory): Remove unused parameters, and add
1390 support for returning the directory even if it doesn't exist. This is
1391 used for the object directory, since we are always setting it to a
1392 non-null value, and we should set it to an absolute name rather than a
1393 relative name for the sake of external tools that might depend on it.
1394 (Check_Library_Attributes): When Project.Library_Dir is known, check
1395 that the directory exists.
1397 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1399 * sem_attr.adb (Check_Dereference): If the prefix of an attribute
1400 reference is an implicit dereference, do not freeze the designated type
1401 if within a default expression or when preanalyzing a pre/postcondtion.
1403 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1405 * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
1406 call returning an unconstrained composite value, create the proper
1407 subtype for it, as is done for object dclarations with unconstrained
1410 2009-05-06 Robert Dewar <dewar@adacore.com>
1412 * sem_ch13.adb (Check_Constant_Address_Clause): Minor error message
1415 * freeze.adb: Minor reformatting
1417 2009-05-06 Thomas Quinot <quinot@adacore.com>
1419 * sem_ch3.adb (Access_Type_Declaration): An access type whose
1420 designated type is a limited view from a limited with clause (flagged
1421 From_With_Type) is not itself such a limited view.
1423 2009-05-06 Emmanuel Briot <briot@adacore.com>
1425 * prj-nmsc.adb: Remove unused variable.
1427 * clean.adb, gnatcmd.adb, makeutl.ads, prj-pars.adb, prj-pars.ads,
1428 prj-proc.ads, prj.ads, switch-m.adb (Subdirs_Option): Moved to
1429 makeutl.ads, since not all users of prj.ads need this.
1431 2009-05-06 Javier Miranda <miranda@adacore.com>
1433 * exp_aggr.adb (Build_Record_Aggr_Code): Add implicit call to the C++
1434 constructor in case of aggregates whose type is a CPP_Class type.
1436 2009-05-06 Robert Dewar <dewar@adacore.com>
1438 * sem_ch13.adb: Minor comment additions
1440 * osint.adb: Minor reformatting
1442 2009-05-06 Pascal Obry <obry@adacore.com>
1444 * initialize.c: On Windows, keep full pathname to expanded command
1447 2009-05-06 Ed Schonberg <schonberg@adacore.com>
1449 * sem_aggr.adb (Resolve_Record_Aggregate): If a defaulted component of
1450 an aggregate with box default is of a discriminated private type, do
1451 not build a subaggregate for it.
1452 A proper call to the initialization procedure is generated for it.
1454 2009-05-06 Thomas Quinot <quinot@adacore.com>
1456 * rtsfind.adb, rtsfind.ads, exp_dist.adb, exp_dist.ads
1457 (Exp_Dist.Build_TC_Call, Build_From_Any_Call, Build_To_Any_Call):
1458 Use PolyORB strings to represent Ada.Strings.Unbounded_String value;
1459 use standard array code for Standard.String.
1460 (Exp_Dist): Bump PolyORB s-parint API version to 3.
1461 (Rtsfind): New entities TA_Std_String, Unbounded_String.
1463 2009-05-06 Robert Dewar <dewar@adacore.com>
1465 * g-comlin.ads: Minor reformatting
1467 * xoscons.adb: Minor reformatting
1469 2009-05-06 Gary Dismukes <dismukes@adacore.com>
1471 * sem_aggr.adb (Resolve_Record_Aggregate): In step 5, get the
1472 Underlying_Type before retrieving the type definition for gathering
1473 components, to account for the case where the type is private.
1475 2009-05-06 Tristan Gingold <gingold@adacore.com>
1477 * g-comlin.ads: Fix minor typos (Getopt instead of Get_Opt).
1479 2009-05-06 Thomas Quinot <quinot@adacore.com>
1481 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
1482 g-socthi-vxworks.ads, g-socthi-mingw.adb g-socthi-mingw.ads,
1483 g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb
1484 (GNAT.Sockets.Thin.C_Sendmsg, GNAT.Sockets.Thin.C_Recvmsg,
1485 Windows versions): Fix incorrect base
1486 address of Iovec (it's Msg_Iov, not Msg_Iov'Address).
1487 (GNAT.Sockets.Thin.C_Sendto, GNAT.Sockets.Thin.C_Recvfrom): Use a
1488 System.Address for the To parameter instead of a Sockaddr_In_Access, to
1489 achieve independance from AF_INET family, and also to allow this
1490 parameter to be retrieved from a Msghdr for the Windows case where
1491 these routines are used to implement C_Sendmsg and C_Recvmsg.
1493 2009-05-06 Bob Duff <duff@adacore.com>
1495 * g-expect.adb, g-expect.ads: Minor reformatting
1497 * sdefault.ads: Minor comment fix
1499 * g-expect-vms.adb: Minor reformatting
1501 * table.ads, table.adb (Append_All): New convenience procedure for
1502 appending a whole array.
1504 * comperr.adb (Compiler_Abort): Mention the -gnatd.n switch in the bug
1505 box message. Call Osint.Dump_Source_File_Names to print out the file
1506 list, instead of rummaging around in various data structures.
1508 * debug.adb: New switch -gnatd.n, to print source file names as they
1511 * alloc.ads: Add parameters for Osint.File_Name_Chars.
1513 * osint.ads, osint.adb (Dump_Source_File_Names): New procedure to print
1514 out source file names during a "bug box".
1515 (Include_Dir_Default_Prefix): Use memo-izing to avoid repeated new/free.
1516 (Read_Source_File): Print out the file name, if requested via -gnatd.n.
1517 If it's not part of the runtimes, store it for later printing by
1518 Dump_Source_File_Names.
1520 2009-05-06 Javier Miranda <miranda@adacore.com>
1522 * gnat_rm.texi (CPP_Constructor): Avoid duplication of the
1523 documentation and add reference to the GNAT user guide for further
1526 2009-05-06 Javier Miranda <miranda@adacore.com>
1528 * gnat_ugn.texi: Complete documentation for CPP_Constructor and remove
1529 also wrong examples that use extension aggregates.
1531 2009-05-06 Albert Lee <lee@adacore.com>
1533 * s-oscons-tmplt.c (System.OS_Constants): Do not use special definition
1534 of Msg_Iovlen_T for VMS.
1536 2009-05-04 Laurent GUERBY <laurent@guerby.net>
1539 * make.adb (Scan_Make_Arg): Pass --param= to compiler and linker.
1541 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1543 * sem_ch8.adb (Analyze_Subprogram_Renaming): Improve error message on
1544 box-defaulted operator in an instantiation, when the type of the
1545 operands is not directly visible.
1547 2009-04-29 Gary Dismukes <dismukes@adacore.com>
1549 * sem_aggr.adb (Valid_Limited_Ancestor): Undo previous change.
1550 (Resolve_Extension_Aggregate): Call Check_Parameterless_Call after the
1551 analysis of the ancestor part. Remove prohibition against limited
1552 interpretations of the ancestor expression in the case of Ada 2005.
1553 Revise error message in overloaded case, adding a message to cover
1556 2009-04-29 Thomas Quinot <quinot@adacore.com>
1558 * xoscons.adb: Minor reformatting
1560 2009-04-29 Bob Duff <duff@adacore.com>
1562 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not ignore
1563 attribute_definition_clauses for the following attributes when the
1564 -gnatI switch is used: External_Tag, Input, Output, Read, Storage_Pool,
1565 Storage_Size, Write. Otherwise, we get spurious errors (for example,
1566 missing Read attribute on remote types).
1568 * gnat_ugn.texi: Document the change, and add a stern warning.
1570 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1572 * sem_attr.adb (Check_Local_Access): Indicate that value tracing is
1573 disabled not just for the current scope, but for the innermost dynamic
1576 2009-04-29 Arnaud Charlet <charlet@adacore.com>
1578 * gcc-interface/Make-lang.in: Update dependencies
1580 2009-04-29 Vincent Celier <celier@adacore.com>
1582 * prj-part.adb: Minor comment update
1584 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1586 * sem_aggr.adb (Resolve_Record_Aggregate): handle properly
1587 box-initialized records with discriminated subcomponents that are
1588 constrained by discriminants of enclosing components. New subsidiary
1589 procedures Add_Discriminant_Values, Propagate_Discriminants.
1591 2009-04-29 Arnaud Charlet <charlet@adacore.com>
1593 * g-socket.adb: Code clean up.
1595 2009-04-29 Gary Dismukes <dismukes@adacore.com>
1597 * sem_aggr.adb (Valid_Limited_Ancestor): Add test for the name of a
1598 function entity, to cover the case of a parameterless function call
1599 that has not been resolved.
1601 2009-04-29 Robert Dewar <dewar@adacore.com>
1603 * err_vars.ads, prj-part.adb, scans.ads, exp_tss.adb: Minor
1604 reformatting and comment updates.
1606 2009-04-29 Arnaud Charlet <charlet@adacore.com>
1608 * gnat_ugn.texi: Update some documentation about interfacing with C++
1609 Mention -fkeep-inline-functions.
1611 * gnat_ugn.texi: Minor edits
1613 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1615 * sem_aggr.adb (Resolve_Record_Aggregate): When building an aggregate
1616 for a defaulted component of an enclosing aggregate, inherit the type
1617 from the component declaration of the enclosing type.
1619 2009-04-29 Albert Lee <lee@adacore.com>
1621 * g-socthi-vms.ads, g-socthi-vxworks.ads, s-oscons-tmplt.c,
1622 g-socthi-mingw.ads, g-socthi.ads, g-socket.adb, g-sothco.ads
1623 (System.OS_Constants): New type Msg_Iovlen_T which follows whether the
1624 msg_iovlen field in struct msghdr is 32 or 64 bits wide.
1625 Relocate the Msghdr record type from GNAT.Sockets.Thin to
1626 GNAT.Sockets.Common, and use System.OS_Constants.Msg_Iovlen_T as the
1627 type for the Msg_Iovlen field.
1629 2009-04-29 Vincent Celier <celier@adacore.com>
1631 * sinput-l.adb (Load_File): When preprocessing, set temporarily the
1632 Source_File_Index_Table entries for the source, to avoid crash when
1635 * gnatcmd.adb (Test_If_Relative_Path): Use
1636 Makeutl.Test_If_Relative_Path.
1638 * makeutl.adb:(Test_If_Relative_Path): Process switches --RTS= only if
1639 Including_RTS is True.
1641 * makeutl.ads (Test_If_Relative_Path): New Boolean parameter
1642 Including_RTS defaulted to False.
1644 * sinput.ads, scans.ads, err_vars.ads: Initialize some variables with
1647 2009-04-29 Javier Miranda <miranda@adacore.com>
1649 * gnat_ugn.texi: Adding documentation for non-default C++ constructors.
1651 2009-04-29 Javier Miranda <miranda@adacore.com>
1653 * sem_ch3.adb (Analyze_Object_Declaration): Disable error message
1654 associated with dyamically tagged expressions if the expression
1655 initializing a tagged type corresponds with a non default CPP
1657 (OK_For_Limited_Init): CPP constructor calls are OK for initialization
1658 of limited type objects.
1660 * sem_ch5.adb (Analyze_Assignment): Improve the error message reported
1661 when a CPP constructor is called in an assignment. Disable also the
1662 error message associated with dyamically tagged expressions if the
1663 exporession initializing a tagged type corresponds with a non default
1666 * sem_prag.adb (Analyze_Pragma): Remove code disabling the use of
1667 non-default C++ constructors.
1669 * sem_util.ads, sem_util.adb (Is_CPP_Constructor_Call): New subprogram.
1671 * exp_tss.ads, exp_tss.adb (Base_Init_Proc): Add support for
1672 non-default constructors.
1673 (Init_Proc): Add support for non-default constructors.
1675 * exp_disp.adb (Set_Default_Constructor): Removed.
1676 (Set_CPP_Constructors): Code based in removed Set_Default_Constructor
1677 but extending its functionality to handle non-default constructors.
1679 * exp_aggr.adb (Build_Record_Aggr_Code): Add support for non-default
1680 constructors. Minor code cleanup removing unrequired label and goto
1683 * exp_ch3.adb (Build_Initialization_Call): Add support for non-default
1685 (Build_Init_Statements): Add support for non-default constructors.
1686 (Expand_N_Object_Declaration): Add support for non-default constructors.
1687 (Freeze_Record_Type): Replace call to Set_Default_Constructor by call
1688 to Set_CPP_Constructors.
1690 * exp_ch5.adb (Expand_N_Assignment_Statement): Add support for
1691 non-default constructors.
1692 Required to handle its use in build-in-place statements.
1694 * gnat_rm.texi (CPP_Constructor): Document new extended use of this
1695 pragma for non-default C++ constructors and the new compiler support
1696 that allows the use of these constructors in record components, limited
1697 aggregates, and extended return statements.
1699 2009-04-29 Vincent Celier <celier@adacore.com>
1701 * prj-part.adb (Parse_Single_Project): Do not attempt to find a
1702 project extending an abstract project.
1704 2009-04-29 Eric Botcazou <ebotcazou@adacore.com>
1706 * targparm.ads: Fix oversight.
1708 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1710 * lib-xref.adb (Output_Overridden_Op): Follow several levels of
1711 derivation when necessary, to find the user-subprogram that is actally
1714 2009-04-29 Robert Dewar <dewar@adacore.com>
1716 * sem_util.adb (May_Be_Lvalue): Fix cases involving indexed/selected
1719 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1721 * exp_ch9.ads, exp_ch9.adb (Build_Wrapper_Spec): Use source line of
1722 primitive operation, rather than source line of synchronized type, when
1723 building the wrapper for a primitive operation that overrides an
1724 operation inherited from a progenitor, to improve the error message on
1725 duplicate declarations.
1727 * sem_ch3.adb (Process_Full_View): Use new signature of
1730 2009-04-29 Robert Dewar <dewar@adacore.com>
1732 * prj-nmsc.ads: Minor reformatting
1734 2009-04-29 Eric Botcazou <ebotcazou@adacore.com>
1736 * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of the
1737 expression on the existing parent If statement.
1739 2009-04-29 Robert Dewar <dewar@adacore.com>
1741 * prj-proc.adb, prj.ads: Minor reformatting
1743 2009-04-29 Eric Botcazou <ebotcazou@adacore.com>
1745 * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of an
1746 existing parent If statement on the newly created one.
1748 2009-04-29 Emmanuel Briot <briot@adacore.com>
1750 * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb,
1751 prj-part.ads, prj.adb, prj.ads, clean.adb, prj-dect.adb, prj-dect.ads,
1752 prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-makr.adb
1753 (Set_In_Configuration, In_Configuration): Removed.
1754 Replaced by an extra parameter Is_Config_File in several parameter to
1755 avoid global variables to store the state of the parser.
1757 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1759 * sinfo.ads, sinfo.adb: New attribute Next_Implicit_With, to chain
1760 with_clauses generated for the same unit through rtsfind, and that
1761 appear in the context of different units.
1763 * rtsfind.adb: New attribute First_Implicit_With, component of the
1764 Unit_Record that stores information about a unit loaded through rtsfind.
1766 2009-04-29 Gary Dismukes <dismukes@adacore.com>
1768 * exp_ch3.adb (Stream_Operation_OK): Return True for limited interfaces
1769 (other conditions permitting), so that abstract stream subprograms will
1770 be declared for them.
1772 2009-04-29 Bob Duff <duff@adacore.com>
1774 * g-expect.adb (Expect_Internal): Fix check for overfull buffer.
1776 * g-expect.ads: Minor comment fixes.
1778 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1780 * freeze.adb, lib-xref.adb (Check_Dispatching_Operation): if the
1781 dispatching operation is a body without previous spec, update the list
1782 of primitive operations to ensure that cross-reference information is
1785 2009-04-29 Albert Lee <lee@adacore.com>
1787 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
1788 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
1789 g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads
1790 (GNAT.Sockets.Thin.C_Readv,
1791 GNAT.Sockets.Thin.C_Writev): Remove unused subprograms.
1792 (GNAT.Sockets.Thin.C_Recvmsg,
1793 GNAT.Sockets.Thin.C_Sendmsg): New bindings to call recvmsg(2) and
1795 (GNAT.Sockets.Receive_Vector, GNAT.Sockets.Send_Vector): Use
1796 C_Recvmsg/C_Sendmsg rather than Readv/C_Writev.
1798 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1800 * sem_disp.adb (Check_Dispatching_Operation): if the dispatching
1801 operation is a body without previous spec, update the list of
1802 primitive operations to ensure that cross-reference information is
1805 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): When creating a
1806 new compilation unit node for the instance declaration, keep the
1807 context items of the original unit on it, so that the context of the
1808 instance body only holds the context inherited from the generic body.
1810 2009-04-29 Bob Duff <duff@adacore.com>
1812 * sem_res.adb: Minor comment fix.
1814 2009-04-29 Thomas Quinot <quinot@adacore.com>
1816 * sem_elim.adb: Minor reformatting
1818 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1820 * exp_aggr.adb (Convert_To_Positional): if the current unit is a
1821 predefined unit, allow arbitrary number of components in static
1822 aggregate, to ensure that the same level of constant folding applies
1823 for Ada 95 and Ada 05 versions of the file.
1825 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1827 * sem_elim.adb (Check_Eliminated): Handle new improved eliminate
1828 information: no need for full scope check.
1829 (Eliminate_Error): Do not emit error in a generic context.
1831 2009-04-29 Ed Falis <falis@adacore.com>
1833 * adaint.c (__gnat_rmdir): return error code if VTHREADS is defined.
1834 VxWorks 653 POS does not support rmdir.
1836 2009-04-29 Matteo Bordin <bordin@adacore.com>
1838 * s-stausa.adb, s-stausa.ads: Get_Usage_Range: changing the way
1839 results are printed.
1841 2009-04-29 Arnaud Charlet <charlet@adacore.com>
1843 * s-taskin.adb (Initialize): Remove pragma Warnings Off and remove
1846 2009-04-29 Thomas Quinot <quinot@adacore.com>
1848 * make.adb: Minor reformatting.
1849 Minor code reorganization throughout.
1851 2009-04-29 Matteo Bordin <bordin@adacore.com>
1853 * s-stausa.ads: Changed visibility of type Task_Result: moved to
1854 public part to give application visibility over it.
1855 This is for future improvement and to build a public API on top of it.
1856 Changed record components name of type Task_Result to reflect the new
1859 * s-stausa.adb: Actual_Size_Str changed to reflect the new way of
1860 reporting Stack usage.
1862 * gnat_ugn.texi: Update doc of stack usage report.
1864 * g-tastus.ads, s-stusta.ads, s-stusta.adb: New files.
1866 * Makefile.rtl: Add new run-time files.
1868 2009-04-29 Pascal Obry <obry@adacore.com>
1870 * initialize.c: Do not expand quoted arguments.
1872 2009-04-29 Emmanuel Briot <briot@adacore.com>
1874 * prj-ext.adb, prj.adb, prj.ads: Fix memory leaks.
1876 * clean.adb (Ultimate_Extension_Of): removed, since duplicate of
1877 Prj.Ultimate_Extending_Project_Of
1879 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1881 * exp_ch7.adb (Build_Final_List): If the designated type is a Taft
1882 Amendment type, add the with_clause for Finalization.List_Controller
1883 only if the current context is a package body.
1885 2009-04-29 Thomas Quinot <quinot@adacore.com>
1887 * sem_ch12.adb: Minor reformatting
1889 * sem_aggr.adb: Minor reformatting
1891 * sem_ch6.adb, sem_cat.ads: Minor reformatting
1893 * sem_ch10.adb, gnat1drv.adb, prj-nmsc.adb: Minor reformatting
1895 2009-04-29 Quentin Ochem <ochem@adacore.com>
1897 * prj.ads (Source_Id): Now general pointer type.
1899 2009-04-29 Thomas Quinot <quinot@adacore.com>
1901 * exp_ch7.adb, rtsfind.adb: Minor reformatting
1903 * sem_res.adb: Minor reformatting
1905 2009-04-29 Thomas Quinot <quinot@adacore.com>
1907 * sem_res.adb (Static_Concatenation): An N_Op_Concat with static
1908 operands is static only if it is a predefined concatenation operator.
1910 * sem_util.adb: Minor reformatting
1912 * sem_ch12.adb (Save_References): When propagating semantic information
1913 from generic copy back to generic template, for the case of an
1914 identifier that has been rewritten to an explicit dereference whose
1915 prefix is either an object name or a parameterless funcion call
1916 denoting a global object or function, properly capture the denoted
1917 global entity: perform the corresponding rewriting in the template,
1918 and point the rewritten identifier to the correct global entity (not
1919 to the associated identifier in the generic copy).
1921 2009-04-29 Robert Dewar <dewar@adacore.com>
1923 * rtsfind.adb, prj-env.adb: Minor reformatting
1924 Minor code reorganization
1926 2009-04-29 Emmanuel Briot <briot@adacore.com>
1928 * make.adb: Fix comment
1930 * prj.adb (Ultimate_Extending_Project_Of): Fix handling when no project
1931 is given as argument, as might happen in gnatmake.
1933 2009-04-29 Ed Schonberg <schonberg@adacore.com>
1935 * sem_ch3.adb (Check_Abstract_Overriding): Improve error message when
1936 an abstract operation of a progenitor is not properly overridden by an
1937 operation of a derived synchronized type.
1939 2009-04-29 Robert Dewar <dewar@adacore.com>
1941 * mlib-prj.adb, mlib-tgt.adb, mlib-tgt.ads, prj-nmsc.adb,
1942 prj-proc.adb: Minor reformatting
1943 Minor code reorganization
1945 2009-04-29 Bob Duff <duff@adacore.com>
1947 * exp_ch7.adb (Build_Final_List): For an access type that designates a
1948 Taft Amendment type, if the access type needs finalization, make sure
1949 the implicit with clause for List_Controller occurs on the package spec.
1951 * rtsfind.adb (Text_IO_Kludge): Fine tune the creation of implicit
1952 with's created for the pseudo-children of Text_IO and friends. In
1953 particular, avoid cycles, such as Ada.Wide_Text_IO.Integer_IO and
1954 Ada.Text_IO.Integer_IO both with-ing each other.
1956 * sem.adb (Walk_Library_Items): Suppress assertion failure in certain
1957 oddball cases when pragma Extend_System is used.
1959 * sem_ch12.adb (Get_Associated_Node): Prevent direct 'with' cycles in
1960 the case where a package spec instantiates a generic whose body with's
1961 this package, so Walk_Library_Items won't complain about cyclic with's.
1963 2009-04-29 Emmanuel Briot <briot@adacore.com>
1965 * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads,
1966 prj-pp.adb, prj-pp.ads, makeutl.adb, clean.adb, prj-nmsc.adb,
1967 mlib-tgt.adb, mlib-tgt.ads, prj-util.adb, prj-env.adb, prj-env.ads
1968 (Project_Id): now a real pointer to Project_Data, instead of an index
1969 into the Projects_Table. This simplifies the API significantly, avoiding
1970 extra lookups in this table and the need to pass the Project_Tree_Ref
1971 parameter in several cases
1973 2009-04-29 Nicolas Setton <setton@adacore.com>
1975 * gcc-interface/Makefile.in: Produce .dSYM files for shared libs on
1978 2009-04-25 Eric Botcazou <ebotcazou@adacore.com>
1980 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Put
1983 2009-04-24 Robert Dewar <dewar@adacore.com>
1985 * mlib-prj.adb, prj-env.adb, prj-nmsc.adb, prj-proc.adb, make.adb,
1986 clean.adb: Minor reformatting.
1987 Minor code reorganization and message improvement.
1989 2009-04-24 Emmanuel Briot <briot@adacore.com>
1991 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-nmsc.ads
1992 (Alternate_Languages): now implemented as a malloc-ed list rather
1993 than through a table.
1995 2009-04-24 Thomas Quinot <quinot@adacore.com>
1997 * sem_res.adb (Static_Concatenation): Simplify predicate to make it
1998 accurately handle cases such as "lit" & "lit" and
1999 "lit" & static_string_constant
2001 2009-04-24 Emmanuel Briot <briot@adacore.com>
2003 * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
2004 prj-nmsc.adb, prj-env.adb (Project_List_Table, Project_Element):
2005 removed. Lists of projects are now implemented via standard malloc
2006 rather than through the table.
2008 2009-04-24 Thomas Quinot <quinot@adacore.com>
2010 * sem_ch12.adb: Minor reformatting
2012 * g-trasym.adb: Minor reformatting
2014 * exp_ch6.adb: Minor reformatting
2016 2009-04-24 Robert Dewar <dewar@adacore.com>
2018 * layout.adb (Layout_Type): For packed array type, copy unset
2019 size/alignment fields from the referenced Packed_Array_Type.
2021 2009-04-24 Bob Duff <duff@adacore.com>
2023 * lib-load.adb (Make_Instance_Unit): Revert previous change, no
2024 longer needed after sem_ch12 changes.
2026 * sem.adb (Walk_Library_Items): Include with's in some debugging
2029 2009-04-24 Emmanuel Briot <briot@adacore.com>
2031 * prj.ads, prj-nmsc.adb (Unit_Project): removed, since in fact we were
2032 only ever using the Project field.
2034 2009-04-24 Ed Schonberg <schonberg@adacore.com>
2036 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Do not set
2037 Body_Required on the generated compilation node. The new node is linked
2038 to its body, but both share the same file, so we do not set this flag
2039 on the new unit so as not to create a spurious dependency on a
2040 non-existent body in the ali file for the instance.
2042 2009-04-24 Robert Dewar <dewar@adacore.com>
2044 * make.adb: Minor reformatting
2046 2009-04-24 Emmanuel Briot <briot@adacore.com>
2048 * prj.adb, prj.ads, prj-nmsc.adb (Check_File, Record_Ada_Source,
2049 Add_Source): merge some code between those. In particular change where
2050 file normalization is done to avoid a few extra calls to
2051 Canonicalize_File_Name. This also removes the need for passing
2052 Current_Dir in a number of subprograms.
2054 2009-04-24 Bob Duff <duff@adacore.com>
2056 * lib-load.adb (Make_Instance_Unit): In the case where In_Main is
2057 False, assign the correct unit to the Cunit field of the new table
2058 entry. We want the spec unit, not the body unit.
2060 * rtsfind.adb (Make_Unit_Name, Maybe_Add_With): Simplify calling
2061 interface for these.
2062 (Maybe_Add_With): Check whether we're trying to a with on the current
2063 unit, and avoid creating such directly self-referential with clauses.
2064 (Text_IO_Kludge): Add implicit with's for the generic pseudo-children of
2065 [[Wide_]Wide_]Text_IO. These are needed for Walk_Library_Items,
2066 and matches existing comments in the spec.
2068 * sem.adb (Walk_Library_Items): Add various special cases to make the
2071 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Use Body_Cunit
2072 instead of Parent (N), for uniformity.
2074 2009-04-24 Robert Dewar <dewar@adacore.com>
2076 * errout.ads: Minor reformatting
2078 2009-04-24 Emmanuel Briot <briot@adacore.com>
2080 * gnat_ugn.texi (Library Projects): add documentation on gnatmake's
2081 behavior when the project includes sources from multiple languages
2083 2009-04-24 Vincent Celier <celier@adacore.com>
2085 * prj.adb (Has_Foreign_Sources): Returns True in Ada_Only mode if there
2086 is a language other than Ada declared.
2088 * makeutl.adb (Linker_Options_Switches): Call For_All_Projects with
2089 Imported_First set to True.
2091 2009-04-24 Ed Schonberg <schonberg@adacore.com>
2093 * sem_res.adb: additional optimization to inhibit creation of
2094 redundant transient scopes.
2096 2009-04-24 Bob Duff <duff@adacore.com>
2098 * rtsfind.ads: Minor comment fix
2100 2009-04-24 Emmanuel Briot <briot@adacore.com>
2102 * prj-proc.adb, prj-nmsc.adb (Find_Ada_Sources,
2103 Get_Path_Name_And_Record_Ada_Sources): merged, since these were
2104 basically doing the same work (for explicit or implicit sources).
2105 (Find_Explicit_Sources): renamed to Find_Sources to better reflect its
2106 role. Rewritten to share some code (testing that all explicit sources
2107 have been found) between ada_only and multi_language modes.
2109 2009-04-24 Jerome Lambourg <lambourg@adacore.com>
2111 * sem_prag.adb (Check_Form_Of_Interface_Name): Allow space in Ext_Name
2112 for CLI imported types.
2113 (Analyze_Pragma): Allow CIL or Java imported functions returning
2114 access-to-subprogram types.
2116 2009-04-24 Emmanuel Briot <briot@adacore.com>
2118 * make.adb, prj.adb, prj.ads, makeutl.adb, makeutl.ads:
2119 (Project_Data.Dir_Path): field removed, since it can be computed
2120 directly from .Directory, and is needed only once when processing the
2121 project is buildgpr.adb or make.adb
2123 2009-04-24 Robert Dewar <dewar@adacore.com>
2125 * prj-env.adb, prj-proc.adb, prj.adb, prj.ads,
2126 rtsfind.adb: Minor reformatting.
2127 Minor code reorganization
2129 2009-04-24 Arnaud Charlet <charlet@adacore.com>
2131 * mlib-prj.adb: Use friendlier english identifier.
2133 * gnatcmd.adb, make.adb: Use better english identifiers.
2135 2009-04-24 Robert Dewar <dewar@adacore.com>
2137 * clean.adb: Minor reformatting
2139 2009-04-24 Robert Dewar <dewar@adacore.com>
2141 * einfo.adb (OK_To_Rename): New flag
2143 * einfo.ads (OK_To_Rename): New flag
2145 * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite as renames if
2148 * exp_ch4.adb (Expand_Concatenate): Mark temp variable OK_To_Rename
2150 * sem_ch7.adb (Uninstall_Declarations): Allow for renames from
2153 2009-04-24 Emmanuel Briot <briot@adacore.com>
2155 * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, makeutl.adb,
2156 clean.adb, prj-nmsc.adb, prj-env.adb, prj-env.ads (Project_Data.Seen):
2157 field removed. This is not a property of the
2158 project, just a boolean used to traverse the project tree, and storing
2159 it in the structure prevents doing multiple traversal in parallel.
2160 (Project_Data.Checked): also removed, since it was playing the same role
2161 as Seen when we had two nested loops, and this is no longer necessary
2162 (For_All_Imported_Projects): removed, since in fact there was already
2163 the equivalent in For_Every_Project_Imported. The latter was rewritten
2164 to use a local hash table instead of Project_Data.Seen
2165 Various loops were rewritten to use For_Every_Project_Imported, thus
2166 removing the need for Project_Data.Seen. This avoids a lot of code
2169 2009-04-24 Ed Schonberg <schonberg@adacore.com>
2171 * sem_res.adb (Resolve_Actuals): Do not create blocks around code
2172 statements, even though the actual of the call is a concatenation,
2173 because the argument is static, and we want to preserve warning
2174 messages about sequences of code statements that are not marked
2177 * sem_warn.adb: remove obsolete comment about warning being obsolete
2179 * s-tasren.adb (Task_Do_Or_Queue): If a timed entry call is being
2180 requeued and the delay has expired while within the accept statement
2181 that executes the requeue, do not perform the requeue and indicate that
2182 the timed call has been aborted.
2184 2009-04-24 Emmanuel Briot <briot@adacore.com>
2186 * mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
2187 (Has_Ada_Sources, Has_Foreign_Sources): new subprograms
2188 (Project_Data.Ada_Sources_Present, Foreign_Sources_Present): removed,
2189 since they can be computed from the above.
2191 2009-04-24 Vincent Celier <celier@adacore.com>
2193 * gnatcmd.adb: Call Prj.Env.Initialize with the Project_Tree
2195 * prj-env.adb: Move all global variables to the private part of the
2197 Access these new components instead of the global variables no longer
2199 (Add_To_Path): New Project_Tree_Ref parameter, to access the new
2200 components that were previously global variables.
2202 * prj-env.ads (Initialize): New Project_Tree_Ref parameter
2203 (Set_Mapping_File_Initial_State_To_Empty): New Project_Tree_Ref
2206 * prj-nmsc.adb (Compute_Unit_Name): New Project_Tree_Ref parameter to
2207 be able to call Set_Mapping_File_Initial_State_To_Empty with it.
2209 * prj.adb (Initialize): Do not call Prj.Env.Initialize
2210 (Reset): Do not call Prj.Env.Initialize. Instead, initialize the new
2211 components in the private part of the project tree data.
2213 * prj.ads (Private_Project_Tree_Data): new components moved from
2214 Prj.Env: Current_Source_Path_File, Current_Object_Path_File,
2215 Ada_Path_Buffer, Ada_Path_Length, Ada_Prj_Include_File_Set,
2216 Ada_Prj_Objects_File_Set, Fill_Mapping_File.
2218 2009-04-24 Vincent Celier <celier@adacore.com>
2220 * opt.ads (Unchecked_Shared_Lib_Imports): New Boolean flag.
2222 * prj-nmsc.adb (Check_Library): No error for imports by shared library
2223 projects, when --unchecked-shared-lib-imports is used.
2225 2009-04-24 Robert Dewar <dewar@adacore.com>
2227 * sem_ch7.adb: Minor reformatting
2229 2009-04-24 Tristan Gingold <gingold@adacore.com>
2231 * s-osinte-darwin.adb, s-osinte-darwin.ads: lwp_self now returns the
2234 2009-04-24 Emmanuel Briot <briot@adacore.com>
2236 * prj-env.adb, prj-env.ads (Body_Path_Name_Of, Spec_Path_Name_Of,
2237 Path_Name_Of_Library_Unit_Body): rEmove unused subprograms.
2238 (For_All_Imported_Projects): new procedure
2239 (For_All_Source_Dirs, For_All_Object_Dirs): Rewritten based on the
2240 above rather than duplicating code.
2242 2009-04-24 Emmanuel Briot <briot@adacore.com>
2244 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
2245 (Source_Id, Source_Data): use a real list to store sources rather than
2246 using an external table to store the elements. This makes code more
2247 efficient and more readable.
2249 2009-04-24 Emmanuel Briot <briot@adacore.com>
2251 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
2252 (Source_Iterator): new type.
2253 This removes the need for having the sources on three different
2254 lists at the project tree, project and language level. They are now
2257 2009-04-24 Emmanuel Briot <briot@adacore.com>
2259 * gnatcmd.adb, prj.adb, prj.ads: Remove unused entities
2261 2009-04-24 Ed Schonberg <schonberg@adacore.com>
2263 * sem_warn.adb: Add comment on obsolete warning
2265 2009-04-24 Arnaud Charlet <charlet@adacore.com>
2267 * s-tassta.adb (Create_Task): Fix violation of locking rule.
2269 2009-04-24 Emmanuel Briot <briot@adacore.com>
2271 * prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb (Language_Index): renamed
2272 to Language_Ptr to better reflect its new implementation.
2273 (Project_Data.First_Languages_Processing): renamed to Languages now
2274 that the field with that name is no longer used
2275 (Project_Data.Languages): removed, no longer used, and duplicates
2276 information already available through First_Language_Processing.
2277 (Prj.Language_Index): now an actual pointer, instead of an index into
2278 a table. This makes the list somewhat more obvious, but more importantly
2279 removes the need to pass a pointer to the project_tree_data in a few
2280 places, and makes accessing the attributes of a languages more
2283 2009-04-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2284 Thomas Quinot <quinot@adacore.com>
2286 * fe.h (Set_Identifier_Casing): Add const to second parameter.
2287 * gcc-interface/misc.c (internal_error_function): Make copy of return
2288 from pp_formatted_text before assigning BUFFER to it.
2289 (gnat_init): Likewise for main_input_filename and gnat_argv.
2290 (gnat_printable_name): Remove cast from call to Set_Identifier_Casing.
2292 2009-04-24 Eric Botcazou <ebotcazou@adacore.com>
2294 * ttypes.ads (Target_Double_Float_Alignment): New variable.
2295 (Target_Double_Scalar_Alignment): Likewise.
2296 * get_targ.ads (Get_Strict_Alignment): Adjust external name.
2297 (Get_Double_Float_Alignment): New imported function.
2298 (Get_Double_Scalar_Alignment): Likewise.
2299 * layout.adb (Set_Elem_Alignment): Take into account specific caps for
2300 the alignment of "double" floating-point types and "double" or larger
2301 scalar types, as parameterized by Target_Double_Float_Alignment and
2302 Target_Double_Scalar_Alignment respectively.
2303 * gcc-interface/gigi.h (double_float_alignment): Declare.
2304 (double_scalar_alignment): Likewise.
2305 (is_double_float_or_array): Likewise.
2306 (is_double_scalar_or_array): Likewise.
2307 (get_target_double_float_alignment): Likewise.
2308 (get_target_double_scalar_alignment): Likewise.
2309 * gcc-interface/targtyps.c (get_strict_alignment): Rename into...
2310 (get_target_strict_alignment): ...this.
2311 (get_target_double_float_alignment): New function.
2312 (get_target_double_scalar_alignment): Likewise.
2313 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
2314 Test the presence of an alignment clause for under-aligned integer
2315 types. Take into account specific caps for the alignment of "double"
2316 floating-point types and "double" or larger scalar types, as
2317 parameterized by Target_Double_Float_Alignment and
2318 Target_Double_Scalar_Alignment respectively.
2319 (validate_alignment): Likewise.
2320 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Alignment>: Likewise.
2321 (gigi): Initialize double_float_alignment and double_scalar_alignment.
2322 * gcc-interface/utils.c (double_float_alignment): New global variable.
2323 (double_scalar_alignment): Likewise.
2324 (is_double_float_or_array): New predicate.
2325 (is_double_scalar_or_array): Likewise.
2327 2009-04-24 Eric Botcazou <ebotcazou@adacore.com>
2329 * gcc-interface/utils2.c (build_cond_expr): Move SAVE_EXPR ahead of
2330 the conditional expression only if it is common to both arms.
2332 2009-04-24 Eric Botcazou <ebotcazou@adacore.com>
2334 * gcc-interface/gigi.h (build_call_alloc_dealloc): Update comment.
2335 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Pass correct
2336 arguments to build_allocator.
2337 * gcc-interface/utils2.c (build_call_alloc_dealloc): Update comment.
2338 Remove code handling special allocator and assert its uselessness.
2340 2009-04-24 Eric Botcazou <ebotcazou@adacore.com>
2342 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If an
2343 alignment is specified, do not promote that of the component type
2345 <E_Array_Subtype>: Likewise.
2347 2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
2349 * einfo.ads (Is_True_Constant): Lift restriction on atomic objects.
2350 * sinfo.ads (Object Declaration): Likewise.
2351 (Assignment Statement): Likewise.
2352 * freeze.adb (Expand_Atomic_Aggregate): Remove useless test.
2353 Do not force Is_True_Constant to false on the temporary.
2354 (Freeze_Entity): Do not force Is_True_Constant to false on names on
2355 the RHS of object declarations.
2356 * gcc-interface/trans.c (lvalue_required_p) <N_Object_Declaration>:
2357 New case. Return 1 if the object is atomic.
2358 <N_Assignment_Statement>: Likewise.
2360 2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
2362 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>
2363 For packed array types, make the original array type a parallel type
2364 for the modular type and its JM wrapper if the type is bit-packed.
2365 <E_Array_Subtype>: Likewise. Do not generate the special XA parallel
2366 record type for packed array types. Remove kludge.
2368 2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
2370 * gcc-interface/gigi.h (create_index_type): Adjust head comment.
2371 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
2372 Use front-end predicates to compute signedness and precision.
2373 <E_String_Literal_Subtype>: Fold range type.
2374 Make sure to set longest_float_type_node to a scalar type.
2375 (elaborate_entity): Use consistent Constraint_Error spelling.
2376 (substitute_in_type) <INTEGER_TYPE>: Always copy the type.
2377 * gcc-interface/misc.c (gnat_print_type) <INTEGER_TYPE>: Use brief
2378 output for the modulus, if any.
2379 <ENUMERAL_TYPE>: Likewise for the RM size.
2380 * gcc-interface/trans.c (gnat_to_gnu): Use consistent Constraint_Error
2382 * gcc-interface/utils.c (finish_record_type): Really test the alignment
2383 of BLKmode bit-fields to compute their addressability.
2384 (create_index_type): Adjust comments.
2385 (create_param_decl): Create the biased subtype manually.
2386 * gcc-interface/utils2.c (build_component_ref): Use consistent
2387 Constraint_Error spelling.
2389 2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
2391 * gcc-interface/cuintp.c: Clean up include directives.
2392 * gcc-interface/targtyps.c: Likewise.
2393 * gcc-interface/decl.c: Likewise.
2394 * gcc-interface/misc.c: Likewise.
2395 * gcc-interface/trans.c: Likewise.
2396 * gcc-interface/utils.c: Likewise.
2397 * gcc-interface/utils2.c: Likewise.
2398 * gcc-interface/Make-lang.in: Adjust dependencies accordingly.
2400 2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
2402 * gcc-interface/ada-tree.h (union lang_tree_node): Use standard idiom.
2403 (SET_TYPE_LANG_SPECIFIC): Likewise. Fix formatting.
2404 (SET_DECL_LANG_SPECIFIC): Likewise.
2406 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
2407 Update comment about use of build_range_type.
2408 <E_Array_Type, E_Array_Subtype>: Use consistent naming convention.
2409 <E_Array_Subtype>: Rework comments about TYPE_ACTUAL_BOUNDS and add
2410 check for other cases of overloading.
2411 * gcc-interface/trans.c (gigi): Use size_int in lieu of build_int_cst.
2412 * gcc-interface/utils2.c (build_call_raise): Fix off-by-one error.
2413 Use size_int in lieu of build_int_cst.
2414 (build_call_alloc_dealloc): Use build_index_2_type in lieu of
2417 2009-04-22 Eric Botcazou <ebotcazou@adacore.com>
2419 * gcc-interface/utils2.c (build_binary_op) <PLUS_EXPR>: If operation's
2420 type is an enumeral or a boolean type, change it to an integer type
2421 with the same mode and signedness.
2423 2009-04-22 Eric Botcazou <ebotcazou@adacore.com>
2425 * gcc-interface/utils.c (create_var_decl_1): Do not emit debug info
2426 for an external constant whose initializer is not absolute.
2428 2009-04-22 Taras Glek <tglek@mozilla.com>
2430 * gcc-interface/ada-tree.h: Update GTY annotations to new syntax.
2431 * gcc-interface/trans.c: Likewise.
2432 * gcc-interface/utils.c: Likewise.
2434 2009-04-22 Ed Schonberg <schonberg@adacore.com>
2436 * sem_res.adb: Create block around procedure call when actual is a
2439 2009-04-22 Thomas Quinot <quinot@adacore.com>
2441 * s-soflin.ads: Fix typos
2443 2009-04-22 Vincent Celier <celier@adacore.com>
2445 * prj-env.adb: Minor comment change
2447 * prj-nmsc.adb (Check_Common): Add guard to avoid calling
2448 Get_Name_String with No_File.
2450 * tempdir.adb (Create_Temp_File): Output diagnostic when temp file
2451 cannot be created even when not in verbose mode.
2453 2009-04-22 Emmanuel Briot <briot@adacore.com>
2455 * make.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj.adb,
2456 prj.ads (Create_Mapping_File): merge the two versions for Ada_Only and
2457 Multi_Language modes, to avoid code duplication.
2458 (Project_Data.Include_Language): Removed.
2460 2009-04-22 Vincent Celier <celier@adacore.com>
2462 * tempdir.adb (Create_Temp_File): Add a diagnostic in verbose mode when
2463 the temporary file cannot be created, indicating the directory when the
2464 creation was attempted.
2466 2009-04-22 Emmanuel Briot <briot@adacore.com>
2468 * prj-env.adb, prj-env.ads (Create_Mapping_File): we need to compare
2469 the language names, not their indices.
2471 2009-04-22 Emmanuel Briot <briot@adacore.com>
2473 * prj.ads, prj-nmsc.adb, prj-env.adb, prj-env.ads
2474 (Source_Data.Language_Name): Field removed.
2476 2009-04-22 Emmanuel Briot <briot@adacore.com>
2478 * prj.adb, prj.ads, prj-nmsc.adb (Project_Data.Unit_Based_Language_*):
2481 2009-04-22 Emmanuel Briot <briot@adacore.com>
2483 * prj-nmsc.adb (Check_Naming_Ada_Only): Properly initialize the
2484 separate_suffix to the same value as the body_suffix.
2486 2009-04-22 Robert Dewar <dewar@adacore.com>
2488 * prj.adb: Minor code reorganization
2491 * prj-proc.adb: Minor code reorganization, clean up.
2493 * prj-nmsc.adb: Minor reformatting
2494 Minor code reorganization
2496 * gnat_ugn.texi: Add to doc on strict aliasing
2498 2009-04-22 Pascal Obry <obry@adacore.com>
2500 * s-osinte-mingw.ads: Rename Reserved field in CRITICAL_SECTION to
2503 * s-tasini.adb: Minor reformatting.
2505 * s-tassta.adb: Minor reformatting.
2507 2009-04-22 Emmanuel Briot <briot@adacore.com>
2509 * prj-proc.adb, prj-nmsc.adb (Check_Naming_Schemes): split into several
2510 smaller subprograms.
2511 Renamed to Check_File_Naming_Schemes to avoid confusion with the
2512 other Check_Naming_Schemes functions that plays a totally different
2514 (Check_Unit_Based_Lang, Check_File_Based_Lang): new subprograms,
2515 extracted from the above. These were partially rewritten to avoid
2516 unnecessary code and temporary variables.
2517 (Compute_Unit_Name): new subprogram, merge of Check_Unit_Based_Lang
2518 and Get_Unit (which for now still exist since they contain mode-specific
2521 2009-04-22 Emmanuel Briot <briot@adacore.com>
2523 * prj.ads, prj.adb, prj-nmsc.adb, prj-proc.adb (Recursive_Process):
2524 Remove duplicated code.
2525 (Canonical_Case_File_Name): new subprogram
2526 (Check_And_Normalize_Unit_Names): new subprogram
2527 (Write_Attr): new subprogram
2528 Better sharing of code
2529 (Check_Naming_Ada_Only, Check_Naming_Multi_Lang): new subprogram, to
2530 split Check_Naming and help find duplicated code
2531 (Check_Common): new subprogram, sharing code between ada_only and
2532 multi_language mode.
2533 (Naming_Data.Dot_Repl_Loc): field removed
2535 2009-04-22 Emmanuel Briot <briot@adacore.com>
2537 * prj-proc.adb, prj-nmsc.adb (Load_Naming_Exceptions): New subprogram.
2538 Minor refactoring to reduce the size of
2539 Process_Sources_In_Multi_Language_Mode.
2540 Avoid extra copied of Source_Data, which we found in the past could be
2542 (Mark_Excluded_Sources): new subprogram.
2543 (Remove_Locally_Removed_Files_From_Units): merged into the above
2544 Refactors Process_Sources_In_Multi_Language_Mode to reduce its size,
2545 and allow better sharing of code between multi_lang and ada_only modes
2546 (Project_Extends): removed, since exact duplicate of Prj.Is_Extending
2548 2009-04-22 Emmanuel Briot <briot@adacore.com>
2550 * prj-proc.adb, prj.adb, prj.ads (Project_Data.First_Referred_By):
2551 Removed, since unused.
2553 2009-04-22 Vincent Celier <celier@adacore.com>
2555 * prj-attr.adb: New single project level attribute
2556 Separate_Run_Path_Options.
2558 * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
2559 attribute Seperate_Run_Path_Options.
2561 * prj.ads: (Project_Configuration): New Boolean component
2562 Separate_Run_Path_Options, defaulted to False.
2564 * snames.ads-tmpl: New standard name Seperate_Run_Path_Options
2566 2009-04-22 Robert Dewar <dewar@adacore.com>
2568 * sem_type.adb: Minor reformatting
2570 * mlib.adb: Minor reformatting
2572 * sem_aggr.adb: Minor reformatting. Defend against junk aggregate from
2575 2009-04-22 Nicolas Setton <setton@adacore.com>
2577 * link.c: Add flag __gnat_separate_run_path_options.
2579 * mlib.adb (Separate_Run_Path_Options): New subprogram.
2581 * mlib.ads (Separate_Run_Path_Options): Declare.
2583 * gnatcmd.adb (Process_Link): Add support for emitting one "rpath"
2584 switch per directory, rather than one "rpath" switch listing all
2587 * gnatlink.adb (Process_Binder_File): Likewise.
2589 * make.adb (Gnatmake): Likewise.
2591 2009-04-22 Hristian Kirtchev <kirtchev@adacore.com>
2593 * exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): Code cleanup.
2594 Add a call to Move_Final_List when the target of the assignment is a
2595 return object that needs finalization and the expression is a
2596 controlled build-in-place function.
2598 2009-04-22 Vincent Celier <celier@adacore.com>
2600 * make.adb (Gnatmake, Bind_Step): call Set_Ada_Paths with
2601 Including_Libraries set to True.
2603 2009-04-22 Ed Schonberg <schonberg@adacore.com>
2605 * lib-load.ads, lib-load.adb (Make_Child_Decl_Unit): New subprogram, to
2606 create a unit table entry for the subprogram declaration created for a
2607 child suprogram body that has no separate specification.
2609 * sem_ch10.adb (Analyze_Compilation_Unit): For a child unit that is a
2610 subprogram body, call Make_Child_Decl_Unit.
2612 * lib.adb (Get_Cunit_Unit_Number): Verify that an entry not yet in the
2613 table can only be the created specification of a child subprogram body
2614 that is the main unit, which has not been entered in the table yet.
2616 * errout.adb (Output_Messages): Ignore created specification of a
2617 child subprogram body to prevent repeated listing of error messages.
2619 * gnat1drv.adb (gnat1drv): The generated specification for a child
2620 subprogram body does not generate code.
2622 2009-04-22 Arnaud Charlet <charlet@adacore.com>
2624 * s-bitops.adb, s-bitops.ads (Raise_Error): Do not use Ada 05 syntax,
2625 since this unit is now part of bootstrap units, so must use Ada 95
2628 2009-04-22 Thomas Quinot <quinot@adacore.com>
2630 * a-tasatt.adb: Minor reformatting
2632 2009-04-22 Bob Duff <duff@adacore.com>
2634 * s-stalib.ads: Remove "with System;" since we're inside System, so
2637 2009-04-22 Vincent Celier <celier@adacore.com>
2639 * prj-nmsc.adb (Add_Source): Always put the dependency file name in
2640 the source record, as there may be a dependency file even if no object
2643 2009-04-22 Robert Dewar <dewar@adacore.com>
2645 * lib-load.adb: Minor reformatting
2647 * lib-load.ads: Minor reformatting
2649 * sinfo.ads: Minor reformatting
2651 2009-04-22 Bob Duff <duff@adacore.com>
2653 * exp_pakd.adb: Minor comment fixes.
2655 * sinfo.ads, par-load.adb, sem_ch10.adb, lib-load.ads, lib-load.adb
2656 sem_ch12.adb: Change the meaning of the Library_Unit attribute to
2657 include units containing instantiations, as well as units that are
2658 generic instantiations.
2660 * sem.adb: Include dependents and corresponding specs/bodies in the
2663 * gcc-interface/Make-lang.in:
2664 sem now depends on s-bitops, because of the packed array of Booleans.
2666 2009-04-22 Eric Botcazou <ebotcazou@adacore.com>
2668 * gcc-interface/ada-tree.def: Fix formatting nits.
2669 (REGION_STMT): Delete.
2670 (HANDLER_STMT): Likewise.
2671 * gcc-interface/ada-tree.h: Fix formatting nits.
2673 (REGION_STMT_BODY): Likewise.
2674 (REGION_STMT_HANDLE): Likewise.
2675 (REGION_STMT_BLOCK): Likewise.
2676 (HANDLER_STMT_ARG): Likewise.
2677 (HANDLER_STMT_LIST): Likewise.
2678 (HANDLER_STMT_BLOCK): Likewise.
2679 * gcc-interface/gigi.h (fp_prec_to_size): Update comment.
2680 (fp_size_to_prec): Likewise.
2681 (largest_move_alignment): Delete.
2682 (gnat_compute_largest_alignment): Likewise.
2684 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
2685 Remove redundant code.
2686 <E_Array_Type>: Remove redundant assert.
2687 <E_Array_Subtype>: Exit early from index computation in pathological
2689 Rewrite conditional assignment.
2690 (make_type_from_size): Likewise.
2691 * gcc-interface/misc.c (largest_move_alignment): Delete.
2692 (gnat_finish_incomplete_decl): Likewise.
2693 (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Likewise.
2694 (asm_out_file): Likewise
2695 (gnat_print_type) <INTEGER_TYPE>: Fall through to ENUMERAL_TYPE case.
2696 (gnat_dwarf_name): Move around.
2697 * gcc-interface/trans.c (Attribute_to_gnu): Fix minor nits.
2698 (gigi): Remove call to gnat_compute_largest_alignment.
2699 * utils.c (create_field_decl): Rewrite conditional assignment.
2702 2009-04-22 Eric Botcazou <ebotcazou@adacore.com>
2704 * gcc-interface/decl.c (gnat_to_gnu_entity): Compute is_type predicate
2705 on entry. Defer common processing for types. Reorder and clean up.
2706 Compute the equivalent GNAT node and the default size for types only.
2707 <E_Modular_Integer_Type>: Directly use Esize for the type's precision.
2708 <E_Access_Type>: For an unconstrained designated type, do not pretend
2709 that a dummy type is always made.
2710 <all> Fix nits in comments.
2711 (validate_size): Fix formatting nits and comments.
2712 (set_rm_size): Likewise.
2713 * gcc-interface/utils.c (create_param_decl): Replace bogus argument
2714 passed to TARGET_PROMOTE_PROTOTYPES hook.
2716 2009-04-22 Eric Botcazou <ebotcazou@adacore.com>
2718 * fe.h (Get_External_Name): Declare.
2719 * gcc-interface/gigi.h (concat_id_with_name): Rename to...
2720 (concat_name): ...this.
2721 * gcc-interface/decl.c (gnat_to_gnu_entity): Rename gnu_entity_id to
2722 gnu_entity_name and adjust for above renaming.
2723 <E_Access_Type>: Use create_concat_name to get the name of the various
2724 types associated with unconstrained array types.
2725 (make_aligning_type): Adjust for above renaming.
2726 (maybe_pad_type): Likewise.
2727 (components_to_record): Likewise. Use get_identifier_with_length for
2728 the encoding of the variant.
2729 (get_entity_name): Use get_identifier_with_length.
2730 (create_concat_name): Likewise. Use Get_External_Name if no suffix.
2731 Do not fiddle with Name_Buffer.
2732 (concat_id_with_name): Rename to...
2733 (concat_name): ...this. Use get_identifier_with_length. Do not fiddle
2735 * gcc-interface/utils.c (rest_of_record_type_compilation): Adjust for
2738 2009-04-21 Joseph Myers <joseph@codesourcery.com>
2740 * ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
2743 2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
2745 * gcc-interface/trans.c (gnat_to_gnu): Do not overwrite location info.
2747 2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
2749 * gcc-interface/ada-tree.h (TYPE_RM_SIZE_NUM): Delete.
2750 (TYPE_RM_SIZE): Access TYPE_LANG_SLOT_1 directly for integral types.
2751 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>:
2752 Remove useless support code for packed array types and assert its
2754 <E_Signed_Integer_Subtype>: Reuse entity identifier in more places and
2755 adjust for TYPE_RM_SIZE change.
2756 <all> Fix nits in comments. Use Original_Array_Type accessor instead
2757 of Associated_Node_For_Itype accessor for packed array types.
2758 (make_packable_type): Likewise.
2759 (maybe_pad_type): Likewise.
2760 (set_rm_size): Likewise. Rework conditional statement. Adjust for
2761 TYPE_RM_SIZE change.
2762 (make_type_from_size): Adjust for TYPE_RM_SIZE change.
2763 (rm_size): Fix nits in comments. Rework conditional statements.
2764 * gcc-interface/misc.c (gnat_print_type): Adjust for TYPE_RM_SIZE
2766 * gcc-interface/trans.c (Attribute_to_gnu): Fix nits in comments.
2767 * gcc-interface/utils.c (gnat_init_decl_processing): Use more
2768 appropriate function to initialize the size_type_node. Adjust for
2769 TYPE_RM_SIZE change.
2771 2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
2773 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set force_global
2774 for imported subprograms.
2776 2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
2778 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not make
2779 constant objects covered by 13.3(19) volatile.
2781 2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
2783 * gcc-interface/utils.c (create_type_decl): Do not pass declarations
2784 of dummy fat pointer types to the debug back-end.
2786 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
2788 * gcc-interface/decl.c (gnat_to_gnu_entity): Rewrite Esize calculation.
2789 <E_Signed_Integer_Subtype>: Set the RM size on the integer type
2790 before wrapping it up in the record type. Do not overwrite the
2791 Ada size of the record type with the Esize.
2793 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
2795 * gcc-interface/trans.c (unchecked_conversion_lhs_nop): New predicate.
2796 (gnat_to_gnu) <N_Unchecked_Type_Conversion>: Return the expression
2797 if the conversion is on the LHS of an assignment and a no-op.
2798 <all> Do not convert the result to the result type if the Parent
2799 node is such a conversion.
2801 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
2803 * gcc-interface/ada-tree.h (DECL_HAS_REP_P): Delete.
2804 * gcc-interface/decl.c (gnat_to_gnu_entity): Add support for extension
2805 of types with unknown discriminants.
2806 (substitute_in_type): Rewrite and restrict to formal substitutions.
2807 * gcc-interface/utils.c (create_field_decl): Do not set DECL_HAS_REP_P.
2808 (update_pointer_to): Update comment.
2810 2009-04-20 Ed Schonberg <schonberg@adacore.com>
2812 * sem_ch8.adb (Use_One_Package): In an instance, if two
2813 potentially_use_visible and non-overloadable homonyms are available
2814 from the actuals of distinct formal packages, retain the current one,
2815 which was visible in the generic, to prevent spurious visibility
2817 (End_Use_Package): Restore use_visibility when needed.
2819 2009-04-20 Sergey Rybin <rybin@adacore.com>
2821 * gnat_ugn.texi, vms_data.ads: Update doc.
2823 2009-04-20 Arnaud Charlet <charlet@adacore.com>
2825 * gcc-interface/Make-lang.in: Update dependencies
2827 * gcc-interface/Makefile.in: Link run-time against winsock2 lib under
2830 2009-04-20 Robert Dewar <dewar@adacore.com>
2832 * checks.ads: Fix documentation of range check handling
2834 2009-04-20 Ed Schonberg <schonberg@adacore.com>
2836 * sem_ch8.adb (Use_One_Type): Use proper entity on warning message for
2837 a redundant use_type clause.
2839 2009-04-20 Robert Dewar <dewar@adacore.com>
2841 * sem_attr.adb (Eval_Attribute, case Length): Catch more cases where
2842 this attribute can be evaluated at compile time.
2843 (Eval_Attribute, case Range_Length): Same improvement
2845 * sem_eval.ads, sem_eval.adb (Compile_Time_Compare): New procedure
2847 2009-04-20 Ed Schonberg <schonberg@adacore.com>
2849 * sem_ch6.adb (Analye_Subprogram_Declaration): Code reorganization,
2850 for better handling of null procedures.
2851 (Check_Overriding_Indicator): Do not emit a warning on a missing
2852 overriding indicator on an operator when the type of which the operator
2853 is a primitive is private.
2855 2009-04-20 Bob Duff <duff@adacore.com>
2857 * sem.adb, gnat1drv.adb, debug.adb: Use the -gnatd.W switch to control
2860 2009-04-20 Robert Dewar <dewar@adacore.com>
2862 * sem_attr.adb: Minor reformatting
2864 * gnatcmd.adb: Minor reformatting
2866 2009-04-20 Ed Schonberg <schonberg@adacore.com>
2868 * sem_ch4.adb (Analyze_User_Defined_Binary_Op): If left operand is
2869 overloaded and one interpretation matches the context, label the
2870 operand with the type of first formal.
2872 2009-04-20 Bob Duff <duff@adacore.com>
2874 * debug.ads: Minor comment fix.
2876 * debug.adb: Minor comment fixes.
2878 2009-04-20 Javier Miranda <miranda@adacore.com>
2880 * rtsfind.ads (RE_Null_Id): New entity of package Ada.Exceptions
2882 * exp_ch6.adb (Expand_Inlined_Call): Undo previous patch.
2884 * exp_ch11.adb (Expand_N_Raise_Statement): When the raise stmt
2885 is expanded into a call to Raise_Exception, avoid passing the
2886 exception-name'identity in runtimes in which this argument
2889 2009-04-20 Jerome Lambourg <lambourg@adacore.com>
2891 * impunit.adb: Add i-cil and i-cilobj packages, now needed by the
2892 generated bindings for cil.
2894 2009-04-20 Ed Schonberg <schonberg@adacore.com>
2896 * sem_aggr.adb (Resolve_Record_Aggregate): If the type has unknown
2897 discriminants, collect components from the Underlying_Record_View,
2898 which will be used in the expansion of the aggregate into assignments.
2900 * sem_ch3.adb: Do not label derived type with unknown discriminants as
2901 having a private declaration.
2903 2009-04-20 Ed Schonberg <schonberg@adacore.com>
2905 * exp_util.adb (Expand_Subtype_From_Expr): use the
2906 underlying_record_view when available, to create the proper constrained
2907 subtype for an object of a derived type with unknown discriminants.
2909 2009-04-20 Javier Miranda <miranda@adacore.com>
2911 * exp_ch6.adb (Expand_Inlined_Call): Avoid generation of temporaries for
2912 formals that have pragma unreferenced.
2914 2009-04-20 Pascal Obry <obry@adacore.com>
2916 * a-direct.adb (To_Lower_If_Case_Insensitive): Removed.
2917 Remove all calls to To_Lower_If_Case_Insensitive to preserve
2918 the pathname original casing.
2920 2009-04-20 Robert Dewar <dewar@adacore.com>
2922 * g-trasym.adb: Minor reformatting
2924 * s-os_lib.adb: Minor reformatting
2926 * sem.adb: Minor reformatting
2927 Minor code reorganization
2929 * sem_ch3.adb: Minor reformatting
2931 * sem_ch4.adb: Minor reformatting
2933 * sem_ch8.adb: Minor reformatting
2935 * sem_type.adb: Minor reformatting
2937 2009-04-20 Javier Miranda <miranda@adacore.com>
2939 * sem_disp.adb (Find_Dispatching_Type): For subprograms internally
2940 generated by derivations of tagged types use the aliased subprogram a
2941 reference to locate their controlling type.
2943 2009-04-20 Tristan Gingold <gingold@adacore.com>
2945 * g-trasym.adb: Set size of result buffer before calling
2948 2009-04-20 Ed Schonberg <schonberg@adacore.com>
2950 * sem_ch4.adb (Valid_Candidate): When checking whether a prefixed call
2951 to a function returning an array can be interpreted as a call with
2952 defaulted parameters whose result is indexed, take into account the
2953 types of all the indices of the array result type.
2955 2009-04-20 Pascal Obry <obry@adacore.com>
2957 * a-direct.adb, s-os_lib.adb: Minor reformatting.
2959 2009-04-20 Ed Schonberg <schonberg@adacore.com>
2961 * sem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect
2962 null exclusion qualifiers for object renaming declarations.
2964 2009-04-20 Nicolas Roche <roche@adacore.com>
2966 * sysdep.c (__gnat_localtime_tzoff): on Windows, manipulated times are
2967 unsigned long long. So compare local_time and utc_time before computing
2970 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
2972 * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
2973 of the Underlying_Record_View before that of the derived type.
2975 * exp_ch3.adb (Expand_Record_Extension): Do not special-case types
2976 with unknown discriminants with regard to the parent subtype.
2978 2009-04-20 Bob Duff <duff@adacore.com>
2980 * sem.adb (Semantics, Walk_Library_Items): Include dependents of bodies
2981 that are not included. This is necessary if the main unit is a generic
2984 * gnat1drv.adb (Gnat1drv): Comment out the call to Check_Library_Items,
2985 because it doesn't work if -gnatn is used.
2987 2009-04-20 Ed Schonberg <schonberg@adacore.com>
2989 * rtsfind.adb (RTE, RTE_Record_Component): In
2990 Configurable_Run_Time_Mode, do not enable front-end inlining.
2992 2009-04-20 Thomas Quinot <quinot@adacore.com>
2994 * g-socthi-vms.adb: Remove now unnecessary WITH clause on
2995 System.Address_To_Access_Conversions.
2997 2009-04-20 Ed Schonberg <schonberg@adacore.com>
2999 * sem.adb: Guard against ill-formed subunits.
3001 2009-04-20 Bob Duff <duff@adacore.com>
3003 * output.adb (Flush_Buffer): Do not indent blank lines.
3004 (Ignore_Output): New procedure for output suppression.
3006 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
3008 * a-calfor.adb (Image): Subtract 0.5 from the sub second component only
3009 when it is positive. This avoids a potential constraint error raised
3010 by the conversion to Natural.
3012 2009-04-20 Gary Dismukes <dismukes@adacore.com>
3014 * exp_ch5.adb (Expand_Assign_Array): For the case where the assignment
3015 involves a target that has a specified address, don't set Forward_OK
3016 and Backward_OK to False if the rhs is an aggregate, since overlap
3019 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3021 * sem_ch8.adb (Analyze_Object_Renaming): Reject ambiguous expressions
3022 in an object renaming declaration when the expected type is an
3023 anonymous access type.
3025 * sem_type.adb (Disambiguate): Use anonymousness to resolve a potential
3026 ambiguity when one interpretation is an anonymous access type and the
3027 other is a named access type, and the context itself is anonymous
3029 2009-04-20 Thomas Quinot <quinot@adacore.com>
3031 * einfo.ads: Minor comment rewording
3033 * sem_aggr.adb: Minor comment rewording
3035 * sem_ch3.adb, sem_ch6.adb: Minor reformatting
3037 2009-04-20 Pascal Obry <obry@adacore.com>
3039 * adaint.c (__gnat_is_readable_file): Check for file existence
3040 when not using ACL (always the case on remote drives).
3042 2009-04-20 Robert Dewar <dewar@adacore.com>
3044 * sinfo.ads: Minor comment fixes
3046 * exp_disp.adb: Minor reformatting
3048 * gnat1drv.adb: Minor reformatting
3050 * output.adb: Minor reformatting
3052 * s-vxwext-kernel.ads: Minor reformatting
3054 * sem.ads: Minor reformatting
3056 * sem.adb: Minor reformatting
3058 * sem_elim.adb: Minor reformatting
3060 * uname.ads: Minor reformatting
3062 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3064 * init.c (__gnat_adjust_context_for_raise): On x86{-64}/Linux, add
3065 a small dope of 4 words to the adjustment to the stack pointer.
3067 2009-04-20 Thomas Quinot <quinot@adacore.com>
3069 * xoscons.adb: generate C header s-oscons.h in
3070 addition to s-oscons.ads.
3072 * socket.c: On VMS, use s-oscons.h.
3074 * sem_ch3.adb: Minor reformatting
3076 * exp_ch9.adb: Minor reformatting
3078 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3080 * gcc-interface/trans.c (check_for_eliminated_entity): Remove.
3081 (Attribute_to_gnu): Do not call check_for_eliminated_entity.
3082 (call_to_gnu): Likewise.
3084 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3086 * gcc-interface/trans.c (gigi): Declare the name of the compilation
3087 unit as the first global name at the very beginning.
3089 2009-04-20 Thomas Quinot <quinot@adacore.com>
3091 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
3092 s-oscons-tmplt.c, gsocket.h, g-socthi-mingw.ads, g-socthi.ads,
3093 g-sothco.ads (__gnat_inet_pton): Needs to be enabled for HP-UX as well,
3094 since HP-UX supports neither inet_aton nor inet_pton (altough the
3095 latter is part of the Single UNIX Specification!).
3096 So reorganize code, and share C implementation based on inet_addr(3)
3097 with VMS (instead of having a VMS specific Ada implementation in
3100 2009-04-20 Gary Dismukes <dismukes@adacore.com>
3102 * osint-c.ads, osint-c.adb (Get_Object_Output_File_Name): New function
3103 to return the object file name saved by Set_Object_Output_File_Name.
3105 2009-04-20 Emmanuel Briot <briot@adacore.com>
3107 * g-comlin.adb (Initialize_Option_Scan): Fix initialization of parsers
3108 for the standard command line, when argc has been modified since the
3109 start of the application.
3111 2009-04-20 Thomas Quinot <quinot@adacore.com>
3113 * socket.c (__gnat_inet_pton, Windows case): Adjust return value.
3114 WSAStringToAddress returns 0 for success and SOCKET_ERROR for failure.
3116 2009-04-20 Bob Duff <duff@adacore.com>
3118 * gnat1drv.adb (Gnat1drv): Put call to Check_Library_Items inside
3121 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3123 * exp_ch9.adb (Build_Protected_Sub_Specification): Mark generated
3124 subprogram as Eliminated when source operation is.
3125 (Expand_N_Protected_Type_Declaration): Generate protected and
3126 unprotected specs for the internal operations, even if the source
3127 operation is eliminated.
3129 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
3131 * exp_ch3.adb (Make_Predefined_Primitive_Specs,
3132 Predefined_Primitive_Bodies): Do not create the declarations and bodies
3133 of the primitive subprograms associated with dispatching select
3134 statements when the runtime is in configurable mode.
3136 2009-04-20 Ed Falis <falis@adacore.com>
3138 * s-vxwext-kernel.ads (tickGet): Use tick64Get.
3140 2009-04-20 Thomas Quinot <quinot@adacore.com>
3142 * s-oscons-tmplt.c: Add support for generating a dummy version of
3143 s-oscons.ads providing all possible constants.
3145 * g-socthi-mingw.ads: Fix calling convention for __gnat_inet_pton.
3147 * socket.c (__gnat_inet_pton): On Windows make sure we always use the
3148 ANSI version (not the UNICODE version) of WSAStringToAddress.
3150 2009-04-20 Pascal Obry <obry@adacore.com>
3152 * adaint.c (__gnat_set_OWNER_ACL): properly free memory
3153 allocated for the security descriptor and make sure all
3154 handles are closed before leaving this procedure.
3156 2009-04-20 Javier Miranda <miranda@adacore.com>
3158 * einfo.ads, einfo.adb (Is_Underlying_Record_View): New subprogram
3159 (Set_Is_Underlying_Record_View): New subprogram
3161 * sem_aggr.adb (Discr_Present, Resolve_Record_Aggregate): In case of
3162 private types with unknown discriminants use the underlying record view
3165 * sem_ch3.adb (Build_Derived_Private_Type): Enable construction of the
3166 underlying record view in the full view of private types whose parent
3167 has unknown discriminants.
3168 (Build_Derived_Record_Type): Avoid generating the class-wide entity
3169 associated with an underlying record view.
3170 (Derived_Type_Declaration): Avoid deriving parent primitives in
3171 underlying record views.
3173 * sem_ch6.adb (Check_Return_Subtype_Indication): Add support for
3174 records with unknown discriminants.
3176 * sem_type.adb (Covers): Handle underlying record views.
3177 (Is_Ancestor): Add support for underlying record views.
3179 * exp_attr.adb (Expand_Attribute): Expand attribute 'size into a
3180 dispatching call if the type of the target object is tagged and has
3181 unknown discriminants.
3183 * exp_aggr.adb (Resolve_Record_Aggregate): Add support for records with
3184 unknown discriminants.
3186 * exp_disp.adb (Build_Dispatch_Tables): Avoid generating dispatch
3187 tables for internally built underlying record views.
3189 * sprint.adb (sprint_node_actual): Improve output of aggregates with an
3190 empty list of component associations.
3192 2009-04-20 Thomas Quinot <quinot@adacore.com>
3194 * sem_ch10.adb: Minor reformatting
3196 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
3197 g-socthi-mingw.ads, g-socthi.ads, g-socket.adb
3198 (GNAT.Sockets.Inet_Addr): Do not use non-portable inet_aton, instead use
3199 standard inet_pton API (and emulate it on platforms that do not
3201 (GNAT.Sockets.Thin.Inet_Pton, VMS case): Implement in terms of
3202 DECC$INET_ADDR, imported in Ada.
3203 (GNAT.Sockets.Thin.Inet_Pton, VxWorks and Windows cases): Use C
3204 implementation provided by GNAT runtime.
3205 (__gnat_inet_pton): C implementation of inet_pton(3) for VxWorks and
3208 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3210 * gnat_ugn.texi: Add documentation for -fno-ivopts.
3212 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3214 * sem_ch10.adb (Analyze_Context): Do not analyze a unit in a
3215 with_clause if it is the main unit.
3217 2009-04-20 Thomas Quinot <quinot@adacore.com>
3219 * sem_type.adb, ali.adb, erroutc.adb: Minor code reorganization
3220 (no behaviour change): Use Append instead of Increment_Last followed
3223 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
3225 * exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate the
3226 declarations of all primitives associated with dispatching asynchronous,
3227 conditional and timed selects when dispaching calls are forbidden and
3228 select statements are not allowed (such as in Ravenscar).
3229 (Predefined_Primitive_Bodies): Ditto for bodies.
3231 * exp_disp.ad (Make_DT): Do not create and populate the
3232 Select_Specific_Data of the dispatch table when dispatching calls are
3233 forbidden and select statements are not allowed (such as in Ravenscar).
3235 2009-04-20 Robert Dewar <dewar@adacore.com>
3237 * a-tifiio.adb: Minor reformatting
3239 2009-04-20 Thomas Quinot <quinot@adacore.com>
3241 * g-socthi-vms.adb, g-socket.adb, g-socket.ads: inet_aton(3), unlike
3242 other C library functions, report *failure* with a zero status, and
3243 success with a non-zero status.
3245 2009-04-20 Bob Duff <duff@adacore.com>
3247 * sem.ads, sem.adb (Walk_Library_Items): New generic procedure.
3248 (Semantics): After analyzing each unit, Append it to the
3249 Comp_Unit_List, if appropriate.
3251 * gnat1drv.adb (Check_Library_Items): New procedure for debugging
3253 (Gnat1drv): Correct comment regarding Back_End_Mode.
3255 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3257 * gnat_ugn.texi: Add documentation for -fno-inline-small-functions.
3259 2009-04-20 Thomas Quinot <quinot@adacore.com>
3261 * s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
3262 output.adb, output.ads, s-taprop-hpux-dce.adb,
3263 s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-posix.adb: Minor
3266 2009-04-20 Thomas Quinot <quinot@adacore.com>
3268 * g-socket.adb, g-socket.ads, g-socthi-mingw.ads, g-socthi-vms.adb,
3269 g-socthi-vms.ads, g-socthi-vxworks.ads, g-socthi.ads
3270 (GNAT.Sockets.Thin.C_Inet_Addr): Remove.
3271 (GNAT.Sockets.Thin.Inet_Aton): New function, imported from C library
3272 except for VMS where it is reimplemented in Ada using DECC$INET_ADDR.
3273 (GNAT.Sockets.Inet_Addr): Use inet_aton(3) instead of inet_addr(3).
3275 * debug.adb: Fix typo
3277 * gnat_rm.texi: Minor doc fix.
3279 * sem_ch7.adb, freeze.adb: Minor reformatting
3281 2009-04-20 Thomas Quinot <quinot@adacore.com>
3283 * g-socket.ads: Add new constants:
3285 Unspecified_Group_Inet_Addr
3286 All_Hosts_Group_Inet_Addr
3287 All_Routers_Group_Inet_Addr
3289 * s-oscons-tmplt.c, g-sttsne-vxworks.adb (System.OS_Constants): Add
3290 ERANGE (Result too large).
3291 (GNAT.Sockets.Thin.Task_Safe_NetDB, VxWorks version): Add missing
3292 propagation of errno to caller.
3294 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
3296 * a-calend.adb, a-calend-vms.adb: Increase the number of leap seconds
3297 to 24. Increment Leap_Seconds_Count and add an entry to aggregate
3300 2009-04-20 Gary Dismukes <dismukes@adacore.com>
3302 * sem_elim.ads (Check_For_Eliminated_Subprogram): New procedure for
3303 checking for references to eliminated subprograms that should be
3305 (Eliminate_Error_Message): Update comment to say "references" rather
3306 than "calls" (since attribute cases are handled here as well).
3308 * sem_elim.adb (Check_For_Eliminated_Subprogram): New procedure for
3309 checking for references to eliminated subprograms that should be
3310 flagged. Add with and use of Sem and Sem_Util.
3312 * sem_res.adb (Resolve_Call): Reject calls to eliminated subprograms.
3313 Add with and use of Sem_Elim.
3315 * sem_attr.adb (Analyze_Access_Attribute): Reject access attributes
3316 applied to eliminated subprograms.
3317 (Analyze_Attribute): Reject 'Address and 'Code_Address applied to
3318 eliminated subprograms.
3319 Add with and use of Sem_Elim.
3321 * sem_disp.adb (Check_Dispatching_Call): Remove error check for calls
3322 to eliminated subprograms, now handled during Resolve_Call.
3323 Remove with and use of Sem_Elim.
3325 * exp_disp.adb (Make_DT): Get Ultimate_Alias of primitive before
3326 testing Is_Eliminated, for proper handling of primitive derived from
3327 eliminated subprograms.
3329 2009-04-20 Vincent Celier <celier@adacore.com>
3331 * mlib-prj.adb (Build_Library): Use the shared library linker, if one
3332 has been declared (Library_GCC or Linker'Driver), for the driver name.
3334 * prj-nmsc.adb (Process_Linker): If Library_GCC is not declared and
3335 Linker'Driver is, use Linker'Driver as the shared library linker.
3336 (Process_Project_Level_Simple_Attributes): Issue a warning if attribute
3337 Library_GCC is declared.
3338 (Check_Library_Attributes): Set up the shared linker driver: either
3339 Library_GCC or Linker'Driver. Issue a warning if Library_GCC is
3342 2009-04-20 Thomas Quinot <quinot@adacore.com>
3344 * g-socket.ads (Send_Socket): Fix misleading comment.
3346 2009-04-20 Arnaud Charlet <charlet@adacore.com>
3348 * switch-c.adb (Scan_Front_End_Switches): Disable inspector mode in
3351 2009-04-20 Geert Bosch <bosch@adacore.com>
3353 * a-tifiio.adb (Put): Avoid generating too many digits for certain
3354 fixed types with smalls that are neither integer or the reciprocal
3357 2009-04-20 Bob Duff <duff@adacore.com>
3359 * uname.ads: Minor comment fix.
3361 * types.ads: Minor comment fix.
3363 2009-04-20 Pascal Obry <obry@adacore.com>
3365 * adaint.c (__gnat_get_libraries_from_registry): Fix code to
3366 avoid warning. At the same time fix a memory leak.
3368 * osint.adb (Get_Libraries_From_Registry): Properly free memory
3369 returned by the above routine.
3371 2009-04-20 Robert Dewar <dewar@adacore.com>
3373 * s-conca5.adb, s-conca5.ads, s-conca7.adb, s-conca7.ads, s-conca9.adb,
3374 s-conca9.ads, rtsfind.ads, s-conca2.adb, s-conca2.ads, s-conca4.adb,
3375 s-conca4.ads, s-conca6.adb, s-conca6.ads, s-conca8.adb, s-conca8.ads,
3376 s-conca3.adb, s-conca3.ads (Str_Concat_Bounds_x): New functions.
3378 * exp_ch4.adb (Expand_Concatenate): Minor code reorganization
3380 2009-04-20 Pascal Obry <obry@adacore.com>
3382 * initialize.c (__gnat_initialize): Add braces to kill warning.
3384 * adaint.c: Minor reformatting, remove trailing spaces.
3386 2009-04-17 Arnaud Charlet <charlet@adacore.com>
3388 * gcc-interface/Make-lang.in: Update dependencies.
3390 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3392 * adaint.h (__gnat_lwp_self): Declare on Linux.
3394 * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'.
3396 2009-04-20 Robert Dewar <dewar@adacore.com>
3398 * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement
3399 front-end part of -fpreserve-control-flow switch.
3401 2009-04-20 Bob Duff <duff@adacore.com>
3403 * rtsfind.adb: Minor comment fix
3405 2009-04-20 Robert Dewar <dewar@adacore.com>
3407 * exp_aggr.adb: Minor reformatting
3408 Minor code reorganization (use Nkind_In)
3410 * g-socket.adb: Minor reformatting
3412 * g-socket.ads: Minor comment fix
3414 * s-auxdec.ads: Minor comment and organization update.
3416 * s-auxdec-vms_64.ads: Minor comment and organization update.
3418 * sem_ch10.adb: Minor addition of ??? comment
3420 * sem_disp.adb: Minor reformatting
3422 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3424 * inline.adb (Add_Inlined_Subprogram): Do not place on the back-end
3425 list a caller of an inlined subprogram, if the caller itself is not
3428 2009-04-20 Pascal Obry <obry@adacore.com>
3430 * adaint.c: Disable use of ACL on network drives.
3432 2009-04-20 Arnaud Charlet <charlet@adacore.com>
3434 * gnat_ugn.texi: Add examples.
3436 2009-04-20 Thomas Quinot <quinot@adacore.com>
3438 * g-socket.ads (Abort_Selector): Clarify documentation.
3440 2009-04-20 Arnaud Charlet <charlet@adacore.com>
3442 * opt.ads (Inspector_Mode): Update documentation of this flag.
3444 2009-04-20 Thomas Quinot <quinot@adacore.com>
3446 * g-socket.ads: Minor reformatting
3448 * socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to
3449 consider S_resolvLib error codes since we only use the hostLib wrappers.
3451 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3453 * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
3454 of the Underlying_Record_View after that of the derived type.
3456 2009-04-20 Arnaud Charlet <charlet@adacore.com>
3458 * switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining
3461 2009-04-20 Javier Miranda <miranda@adacore.com>
3463 * sem_ch6.adb (New_Overloaded_Entity): Minor reformating.
3465 * sem_ch6.ads (Subtype_Conformant, Type_Conformant): Add missing
3468 * exp_aggr.adb (Build_Record_Aggr_Code): Code cleanup.
3471 (Check_Dispatching_Operation): Set attribute Is_Dispatching_Operation
3472 in internally built overriding subprograms.
3474 2009-04-20 Doug Rupp <rupp@adacore.com>
3476 * s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types.
3478 * s-auxdec.ads: Likewise
3480 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3482 * sem_ch3.adb (Find_Type_Name): Reject the completion of a private
3483 type by an interface.
3485 * exp_ch6.adb (Expand_Call): Inline To_Address unconditionally, to
3486 minimze difference in expanded tree when compiled as spec of the main
3487 unit, or as a spec in the context of another unit.
3489 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
3491 * a-calend.adb: Remove types char_Pointer, int, tm and tm_Pointer.
3492 (localtime_tzoff): This routine no longer accepts an actual of type
3494 (UTC_Time_Offset): Remove local variable Secs_TM.
3496 * sysdep.c (__gnat_localtime_tzoff): This routine no longer accepts an
3497 actual of type struct tm*. Add local variable of type struct tm for all
3498 targets that provide localtime_r and need to invoke it.
3500 2009-04-20 Thomas Quinot <quinot@adacore.com>
3502 * s-oscons-tmplt.c, g-socket.adb, g-socket.ads
3503 (GNAT.Sockets.Resolve_Error): Add case of EPIPE
3504 Add case of EAGAIN for platforms where it is not equal to EWOULDBLOCK
3506 2009-04-20 Robert Dewar <dewar@adacore.com>
3508 * sem_ch3.adb: Minor reformatting
3510 * lib-load.adb: Minor reformatting
3512 * sem_ch4.adb: Minor reformatting
3514 2009-04-20 Robert Dewar <dewar@adacore.com>
3516 * namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec
3517 (equal values => False).
3519 2009-04-20 Ed Schonberg <schonberg@adacore.com>
3521 * exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls
3522 to null procedures can be inlined unconditionally.
3524 2009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3526 * gcc-interface/trans.c (call_to_gnu): When creating the copy for a
3527 non-addressable parameter passed by reference, do not convert the
3528 actual if its type is already the nominal type, unless it is of
3529 self-referential size.
3531 2009-04-20 Arnaud Charlet <charlet@adacore.com>
3533 * gnat_ugn.texi: Fix typos.
3535 2009-04-20 Robert Dewar <dewar@adacore.com>
3537 * debug.adb, gnat1drv.adb, sem_ch13.adb: Add circuitry to
3538 Validate_Unchecked_Warnings to suppress warnings about size or
3539 alignment or extra bits if either type involved has pragma Warnings
3540 (Off) set for the type entity.
3542 2009-04-19 Eric Botcazou <ebotcazou@adacore.com>
3544 * gcc-interface/trans.c (gigi): Make the special IA-64 descriptor type
3545 a builtin type and give it a name.
3547 2009-04-17 Diego Novillo <dnovillo@google.com>
3549 * gcc-interface/misc.c (gnat_expand_expr): Remove.
3550 (LANG_HOOKS_EXPAND_EXPR): Remove.
3552 2009-04-17 Robert Dewar <dewar@adacore.com>
3554 * sem_ch3.adb: Minor reformatting
3556 2009-04-17 Pascal Obry <obry@adacore.com>
3558 * adaint.c: Add __gnat_use_acl global variable to control use of ACL.
3560 2009-04-17 Ed Schonberg <schonberg@adacore.com>
3562 * sem_ch3.adb (Build_Derived_Enumeration_Type): Diagnose properly
3563 illegal constraints on type derived from formal discrete types.
3565 2009-04-17 Thomas Quinot <quinot@adacore.com>
3569 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
3570 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
3571 g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb,
3572 g-socket.ads (GNAT.Sockets.Thin.C_Send,
3573 GNAT.Sockets.Thin.Syscall_Send): Remove unused subprograms.
3574 Replace calls to send(2) with equivalent sendto(2) calls.
3575 (GNAT.Sockets.Send_Socket): Factor common code in inlined subprogram.
3576 (GNAT.Sockets.Write): Account for the case of hyper-empty arrays, do not
3577 report an error in that case. Factor code common to the two versions
3578 (datagram and stream) in common routine Stream_Write.
3580 2009-04-17 Robert Dewar <dewar@adacore.com>
3582 * exp_disp.adb: Minor reformatting
3583 Minor code reorganization (use Nkind_In)
3585 * prepcomp.adb: Minor reformatting
3587 * sem_ch3.adb: Minor reformatting
3589 * sem_res.adb: Minor comment addition
3591 * exp_ch5.adb (Expand_Assign_Array): Use Has_Address_Clause to test
3594 * lib-xref.adb (Generate_Reference): Exclude recursive calls from
3595 setting Is_Referenced
3597 * types.ads: Minor reformatting
3599 2009-04-17 Arnaud Charlet <charlet@adacore.com>
3601 * gnat_ugn.texi: Initial documentation on binding generator.
3603 2009-04-17 Ed Schonberg <schonberg@adacore.com>
3605 * einfo.ads, einfo.adb: New attribute Underlying_Record_View, to handle
3606 type extensions whose parent is a type with unknown discriminants.
3608 * exp_aggr.adb (Expand_Record_Aggregate): If the type of an extension
3609 aggregate has unknown discriminants, use the Underlying_Record_View to
3610 obtain the discriminants of the ancestor part.
3612 * exp_disp.adb (Build_Dispatch_Tables): Types that are
3613 Underlying_Record_Views share the dispatching information of the
3614 original record extension.
3616 * exp_ch3.adb (Expand_Record_Extension): If the type inherits unknown
3617 discriminants, propagate dispach table information to the
3618 Underlying_Record_View.
3620 * sem_ch3.adb (Build_Derived_Private_Type): If parent type has unknown
3621 discriminants and declaration is not a completion, generate
3622 Underlying_Record_View to provide proper discriminant information to
3623 the front-end and to gigi.
3625 2009-04-17 Robert Dewar <dewar@adacore.com>
3627 * s-conca5.adb, g-sercom.adb, s-conca5.ads, s-conca7.adb, exp_imgv.adb,
3628 s-conca7.ads, s-crc32.adb, s-crc32.ads, s-conca9.adb, s-conca9.ads,
3629 s-addope.adb, i-cstrin.ads, s-addope.ads, s-carun8.adb, s-carun8.ads,
3630 g-htable.ads, g-hesora.adb, g-hesora.ads, s-htable.adb, s-htable.ads,
3631 s-conca2.adb, s-conca2.ads, a-except.adb, s-conca4.adb, a-except.ads,
3632 s-conca4.ads, s-except.adb, s-except.ads, s-conca6.adb, s-conca6.ads,
3633 g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads, s-conca8.adb,
3634 s-conca8.ads, g-byorma.adb, g-byorma.ads, s-memory.adb, s-memory.ads,
3635 g-speche.adb, g-speche.ads, g-stsifd-sockets.adb, exp_dist.adb,
3636 s-imgenu.adb, s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-exctab.adb,
3637 s-exctab.ads, s-imenne.adb, s-imenne.ads, s-casuti.adb, osint.adb,
3638 s-assert.adb, s-casuti.ads, s-assert.ads, s-os_lib.adb, s-conca3.adb,
3639 s-conca3.ads: Remove unneeded pragma Warnings
3641 2009-04-17 Robert Dewar <dewar@adacore.com>
3643 * g-moreex.adb: Add comments.
3645 * s-auxdec.ads: Add ??? comment for uncommented pragma Warnings (Off)
3647 * s-auxdec-vms_64.ads: Add ??? comment for uncommented pragma
3650 * prepcomp.adb: Add ??? comment
3652 * a-tasatt.adb: Minor reformatting
3654 * g-trasym-vms-alpha.adb: Add ??? comment
3656 * g-trasym-vms-ia64.adb: Add ??? comment
3658 * xoscons.adb: Minor reformatting
3660 * s-tassta.adb: Minor reformatting
3662 * s-scaval.adb: Add ??? comment
3664 * stand.ads: Minor code clean up (remove junk with of Namet)
3666 * s-strcom.adb, s-strcom.ads, s-string.adb, s-string.ads, s-sopco3.adb,
3667 s-sopco3.ads, s-strops.adb, s-strops.ads, s-sopco5.adb, s-sopco5.ads,
3668 s-wchcnv.adb, s-wchcnv.ads, s-ststop.adb, s-ststop.ads, s-soflin.adb,
3669 s-soflin.ads, s-traceb.adb, s-traceb.ads, s-traent.adb, s-traent.ads,
3670 s-secsta.adb, s-secsta.ads, s-utf_32.adb, s-utf_32.ads, s-wchcon.adb,
3671 s-wchjis.adb, s-wchcon.ads, s-wchjis.ads, s-sopco4.adb, s-sopco4.ads,
3672 s-stache.adb, s-stache.ads, s-stoele.adb, s-stoele.ads, s-stalib.adb,
3673 s-stalib.ads, s-os_lib.ads, s-purexc.ads: Remove no longer needed
3674 Warnings off pragmas.
3676 2009-04-17 Pascal Obry <obry@adacore.com>
3678 * initialize.c: Fix test for reallocating the arguments array.
3680 2009-04-17 Geert Bosch <bosch@adacore.com>
3682 * exp_fixd.adb (Expand_Convert_Float_To_Fixed): Have float to fixed
3683 conversion truncate only for decimal fixed point types.
3685 2009-04-17 Jerome Lambourg <lambourg@adacore.com>
3687 * g-comlin.adb (Initialize_Scan_Option): Make sure the sections are
3690 2009-04-17 Robert Dewar <dewar@adacore.com>
3692 * exp_ch5.adb (Expand_Assign_Array): Do not set Forwards_OK and
3693 Backwards_OK if either operand has an address clause.
3695 2009-04-17 Pascal Obry <obry@adacore.com>
3697 * initialize.c: Code clean up, use realloc.
3699 2009-04-17 Pascal Obry <obry@adacore.com>
3701 * initialize.c: Do not get Unicode command line if Unicode support not
3703 Add support for wildcard expansion for Unicode parameters on Win32.
3705 * mingw32.h: Add missing macros when Unicode support not activated.
3707 2009-04-17 Javier Miranda <miranda@adacore.com>
3709 * sem_ch6.adb (Check_Anonymous_Return): Add missing checks to
3710 avoid generating code that references the Current_Master
3711 when compiling without tasks.
3713 2009-04-17 Vincent Celier <celier@adacore.com>
3715 * prj-attr.adb: New project level attribute Target
3717 * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
3720 * prj.ads (Project_Configuration): New component Target
3722 2009-04-17 Thomas Quinot <quinot@adacore.com>
3724 * exp_ch7.adb (Expand_Ctrl_Function_Call): Remove incorrect special
3725 case for the case of an aggregate component, the attach call for the
3726 result is actually needed.
3728 * exp_aggr.adb (Backend_Processing_Possible): Backend processing for
3729 an array aggregate must be disabled if the component type requires
3732 * exp_ch3.adb: Minor reformatting
3734 2009-04-17 Bob Duff <duff@adacore.com>
3736 * output.ads (Indent,Outdent): New procedures for indenting the output.
3737 (Write_Char): Correct comment -- LF _is_ allowed.
3739 * output.adb (Indent,Outdent): New procedures for indenting the output.
3740 Keep track of the indentation level, and make sure it doesn't get too
3742 (Flush_Buffer): Insert spaces at the beginning of each line, if
3743 indentation level is nonzero.
3744 (Save_Output_Buffer,Restore_Output_Buffer): Save and restore the current
3746 (Set_Standard_Error,Set_Standard_Output): Remove superfluous
3747 "Next_Col := 1;". Flush_Buffer does that.
3749 * sem_ch6.adb, sem_ch7.adb (Debug_Flag_C): Reorganize the output
3750 controlled by the -gnatdc switch. It now occurs on entry/exit to the
3751 relevant analysis routines, and calls Indent/Outdent to make the
3752 indentation reflect the nesting level. Add "helper" routines, since
3753 otherwise lots of "return;" statements would skip the debugging output.
3755 2009-04-17 Arnaud Charlet <charlet@adacore.com>
3757 * s-taprop-tru64.adb, s-taprop-vms.adb, s-taprop-linux.adb,
3758 s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop-hpux-dce.adb,
3759 s-taprop-posix.adb (Suspend_Until_True): Protect against early wakeup.
3761 2009-04-17 Thomas Quinot <quinot@adacore.com>
3763 * exp_aggr.adb: Minor code reorganization, no behaviour change.
3765 2009-04-17 Ed Schonberg <schonberg@adacore.com>
3767 * sem_ch8.adb (Use_One_Type): Handle properly a redundant use type
3768 clause in a unit that is a package body or a subunit, when the previous
3769 clause appears in a spec or a parent.
3771 2009-04-17 Thomas Quinot <quinot@adacore.com>
3773 * sinfo.ads, exp_aggr.adb, exp_aggr.ads: Minor reformatting
3775 * exp_ch7.adb: Minor reformatting
3777 2009-04-17 Bob Duff <duff@adacore.com>
3779 * exp_ch4.adb (Expand_Allocator_Expression): In an initialized
3780 allocator, check that the expression of the qualified expression obeys
3781 the constraints of the subtype of the qualified expression.
3783 2009-04-17 Thomas Quinot <quinot@adacore.com>
3785 * sprint.adb (Write_Itype): Add handling of enumeration subtypes.
3787 2009-04-17 Ed Schonberg <schonberg@adacore.com>
3789 * exp_ch4.adb (Expand_Allocator_Expression): Apply constraint check to
3790 aggregate, using context imposed by subtype mark in allocator.
3792 2009-04-17 Pascal Obry <obry@adacore.com>
3794 * gnat_rm.texi: Document GNAT_CODE_PAGE environment variable
3796 2009-04-17 Nicolas Roche <roche@adacore.com>
3798 * initialize.c (__gnat_initialize): remove MAX_PATH limitation on each
3801 2009-04-17 Gary Dismukes <dismukes@adacore.com>
3803 * sem_elim.adb (Eliminate_Error_Msg): Minor change to error message to
3804 cover both calls and attribute references ("call" => "reference").
3806 2009-04-17 Ed Schonberg <schonberg@adacore.com>
3808 * sem_ch3.adb (Analyze_Subtype_Declaration): A subtype of an access
3809 type for which Storage_Size is set to 0 is legal in a pure unit.
3811 2009-04-17 Thomas Quinot <quinot@adacore.com>
3813 * exp_ch7.adb: Minor reformatting
3815 2009-04-17 Robert Dewar <dewar@adacore.com>
3817 * restrict.adb (Check_Restriction_No_Dependence): Don't check
3818 restriction if outside main extended source unit.
3820 * sem_ch10.adb (Analyze_With_Clause): Check No_Dependence restriction
3821 for parents of child units as well as the child unit itself.
3823 2009-04-17 Bob Duff <duff@adacore.com>
3825 * checks.ads: Minor comment fix
3827 * exp_aggr.ads: Minor comment fix
3829 2009-04-17 Nicolas Roche <roche@adacore.com>
3831 * adaint.c: Improve cross compiler detection and handling.
3833 2009-04-17 Eric Botcazou <ebotcazou@adacore.com>
3835 * exp_ch4.adb (Expand_Concatenation): Do not use calls at -Os.
3837 2009-04-17 Pascal Obry <obry@adacore.com>
3839 * mingw32.h: Add S2WSC and WS2SC macros to convert to/from
3842 * adaint.h: Encoding_Unspecified is now defined. Corresponds to the
3843 value when no encoding form paramter is set on Text_IO services.
3845 * adaint.c: CurrentCodePage new variable on Windows.
3846 Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
3849 * mkdir.c: Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
3852 * initialize.c: Initialize CurrentCodePage depending on GNAT_CODE_PAGE
3853 environment variable value. Default is UTF-8.
3855 * s-crtl.ads: Filename_Encoding add Unspecified in the enumeration type.
3856 fopen and freopen encoding parameter is now set to Unspecified.
3857 The default value is in this case UTF-8 (as it was before) but
3858 use the new macros that convert to/from the code page set
3859 at runtime (CurrentCodePage).
3861 * s-fileio.adb: When no encoding specified use Unspecified value.
3863 2009-04-17 Ed Schonberg <schonberg@adacore.com>
3865 * atree.adb, atree.ads: Remove dead code.
3867 2009-04-17 Arnaud Charlet <charlet@adacore.com>
3869 * gcc-interface/Make-lang.in: Update dependencies.
3871 2009-04-17 Ed Schonberg <schonberg@adacore.com>
3873 * sem_ch3.adb (Access_Subprogram_Definition): Additional checks on
3874 illegal uses of incomplete types in formal parts and return types.
3876 * sem_ch6.adb (Process_Formals): Taft-amendment types are legal in
3877 access to subprograms.
3879 * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to use
3880 Taft-amendment types as the return type of an access_to_function type.
3882 * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
3883 type for access_to_subprograms. The check is performed on package exit.
3885 2009-04-17 Ed Schonberg <schonberg@adacore.com>
3887 * atree.ads, atree.adb: Move New_Copy_Tree.to sem_util.
3889 * nlists.ads, nlists.adb: Move New_Copy_List to sem_util.
3891 * lib-load.adb: Use Copy_Separate_Tree rather than New_Copy_Tree
3893 * sem_util.ads, sem_util.adb: New_Copy_Tree and New_Copy_List belong in
3894 semantic units, because the handling of itypes in the copied tree
3895 requires semantic information that does not belong in atree.
3897 2009-04-17 Robert Dewar <dewar@adacore.com>
3899 * par-ch6.adb: Minor reformatting
3901 * prj.adb: Minor reformatting
3903 2009-04-17 Gary Dismukes <dismukes@adacore.com>
3905 * par-ch6.adb (P_Subprogram): Overriding indicators should be allowed
3906 on protected subprogram bodies, so exclude the case where Pf_Flags is
3907 Pf_Decl_Pbod from the error check.
3909 * par-ch9.adb (P_Protected_Operation_Items): Permit overriding
3910 indicators on subprograms in protected bodies, and proceed with parsing
3913 * sem_ch6.adb (Verify_Overriding_Indicator): Exclude protected
3914 subprograms from the check for primitiveness on subprograms with
3915 overriding indicators.
3916 (Check_Overriding_Indicator): Include protected subprograms in the
3917 style check for missing overriding indicators.
3919 2009-04-17 Tristan Gingold <gingold@adacore.com>
3921 * init.c: Fix stack checking for x86 Darwin.
3923 2009-04-17 Vincent Celier <celier@adacore.com>
3925 * prj-attr.adb: New project level attribute Object_File_Suffix
3928 * prj-nmsc.adb (Add_Source): Use the object file suffix to get the
3930 (Process_Compiler): Process attribute Object_File_Suffix
3932 * prj.adb (Object_Name): Use suffix Object_File_Suffix instead of
3933 platform suffix, when specified.
3935 * prj.ads (Language_Config): New component Object_File_Suffix,
3936 defaulted to No_Name.
3937 (Object_Name): New parameter Object_File_Suffix, defaulted to No_Name
3939 * snames.ads-tmpl: New standard name Object_File_Suffix
3941 2009-04-17 Robert Dewar <dewar@adacore.com>
3943 * gnat_rm.texi: Add documentation about No_Streams restriction
3945 * sem_attr.adb (Check_Stream_Attribute): Exclude implicit stream
3946 attributes when checking No_Streams restriction.
3948 2009-04-17 Thomas Quinot <quinot@adacore.com>
3950 * rtsfind.ads (RE_Request_Destroy): New PolyORB s-parint entity.
3952 * exp_dist.adb (PolyORB_Support.Build_General_Calling_Stubs): Add
3953 missing calls to RE_Request_Destroy to deallocate request objects after
3956 2009-04-17 Nicolas Setton <setton@adacore.com>
3958 * link.c: Fix support for passing a response file under Darwin.
3960 2009-04-17 Emmanuel Briot <briot@adacore.com>
3962 * prj.adb (Free): new subprogram.
3964 2009-04-17 Ed Schonberg <schonberg@adacore.com>
3966 * sem_ch3.adb: additional initialization on incomplete subtypes.
3968 * sem_ch6.adb (Process_Formals): if the subprogram is in the private
3969 part and one of the formals is an incomplete tagged type, attach to
3970 list of private dependends of the type for later validation.
3972 * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to declare
3973 primitive operations of a Taft-amendmment type.
3975 * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
3976 type. The check is performed on package exit, possibly after the
3977 subprogram is frozen.
3979 2009-04-17 Vincent Celier <celier@adacore.com>
3981 * prj-nmsc.adb (Get_Directories): Get the object and exec directory
3982 before looking for source directories, but make sure that there are nil
3983 if they are not explicitely declared and there is explicitely no
3984 sources in the project.
3986 2009-04-17 Pascal Obry <obry@adacore.com>
3988 * initialize.c: Set gnat_argv with UTF-8 encoded strings on Windows.
3990 * init.c: Fix minor typo and style fix.
3992 2009-04-17 Robert Dewar <dewar@adacore.com>
3994 * a-except.adb, a-except-2005.adb: Add PE_Address_Of_Intrinsic
3996 * sem_attr.adb (Analyze_Attribute, case Address): Use
3997 PE_Address_Of_Intrinsic.
3999 * types.ads: Add PE_Address_Of_Intrinsic
4001 * types.h: Add PE_Address_Of_Intrinsic
4003 2009-04-17 Nicolas Setton <setton@adacore.com>
4005 * gcc-interface/Makefile.in: Under darwin, build shared libraries
4006 with install_name starting with "@rpath/".
4008 2009-04-17 Nicolas Setton <setton@adacore.com>
4010 * link.c: Add darwin section
4012 2009-04-16 Robert Dewar <dewar@adacore.com>
4014 * g-pehage.adb: Minor reformatting
4016 * sem_ch12.adb: Minor reformatting
4018 * exp_dist.adb: Minor reformatting
4020 * bindgen.adb: Minor style fixes.
4022 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4024 * sem_eval.adb (Eval_Indexed_Component): Extend constant-folding of
4025 indexed components to the case where the prefix is a static string
4028 2009-04-16 Javier Miranda <miranda@adacore.com>
4030 * exp_ch3.adb (Expand_N_Object_Declaration): In case of build-in-place
4031 objects avoid any further expansion of the expression initializing the
4034 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4036 * sem_ch12.adb (Preanalyze_Actuals): If the instance is a child unit
4037 that hides an outer homograph, make that homograph invisible when
4038 analyzing the actuals, to to prevent illegal direct visibility on it.
4040 2009-04-16 Eric Botcazou <ebotcazou@adacore.com>
4042 * g-pehage.adb (Initialize): Fix off-by-one error.
4044 2009-04-16 Tristan Gingold <gingold@adacore.com>
4046 * init.c: Detect real stack overflow on Darwin.
4048 * system-darwin-x86.ads: Use stack probing on darwin x86.
4050 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4052 * sem_attr.adb (Analyze_Attribute, case 'Address): It is illegal to
4053 take the address of an intrinsic subprogram.
4055 2009-04-16 Arnaud Charlet <charlet@adacore.com>
4057 * gcc-interface/Makefile.in: Change g-trasym to g-trasym-unimplemented
4058 for the targets where GNAT.Traceback.Symbolic is not supported.
4060 2009-04-16 Vincent Celier <celier@adacore.com>
4062 * g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: New file.
4064 * g-trasym.ads: Update comments.
4066 2009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
4068 * tracebak.c (STOP_FRAME): Verify validity of the current address
4069 before dereferencing.
4071 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4073 * sprint.adb (Write_Itype): If the itype is an array subtype, preserve
4074 the original location of the index expressions and the index subtypes,
4075 to prevent spurious out-of-scope references in gigi.
4077 2009-04-16 Tristan Gingold <gingold@adacore.com>
4079 * init.c, s-osinte-darwin.ads, system-darwin-x86_64.ads:
4080 Add support for stack checking on darwin.
4082 2009-04-16 Vincent Celier <celier@adacore.com>
4084 * prj-attr.adb: New attribute Runtime_Source_Dir
4086 * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Process
4087 attribute Runtime_Source_Dir.
4088 (Check_Naming_Schemes): Give default values to out parameters to avoid
4091 * prj.ads (Language_Config): New component Runtime_Source_Dir
4093 * snames.ads-tmpl: New standard name Runtime_Source_Dir
4095 2009-04-16 Pascal Obry <obry@adacore.com>
4097 * adaint.h, adaint.c (__gnat_rmdir): New routine.
4098 Simple wrapper routines used to convert to proper encoding on
4101 * s-crtl.ads: Use __gnat_rmdir instead of direct call to the C library.
4103 * g-dirope.adb (Remove_Dir): Fix a bug, the root directory was removed
4106 2009-04-16 Pascal Obry <obry@adacore.com>
4108 * s-crtl.ads, s-os_lib.adb: Minor code clean-up.
4110 2009-04-16 Thomas Quinot <quinot@adacore.com>
4112 * snames.ads-tmpl (Name_Defined): New predefined name for use by the
4113 integrated preprocessor.
4115 * prep.ads, prep.adb (Setup_Hooks): New subprogram.
4116 (Initialize): Split into two subprograms, Initialize (to be called
4117 prior to compiler command line processing) and Setup_Hooks (to be called
4118 later on when the first source file is loaded).
4120 * gprep.adb: Change call to Prep.Initialize to call to Prep.Setup_Hooks.
4121 Add call to Prep.Initialize.
4123 * sinput-l.adb, prepcomp.adb: Change call to Prep.Initialize to call
4124 to Prep.Setup_Hooks.
4126 2009-04-16 Pascal Obry <obry@adacore.com>
4128 * adaint.h, adaint.c (__gnat_chdir): New routine.
4129 Simple wrapper routines used to convert to proper encoding on
4132 * s-crtl.ads: Use __gnat_chdir instead of direct call to the C library.
4134 * a-direct.adb, g-dirope.adb: Use chdir from System.CRTL.
4136 2009-04-16 Quentin Ochem <ochem@adacore.com>
4138 * sinput-p.adb (Clear_Source_File_Table): Use Sinput.Initialize instead
4141 2009-04-16 Eric Botcazou <ebotcazou@adacore.com>
4143 * a-convec.ads (Is_Empty): Mark inline.
4145 2009-04-16 Nicolas Roche <roche@adacore.com>
4147 * init.c (__gnat_init_float): Initialize FPU on x86_64 windows
4149 2009-04-16 Thomas Quinot <quinot@adacore.com>
4151 * prepcomp.adb: Minor reformatting
4153 2009-04-16 Jerome Lambourg <lambourg@adacore.com>
4155 * sem_prag.adb (Process_Import_Or_Interface): With .NET,
4156 Access_Subprogram types can also be imported.
4157 (Check_Form_Of_Interface_Name): Accept '/' character in entity CIL
4160 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4162 * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
4163 preserve homonym chain when the declaration is rewritten into a
4164 renaming declaration, in order to preserve visibility structure.
4166 2009-04-16 Jerome Lambourg <lambourg@adacore.com>
4168 * sem_prag.adb (Analyze_Pragma): Make sure that pragma pack is not
4169 taken into account for VM targets.
4171 2009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
4173 * g-calend.ads, g-calend.adb (Week_In_Year): Now calls
4175 (Year_Week_In_Year): New routine which contains the original code from
4176 Week_In_Year. Add the missing special case for January 1st falling on
4179 2009-04-16 Thomas Quinot <quinot@adacore.com>
4181 * exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic
4182 actual type, use the base type to build the To_Any function.
4183 (Build_From_Any_Function): Remove junk, useless subtype conversion.
4185 2009-04-16 Thomas Quinot <quinot@adacore.com>
4187 * exp_ch9.adb, exp_code.adb, tbuild.adb, sem_case.adb,
4188 restrict.adb: Minor code reorganization (use
4189 Add_{Char,Str}_To_Name_Buffer instead of inlining it by hand).
4191 2009-04-16 Bob Duff <duff@adacore.com>
4193 * exp_ch6.ads, exp_ch6.adb (Is_Build_In_Place_Function_Return): Remove,
4196 2009-04-16 Thomas Quinot <quinot@adacore.com>
4198 * sem_ch4.adb: Minor reformatting
4200 * adaint.c: Remove junk duplicated code.
4202 * sem_ch3.adb: Minor reformatting
4204 * exp_dist.adb: Minor comment rewording
4206 2009-04-16 Robert Dewar <dewar@adacore.com>
4208 * gnat_rm.texi: Document effect of Assume_No_Invalid_Values and -gnatVa
4211 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4213 * sem_ch4.adb (Find_Equality_Types): Filter out types that are not
4214 usable before calling Add_One_Interp, to resolve spurious ambiguities.
4216 2009-04-16 Robert Dewar <dewar@adacore.com>
4218 * Make-lang.in: Add entries for s-conca?.o
4220 * Makefile.rtl: Add entries for s-conca?
4222 * debug.adb: Add debug flags -gnatd.c and -gnatd.C to control behavior
4223 of concatenation expansion
4225 * exp_ch4.adb (Expand_Concatenation): Generate calls for certain
4226 string cases instead of expanding assignments inline.
4228 * opt.ads (Optimize_Size): New flag
4230 * s-conca2.ads, s-conca2.adb, s-conca3.adb, s-conca3.ads,
4231 s-conca4.adb, s-conca4.ads, s-conca5.adb, s-conca5.ads, s-conca6.adb,
4232 s-conca6.ads, s-conca7.ads, s-conca7.adb, s-conca8.adb, s-conca8.ads,
4233 s-conca9.adb, s-conca9.ads: New file.
4235 2009-04-16 Robert Dewar <dewar@adacore.com>
4237 * exp_ch6.adb: Add comments
4239 * rtsfind.ads: Add entries for s-conca? routines
4241 2009-04-16 Arnaud Charlet <charlet@adacore.com>
4243 * gcc-interface/Make-lang.in: Update dependencies.
4245 * gcc-interface/Makefile.in: Update translation for vms.
4247 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4249 * sem_ch12.adb (Map_Formal_Package_Entities): renamed from Map_Entities
4250 and made global, to be used when installing parents of a child
4251 instance, to provide mappings for entities declared in formal packages
4252 of ancestor units. Now called from Install_Formal_Packages.
4254 2009-04-16 Doug Rupp <rupp@adacore.com>
4256 * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events with others
4257 notation for clarity.
4259 * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
4260 s-taprop-mingw.adb, s-taprop-linux.adb, s-taprop-solaris.adb,
4261 s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-posix.adb
4262 (Initialize): Initialize Known_Tasks with Environment task.
4264 * s-taskin.ads (Task_States): Move new states to end for the sake of
4267 * s-tassta.adb (Task_Wrapper): Fix comment about Enter_Task.
4269 2009-04-16 Ed Schonberg <schonberg@adacore.com>
4271 * exp_ch9.adb (Expand_N_Protected_Type_Declaration): If a protected
4272 operation has an inline pragma, propagate the flag to the internal
4273 unprotected subprogram.
4275 2009-04-16 Doug Rupp <rupp@adacore.com>
4277 * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-mingw.adb,
4278 s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-irix.adb,
4279 s-taprop-hpux-dce.adb, s-taprop-posix.adb
4280 (Enter_Task): Move Known_Tasks initialization to s-tassta.adb
4282 * s-taprop-vms.adb (Enter_Task): Likewise.
4283 (Initialize): Import DBEXT, Debug_Register. Register DBGEXT callback.
4285 * s-tassta.adb (Activate_Tasks): After task creation set state to
4286 Activating, vice Runnable. Initialize Known_Tasks, moved here from
4287 s-taprop.adb (Enter_Task). Set Debug_Event_Activating for debugger.
4288 Set state to Runnable after above.
4289 (Task_Wrapper): Set Debug_Event_Run. In exception block set
4290 Debug_Event_Terminated.
4292 * s-taskin.ads (Task_States): Add new states Activiting and
4293 Activator_Delay_Sleep.
4294 (Bit_Array, Debug_Event_Array): New types.
4295 (Global_Task_Debug_Event_Set: New flag.
4296 (Common_ATCB): New field Debug_Events.
4298 * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events.
4300 * s-tasren.adb (Timed_Selective_Wait): Set Activator_Delay_Sleep vice
4303 * s-tasini.adb (Locked_Abort_To_Level): Add case alternatives for when
4304 Activating and when Acceptor_Delay_Sleep.
4306 * s-tasdeb.ads: Add constants for Debug_Events.
4307 (Debug_Event_Kind_Type): New subtype.
4308 (Signal_Debug_Event): New subprogram.
4310 * s-tasdeb.adb (Signal_Debug_Event): New null subprogram.
4312 2009-04-16 Thomas Quinot <quinot@adacore.com>
4314 * sem_elim.adb: Minor reformatting
4316 * freeze.adb: Minor reformatting
4318 * exp_ch4.adb: Minor reformatting
4320 2009-04-16 Emmanuel Briot <briot@adacore.com>
4322 * prj-nmsc.adb (Path_Name_Of): fix memory leak
4324 2009-04-16 Robert Dewar <dewar@adacore.com>
4326 * sinfo.ads (Backwards_OK, Forwards_OK): Clarify documentation
4328 2009-04-16 Vincent Celier <celier@adacore.com>
4330 * fmap.adb (Initialize): Show the current line when the mapping file
4331 is detected as "incorrectly formatted".
4333 2009-04-16 Robert Dewar <dewar@adacore.com>
4335 * sem_ch12.adb: Minor reformatting
4337 * sem_ch5.adb: Minor comment addition
4339 * sem_util.adb: Minor reformatting
4341 * sinput-p.adb: Minor reformatting
4342 Add missing pragma Warnings (On)
4344 2009-04-16 Ed Falis <falis@adacore.com>
4346 * s-vxwext-kernel.adb: (ERROR): deleted unused constant
4348 2009-04-16 Vincent Celier <celier@adacore.com>
4350 * ali-util.adb: Minor comment spelling error fix
4352 2009-04-16 Eric Botcazou <ebotcazou@adacore.com>
4354 * exp_ch5.adb (Expand_Assign_Array): For the GCC back-end, do not
4355 generate an assignment loop in case of overlap.
4357 2009-04-16 Olivier Hainque <hainque@adacore.com>
4359 * gnat_ugn.texi (gnatmem description): Make it explicit that
4360 gnatmem is designed to work in association with static runtime
4363 2009-04-16 Thomas Quinot <quinot@adacore.com>
4365 * sem_type.adb: Minor reformatting
4367 2009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
4369 * s-osprim-darwin.adb, s-osprim-posix.adb (Clock): Add comment
4370 concerning return codes of gettimeofday and return value check.
4372 2009-04-16 Ed Falis <falis@adacore.com>
4374 * s-vxwext-kernel.ads (Int_Lock, Int_Unlock): set to convention C so
4375 body can be renaming of imported routines.
4377 2009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
4379 * s-asthan-vms-alpha.adb: Disable warnings on alignment in a more
4382 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
4384 * exp_ch9.adb: Comment improvements.
4385 (Build_Entry_Family_Name): Add parentheses around the index of a entry
4388 2009-04-15 Bob Duff <duff@adacore.com>
4390 * sem_warn.adb (Check_Infinite_Loop_Warning): Catch cases like
4391 "while X /= null loop" where X is unchanged inside the loop. We were
4392 not warning in this case, because of the pointers -- we feared that the
4393 loop variable could be updated via a pointer, if there are any pointers
4394 around the place. But that is impossible in this case.
4396 * sem_util.adb (May_Be_Lvalue): This routine was overly pessimistic in
4397 the case of dereferences. In X.all, X cannot be an l-value. We now
4398 catch that case (and implicit dereferences, too).
4400 2009-04-15 Vincent Celier <celier@adacore.com>
4402 * sinput-p.ads, sinput-p.adb (Clear_Source_File_Table): New procedure
4404 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4406 * sem_ch12.adb (Is_Actual_Of_Previous_Formal): Make fully recursive.
4408 (Analyze_Package_Instantiation): If generic unit in child instance is
4409 the same as generic unit in parent instance, look for an outer homonym
4410 to locate the desired generic.
4412 2009-04-15 Bob Duff <duff@adacore.com>
4414 * sem_ch5.adb (Analyze_Loop_Statement): Don't check for infinite loop
4415 warnings unless the loop comes from source, because checking generated
4416 loops is a waste of time, and makes it harder to debug
4417 Check_Infinite_Loop_Warning.
4419 * sem_warn.adb (Check_Infinite_Loop_Warning): If the local variable
4420 tested in the while loop is a renaming, do not warn. Otherwise, we get
4421 false alarms, because it's usually renaming something that we can't
4422 deal with (an indexed component, a global variable, ...).
4424 * gnat_rm.texi: Fix typo
4426 2009-04-15 Thomas Quinot <quinot@adacore.com>
4428 * sem_ch6.adb: Minor reformatting
4430 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
4432 * exp_ch7.adb (Expand_Ctrl_Function_Call): Check for the case where the
4433 immediate parent of the controlled function call is a component
4436 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4438 * sem_ch8.adb (Use_One_Type): If the type is tagged, indicate that the
4439 corresponding class-wide type is also in use.
4441 2009-04-15 Thomas Quinot <quinot@adacore.com>
4443 * frontend.adb: Minor comment fix
4445 2009-04-15 Robert Dewar <dewar@adacore.com>
4447 * gnatchop.adb (BOM_Length): New global variable
4448 (Write_Unit): Add new parameter Write_BOM
4449 (Write_Chopped_Files): Check for BOM and set Write_BOM for call
4452 * gnat_ugn.texi: Add note on propagation of BOM by gnatchop
4454 2009-04-15 Geert Bosch <bosch@adacore.com>
4456 * system-mingw-x86_64.ads, system-darwin-x86_64.ads
4457 (Backend_Overflow_Checks): Set to True.
4459 2009-04-15 Gary Dismukes <dismukes@adacore.com>
4461 * par-ch3.adb (P_Type_Declaration): Issue an error if the synchronized
4462 keyword is given in a record extension.
4464 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
4466 * exp_ch7.adb (Expand_Ctrl_Function_Call): Procede with the expansion
4467 of a controlled function call in the context of a record aggregate.
4468 This does not apply to array aggregates since the call will be expanded
4471 2009-04-15 Ed Falis <falis@adacore.com>
4473 * s-osinte-vxworks-kernel.adb, s-osinte-vxworks.adb,
4474 s-osinte-vxworks.ads s-vxwext.ads, s-vxwext-kernel.adb,
4475 s-vxwext-kernel.ads, s-vxwext-rtp.ads, s-vxwext-rtp.adb: Reorganize
4476 s-osinte-vxworks* and s-vxwext*.
4478 2009-04-15 Arnaud Charlet <charlet@adacore.com>
4480 * gcc-interface/Make-lang.in: Update dependencies.
4482 * gcc-interface/Makefile.in: Reorganization of s-osinte-vxworks*
4485 2009-04-15 Robert Dewar <dewar@adacore.com>
4487 * sem_ch13.adb (Unchecked_Conversions): Store source location instead
4488 of node for location for warning messages.
4490 * gnatchop.adb: Minor reformatting
4492 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4494 * exp_ch6.adb: additional guard for renaming declarations for in
4495 parameters of an array type.
4497 2009-04-15 Robert Dewar <dewar@adacore.com>
4499 * sem_eval.adb (Get_Static_Length): Go to origin node for array bounds
4500 in case they were rewritten by expander (Force_Evaluation).
4502 * targparm.adb (Get_Target_Parameters): Correct check for
4503 Suppress_Exception_Locations.
4505 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4507 * exp_ch6.adb (Expand_Inlined_Call): If an in-parameter in a call to be
4508 inlined is of an array type that is not bit-packed, use a renaming
4509 declaration to capture its value, rather than a constant declaration.
4511 2009-04-15 Robert Dewar <dewar@adacore.com>
4513 * rtsfind.adb: Minor reformatting.
4515 2009-04-15 Emmanuel Briot <briot@adacore.com>
4517 * prj-part.adb, prj-tree.adb, prj-tree.ads (Restore_And_Free): renames
4518 Restore, and free the saved context.
4520 2009-04-15 Gary Dismukes <dismukes@adacore.com>
4522 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Move error check
4523 for illegal private extension from a synchronized interface parent in
4524 front of check for illegal limited extension so that limited extension
4525 from a synchronized interface will be rejected.
4526 (Check_Ifaces): Check that a private extension that has a synchronized
4527 interface as a progenitor must be explicitly declared synchronized.
4528 Also check that a record extension cannot derive from a synchronized
4531 2009-04-15 Pascal Obry <obry@adacore.com>
4533 * adaint.h (__gnat_unlink): Add spec.
4534 (__gnat_rename): Likewise.
4536 2009-04-15 Vincent Celier <celier@adacore.com>
4538 * prj-nmsc.adb: Minor spelling error corrections in error messages
4540 2009-04-15 Robert Dewar <dewar@adacore.com>
4542 * sinfo.ads: Minor comment update
4544 * opt.ads: Minor comment updates
4546 * checks.adb (Enable_Overflow_Check): Do not set Do_Overflow_Check for
4549 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4551 * exp_disp.ads, exp_disp.adb (Register_Primitive): Is now a function
4552 that generates the code needed to update a dispatch table when a
4553 primitive operation is declared with a subprogram body without previous
4554 spec. Insertion of the generated code is responsibility of the caller.
4555 (Make_DT): When building static tables, append the code created by
4556 Register_Primitive to update a secondary table after it has been
4559 * exp_ch3.adb, exp_ch6.adb: use new version of Register_Primitive.
4561 * sem_disp.adb (Check_Dispatching_Operation): Call Register_Primitive
4562 on an overriding operation that implements an interface operation only
4563 if not building static dispatch tables.
4565 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
4567 * a-caldel-vms.adb (To_Duration): Declare a "safe" end of time which
4568 does not cause overflow when converted to Duration. Use the safe value
4569 as the maximum allowable time delay..
4571 2009-04-15 Jerome Lambourg <lambourg@adacore.com>
4573 * g-comlin.adb (Set_Command_Line): When adding a switch with attached
4574 parameter, specify that the delimiter is NUL, otherwise "-j2" will be
4575 translated to "-j 2".
4577 2009-04-15 Bob Duff <duff@adacore.com>
4579 * rtsfind.adb (Maybe_Add_With): Split out procedure to add implicit
4580 with_clauses, to avoid code duplication. Change this processing so we
4581 always add a with_clause on the main unit if needed.
4583 2009-04-15 Pascal Obry <obry@adacore.com>
4585 Add support for Win32 native encoding for delete/rename routines.
4587 * adaint.c (__gnat_unlink): New routine.
4588 (__gnat_rename): New routine.
4589 Simple wrapper routines used to convert to proper encoding on
4592 * s-os_lib.adb: Use __gnat_unlink and __gnat_rename instead of direct
4593 call to the C library.
4595 * g-sercom-mingw.adb, s-win32.ads: Update Win32 binding.
4597 2009-04-15 Robert Dewar <dewar@adacore.com>
4599 * s-tassta.adb: Minor reformatting
4601 2009-04-15 Robert Dewar <dewar@adacore.com>
4603 * frontend.adb (Frontend): Set proper default for
4604 Warn_On_Non_Local_Exception.
4606 * opt.ads (Exception_Handler_Encountered): New flag
4607 (No_Warn_On_Non_Local_Exception): New flag
4609 * par-ch11.adb (P_Exception_Handler): Set Exception_Handler_Encountered
4611 * sem_warn.adb (Set_Warning_Switch): Set No_Warn_On_Non_Local_Exception
4612 (Set_Dot_Warning_Switch): Set No_Warn_On_Non_Local_Exception
4614 2009-04-15 Cyrille Comar <comar@adacore.com>
4616 * s-tassta.adb, a-exextr.adb, a-elchha.adb
4617 (Ada.Exception.Last_Chance_Handler): Do not print unhandled exception
4618 message when exception traces are active since it would generate
4619 redundant information.
4620 (Exception_Traces.Notify_Exception): put message output by a critical
4621 section to avoid unsynchronized output.
4622 (Trace_Unhandled_Exception_In_Task): put message output by a critical
4623 section to avoid unsynchronized output.
4625 2009-04-15 Emmanuel Briot <briot@adacore.com>
4627 * g-comlin.adb, prj-tree.adb, prj-tree.ads, prj.adb, prj.ads
4628 (Free): New subprogram.
4630 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
4632 * a-calend.adb: Add new constant Nanos_In_Four_Years.
4633 (Formatting_Operations.Time_Of): Change the way four year chunks of
4634 nanoseconds are added to the intermediate result.
4636 2009-04-15 Nicolas Setton <setton@adacore.com>
4638 * sysdep.c: Add __APPLE__ in the list of systems where get_immediate
4639 does not need to wait for a carriage return.
4641 2009-04-15 Tristan Gingold <gingold@adacore.com>
4643 * bindgen.adb: Do not generate adafinal if No_Finalization restriction
4646 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4648 * freeze.adb (Freeze_Entity): improve error message for improper use of
4650 Diagnose additional illegal uses of incomplete types in formal parts.
4651 appearing in formal parts.
4653 * sem_ch6.adb (Process_Formals, Analyze_Return_Type): ditto.
4655 2009-04-15 Robert Dewar <dewar@adacore.com>
4657 * exp_ch4.adb (Expand_N_Allocator): Install test for object too large.
4659 2009-04-15 Nicolas Roche <roche@adacore.com>
4661 * adaint.c: Add function __gnat_lwp_self that retrieves the LWP of the
4664 * s-osinte-linux.ads: Import the __gnat_lwp_self function as lwp_self
4666 * s-taprop-linux.adb (Enter_Task): Store the LWP in the TCB
4668 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4670 * sem_ch4.adb: improve error message on exponentiation.
4672 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
4674 * a-calend.adb: Move constant Epoch_Offset from package
4675 Conversion_Operations to top level.
4676 (Delay_Operations.To_Duration): Define a constant which represents
4677 "end of time" and use it as a guard against very distant delay dates.
4678 Protect the code against overflow when performing the origin shift to
4681 2009-04-15 Robert Dewar <dewar@adacore.com>
4683 * sem_prag.adb: Minor reformatting.
4685 * sem_type.adb: Minor reformatting
4687 2009-04-15 Javier Miranda <miranda@adacore.com>
4689 * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Add missing
4690 support to check eliminated subprograms.
4692 * sem_elim.ads (Eliminate_Error_Msg): Update documentation.
4694 * sem_elim.adb (Set_Eliminated): Add support for elimination of
4695 dispatching subprograms.
4697 * exp_disp.adb (Make_DT): Minor code cleanup when freezing primitive
4698 operations. Initialize with "null" the slots of eliminated dispaching
4700 (Write_DT): Add output for eliminated primitives.
4702 * sem_disp.adb (Check_Dispatching_Call): Check eliminated primitives.
4704 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4706 * sem_ch8.adb (Use_One_Type): If both clauses appear on the same unit,
4707 the second is redundant, regardless of scopes.
4709 2009-04-15 Vincent Celier <celier@adacore.com>
4711 * prj-nmsc.adb (Get_Directories): Check for sources before checking
4712 the object directory as when there are no sources, they may not be any
4715 * make.adb (Gnatmake): Do not attempt to get the path name of the exec
4716 directory, when there are no exec directory.
4718 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4720 * sem_type.adb (Remove_Conversions): In order to resolve spurious
4721 ambiguities, refine removal of universal interpretations from complex
4722 expressions with literal arguments, when some numeric operators have
4723 been declared abstract.
4725 2009-04-15 Ed Falis <falis@adacore.com>
4727 * init.c: Map SIGSEGV to Storage_Error for all targets for uniformity
4728 and backward compatibility for targets using probing for stack overflow
4730 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4732 * sem_prag.adb (Analyze_Pragma, case 'Obsolescent): Pragma is legal
4733 after any declaration, including renaming declarations.
4735 2009-04-15 Arnaud Charlet <charlet@adacore.com>
4737 * gcc-interface/Make-lang.in: Update dependencies.
4739 * gcc-interface/Makefile.in: Fix VxWorks target pairs.
4740 Update xenomai target pairs.
4742 2009-04-15 Javier Miranda <miranda@adacore.com>
4744 * exp_ch4.adb (Expand_N_Allocator): Code cleanup.
4746 * sem_ch6.adb (Check_Anonymous_Return): Add missing support for
4747 functions returning anonymous access to class-wide limited types. Mark
4748 also the containing scope as a task master.
4750 * sem_ch8.adb (Restore_Scope_Stack): Add missing management for
4751 limited-withed packages. Required to restore their visibility after
4752 processing packages associated with implicit with-clauses.
4754 * exp_ch3.adb (Build_Class_Wide_Master): Avoid marking masters
4755 associated with return statements because this work is now done by
4756 Check_Anonymous_Return.
4757 (Build_Master): Code cleanup.
4759 2009-04-15 Thomas Quinot <quinot@adacore.com>
4761 * sem_warn.ads: Minor reformatting
4763 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4765 * sem_ch3.adb: better error message for illegal interfaces
4767 * sem_ch6.adb (Possible_Freeze): Delay freezing a subprogram if a
4768 formal is an incomplete type from a limited_with clause.
4770 2009-04-15 Vincent Celier <celier@adacore.com>
4772 * prj-nmsc.adb (Locate_Directory): New Boolean parameter
4773 Externally_Built indicating if the project is externally built. If it
4774 is, and --subdirs is specified, but the subdir does not exist, look
4775 for the specified directory, without the subdir.
4777 2009-04-15 Gary Dismukes <dismukes@adacore.com>
4779 * a-tasatt.adb: Fix typo, plus minor reformatting
4781 * sem_ch3.ads: Add missing hyphen ("class wide" => "class-wide").
4783 * sem_ch10.adb: Add missing hyphen ("use visible" => "use-visible").
4785 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4787 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Verify that a
4788 private extension whose parent is a synchronized interface carries an
4789 explicit synchronized keyword.
4791 2009-04-15 Thomas Quinot <quinot@adacore.com>
4793 * exp_smem.adb (Make_Shared_Var_Procs): For a protected type,
4794 instantiate generic shared object package with the corresponding
4797 2009-04-15 Arnaud Charlet <charlet@adacore.com>
4799 * system-linux-sparc.ads: Remove obsolete entries.
4801 2009-04-15 Thomas Quinot <quinot@adacore.com>
4803 * s-tasuti.ads: Add ??? comment
4805 2009-04-15 Ed Schonberg <schonberg@adacore.com>
4807 * sem_ch3.adb (Analyze_Type_Declaration): Create freeze node for access
4808 type even if the designated type comes from a limited_with clause, to
4809 ensure that the symbol for the finalization list of the access type is
4812 2009-04-10 Robert Dewar <dewar@adacore.com>
4814 * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): Catch more cases
4815 for warning suppression.
4817 2009-04-10 Ed Schonberg <schonberg@adacore.com>
4819 * sem_ch8.adb (Use_One_Type): If the two use_type clauses are
4820 identical, there is no redudancy to check.
4822 2009-04-10 Gary Dismukes <dismukes@adacore.com>
4824 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Delete redundant
4825 calls initializing SS_Allocator (which is initialized in following
4827 (Expand_Simple_Function_Return): Add comment about False value for
4828 Comes_From_Source on secondary-stack allocator.
4830 * exp_ch9.adb (Build_Entry_Family_Name): Add comment.
4831 (Build_Entry_Name): Add comment.
4833 2009-04-10 Robert Dewar <dewar@adacore.com>
4835 * einfo.ads, einfo.adb (Low_Bound_Tested): New name for Low_Bound_Known
4837 * sem_prag.adb (Analyze_Pragma, case Check): Remove check for lower
4838 bound tested, since this is now done more generally in Sem_Res.
4840 * sem_res.adb (Resolve_Comparison_Op): Add call to
4841 Check_Lower_Bound_Tested.
4842 (Resolve_Equality_Op): Add call to Check_Lower_Bound_Tested
4844 * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): New procedure
4845 (Low_Bound_Tested): New name for Low_Bound_Known flag
4847 * exp_ch5.adb: Minor reformatting
4850 Add comments on copying the Comes_From_Source flag for allocators
4853 Add comments on copying the Comes_From_Source flag for allocators
4855 * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Copy
4856 Comes_From_Source flag from old allocator to new one.
4858 2009-04-10 Ed Schonberg <schonberg@adacore.com>
4860 * sem_ch6.ads: Address missing documentation query
4862 2009-04-10 Vincent Celier <celier@adacore.com>
4865 Add new Linker attributes Max_Command_Line_Length, Response_File_Format
4866 and Response_File_Switches.
4868 * prj-nmsc.adb (Process_Linker): Process new attributes
4869 Max_Command_Line_Length, Response_File_Format and
4870 Response_File_Switches.
4872 * prj.ads (Response_File_Format): New enumeration type
4873 (Project_Configuration): New componants Max_Command_Line_Length,
4874 Resp_File_Format and Resp_File_Options.
4876 * snames.ads-tmpl: Add new standard names for linking response files
4877 for gprbuild: GNU, None, Object_List, Option_List,
4878 Max_Command_Line_Length, Response_File_Format and
4879 Response_File_Switches.
4881 2009-04-10 Geert Bosch <bosch@adacore.com>
4883 * system-aix.ads, system-darwin-ppc.ads, system-darwin-x86.ads,
4884 system-freebsd-x86.ads, system-hpux.ads, system-hpux-ia64.ads,
4885 system-irix-n32.ads, system-irix-o32.ads, system-linux-alpha.ads,
4886 system-linux-hppa.ads, system-linux-ia64.ads, system-linux-ppc.ads,
4887 system-linux-s390.ads, system-linux-s390x.ads, system-linux-sh4.ads,
4888 system-linux-sparc.ads, system-linux-x86_64.ads, system-linux-x86.ads,
4889 system-mingw.ads, system-solaris-sparc.ads, system-solaris-sparcv9.ads,
4890 system-solaris-x86.ads, system-tru64.ads, system-vms_64.ads,
4891 system-vms.ads, system-vms-ia64.ads, system-vms-zcx.ads,
4892 system-vxworks-arm.ads, system-vxworks-m68k.ads,
4893 system-vxworks-mips.ads, system-vxworks-ppc.ads,
4894 system-vxworks-sparcv9.ads, system-vxworks-x86.ads
4895 (Backend_Overflow_Checks): Set to True.
4897 2009-04-10 Thomas Quinot <quinot@adacore.com>
4899 * exp_attr.adb: Minor reformatting
4901 2009-04-10 Ed Schonberg <schonberg@adacore.com>
4903 * sem_prag.adb (Check_Precondition_Postcondition): Within a generic,
4904 analyze the expression for a postcondition, even if the compiler mode
4907 2009-04-10 Robert Dewar <dewar@adacore.com>
4909 * sem_aux.adb: Minor reformatting
4911 2009-04-10 Ed Falis <falis@adacore.com>
4913 * init.c: Change VxWorks 6 stack overflow checking for kernel apps.
4915 * system-vxworks-ppc.ads, system-vxworks-x86.ads: Update header.
4917 2009-04-10 Thomas Quinot <quinot@adacore.com>
4919 * sem_ch6.ads (Check_Subtype_Conformant): Add ??? comment for
4920 undocumented formal.
4923 * a-direio.ads: Fix typo in comment
4925 * sem_ch3.adb, g-dirope.adb, sem_type.adb, sem_ch12.adb, sem_case.adb,
4926 errout.adb, sem_ch4.adb, sem_ch11.adb, exp_dist.adb, sem_ch13.adb:
4927 Use uniform phrasing for comment at start of subprogram body.
4929 * xsnamest.adb: Add note to explain why we use specific names for the
4930 newly generated files instead of generating snames.{ads,adb,h} directly
4932 2009-04-10 Sergey Rybin <rybin@adacore.com>
4935 Add qualifier for new gnatstub option '--no-exception'
4938 Add the description of the new gnatstub option '--no-exception'
4940 2009-04-10 Robert Dewar <dewar@adacore.com>
4942 * rtsfind.adb: Minor reformatting
4944 2009-04-10 Thomas Quinot <quinot@adacore.com>
4946 * sem_disp.adb: Minor reformatting.
4947 Add comment pointing to RM clause for the case of warning against a
4948 (failed) attempt at declaring a primitive operation elsewhere than in a
4951 2009-04-10 Ed Schonberg <schonberg@adacore.com>
4953 * sem_ch12.adb (Denotes_Formal_Package): Check whether the package is
4954 an actual for a previous formal package of the current instance.
4956 2009-04-10 Bob Duff <duff@adacore.com>
4958 * rtsfind.adb (RTE): Put implicit with_clauses on whatever unit needs
4959 them first, rather than on the extended main unit.
4961 2009-04-10 Ed Schonberg <schonberg@adacore.com>
4963 * sem_ch6.adb (Check_Discriminant_Conformance): If discriminant
4964 specification of full view carries a null exclusion indicator, create
4965 an itype for it, to check for conformance with partial view.
4967 2009-04-10 Bob Duff <duff@adacore.com>
4969 * rtsfind.ads: Minor code change: make RE_Unit_Table constant.
4971 * rtsfind.adb: Minor comment changes, and remove useless code.
4973 * sinfo.ads: Add ??? comment.
4975 2009-04-10 Vincent Celier <celier@adacore.com>
4977 * vms_data.ads: Add missing GNAT SYNC VMS qualifiers -main= and -U
4979 2009-04-10 Ed Schonberg <schonberg@adacore.com>
4981 * exp_attr.adb (Expand_N_Attribute_Reference, case 'Tag): If the tagged
4982 type is a synchronized type, retrieve tag information from the
4983 corresponding record, which has the dispatch table link.
4985 2009-04-10 Jerome Lambourg <lambourg@adacore.com>
4987 * g-comlin.adb (Group_Analysis): Take care of switches that might be
4988 decomposed afterwards, but are present as-is in the command line
4989 configuration, and thus should be kept as-is.
4991 2009-04-10 Robert Dewar <dewar@adacore.com>
4993 * gnat_rm.texi: Document that postconditions are tested on implicit
4996 * sem_aux.adb: Minor reformatting
4998 2009-04-10 Gary Dismukes <dismukes@adacore.com>
5000 * itypes.adb (Create_Null_Excluding_Itype): Apply Base_Type when
5003 * par-ch3.adb (P_Access_Type_Definition): Set new attribute
5004 Null_Exclusion_In_Return_Present when an access-to-function type has a
5005 result type with an explicit not null.
5007 * sem_ch3.adb (Access_Subprogram_Definition): If a null exclusion is
5008 given on the result type, then create a null-excluding itype for the
5011 * sem_ch6.adb (Analyze_Return_Type): Create a null-excluding itype in
5012 the case where a null exclusion is imposed on a named access type.
5013 (Analyze_Subprogram_Specification): Push and pop the scope of the
5014 function around the call to Analyze_Return_Type in the case of no
5015 formals, for consistency with handling when formals are present
5016 (Process_Formals does this). Ensures that any itype created for the
5017 return type will be associated with the proper scope.
5019 * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): If a null
5020 exclusion is given on a generic function's result type, then create a
5021 null-excluding itype for the generic function.
5022 (Instantiate_Object): Set Null_Exclusion_Present of a constant created
5023 for an actual for a formal in object according to the setting on the
5024 formal. Ensures null exclusion checks are done when the association is
5027 * sinfo.ads: Add new flag Null_Exclusion_In_Return_Present on
5028 N_Access_Function_Definition.
5030 * sinfo.adb: Add Get_ and Set_ operations for
5031 Null_Exclusion_In_Return_Present.
5033 2009-04-10 Bob Duff <duff@adacore.com>
5035 * exp_ch5.adb, exp_ch6.adb, sem_ch6.adb: Move the code that creates a
5036 call to the _Postconditions procedure in the case of implicit returns
5037 from analysis to expansion. This eliminates some duplicated code. Use
5038 the Postcondition_Proc to find the identity of this procedure during
5041 2009-04-10 Robert Dewar <dewar@adacore.com>
5043 * sem_ch6.adb: Minor code clean up.
5045 * einfo.ads, sem_attr.adb: Minor comment fixes.
5047 2009-04-10 Robert Dewar <dewar@adacore.com>
5049 * sem_ch8.adb: Minor reformatting
5051 2009-04-10 Robert Dewar <dewar@adacore.com>
5053 * einfo.ads, einfo.adb (Postcondition_Proc): New attribute for
5056 * sem_ch6.adb: Minor code clean up.
5058 2009-04-10 Robert Dewar <dewar@adacore.com>
5060 * mlib-tgt-specific-xi.adb: Minor reformatting
5062 2009-04-10 Bob Duff <duff@adacore.com>
5064 * einfo.ads: Minor comment fixes
5066 2009-04-10 Vincent Celier <celier@adacore.com>
5068 * snames.ads-tmpl: Remove names that are no longer used in the
5070 Mark specifically those that are used only in gprbuild
5072 2009-04-10 Eric Botcazou <ebotcazou@adacore.com>
5074 * init.c: Adjust EH support code on Alpha/Tru64.
5076 2009-04-10 Bob Duff <duff@adacore.com>
5078 * sem_ch6.adb (Process_PPCs): Add a call to the _Postconditions
5079 procedure on every path that could return implicitly (not via a return
5080 statement) from a procedure.
5082 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5084 * exp_ch9.adb (Build_Master_Entity): An extended return statement is a
5085 valid scope for a task declarations and therefore for a master id.
5087 2009-04-10 Robert Dewar <dewar@adacore.com>
5089 * sem_aux.adb: Minor reformatting
5091 2009-04-10 Vincent Celier <celier@adacore.com>
5093 * scn.adb (Obsolescent_Check_Flag): New Boolean flag, initialized to
5095 (Obsolescent_Check): Do nothing if Obsolescent_Check_Flag is False
5096 (Set_Obsolescent_Check): New procedure to change the value of
5097 Obsolescent_Check_Flag.
5099 * scn.ads (Set_Obsolescent_Check): New procedure to control
5102 * sinput-l.adb (Load_File): Do not check for pragma Restrictions on
5103 obsolescent features while preprocessing.
5105 2009-04-10 Thomas Quinot <quinot@adacore.com>
5107 * xsnamest.adb: Use XUtil to have uniform line endings (UNIX style) in
5108 generated files on all platforms.
5110 2009-04-10 Robert Dewar <dewar@adacore.com>
5112 * sem_aux.adb: Minor reformatting
5114 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5116 * sem_ch3.adb (Access_Definition): Handle properly the case of a
5117 protected function with formals that returns an anonymous access type.
5119 2009-04-10 Thomas Quinot <quinot@adacore.com>
5121 * sem_disp.adb: Minor reformatting
5123 2009-04-10 Vasiliy Fofanov <fofanov@adacore.com>
5125 * seh_init.c: Do not use the 32-bit specific implementation of
5126 __gnat_install_SEH_handler on 64-bit Windows target (64-bit specific
5129 2009-04-10 Jose Ruiz <ruiz@adacore.com>
5131 * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Target_Name may contain
5132 a '/' at the end so we better use the complete target name to determine
5133 whether it is a PowerPC 55xx target.
5135 2009-04-10 Thomas Quinot <quinot@adacore.com>
5137 * sem_eval.adb: Minor reformatting
5139 2009-04-10 Thomas Quinot <quinot@adacore.com>
5141 * snames.h, snames.ads, snames.adb: Remove files, now generated from
5144 * snames.h-tmpl, snames.ads-tmpl, snames.adb-tmpl: Templates for the
5147 * xsnamest.adb: New file.
5149 * gcc-interface/Make-lang.in: New target for automated generation of
5150 snames.ads, snames.adb and snames.h
5152 2009-04-10 Tristan Gingold <gingold@adacore.com>
5154 * gcc-interface/Makefile.in, gcc-interface/utils.c: Include "rtl.h" to
5155 avoid compile time warnings.
5156 Do not add gcc/config in include search list while compiling the RTS.
5157 Pragma Thread_Local_Storage is available on any target.
5159 2009-04-10 Bob Duff <duff@adacore.com>
5161 * sem.ads, par.adb, sem_ch6.adb, sem_ch8.adb: Minor comment fixes.
5163 2009-04-10 Tristan Gingold <gingold@adacore.com>
5165 * init.c: Install signal handler on Darwin.
5167 2009-04-10 Robert Dewar <dewar@adacore.com>
5169 * sem_prag.adb: Minor reformatting
5171 * exp_util.adb (Make_Non_Empty_Check): New function
5172 (Silly_Boolean_Array_Not_Test): Add call to Make_Non_Empty_Check
5173 (Silly_Boolean_Array_Xor_Test): Use Make_Non_Empty_Check
5175 2009-04-10 Arnaud Charlet <charlet@adacore.com>
5177 * make.adb, gnatlink.adb: Rename JGNAT toolchain.
5179 2009-04-10 Jose Ruiz <ruiz@adacore.com>
5181 * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Insert the appropriate
5182 tool prefix for AVR and PowerPC 55xx targets.
5184 2009-04-10 Robert Dewar <dewar@adacore.com>
5186 * sem_warn.adb (Within_Postcondition): New function
5187 (Check_Unset_Reference): Use Within_Postcondition to stop bad warning
5189 2009-04-10 Robert Dewar <dewar@adacore.com>
5191 * sem_warn.adb: Minor reformatting
5193 * make.adb: Minor reformatting.
5195 2009-04-10 Gary Dismukes <dismukes@adacore.com>
5197 * exp_ch7.adb (Find_Final_List): When creating a finalization-chain
5198 entity and the scope is a subprogram, retrieve the Sloc of the
5199 subprogram's body rather than using the sloc of the spec, for better
5200 line-stepping behavior in gdb.
5201 (Wrap_Transient_Declaration): For the Sloc of nodes created with a list
5202 controller, use the Sloc of the first declaration of the containing list
5203 rather than that of the node that triggered creation of the list
5206 2009-04-10 Vincent Celier <celier@adacore.com>
5208 * prj-nmsc.adb (Check_Naming_Schemes): Initialize local variable Casing
5209 to avoid gcc warning.
5211 2009-04-10 Robert Dewar <dewar@adacore.com>
5213 * g-comlin.adb: Add ??? comment
5215 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5217 * sem_warn.adb (Check_Unused_Withs): Do not emit message about
5218 unreferenced entities for a package with no visible declarations.
5220 2009-04-10 Robert Dewar <dewar@adacore.com>
5222 * exp_ch9.adb: Minor reformatting
5224 2009-04-10 Thomas Quinot <quinot@adacore.com>
5226 * sem_prag.adb: Minor reformatting
5228 2009-04-10 Vincent Celier <celier@adacore.com>
5231 (Check_Library_Attributes): For a project qualified as a library project
5232 that is not a library project, indicate in the error message which
5233 attributes are missing (Library_Dir and/or Library_Name).
5235 2009-04-10 Bob Duff <duff@adacore.com>
5237 * exp_ch5.adb, exp_ch9.adb: Avoid use of No_Position in Sloc of
5238 generated nodes, because it might confuse various circuits in the FE.
5240 2009-04-10 Ed Schonberg <schonberg@adacore.com>
5242 * sem_prag.adb (Analyze_Pragma, case Task_Name): Do not expand argument
5243 of pragma. It will be recopied and analyzed when used in call to
5246 * sem_res.adb (Resolve_Call): Clarify use of secondary stack within
5247 initialization operations and recognize use of it in procedure calls
5250 * exp_ch9.adb (Make_Task_Create_Call): Copy full tree of Task_Name
5251 argument, because it may have side-effects.
5253 * exp_ch2.adb: Remove obsolete comments on default functions
5255 2009-04-10 Jose Ruiz <ruiz@adacore.com>
5257 * adaint.c (RTX section): Do for RTX the same thing as we do for
5258 Windows (include ctype.h and define a fallback ISALPHA if IN_RTS).
5260 2009-04-10 Robert Dewar <dewar@adacore.com>
5262 * sem_aux.ads, sem_aux.adb (Nearest_Current_Scope): New function.
5264 * sem_res.adb (Resolve_Call): Fix test for
5265 Suppress_Value_Tracking_On_Call (was wrong for the case of a call from
5266 a non-dynamic scope).
5268 2009-04-10 Robert Dewar <dewar@adacore.com>
5270 * make.adb: Add comment.
5273 2009-04-10 Nicolas Setton <setton@adacore.com>
5275 * s-osprim-darwin.adb: New file.
5277 * s-osinte-darwin.adb, s-osinte-darwin.ads: Fix binding to timespec.
5279 2009-04-10 Thomas Quinot <quinot@adacore.com>
5281 * g-socket.ads: Add comment clarifying alignment requirement for Fd_Set
5283 2009-04-09 Nick Clifton <nickc@redhat.com>
5285 * adadecode.h: Change copyright header to refer to version
5286 3 of the GNU General Public License with version 3.1 of the
5287 GCC Runtime Library Exception and to point readers at the
5288 COPYING3 and COPYING3.RUNTIME files and the FSF's license web
5290 * 9drpc.adb: Likewise.
5291 * a-assert.adb: Likewise.
5292 * a-astaco.adb: Likewise.
5293 * a-calari.adb: Likewise.
5294 * a-calcon.adb: Likewise.
5295 * a-calcon.ads: Likewise.
5296 * a-caldel.ads: Likewise.
5297 * a-calend-vms.adb: Likewise.
5298 * a-calend-vms.ads: Likewise.
5299 * a-calend.adb: Likewise.
5300 * a-calend.ads: Likewise.
5301 * a-calfor.adb: Likewise.
5302 * a-catizo.adb: Likewise.
5303 * a-cdlili.adb: Likewise.
5304 * a-cdlili.ads: Likewise.
5305 * a-cgaaso.adb: Likewise.
5306 * a-cgaaso.ads: Likewise.
5307 * a-cgarso.adb: Likewise.
5308 * a-cgcaso.adb: Likewise.
5309 * a-chacon.adb: Likewise.
5310 * a-chacon.ads: Likewise.
5311 * a-chahan.adb: Likewise.
5312 * a-chahan.ads: Likewise.
5313 * a-chlat9.ads: Likewise.
5314 * a-chtgke.adb: Likewise.
5315 * a-chtgke.ads: Likewise.
5316 * a-chtgop.adb: Likewise.
5317 * a-chtgop.ads: Likewise.
5318 * a-chzla1.ads: Likewise.
5319 * a-chzla9.ads: Likewise.
5320 * a-cidlli.adb: Likewise.
5321 * a-cidlli.ads: Likewise.
5322 * a-cihama.adb: Likewise.
5323 * a-cihama.ads: Likewise.
5324 * a-cihase.adb: Likewise.
5325 * a-cihase.ads: Likewise.
5326 * a-ciorma.adb: Likewise.
5327 * a-ciorma.ads: Likewise.
5328 * a-ciormu.adb: Likewise.
5329 * a-ciormu.ads: Likewise.
5330 * a-ciorse.adb: Likewise.
5331 * a-ciorse.ads: Likewise.
5332 * a-clrefi.adb: Likewise.
5333 * a-clrefi.ads: Likewise.
5334 * a-cohama.adb: Likewise.
5335 * a-cohama.ads: Likewise.
5336 * a-cohase.adb: Likewise.
5337 * a-cohase.ads: Likewise.
5338 * a-cohata.ads: Likewise.
5339 * a-coinve.adb: Likewise.
5340 * a-coinve.ads: Likewise.
5341 * a-colien.adb: Likewise.
5342 * a-colien.ads: Likewise.
5343 * a-colire.adb: Likewise.
5344 * a-colire.ads: Likewise.
5345 * a-comlin.adb: Likewise.
5346 * a-comlin.ads: Likewise.
5347 * a-convec.adb: Likewise.
5348 * a-convec.ads: Likewise.
5349 * a-coorma.adb: Likewise.
5350 * a-coorma.ads: Likewise.
5351 * a-coormu.adb: Likewise.
5352 * a-coormu.ads: Likewise.
5353 * a-coorse.adb: Likewise.
5354 * a-coorse.ads: Likewise.
5355 * a-coprnu.adb: Likewise.
5356 * a-coprnu.ads: Likewise.
5357 * a-crbltr.ads: Likewise.
5358 * a-crbtgk.adb: Likewise.
5359 * a-crbtgk.ads: Likewise.
5360 * a-crbtgo.adb: Likewise.
5361 * a-crbtgo.ads: Likewise.
5362 * a-crdlli.adb: Likewise.
5363 * a-crdlli.ads: Likewise.
5364 * a-cwila1.ads: Likewise.
5365 * a-cwila9.ads: Likewise.
5366 * a-decima.adb: Likewise.
5367 * a-decima.ads: Likewise.
5368 * a-diocst.adb: Likewise.
5369 * a-diocst.ads: Likewise.
5370 * a-direct.adb: Likewise.
5371 * a-direct.ads: Likewise.
5372 * a-direio.adb: Likewise.
5373 * a-direio.ads: Likewise.
5374 * a-dirval-mingw.adb: Likewise.
5375 * a-dirval-vms.adb: Likewise.
5376 * a-dirval.adb: Likewise.
5377 * a-dirval.ads: Likewise.
5378 * a-dynpri.adb: Likewise.
5379 * a-einuoc.adb: Likewise.
5380 * a-einuoc.ads: Likewise.
5381 * a-elchha.adb: Likewise.
5382 * a-elchha.ads: Likewise.
5383 * a-envvar.adb: Likewise.
5384 * a-excach.adb: Likewise.
5385 * a-except-2005.adb: Likewise.
5386 * a-except-2005.ads: Likewise.
5387 * a-except.adb: Likewise.
5388 * a-except.ads: Likewise.
5389 * a-excpol-abort.adb: Likewise.
5390 * a-excpol.adb: Likewise.
5391 * a-exctra.adb: Likewise.
5392 * a-exctra.ads: Likewise.
5393 * a-exetim-mingw.adb: Likewise.
5394 * a-exetim-mingw.ads: Likewise.
5395 * a-exexda.adb: Likewise.
5396 * a-exexpr-gcc.adb: Likewise.
5397 * a-exexpr.adb: Likewise.
5398 * a-exextr.adb: Likewise.
5399 * a-exstat.adb: Likewise.
5400 * a-filico.adb: Likewise.
5401 * a-filico.ads: Likewise.
5402 * a-finali.adb: Likewise.
5403 * a-finali.ads: Likewise.
5404 * a-interr.ads: Likewise.
5405 * a-intnam-aix.ads: Likewise.
5406 * a-intnam-darwin.ads: Likewise.
5407 * a-intnam-dummy.ads: Likewise.
5408 * a-intnam-freebsd.ads: Likewise.
5409 * a-intnam-hpux.ads: Likewise.
5410 * a-intnam-irix.ads: Likewise.
5411 * a-intnam-linux.ads: Likewise.
5412 * a-intnam-lynxos.ads: Likewise.
5413 * a-intnam-mingw.ads: Likewise.
5414 * a-intnam-rtems.ads: Likewise.
5415 * a-intnam-solaris.ads: Likewise.
5416 * a-intnam-tru64.ads: Likewise.
5417 * a-intnam-vms.ads: Likewise.
5418 * a-intnam-vxworks.ads: Likewise.
5419 * a-intsig.adb: Likewise.
5420 * a-intsig.ads: Likewise.
5421 * a-ngcefu.adb: Likewise.
5422 * a-ngcoar.adb: Likewise.
5423 * a-ngcoty.adb: Likewise.
5424 * a-ngcoty.ads: Likewise.
5425 * a-ngelfu.adb: Likewise.
5426 * a-ngrear.adb: Likewise.
5427 * a-ngrear.ads: Likewise.
5428 * a-nudira.adb: Likewise.
5429 * a-nudira.ads: Likewise.
5430 * a-nuflra.adb: Likewise.
5431 * a-nuflra.ads: Likewise.
5432 * a-numaux-darwin.adb: Likewise.
5433 * a-numaux-darwin.ads: Likewise.
5434 * a-numaux-libc-x86.ads: Likewise.
5435 * a-numaux-vxworks.ads: Likewise.
5436 * a-numaux-x86.adb: Likewise.
5437 * a-numaux-x86.ads: Likewise.
5438 * a-numaux.ads: Likewise.
5439 * a-rbtgso.adb: Likewise.
5440 * a-rbtgso.ads: Likewise.
5441 * a-reatim.ads: Likewise.
5442 * a-retide.adb: Likewise.
5443 * a-retide.ads: Likewise.
5444 * a-rttiev.adb: Likewise.
5445 * a-rttiev.ads: Likewise.
5446 * a-secain.adb: Likewise.
5447 * a-secain.ads: Likewise.
5448 * a-sequio.adb: Likewise.
5449 * a-sequio.ads: Likewise.
5450 * a-shcain.adb: Likewise.
5451 * a-shcain.ads: Likewise.
5452 * a-siocst.adb: Likewise.
5453 * a-siocst.ads: Likewise.
5454 * a-slcain.adb: Likewise.
5455 * a-slcain.ads: Likewise.
5456 * a-ssicst.adb: Likewise.
5457 * a-ssicst.ads: Likewise.
5458 * a-stboha.adb: Likewise.
5459 * a-stmaco.ads: Likewise.
5460 * a-storio.adb: Likewise.
5461 * a-strbou.adb: Likewise.
5462 * a-strbou.ads: Likewise.
5463 * a-stream.ads: Likewise.
5464 * a-strfix.adb: Likewise.
5465 * a-strhas.adb: Likewise.
5466 * a-strmap.adb: Likewise.
5467 * a-strmap.ads: Likewise.
5468 * a-strsea.adb: Likewise.
5469 * a-strsea.ads: Likewise.
5470 * a-strsup.adb: Likewise.
5471 * a-strsup.ads: Likewise.
5472 * a-strunb.adb: Likewise.
5473 * a-strunb.ads: Likewise.
5474 * a-ststio.adb: Likewise.
5475 * a-ststio.ads: Likewise.
5476 * a-stunau.adb: Likewise.
5477 * a-stunau.ads: Likewise.
5478 * a-stunha.adb: Likewise.
5479 * a-stwibo.adb: Likewise.
5480 * a-stwibo.ads: Likewise.
5481 * a-stwifi.adb: Likewise.
5482 * a-stwiha.adb: Likewise.
5483 * a-stwima.adb: Likewise.
5484 * a-stwima.ads: Likewise.
5485 * a-stwise.adb: Likewise.
5486 * a-stwise.ads: Likewise.
5487 * a-stwisu.adb: Likewise.
5488 * a-stwisu.ads: Likewise.
5489 * a-stwiun.adb: Likewise.
5490 * a-stwiun.ads: Likewise.
5491 * a-stzbou.adb: Likewise.
5492 * a-stzbou.ads: Likewise.
5493 * a-stzfix.adb: Likewise.
5494 * a-stzhas.adb: Likewise.
5495 * a-stzmap.adb: Likewise.
5496 * a-stzmap.ads: Likewise.
5497 * a-stzsea.adb: Likewise.
5498 * a-stzsea.ads: Likewise.
5499 * a-stzsup.adb: Likewise.
5500 * a-stzsup.ads: Likewise.
5501 * a-stzunb.adb: Likewise.
5502 * a-stzunb.ads: Likewise.
5503 * a-suteio.adb: Likewise.
5504 * a-suteio.ads: Likewise.
5505 * a-swbwha.adb: Likewise.
5506 * a-swmwco.ads: Likewise.
5507 * a-swunau.adb: Likewise.
5508 * a-swunau.ads: Likewise.
5509 * a-swuwha.adb: Likewise.
5510 * a-swuwti.adb: Likewise.
5511 * a-swuwti.ads: Likewise.
5512 * a-sytaco.adb: Likewise.
5513 * a-sytaco.ads: Likewise.
5514 * a-szbzha.adb: Likewise.
5515 * a-szmzco.ads: Likewise.
5516 * a-szunau.adb: Likewise.
5517 * a-szunau.ads: Likewise.
5518 * a-szuzha.adb: Likewise.
5519 * a-szuzti.adb: Likewise.
5520 * a-szuzti.ads: Likewise.
5521 * a-tags.adb: Likewise.
5522 * a-tags.ads: Likewise.
5523 * a-tasatt.ads: Likewise.
5524 * a-taside.adb: Likewise.
5525 * a-taside.ads: Likewise.
5526 * a-taster.adb: Likewise.
5527 * a-teioed.adb: Likewise.
5528 * a-teioed.ads: Likewise.
5529 * a-textio.adb: Likewise.
5530 * a-textio.ads: Likewise.
5531 * a-tiboio.adb: Likewise.
5532 * a-ticoau.adb: Likewise.
5533 * a-ticoau.ads: Likewise.
5534 * a-ticoio.adb: Likewise.
5535 * a-ticoio.ads: Likewise.
5536 * a-tideau.adb: Likewise.
5537 * a-tideau.ads: Likewise.
5538 * a-tideio.adb: Likewise.
5539 * a-tideio.ads: Likewise.
5540 * a-tienau.adb: Likewise.
5541 * a-tienau.ads: Likewise.
5542 * a-tienio.adb: Likewise.
5543 * a-tienio.ads: Likewise.
5544 * a-tifiio.adb: Likewise.
5545 * a-tifiio.ads: Likewise.
5546 * a-tiflau.adb: Likewise.
5547 * a-tiflau.ads: Likewise.
5548 * a-tiflio.adb: Likewise.
5549 * a-tiflio.ads: Likewise.
5550 * a-tigeau.adb: Likewise.
5551 * a-tigeau.ads: Likewise.
5552 * a-tiinau.adb: Likewise.
5553 * a-tiinau.ads: Likewise.
5554 * a-tiinio.adb: Likewise.
5555 * a-tiinio.ads: Likewise.
5556 * a-timoau.adb: Likewise.
5557 * a-timoau.ads: Likewise.
5558 * a-timoio.adb: Likewise.
5559 * a-timoio.ads: Likewise.
5560 * a-tiocst.adb: Likewise.
5561 * a-tiocst.ads: Likewise.
5562 * a-titest.adb: Likewise.
5563 * a-wichun.adb: Likewise.
5564 * a-wichun.ads: Likewise.
5565 * a-witeio.adb: Likewise.
5566 * a-witeio.ads: Likewise.
5567 * a-wtcoau.adb: Likewise.
5568 * a-wtcoau.ads: Likewise.
5569 * a-wtcoio.adb: Likewise.
5570 * a-wtcstr.adb: Likewise.
5571 * a-wtcstr.ads: Likewise.
5572 * a-wtdeau.adb: Likewise.
5573 * a-wtdeau.ads: Likewise.
5574 * a-wtdeio.adb: Likewise.
5575 * a-wtdeio.ads: Likewise.
5576 * a-wtedit.adb: Likewise.
5577 * a-wtedit.ads: Likewise.
5578 * a-wtenau.adb: Likewise.
5579 * a-wtenau.ads: Likewise.
5580 * a-wtenio.adb: Likewise.
5581 * a-wtenio.ads: Likewise.
5582 * a-wtfiio.adb: Likewise.
5583 * a-wtfiio.ads: Likewise.
5584 * a-wtflau.adb: Likewise.
5585 * a-wtflau.ads: Likewise.
5586 * a-wtflio.adb: Likewise.
5587 * a-wtflio.ads: Likewise.
5588 * a-wtgeau.adb: Likewise.
5589 * a-wtgeau.ads: Likewise.
5590 * a-wtinau.adb: Likewise.
5591 * a-wtinau.ads: Likewise.
5592 * a-wtinio.adb: Likewise.
5593 * a-wtmoau.adb: Likewise.
5594 * a-wtmoau.ads: Likewise.
5595 * a-wtmoio.adb: Likewise.
5596 * a-wtmoio.ads: Likewise.
5597 * a-wttest.adb: Likewise.
5598 * a-wwboio.adb: Likewise.
5599 * a-zchuni.adb: Likewise.
5600 * a-zchuni.ads: Likewise.
5601 * a-ztcoau.adb: Likewise.
5602 * a-ztcoau.ads: Likewise.
5603 * a-ztcoio.adb: Likewise.
5604 * a-ztcstr.adb: Likewise.
5605 * a-ztcstr.ads: Likewise.
5606 * a-ztdeau.adb: Likewise.
5607 * a-ztdeau.ads: Likewise.
5608 * a-ztdeio.adb: Likewise.
5609 * a-ztdeio.ads: Likewise.
5610 * a-ztedit.adb: Likewise.
5611 * a-ztedit.ads: Likewise.
5612 * a-ztenau.adb: Likewise.
5613 * a-ztenau.ads: Likewise.
5614 * a-ztenio.adb: Likewise.
5615 * a-ztenio.ads: Likewise.
5616 * a-ztexio.adb: Likewise.
5617 * a-ztexio.ads: Likewise.
5618 * a-ztfiio.adb: Likewise.
5619 * a-ztfiio.ads: Likewise.
5620 * a-ztflau.adb: Likewise.
5621 * a-ztflau.ads: Likewise.
5622 * a-ztflio.adb: Likewise.
5623 * a-ztflio.ads: Likewise.
5624 * a-ztgeau.adb: Likewise.
5625 * a-ztgeau.ads: Likewise.
5626 * a-ztinau.adb: Likewise.
5627 * a-ztinau.ads: Likewise.
5628 * a-ztinio.adb: Likewise.
5629 * a-ztmoau.adb: Likewise.
5630 * a-ztmoau.ads: Likewise.
5631 * a-ztmoio.adb: Likewise.
5632 * a-ztmoio.ads: Likewise.
5633 * a-zttest.adb: Likewise.
5634 * a-zzboio.adb: Likewise.
5635 * adadecode.c: Likewise.
5636 * adaint.c: Likewise.
5637 * adaint.h: Likewise.
5638 * alloc.ads: Likewise.
5640 * arit64.c: Likewise.
5641 * atree.adb: Likewise.
5642 * atree.ads: Likewise.
5643 * aux-io.c: Likewise.
5645 * casing.adb: Likewise.
5646 * casing.ads: Likewise.
5648 * csets.adb: Likewise.
5649 * csets.ads: Likewise.
5650 * cstreams.c: Likewise.
5651 * ctrl_c.c: Likewise.
5652 * debug.adb: Likewise.
5653 * debug.ads: Likewise.
5654 * dec.ads: Likewise.
5655 * einfo.adb: Likewise.
5656 * einfo.ads: Likewise.
5657 * elists.adb: Likewise.
5658 * elists.ads: Likewise.
5661 * errno.c: Likewise.
5664 * final.c: Likewise.
5665 * fname.adb: Likewise.
5666 * fname.ads: Likewise.
5667 * g-allein.ads: Likewise.
5668 * g-alleve.adb: Likewise.
5669 * g-alleve.ads: Likewise.
5670 * g-altcon.adb: Likewise.
5671 * g-altcon.ads: Likewise.
5672 * g-altive.ads: Likewise.
5673 * g-alveop.adb: Likewise.
5674 * g-alveop.ads: Likewise.
5675 * g-alvety.ads: Likewise.
5676 * g-alvevi.ads: Likewise.
5677 * g-arrspl.adb: Likewise.
5678 * g-arrspl.ads: Likewise.
5679 * g-calend.ads: Likewise.
5680 * g-comlin.adb: Likewise.
5681 * g-debpoo.adb: Likewise.
5682 * g-debpoo.ads: Likewise.
5683 * g-eacodu-vms.adb: Likewise.
5684 * g-eacodu.adb: Likewise.
5685 * g-excact.adb: Likewise.
5686 * g-excact.ads: Likewise.
5687 * g-locfil.adb: Likewise.
5688 * g-os_lib.ads: Likewise.
5689 * g-rannum.adb: Likewise.
5690 * g-rannum.ads: Likewise.
5691 * g-regist.adb: Likewise.
5692 * g-regist.ads: Likewise.
5693 * g-signal.adb: Likewise.
5694 * g-signal.ads: Likewise.
5695 * g-soccon.ads: Likewise.
5696 * g-string.adb: Likewise.
5697 * g-string.ads: Likewise.
5698 * g-strspl.ads: Likewise.
5699 * g-timsta.adb: Likewise.
5700 * g-timsta.ads: Likewise.
5701 * g-trasym-vms-alpha.adb: Likewise.
5702 * g-trasym-vms-ia64.adb: Likewise.
5703 * g-utf_32.adb: Likewise.
5704 * g-utf_32.ads: Likewise.
5705 * g-wistsp.ads: Likewise.
5706 * g-zstspl.ads: Likewise.
5708 * gnatvsn.adb: Likewise.
5709 * gnatvsn.ads: Likewise.
5710 * gsocket.h: Likewise.
5711 * hostparm.ads: Likewise.
5712 * i-c.adb: Likewise.
5713 * i-cexten.ads: Likewise.
5714 * i-cobol.adb: Likewise.
5715 * i-cobol.ads: Likewise.
5716 * i-cpoint.adb: Likewise.
5717 * i-cpoint.ads: Likewise.
5718 * i-cpp.adb: Likewise.
5719 * i-cpp.ads: Likewise.
5720 * i-cstrea-vms.adb: Likewise.
5721 * i-cstrea.adb: Likewise.
5722 * i-cstrea.ads: Likewise.
5723 * i-cstrin.adb: Likewise.
5724 * i-cstrin.ads: Likewise.
5725 * i-forbla-darwin.adb: Likewise.
5726 * i-forbla-unimplemented.ads: Likewise.
5727 * i-forbla.adb: Likewise.
5728 * i-forbla.ads: Likewise.
5729 * i-forlap.ads: Likewise.
5730 * i-fortra.adb: Likewise.
5731 * i-pacdec.adb: Likewise.
5732 * i-pacdec.ads: Likewise.
5733 * i-vxwoio.adb: Likewise.
5734 * i-vxwoio.ads: Likewise.
5735 * indepsw-aix.adb: Likewise.
5736 * indepsw-gnu.adb: Likewise.
5737 * indepsw-mingw.adb: Likewise.
5738 * indepsw.adb: Likewise.
5739 * indepsw.ads: Likewise.
5741 * initialize.c: Likewise.
5742 * interfac.ads: Likewise.
5743 * krunch.adb: Likewise.
5744 * krunch.ads: Likewise.
5745 * lib-list.adb: Likewise.
5746 * lib-sort.adb: Likewise.
5747 * lib.adb: Likewise.
5748 * lib.ads: Likewise.
5750 * math_lib.adb: Likewise.
5751 * memtrack.adb: Likewise.
5752 * mingw32.h: Likewise.
5753 * mkdir.c: Likewise.
5754 * namet-sp.adb: Likewise.
5755 * namet-sp.ads: Likewise.
5756 * namet.adb: Likewise.
5757 * namet.ads: Likewise.
5758 * nlists.adb: Likewise.
5759 * nlists.ads: Likewise.
5760 * opt.adb: Likewise.
5761 * opt.ads: Likewise.
5762 * output.adb: Likewise.
5763 * output.ads: Likewise.
5764 * raise-gcc.c: Likewise.
5765 * raise.c: Likewise.
5766 * raise.h: Likewise.
5767 * repinfo.adb: Likewise.
5768 * repinfo.ads: Likewise.
5769 * repinfo.h: Likewise.
5770 * rident.ads: Likewise.
5771 * s-addima.adb: Likewise.
5772 * s-addima.ads: Likewise.
5773 * s-addope.adb: Likewise.
5774 * s-addope.ads: Likewise.
5775 * s-arit64.adb: Likewise.
5776 * s-arit64.ads: Likewise.
5777 * s-assert.adb: Likewise.
5778 * s-assert.ads: Likewise.
5779 * s-asthan-vms-alpha.adb: Likewise.
5780 * s-asthan.adb: Likewise.
5781 * s-asthan.ads: Likewise.
5782 * s-atacco.adb: Likewise.
5783 * s-atacco.ads: Likewise.
5784 * s-auxdec-empty.adb: Likewise.
5785 * s-auxdec-empty.ads: Likewise.
5786 * s-auxdec-vms_64.ads: Likewise.
5787 * s-auxdec.adb: Likewise.
5788 * s-auxdec.ads: Likewise.
5789 * s-bitops.adb: Likewise.
5790 * s-bitops.ads: Likewise.
5791 * s-boarop.ads: Likewise.
5792 * s-carsi8.adb: Likewise.
5793 * s-carsi8.ads: Likewise.
5794 * s-carun8.adb: Likewise.
5795 * s-carun8.ads: Likewise.
5796 * s-casi16.adb: Likewise.
5797 * s-casi16.ads: Likewise.
5798 * s-casi32.adb: Likewise.
5799 * s-casi32.ads: Likewise.
5800 * s-casi64.adb: Likewise.
5801 * s-casi64.ads: Likewise.
5802 * s-casuti.ads: Likewise.
5803 * s-caun16.adb: Likewise.
5804 * s-caun16.ads: Likewise.
5805 * s-caun32.adb: Likewise.
5806 * s-caun32.ads: Likewise.
5807 * s-caun64.adb: Likewise.
5808 * s-caun64.ads: Likewise.
5809 * s-chepoo.ads: Likewise.
5810 * s-crc32.adb: Likewise.
5811 * s-crc32.ads: Likewise.
5812 * s-crtl.ads: Likewise.
5813 * s-direio.adb: Likewise.
5814 * s-direio.ads: Likewise.
5815 * s-dsaser.ads: Likewise.
5816 * s-except.adb: Likewise.
5817 * s-except.ads: Likewise.
5818 * s-exctab.adb: Likewise.
5819 * s-exctab.ads: Likewise.
5820 * s-exnint.adb: Likewise.
5821 * s-exnint.ads: Likewise.
5822 * s-exnllf.adb: Likewise.
5823 * s-exnllf.ads: Likewise.
5824 * s-exnlli.adb: Likewise.
5825 * s-exnlli.ads: Likewise.
5826 * s-expint.adb: Likewise.
5827 * s-expint.ads: Likewise.
5828 * s-explli.adb: Likewise.
5829 * s-explli.ads: Likewise.
5830 * s-expllu.adb: Likewise.
5831 * s-expllu.ads: Likewise.
5832 * s-expmod.adb: Likewise.
5833 * s-expmod.ads: Likewise.
5834 * s-expuns.adb: Likewise.
5835 * s-expuns.ads: Likewise.
5836 * s-fatflt.ads: Likewise.
5837 * s-fatgen.adb: Likewise.
5838 * s-fatgen.ads: Likewise.
5839 * s-fatlfl.ads: Likewise.
5840 * s-fatllf.ads: Likewise.
5841 * s-fatsfl.ads: Likewise.
5842 * s-ficobl.ads: Likewise.
5843 * s-fileio.adb: Likewise.
5844 * s-fileio.ads: Likewise.
5845 * s-filofl.ads: Likewise.
5846 * s-finimp.adb: Likewise.
5847 * s-finimp.ads: Likewise.
5848 * s-finroo.adb: Likewise.
5849 * s-finroo.ads: Likewise.
5850 * s-fishfl.ads: Likewise.
5851 * s-fore.adb: Likewise.
5852 * s-fore.ads: Likewise.
5853 * s-fvadfl.ads: Likewise.
5854 * s-fvaffl.ads: Likewise.
5855 * s-fvagfl.ads: Likewise.
5856 * s-gearop.adb: Likewise.
5857 * s-gearop.ads: Likewise.
5858 * s-gecobl.adb: Likewise.
5859 * s-gecobl.ads: Likewise.
5860 * s-gecola.adb: Likewise.
5861 * s-gecola.ads: Likewise.
5862 * s-gerebl.adb: Likewise.
5863 * s-gerebl.ads: Likewise.
5864 * s-gerela.adb: Likewise.
5865 * s-gerela.ads: Likewise.
5866 * s-geveop.adb: Likewise.
5867 * s-geveop.ads: Likewise.
5868 * s-gloloc.adb: Likewise.
5869 * s-gloloc.ads: Likewise.
5870 * s-hibaen.ads: Likewise.
5871 * s-imenne.adb: Likewise.
5872 * s-imenne.ads: Likewise.
5873 * s-imgbiu.adb: Likewise.
5874 * s-imgbiu.ads: Likewise.
5875 * s-imgboo.adb: Likewise.
5876 * s-imgboo.ads: Likewise.
5877 * s-imgcha.adb: Likewise.
5878 * s-imgcha.ads: Likewise.
5879 * s-imgdec.adb: Likewise.
5880 * s-imgdec.ads: Likewise.
5881 * s-imgenu.adb: Likewise.
5882 * s-imgenu.ads: Likewise.
5883 * s-imgint.adb: Likewise.
5884 * s-imgint.ads: Likewise.
5885 * s-imgllb.adb: Likewise.
5886 * s-imgllb.ads: Likewise.
5887 * s-imglld.adb: Likewise.
5888 * s-imglld.ads: Likewise.
5889 * s-imglli.adb: Likewise.
5890 * s-imglli.ads: Likewise.
5891 * s-imgllu.adb: Likewise.
5892 * s-imgllu.ads: Likewise.
5893 * s-imgllw.adb: Likewise.
5894 * s-imgllw.ads: Likewise.
5895 * s-imgrea.adb: Likewise.
5896 * s-imgrea.ads: Likewise.
5897 * s-imguns.adb: Likewise.
5898 * s-imguns.ads: Likewise.
5899 * s-imgwch.adb: Likewise.
5900 * s-imgwch.ads: Likewise.
5901 * s-imgwiu.adb: Likewise.
5902 * s-imgwiu.ads: Likewise.
5903 * s-inmaop-dummy.adb: Likewise.
5904 * s-inmaop-vms.adb: Likewise.
5905 * s-inmaop.ads: Likewise.
5906 * s-interr-hwint.adb: Likewise.
5907 * s-interr-sigaction.adb: Likewise.
5908 * s-interr-vms.adb: Likewise.
5909 * s-interr.adb: Likewise.
5910 * s-interr.ads: Likewise.
5911 * s-intman-dummy.adb: Likewise.
5912 * s-intman-mingw.adb: Likewise.
5913 * s-intman-posix.adb: Likewise.
5914 * s-intman-solaris.adb: Likewise.
5915 * s-intman-vms.adb: Likewise.
5916 * s-intman-vms.ads: Likewise.
5917 * s-intman-vxworks.adb: Likewise.
5918 * s-intman-vxworks.ads: Likewise.
5919 * s-intman.ads: Likewise.
5920 * s-io.adb: Likewise.
5921 * s-io.ads: Likewise.
5922 * s-linux-alpha.ads: Likewise.
5923 * s-linux-hppa.ads: Likewise.
5924 * s-linux.ads: Likewise.
5925 * s-maccod.ads: Likewise.
5926 * s-mantis.adb: Likewise.
5927 * s-mantis.ads: Likewise.
5928 * s-mastop-irix.adb: Likewise.
5929 * s-mastop.adb: Likewise.
5930 * s-mastop.ads: Likewise.
5931 * s-memcop.ads: Likewise.
5932 * s-memory-mingw.adb: Likewise.
5933 * s-memory.adb: Likewise.
5934 * s-memory.ads: Likewise.
5935 * s-os_lib.ads: Likewise.
5936 * s-oscons-tmplt.c: Likewise.
5937 * s-osinte-aix.adb: Likewise.
5938 * s-osinte-darwin.adb: Likewise.
5939 * s-osinte-freebsd.adb: Likewise.
5940 * s-osinte-irix.adb: Likewise.
5941 * s-osinte-lynxos-3.adb: Likewise.
5942 * s-osinte-rtems.ads: Likewise.
5943 * s-osinte-tru64.adb: Likewise.
5944 * s-osinte-vxworks-kernel.adb: Likewise.
5945 * s-osinte-vxworks.adb: Likewise.
5946 * s-osprim-mingw.adb: Likewise.
5947 * s-osprim-posix.adb: Likewise.
5948 * s-osprim-solaris.adb: Likewise.
5949 * s-osprim-unix.adb: Likewise.
5950 * s-osprim-vms.adb: Likewise.
5951 * s-osprim-vms.ads: Likewise.
5952 * s-osprim-vxworks.adb: Likewise.
5953 * s-osprim.ads: Likewise.
5954 * s-pack03.adb: Likewise.
5955 * s-pack03.ads: Likewise.
5956 * s-pack05.adb: Likewise.
5957 * s-pack05.ads: Likewise.
5958 * s-pack06.adb: Likewise.
5959 * s-pack06.ads: Likewise.
5960 * s-pack07.adb: Likewise.
5961 * s-pack07.ads: Likewise.
5962 * s-pack09.adb: Likewise.
5963 * s-pack09.ads: Likewise.
5964 * s-pack10.adb: Likewise.
5965 * s-pack10.ads: Likewise.
5966 * s-pack11.adb: Likewise.
5967 * s-pack11.ads: Likewise.
5968 * s-pack12.adb: Likewise.
5969 * s-pack12.ads: Likewise.
5970 * s-pack13.adb: Likewise.
5971 * s-pack13.ads: Likewise.
5972 * s-pack14.adb: Likewise.
5973 * s-pack14.ads: Likewise.
5974 * s-pack15.adb: Likewise.
5975 * s-pack15.ads: Likewise.
5976 * s-pack17.adb: Likewise.
5977 * s-pack17.ads: Likewise.
5978 * s-pack18.adb: Likewise.
5979 * s-pack18.ads: Likewise.
5980 * s-pack19.adb: Likewise.
5981 * s-pack19.ads: Likewise.
5982 * s-pack20.adb: Likewise.
5983 * s-pack20.ads: Likewise.
5984 * s-pack21.adb: Likewise.
5985 * s-pack21.ads: Likewise.
5986 * s-pack22.adb: Likewise.
5987 * s-pack22.ads: Likewise.
5988 * s-pack23.adb: Likewise.
5989 * s-pack23.ads: Likewise.
5990 * s-pack24.adb: Likewise.
5991 * s-pack24.ads: Likewise.
5992 * s-pack25.adb: Likewise.
5993 * s-pack25.ads: Likewise.
5994 * s-pack26.adb: Likewise.
5995 * s-pack26.ads: Likewise.
5996 * s-pack27.adb: Likewise.
5997 * s-pack27.ads: Likewise.
5998 * s-pack28.adb: Likewise.
5999 * s-pack28.ads: Likewise.
6000 * s-pack29.adb: Likewise.
6001 * s-pack29.ads: Likewise.
6002 * s-pack30.adb: Likewise.
6003 * s-pack30.ads: Likewise.
6004 * s-pack31.adb: Likewise.
6005 * s-pack31.ads: Likewise.
6006 * s-pack33.adb: Likewise.
6007 * s-pack33.ads: Likewise.
6008 * s-pack34.adb: Likewise.
6009 * s-pack34.ads: Likewise.
6010 * s-pack35.adb: Likewise.
6011 * s-pack35.ads: Likewise.
6012 * s-pack36.adb: Likewise.
6013 * s-pack36.ads: Likewise.
6014 * s-pack37.adb: Likewise.
6015 * s-pack37.ads: Likewise.
6016 * s-pack38.adb: Likewise.
6017 * s-pack38.ads: Likewise.
6018 * s-pack39.adb: Likewise.
6019 * s-pack39.ads: Likewise.
6020 * s-pack40.adb: Likewise.
6021 * s-pack40.ads: Likewise.
6022 * s-pack41.adb: Likewise.
6023 * s-pack41.ads: Likewise.
6024 * s-pack42.adb: Likewise.
6025 * s-pack42.ads: Likewise.
6026 * s-pack43.adb: Likewise.
6027 * s-pack43.ads: Likewise.
6028 * s-pack44.adb: Likewise.
6029 * s-pack44.ads: Likewise.
6030 * s-pack45.adb: Likewise.
6031 * s-pack45.ads: Likewise.
6032 * s-pack46.adb: Likewise.
6033 * s-pack46.ads: Likewise.
6034 * s-pack47.adb: Likewise.
6035 * s-pack47.ads: Likewise.
6036 * s-pack48.adb: Likewise.
6037 * s-pack48.ads: Likewise.
6038 * s-pack49.adb: Likewise.
6039 * s-pack49.ads: Likewise.
6040 * s-pack50.adb: Likewise.
6041 * s-pack50.ads: Likewise.
6042 * s-pack51.adb: Likewise.
6043 * s-pack51.ads: Likewise.
6044 * s-pack52.adb: Likewise.
6045 * s-pack52.ads: Likewise.
6046 * s-pack53.adb: Likewise.
6047 * s-pack53.ads: Likewise.
6048 * s-pack54.adb: Likewise.
6049 * s-pack54.ads: Likewise.
6050 * s-pack55.adb: Likewise.
6051 * s-pack55.ads: Likewise.
6052 * s-pack56.adb: Likewise.
6053 * s-pack56.ads: Likewise.
6054 * s-pack57.adb: Likewise.
6055 * s-pack57.ads: Likewise.
6056 * s-pack58.adb: Likewise.
6057 * s-pack58.ads: Likewise.
6058 * s-pack59.adb: Likewise.
6059 * s-pack59.ads: Likewise.
6060 * s-pack60.adb: Likewise.
6061 * s-pack60.ads: Likewise.
6062 * s-pack61.adb: Likewise.
6063 * s-pack61.ads: Likewise.
6064 * s-pack62.adb: Likewise.
6065 * s-pack62.ads: Likewise.
6066 * s-pack63.adb: Likewise.
6067 * s-pack63.ads: Likewise.
6068 * s-parame-ae653.ads: Likewise.
6069 * s-parame-hpux.ads: Likewise.
6070 * s-parame-rtems.adb: Likewise.
6071 * s-parame-vms-alpha.ads: Likewise.
6072 * s-parame-vms-ia64.ads: Likewise.
6073 * s-parame-vms-restrict.ads: Likewise.
6074 * s-parame-vxworks.adb: Likewise.
6075 * s-parame-vxworks.ads: Likewise.
6076 * s-parame.adb: Likewise.
6077 * s-parame.ads: Likewise.
6078 * s-parint.adb: Likewise.
6079 * s-parint.ads: Likewise.
6080 * s-pooglo.adb: Likewise.
6081 * s-pooglo.ads: Likewise.
6082 * s-pooloc.adb: Likewise.
6083 * s-pooloc.ads: Likewise.
6084 * s-poosiz.adb: Likewise.
6085 * s-poosiz.ads: Likewise.
6086 * s-powtab.ads: Likewise.
6087 * s-proinf-irix-athread.adb: Likewise.
6088 * s-proinf-irix-athread.ads: Likewise.
6089 * s-proinf.adb: Likewise.
6090 * s-proinf.ads: Likewise.
6091 * s-purexc.ads: Likewise.
6092 * s-rannum.adb: Likewise.
6093 * s-rannum.ads: Likewise.
6094 * s-restri.adb: Likewise.
6095 * s-restri.ads: Likewise.
6096 * s-rident.ads: Likewise.
6097 * s-rpc.adb: Likewise.
6098 * s-rpc.ads: Likewise.
6099 * s-scaval.adb: Likewise.
6100 * s-scaval.ads: Likewise.
6101 * s-secsta.adb: Likewise.
6102 * s-secsta.ads: Likewise.
6103 * s-sequio.adb: Likewise.
6104 * s-sequio.ads: Likewise.
6105 * s-shasto.adb: Likewise.
6106 * s-shasto.ads: Likewise.
6107 * s-soflin.adb: Likewise.
6108 * s-soflin.ads: Likewise.
6109 * s-solita.adb: Likewise.
6110 * s-solita.ads: Likewise.
6111 * s-sopco3.adb: Likewise.
6112 * s-sopco3.ads: Likewise.
6113 * s-sopco4.adb: Likewise.
6114 * s-sopco4.ads: Likewise.
6115 * s-sopco5.adb: Likewise.
6116 * s-sopco5.ads: Likewise.
6117 * s-stache.adb: Likewise.
6118 * s-stache.ads: Likewise.
6119 * s-stalib.adb: Likewise.
6120 * s-stalib.ads: Likewise.
6121 * s-stausa.adb: Likewise.
6122 * s-stausa.ads: Likewise.
6123 * s-stchop-limit.ads: Likewise.
6124 * s-stchop-rtems.adb: Likewise.
6125 * s-stchop-vxworks.adb: Likewise.
6126 * s-stchop.adb: Likewise.
6127 * s-stchop.ads: Likewise.
6128 * s-stoele.adb: Likewise.
6129 * s-stoele.ads: Likewise.
6130 * s-stopoo.adb: Likewise.
6131 * s-stopoo.ads: Likewise.
6132 * s-stratt.adb: Likewise.
6133 * s-stratt.ads: Likewise.
6134 * s-strcom.adb: Likewise.
6135 * s-strcom.ads: Likewise.
6136 * s-string.adb: Likewise.
6137 * s-string.ads: Likewise.
6138 * s-strops.adb: Likewise.
6139 * s-strops.ads: Likewise.
6140 * s-strxdr.adb: Likewise.
6141 * s-ststop.adb: Likewise.
6142 * s-ststop.ads: Likewise.
6143 * s-taasde.adb: Likewise.
6144 * s-taasde.ads: Likewise.
6145 * s-tadeca.adb: Likewise.
6146 * s-tadeca.ads: Likewise.
6147 * s-tadert.adb: Likewise.
6148 * s-tadert.ads: Likewise.
6149 * s-taenca.adb: Likewise.
6150 * s-taenca.ads: Likewise.
6151 * s-taprob.ads: Likewise.
6152 * s-taprop-dummy.adb: Likewise.
6153 * s-taprop-hpux-dce.adb: Likewise.
6154 * s-taprop-irix.adb: Likewise.
6155 * s-taprop-linux.adb: Likewise.
6156 * s-taprop-lynxos.adb: Likewise.
6157 * s-taprop-mingw.adb: Likewise.
6158 * s-taprop-posix.adb: Likewise.
6159 * s-taprop-solaris.adb: Likewise.
6160 * s-taprop-tru64.adb: Likewise.
6161 * s-taprop-vms.adb: Likewise.
6162 * s-taprop-vxworks.adb: Likewise.
6163 * s-taprop.ads: Likewise.
6164 * s-tarest.adb: Likewise.
6165 * s-tarest.ads: Likewise.
6166 * s-tasdeb.adb: Likewise.
6167 * s-tasdeb.ads: Likewise.
6168 * s-tasinf-irix.ads: Likewise.
6169 * s-tasinf-linux.adb: Likewise.
6170 * s-tasinf-linux.ads: Likewise.
6171 * s-tasinf-mingw.adb: Likewise.
6172 * s-tasinf-mingw.ads: Likewise.
6173 * s-tasinf-solaris.adb: Likewise.
6174 * s-tasinf-solaris.ads: Likewise.
6175 * s-tasinf-tru64.ads: Likewise.
6176 * s-tasinf.adb: Likewise.
6177 * s-tasinf.ads: Likewise.
6178 * s-tasini.adb: Likewise.
6179 * s-tasini.ads: Likewise.
6180 * s-taskin.adb: Likewise.
6181 * s-taskin.ads: Likewise.
6182 * s-taspri-dummy.ads: Likewise.
6183 * s-taspri-hpux-dce.ads: Likewise.
6184 * s-taspri-mingw.ads: Likewise.
6185 * s-taspri-solaris.ads: Likewise.
6186 * s-taspri-tru64.ads: Likewise.
6187 * s-taspri-vms.ads: Likewise.
6188 * s-taspri-vxworks.ads: Likewise.
6189 * s-tasque.adb: Likewise.
6190 * s-tasque.ads: Likewise.
6191 * s-tasren.adb: Likewise.
6192 * s-tasren.ads: Likewise.
6193 * s-tasres.ads: Likewise.
6194 * s-tassta.adb: Likewise.
6195 * s-tassta.ads: Likewise.
6196 * s-tasuti.adb: Likewise.
6197 * s-tasuti.ads: Likewise.
6198 * s-tfsetr-default.adb: Likewise.
6199 * s-tfsetr-vxworks.adb: Likewise.
6200 * s-tpinop.adb: Likewise.
6201 * s-tpinop.ads: Likewise.
6202 * s-tpoben.adb: Likewise.
6203 * s-tpoben.ads: Likewise.
6204 * s-tpobop.adb: Likewise.
6205 * s-tpobop.ads: Likewise.
6206 * s-tpopde-vms.adb: Likewise.
6207 * s-tpopde-vms.ads: Likewise.
6208 * s-tpopsp-lynxos.adb: Likewise.
6209 * s-tpopsp-posix-foreign.adb: Likewise.
6210 * s-tpopsp-posix.adb: Likewise.
6211 * s-tpopsp-solaris.adb: Likewise.
6212 * s-tpopsp-vxworks.adb: Likewise.
6213 * s-tporft.adb: Likewise.
6214 * s-tposen.adb: Likewise.
6215 * s-tposen.ads: Likewise.
6216 * s-traceb.adb: Likewise.
6217 * s-traceb.ads: Likewise.
6218 * s-traces-default.adb: Likewise.
6219 * s-traces.adb: Likewise.
6220 * s-traces.ads: Likewise.
6221 * s-traent-vms.adb: Likewise.
6222 * s-traent-vms.ads: Likewise.
6223 * s-traent.adb: Likewise.
6224 * s-traent.ads: Likewise.
6225 * s-trafor-default.adb: Likewise.
6226 * s-trafor-default.ads: Likewise.
6227 * s-tratas-default.adb: Likewise.
6228 * s-tratas.adb: Likewise.
6229 * s-tratas.ads: Likewise.
6230 * s-unstyp.ads: Likewise.
6231 * s-utf_32.adb: Likewise.
6232 * s-utf_32.ads: Likewise.
6233 * s-vaflop-vms-alpha.adb: Likewise.
6234 * s-vaflop.adb: Likewise.
6235 * s-vaflop.ads: Likewise.
6236 * s-valboo.adb: Likewise.
6237 * s-valboo.ads: Likewise.
6238 * s-valcha.adb: Likewise.
6239 * s-valcha.ads: Likewise.
6240 * s-valdec.adb: Likewise.
6241 * s-valdec.ads: Likewise.
6242 * s-valenu.adb: Likewise.
6243 * s-valenu.ads: Likewise.
6244 * s-valint.adb: Likewise.
6245 * s-valint.ads: Likewise.
6246 * s-vallld.adb: Likewise.
6247 * s-vallld.ads: Likewise.
6248 * s-vallli.adb: Likewise.
6249 * s-vallli.ads: Likewise.
6250 * s-valllu.adb: Likewise.
6251 * s-valllu.ads: Likewise.
6252 * s-valrea.adb: Likewise.
6253 * s-valrea.ads: Likewise.
6254 * s-valuns.adb: Likewise.
6255 * s-valuns.ads: Likewise.
6256 * s-valuti.adb: Likewise.
6257 * s-valuti.ads: Likewise.
6258 * s-valwch.adb: Likewise.
6259 * s-valwch.ads: Likewise.
6260 * s-veboop.adb: Likewise.
6261 * s-veboop.ads: Likewise.
6262 * s-vector.ads: Likewise.
6263 * s-vercon.adb: Likewise.
6264 * s-vercon.ads: Likewise.
6265 * s-vmexta.adb: Likewise.
6266 * s-vmexta.ads: Likewise.
6267 * s-vxwext-kernel.ads: Likewise.
6268 * s-vxwext-rtp.adb: Likewise.
6269 * s-vxwext-rtp.ads: Likewise.
6270 * s-vxwext.ads: Likewise.
6271 * s-vxwork-arm.ads: Likewise.
6272 * s-vxwork-m68k.ads: Likewise.
6273 * s-vxwork-mips.ads: Likewise.
6274 * s-vxwork-ppc.ads: Likewise.
6275 * s-vxwork-sparcv9.ads: Likewise.
6276 * s-vxwork-x86.ads: Likewise.
6277 * s-wchcnv.adb: Likewise.
6278 * s-wchcnv.ads: Likewise.
6279 * s-wchcon.adb: Likewise.
6280 * s-wchcon.ads: Likewise.
6281 * s-wchjis.adb: Likewise.
6282 * s-wchjis.ads: Likewise.
6283 * s-wchstw.adb: Likewise.
6284 * s-wchstw.ads: Likewise.
6285 * s-wchwts.adb: Likewise.
6286 * s-wchwts.ads: Likewise.
6287 * s-widboo.adb: Likewise.
6288 * s-widboo.ads: Likewise.
6289 * s-widcha.adb: Likewise.
6290 * s-widcha.ads: Likewise.
6291 * s-widenu.adb: Likewise.
6292 * s-widenu.ads: Likewise.
6293 * s-widlli.adb: Likewise.
6294 * s-widlli.ads: Likewise.
6295 * s-widllu.adb: Likewise.
6296 * s-widllu.ads: Likewise.
6297 * s-widwch.adb: Likewise.
6298 * s-widwch.ads: Likewise.
6299 * s-win32.ads: Likewise.
6300 * s-winext.ads: Likewise.
6301 * s-wwdcha.adb: Likewise.
6302 * s-wwdcha.ads: Likewise.
6303 * s-wwdenu.adb: Likewise.
6304 * s-wwdenu.ads: Likewise.
6305 * s-wwdwch.adb: Likewise.
6306 * s-wwdwch.ads: Likewise.
6307 * scans.adb: Likewise.
6308 * scans.ads: Likewise.
6309 * seh_init.c: Likewise.
6310 * sfn_scan.adb: Likewise.
6311 * sinfo.adb: Likewise.
6312 * sinfo.ads: Likewise.
6313 * sinput.adb: Likewise.
6314 * sinput.ads: Likewise.
6315 * snames.adb: Likewise.
6316 * snames.ads: Likewise.
6317 * socket.c: Likewise.
6318 * stand.adb: Likewise.
6319 * stand.ads: Likewise.
6320 * stringt.adb: Likewise.
6321 * stringt.ads: Likewise.
6322 * sysdep.c: Likewise.
6323 * system-aix.ads: Likewise.
6324 * system-darwin-ppc.ads: Likewise.
6325 * system-darwin-x86.ads: Likewise.
6326 * system-darwin-x86_64.ads: Likewise.
6327 * system-freebsd-x86.ads: Likewise.
6328 * system-hpux-ia64.ads: Likewise.
6329 * system-hpux.ads: Likewise.
6330 * system-irix-n32.ads: Likewise.
6331 * system-irix-n64.ads: Likewise.
6332 * system-irix-o32.ads: Likewise.
6333 * system-linux-alpha.ads: Likewise.
6334 * system-linux-hppa.ads: Likewise.
6335 * system-linux-ia64.ads: Likewise.
6336 * system-linux-mips.ads: Likewise.
6337 * system-linux-mipsel.ads: Likewise.
6338 * system-linux-ppc.ads: Likewise.
6339 * system-linux-ppc64.ads: Likewise.
6340 * system-linux-s390.ads: Likewise.
6341 * system-linux-s390x.ads: Likewise.
6342 * system-linux-sh4.ads: Likewise.
6343 * system-linux-sparc.ads: Likewise.
6344 * system-linux-sparcv9.ads: Likewise.
6345 * system-linux-x86.ads: Likewise.
6346 * system-linux-x86_64.ads: Likewise.
6347 * system-lynxos-ppc.ads: Likewise.
6348 * system-lynxos-x86.ads: Likewise.
6349 * system-mingw-x86_64.ads: Likewise.
6350 * system-mingw.ads: Likewise.
6351 * system-rtems.ads: Likewise.
6352 * system-solaris-sparc.ads: Likewise.
6353 * system-solaris-sparcv9.ads: Likewise.
6354 * system-solaris-x86.ads: Likewise.
6355 * system-solaris-x86_64.ads: Likewise.
6356 * system-tru64.ads: Likewise.
6357 * system-vms-ia64.ads: Likewise.
6358 * system-vms-zcx.ads: Likewise.
6359 * system-vms.ads: Likewise.
6360 * system-vms_64.ads: Likewise.
6361 * system-vxworks-arm.ads: Likewise.
6362 * system-vxworks-m68k.ads: Likewise.
6363 * system-vxworks-mips.ads: Likewise.
6364 * system-vxworks-ppc.ads: Likewise.
6365 * system-vxworks-sparcv9.ads: Likewise.
6366 * system-vxworks-x86.ads: Likewise.
6367 * system.ads: Likewise.
6368 * table.adb: Likewise.
6369 * table.ads: Likewise.
6370 * targext.c: Likewise.
6371 * targparm.ads: Likewise.
6372 * tree_in.adb: Likewise.
6373 * tree_in.ads: Likewise.
6374 * tree_io.adb: Likewise.
6375 * tree_io.ads: Likewise.
6376 * types.adb: Likewise.
6377 * types.ads: Likewise.
6378 * uintp.adb: Likewise.
6379 * uintp.ads: Likewise.
6380 * uname.adb: Likewise.
6381 * uname.ads: Likewise.
6382 * urealp.adb: Likewise.
6383 * urealp.ads: Likewise.
6384 * vx_stack_info.c: Likewise.
6385 * widechar.adb: Likewise.
6386 * widechar.ads: Likewise.
6387 * exp_attr.adb: Change copyright header to refer to version
6388 3 of the GNU General Public License and to point readers at the
6389 COPYING3 file and the FSF's license web page.
6390 * sem.adb: Likewise.
6391 * sem_attr.ads: Likewise.
6392 * freeze.adb: Likewise.
6393 * freeze.ads: Likewise.
6394 * errout.ads: Likewise.
6395 * erroutc.adb: Likewise.
6396 * exp_ch11.ads: Likewise.
6398 2009-04-09 Jakub Jelinek <jakub@redhat.com>
6400 * config-lang.in: Change copyright header to refer to version
6401 3 of the GNU General Public License and to point readers at the
6402 COPYING3 file and the FSF's license web page.
6403 * gcc-interface/trans.c: Likewise.
6404 * gnathtml.pl: Likewise.
6405 * gcc-interface/ada.h: Likewise. Remove runtime exception.
6406 * gcc-interface/gigi.h: Likewise.
6407 * gcc-interface/misc.c: Likewise.
6408 * gcc-interface/targtyps.c: Likewise.
6410 2009-04-09 Nicolas Setton <setton@adacore.com>
6412 * s-osinte-darwin.ads: Fix wrong binding to struc timeval.
6414 * s-osinte-darwin.adb (To_Timeval): Adapt to fixed implementation of
6417 2009-04-09 Bob Duff <duff@adacore.com>
6419 * exp_ch5.adb, exp_ch9.adb: Correct miscellaneous Slocs in
6420 internally-generated nodes related to select statements to avoid
6421 confusing the debugger.
6423 2009-04-09 Pascal Obry <obry@adacore.com>
6425 * make.adb: Ensure that all linker arguments are duplicated.
6427 2009-04-09 Robert Dewar <dewar@adacore.com>
6429 * sem_ch5.adb: Minor reformatting
6431 2009-04-09 Vincent Celier <celier@adacore.com>
6434 Change GNAT CHECK qualifier /DIAGNOSIS_LIMIT to /DIAGNOSTIC_LIMIT
6435 New qualifier /LEXPAND_SOURCE=nnn for -gnatGnnn
6436 New qualifier /LXDEBUG=nnn for -gnatDnnn
6440 Update documentation for VMS qualifiers equivalent to -gnatGnn and
6443 2009-04-09 Nicolas Setton <setton@adacore.com>
6445 * s-osinte-darwin.ads: (Pad_Type): Make this an array of unsigned_long,
6446 to match layout of siginfo_t in sys/signal.h.
6448 * gcc-interface/Makefile.in: Add section for x86_64 darwin.
6450 2009-04-09 Thomas Quinot <quinot@adacore.com>
6452 * g-socket.ads: (Fd_Set): Use Interfaces.C.long alignment.
6454 2009-04-09 Nicolas Setton <setton@adacore.com>
6456 * s-oscons-tmplt.c: Allow long lines in the generated spec.
6457 Add generation of Darwin-specific constants needed when binding to the
6460 2009-04-09 Robert Dewar <dewar@adacore.com>
6463 (Insert_Valid_Check): Avoid unnecessary generation of junk declaration
6464 when no invalid values exist, Avoid duplicate read of atomic variable.
6466 * cstand.adb (Build_Signed_Integer_Type): Set Is_Known_Valid
6467 (Standard_Unsigned): Set Is_Known_Valid
6469 * sem_ch3.adb (Analyze_Subtype_Declaration): Copy Is_Known_Valid on
6470 subtype declaration if no constraint.
6471 (Set_Modular_Size): Set Is_Known_Valid if appropriate
6472 (Build_Derived_Numeric_Type): Copy Is_Known_Valid if no constraint
6474 2009-04-09 Robert Dewar <dewar@adacore.com>
6476 * switch-c.adb, gnat_ugn.texi, vms_data.ads, switch.adb,
6477 switch.ads: for numeric switches, an optional equal sign is always
6480 2009-04-09 Vincent Celier <celier@adacore.com>
6482 * prj-nmsc.adb (Get_Unit): Do not consider Casing on platform where
6483 the case of file names is not significant.
6485 2009-04-09 Vincent Celier <celier@adacore.com>
6487 * errout.adb: Remove dependency on package Style
6489 * style.ads, styleg.adb, styleg.ads (RM_Column_Check): Remove function,
6492 * stylesw.ads, stylesw.adb (RM_Column_Check): New function, moved from
6495 * errutil.adb, par.adb: Import Stylesw
6497 2009-04-09 Arnaud Charlet <charlet@adacore.com>
6499 * opt.ads: Fix typos.
6501 2009-04-09 Robert Dewar <dewar@adacore.com>
6503 * einfo.adb: Minor reformatting
6505 2009-04-09 Robert Dewar <dewar@adacore.com>
6507 * gcc-interface/Make-lang.in, style.ads, style.adb: Reorganize style
6510 * styleg-c.ads, styleg-c.adb: Removed, no longer used.
6512 2009-04-09 Robert Dewar <dewar@adacore.com>
6514 * g-comver.adb: Minor reformatting.
6516 2009-04-09 Thomas Quinot <quinot@adacore.com>
6518 * lib-load.ads (Load_Unit): Update documentation.
6520 2009-04-09 Ed Schonberg <schonberg@adacore.com>
6522 * lib-load.adb (Load_Unit): When loading the parent of a child unit
6523 named in a with_clause, retain the with_clause to preserve a
6524 limited_with indication.
6526 2009-04-09 Robert Dewar <dewar@adacore.com>
6528 * sem_ch7.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, sem_util.adb,
6529 exp_ch13.adb, sem_ch6.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb,
6530 sem_cat.adb: Code clean up: use Is_Package_Or_Generic_Package where
6531 possible to replace an OR of two separate tests.
6533 2009-04-09 Robert Dewar <dewar@adacore.com>
6535 * binderr.adb, errout.adb, errutil.adb: New circuitry for handling
6538 * erroutc.adb, erroutc.ads (Warnings_Suppressed): Now tests global
6539 warning status as well.
6541 * opt.ads (Maximum_Messages): New name for Maximum_Errors.
6543 * switch-b.adb, switch-c.adb: Change name Maximum_Errors to
6546 * bindusg.adb, usage.adb: Update line for -gnatm switch
6548 * gnat_ugn.texi: Update documentation for -gnatmnn compiler switch and
6551 2009-04-09 Robert Dewar <dewar@adacore.com>
6553 * sem_ch10.adb: Minor reformatting.
6555 2009-04-09 Bob Duff <duff@adacore.com>
6557 * exp_ch11.adb (Expand_Exception_Handlers, Prepend_Call_To_Handler):
6558 Set Sloc of generated nodes for calls to Undefer_Aborts and
6559 Save_Occurrence to No_Location, so the debugger ignores them and
6560 therefore does not jump back and forth when single stepping.
6562 2009-04-09 Robert Dewar <dewar@adacore.com>
6564 * switch-b.adb: Minor reformatting.
6566 2009-04-09 Robert Dewar <dewar@adacore.com>
6568 * sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, exp_atag.adb, layout.adb,
6569 sem_dist.adb, exp_ch7.adb, sem_ch5.adb, sem_type.adb, exp_imgv.adb,
6570 exp_util.adb, sem_aux.adb, sem_aux.ads, exp_attr.adb, exp_ch9.adb,
6571 sem_ch7.adb, inline.adb, fe.h, sem_ch9.adb, exp_code.adb, einfo.adb,
6572 einfo.ads, exp_pakd.adb, checks.adb, sem_ch12.adb, exp_smem.adb,
6573 tbuild.adb, freeze.adb, sem_util.adb, sem_res.adb, sem_attr.adb,
6574 exp_dbug.adb, sem_case.adb, exp_tss.adb, exp_ch4.adb, exp_ch6.adb,
6575 sem_smem.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, exp_disp.adb,
6576 sem_ch8.adb, exp_aggr.adb, sem_eval.adb, sem_cat.adb, exp_dist.adb,
6577 sem_ch13.adb, exp_strm.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb:
6578 Reorganize einfo/sem_aux, moving routines from einfo to sem_aux
6580 2009-04-09 Robert Dewar <dewar@adacore.com>
6582 * exp_util.adb (Silly_Boolean_Array_Xor_Test): Simplify existing code.
6584 * atree.h: Add Elist26
6586 * gnat_ugn.texi: Complete documentation deprecating -gnatN for non-gcc
6589 2009-04-09 Javier Miranda <miranda@adacore.com>
6591 * exp_disp.adb (Export_DT): Addition of a new argument (Index); used to
6592 retrieve from the Dispatch_Table_Wrappers list the external name.
6593 Addition of documentation.
6594 (Make_Secondary_DT): Addition of a new argument (Suffix_Index) that is
6595 used to export secondary dispatch tables (in the previous version of
6596 the frontend only primary dispatch tables were exported). Addition of
6598 (Import_DT): New subprogram (internal of Make_Tags). Used to import a
6599 dispatch table of a given tagged type.
6600 (Make_Tags): Modified to import secondary dispatch tables.
6602 * sem_ch3.adb (Analyze_Object_Declaration): Code cleanup.
6603 (Constant_Redeclaration): Code cleanup.
6605 * einfo.ads (Dispatch_Table_Wrapper): Renamed to
6606 Dispatch_Table_Wrappers. Update documentation.
6608 * einfo.adb (Dispatch_Table_Wrapper, Set_Dispatch_Table_Wrapper):
6609 Renamed to Dispatch_Table_Wrappers.
6611 * sem_util.adb (Collect_Interface_Components): Improve handling of
6614 * atree.ads (Elist26, Set_Elist26): New subprograms
6616 * atree.adb (Elist26, Set_Elist26): New subprograms
6618 2009-04-09 Javier Miranda <miranda@adacore.com>
6620 * sem_ch3.adb (Build_Derived_Record_Type): Fix typo.
6621 (Derive_Progenitor_Subprograms): Handle interfaces in subtypes of
6624 2009-04-09 Robert Dewar <dewar@adacore.com>
6626 * s-direio.adb: Minor reformatting
6628 * exp_ch4.adb (Expand_Concatenate): Avoid overflow checks for String
6630 2009-04-09 Robert Dewar <dewar@adacore.com>
6632 * exp_ch4.adb (Expand_Concatenate): Improve handling of overflow cases
6634 2009-04-09 Pascal Obry <obry@adacore.com>
6636 * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coinve.ads,
6637 s-tpoben.adb, s-tpoben.ads, s-finimp.adb, s-finimp.ads,
6638 a-convec.adb, a-convec.ads, a-finali.adb, a-finali.ads,
6639 a-filico.ads: Add some missing overriding keywords.
6641 2009-04-09 Pascal Obry <obry@adacore.com>
6643 * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coorma.ads, a-cihase.adb,
6644 a-cihase.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads,
6645 a-coormu.adb, a-coormu.ads, a-cohase.adb, a-cohase.ads: Minor
6648 2009-04-09 Ed Schonberg <schonberg@adacore.com>
6650 * sem_ch6.adb (Check_Overriding_Indicator): Do not generate warning on
6651 missing overriding indicator if the new declaration is not seen as
6654 2009-04-09 Thomas Quinot <quinot@adacore.com>
6656 * exp_ch4.adb (Expand_Concatenate): Add circuitry to properly handle
6657 overflows in computation of bounds.
6659 2009-04-09 Pascal Obry <obry@adacore.com>
6661 * a-cihama.adb, a-cgcaso.adb, a-cihase.adb, a-cohase.adb: Fix some
6664 2009-04-09 Robert Dewar <dewar@adacore.com>
6666 * sem_attr.adb (Check_Stream_Attribute): Check violation of
6667 restriction No_Streams
6669 * gnat_rm.texi: Clarify No_Streams restriction
6671 * g-socket.adb: Minor reformatting.
6673 2009-04-09 Thomas Quinot <quinot@adacore.com>
6675 * g-socket.ads: Mark Initialize and Finalize as obsolesent interfaces.
6677 2009-04-09 Geert Bosch <bosch@adacore.com>
6679 * exp_fixd.adb (Build_Conversion): Accept new optional Trunc argument.
6680 (Set_Result): Likewise.
6681 (Expand_Convert_Float_To_Fixed): Have Set_Result truncate the
6682 conversion, as required by RM 4.6(31).
6684 2009-04-08 Robert Dewar <dewar@adacore.com>
6686 * checks.adb (Enable_Overflow_Check): Do not enable if overflow checks
6689 * exp_ch4.adb (Expand_Concatenate): Make sure checks are off for all
6692 2009-04-08 Robert Dewar <dewar@adacore.com>
6694 * sem_ch12.adb (Analyze_Package_Instantiation): Remove test for
6695 No_Local_Allocators restriction preventing local instantiation.
6697 2009-04-08 Thomas Quinot <quinot@adacore.com>
6699 * sem_eval.adb: Minor comment fix
6701 2009-04-08 Thomas Quinot <quinot@adacore.com>
6703 * g-socket.adb, g-socket.ads (GNAT.Sockets.Sockets_Library_Controller):
6704 New limited controlled type used to automate the initialization and
6705 finalization of the sockets implementation.
6706 (GNAT.Sockets.Initialize, Finalize): Make these no-ops
6708 2009-04-08 Vincent Celier <celier@adacore.com>
6710 * prj-attr.adb: New read-only project-level attribute Project_Dir
6712 * prj-proc.adb (Add_Attributes): New parameter Project_Dir, value of
6713 read-only attribute of the same name.
6714 (Process_Declarative_Items): Call Add_Attributes with Project_Dir
6715 (Recursive_Process): Ditto
6717 * snames.adb: Add new standard name Project_Dir
6719 * snames.ads: Add new standard name Project_Dir
6721 2009-04-08 Thomas Quinot <quinot@adacore.com>
6723 * checks.adb: Minor reformatting
6725 2009-04-08 Vincent Celier <celier@adacore.com>
6727 * vms_data.ads: Add documentation for new style keyword
6728 OVERRIDING_INDICATORS
6730 2009-04-08 Robert Dewar <dewar@adacore.com>
6732 * sem_ch3.adb (Check_Completion.Post_Error): Post error on spec if the
6733 spec is in the current unit.
6735 2009-04-08 Ed Schonberg <schonberg@adacore.com>
6737 * sem_util.adb (Is_Protected_Self_Reference): Add guard to check for
6740 * usage.adb, gnat_ugn.texi: add info on -gnatyO: overriding indicators
6742 2009-04-08 Vincent Celier <celier@adacore.com>
6744 * vms_data.ads: Add VMS equivalent for -gnatyO (OVERRIDING_INDICATORS)
6746 2009-04-08 Thomas Quinot <quinot@adacore.com>
6748 * checks.ads: Minor reformatting
6750 2009-04-08 Robert Dewar <dewar@adacore.com>
6752 * gnat_rm.texi: Update documentation of pragma Obsolescent
6754 * sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow identifiers to
6755 be omitted, and allow Entity parameter to be omitted.
6757 2009-04-08 Thomas Quinot <quinot@adacore.com>
6759 * exp_util.adb: Minor comment fix
6761 2009-04-08 Robert Dewar <dewar@adacore.com>
6763 * g-socket.ads: Fix bad syntax in pragma Obsolescent
6765 * par-ch2.adb (Scan_Pragma_Argument_Association): Check for error of
6766 argument with no identifier following one that has an identifier. Was
6767 missed in some cases.
6769 * sem_prag.adb (Analyze_Pragma, case Check_Policy): Allow Policy
6771 (Analyze_Pragma, case Obsolescent): Allow Message, Version identifiers
6773 * snames.adb: Add Name_Policy
6775 * snames.ads: Add Name_Policy
6777 2009-04-08 Robert Dewar <dewar@adacore.com>
6779 * gnat_rm.texi: Minor reformatting
6781 * par-ch2.adb: Minor reformatting
6783 2009-04-08 Robert Dewar <dewar@adacore.com>
6785 * exp_attr.adb, sem_attr.adb, sem_util.adb: Code clean up.
6787 2009-04-08 Robert Dewar <dewar@adacore.com>
6789 * sem_cat.adb (Check_Categorization_Dependencies): Handle Preelaborate
6790 properly in the presence of Remote_Types or Remote_Call_Interface.
6792 * sem_util.adb: Add comment.
6794 2009-04-08 Robert Dewar <dewar@adacore.com>
6796 * ug_words: Add /ASSUME_VALID for -gnatB
6798 * vms_data.ads: Add /ASSUME_VALID for -gnatB
6800 * sem_cat.adb: Add clarifying commment
6802 * a-direio.ads (Bytes): Make sure value is non-zero
6804 2009-04-08 Ed Schonberg <schonberg@adacore.com>
6806 * sem_util.adb (Is_Variable): If the prefix is an explicit dereference
6807 that does not come from source, check for a rewritten function call in
6808 prefixed notation before other forms of rewriting.
6810 2009-04-08 Robert Dewar <dewar@adacore.com>
6812 * Makefile.rtl: Remove s-strops and s-sopco? from the run time, since
6813 these are now obsolescent units used only for bootrapping with an
6816 2009-04-08 Robert Dewar <dewar@adacore.com>
6818 * gnat_rm.texi: Add documentation for pragma Thread_Local_Storage
6820 * sem_ch3.adb: Minor comment updates
6822 2009-04-08 Ed Schonberg <schonberg@adacore.com>
6824 * inline.adb (Back_End_Cannot_Inline): restrict warning to subprograms
6825 that come from source.
6827 2009-04-08 Tristan Gingold <gingold@adacore.com>
6829 * gcc-interface/gigi.h (enum attr_type): Add ATTR_THREAD_LOCAL_STORAGE.
6830 * gcc-interface/decl.c (prepend_attributes): New case
6831 Pragma_Thread_Local_Storage.
6832 * gcc-interface/utils.c (process_attributes): New case
6833 ATTR_THREAD_LOCAL_STORAGE.
6835 2009-04-08 Ed Schonberg <schonberg@adacore.com>
6837 * inline.adb (Back_End_Cannot_Inline): Do not mark a body as inlineable
6838 by the back-end if it contains a call to a subprogram without a
6839 previous spec that is declared in the same unit.
6841 * errout.ads: Update comments on uses of dirs
6843 2009-04-08 Robert Dewar <dewar@adacore.com>
6845 * exp_ch4.adb (Expand_Concatenate): Make sure nodes are properly typed
6847 2009-04-08 Tristan Gingold <gingold@adacore.com>
6849 * sem_prag.adb: Restrict pragma Thread_Local_Storage to library level
6851 Set Has_Gigi_Rep_Item flag to TLS variables (to ease gigi work).
6853 2009-04-08 Vincent Celier <celier@adacore.com>
6856 (Add_Source): Add the mapping of the unit name to source file name in
6857 the Unit_Sources_HT hash table, if the unit name is not null.
6859 * prj.adb (Reset): Reset hash table Tree.Unit_Sources_HT
6861 * prj.ads (Unit_Sources_Htable): New hash table instantiation
6862 (Project_Tree_Data): New component Unit_Sources_HT
6864 2009-04-08 Thomas Quinot <quinot@adacore.com>
6866 * sem_ch8.adb: Minor reformatting.
6867 Minor code reorganization.
6869 2009-04-08 Robert Dewar <dewar@adacore.com>
6871 * snames.h, einfo.adb, einfo.ads, sem_prag.adb, snames.adb,
6872 snames.ads, freeze.adb, par-prag.adb: Add implementation of
6873 pragma Thread_Local_Storage, setting new flag
6874 Has_Pragma_Thread_Local_Storage in corresponding entities.
6876 2009-04-08 Emmanuel Briot <briot@adacore.com>
6878 * prj.ads: Update comment on switches file
6880 * prj-nmsc.adb: Code clean up. Use renaming clauses.
6882 2009-04-08 Robert Dewar <dewar@adacore.com>
6884 * exp_ch4.adb (Expand_Concatenate): Further fixes to bounds handling
6886 2009-04-08 Thomas Quinot <quinot@adacore.com>
6888 * ali-util.adb: Minor comment fix
6890 2009-04-08 Ed Schonberg <schonberg@adacore.com>
6892 * sem_ch8.adb (Analyze_Use_Type): Improve error message when clause
6893 appears in a context clause, and the enclosing package is mentioned in
6894 a limited_with_clause.
6895 (Use_One_Type): Reject clause if type is still incomplete.
6897 2009-04-08 Emmanuel Briot <briot@adacore.com>
6899 * prj-nmsc.adb (Check_File, Process_Sources_In_Multi_Language_Mode):
6900 avoid copies of Source_Data variables when possible, since these
6901 involve calls to memcpy() which are done too many times.
6903 2009-04-08 Robert Dewar <dewar@adacore.com>
6905 * exp_ch4.adb (Expand_Concatenate): Clean up code
6907 2009-04-07 Thomas Quinot <quinot@adacore.com>
6909 * exp_ch4.adb (Expand_Concatenate): Add missing conversion to index
6910 type for the case of concatenating a constrained array indexed by an
6913 2009-04-07 Ed Schonberg <schonberg@adacore.com>
6915 * sem_ch6.adb (Check_Conformance): when checking conformance of an
6916 operation that overrides an abstract operation inherited from an
6917 interface, return False if only one of the controlling formals is an
6920 2009-04-07 Ed Schonberg <schonberg@adacore.com>
6922 * sem_ch8.adb (Analyze_Object_Renaming): additional error messages
6923 mandated by AI05-105.
6925 2009-04-07 Vincent Celier <celier@adacore.com>
6927 * prj-nmsc.adb (Get_Mains): Warn if a main is an empty string
6929 2009-04-07 Thomas Quinot <quinot@adacore.com>
6931 * usage.adb: Minor fix in usage message.
6933 * sem_ch10.adb (Remove_Homonyms): Fix subtype of formal in body to
6934 match declaration; the correct subtype is Node_Id, not Entity_Id,
6935 because the expected node kind is an identifier, not a defining
6938 * switch-c.adb: Minor reformatting.
6940 * uintp.adb: Minor reformatting.
6942 2009-04-07 Robert Dewar <dewar@adacore.com>
6944 * exp_ch13.adb: Minor reformatting
6946 2009-04-07 Robert Dewar <dewar@adacore.com>
6948 * sem_warn.adb (Check_Infinite_Loop_Warning.Test_Ref): Add defence
6949 against missing parent.
6951 2009-04-07 Thomas Quinot <quinot@adacore.com>
6953 * xoscons.adb: Minor reformatting
6955 2009-04-07 Robert Dewar <dewar@adacore.com>
6957 * rtsfind.ads: Remove obsolete string concatenation entries
6959 2009-04-07 Robert Dewar <dewar@adacore.com>
6961 * exp_ch4.adb (Expand_Concatenate): Redo handling of bounds
6963 2009-04-07 Ed Schonberg <schonberg@adacore.com>
6965 * sem_ch10.adb (Check_Body_Required): Handle properly imported
6968 2009-04-07 Gary Dismukes <dismukes@adacore.com>
6970 * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case
6971 Attribute_Address): When Init_Or_Norm_Scalars is True and the object
6972 is of a scalar or string type then suppress the setting of the
6973 expression to Empty.
6975 * freeze.adb (Warn_Overlay): Also emit the warnings about default
6976 initialization for the cases of scalar and string objects when
6977 Init_Or_Norm_Scalars is True.
6979 2009-04-07 Bob Duff <duff@adacore.com>
6981 * s-secsta.ads, g-pehage.ads, s-fileio.ads: Minor comment fixes
6983 2009-04-07 Bob Duff <duff@adacore.com>
6985 * gnat_rm.texi, s-fileio.adb (System.File_IO.Open): New feature: A
6986 Form parameter of Text_Translation=No allows binary mode for Text_IO
6989 * gnat_rm.texi: Document Form parameter Text_Translation=xxx.
6991 2009-04-07 Javier Miranda <miranda@adacore.com>
6993 * exp_ch5.adb (Expand_Assign_Array): Add implicit conversion when
6994 processing the bounds for bit packed arrays or VM target machines.
6996 2009-04-07 Thomas Quinot <quinot@adacore.com>
6998 * g-sothco.ads (Int_Access): Remove extraneous access type (use
6999 anonymous access instead).
7000 (Get_Socket_From_Set): Fix incorrectly reverted formals
7001 Last and Socket to match the underlying C routine.
7003 * g-socket.adb, g-socket.ads
7004 (Get): Use named parameter associations instead of positional ones in
7005 call go Get_Socket_From_Set, since this routine has two formals of the
7007 (Image): New procedure.
7009 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
7010 g-socthi-vxworks.ads, g-socthi-mingw.ads, g-socthi.adb, g-socthi.ads:
7011 (C_Ioctl, Syscall_Ioctl): use "access C.int" instead of "Int_Access"
7012 for type of Arg formal.
7014 * sem_warn.adb: Minor reformatting
7016 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7018 * sem_util.adb (Has_Tagged_Component): Fix typo in loop that iterates
7019 over record components.
7021 2009-04-07 Nicolas Roche <roche@adacore.com>
7024 Don't include resolvLib.h on VxWorks 6 (kernel and rtp). This library
7025 has disappeared between VxWorks 6.4 and VxWorks 6.5
7026 In RTP mode use time.h instead of times.h
7028 2009-04-07 Robert Dewar <dewar@adacore.com>
7030 * exp_ch4.adb (Expand_N_Op_Concat): Improve lower bound handling
7032 2009-04-07 Kevin Pouget <pouget@adacore.com>
7034 * exp_dist.adb: Modify Build_From_Any_Fonction procedure to correct
7035 expanded code for constrained types.
7037 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7039 * sem_ch4.adb (Analyze_Overloaded_Selected_Component): implement
7040 AI05-105: in an object renaming declaration, anonymousness is a name
7043 * sem_ch8.adb (Analyze_Object_Renaming): Ditto.
7045 2009-04-07 Arnaud Charlet <charlet@adacore.com>
7047 * g-comlin.adb (Expansion): Fix old regression: also return directory
7048 names when matching.
7050 2009-04-07 Robert Dewar <dewar@adacore.com>
7053 (Expand_N_Op_Concat): Call Expand_Concatenate for all cases
7054 (Expand_Concatenate): New name for Expand_Concatenate_String which has
7055 been rewritten to handle all types.
7056 (Expand_Concatenate_Other): Remove
7058 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7060 * lib-xref.adb (Generate_Reference): A default subprogram in an
7061 instance appears within the tree for the instance, but generates an
7062 implicit reference in the ALI.
7064 2009-04-07 Javier Miranda <miranda@adacore.com>
7066 * sem_ch3.adb (Build_Derived_Record_Type): When processing a tagged
7067 derived type that has discriminants, propagate the list of interfaces
7068 to the corresponding new base type. In addition, propagate also
7069 attribute Limited_Present (found working in this patch).
7071 2009-04-07 Robert Dewar <dewar@adacore.com>
7073 * exp_ch4.adb: Rewrite concatenation expansion.
7075 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7077 * sem_ch8.adb (Restore_Scope_Stack): First_Private_Entity is only
7078 relevant to packages.
7080 2009-04-07 Robert Dewar <dewar@adacore.com>
7082 * sem_attr.adb: Minor reformatting
7084 * sem_ch6.adb: Minor reformatting
7086 2009-04-07 Tristan Gingold <gingold@adacore.com>
7088 * socket.c: Add more protections against S_resolvLib_ macros.
7090 2009-04-07 Thomas Quinot <quinot@adacore.com>
7092 * sem_attr.adb: Minor reformatting
7094 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7096 * sem_ch6.adb (New_Overloaded_Entity): New predicate
7097 Is_Overriding_Alias to handle properly types that inherit two homonym
7098 operations that have distinct dispatch table entries.
7100 2009-04-07 Emmanuel Briot <briot@adacore.com>
7102 * s-regexp.adb (Create_Mapping): Ignore excaped open parenthesis when
7103 looking for the end of a parenthesis group
7105 2009-04-07 Tristan Gingold <gingold@adacore.com>
7107 * gsocket.h Don't #include resolvLib.h if __RTP__ is defined.
7109 * socket.c Don't use resolvLib_ macros if not defined.
7111 2009-04-07 Robert Dewar <dewar@adacore.com>
7113 * g-socket.adb: Minor reformatting.
7115 * g-socthi-mingw.adb: Minor reformatting
7117 * g-sothco.ads: Minor reformatting
7120 (Expand_Concatenate_String): Complete rewrite to generate efficient code
7121 inline instead of relying on external library routines.
7123 * s-strops.ads, s-sopco5.ads, s-sopco5.adb, s-sopco4.ads, s-sopco4.adb,
7124 s-sopco3.ads, s-sopco3.adb, s-strops.adb: Note that this unit is now
7127 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7130 (Eval_Attribute): for attributes of array objects that are not strings,
7131 attributes are not static if nominal subtype of object is unconstrained.
7133 2009-04-07 Ed Schonberg <schonberg@adacore.com>
7135 * sem_ch6.adb (New_Overloaded_Entity): If two implicit homonym
7136 operations for a type T in an instance do not override each other,
7137 when T is derived from a formal private type, the corresponding
7138 operations inherited by a type derived from T outside
7139 of the instance do not override each other either.
7141 2009-04-07 Robert Dewar <dewar@adacore.com>
7143 (Osint.Fail): Change calling sequence to have one string arg
7144 (Make.Make_Failed): Same change
7145 All callers are adjusted to use concatenation
7147 2009-04-07 Robert Dewar <dewar@adacore.com>
7149 * exp_ch4.adb: Fix documentation typo
7151 2009-04-07 Robert Dewar <dewar@adacore.com>
7153 * tbuild.ads: Minor reformatting
7155 2009-04-07 Javier Miranda <miranda@adacore.com>
7157 * exp_disp.adb (Make_DT): Avoid the generation of the OSD_Table
7158 when compiling under ZFP runtime.
7160 2009-04-07 Robert Dewar <dewar@adacore.com>
7162 * g-comlin.adb: Minor reformatting
7164 2009-04-07 Thomas Quinot <quinot@adacore.com>
7166 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
7167 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
7168 g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads, g-sothco.ads:
7169 Remove dynamic allocation of Fd_Set in Socket_Set_Type objects.
7171 2009-04-07 Robert Dewar <dewar@adacore.com>
7173 * gnat_ugn.texi: Document -gnatDnn/-gnatGnn
7175 * opt.ads (Sprint_Line_Limit): New parameter
7177 * sprint.adb: Usa Sprint_Line_Limit instead of Line_Limit throughout
7179 * switch-c.adb: Recognize -gnatDnnn and -gnatGnnn switches
7181 * usage.adb: Output information for -gnatGnn -gnatDnn
7183 2009-04-07 Robert Dewar <dewar@adacore.com>
7185 * make.adb: Minor reformatting
7187 2009-04-07 Robert Dewar <dewar@adacore.com>
7189 * mlib-tgt-specific-vms-alpha.adb: Minor reformatting
7191 2009-04-07 Robert Dewar <dewar@adacore.com>
7193 * mlib-tgt-specific-vms-ia64.adb: Minor reformatting
7195 2009-04-07 Robert Dewar <dewar@adacore.com>
7198 Remove Assume_Valid parameter from In_Subrange_Of calls
7201 (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
7202 (Is_In_Range): Remove incorrect use of Assume_Valid
7203 (Is_Out_Of_Range): Remove incorrect use of Assume_Valid
7206 (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
7207 (Is_In_Range): Documentation cleanup
7208 (Is_Out_Of_Range): Documentation cleanup
7211 Add documentation for Assume_No_Invalid_Values pragma
7213 * sem_ch12.adb: Minor reformatting
7215 * sem_ch6.adb: (Check_Conformance): Avoid cascaded errors
7217 * sem_prag.adb: Improve error message.
7219 * gnatchop.adb, osint.ads, sinput.adb, sinput.ads, styleg.adb:
7220 LF/CR no longer recognized as line terminator
7222 * switch.ads: Minor documentation improvement
7224 * vms_data.ads: Minor reformatting
7226 2009-04-07 Robert Dewar <dewar@adacore.com>
7228 * checks.adb (Determine_Range): Add Assume_Valid parameter
7230 * checks.ads (Determine_Range): Add Assume_Valid parameter
7232 * errout.adb (Error_Msg_NEL): Use Suppress_Loop_Warnings rather than
7233 Is_Null_Loop to suppress warnings in a loop body.
7236 (Rewrite_Comparison): Major rewrite to accomodate invalid values
7239 (Expand_N_Loop_Statement): Delete loop known not to execute
7242 (Assume_No_Invalid_Values): Now set to False, and as documented, this
7243 fully enables the proper handling of invalid values.
7246 New calling sequence for Is_In_Range
7249 (Analyze_Iteration_Scheme): Accomodate possible invalid values
7250 in determining if a loop range is null.
7253 (Is_In_Range): Add Assume_Valid parameter
7254 (Is_Out_Of_Range): Add Assume_Valid_Parameter
7255 (Compile_Time_Compare): Major rewrite to accomodate invalid values and
7256 also to do more accurate and complete range analysis, catching more
7260 (Is_In_Range): Add Assume_Valid parameter
7261 (Is_Out_Of_Range): Add Assume_Valid_Parameter
7264 New calling sequence for Is_In_Range
7267 (Suppress_Loop_Warnings): New flag
7270 (Is_Null_Loop): Update documentation
7271 (Suppress_Loop_Warnings): New flag
7273 * gnat_ugn.texi: Document -gnatB switch
7275 2009-04-07 Arnaud Charlet <charlet@adacore.com>
7277 * gnatvsn.ads: Bump version number.
7279 2009-04-07 Thomas Quinot <quinot@adacore.com>
7281 * exp_ch3.adb: Minor rewording (comments)
7283 2009-04-07 Robert Dewar <dewar@adacore.com>
7285 * exp_disp.adb: Minor reformatting
7287 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7289 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Test the
7291 * gcc-interface/trans.c (lvalue_required_p): Likewise.
7293 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7295 * gcc-interface/trans.c (Attribute_to_gnu) <Max_Size_In_Storage_Elmts>:
7296 Do not convert the result. Remove obsolete comment.
7298 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7300 * gcc-interface/trans.c (establish_gnat_vms_condition_handler): Clear
7302 (Subprogram_Body_to_gnu): Fix pasto.
7304 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7306 * gcc-interface/gigi.h (standard_datatypes): Remove ADT_void_type_decl.
7307 (void_type_decl_node): Remove.
7308 (init_gigi_decls): Likewise.
7309 (gnat_install_builtins): Declare.
7310 (record_builtin_type): Likewise.
7311 (create_type_stub_decl): Likewise.
7312 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Void>: Use void_type.
7313 (gnat_to_gnu_entity) <E_Array_Type>: Make fat and thin pointer types
7315 <E_Array_Subtype>: Use the index types, not only their name, in the
7316 record giving the names of the bounds, if any.
7317 For a packed array type, make it artificial only if the base type
7318 was artificial as well. Remove redundant statement.
7319 (gnat_to_gnu_entity) <E_Incomplete_Type>: Do not create TYPE_DECL for
7321 Use create_type_stub_decl to build the TYPE_STUB_DECL of types.
7322 (rest_of_type_decl_compilation_no_defer): Likewise.
7323 * gcc-interface/misc.c (gnat_printable_name): Add missing guard.
7324 * gcc-interface/utils.c (make_dummy_type): Always create TYPE_STUB_DECL
7325 and use create_type_stub_decl to build it.
7326 (gnat_pushdecl): Rewrite condition.
7327 (gnat_install_builtins): Remove bogus declaration.
7328 (record_builtin_type): New function.
7329 (finish_record_type): Use create_type_stub_decl to build TYPE_STUB_DECL
7331 (create_type_stub_decl): New function.
7332 (create_type_decl): Assert that the type is not dummy. If the type
7333 hasn't been named yet, equate the TYPE_STUB_DECL to the created node.
7334 (build_vms_descriptor32): Do not create TYPE_DECL for the descriptor.
7335 (build_vms_descriptor): Likewise.
7336 (init_gigi_decls): Delete and move bulk of code to...
7337 * gcc-interface/trans.c (gigi): ...here. Use record_builtin_type.
7338 (emit_range_check): Add gnat_node parameter.
7339 (emit_index_check): Likewise.
7340 (emit_check): Likewise.
7341 (build_unary_op_trapv): Likewise.
7342 (build_binary_op_trapv): Likewise.
7343 (convert_with_check): Likewise.
7344 (Attribute_to_gnu): Adjust calls for above changes.
7345 (call_to_gnu): Likewise.
7346 (gnat_to_gnu): Likewise.
7347 (assoc_to_constructor): Likewise.
7348 (pos_to_constructor): Likewise.
7349 (Sloc_to_locus): Set BUILTINS_LOCATION for Standard_Location nodes.
7350 (process_type): Do not create TYPE_DECL for dummy types.
7352 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7354 * gcc-interface/decl.c (gnat_to_gnu_entity): Reorder local variables.
7355 * gcc-interface/trans.c: Fix formatting throughout. Fix comments.
7356 * gcc-interface/utils.c: Fix comments.
7358 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7360 * gcc-interface/decl.c (compile_time_known_address_p): Rewrite and
7362 (gnat_to_gnu_type): Move around.
7363 (get_unpadded_type): Likewise.
7364 * gcc-interface/utils.c (update_pointer_to): Use synthetic macro.
7367 2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
7369 * gcc-interface/trans.c (check_for_eliminated_entity): New function.
7370 (Attribute_to_gnu): Invoke it for Access- and Address-like attributes.
7371 (call_to_gnu): Invoke it instead of manually checking.
7373 2009-04-04 Eric Botcazou <ebotcazou@adacore.com>
7375 * gcc-interface/utils.c (finish_record_type): Force structural equality
7376 checks if the record type is discriminated.
7378 2009-03-31 Eric Botcazou <ebotcazou@adacore.com>
7380 * system-linux-alpha.ads (Functions_Return_By_DSP): Remove.
7381 * system-linux-mips.ads (Functions_Return_By_DSP): Likewise.
7382 * system-linux-mipsel.ads (Functions_Return_By_DSP): Likewise.
7383 * system-linux-s390.ads (Functions_Return_By_DSP): Likewise.
7384 * system-linux-s390x.ads (Functions_Return_By_DSP): Likewise.
7385 * system-linux-sparc.ads (Functions_Return_By_DSP): Likewise.
7386 * system-linux-sparcv9.ads (Functions_Return_By_DSP): Likewise.
7388 2009-03-30 Paolo Bonzini <bonzini@gnu.org>
7390 * gcc-interface/decl.c (maybe_pad_type): Use TREE_OVERFLOW instead
7391 of TREE_CONSTANT_OVERFLOW.
7393 2009-03-30 Joseph Myers <joseph@codesourcery.com>
7395 PR rtl-optimization/323
7396 * gcc-interface/misc.c (gnat_post_options): Set
7397 flag_excess_precision_cmdline. Give an error for
7398 -fexcess-precision=standard for processors where the option is
7401 2009-03-27 H.J. Lu <hongjiu.lu@intel.com>
7404 * gcc-interface/utils.c (create_field_decl): Use "unsigned int"
7407 2009-03-11 Olivier Hainque <hainque@adacore.com>
7409 * gcc-interface/trans.c (gnat_to_gnu) <case N_Slice>: In range
7410 checks processing, remove unintended TREE_TYPE walk on index type.
7412 2009-03-01 Eric Botcazou <ebotcazou@adacore.com>
7415 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do no
7416 call make_packable_type on fat pointer types.
7417 <E_Array_Subtype>: Likewise.
7418 <E_Record_Subtype>: Call make_packable_type on all record types
7419 except for fat pointer types.
7420 (make_packable_type): Likewise.
7421 (gnat_to_gnu_field): Likewise.
7423 2009-02-28 Eric Botcazou <ebotcazou@adacore.com>
7425 * gcc-interface/Makefile.in (cygwin/mingw): Revert accidental
7426 EH_MECHANISM change made on 2007-12-06.
7428 2009-02-26 Andreas Schwab <schwab@suse.de>
7431 * Makefile.in (srcdir): Set to @top_srcdir@ instead of @srcdir@.
7432 * gcc-interface/Makefile.in: Change all uses of $(srcdir),
7433 $(fsrcdir) and $(fsrcpfx) to add ada subdir.
7435 (target_cpu_default): Substitute.
7437 2009-02-25 Laurent GUERBY <laurent@guerby.net>
7440 * a-teioed.adb (Expand): Fix Result overflow.
7442 2009-02-25 Laurent GUERBY <laurent@guerby.net>
7444 * gcc-interface/Makefile.in: Fix multilib handling for
7447 2009-02-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
7449 * s-oscons-tmplt.c [__osf__ && !_SS_MAXSIZE]: Undef AF_UNIX6.
7451 2009-02-18 H.J. Lu <hongjiu.lu@intel.com>
7453 * gcc-interface/misc.c (gnat_post_options): Turn off warn_psabi.
7455 2009-02-16 Eric Botcazou <ebotcazou@adacore.com>
7457 * gcc-interface/deftarg.c: Remove.
7459 2009-02-10 Olivier Hainque <hainque@adacore.com>
7460 Eric Botcazou <ebotcazou@adacore.com>
7462 * gcc-interface/decl.c (enum alias_set_op): New enumeration.
7463 (copy_alias_set): Rename into...
7464 (relate_alias_sets): ...this. Add third parameter OP. Retrieve the
7465 underlying array of unconstrained arrays for the new type as well.
7466 If the old and new alias sets don't conflict, make one a subset of
7467 the other as per the OP parameter.
7468 (gnat_to_gnu_entity): Adjust calls to copy_alias_set.
7469 <E_Record_Type>: Do not copy the alias set for derived types.
7470 For all types, make the alias set of derived types a superset of
7471 that of their parent type.
7472 (make_aligning_type): Adjust calls to copy_alias_set.
7473 (make_packable_type): Likewise.
7474 * gcc-interface/trans.c (gnat_to_gnu)<N_Validate_Unchecked_Conversion>:
7475 Check for alias set conflict instead of strict equality to issue the
7478 2009-02-09 Eric Botcazou <ebotcazou@adacore.com>
7480 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
7481 Set TYPE_NONALIASED_COMPONENT on the array type only if appropriate.
7482 (copy_alias_set): Assert that arrays have the same aliasing settings.
7483 (substitute_in_type) <ARRAY_TYPE>: Copy TYPE_NONALIASED_COMPONENT.
7485 2009-02-08 Eric Botcazou <ebotcazou@adacore.com>
7487 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
7488 Set TYPE_NONALIASED_COMPONENT on the array type.
7490 2009-01-31 Laurent GUERBY <laurent@guerby.net>
7492 * gcc-interface/Makefile.in: Fix mipsel linux handling.
7494 2009-01-16 Jakub Jelinek <jakub@redhat.com>
7496 * gcc-interface/Makefile.in: Fix multilib handling for
7499 2009-01-12 Eric Botcazou <ebotcazou@adacore.com>
7501 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Really strip
7502 only useless conversions around renamed objects.
7504 2009-01-11 Eric Botcazou <ebotcazou@adacore.com>
7506 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Put
7507 the _Tag field before any discriminants in the field list.
7508 (components_to_record): Remove obsolete comment.
7512 Copyright (C) 2009 Free Software Foundation, Inc.
7514 Copying and distribution of this file, with or without modification,
7515 are permitted in any medium without royalty provided the copyright
7516 notice and this notice are preserved.