]> gcc.gnu.org Git - gcc.git/blame - gcc/ada/ChangeLog
[multiple changes]
[gcc.git] / gcc / ada / ChangeLog
CommitLineData
6fb4cdde
AC
12009-07-20 Robert Dewar <dewar@adacore.com>
2
3 * vms_data.ads: Minor reformatting
4
5 * einfo.ads, einfo.adb (Parent_Subtype): Now allowed on record subtype,
6 applies to base type.
7 (Parent_Subtype): Now allowed on record subtype, applies to base type
8 * exp_ch5.adb (Expand_Assign_Record): Handle Componentwise_Assignment
9 for case of fully repped tagged type.
10 (Make_Tag_Ctrl_Assignment): Set Componentwise_Assignment and avoid
11 tag save/restore for fully repped tagged type case.
12 * exp_util.ads, exp_util.adb (Is_Fully_Repped_Tagged_Type): New function
13 * fe.h (Is_Fully_Repped_Tagged_Type): New function
14 * sem_ch13.adb (Analyze_Recorrd_Representation_Clause): Check for
15 overlap of tagged type components with parent type if parent type is
16 fully repped.
17 * sinfo.ads, sinfo.adb (Componentwise_Assignment): New flag
18
19 * sem_res.adb (Check_No_Direct_Boolean_Operators): Remove handling of
20 comparisons.
21 (Resolve_Comparison_Operators): Remove No_Direct_Boolean_Operators check
22 (Resolve_Equality_Op): Remove No_Direct_Boolean_Operators check
23
24 * gnat_rm.texi: Restriction No_Direct_Boolean_Operators includes only
25 logical operators (AND/OR/XOR), not comparison operators.
26
27 * sprint.ads: Minor reformatting
28
292009-07-20 Ed Schonberg <schonberg@adacore.com>
30
31 * sem_intr.adb (Check_Intrinsic_Call): For Import_Value and related
32 intrinsics, check that argument is a string literal, rather than
33 checking for staticness.
34
ae65d635
AC
352009-07-20 Robert Dewar <dewar@adacore.com>
36
37 * sem_ch13.adb: Minor reformatting
38
39 * einfo.ads: Minor reformatting
40 Component_Bit_Offset is no longer considered obsolescent
41
422009-07-20 Nicolas Roche <roche@adacore.com>
43
44 * a-calend.adb: Redefine time_t as signed integer with same size as
45 Address type.
46 * s-os_lib.ads: Redefine OS_Time as signed integer with same size as
47 Address type
48 * adaint.h: On Windows 64bits declare OS_Time as long long instead of
49 long
50
512009-07-20 Javier Miranda <miranda@adacore.com>
52
53 * exp_tss.adb (Init_Proc): Add missing support for non-default C++
54 constructors that have anonymous access type formals.
55
56 * sem_res.adb (Resolve_Actuals): Disable checks associated with Ada
57 class-wide arguments in case of imported C++ subprograms.
58
59 * exp_ch3.adb (Build_Initialization_Call): Add assertion.
60
612009-07-20 Sergey Rybin <rybin@adacore.com>
62
63 * vms_data.ads: Update qualifiers.
64
5132708f
RD
652009-07-20 Robert Dewar <dewar@adacore.com>
66
67 * einfo.ads, switch.adb, gnatls.adb, inline.adb, sem_ch13.adb: Minor
68 reformatting
69
a406865a
RG
702009-07-17 Richard Guenther <rguenther@suse.de>
71
72 PR c/40401
1f55686a
AC
73 * gcc-interface/utils.c (end_subprog_body): Revert to pre-tuples
74 state. Remove unused parameter.
a406865a
RG
75 (gnat_gimplify_function): Do not gimplify here.
76 Fold into its only caller and remove.
77 (gnat_builtin_function): Adjust for end_subprog_body signature change.
78 (gnat_write_global_declarations): Also finalize the CU.
1f55686a
AC
79 * gcc-interface/misc.c (gnat_parse_file): Do not finalize the CU here.
80 * gcc-interface/trans.c (gigi): Revert to pre-tuples state.
a406865a
RG
81 (Subprogram_Body_to_gnu): Adjust for end_subprog_body signature
82 change.
1f55686a 83 * gcc-interface/gigi.h (end_subprog_body): Remove unused parameter.
a406865a 84
fde4b6f5
AC
852009-07-15 Arnaud Charlet <charlet@adacore.com>
86
87 * gcc-interface/Make-lang.in: Update dependencies
88
89 * gcc-interface/Makefile.in: Add target pairs for PPC/Xenomai
90
9cd33a66
AC
912009-07-15 Robert Dewar <dewar@adacore.com>
92
93 * par_sco.adb (Traverse_Declarations_Or_Statements): Add processing for
94 N_Label. Remove SCO table entry for entry point (not used).
95
96 * par_sco.ads: Remove SCO entry point type (not used)
97
98 * switch.adb: Minor code clean up.
99
1002009-07-15 Eric Botcazou <ebotcazou@adacore.com>
101
102 * exp_dbug.ads (Base Record Types): Document enhanced encoding.
103
1042009-07-15 Thomas Quinot <quinot@adacore.com>
105
106 * gnatls.adb: Minor reformatting
107
108 * gnatcmd.adb: Minor code reorganization
109
1102009-07-15 Ed Schonberg <schonberg@adacore.com>
111
112 * exp_util.adb (Component_May_Be_Bit_Aligned): Use underlying type to
113 determine whether a component of a private type has a composite type.
114
6eab5a95
AC
1152009-07-15 Robert Dewar <dewar@adacore.com>
116
117 * sem_ch10.adb: Minor reformatting throughout
118 Minor code reorganization (put nested subprograms in alpha order)
119
1202009-07-15 Ed Schonberg <schonberg@adacore.com>
121
122 * exp_ch6.adb (Expand_Call): Prevent double attachment of the result
123 when compiling a call to a protected function that returns a controlled
124 object.
125
1262009-07-15 Hristian Kirtchev <kirtchev@adacore.com>
127
128 * sysdep.c (__gnat_localtime_tzoff): Consolidate the Lynx cases into
129 one. Add task locking and unlocking around the critical region which
130 mentions localtime_r and global variable timezone for various targets.
131 Comment reformatting.
132
3eb532e6
RD
1332009-07-15 Robert Dewar <dewar@adacore.com>
134
135 * gnat_rm.texi: Document s-ststop.ads
136
137 * impunit.ad: (Map_Array): New table of alternative names
138 (Get_Kind_Of_Unit): Return possible suggested alternative name
139
140 * impunit.ads (Get_Kind_Of_Unit): Return possible suggested
141 alternative name.
142
143 * sem_ch10.adb (Analalyze_With_Clause): Add name of possible
144 alternative unit if an implementation unit is with'ed.
145
4cd029c7
RD
1462009-07-15 Robert Dewar <dewar@adacore.com>
147
148 * gnat_ugn.texi: Minor updates.
149
150 * snames.ads-tmpl: Minor comment updates for Ada 2005 fully implemented
151
892125cd
AC
1522009-07-15 Ed Schonberg <schonberg@adacore.com>
153
154 * sem_warn.adb (Warn_On_Constant_Condition): Handle properly constant
155 conditions of a derived boolean type.
156 Minor reformatting
157
1582009-07-15 Robert Dewar <dewar@adacore.com>
159
160 * gnat1drv.adb: Initialize SCO tables
161
162 * par-load.adb: Call SCO_Record for main unit spec
163
164 * par.adb: Make call to SCO_Record for main unit
165
166 * par_sco.adb (Unit_Table): Change format to facilitate sort
167 (Process_Decisions): New procedure with list argument
168 (Traverse_Generic_Package_Declaration): New procedure
169 (Initialize): New procedure, replaces Init
170 (SCO_Output): Sort unit table before output
171 (SCO_Record): Avoid duplications
172 (SCO_Record): Handle remaining cases of units
173 (Traverse_Declarations_Or_Statements): Handle generics
174
175 * par_sco.ads (Initialize): New peocedure (replaces Init)
176
177 * sem_ch10.adb (Analyze_Proper_Body): Make call to SCO_Record for
178 subunit.
179
1802009-07-15 Arnaud Charlet <charlet@adacore.com>
181
182 * debug.adb: Add -gnatd.J switch for now to support scil generation in
183 parallel. Add missing doc for -gnatd.I and -gnatd.O
184
671eb586
RD
1852009-07-15 Robert Dewar <dewar@adacore.com>
186
187 * lib-load.adb: Minor reformatting
188
189 * lib-writ.adb (Write_ALI): Fix handling of SCO_Output wrt Generate_SCO.
190
8aaeba8f
RD
1912009-07-15 Robert Dewar <dewar@adacore.com>
192
193 * par.adb: Minor reformatting
194 Add ??? comment for possible bad comment
195
196 * par-ch10.adb: Minor reformatting
197
00838d9a
AC
1982009-07-15 Ed Schonberg <schonberg@adacore.com>
199
200 * sem_warn.adb (Warn_On_Constant_Condition): if the constant condition
201 is a literal of a derived boolean type, it appears as an unchecked
202 conversion. Retrieve actual value from expression of conversion.
203
2042009-07-15 Robert Dewar <dewar@adacore.com>
205
206 * sem_ch3.adb: Minor reformatting
207
208 * lib-xref.ads, lib-xref.adb, lib.ads, par_sco.ads, par_sco.adb,
209 lib-writ.ads, lib-writ.adb: Minor reformatting.
210 Fix problem with SCO format in ALI files
211
faf387e1
AC
2122009-07-15 Robert Dewar <dewar@adacore.com>
213
214 * exp_ch7.adb, exp_util.adb, tbuild.adb, tbuild.ads, exp_ch4.adb,
215 exp_aggr.adb: Minor code reorganization (better calling sequence for
216 Make_Temporary).
217
2182009-07-15 Thomas Quinot <quinot@adacore.com>
219
220 * opt.ads: Minor comment edits
221
ece6940b
TG
2222009-07-15 Tristan Gingold <gingold@adacore.com>
223
224 * gcc-interface/Makefile.in: Special rule for seh_init.o no longer
225 needed.
226
6f12117a
RD
2272009-07-15 Robert Dewar <dewar@adacore.com>
228
6f12117a
RD
229 * lib-writ.adb (Write_Unit_Information): Use SCO_Output to output SCO
230 information.
231
232 * lib-writ.ads: Document addition of SCO lines to ALI file
233
234 * par_sco.ads, par_sco.adb: New files.
235
236 * opt.ads (Generate_SCO): New switch
237
238 * par.adb (Par): Call SCO_Record to record SCO information
239
240 * sem_warn.adb (Warn_On_Constant_Condition): Adjust SCO condition
241
242 * switch-c.adb: Recognize -gnateS to generate SCO information
243
244 * usage.adb: Add line for -gnateS
245
246 * gcc-interface/Make-lang.in: Add dependency on par_sco.o for gnat1
247
3a336262
AC
2482009-07-15 Robert Dewar <dewar@adacore.com>
249
250 * sinfo.ads, make.adb, par.ads, par.adb, sem_warn.adb: Minor
251 reformatting.
252
2532009-07-15 Thomas Quinot <quinot@adacore.com>
254
255 * g-socthi-mingw.adb: Minor comment addition
256
257 * g-socthi-mingw.ads (WSAStartup): First argument is a WORD not an int.
258
1b73fbc4
RD
2592009-07-15 Robert Dewar <dewar@adacore.com>
260
261 * g-htable.ads, s-htable.ads: Minor reformatting
262
6b3fc735
RD
2632009-07-15 Robert Dewar <dewar@adacore.com>
264
265 * switch-c.adb, sem_ch10.adb, sem_warn.adb, sem_warn.ads: Implement
266 new switch -gnatw.g.
267 (Set_GNAT_Mode_Warnings): New procedure.
268
269 * lib-xref.adb: Minor reformatting
270
124e3829
RD
2712009-07-15 Robert Dewar <dewar@adacore.com>
272
273 * exp_aggr.adb, tbuild.ads, tbuild.adb: Minor reformatting
274 Minor code reorganization
275
2a4c0366
TG
2762009-07-14 Taras Glek <tglek@mozilla.com>
277 Rafael Espindola <espindola@google.com>
278
279 * gcc-interface/Make-lang.in (ada.install-plugin): New target for
280 installing plugin headers.
281
ae525aa8
ES
2822009-07-13 Ed Schonberg <schonberg@adacore.com>
283
284 * exp_ch7.adb, exp_util.adb, tbuild.adb, tbuild.ads, exp_ch4.adb,
285 exp_aggr.adb (Make_Temporary): Utility to create a defining identifier
286 and link it to the expression whose value it captures.
287
a7209434
AC
2882009-07-13 Robert Dewar <dewar@adacore.com>
289
290 * output.adb: Minor comment addition for last change
291
292 * sinfo.ads: Minor reformatting
293
2942009-07-13 Vasiliy Fofanov <fofanov@adacore.com>
295
296 * adaint.c (__gnat_portable_no_block_spawn): on Windows, return -1 when
297 spawn failed like on all other targets.
298
2992009-07-13 Ed Schonberg <schonberg@adacore.com>
300
301 * exp_ch7.adb: Indicate origin of temporary for transient expression.
302
ef76538f
AC
3032009-07-13 Thomas Quinot <quinot@adacore.com>
304
305 * s-oscons-tmplt.c: Add comment.
306
3072009-07-13 Robert Dewar <dewar@adacore.com>
308
309 * sinfo.adb, sinfo.ads, sem_util.adb, atree.adb, atree.ads: Minor
310 reformatting. Minor code reorganization (add 9 argument version of
311 Nkind_In).
312
313 * impunit.adb: Remove s-os_lib from list of system extensions.
314
315 * sem_util.ads: Minor reformatting
316
317 * output.adb: Add warnings off/on around System.OS_Lib.
318
690001a2
BD
3192009-07-13 Bob Duff <duff@adacore.com>
320
321 * exp_dist.adb: Minor comment updates.
322
a712aa03
AC
3232009-07-13 Gary Dismukes <dismukes@adacore.com>
324
325 * sem_ch10.adb, sem_ch12.adb, gnat1drv.adb, exp_ch4.adb: Fix casing of
326 several references to CodePeer.
327
3282009-07-13 Bob Duff <duff@adacore.com>
329
330 * exp_dist.adb (Build_From_Any_Function,Build_To_Any_Function,
331 Build_TypeCode_Function_All): Do not recurse if the type is the base
332 type.
333
76efd572
AC
3342009-07-13 Robert Dewar <dewar@adacore.com>
335
336 * exp_ch4.adb: Minor comment change
337
3382009-07-13 Ed Schonberg <schonberg@adacore.com>
339
340 * sem_ch5.adb (Analyze_Iteration_Scheme): Generate dummy reference for
341 type of iteration, to prevent spurious warnings.
342
3432009-07-13 Nicolas Roche <roche@adacore.com>
344
345 * s-oscons-tmplt.c: On VxWorks target ensure that vxWorks.h is always
346 included.
347
3482009-07-13 Arnaud Charlet <charlet@adacore.com>
349
350 * switch-c.adb, usage.adb, sem_ch9.adb, gnat_ugn.texi, rtsfind.adb,
351 gnat1drv.adb, opt.ads, sem_ch13.adb (Inspector_Mode): Renamed to
352 Generate_SCIL.
353 (CodePeer_Mode): New -gnatC switch.
354 (Adjust_Global_Switches): Adjust settings for Generate_SCIL and
355 CodePeer_Mode.
356
10475800
EB
3572009-07-13 Eric Botcazou <ebotcazou@adacore.com>
358
359 * checks.adb (Selected_Range_Checks): Do not consider that a non-static
360 integer bound forces the check if it is compared to its subtype range.
361
7b00e31d
AC
3622009-07-13 Robert Dewar <dewar@adacore.com>
363
364 * prj.ads, prj-dect.adb, prj-err.ads, prj-err.adb, prj-nmsc.adb,
365 prj-strt.ads: Minor reformatting
366
3672009-07-13 Thomas Quinot <quinot@adacore.com>
368
369 * exp_dist.adb (Build_From_Any_Call): For the case of a generic type,
370 set the type of the From_Any call to the base type.
371
3722009-07-13 Doug Rupp <rupp@adacore.com>
373
374 * symbols-processing-vms-ia64.adb (Process): Add variables and
375 constants to retrieve and check for symbol visibility.
376
3772009-07-13 Javier Miranda <miranda@adacore.com>
378
379 * exp_ch4.adb (Expand_N_Unchecked_Type_Conversion): If conversion is to
380 the identical type we remove the conversion completely because
381 it is useless.
382
0e41a941
AC
3832009-07-13 Emmanuel Briot <briot@adacore.com>
384
385 * prj-err.adb (Error_Msg): One more case where a message should be
386 considered as a warning.
387
388 * gnatcmd.adb (GNATCmd): Fix previous change, which negated a test.
389
3902009-07-13 Thomas Quinot <quinot@adacore.com>
391
392 * exp_dist.adb (Expand_All_Calls_Remote_Subprogram_Call): Analyze
393 calling stubs in the (library level) scope of the RCI locator, where it
394 is attached, not in the caller's scope.
395
3962009-07-13 Javier Miranda <miranda@adacore.com>
397
398 * sem_ch3.adb (Analyze_Object_Declaration): In case of class-wide
399 interface object declarations we delay the generation of the equivalent
400 record type declarations until its expansion because there are cases in
401 which they are not required.
402
403 * sem_util.adb (Implements_Interface): Add missing support for subtypes.
404
405 * sem_disp.adb (Check_Controlling_Formals): Minor code cleanup plus
406 addition of assertion.
407
408 * exp_util.adb (Expand_Subtype_From_Expr): Renamings of class-wide
409 interface types require no equivalent constrained type declarations
410 because the expanded code only references the tag component associated
411 with the interface.
412 (Find_Interface_Tag): Improve management of interfaces that are
413 ancestors of tagged types.
414
415 * exp_ch3.adb (Expand_N_Object_Declaration): Improve the expansion of
416 class-wide object declarations to add missing support to statically
417 displace the pointer to the object to reference the tag component
418 associated with the interface.
419
420 * exp_disp.adb (Make_Tags) Avoid generation of internally generated
421 auxiliary types associated with user-defined dispatching calls if the
422 type has no user-defined primitives.
423
75069667
VF
4242009-07-13 Vasiliy Fofanov <fofanov@adacore.com>
425
426 * mingw32.h: Make it explicit that we need XP or later.
427
428 * initialize.c: Remove useless extern symbol declaration.
429
430 * adaint.h: Ditto, also expose __gnat_win32_remove_handle to allow
431 code reuse in expect.c.
432
433 * adaint.c: Changes throughout the Windows section to redesign storage
434 of the child process list and the process identification.
435
436 * expect.c (__gnat_kill, __gnat_waitpid): Simplify, cleanup, use pids
437 for interfacing, fix errors.
438 (__gnat_expect_portable_execvp): use function in adaint.c
439
e2d9085b
EB
4402009-07-13 Emmanuel Briot <briot@adacore.com>
441
442 * prj-proc.adb, prj-part.adb, prj-part.ads, prj-strt.adb,
443 prj-strt.ads, prj.adb, prj.ads, prj-makr.adb, prj-makr.ads,
444 prj-dect.adb, prj-dect.ads, prj-nmsc.adb, prj-pars.adb, errutil.adb,
445 errutil.ads, prj-conf.adb, gnatname.adb, prj-err.adb, prj-err.ads
446 (Prj.Nmsc.Report_Error): Removed, no longer needed.
447 Always use Prj.Err.Report_Message.
448
442c0581
RD
4492009-07-13 Robert Dewar <dewar@adacore.com>
450
451 * prj.adb, sem_ch4.adb, sem_res.adb, prj-nmsc.adb: Minor reformatting
452 & comment edits.
453
3c2815d8
RD
4542009-07-13 Robert Dewar <dewar@adacore.com>
455
456 * opt.ads, prj-conf.adb, prj-env.adb, prj-ext.adb, prj-nmsc.adb,
457 prj-proc.adb, prj-tree.adb, prj-tree.ads: Minor reformatting
458
197e4514
AC
4592009-07-13 Emmanuel Briot <briot@adacore.com>
460
461 * prj.adb, prj.ads, prj-env.adb, prj-conf.adb, prj-tree.adb,
462 mlib-prj.adb (Private_Part.Ada_Prj_Objects_File_Set,
463 Ada_Prj_Include_File_Set): Removed, since not needed
464 Code clean up.
465
4662009-07-13 Ed Schonberg <schonberg@adacore.com>
467
468 * sem_ch4.adb (Analyze_Set_Membership): New procedure, subsidiary of
469 Analyze_Membership_Op.
470
471 * sem_res.adb (Resolve_Set_Membership): New procedure, subsidiary of
472 Resolve_Membership_Op.
473
474 * exp_ch4.adb (Expand_Set_Membership): New procedure, subsidiary of
475 Expand_N_In.
476
4772009-07-13 Robert Dewar <dewar@adacore.com>
478
479 * clean.adb: Minor reformattting
480
7bccff24
EB
4812009-07-13 Emmanuel Briot <briot@adacore.com>
482
483 * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj-ext.adb,
484 gnat_ugn.texi, prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-util.adb,
485 prj-conf.adb, gnatname.adb, prj-env.adb, prj-env.ads, prj-tree.adb,
486 prj-tree.ads (Prj.Tree.Create*): New subprograms to create new packages
487 and attributes in a project tree.
488 (Add_Default_GNAT_Naming_Scheme): Provide real implementation.
489 Remove last remaining mode-specific code (ada_only or
490 multi_language). This was duplicating code
491 (Get_Mode, Set_Mode): removed, no longer used.
492 (Initialize_Project_Path): all tools will now take into account both
493 GPR_PROJECT_PATH and ADA_PROJECT_PATH (in that order).
494 Remove some global variables and subprograms no longer used
495 Make temporary files tree-specific, to avoid interferences between
496 trees loaded in memory at the same time.
497 (Prj.Delete_Temporary_File): new subprogram
498 (Object_Paths, Source_Paths): fields no longer stored in the project
499 tree, since they are only needed locally in Set_Ada_Paths.
500 (Set_Mapping_File_Initial_State_To_Empty): removed, since had no
501 effect in practice.
502 (Project_Tree_Data.Ada_Path_Buffer): removed, since it can be replaced
503 by local variables in the appropriate subprograms
504 (Has_Foreign_Sources): removed.
505
506 * gcc-interface/Makefile.in: prj-pp.o is now needed to build gnatmake
507
5a64837c
AC
5082009-07-13 Arnaud Charlet <charlet@adacore.com>
509
510 * gnat1drv.adb (Adjust_Global_Switches): No longer set
511 Back_Annotate_Rep_Info in inspector mode.
512 (Gnat1Drv): Need to call the back-end in inspector mode to generate SCIL
513
514 * opt.ads: Update comment.
515
2c011ce1
RD
5162009-07-13 Robert Dewar <dewar@adacore.com>
517
518 * lib.adb, prj-nmsc.adb, prj-proc.adb, prj-proc.ads, prj.adb,
519 prj.ads: Minor reformatting and code reorganization.
520
521 * par-ch3.adb (Check_Restricted_Expression): New procedure
522
99269cf5
ES
5232009-07-13 Ed Schonberg <schonberg@adacore.com>
524
525 * exp_attr.adb (Rewrite_Stream_Proc_Call): When rewriting a stream
526 attribute into a call of the corresponding suprogram, create extra
527 formals for the subprogram, because it may be a renaming whose
528 analysis does not create extra formals.
529
32404665
EB
5302009-07-13 Emmanuel Briot <briot@adacore.com>
531
532 * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb,
533 prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb,
534 prj-pars.ads, prj-conf.adb, prj-conf.ads, prj-env.adb, prj-tree.adb,
535 prj-tree.ads: Minor reformatting.
536 (Processing_Flags): new record to encapsulate the set of common
537 parameters to several subprograms in the project manager.
538 (Prj.Nmsc.Process_Naming_Scheme): renames Check, and moved to body
539 Remove the need for the Current_Dir parameter in subprograms.
540 (Look_For_Sources): minor refactoring, now that we no longer need to
541 share subprograms between the two Ada_Only and Multi_Language modes
542 (Processing_Flags): New field Error_On_Unknown_Language.
543 Merge tests for library project between gnatmake and gprbuild.
544
959dd7d8
AC
5452009-07-13 Arnaud Charlet <charlet@adacore.com>
546
547 * lib.adb, make.adb, mlib.adb, exp_dist.adb: Update comments.
548 Minor reformatting.
549
23c4ff9b
AC
5502009-07-13 Emmanuel Briot <briot@adacore.com>
551
552 * prj-env.adb (Create_Config_Pragmas_File): Iterate on sources rather
553 than units.
554
5552009-07-13 Thomas Quinot <quinot@adacore.com>
556
557 * sem_ch3.adb (Process_Full_View): Propagate Has_Specified_Stream_{Read,
558 Write,Input,Output} from private view to full view.
559
560 * sem_type.adb, sem_type.ads: Minor reformatting
561
5622009-07-13 Nicolas Setton <setton@adacore.com>
563
564 * exp_dbug.ads: Add documentation note on the utility of
565 DW_AT_GNAT_encoding for IDEs.
566
5672009-07-13 Robert Dewar <dewar@adacore.com>
568
569 * g-socthi-vxworks.adb: Minor reformatting
570
571 * gnatcmd.adb: Minor reformatting
572
72a3d7c7
AC
5732009-07-13 Thomas Quinot <quinot@adacore.com>
574
575 * rtsfind.ads, exp_dist.adb (RE_Allocate_Buffer): Runtime entry
576 removed, not used anymore.
577 (Exp_Dist.PolyORB_Support.Helpers.Assign_Opaque_From_Any):
578 New subprogram, implements copy of an Any value into a limited object.
579 (Exp_Dist.PolyORB_Support.Build_General_Calling_Stubs,
580 Exp_Dist.PolyORB_Support.Build_Subprogram_Receiving_Stubs,
581 Exp_Dist.PolyORB_Support.Helpers.Build_From_Any_Function): For the case
582 of parameters of a limited type, use the above new subprogram.
583
5842009-07-13 Emmanuel Briot <briot@adacore.com>
585
586 * prj-nmsc.adb, prj-proc.adb, mlib.adb (Add_Source): new parameter
587 Location.
588 (Copy_ALI_Files): Avoid calls to read when pointing outside of the
589 allocated space.
590 (Error_Report): Remove global variable, replaced by parameters.
591
223eab97
AC
5922009-07-13 Thomas Quinot <quinot@adacore.com>
593
594 * g-socthi-vxworks.adb (C_Sendto): VxWorks does not support the
595 standard sendto(2) interface for connected sockets (passing a null
596 destination address). Use send(2) instead for that case.
597
5982009-07-13 Pascal Obry <obry@adacore.com>
599
600 * adaint.c: Fix __gnat_stat() with Win32 UNC paths.
601
fdd7e7bb
EB
6022009-07-13 Emmanuel Briot <briot@adacore.com>
603
604 * prj-proc.adb, prj-proc.ads, prj.ads, prj-nmsc.adb, prj-nmsc.ads,
605 prj-pars.adb, prj-conf.adb, prj-conf.ads: Remove all remaining global
606 variables and tables in prj-nmsc.adb.
607 (Tree_Processing_Data): Renames Processing_Data, some new fields added
608 (Project_Processing_Data): New record
609 Simplify/unify check for missing sources.
610
fc2c32e2
EB
6112009-07-13 Emmanuel Briot <briot@adacore.com>
612
613 * gnatcmd.adb, make.adb, mlib-prj.adb, prj-part.adb, mlib.adb,
614 prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb,
615 prj-pars.ads, prj-conf.adb, prj-conf.ads, prj-tree.adb,
616 prj-tree.ads (Immediate_Directory_Of): Removed.
617 (Prj.Pars): Now parse the project simulating a default config file.
618 (Add_Default_GNAT_Naming_Scheme): New subprogram
619 (Check_Naming_Multi_Lang): Fix default value for Dot_Replacement.
620 Remove gnatmake-specific parsing of source files.
621 (Check_Illegal_Suffix): Renames Is_Illegal_Suffix, since it now raises
622 the error itself to provide more precise diagnostics.
623 (Process_Exceptions_Unit_Based): Avoid duplicate error message when
624 a unit belongs to several projects.
625 (Copy_Interface_Sources): Search the full path of files to copy in the
626 list of sources of the application rather than in the list of units.
627 (Parse_Project_And_Apply_Config): Do not reset the name of the main
628 project file.
629 (Check_File): Use htables to find out whether a source is duplicated.
630 (Add_Source): check whether the source or unit were already seen earlier
631
632 * gcc-interface/Makefile.in: Update gnatmake dependencies.
633
1629f700
RD
6342009-07-13 Robert Dewar <dewar@adacore.com>
635
636 * par-ch3.adb (P_Discrete_Choice_List): Choice can only be simple
637 expression if extensions permitted.
638
639 * par-ch4.adb (P_Membership_Test): New procedure (implement membership
640 set tests).
641 (P_Relation): Use P_Membership_Test
642
643 * par.adb (P_Membership_Test): New procedure (implement membership set
644 tests).
645
646 * sinfo.ads, sinfo.adb (N_In, N_Not_In) Add Alternatives field for sets.
647
648 * sprint.adb (Sprint_Node): Handle set form for membership tests.
649
c6f39437
AC
6502009-07-13 Thomas Quinot <quinot@adacore.com>
651
652 * exp_dist.adb (Add_RACW_Primitive_Declarations_And_Bodies):
653 Do not attempt to generate stubs for predefined primitives of
654 synchronized interfaces.
655 (Add_Stub_Type): Factor some code from the PCS-specific variants of
656 Build_Stub_Type.
657
6582009-07-13 Ed Schonberg <schonberg@adacore.com>
659
660 * sem_disp.adb (Override_Dispatching_Operation): Functions inherit the
661 Controlling_Result flag from the operation they override.
662
d97a04d0
AC
6632009-07-13 Arnaud Charlet <charlet@adacore.com>
664
665 * gcc-interface/Make-lang.in: Update dependencies
666
01957849
AC
6672009-07-13 Robert Dewar <dewar@adacore.com>
668
669 * gnat_ugn.texi: The gnatf switch no longer is needed to get full
670 details on unsupported constructs.
671
672 * rtsfind.adb: Remove references to All_Errors_Mode, give errors
673 unconditionally.
674
675 * s-trafor-default.adb: Correct some warnings
676
677 * s-valwch.adb, a-calend.adb, freeze.adb, prj.ads, s-vmexta.adb,
678 sem.adb, sem_ch10.adb, sem_ch6.adb, sem_disp.adb, vxaddr2line.adb:
679 Minor reformatting.
680
681 * par-ch4.adb (Conditional_Expression): Capture proper location for
682 conditional expression, should point to IF.
683
684 * s-tassta.adb, a-wtdeau.adb, s-tasren.adb, s-arit64.adb, s-imgdec.adb,
685 s-direio.adb, s-tpobop.adb, g-socket.adb, s-tposen.adb, s-taskin.adb,
686 g-calend.adb, s-regpat.adb, s-scaval.adb, g-catiio.adb: Minor code
687 reorganization (use conditional expressions).
688
6892009-07-13 Ed Schonberg <schonberg@adacore.com>
690
691 * exp_util.adb (Remove_Side_Effects): If the expression is a call to a
692 build-in-place function that returns an inherently limited type (not
693 just a task type) create proper object declaration so that extra
694 build-in-place actuals are properly added to the call.
695
79afa047
AC
6962009-07-13 Robert Dewar <dewar@adacore.com>
697
698 * freeze.adb (Freeze_Entity): Implement Warn_On_Suspicious_Modulus_Value
699
700 * gnat_ugn.texi: Add documentation for -gnatw.m/.M
701
702 * opt.ads (Warn_On_Suspicious_Modulus_Value): New flag
703
704 * sem_warn.adb (Set_Dot_Warning_Flag): Set/reset
705 Warn_On_Suspicious_Modulus_Value.
706
707 * ug_words: Add entries for -gnatw.m/-gnatw.M.
708
709 * usage.adb: Add lines for -gnatw.m/.M switches.
710
711 * vms_data.ads: Add [NO]SUSPICIOUS_MODULUS for -gnatw.m/w.M
712
7132009-07-13 Javier Miranda <miranda@adacore.com>
714
715 * sem_ch6.adb (Check_Synchronized_Overriding): Add missing check before
716 reading the Is_Interface attribute of the dispatching type.
717
7182009-07-13 Robert Dewar <dewar@adacore.com>
719
720 * a-convec.adb: Minor code reorganization (use conditional expressions)
721
67b3acf8
RD
7222009-07-13 Robert Dewar <dewar@adacore.com>
723
724 * freeze.adb (Check_Suspicious_Modulus): New procedure.
725
cfb120b5
AC
7262009-07-13 Robert Dewar <dewar@adacore.com>
727
728 * i-cobol.ads: Minor code fix (2**4 instead of 16 as modulus to avoid
729 warning).
730
731 * par-ch4.adb: Minor reformatting
732
7332009-07-13 Ed Schonberg <schonberg@adacore.com>
734
735 * freeze.adb, freeze.ads, exp_aggr.adb: Rename Expand_Atomic_Aggregate
736 => Is_Atomic_Aggregate
737
fb2e11ee
AC
7382009-07-13 Emmanuel Briot <briot@adacore.com>
739
740 * prj-nmsc.adb: Avoid traversing the list of source files if
741 we have already processed all locally removed files.
742
7432009-07-13 Jose Ruiz <ruiz@adacore.com>
744
745 * gnat_ugn.texi: Fix typo.
746
7472009-07-13 Robert Dewar <dewar@adacore.com>
748
749 * freeze.adb: Minor reformatting
750 Minor code reorganization (use Nkind_In)
751
01e17342 752 * exp_ch6.adb, prj.adb, sem_res.adb: Minor reformatting
fb2e11ee 753
f4cd2542
EB
7542009-07-11 Eric Botcazou <ebotcazou@adacore.com>
755
756 * checks.adb (Apply_Address_Clause_Check): Remove Size_Warning_Output
757 local variable and do not test it in Compile_Time_Bad_Alignment.
758 Do not issue size or alignment warnings for the X'Address form.
759 * sem_util.ads (Find_Overlaid_Object): Delete.
760 (Find_Overlaid_Entity): New procedure.
761 * sem_util.adb (Find_Overlaid_Object): Rename to...
762 (Find_Overlaid_Entity): ...this and turn into a procedure. Report
763 whether the address is offseted within the overlaid entity.
764 (Has_Compatible_Alignment): Track the offset globally instead of
765 passing it to Check_Offset. For an indexed component, compute the
766 full offset when possible. If the resulting offset is zero, only
767 check the prefix.
768 (Check_Offset): Delete.
769 * sem_ch13.adb (Address_Clause_Check_Record): Add Off field.
770 (Address_Aliased_Entity): Delete.
771 (Analyze_Attribute_Definition_Clause) <Attribute_Address>: Call
772 Find_Overlaid_Entity to find the overlaid entity and the offset.
773 Adjust throughout for above change.
774 (Validate_Address_Clauses): Always use attributes of entities, not of
775 their type. Tweak message for warning. Call Has_Compatible_Alignment
776 if the address is offseted to warn about incompatible alignments.
777 * gcc-interface/gigi.h (annotate_object): Declare.
778 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Annotate renaming
779 entity. Call annotate_object instead of annotating manually objects.
780 (annotate_object): New function.
781 * gcc-interface/trans.c (Subprogram_Body_to_gnu): Annotate parameters
782 at the end.
783
7635b357
EB
7842009-07-11 Eric Botcazou <ebotcazou@adacore.com>
785
786 * gcc-interface/ada-tree.h: Minor reorganization.
787 * gcc-interface/misc.c (gnat_print_decl): Minor tweaks.
788 (gnat_print_type): Likewise.
789
b0159fbe
AC
7902009-07-11 Thomas Quinot <quinot@adacore.com>
791
792 * sem_util.adb, sem_res.adb, sem_warn.adb: Minor comment editing:
793 Lvalue -> lvalue
794
795 * exp_ch6.adb: Minor reformatting
796
7972009-07-11 Ed Schonberg <schonberg@adacore.com>
798
799 * freeze.adb (Expand_Atomic_Aggregate): Clean up code, take into
800 account possible type qualification to determine whether aggregate
801 needs a target temporary to respect atomic type or object.
802
803 * exp_aggr.adb (Expand_Record_Aggregate): Use new version of
804 Expand_Atomic_Aggregate.
805
8062009-07-11 Emmanuel Briot <briot@adacore.com>
807
808 * prj.adb, prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Speed up
809 algorithm.
810 (Excluded_Sources_Htable): No longer a global table.
811 Change error message to indicate which files are illegal in the list
812 of excluded files, as opposed to only the location in the project
813 file.
814 (Find_Source): New subprogram.
815
811c6a85
AC
8162009-07-10 Thomas Quinot <quinot@adacore.com>
817
818 * exp_ch7.adb: Update comments.
819
8202009-07-10 Arnaud Charlet <charlet@adacore.com>
821
822 * exp_ch13.adb (Expand_N_Record_Representation_Clause): Ignore mod
823 clause if -gnatI is set instead of crashing.
824
8252009-07-10 Ed Schonberg <schonberg@adacore.com>
826
827 * sem_ch11.adb (Same_Expression): Null is always equal to itself.
828 Additional work to remove redundant successive raise statements, in
829 this case access checks.
830
8312009-07-10 Vincent Celier <celier@adacore.com>
832
833 * make.adb (Compile): Always create a deep copy of the mapping file
834 argument (-gnatem=...) as it may be deallocate/reallocate by
835 Normalize_Arguments.
836
8372009-07-10 Javier Miranda <miranda@adacore.com>
838
839 * einfo.adb (Directly_Designated_Type): Add assertion.
840
841 * sem_res.adb (Check_Fully_Declared_Prefix): Add missing check on
842 access types before using attribute Directly_Designated_Type.
843
8442009-07-10 Emmanuel Briot <briot@adacore.com>
845
846 * prj.ads: Minor typo fix
847
8482009-07-10 Ed Schonberg <schonberg@adacore.com>
849
850 * sem_ch6.adb (Add_Extra_Formal): Protected operations do no need
851 special treatment.
852
853 * exp_ch6.adb (Expand_Protected_Subprogram_Call): If rewritten
854 subprogram is a function call, resolve properly, to ensure that extra
855 actuals are added as needed.
856
2be0bff8
TQ
8572009-07-10 Thomas Quinot <quinot@adacore.com>
858
859 * sem_aggr.adb: Minor comments editing
860
861 * exp_tss.adb, exp_ch3.adb: Minor reformatting
862
ac7120ce
RD
8632009-07-10 Robert Dewar <dewar@adacore.com>
864
865 * exp_util.adb: Minor code reorganization (use N_Short_Circuit)
866
867 * exp_ch4.adb: Add ??? comment for conditional expressions on limited
868 types.
869
870 * checks.adb (In_Declarative_Region_Of_Subprogram_Body): New procedure,
871 replaces Safe_To_Capture_In_Parameter_Value, and properly handles the
872 case of conditional expressions that may not be elaborated.
873
874 * sem_util.adb (Safe_To_Capture_Value): Properly handle case of
875 conditional expression where we may not execute then then or else
876 branches.
877
514d0fc5
AC
8782009-07-10 Arnaud Charlet <charlet@adacore.com>
879
880 * i-cexten.ads (bool): New type.
881
8822009-07-10 Robert Dewar <dewar@adacore.com>
883
884 * sinfo.ads (N_Short_Circuit): New definition
885
886 * sem_ch13.adb, sem_ch6.adb, sem_eval.adb, sem_res.adb,
887 treepr.adb: Minor code reorganization (use N_Short_Circuit)
888
7b4db06c
JM
8892009-07-10 Javier Miranda <miranda@adacore.com>
890
891 * exp_ch3.adb (Expand_Freeze_Record_Type): Handle constructors of
892 non-tagged record types.
893
894 * sem_prag.adb
895 (Process_Import_Or_Interface): Allow the use of "pragma Import (CPP,..)"
896 with non-tagged types. Required to import C++ classes that have no
897 virtual primitives.
898 (Analyze_Pragma): For pragma CPP_Constructor. Allow the use of functions
899 returning non-tagged types. For backward compatibility, if the
900 constructor returns a class wide type we internally change the
901 returned type to the corresponding non class-wide type.
902
903 * sem_aggr.adb
904 (Valid_Ancestor_Type): CPP_Constructors code cleanup.
905 (Resolve_Extension_Aggregate): CPP_Constructors code cleanup.
906 (Resolve_Aggr_Expr): CPP_Constructors code cleanup.
907 (Resolve_Record_Aggregate): CPP_Constructors code cleanup.
908
909 * sem_ch3.adb
910 (Analyze_Object_Declaration): CPP_Constructors code cleanup.
911
912 * sem_ch5.adb (Analyze_Assignment): CPP_Constructors code cleanup.
913
914 * sem_util.adb (Is_CPP_Constructor_Call): Code cleanup.
915
916 * sem_res.adb (Resolve_Allocator): CPP_Constructors code cleanup.
917
918 * exp_ch4.adb (Expand_Allocator_Expression): CPP_Constructors code
919 cleanup.
920
921 * exp_aggr.adb (Build_Record_Aggr_Code): CPP_Constructors code clean up.
922
923 * gnat_rm.texi
924 (pragma CPP_Class): Document that it can be used now with non-tagged
925 record types.
926 (pragma CPP_Constructor): Document that it can be used now with
927 functions returning specific types. For backward compatibility
928 we also support functions returning class-wide types.
929
930 * gnat_ugn.texi
931 (Interfacing with C++ constructors): Update the examples to incorporate
932 the new syntax in which the functions used to import C++ constructors
933 return specific types.
934 (Interfacing with C++ at the Class Level): Update the examples to
935 incorporate the new syntax in which the functions used to import
936 C++ constructors return specific types.
937
f2abc637
AC
9382009-07-10 Thomas Quinot <quinot@adacore.com>
939
940 * exp_disp.adb (Make_Disp_Asynchronous_Select_Body,
941 Make_Disp_Conditional_Select_Body,
942 Make_Disp_Timed_Select_Body): For the case of a type that is neither an
943 interface nor a concurrent type, the primitive body is empty. Generate
944 a null statement so that it remains well formed.
945
9462009-07-10 Ed Schonberg <schonberg@adacore.com>
947
948 * exp_aggr.adb (Build_Record_Aggr_Code): If the type has discriminants,
949 replace references to them in defaulted component expressions with
950 references to the values of the discriminants of the target object.
951
b603e37b
AC
9522009-07-10 Ed Schonberg <schonberg@adacore.com>
953
954 * sem_prag.adb (Analyze pragma, case Task_Name): Analyze argument of
955 pragma, to capture global references if the context is generic.
956
957 * exp_ch2.adb (Expand_Discriminant): If a task type discriminant
958 appears within the initialization procedure for the corresponding
959 record, replace it with the proper discriminal.
960
9612009-07-10 Vincent Celier <celier@adacore.com>
962
963 * make.adb: Do not include object directories or library ALI
964 directories of library projects in the object path.
965
9662009-07-10 Javier Miranda <miranda@adacore.com>
967
968 * exp_util.adb (Find_Interface_Tag): Reorder processing of incoming
969 Typ argument to ensure proper management of access types.
970
9712009-07-10 Ed Schonberg <schonberg@adacore.com>
972
973 * exp_ch7.adb (Build_Final_List): If the list is being built for a
974 Taft-Amendment type, place the finalization list in the package body,
975 to ensure that the tree for the spec is identical whenever it is
976 compiled.
977
9782009-07-10 Javier Miranda <miranda@adacore.com>
979
980 * sem_ch3.adb (Build_Derived_Record_Type): Use the full-view when
981 inheriting attributes from a private Parent_Base.
982
9832009-07-10 Ed Schonberg <schonberg@adacore.com>
984
985 * sem_ch11.adb (analyze_raise_xxx_error): Remove consecutive raise
986 statements with the same condition.
987
9882009-07-10 Robert Dewar <dewar@adacore.com>
989
990 * exp_ch4.adb (Raise_Accessibility_Error): New procedure
991
a80b0574
TT
9922009-07-09 Tom Tromey <tromey@redhat.com>
993
994 * raise-gcc.c: Include dwarf2h (unconditionally).
995
24da37f2
AC
9962009-07-09 Ed Schonberg <schonberg@adacore.com>
997
998 * sem_ch10.adb (Install_Context): If the unit is a package body,
999 install the private with_clauses of the corresponding package
1000 declaration.
1001
10022009-07-09 Robert Dewar <dewar@adacore.com>
1003
1004 * checks.adb: Minor reformatting
1005
10062009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
1007
1008 * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
1009 into ug_words.
1010
10112009-07-09 Thomas Quinot <quinot@adacore.com>
1012
1013 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
1014 Do not warn for a constant overlaying any constant object
1015
10162009-07-09 Ed Schonberg <schonberg@adacore.com>
1017
1018 * sem_ch10.adb (Install_Context): If the unit is a package body,
1019 install the private with_clauses of the corresponding package
1020 declaration.
1021
10222009-07-09 Robert Dewar <dewar@adacore.com>
1023
1024 * checks.adb: Minor reformatting
1025
10262009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
1027
1028 * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
1029 into ug_words.
1030
10312009-07-09 Thomas Quinot <quinot@adacore.com>
1032
1033 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
1034 Do not warn for a constant overlaying any constant object
1035
d97a04d0 10362009-07-09 Arnaud Charlet <charlet@adacore.com>
24da37f2
AC
1037
1038 * gcc-interface/Make-lang.in: Update dependencies
1039
7a5debc9
AC
10402009-07-09 Thomas Quinot <quinot@adacore.com>
1041
1042 * g-socket.adb (Check_Selector): Do not create local copies of the
1043 socket sets on the stack.
1044
10452009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
1046
1047 * gnat_ugn.texi: Add missing VMS translations.
1048
3f92c93b
AC
10492009-07-09 Ed Schonberg <schonberg@adacore.com>
1050
1051 * sem_prag.adb (Analyze_Pragma, case Precondition): Do not analyze the
1052 condition, to prevent generation of visible code during expansion,
1053 when Check is not enabled.
1054
10552009-07-09 Gary Dismukes <dismukes@adacore.com>
1056
1057 * checks.adb (Install_Static_Check): Call Possible_Local_Raise so that
1058 the check gets registered for any available local handler
1059 (Set_Local_Raise).
1060
1061 * sem_util.adb: Add with and use of Exp_Ch11.
1062 (Apply_Compile_Time_Constraint_Error): Call Possible_Local_Raise so
1063 that the check gets registered for any available local handler.
1064
1065 * exp_ch4.adb (Expand_N_Slice): Remove call to Enable_Range_Check
1066 on slice ranges.
1067
10682009-07-09 Steve Baird <baird@adacore.com>
1069
1070 * exp_ch11.adb (Force_Static_Allocation_Of_Referenced_Objects): New
1071 function.
1072 (Expand_N_Exception_Declaration): Fix handling of exceptions
1073 declared in a subprogram.
1074
f6cf5b85
AC
10752009-07-09 Emmanuel Briot <briot@adacore.com>
1076
1077 * prj-nmsc.adb (Find_Sources): Avoid error messages from gprbuild from
1078 multi-unit files.
1079
10802009-07-09 Thomas Quinot <quinot@adacore.com>
1081
1082 * freeze.adb: Minor reformatting
1083
1084 * exp_ch3.adb: Minor comment fix.
1085
1086 * sinfo.ads: Minor comment fix
1087
10882009-07-09 Ed Schonberg <schonberg@adacore.com>
1089
1090 * exp_ch4.adb (Expand_N_Conditional_Expression): Set Related_Expression.
1091
7aedb36a
AC
10922009-07-09 Ed Schonberg <schonberg@adacore.com>
1093
1094 * freeze.adb (Freeze_Expression): If the expression is the name of a
1095 function in a call, and the function has not been frozen yet, create
1096 extra formals for it to ensure that the proper actuals are created
1097 when expanding the call.
1098
10992009-07-09 Emmanuel Briot <briot@adacore.com>
1100
1101 * prj-pp.adb (Print): Fix handling of source index when set on a
1102 declaration node.
1103
a4941eec
ES
11042009-07-09 Ed Schonberg <schonberg@adacore.com>
1105
1106 * einfo.ads, einfo.adb: New attribute Related_Expression, used to link
1107 a temporary to the source expression whose value it captures.
1108
1109 * exp_util.adb (Remove_Side_Effects): Set Related_Expression as needed.
1110
5e278028
MLI
11112009-07-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
1112
a729ce28 1113 * gcc-interface/trans.c (gnat_gimplify_expr): Replace EXPR_LOCUS by
5e278028
MLI
1114 EXPR_LOCATION.
1115
c2369146
AC
11162009-07-07 Gary Dismukes <dismukes@adacore.com>
1117
1118 * exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for in out
1119 parameters when the subtype of the actual is not known to be a subrange
1120 of the formal's subtype.
1121 (Expand_Call): Generate a range check only in the E_In_parameter case
1122 (in out parameter range checks are now handled in Expand_Actuals).
1123
1124 * exp_ch4.adb (Expand_N_Slice): Restore code that calls
1125 Enable_Range_Check.
1126
11272009-07-07 Robert Dewar <dewar@adacore.com>
1128
1129 * a-stwise.adb, a-stzsea.adb, a-strsea.adb: Add comments
1130
11312009-07-07 Javier Miranda <miranda@adacore.com>
1132
1133 * exp_disp.adb (Expand_Interface_Conversion): Handle access type whose
1134 designated type comes from a limited views.
1135
11362009-07-07 Emmanuel Briot <briot@adacore.com>
1137
1138 * prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Fix handling of
1139 locally removed files that are later made visible again in an importing
1140 project.
1141
11422009-07-07 Robert Dewar <dewar@adacore.com>
1143
1144 * gnat_rm.texi: Clarify documentation of Stream_Convert pragma
1145
11462009-07-07 Sergey Rybin <rybin@adacore.com>
1147
1148 * gnat_ugn.texi: Add an example to the description of gnatcheck
1149 'Style_Checks' rule option.
1150
11512009-07-07 Tristan Gingold <gingold@adacore.com>
1152
1153 * seh_init.c: Fix inline assembly statement in seh_init.c
1154
11552009-07-07 Ed Schonberg <schonberg@adacore.com>
1156
1157 * sem_warn.adb (Check_References): Do not emit warnings on formals of
1158 an entry body. Only the formals of the entry declaration are traced.
1159
75a5a487
RD
11602009-07-07 Robert Dewar <dewar@adacore.com>
1161
a729ce28 1162 * s-osprim-mingw.adb: Minor code reorganization
75a5a487 1163
85686ad9
AC
11642009-07-07 Robert Dewar <dewar@adacore.com>
1165
1166 * prj-nmsc.adb: Minor reformatting
1167
11682009-07-07 Pascal Obry <obry@adacore.com>
1169
1170 * a-stwise.adb, a-stzsea.adb, a-strsea.adb (Index): properly handle
1171 cases where Pattern is longer than Source.
1172
11732009-07-07 Pascal Obry <obry@adacore.com>
1174
1175 * s-osprim-mingw.adb (Get_Base_Time): Avoid infinite loop.
1176
54ecb428
AC
11772009-07-07 Emmanuel Briot <briot@adacore.com>
1178
1179 * prj-nmsc.adb (Process_Naming): canonicalize file suffixes read in the
1180 project file.
1181
11822009-07-07 Ed Schonberg <schonberg@adacore.com>
1183
1184 * exp_ch3.adb (Expand_Freeze_Record_Type): Add extra formals to
1185 primitive operations, in case one of them is called in the
1186 initialization procedure for the type.
1187
84157c9a
RD
11882009-07-07 Robert Dewar <dewar@adacore.com>
1189
1190 * a-calend.adb: Minor code reorganization (use conditional expressions)
1191
1192 * s-stusta.ads, s-interr-hwint.adb, g-expect-vms.adb, s-secsta.ads,
1193 prj-nmsc.adb, a-teioed.adb, output.ads, prj-attr.ads, a-textio.adb,
1194 s-taskin.ads, scans.ads, s-osinte-vms.adb, s-taprop-solaris.adb,
1195 s-tpopsp-posix-foreign.adb, s-trafor-default.adb, gnat1drv.adb,
1196 s-stchop-vxworks.adb, s-tpopsp-posix.adb, prj-env.adb, prj-env.ads,
1197 g-comlin.adb, exp_ch11.adb: Minor reformatting.
1198
d79e621a
GD
11992009-07-07 Gary Dismukes <dismukes@adacore.com>
1200
1201 * checks.adb (Generate_Range_Check): Replace type conversions with
1202 unchecked conversions to support the case of performing range checks
1203 on Enum'Val (permits integer values to be converted to enumeration).
1204
1205 * exp_attr.adb (Expand_N_Attribute_Reference, cases Attribute_Pred,
1206 Attribute_Succ): Set Do_Range_Check to False before calling
1207 Expand_Pred_Succ, to prevent gigi from generating any range checks.
1208 (Expand_N_Attribute_Reference, case Attribute_Val):
1209 Generate a range check when needed (and set Do_Range_Check to False).
1210
1211 * exp_ch3.adb (Expand_N_Object_Declaration): Generate a range check on
1212 scalar object initialization if needed.
1213
1214 * exp_ch4.adb (Expand_Allocator_Expression): Generate range checks
1215 when needed on scalar allocators.
1216 (Expand_N_Qualified_Expression): Generate range check when needed.
1217 (Expand_N_Slice): Remove call to Enable_Range_Check on slice ranges.
1218 Checks on slice ranges handled in Resolve_Slice.
1219
1220 * exp_ch5.adb (Expand_N_Assignment_Statement): Generate a range check,
1221 when needed, for all scalar assignments, not just discrete.
1222 (Expand_Simple_Function_Return): Resolve the conversion created for a
1223 scalar function return so that the conversion will get expanded to
1224 generate a possible constraint check.
1225
1226 * exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for out and
1227 in out scalar actuals when subtypes don't match, to ensure generation
1228 of return checks (and set Do_Range_Check to False).
1229 (Expand_Call): Uncomment code to perform range checks, but make it apply
1230 only to in and in out parameters (checks on parameter returns are
1231 handled in Expand_Actuals). If a scalar actual for a call to a derived
1232 subprogram is marked as needing a range check, peform it here (and set
1233 Do_Range_Check to False).
1234
1235 * sem_aggr.adb (Resolve_*_Aggregate.Resolve_Aggr_Expr): Generate a
1236 range check on scalar component associations when needed.
1237
1238 * sem_eval.adb (In_Subrange_Of): Return False when the first type has
1239 infinities but the second type does not, as these aren't compatible
1240 floating-point types.
1241
1242 * sem_res.adb (Resolve_Slice): In the case where the prefix of the
1243 slice is itself a slice, pick up the Etype of the prefix. This handles
1244 the case where the prefix was an Image attribute expanded to a slice,
1245 and ensures that we get the subtype with the slice constraint rather
1246 than the unconstrained subbtype of the 'Image.
1247
e0ba1bfd
ES
12482009-07-07 Ed Schonberg <schonberg@adacore.com>
1249
1250 * sem_ch4.adb (Analyze_Conditional_Expression): handle properly
1251 overloaded expressions in a conditional expressions.
1252
1253 * sem_res.adb (Resolve): Handle properly overloaded conditional
1254 expressions.
1255
b46be8a2
RD
12562009-07-07 Robert Dewar <dewar@adacore.com>
1257
1258 * scng.adb: Minor reformattting
1259
1260 * par-ch2.adb (Scan_Pragma_Argument_Association): Pragma argument
1261 association allows conditional expression without parens.
1262
1263 * par-ch4.adb (P_Name): Attribute arguments can be conditional
1264 expressions without enclosing parentheses, and also as parameters,
1265 indexing expressions etc.
1266 (P_Conditional_Expression): New procedure
1267 (P_Expression_If_OK): New procedure
1268
1269 * par.adb (P_Conditional_Expression): New procedure
1270 (P_Expression_If_OK): New procedure
1271
1272 * sem_ch4.adb (Analyze_Conditional_Expression): Allow for two argument
1273 form of conditional expression.
1274
1275 * sem_res.adb (Resolve_Conditional_Expression): Deal with supplying
1276 missing True argument if ELSE argument missing.
1277
1278 * sinfo.adb (Is_Elsif): New flag
1279
1280 * sinfo.ads (N_Conditional_Expression): This node is now a syntactic
1281 part of the language, and the documentation is modified accordingly.
1282 (Is_Elsif): New flag
1283
4fd263a6
OH
12842009-07-06 Olivier Hainque <hainque@adacore.com>
1285
1286 * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu,
1287 setjmp_longjmp): Attach the exception propagation reraise fallback
1288 to the sequence end label location when we have it.
1289
d5b7dccd
FXC
12902009-07-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1291
1292 PR ada/40608
1293 * init.c (APPLE): Include <mach/mach_init.h>.
27778058 1294 (__gnat_error_handler, APPLE): Add ATTRIBUTE_UNUSED marker.
d5b7dccd 1295
9ce8e057
EB
12962009-07-04 Eric Botcazou <ebotcazou@adacore.com>
1297
1298 * ada-tree.h (SET_TYPE_LANG_SPECIFIC): Rewrite.
1299 (SET_DECL_LANG_SPECIFIC): Likewise.
1300 (TYPE_RM_VALUE): New macro.
1301 (SET_TYPE_RM_VALUE): Likewise.
1302 (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUE.
1303 (TYPE_RM_MIN_VALUE): Likewise.
1304 (TYPE_RM_MAX_VALUE): Likewise.
1305 (SET_TYPE_RM_SIZE): Rewrite in terms of SET_TYPE_RM_VALUE.
1306 (SET_TYPE_RM_MIN_VALUE): Likewise.
1307 (SET_TYPE_RM_MAX_VALUE): Likewise.
1308 * decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Remove kludge.
1309
d8bf0ab8
LG
13102009-07-04 Laurent GUERBY <laurent@guerby.net>
1311
1312 PR ada/40631
1313 * tracebak.c (__gnat_backtrace): Fix old-style definition.
27778058 1314
74c9e852
RO
13152009-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1316
1317 * tracebak.c [i386 && sun] (IS_BAD_PTR): Use -1UL in comparison.
1318
882e35a6
JDA
13192009-07-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1320
1321 PR ada/40609
bf92f919
EB
1322 * init.c (__gnat_error_handler, HP-UX): Add ATTRIBUTE_UNUSED marker to
1323 ucontext argument.
882e35a6 1324
c29fe0c8
EB
13252009-07-01 Eric Botcazou <ebotcazou@adacore.com>
1326
1327 * init.c (__gnat_error_handler, Solaris): Add ATTRIBUTE_UNUSED marker.
1328
342f368c
EB
13292009-06-30 Eric Botcazou <ebotcazou@adacore.com>
1330
1331 * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Do not use
1332 the type of the left operand if it pads a self-referential type when
1333 the right operand is a constructor.
1334
1335 * gcc-interface/lang-specs.h: Fix copyright date.
1336
f82a627c
EB
13372009-06-30 Eric Botcazou <ebotcazou@adacore.com>
1338
1339 * gcc-interface/decl.c: Include tree-inline.h.
1340 (annotate_value) <CALL_EXPR>: Try to inline the call in the expression.
1341 * gcc-interface/utils.c (max_size) <CALL_EXPR>: Likewise.
1342 * gcc-interface/utils2.c: Include tree-inline.
1343 (known_alignment) <CALL_EXPR>: Likewise.
1344
a2350322
EB
13452009-06-30 Eric Botcazou <ebotcazou@adacore.com>
1346
b6a1a144 1347 * raise-gcc.c: Include dwarf2.h conditionally.
a2350322 1348
bbf531f0
TT
13492009-06-29 Tom Tromey <tromey@redhat.com>
1350
1351 * raise-gcc.c: Include elf/dwarf2.h.
1352
6ccbcf32
LG
13532009-06-27 Laurent GUERBY <laurent@guerby.net>
1354
1355 * tb-gcc.c (trace_callback): Add casts to silence warning.
1356
463d9ac4
EB
13572009-06-27 Eric Botcazou <ebotcazou@adacore.com>
1358
1359 * tb-gcc.c: Fix copyright notice.
1360
c6bd4220
EB
13612009-06-27 Eric Botcazou <ebotcazou@adacore.com>
1362
1363 * init.c (__gnat_set_globals): Add prototype.
1364 * adaint.c (__gnat_binder_supports_auto_init): Likewise.
1365 (__gnat_sals_init_using_constructors): Likewise.
1366 * gcc-interface/utils.c (gnat_pushlevel): Likewise.
1367 (get_block_jmpbuf_decl): Likewise.
1368 (gnat_poplevel): Likewise.
1369 (merge_sizes): Rename local variable.
1370 (copy_type): Likewise.
1371 (build_vms_descriptor32): Likewise.
1372 (build_vms_descriptor): Likewise.
1373 (convert_vms_descriptor64): Likewise.
1374 (convert_vms_descriptor32): Likewise.
1375 (convert_to_fat_pointer): Likewise.
1376 (maybe_unconstrained_array): Likewise.
1377 (def_fn_type): Use promoted type with va_arg.
1378 * gcc-interface/decl.c (gnat_to_gnu_entity): Add declaration.
1379 (substitute_in_type): Rename local variable.
1380 * gcc-interface/Make-lang.in (ada-warn): Use STRICT_WARN.
1381
6bf68a93
LG
13822009-06-26 Laurent GUERBY <laurent@guerby.net>
1383
1384 * tb-gcc.c (trace_callback): Use char* instead of void*.
91dc2352
EB
1385 * gcc-interface/misc.c (enumerate_modes): Make loop C++ compatible.
1386 * gcc-interface/trans.c (parm_attr): Rename to parm_attr_d.
1387 (Attribute_to_gnu): Adjust for above change.
1388 (Subprogram_Body_to_gnu): Likewise.
1389 * gcc-interface/utils.c (merge_sizes): Rename local variable.
1390 (copy_type): Likewise.
1391 (build_vms_descriptor32): Likewise.
1392 (build_vms_descriptor): Likewise.
1393 (convert_vms_descriptor64): Likewise.
1394 (convert_vms_descriptor32): Likewise.
1395 (convert_to_fat_pointer): Likewise.
1396 (maybe_unconstrained_array): Likewise.
1397 * gcc-interface/decl.c (substitute_in_type): Likewise.
1398
f45f9664
EB
13992009-06-26 Eric Botcazou <ebotcazou@adacore.com>
1400
1401 * gcc-interface/decl.c (cannot_be_superflat_p): New predicate.
1402 (gnat_to_gnu_entity) <E_Array_Subtype>: Use it to build the expression
1403 of the upper bound of the index types.
1404
c0e1e108
EB
14052009-06-26 Eric Botcazou <ebotcazou@adacore.com>
1406
1407 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Factor
1408 out common predicate. Use the maximum to compute the upper bound of
1409 the index type only when it is not wider than sizetype. Perform the
1410 comparison in the index type for the generic expression. Use real
1411 precision to decide whether to generate special types for debugging
1412 information.
1413
ffa5876f
AC
14142009-06-26 Matthew Gingell <gingell@adacore.com>
1415
1416 * adaint.c: Do not use the dummy version of convert_addresses on LynxOS
1417
14182009-06-26 Vincent Celier <celier@adacore.com>
1419
1420 * prj.ads (No_Language_Config): Value of Dependency_Kind is None by
1421 default.
1422
14232009-06-26 Robert Dewar <dewar@adacore.com>
1424
1425 * exp_ch4.adb, gnatcmd.adb, make.adb: Minor reformatting
1426
4e6602a8
EB
14272009-06-26 Eric Botcazou <ebotcazou@adacore.com>
1428
1429 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Pass
1430 correct arguments to create_field_decl. Remove redundant iteration.
1431 Rewrite computation of the maximum size.
1432 <E_Array_Subtype>: Reorder and simplify handling of special cases.
1433 Rewrite computation of the maximum size. Use consistent naming.
1434 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Length>: Swap
1435 comparison order for consistency. Use generic integer node to
1436 build the operator and fold the result.
1437
2a31c32b
AC
14382009-06-25 Vincent Celier <celier@adacore.com>
1439
1440 * vms_data.ads: Minor comment change
1441
14422009-06-25 Gary Dismukes <dismukes@adacore.com>
1443
1444 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Don't build an
1445 assignment statement to targeting a caller-provided object when the
1446 result type is an interface type.
1447
1448 * exp_ch6.adb (Expand_Call): Remove redundant test of
1449 Is_Limited_Interface (Is_Inherently_Limited is sufficient).
1450 (Is_Build_In_Place_Function): Remove test for Is_Limited_Interface.
1451
1452 * sem_aggr.adb (Check_Expr_OK_In_Limited_Aggregate): Add type in call
1453 to OK_For_Limited_Init.
1454
1455 * sem_aux.adb (Is_Inherently_Limited_Type): Revise limited type
1456 condition so that True is returned for all limited interfaces, not
1457 just synchronized ones. Ignore components of an interface type when
1458 checking for limited components (such a component can be a parent
1459 component).
1460
1461 * sem_ch3.ads (OK_For_Limited_Init_In_05): Add type parameter.
1462 (OK_For_Limited_Init): Add type parameter.
1463
1464 * sem_ch3.adb (Check_Initialization): Add type in call to
1465 OK_For_Limited_Init.
1466 (OK_For_Limited_Init): Add new type param in call to
1467 OK_For_Limited_Init_In_05.
1468 (OK_For_Limited_Init_In_05): Permit arbitrary expressions of a
1469 nonlimited type when the context type is a limited interface. Add type
1470 on recursive calls.
1471
1472 * sem_ch4.adb (Analyze_Allocator): Add type in call to
1473 OK_For_Limited_Init.
1474
1475 * sem_ch6.adb (Check_Limited_Return): Add type in call to
1476 OK_For_Limited_Init.
1477
1478 * sem_ch12.adb (Analyze_Formal_Object_Declaration): Add type in call to
1479 OK_For_Limited_Init.
1480 (Instantiate_Object): Add type in call to OK_For_Limited_Init.
1481
1482 * sem_type.adb (Interface_Present_In_Ancestor): In the case of a
1483 class-wide interface, get the base type before applying Etype, in order
1484 to account for class-wide subtypes.
1485
fadcf313
AC
14862009-06-25 Emmanuel Briot <briot@adacore.com>
1487
1488 * gnatcmd.adb, prj-proc.adb, make.adb, prj.adb, prj.ads, prj-nmsc.adb,
1489 prj-util.adb, prj-env.adb, prj-env.ads: Merge handling of naming_data
1490 between gnatmake and gprbuild.
1491 (Naming_Data): Removed, no longer used
1492 (Naming_Table, Project_Tree_Ref.Namings): Removed, since this is only
1493 needed locally in one subprogram, no need to store forever in the
1494 structure.
1495 (Check_Naming_Scheme, Check_Package_Naming): Merged, since they play
1496 a similar role.
1497 (Body_Suffix_Of, Body_Suffix_Id_Of, Register_Default_Naming_Scheme,
1498 Same_Naming_Scheme, Set_Body_Suffix, Set_Spec_Suffix, Spec_Suffix_Of,
1499 Spec_Suffix_Id_Of): removed, no longer used.
1500
15012009-06-25 Javier Miranda <miranda@adacore.com>
1502
1503 * sem_res.adb (Resolve_Allocator): Skip test requiring exact match of
1504 types on qualified expression in calls to imported C++ constructors.
1505
1506 * exp_ch4.adb (Expand_Allocator_Expression): Add missing support for
1507 imported C++ constructors.
1508
15092009-06-25 Sergey Rybin <rybin@adacore.com>
1510
1511 * vms_data.ads: Add qualifier for new gnatcheck '-t' option.
1512
5b900a45
AC
15132009-06-25 Vincent Celier <celier@adacore.com>
1514
1515 * s-os_lib.adb (Normalize_Pathname.Get_Directory): If directory
1516 provided, on Windows change all '/' to '\'.
1517
1518 * fmap.ads, fmap.adb (Remove_Forbidden_File_Name): Remove, no longer
1519 used. Minor comment changes
1520
1521 * prj-nmsc.adb: Do not call Fmap.Add_Forbidden_File_Name or
1522 Remove_Forbidden_File_Name.
1523
15242009-06-25 Quentin Ochem <ochem@adacore.com>
1525
1526 * prj.ads (Unit_Index): Now general access type.
fadcf313 1527
a2b62f99
PO
15282009-06-25 Pascal Obry <obry@adacore.com>
1529
1530 * a-stwise.adb, a-stzsea.adb: Fix confusion between 'Length and 'Last.
1531
1d24fc5e
EB
15322009-06-25 Emmanuel Briot <briot@adacore.com>
1533
1534 * fmap.ads, make.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb,
1535 prj-env.ads (Source_Data.Get_Object): Field removed, since it can be
1536 computed efficiently from the other fields.
1537 (Object_To_Global_Archive): New subprogram
1538 (Create_Mapping): Remove unneeded call to Remove_Forbidden_File_Name.
1539 (Override_Kind): Fix handling of separates in Ada.
1540 (Create_Mapping_File): Remove duplicate code
1541 (Naming_Data.Implementation_Exception, Specification_Exception):
1542 field removed, since never used.
1543 (Naming_Data.Specs, .Bodies): field removed, since this is only
1544 used while processing the project and is not needed once the tree
1545 is in memory. This brings Naming_Data and Lang_Naming_Data
1546 closer (same content now, but different use still).
1547
8f2eeab7
PO
15482009-06-25 Pascal Obry <obry@adacore.com>
1549
1550 * sem_ch4.adb: Minor reformatting.
1551
1552 * a-strsea.adb: Fix confusion between 'Length and 'Last.
1553
bea993f9
AC
15542009-06-25 Ed Schonberg <schonberg@adacore.com>
1555
1556 * exp_attr.adb (Expand_N_Attribute_Reference, case 'Access and
1557 Unchecked_Access): If the context is an interface type, and the prefix
1558 is of the corresponding class-wide type, do not insert a conversion
1559 because the pointer displacement has already taken place, and we must
1560 retain the class-wide type in a dispatching context.
1561
15622009-06-25 Emmanuel Briot <briot@adacore.com>
1563
1564 * prj-nmsc.adb, prj-env.adb (Override_Kind): Unset the unit field of
1565 the previous source file.
1566 (Create_Mapping): Iterate on sources rather than on units.
1567
cabadd1c
AC
15682009-06-25 Emmanuel Briot <briot@adacore.com>
1569
1570 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb,
1571 prj-env.adb, prj-env.ads (Slash): removed, no longer used
1572 (Source_Data): no longer use Path.Name to point to a locally removed
1573 file. Instead we use the field Locally_Removed which is clearer
1574
15752009-06-25 Arnaud Charlet <charlet@adacore.com>
1576
1577 * gcc-interface/Make-lang.in: Remove references to sem_maps.o
1578
1579 * sem_maps.adb, sem_maps.ads: Removed, not used.
1580
9763f8c8
AC
15812009-06-25 Ed Falis <falis@adacore.com>
1582
1583 * s-vxwext-rtp.ads: Add missing declaration
1584
15852009-06-25 Matthew Gingell <gingell@adacore.com>
1586
1587 * a-stwise.adb, a-stzsea.adb (Count, Index): Avoid local copy on stack,
1588 speed up unmapped case.
1589
15902009-06-25 Vincent Celier <celier@adacore.com>
1591
1592 * prj-nmsc.adb (Check): Change error message for illegal abstract
1593 projects.
1594
15952009-06-25 Robert Dewar <dewar@adacore.com>
1596
1597 * gnat_ugn.texi: Add note on use of -gnatct for ASIS
1598
15992009-06-25 Emmanuel Briot <briot@adacore.com>
1600
1601 * fmap.ads: Add documentation on mapping files
1602
d6533e74
RD
16032009-06-25 Robert Dewar <dewar@adacore.com>
1604
1605 * exp_ch6.adb, g-socket.ads, g-socket.adb, sem_ch3.adb: Minor
1606 reformatting
1607
e1f3cb58
AC
16082009-06-24 Robert Dewar <dewar@adacore.com>
1609
1610 * prj-nmsc.adb, prj-nmsc.ads, prj-proc.adb, prj.adb: Minor reformatting
1611
1612 * a-strsea.adb (Count): Avoid local copy on stack, speed up unmapped
1613 case.
1614 (Index): Ditto.
1615
16162009-06-24 Ed Schonberg <schonberg@adacore.com>
1617
1618 * sem_ch4.adb (Analyze_One_Call): Check that at least one actual is
1619 present when checking whether a call may be interpreted as an indexing
1620 of the result of a call.
1621
1622 * exp_ch9.adb (Expand_N_Subprogram_Declaration): Place the generated
1623 body for a null procedure on the freeze actions for the procedure, so
1624 that it will be analyzed at the proper place without premature freezing
1625 of actuals.
1626
1627 * sem_ch3.adb (Check_Completion): Code cleanup.
1628 Do not diagnose a null procedure without a body, if previous errors
1629 have disabled expansion.
1630
16312009-06-24 Doug Rupp <rupp@adacore.com>
1632
1633 * init.c [VMS] Resignal C$_SIGKILL
1634
16352009-06-24 Ed Falis <falis@adacore.com>
1636
1637 * s-vxwext.adb, s-vxwext-kernel.adb: Add s-vxwext body for VxWorks 5
1638 Define ERROR in body for VxWorks 6 kernel
1639
16402009-06-24 Pascal Obry <obry@adacore.com>
1641
1642 * g-socket.adb, g-socket.ads: Fix possible unexpected constraint error
1643 in [Send/Receive]_Socket.
1644
c9287857
EB
16452009-06-24 Emmanuel Briot <briot@adacore.com>
1646
1647 * prj-proc.adb, prj-proc.ads, prj.ads, prj-nmsc.adb, prj-nmsc.ads,
1648 prj-conf.adb, prj-conf.ads (Allow_Duplicate_Basenames): New parameter
1649 to several subprograms.
1650 (Source_Data.Other_Part): Removed, since can be computed from the
1651 language.
1652 (Other_Part): New subprogram.
1653
2b426674
EB
16542009-06-24 Emmanuel Briot <briot@adacore.com>
1655
1656 * gnat_ugn.texi, prj-nmsc.adb (Suffix_Matches): A suffix can also match
1657 the full base name of the file when the suffix doesn't start with a '.'.
1658
95cd3246
AC
16592009-06-24 Vincent Celier <celier@adacore.com>
1660
1661 * prj-nmsc.adb (Check): A project declared abstract is legal if no
1662 attribute Source_Dirs, Source_Files, Source_List_File or Languages is
1663 declared.
1664
16652009-06-24 Robert Dewar <dewar@adacore.com>
1666
1667 * clean.adb, gnatcmd.adb, make.adb, mlib-prj.adb,
1668 prj-env.adb: Minor reformatting
1669
16702009-06-24 Ed Falis <falis@adacore.com>
1671
1672 * s-taprop-vxworks.adb, s-osinte-vxworks.ads, s-vxwext.ads,
1673 s-vxwext-kernel.adb, s-vxwext-kernel.ads, s-vxwext-rtp.adb,
1674 s-tasinf-vxworks.ads, gcc-interface/Makefile.in: Add processor affinity
1675 support for VxWorks SMP.
1676
1677 * gcc-interface/Make-lang.in: Update dependencies
1678
5a66a766
EB
16792009-06-24 Emmanuel Briot <briot@adacore.com>
1680
1681 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
1682 prj-nmsc.adb, prj-env.adb, prj-proc.adb (Units_Table): Removed, since
1683 no longer useful.
1684 (Source_Data.Lang_Kind): Removed, since it duplicates information
1685 already available through Language.Config.
1686 (Source_Data.Compile): Removed, since information is already available
1687 through the language.
1688 (Is_Compilable): New subprogram.
1689 (Source_Data.Dependency): Removed, since already available through
1690 the language.
1691 (Source_Data.Object_Exist, Object_Linked): Removed since available
1692 through the language already.
1693 (Unit_Data.File_Names): Is now also set in multi_language mode, to
1694 bring the two modes closer in the resulting data structures.
1695 (Source_Data.Unit): Now a direct pointer to the unit data, rather than
1696 just the name that would point into a hash table.
1697 (Get_Language_From_Name): New subprogram.
1698
852dba80
AC
16992009-06-24 Javier Miranda <miranda@adacore.com>
1700
1701 * exp_ch4.adb (Expand_N_Type_Conversion): Handle entities that are
1702 visible through limited-with context clauses. In addition, avoid an
1703 extra tag check that is not required when the class-wide
1704 designated types of the operand and target types are
1705 the same entity.
1706 (Tagged_Membership): Handle entities from the limited view.
1707
17082009-06-24 Emmanuel Briot <briot@adacore.com>
1709
1710 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.ads, clean.adb,
1711 prj-nmsc.adb, prj-env.adb (File_Name_Data): removed
1712 (Spec_Or_Body): now a subtype of Source_Kind, to avoid using two
1713 different vocabularies for similar concepts (Impl/Body_Part and
1714 Spec/Specification).
1715 (Unit_Data): now points directly to a Source_Id, rather than duplicating
1716 some of the information in File_Name_Data. This also saves a bit of
1717 memory. However, since we are now using a pointer we need to test
1718 for null explicitly in several places of the code
1719
950d217a
AC
17202009-06-24 Javier Miranda <miranda@adacore.com>
1721
1722 * exp_ch4.adb (Expand_N_Type_Conversion): return immediately
1723 from processing the type conversion when the node is
1724 replaced by an N_Raise_Program_Error node.
1725
17262009-06-24 Hristian Kirtchev <kirtchev@adacore.com>
1727
1728 * sem_ch6.adb (Designates_From_With_Type): New routine.
1729 (Process_Formals): Since anonymous access types are no longer flagged
1730 as from with types, traverse the designated type to determine whether
1731 it is coming from a limited view.
1732
1733 * sem_res.adb: Remove with and use clauses for Sem_Ch10.
1734 (Full_Designated_Type): Use Available_View to extract the non-limited /
1735 full view of a type.
1736
dd3e1ff5
AC
17372009-06-24 Robert Dewar <dewar@adacore.com>
1738
1739 * exp_ch6.adb: Minor reformatting
1740
1741 * layout.adb: Minor reformatting
1742
1743 * make.adb: Minor reformatting
1744
17452009-06-24 Thomas Quinot <quinot@adacore.com>
1746
1747 * sem_ch10.adb: Minor code reorganization.
1748
0386aad1
AC
17492009-06-24 Eric Botcazou <ebotcazou@adacore.com>
1750
1751 * ttypes.ads: Minor editing.
1752
17532009-06-24 Robert Dewar <dewar@adacore.com>
1754
1755 * exp_ch6.adb (Expand_Actuals): Use Is_Volatile, not Treat_As_Volatile
1756 in deciding to do call-by-copy code.
1757
17582009-06-24 Vincent Celier <celier@adacore.com>
1759
1760 * make.adb (Gnatmake): To decide if an executable should be rebuilt,
1761 check if an externally built library file is more current than the
1762 executable.
1763
2724e58f
OH
17642009-06-23 Olivier Hainque <hainque@adacore.com>
1765
1766 * gcc-interface/utils.c (handle_vector_size_attribute): Import from
1767 c-common.c and populate in gnat_internal_attribute_table.
1768
14e33999
AC
17692009-06-23 Ed Schonberg <schonberg@adacore.com>
1770
1771 * sem_res.adb (Valid_Conversion, Full_Designated_Type): Use
1772 Available_View only when designated type of an anonymous access type
1773 is limited view.
1774
17752009-06-23 Robert Dewar <dewar@adacore.com>
1776
1777 * sem_ch10.adb: Minor reformatting
1778
792569a9
RD
1779 * ali.ads: Mino reformatting.
1780
14e33999
AC
1781 * gnat1drv.adb (Adjust_Global_Switches): New procedure (take care of
1782 turning off inlining if ASIS mode active).
1783
1784 * switch-c.adb: Remove fiddling with Inspector_Mode and ASIS_Mode
1785 This belongs in gnat1drv.adb after switches are scanned.
1786
c0985d4e
HK
17872009-06-23 Hristian Kirtchev <kirtchev@adacore.com>
1788
1789 * sem_attr.adb: Add with and use clauses for Sem_Ch10.
1790 (Check_Not_Incomplete_Type): Minor reformatting. Retrieve the root type
1791 when dealing with class-wide types. Detect a legal shadow entity and
1792 retrieve its non-limited view.
1793
1794 * sem_ch10.adb (Has_With_Clause): Move the spec and body of the
1795 subprogram to top package level from Intall_Limited_Withed_Unit.
1796 (Install_Limited_Withed_Unit): Remove spec and body of Has_With_Clause.
1797 Add check which prevents the installation of a limited view if the
1798 non-limited view is already visible through a with clause.
1799 (Is_Legal_Shadow_Entity_In_Body): New routine. Detect a residual, but
1800 legal shadow entity which may occur in subprogram formals of anonymous
1801 access type.
1802
1803 * sem_ch10.ads (Is_Legal_Shadow_Entity_In_Body): New routine.
1804
1805 * sem_ch3.adb (Access_Definition): Remove the propagation of flag
1806 From_With_Type from the designated type to the generated anonymous
1807 access type. Remove associated comment.
1808
1809 * sem_res.adb Add with and use clauses for Sem_Ch10.
1810 (Full_Designated_Type): Detect a legal shadow entity and retrieve its
1811 non-limited view. Since the shadow entity may replace a regular
1812 incomplete type, return the available full view.
1813
0d354370
AC
18142009-06-23 Ed Schonberg <schonberg@adacore.com>
1815
1816 * sem_ch10.adb (Remove_Limited_With_Clause): Clean up code that handles
1817 incomplete type declarations. Previous code was potentially quadratic
1818 in the number of visible declarations in any package appearing in a
1819 limited_with_clause.
1820
18212009-06-23 Robert Dewar <dewar@adacore.com>
1822
1823 * prj-conf.ads, prj-part.adb, prj-proc.adb, prj-proc.ads, sem_ch8.adb,
1824 xref_lib.adb: Minor reformatting
1825
85b7d482
RD
18262009-06-23 Robert Dewar <dewar@adacore.com>
1827
1828 * a-stzhas.adb: Provide dummy body to avoid build problems with old
1829 versions which did have a body for this unit.
1830
efc81a89
AC
18312009-06-23 Vincent Celier <celier@adacore.com>
1832
1833 * prj-attr.adb: Attribute names Initial_Required_Switches and
1834 Final_Required_Switches changed to Leading_Required_Switches and
1835 Trailing_Required_Switches.
1836
1837 * prj-nmsc.adb (Process_Compiler): Attribute names
1838 Initial_Required_Switches and Final_Required_Switches changed to
1839 Leading_Required_Switches and Trailing_Required_Switches.
1840
1841 * prj.ads (Language_Config): Component Initial_Required_Switches and
1842 Final_Required_Switches changed to Leading_Required_Switches and
1843 Trailing_Required_Switches.
1844
1845 * snames.ads-tmpl: Remove standard names Initial_Required_Switches and
1846 Final_Required_Switches; add standard names Leading_Required_Switches
1847 and Trailing_Required_Switches.
1848
18492009-06-23 Thomas Quinot <quinot@adacore.com>
1850
1851 * prj-conf.adb: Minor reformatting
1852
1853 * xref_lib.adb: Minor cleanup
1854
1290ef14
AC
18552009-06-23 Emmanuel Briot <briot@adacore.com>
1856
1857 * prj-proc.adb, prj-proc.ads, prj-nmsc.adb, prj-nmsc.ads, prj-conf.adb,
1858 prj-conf.ads (Check_Configuration): New parameter
1859 Compiler_Driver_Mandatory.
1860
18612009-06-23 Ed Schonberg <schonberg@adacore.com>
1862
1863 * sem_ch10.adb (Analyze_With_Clause): If a subprogram instance in the
1864 context of the current unit has an inline pragma, the instance is not
1865 rewritten as the declaration of the package wrapper. Handle both
1866 possibilities when retrieving the visible subprogram that renames the
1867 instantiation itself.
1868
d6a24cdb
AC
18692009-06-23 Javier Miranda <miranda@adacore.com>
1870
1871 * exp_ch4.adb (Displace_Allocator_Pointer, Expand_N_Allocator): Handle
1872 designated types referencing entities from the limited view.
1873
f91c36dc
AC
18742009-06-23 Robert Dewar <dewar@adacore.com>
1875
1876 * s-strhas.adb, s-strhas.ads: Restrict to 32-bit modular types
1877
1878 * s-imgdec.adb (Set_Decimal_Digits): Fix error of too many digits for
1879 small values
1880
1881 * prj-conf.ads: Minor reformatting
1882
1883 * prj-conf.adb: Minor reformatting
1884
18852009-06-23 Vasiliy Fofanov <fofanov@adacore.com>
1886
1887 * g-debpoo.adb (Dump_Gnatmem): Output dummy timestamps for allocations
1888 to correspond to the log format that gnatmem now expects.
1889
18902009-06-23 Vincent Celier <celier@adacore.com>
1891
1892 * prj-attr.adb: New attributes Initial_Required_Switches,
1893 Final_Required_Switches and Object_File_Switches
1894
1895 * prj-nmsc.adb (Process_Compiler): Process new attributes
1896 Name_Final_Required_Switches, Name_Initial_Required_Switches and
1897 Name_Object_File_Switches.
1898
1899 * prj.ads (Language_Config): New component
1900 Compiler_Initial_Required_Switches (replace Compiler_Required_Switches),
1901 Compiler_Final_Required_Switches and Object_File_Switches.
1902
1903 * snames.ads-tmpl: New standard names Initial_Required_Switches,
1904 Final_Required_Switches and Object_File_Switches
1905
35262047
AC
19062009-06-23 Pascal Obry <obry@adacore.com>
1907
1908 * s-strhas.adb, s-strhas.ads: Minor reformatting.
1909
19102009-06-23 Ed Schonberg <schonberg@adacore.com>
1911
1912 * sem_ch10.adb (Install_Limited_Withed_Unit): a null procedure does
1913 not indicate that the enclosing unit needs a body.
1914
abe19d88
EB
19152009-06-23 Emmanuel Briot <briot@adacore.com>
1916
1917 * prj-conf.ads, prj-conf.adb: New files part of the project manager.
1918
af268547
ES
19192009-06-23 Ed Schonberg <schonberg@adacore.com>
1920
1921 * sem_ch3.adb (Derive_Subprogram): If the inherited subprogram is a
1922 primitive equality include it with its source name even if the
1923 operation is currently invisible, to make sure that the corresponding
1924 slot in the dispatch table is reserved for the internal equality
1925 subsequently generated during expansion.
1926
a3e3b8da
MG
19272009-06-23 Matthew Gingell <gingell@adacore.com>
1928
1929 * Makefile.rtl, a-stwiha.adb: Add a-stwiha.adb back.
1930
f61580d4
AC
19312009-06-22 Jose Ruiz <ruiz@adacore.com>
1932
1933 * sysdep.c (__gnat_localtime_tzoff for RTX):
1934 SystemTimeToTzSpecificLocalTime is not supported by RTX. Use
1935 GetTimeZoneInformation instead.
1936
19372009-06-22 Robert Dewar <dewar@adacore.com>
1938
1939 * sem_res.adb (Check_No_Direct_Boolean_Operators): New procedure
1940
19412009-06-22 Ed Schonberg <schonberg@adacore.com>
1942
1943 * sem_ch12.adb (Collect_Previous_Instances): Do not collect
1944 instantiations declared in a previous generic package body.
1945
19462009-06-22 Robert Dewar <dewar@adacore.com>
1947
1948 * gnat_rm.texi: Add doc that X=True and X=False is allowed for the
1949 restriction No_Direct_Boolean_Operators.
1950
19512009-06-22 Thomas Quinot <quinot@adacore.com>
1952
1953 * bindusg.adb: Minor fixes to gnatbind usage message
1954
1955 * sem_eval.adb: Minor reformatting
1956
6823270c
AC
19572009-06-22 Javier Miranda <miranda@adacore.com>
1958
1959 * sem_ch3.adb (Analyze_Object_Declaration, Freeze_Entity): Move to the
1960 freezing point the check on the use of abstract types in object
1961 declarations. Done to allow the declaration of C++ imported variables
1962 or constants whose type corresponds with an imported C++ classes for
1963 which the constructor is not imported.
1964
19652009-06-22 Thomas Quinot <quinot@adacore.com>
1966
1967 * sem_ch6.adb: Minor reformatting
1968
19692009-06-22 Ed Schonberg <schonberg@adacore.com>
1970
1971 * exp_ch3.adb (Build_Initialization_Call): If a discriminated record
1972 component is constrained with an expression rather than with a
1973 discriminant of the enclosing type, use that expression when building
1974 the call to default-initialize the component, when the call is part of
1975 an aggregate with box initialization.
1976
c9e7bd8e
AC
19772009-06-22 Ed Schonberg <schonberg@adacore.com>
1978
1979 * sem_ch6.adb (Check_Overriding_Indicator): Clean up code, make warning
1980 unconditional rather than a style check, because a formal name out of
1981 order is suspicious.
1982
19832009-06-22 Vincent Celier <celier@adacore.com>
1984
1985 * prj-nmsc.adb (Locate_Directory): Indicate the project name when
1986 creating a directory automatically.
1987
19882009-06-22 Eric Botcazou <ebotcazou@adacore.com>
1989
1990 * sem_ch3.adb (Create_Constrained_Components): For a subtype of an
1991 untagged derived type, add a hidden component for every constrained
1992 discriminant of the parent type to keep record layout consistent.
1993
d88a51b1
AC
19942009-06-22 Thomas Quinot <quinot@adacore.com>
1995
1996 * exp_ch3.adb: Minor code reorganization (avoid an unnecessary tree
1997 copy).
1998
19992009-06-22 Matthew Gingell <gingell@adacore.com>
2000
2001 * a-stzhas.adb, a-stwiha.adb, impunit.adb, a-swbwha.adb, a-shcain.adb,
2002 s-htable.adb, a-szuzha.adb, a-stunha.adb, a-stboha.adb, a-strhas.adb,
2003 g-spitbo.adb, s-strhas.adb, a-szbzha.adb, s-strhas.ads, Makefile.rtl,
2004 a-swuwha.adb: New unit System.String_Hash.
2005 Refactor redundant cut and pasted hash functions with instances of a
2006 new generic hash function.
2007 Implement a new string hashing algorithm which appears in testing to
2008 be move effective than to previous approach.
2009
20102009-06-22 Ed Falis <falis@adacore.com>
2011
2012 * sysdep.c: remove include for nfsLib.h and an NFS specific error
2013 message for VxWorks 653 vThreads: not supported by the OS.
2014
2015 * gsocket.h: disable sockets for VxWorks 653 vThreads.
2016
20172009-06-22 Robert Dewar <dewar@adacore.com>
2018
2019 * sem_ch6.adb: Add ??? comment for bad use of Style_Check
2020
e7d72fb9
AC
20212009-06-22 Robert Dewar <dewar@adacore.com>
2022
2023 * sinput.adb, sinput.ads (Expr_First_Char, Expr_Last_Char): Replaced
2024 by Sloc_Range.
2025
2026 * freeze.adb: Minor comment updates
2027
2028 * s-valrea.adb (Bad_Based_Value): New procedure
2029 (Scan_Real): Raise exceptions with messages
2030
20312009-06-22 Matthew Gingell <gingell@adacore.com>
2032
2033 * adaint.h: Complete previous change.
2034
20352009-06-22 Thomas Quinot <quinot@adacore.com>
2036
2037 * exp_ch7.ads, exp_ch3.adb: Minor reformatting
2038
20392009-06-22 Ed Schonberg <schonberg@adacore.com>
2040
2041 * sem_ch6.adb (Check_Overriding_Indicator): When style checks are
2042 enabled, emit warning when a non-controlling argument of the overriding
2043 operation appears out of place vis-a-vis of the formal of the
2044 overridden operation.
2045
03456e44
AC
20462009-06-22 Vincent Celier <celier@adacore.com>
2047
2048 * gnatcmd.adb (Check_Files): Close temporary files after all file names
2049 have been written into it.
2050
20512009-06-22 Matthew Gingell <gingell@adacore.com>
2052
2053 * adaint.c, adaint.h, cstreams.c: Call stat64 on platforms where it is
2054 available.
2055
20562009-06-22 Thomas Quinot <quinot@adacore.com>
2057
2058 * sem_disp.adb (Check_Direct_Call): Handle the case where the full
2059 view of the root type is visible at the point of the call.
2060
20612009-06-22 Pat Rogers <rogers@adacore.com>
2062
2063 * gnat_ugn.texi: Revised a sentence to correct a minor grammar error.
2064
59366db6
JL
20652009-06-22 Jerome Lambourg <lambourg@adacore.com>
2066
2067 * freeze.adb: Add comments.
2068
f3b57ab0
AC
20692009-06-21 Thomas Quinot <quinot@adacore.com>
2070
2071 * exp_ch3.adb, exp_prag.adb, exp_util.adb, exp_util.ads, freeze.adb,
2072 sem_ch13.adb, sem_elab.adb (Exp_Prag.Expand_Pragma_Import_Or_Interface):
2073 Factor out code to new subprogram...
2074 (Exp_Util.Find_Init_Call): New shared routine to find the init proc call
2075 for a default initialized variable.
2076 (Freeze.Check_Address_Clause): Do not reset Has_Delayed_Freeze on an
2077 entity that has an associated freeze node.
2078 (Sem_Ch13.Analyze_Attribute_Definition_Clause, case Address):
2079 If there is an init call for the object, defer it to the object freeze
2080 point.
2081 (Check_Elab_Call.Find_Init_Call): Rename to Check_Init_Call, to avoid
2082 name clash with new subprogram introduced in Exp_Util.
2083
20842009-06-21 Robert Dewar <dewar@adacore.com>
2085
2086 * einfo.ads: Minor reformatting
2087
4f91a255
AC
20882009-06-21 Ed Falis <falis@adacore.com>
2089
2090 * env.c (__gnat_environ): return NULL for vThreads - unimplemented
2091
20922009-06-21 Eric Botcazou <ebotcazou@adacore.com>
2093
2094 * einfo.ads: Update comments.
2095
20962009-06-21 Hristian Kirtchev <kirtchev@adacore.com>
2097
2098 * sem_disp.adb (Check_Direct_Call): New routine. Dispatching calls
2099 where the controlling formal is of private class-wide type whose
2100 completion is a synchronized type can be converted into direct calls.
2101
21022009-06-21 Vincent Celier <celier@adacore.com>
2103
2104 * gnatcmd.adb (Check_Files): When all sources of the project are to be
2105 indicated to gnatcheck, gnatpp or gnatmetric, always specify the list
2106 of sources using -files=, so that the distinction can be made by the
2107 tool of a call with no source (to display the usage) from a call with
2108 a project file that contains no source.
2109
21102009-06-21 Jerome Lambourg <lambourg@adacore.com>
2111
2112 * exp_ch3.adb (Build_Array_Init_Proc): Do not build the init proc in
2113 case of VM convention arrays.
2114
8a45323c
RD
21152009-06-20 Robert Dewar <dewar@adacore.com>
2116
2117 * a-nudira.adb: Minor reformatting
2118
5afaf827
AC
21192009-06-20 Ed Schonberg <schonberg@adacore.com>
2120
2121 * exp_ch3.adb (Build_Record_Init_Proc): When copying initial
2122 expressions (possibly from a parent type) indicate that the scope of
2123 the new itypes is the initialization procedure being built.
2124
21252009-06-20 Robert Dewar <dewar@adacore.com>
2126
2127 * a-nudira.adb (Fits_In_32_Bits): New name (inverted sense) for
2128 Needs_64, and now computed without anomolies for some dynamic types.
2129
21302009-06-20 Thomas Quinot <quinot@adacore.com>
2131
2132 * sem_prag.adb: Minor reformatting
2133
2134 * exp_disp.ads: Minor reformatting
2135
e80d72ea
ES
21362009-06-20 Ed Schonberg <schonberg@adacore.com>
2137
2138 * sem_ch3.adb (Is_OK_For_Limited_Init): An unchecked conversion of a
2139 function call is a legal expression to initialize a limited object.
2140
2141 * exp_ch3.adb: Rename various freeze operations that perform expansion
2142 actions, to prevent confusion with subprograms in the freeze package.
2143
6ca063eb
AC
21442009-06-20 Ed Schonberg <schonberg@adacore.com>
2145
2146 * sem.adb (Walk_Library_Units): Check instantiations first.
2147
2148 * sem_ch6.adb (Analyze_Subprogram_Declaration): Mark a subprogram as a
2149 private primitive if it is a function with a controlling result that is
2150 a type extension with progenitors.
2151
2152 * exp_ch9.adb (Build_Wrapper_Spec, Build_Wrapper_Body): Handle properly
2153 a primitive operation of a synchronized tagged type that has a
2154 controlling result.
2155
21562009-06-20 Thomas Quinot <quinot@adacore.com>
2157
2158 * einfo.ads: Fix typo.
2159
21602009-06-20 Ed Falis <falis@adacore.com>
2161
2162 * s-vxwext.ads, s-vxwext-kernel.adb: Complete previous change.
2163
502c4bb9
EB
21642009-06-19 Eric Botcazou <ebotcazou@adacore.com>
2165
2166 * gcc-interface/trans.c (emit_check): Do not wrap up the result
2167 in a SAVE_EXPR.
2168 (protect_multiple_eval): Always protect complex expressions.
2169
659819b9
AC
21702009-06-19 Emmanuel Briot <briot@adacore.com>
2171
2172 * prj-ext.adb, makeutl.adb, makeutl.ads (Executable_Prefix_Path): Now
2173 make sure we always return a name ending with a path separator.
2174
21752009-06-19 Javier Miranda <miranda@adacore.com>
2176
2177 * sem_ch12.adb (Instantiate_Package_Body, Instantiate_Subprogram_Body):
2178 Save and restore the visibility of the parent when installed.
2179
21802009-06-19 Jose Ruiz <ruiz@adacore.com>
2181
2182 * s-tposen.ads (Protection_Entry): Replace fields L, Ceiling, and Owner
2183 by Common which contains all these fields.
2184
2185 * s-tposen.adb (Initialize_Protection_Entry, Lock_Entry,
2186 Lock_Read_Only_Entry, Timed_Protected_Single_Entry_Call, Unlock_Entry):
2187 Remove code duplication in this package by means of calling the
2188 equivalent code in s-taprob.
2189
21902009-06-19 Robert Dewar <dewar@adacore.com>
2191
2192 * a-einuoc.ads: Minor reformatting
2193
0eed21bd
EF
21942009-06-19 Ed Falis <falis@adacore.com>
2195
2196 * a-einuoc.ads, s-osinte-vxworks.ads, s-vxwext.ads, s-vxwext-kernel.adb,
2197 s-vxwext-kernel.ads, s-vxwext-rtp.ads: Code clean up.
2198
93c3fca7
AC
21992009-06-19 Eric Botcazou <ebotcazou@adacore.com>
2200
2201 * einfo.ads (Handling of Type'Size Values): Fix Object_Size values.
2202
22032009-06-19 Robert Dewar <dewar@adacore.com>
2204
2205 * a-nudira.adb (Need_64): Handle negative ranges and also dynamic
2206 ranges
2207
2208 * checks.adb (Determine_Range): Move the test for generic types later.
2209
2210 * sem_eval.adb (Compile_Time_Compare): Improve circuitry to catch more
2211 cases.
2212 (Eval_Relational_Op): Fold more cases including string compares
2213
2214 * sem_util.ads, sem_util.adb (References_Generic_Formal_Type): New
2215 function.
2216
e29e2483
AC
22172009-06-19 Robert Dewar <dewar@adacore.com>
2218
2219 * sem_type.ads, sem_ch12.adb: Minor reformatting
2220
2221 * s-wchcnv.adb (UTF_32_To_Char_Sequence): Handle invalid data properly
2222
22232009-06-19 Ed Schonberg <schonberg@adacore.com>
2224
2225 * exp_ch9.adb (Build_Wrapper_Spec): Handle properly an overridden
2226 primitive operation of a rivate extension whose controlling argument
2227 is an out parameter.
2228
2229 * sem.adb (Walk_Library_Units): exclude generic package declarations
2230 from check.
2231
f26d5cd3
AC
22322009-06-19 Thomas Quinot <quinot@adacore.com>
2233
2234 * i-vxwoio.ads: Add comments
2235
22362009-06-19 Thomas Quinot <quinot@adacore.com>
2237
2238 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
2239 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
2240 g-socthi.adb, g-socthi.ads, g-socket.adb, g-sothco.ads
2241 (GNAT.Sockets.Thin.C_Ioctl): Rename to Socket_Ioctl.
2242 (GNAT.Sockets.Thin.Socket_Ioctl): Use new function
2243 Thin_Common.Socket_Ioctl.
2244 (GNAT.Sockets.Thin_Common.Socket_Ioctl): Binding to new C wrapper
2245 __gnat_socket_ioctl.
2246 (__gnat_socket_ioctl): Wrapper for ioctl(2) called with a single int*
2247 argument after the file descriptor and request code.
2248
22492009-06-19 Robert Dewar <dewar@adacore.com>
2250
2251 * checks.adb: Minor reformatting
2252
1abad480
AC
22532009-06-19 Jose Ruiz <ruiz@adacore.com>
2254
2255 * env.c (__gnat_environ): RTX does not support this functionality.
2256
22572009-06-19 Ed Schonberg <schonberg@adacore.com>
2258
2259 * sem.adb (Walk_Library_Items): Include bodies in the list of units to
2260 traverse, to account for front-end inlining and instantiations in a
2261 spec or in the main unit.
2262
22632009-06-19 Robert Dewar <dewar@adacore.com>
2264
2265 * checks.adb (Determine_Range): Do not attempt to get range of generic
2266 type.
2267
c38e990f
SR
22682009-06-19 Sergey Rybin <rybin@adacore.com>
2269
2270 * gnat_ugn.texi, vms_data.ads: Add the documentation for the new
2271 gnatmetric option for generating the schema file for gnatmetric XML
2272 output. Add corresponding VMS qualifier.
2273
1175f0b6
AC
22742009-06-19 Robert Dewar <dewar@adacore.com>
2275
2276 * g-cgi.adb: Minor reformatting
2277
22782009-06-19 Eric Botcazou <ebotcazou@adacore.com>
2279
2280 * s-intman-solaris.adb (Notify_Exception): Do not discriminate on the
2281 signal code for SIGFPE and raise Program_Error for SIGILL.
2282
2283 * s-osinte-solaris.ads: Remove signal code constants for SIGFPE.
2284
22852009-06-19 Ed Schonberg <schonberg@adacore.com>
2286
2287 * sem_ch8.adb (Nvis_Messages): Do not list an entity declared in a
2288 generic package if there is a visibility candidate that is declared in
2289 a regular package.
2290
4c1a9016
OH
22912009-06-18 Olivier Hainque <hainque@adacore.com>
2292
2293 * system-aix64.ads: New file.
2294 * gcc-interface/Makefile.in (aix LIBGNAT_TARGET_PAIRS): Use the
2295 64bit system.ads for ppc64 multilib variants.
2296
d81b4c61
RD
22972009-06-16 Robert Dewar <dewar@adacore.com>
2298 Olivier Hainque <hainque@adacore.com>
2299
2300 Relax constraints on Machine_Attribute argument types:
2301 * sem_prag.adb (Check_Arg_Is_Static_Expression): Allow for
2302 missing type.
2303 (Analyze_Attribute, case Machine_Attribute): Allow any type for arg 3.
2304 * gcc-interface/decl.c (prepend_attributes): Accept static
2305 expressions of any type as attribute arguments, not only string
2306 literals.
2307 * gnat_rm.texi (pragma Machine_Attribute section): Adjust to reflect
2308 the relaxation of the restriction on the Info argument type.
2309
c172df28
AH
23102009-06-13 Aldy Hernandez <aldyh@redhat.com>
2311
2312 * gcc-interface/utils.c (record_builtin_type): Pass location
2313 argument to build_decl.
2314 (create_type_stub_decl): Same.
2315 (create_type_decl): Same.
2316 (create_var_decl_1): Same.
2317 (create_field_decl): Same.
2318 (create_param_decl): Same.
2319 (create_label_decl): Same.
c172df28
AH
2320 (create_subprog_decl): Same.
2321 * gcc-interface/decl.c (gnat_to_gnu_entity): Same.
2322 * gcc-interface/trans.c (Case_Statement_to_gnu): Pass location
2323 argument to create_artificial_label.
c172df28
AH
2324 (Loop_Statement_to_gnu): Same.
2325 (Subprogram_Body_to_gnu): Same.
2326 (gnat_gimplify_stmt): Same.
2327
53b2323e
RH
23282009-06-11 Richard Henderson <rth@redhat.com>
2329
cd19075f
EB
2330 * gcc-interface/misc.c (gnat_handle_option): Rename OPT_gdwarf_ to
2331 OPT_gdwarfplus.
53b2323e 2332
2995ebee
AC
23332009-06-11 Ed Schonberg <schonberg@adacore.com>
2334
2335 * sem_attr.adb (Resolve_Attribute, case 'access): Add missing
2336 accessibiliy check on access_to_subprogram in the context of an
2337 anonymous access that is not an access parameter.
2338
23392009-06-11 Eric Botcazou <ebotcazou@adacore.com>
2340
2341 * tracebak.c (i386 section): Define IS_BAD_PTR on Solaris.
2342
23432009-06-11 Quentin Ochem <ochem@adacore.com>
2344
2345 * sem_warn.adb, scng.adb, sfn_scan.adb, freeze.adb: Add CODEFIX
2346 comments for message handled by GPS.
2347
23482009-06-11 Matthew Gingell <gingell@adacore.com>
2349
2350 * adaint.c: Use fopen64 instead of fopen on platforms where we know
2351 it's supported.
2352
23532009-06-11 Pascal Obry <obry@adacore.com>
2354
2355 * g-cgi.ads: Fix comment typo.
2356
2357 * g-cgi.adb: Properly decode "+" in CGI parameters as spaces.
2358
c244bf8f
EB
23592009-06-10 Eric Botcazou <ebotcazou@adacore.com>
2360
2361 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Use
2362 a reference to the original type for the type of the field of the
2363 XVS type.
2364 (maybe_pad_type): Likewise.
2365
2366 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Factor
2367 common predicate and remove redundant setting of TYPE_BY_REFERENCE_P.
2368 Pass correctly typed arguments to create_field_decl.
2369 <E_Record_Subtype>: Set BLKmode for tagged and limited types in the
2370 case of contrained discriminants as well. Use the padded base type
2371 in the other case as well. Rename temporary variable. Tweak test.
2372 Factor common access pattern. Set GNU_SIZE only once.
2373
ff346f70
OH
23742009-06-09 Olivier Hainque <hainque@adacore.com>
2375
2376 * gcc-interface/utils2.c (build_call_alloc_dealloc_proc): New
2377 helper for build_call_alloc_dealloc with arguments to be interpreted
2378 identically. Process the case where a GNAT_PROC to call is provided.
2379 (maybe_wrap_malloc): New helper for build_call_alloc_dealloc, to build
2380 and return an allocator for DATA_SIZE bytes aimed at containing a
2381 DATA_TYPE object, using the default __gnat_malloc allocator. Honor
2382 DATA_TYPE alignments greater than what the latter offers.
2383 (maybe_wrap_free): New helper for build_call_alloc_dealloc, to
2384 release a DATA_TYPE object designated by DATA_PTR using the
2385 __gnat_free entry point.
2386 (build_call_alloc_dealloc): Expect object data type instead of naked
2387 alignment constraint. Use the new helpers.
2388 (build_allocator): Remove special processing for the super-aligned
2389 case, now handled by build_call_alloc_dealloc. Pass data
2390 type instead of the former alignment argument, as expected by the new
2391 interface.
2392 * gcc-interface/gigi.h (build_call_alloc_dealloc): Adjust prototype
2393 and comment.
2394 * gcc-interface/trans.c (gnat_to_gnu) <case N_Free_Statement>:
2395 Remove special processing for the super-aligned case, now handled
2396 by build_call_alloc_dealloc. Pass data type instead of the former
2397 alignment argument, as expected by the new interface.
2398
2153915d
AO
23992009-06-08 Alexandre Oliva <aoliva@redhat.com>
2400
2401 * lib-writ.adb (flag_compare_debug): Import.
2402 (Write_ALI): Skip during -fcompare-debug-second.
2403
cdaa0e0b
EB
24042009-06-03 Eric Botcazou <ebotcazou@adacore.com>
2405
2406 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: When
2407 adjusting the discriminant nodes in an extension, use the full view
2408 of the parent subtype if it is of a private kind.
2409
a6a29d0c
EB
24102009-06-03 Eric Botcazou <ebotcazou@adacore.com>
2411
2412 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Add the
2413 _Parent field, if any, to the record before adding the other fields.
2414 <E_Record_Subtype>: Put the _Controller field before the other fields
2415 except for the _Tag or _Parent fields.
2416 (components_to_record): Likewise. Retrieve the _Parent field from the
2417 record type.
2418
8cd28148
EB
24192009-06-03 Eric Botcazou <ebotcazou@adacore.com>
2420
2421 * gcc-interface/decl.c (substitution_list): Rename to build_subst_list,
2422 remove unused parameter and simplify.
2423 (gnat_to_gnu_entity) <E_Record_Type>: Do not set TYPE_FIELDS. Factor
2424 common predicate. Rewrite loop for clarity. Use GNU_TYPE directly
2425 as context for all discriminants. Fix formatting nits.
2426 <E_Record_Subtype>: Add cosmetic 'break'. Test Has_Discriminants
2427 before Discriminant_Constraint. Adjust for above renaming. Do not
2428 set GNU_TYPE more than once.
2429 (elaborate_entity): Test Has_Discriminants on the entity and use
2430 Implementation_Base_Type.
2431 (components_to_record): Rename component_list to gnat_component_list.
2432 Retrieve the _Parent field from the list. Fix nits in comments.
2433 Clarify logic in loop. Pass correct arguments to create_field_decl.
2434
beb7e030
EB
24352009-06-02 Eric Botcazou <ebotcazou@adacore.com>
2436
2437 * gcc-interface/Make-lang.in: Fix formatting.
2438
db868e1e 24392009-06-01 Olivier Hainque <hainque@adacore.com>
53b2323e 2440 Eric Botcazou <ebotcazou@adacore.com>
db868e1e
OH
2441
2442 * gcc-interface/utils.c (convert) <CONSTRUCTOR case>: When converting
2443 to the packable version of the type, clear TREE_STATIC/TREE_CONSTANT
2444 on the result if at least one of the input fields couldn't be output
2445 as a static constant any more.
2446
324c9b02 24472009-06-01 Olivier Hainque <hainque@adacore.com>
53b2323e 2448 Eric Botcazou <ebotcazou@adacore.com>
324c9b02
OH
2449
2450 * gcc-interface/utils2.c (gnat_build_constructor): Factor
18d6353c 2451 out code. Use initializer_constant_valid_for_bitfield_p and
324c9b02
OH
2452 CONSTRUCTOR_BITFIELD_P for bit-fields.
2453
7980bfb8
ILT
24542009-05-26 Ian Lance Taylor <iant@google.com>
2455
2456 * gcc-interface/Makefile.in (COMPILER): Define.
2457 (COMPILER_FLAGS, ALL_COMPILERFLAGS): Define.
2458 (.c.o, cio.o, init.o, initialize.o, targext.o): Use $(COMPILER).
2459 (seh_init.o, tracebak.o): Likewise.
2460 * gcc-interface/Make-lang.in (ada/targext.o): Likewise.
2461 (ada/cio.o, ada/init.o, ada/initialize.o, ada/raise.o): Likewise.
2462 (ada/tracebak.o, ada/cuintp.o, ada/decl.o, ada/misc.o): Likewise.
2463 (ada/targtyps.o, ada/trans.o, ada/utils.o): Likewise.
2464 (ada/utils2.o): Likewise.
2465
6e00e546
OH
24662009-05-24 Olivier Hainque <hainque@adacore.com>
2467
2468 * switch.adb (Is_Internal_GCC_Switch, Switch_Last): Bodies of ...
2469 * switch.ads (Is_Internal_GCC_Switch, Switch_Last): New functions.
2470 Add -auxbase variants to the list of recognized internal switches.
2471 * back_end.adb (Scan_Back_End_Switches): Use the new functions and
2472 adjust comments.
2473 * lib.ads: Make comment on internal GCC switches more general.
2474 * gcc-interface/lang-specs.h (specs for Ada): Pass -auxbase variants
2475 as for C.
2476
22702f93
EB
24772009-05-23 Eric Botcazou <ebotcazou@adacore.com>
2478
2479 * gcc-interface/misc.c (gnat_get_subrange_bounds): Fix thinko.
2480
03049a4e
EB
24812009-05-23 Eric Botcazou <ebotcazou@adacore.com>
2482
2483 * gcc-interface/decl.c (set_rm_size): Bypass the check for packed array
2484 types.
2485
aae8570a
EB
24862009-05-23 Eric Botcazou <ebotcazou@adacore.com>
2487
2488 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not modify the
2489 original type because of the alignment when there is an address clause.
2490
3f6f0eb2
EB
24912009-05-20 Eric Botcazou <ebotcazou@adacore.com>
2492
2493 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: When
2494 discriminants affect the shape of the subtype, retrieve the GCC type
2495 directly from the original field if the GNAT types for the field and
2496 the original field are the same.
2497
84fb43a1
EB
24982009-05-15 Eric Botcazou <ebotcazou@adacore.com>
2499
2500 * gcc-interface/ada-tree.h (TYPE_GCC_MIN_VALUE, TYPE_GCC_MAX_VALUE):
2501 New macros.
2502 (TYPE_RM_VALUES): Likewise.
2503 (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUES.
2504 (SET_TYPE_RM_SIZE): New macro.
2505 (TYPE_RM_MIN_VALUE, TYPE_RM_MAX_VALUE): Likewise.
2506 (SET_TYPE_RM_SIZE, SET_TYPE_RM_MAX_VALUE): Likewise.
2507 (TYPE_MIN_VALUE, TYPE_MAX_VALUE): Redefine.
2508 * gcc-interface/gigi.h (create_range_type): Declare.
2509 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>
2510 Use SET_TYPE_RM_MAX_VALUE to set the upper bound on the UMT type.
2511 <E_Signed_Integer_Subtype>: Build a regular integer type first and
2512 then set the RM bounds. Use SET_TYPE_RM_SIZE to set the RM size.
2513 <E_Floating_Point_Subtype>: Build a regular floating-point type first
2514 and then set the RM bounds.
2515 <E_Array_Type>: Use create_range_type instead of build_range_type.
2516 <E_Array_Subtype>: Build a regular integer type first and then set
2517 the RM bounds for the extra subtype.
2518 <E_String_Literal_Subtype>: Use create_range_type instead of
2519 build_range_type.
2520 <all>: Set the RM bounds for enumeration types and the GCC bounds for
2521 floating-point types.
2522 (set_rm_size): Use SET_TYPE_RM_SIZE to set the RM size.
2523 (make_type_from_size) <INTEGER_TYPE>: Use SET_TYPE_RM_{MIN,MAX}_VALUE
2524 to set the bounds. Use SET_TYPE_RM_SIZE to set the RM size.
2525 (substitute_in_type) <INTEGER_TYPE>: Deal with GCC bounds for domain
2526 types and with RM bounds for subtypes.
2527 * gcc-interface/misc.c (LANG_HOOKS_GET_SUBRANGE_BOUNDS): Define.
2528 (gnat_print_type) <REAL_TYPE>: New case.
2529 <ENUMERAL_TYPE>: Fall through to above case.
2530 (gnat_get_subrange_bounds): New function.
2531 * gcc-interface/trans.c (add_decl_expr): Mark the trees rooted as
2532 TYPE_RM_MIN_VALUE and TYPE_RM_MAX_VALUE, if any.
2533 * gcc-interface/utils.c (gnat_init_decl_processing): Use precision 8
2534 for booleans. Adjust and use SET_TYPE_RM_SIZE to set the RM size.
2535 (create_range_type): New function.
2536 (create_param_decl): Build a regular integer type first and then set
2537 the RM bounds for the extra subtype.
2538 (unchecked_convert): Remove kludge for 'Valid.
2539 * gcc-interface/utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Convert
2540 the index to sizetype instead of TYPE_DOMAIN.
2541
a531043b
EB
25422009-05-14 Eric Botcazou <ebotcazou@adacore.com>
2543
2544 * gcc-interface/decl.c (elaborate_expression_1): Remove GNAT_EXPR
2545 parameter and move check for static expression to...
2546 (elaborate_expression): ...here. Adjust call to above function.
2547 (gnat_to_gnu_entity): Likewise for all calls. Use correct arguments
2548 in calls to elaborate_expression.
2549 (elaborate_entity): Likewise.
2550 (substitution_list): Likewise.
2551 (maybe_variable): Fix formatting.
2552 (substitute_in_type) <REAL_TYPE>: Merge with INTEGER_TYPE case and add
2553 missing guard.
2554 * gcc-interface/trans.c (protect_multiple_eval): Minor cleanup.
2555
59141a28
AC
25562009-05-07 Arnaud Charlet <charlet@adacore.com>
2557
c608b4d2 2558 * gcc-interface/Make-lang.in: Update dependencies.
59141a28 2559
c608b4d2
EB
25602009-05-06 Laurent GUERBY <laurent@guerby.net>
2561
2562 * s-linux.ads, s-linux-alpha.ads, s-linux-hppa.ads, osinte-linux.ads:
2563 Define sa_handler_pos.
2564 * s-osinte-linux.ads: Use it.
2565 * s-linux-mipsel.ads: New.
2566 * system-linux-mips64el.ads: New.
2567 * gcc-interface/Makefile.in: Multilib handling for mipsel-linux and
2568 mips64el-linux.
e84efdce 2569
1f110335
AC
25702009-05-06 Arnaud Charlet <charlet@adacore.com>
2571
2572 * exp_ch5.adb, exp_util.adb, exp_attr.adb, sem_util.adb, sem_res.adb,
2573 targparm.adb, targparm.ads, exp_ch4.adb, exp_ch6.adb, exp_disp.adb,
2574 opt.ads, exp_aggr.adb, exp_intr.adb, sem_disp.adb, exp_ch3.adb
2575 (Tagged_Type_Expansion): New flag.
2576 Replace use of VM_Target related to tagged types expansion by
2577 Tagged_Type_Expansion, since tagged type expansion is not necessarily
2578 linked to VM targets.
2579
e0bf7d65
RD
25802009-05-06 Robert Dewar <dewar@adacore.com>
2581
1f110335
AC
2582 * sem_attr.adb: Add processing for Standard'Compiler_Version
2583
e0bf7d65
RD
2584 * sinput.adb (Expr_Last_Char): Fix some copy-paste errors for paren
2585 skipping.
2586 (Expr_First_Char): Add ??? comment that paren skipping needs work
2587 (Expr_Last_Char): Add ??? comment that paren skipping needs work
2588
2589 * exp_attr.adb: Add processing for Compiler_Version
2590
2591 * sem_attr.adb: New attribute Compiler_Version
2592
2593 * snames.ads-tmpl: Add entries for Compiler_Version attribute
2594
2595 * gnat_rm.texi: Document Compiler_Version attribute
2596
483c78cb
RD
25972009-05-06 Robert Dewar <dewar@adacore.com>
2598
2599 * errout.adb: Minor reformatting
2600
2601 * scng.adb, sem_prag.adb, par-ch4.adb, sem_res.adb, par-ch6.adb,
2602 sem_ch6.adb, par-prag.adb, sem_ch8.adb, sem_warn.adb, par-util.adb,
2603 styleg.adb: Add stylized comments to error messages that are included
2604 in the codefix circuitry of IDE's such as GPS.
2605
4e7a4f6e
AC
26062009-05-06 Sergey Rybin <rybin@adacore.com>
2607
2608 * gnat_ugn.texi: For Misnamed_Identifiers rule all description of the
2609 new form of the rule parameter that allows to specify the suffix for
2610 access-to-access type names.
2611
26122009-05-06 Robert Dewar <dewar@adacore.com>
2613
2614 * sem_warn.adb (Warn_On_Useless_Assignment): Avoid false negative for
2615 out parameter assigned when exception handlers are present.
2616
2617 * sem_ch5.adb (Analyze_Exit_Statement): Kill current value last
2618 assignments on exit.
2619
2620 * par-ch9.adb, sem_aggr.adb, par-endh.adb, sem_res.adb, par-ch6.adb,
2621 sinput-l.adb, par-load.adb, errout.ads, sem_ch4.adb, lib-load.adb,
2622 prj-dect.adb, par-ch12.adb, sem_ch8.adb, par-util.adb, par-ch3.adb,
2623 par-tchk.adb, par-ch5.adb: This patch adds stylized comments to error
2624 messages that are included in the codefix circuitry of IDE's such as
2625 GPS.
2626
2627 * sinput.ads, sinput.adb (Expr_First_Char): New function
53b2323e 2628 (Expr_Last_Char): New function
4e7a4f6e 2629
35117aa8
AC
26302009-05-06 Sergey Rybin <rybin@adacore.com>
2631
2632 * gnat_ugn.texi: Add subsection for Exits_From_Conditional_Loops rule
2633 Add formal definition for extra exit point metric
2634
26352009-05-06 Pascal Obry <obry@adacore.com>
2636
2637 * adaint.c: Support for setting attributes on unicode filename on
2638 Windows.
2639
0c020dde
AC
26402009-05-06 Robert Dewar <dewar@adacore.com>
2641
2642 * sem_warn.adb: Minor reformatting
2643
26442009-05-06 Javier Miranda <miranda@adacore.com>
2645
2646 * sem_prag.adb (Process_Import_Or_Interface): Imported CPP types must
2647 not have discriminants or components with default expressions.
2648 (Analyze_Pragma): For pragma CPP_Class check that imported types
2649 have no discriminants and components have no default expression.
2650
2651 * sem_aggr.adb (Resolve_Aggr_Expr): Add missing check on wrong use of
2652 class-wide types in the expression of a record component association.
2653
26542009-05-06 Sergey Rybin <rybin@adacore.com>
2655
2656 * vms_data.ads: Add qualifier for gnatmetric extra exit points metric
2657
2658 * gnat_ugn.texi: Add description for the new extra exit points metric
2659 (gnatmetric section).
2660
deef4289
AC
26612009-05-06 Robert Dewar <dewar@adacore.com>
2662
2663 * s-fileio.adb: Minor comment update
2664
2665 * sem_ch8.adb: Minor reformatting
2666
2667 * exp_ch3.adb: Update comments.
2668
26692009-05-06 Tristan Gingold <gingold@adacore.com>
2670
2671 * init.c, s-osinte-darwin.ads: Reduce alternate stack size
2672
89522556
AC
26732009-05-06 Arnaud Charlet <charlet@adacore.com>
2674
2675 * gcc-interface/Makefile.in: Update LIBGNAT_TARGET_PAIRS for Xenomai.
2676 Fix missing unit for rtp-smp runtime on both ppc and x86 vxworks
2677
2678 * gcc-interface/Make-lang.in: Update dependencies
2679
a693f55e
AC
26802009-05-06 Ed Schonberg <schonberg@adacore.com>
2681
2682 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Revert previous
2683 change. The context clause of a generic instance declaration must be
2684 preserved until the end of the compilation, because it may have to be
2685 installed/removed repeatedly.
2686 The latest change to sem.adb ensures that the context of both spec and
2687 body of an instance is traversed before the instance itself, making
2688 this patch redundant.
2689
e264efcc
AC
26902009-05-06 Gary Dismukes <dismukes@adacore.com>
2691
2692 * sem_aggr.adb: Fix typo.
2693
26942009-05-06 Thomas Quinot <quinot@adacore.com>
2695
2696 * exp_ch3.adb (Expand_N_Object_Declaration): For a controlled object
2697 declaration, do not adjust if the declaration is to be rewritten into
2698 a renaming.
2699
27002009-05-06 Ed Schonberg <schonberg@adacore.com>
2701
2702 * sem_ch8.adb (Find_Type): Reject the use of a task type in its own
2703 discriminant part.
2704
27052009-05-06 Bob Duff <duff@adacore.com>
2706
2707 * s-fileio.adb (File_IO_Clean_Up_Type): Make this type limited, since
2708 otherwise the compiler would be allowed to optimize away the cleanup
2709 code.
2710
69a0c174
AC
27112009-05-06 Gary Dismukes <dismukes@adacore.com>
2712
2713 * gnat_ugn.texi: Fix typo.
2714
27152009-05-06 Thomas Quinot <quinot@adacore.com>
2716
2717 * g-debuti.adb: Minor reformatting
2718
2719 * exp_attr.adb: Minor reformatting
2720
27212009-05-06 Robert Dewar <dewar@adacore.com>
2722
2723 * sem_aggr.adb: Minor reformatting.
2724
2725 * g-socthi-vms.adb: Minor reformatting
2726
27272009-05-06 Bob Duff <duff@adacore.com>
2728
2729 * g-table.ads, g-table.adb, g-dyntab.ads, g-dyntab.adb:
2730 (Append_All): Add Append_All to g-table and g-dyntab, similar to table.
2731
4e0d20ca
BD
27322009-05-06 Bob Duff <duff@adacore.com>
2733
2734 * gnat_ugn.texi, gnat_rm.texi: Add missing documentation for warnings
2735 flags.
2736
11795185
JM
27372009-05-06 Javier Miranda <miranda@adacore.com>
2738
2739 * sem_aggr.adb (Valid_Ancestor_Type): Add support for C++ constructors.
2740 (Resolve_Extension_Aggregate): Do not reject C++ constructors in
2741 extension aggregates.
2742 (Resolve_Record_Aggregate): Add support for C++ constructors in
2743 extension aggregates.
2744
2745 * exp_aggr.adb (Build_Record_Aggr_Code): Add support for C++
2746 constructors in extension aggregates.
2747
426d2717
AC
27482009-05-06 Robert Dewar <dewar@adacore.com>
2749
2750 * freeze.adb (Freeze_Record_Type): Improve error msg for bad size
2751 clause.
2752
27532009-05-06 Thomas Quinot <quinot@adacore.com>
2754
2755 * g-socthi-vms.adb (C_Recvmsg, C_Sendmsg): Convert Msg to appropriate
2756 packed type, since on OpenVMS, struct msghdr is packed.
2757
27582009-05-06 Ed Schonberg <schonberg@adacore.com>
2759
2760 * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
2761 call returning an unconstrained composite value, create the proper
2762 subtype for it, as is done for object dclarations with unconstrained
2763 nominal subtypes. Perform this transformation regarless of whether
2764 call comes from source.
2765
8dc10d38
AC
27662009-05-06 Robert Dewar <dewar@adacore.com>
2767
2768 * freeze.adb (Freeze_Record_Type): Implement Implicit_Packing for
2769 records
2770
2771 * gnat_rm.texi:
2772 Add documentation for pragma Implicit_Packing applied to record
2773 types.
2774
27752009-05-06 Ed Schonberg <schonberg@adacore.com>
2776
2777 * sem.adb (Walk_Library_Items): Place all with_clauses of an
2778 instantiation on the spec, because late instance bodies may generate
2779 with_clauses for the instance body but are inserted in the instance
2780 spec.
2781
3249690d
AC
27822009-05-06 Emmanuel Briot <briot@adacore.com>
2783
2784 * prj-nmsc.adb (Locate_Directory): Remove unused parameters, and add
2785 support for returning the directory even if it doesn't exist. This is
2786 used for the object directory, since we are always setting it to a
2787 non-null value, and we should set it to an absolute name rather than a
2788 relative name for the sake of external tools that might depend on it.
2789 (Check_Library_Attributes): When Project.Library_Dir is known, check
2790 that the directory exists.
2791
27922009-05-06 Ed Schonberg <schonberg@adacore.com>
2793
2794 * sem_attr.adb (Check_Dereference): If the prefix of an attribute
2795 reference is an implicit dereference, do not freeze the designated type
2796 if within a default expression or when preanalyzing a pre/postcondtion.
2797
fd366a46
AC
27982009-05-06 Ed Schonberg <schonberg@adacore.com>
2799
2800 * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
2801 call returning an unconstrained composite value, create the proper
2802 subtype for it, as is done for object dclarations with unconstrained
2803 nominal subtypes
2804
28052009-05-06 Robert Dewar <dewar@adacore.com>
2806
2807 * sem_ch13.adb (Check_Constant_Address_Clause): Minor error message
2808 improvements
2809
2810 * freeze.adb: Minor reformatting
2811
7dd1ab84
AC
28122009-05-06 Thomas Quinot <quinot@adacore.com>
2813
2814 * sem_ch3.adb (Access_Type_Declaration): An access type whose
2815 designated type is a limited view from a limited with clause (flagged
2816 From_With_Type) is not itself such a limited view.
2817
28182009-05-06 Emmanuel Briot <briot@adacore.com>
2819
2820 * prj-nmsc.adb: Remove unused variable.
2821
2822 * clean.adb, gnatcmd.adb, makeutl.ads, prj-pars.adb, prj-pars.ads,
2823 prj-proc.ads, prj.ads, switch-m.adb (Subdirs_Option): Moved to
2824 makeutl.ads, since not all users of prj.ads need this.
2825
28541488
JM
28262009-05-06 Javier Miranda <miranda@adacore.com>
2827
2828 * exp_aggr.adb (Build_Record_Aggr_Code): Add implicit call to the C++
2829 constructor in case of aggregates whose type is a CPP_Class type.
2830
55c078ac
AC
28312009-05-06 Robert Dewar <dewar@adacore.com>
2832
2833 * sem_ch13.adb: Minor comment additions
2834
2835 * osint.adb: Minor reformatting
2836
28372009-05-06 Pascal Obry <obry@adacore.com>
2838
2839 * initialize.c: On Windows, keep full pathname to expanded command
2840 line patterns.
2841
6bde3eb5
AC
28422009-05-06 Ed Schonberg <schonberg@adacore.com>
2843
2844 * sem_aggr.adb (Resolve_Record_Aggregate): If a defaulted component of
2845 an aggregate with box default is of a discriminated private type, do
2846 not build a subaggregate for it.
2847 A proper call to the initialization procedure is generated for it.
2848
28492009-05-06 Thomas Quinot <quinot@adacore.com>
2850
2851 * rtsfind.adb, rtsfind.ads, exp_dist.adb, exp_dist.ads
2852 (Exp_Dist.Build_TC_Call, Build_From_Any_Call, Build_To_Any_Call):
2853 Use PolyORB strings to represent Ada.Strings.Unbounded_String value;
2854 use standard array code for Standard.String.
2855 (Exp_Dist): Bump PolyORB s-parint API version to 3.
2856 (Rtsfind): New entities TA_Std_String, Unbounded_String.
2857
28582009-05-06 Robert Dewar <dewar@adacore.com>
2859
2860 * g-comlin.ads: Minor reformatting
2861
2862 * xoscons.adb: Minor reformatting
2863
3743d5bd
AC
28642009-05-06 Gary Dismukes <dismukes@adacore.com>
2865
2866 * sem_aggr.adb (Resolve_Record_Aggregate): In step 5, get the
2867 Underlying_Type before retrieving the type definition for gathering
2868 components, to account for the case where the type is private.
2869
28702009-05-06 Tristan Gingold <gingold@adacore.com>
2871
2872 * g-comlin.ads: Fix minor typos (Getopt instead of Get_Opt).
2873
28742009-05-06 Thomas Quinot <quinot@adacore.com>
2875
2876 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
2877 g-socthi-vxworks.ads, g-socthi-mingw.adb g-socthi-mingw.ads,
2878 g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb
2879 (GNAT.Sockets.Thin.C_Sendmsg, GNAT.Sockets.Thin.C_Recvmsg,
2880 Windows versions): Fix incorrect base
2881 address of Iovec (it's Msg_Iov, not Msg_Iov'Address).
2882 (GNAT.Sockets.Thin.C_Sendto, GNAT.Sockets.Thin.C_Recvfrom): Use a
2883 System.Address for the To parameter instead of a Sockaddr_In_Access, to
2884 achieve independance from AF_INET family, and also to allow this
2885 parameter to be retrieved from a Msghdr for the Windows case where
2886 these routines are used to implement C_Sendmsg and C_Recvmsg.
2887
28882009-05-06 Bob Duff <duff@adacore.com>
2889
2890 * g-expect.adb, g-expect.ads: Minor reformatting
2891
2892 * sdefault.ads: Minor comment fix
2893
2894 * g-expect-vms.adb: Minor reformatting
2895
2896 * table.ads, table.adb (Append_All): New convenience procedure for
2897 appending a whole array.
2898
2899 * comperr.adb (Compiler_Abort): Mention the -gnatd.n switch in the bug
2900 box message. Call Osint.Dump_Source_File_Names to print out the file
2901 list, instead of rummaging around in various data structures.
2902
2903 * debug.adb: New switch -gnatd.n, to print source file names as they
2904 are read.
2905
2906 * alloc.ads: Add parameters for Osint.File_Name_Chars.
2907
2908 * osint.ads, osint.adb (Dump_Source_File_Names): New procedure to print
2909 out source file names during a "bug box".
2910 (Include_Dir_Default_Prefix): Use memo-izing to avoid repeated new/free.
2911 (Read_Source_File): Print out the file name, if requested via -gnatd.n.
2912 If it's not part of the runtimes, store it for later printing by
2913 Dump_Source_File_Names.
2914
29152009-05-06 Javier Miranda <miranda@adacore.com>
2916
2917 * gnat_rm.texi (CPP_Constructor): Avoid duplication of the
2918 documentation and add reference to the GNAT user guide for further
2919 details.
2920
29212009-05-06 Javier Miranda <miranda@adacore.com>
2922
2923 * gnat_ugn.texi: Complete documentation for CPP_Constructor and remove
2924 also wrong examples that use extension aggregates.
2925
29262009-05-06 Albert Lee <lee@adacore.com>
2927
2928 * s-oscons-tmplt.c (System.OS_Constants): Do not use special definition
2929 of Msg_Iovlen_T for VMS.
2930
ffef1219
LG
29312009-05-04 Laurent GUERBY <laurent@guerby.net>
2932
2933 PR ada/38874
2934 * make.adb (Scan_Make_Arg): Pass --param= to compiler and linker.
2935
70b70ce8
AC
29362009-04-29 Ed Schonberg <schonberg@adacore.com>
2937
2938 * sem_ch8.adb (Analyze_Subprogram_Renaming): Improve error message on
2939 box-defaulted operator in an instantiation, when the type of the
2940 operands is not directly visible.
2941
29422009-04-29 Gary Dismukes <dismukes@adacore.com>
2943
2944 * sem_aggr.adb (Valid_Limited_Ancestor): Undo previous change.
2945 (Resolve_Extension_Aggregate): Call Check_Parameterless_Call after the
2946 analysis of the ancestor part. Remove prohibition against limited
2947 interpretations of the ancestor expression in the case of Ada 2005.
2948 Revise error message in overloaded case, adding a message to cover
2949 the Ada 2005 case.
2950
29512009-04-29 Thomas Quinot <quinot@adacore.com>
2952
2953 * xoscons.adb: Minor reformatting
2954
29552009-04-29 Bob Duff <duff@adacore.com>
2956
2957 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not ignore
2958 attribute_definition_clauses for the following attributes when the
2959 -gnatI switch is used: External_Tag, Input, Output, Read, Storage_Pool,
2960 Storage_Size, Write. Otherwise, we get spurious errors (for example,
2961 missing Read attribute on remote types).
2962
2963 * gnat_ugn.texi: Document the change, and add a stern warning.
2964
29652009-04-29 Ed Schonberg <schonberg@adacore.com>
2966
2967 * sem_attr.adb (Check_Local_Access): Indicate that value tracing is
2968 disabled not just for the current scope, but for the innermost dynamic
2969 scope as well.
2970
4cc51f5e
AC
29712009-04-29 Arnaud Charlet <charlet@adacore.com>
2972
2973 * gcc-interface/Make-lang.in: Update dependencies
2974
107b023c
AC
29752009-04-29 Vincent Celier <celier@adacore.com>
2976
2977 * prj-part.adb: Minor comment update
2978
29792009-04-29 Ed Schonberg <schonberg@adacore.com>
2980
2981 * sem_aggr.adb (Resolve_Record_Aggregate): handle properly
2982 box-initialized records with discriminated subcomponents that are
2983 constrained by discriminants of enclosing components. New subsidiary
2984 procedures Add_Discriminant_Values, Propagate_Discriminants.
2985
29862009-04-29 Arnaud Charlet <charlet@adacore.com>
2987
2988 * g-socket.adb: Code clean up.
2989
1933c497
AC
29902009-04-29 Gary Dismukes <dismukes@adacore.com>
2991
2992 * sem_aggr.adb (Valid_Limited_Ancestor): Add test for the name of a
2993 function entity, to cover the case of a parameterless function call
2994 that has not been resolved.
2995
29962009-04-29 Robert Dewar <dewar@adacore.com>
2997
2998 * err_vars.ads, prj-part.adb, scans.ads, exp_tss.adb: Minor
2999 reformatting and comment updates.
3000
51ec70b8
AC
30012009-04-29 Arnaud Charlet <charlet@adacore.com>
3002
3003 * gnat_ugn.texi: Update some documentation about interfacing with C++
3004 Mention -fkeep-inline-functions.
3005
3006 * gnat_ugn.texi: Minor edits
3007
30082009-04-29 Ed Schonberg <schonberg@adacore.com>
3009
3010 * sem_aggr.adb (Resolve_Record_Aggregate): When building an aggregate
3011 for a defaulted component of an enclosing aggregate, inherit the type
3012 from the component declaration of the enclosing type.
3013
30142009-04-29 Albert Lee <lee@adacore.com>
3015
3016 * g-socthi-vms.ads, g-socthi-vxworks.ads, s-oscons-tmplt.c,
3017 g-socthi-mingw.ads, g-socthi.ads, g-socket.adb, g-sothco.ads
3018 (System.OS_Constants): New type Msg_Iovlen_T which follows whether the
3019 msg_iovlen field in struct msghdr is 32 or 64 bits wide.
3020 Relocate the Msghdr record type from GNAT.Sockets.Thin to
3021 GNAT.Sockets.Common, and use System.OS_Constants.Msg_Iovlen_T as the
3022 type for the Msg_Iovlen field.
3023
9e895ab5
AC
30242009-04-29 Vincent Celier <celier@adacore.com>
3025
3026 * sinput-l.adb (Load_File): When preprocessing, set temporarily the
3027 Source_File_Index_Table entries for the source, to avoid crash when
3028 reporting an error.
3029
3030 * gnatcmd.adb (Test_If_Relative_Path): Use
3031 Makeutl.Test_If_Relative_Path.
3032
3033 * makeutl.adb:(Test_If_Relative_Path): Process switches --RTS= only if
3034 Including_RTS is True.
3035
3036 * makeutl.ads (Test_If_Relative_Path): New Boolean parameter
3037 Including_RTS defaulted to False.
3038
3039 * sinput.ads, scans.ads, err_vars.ads: Initialize some variables with
3040 a default value.
3041
30422009-04-29 Javier Miranda <miranda@adacore.com>
3043
3044 * gnat_ugn.texi: Adding documentation for non-default C++ constructors.
3045
236fecbf
JM
30462009-04-29 Javier Miranda <miranda@adacore.com>
3047
3048 * sem_ch3.adb (Analyze_Object_Declaration): Disable error message
3049 associated with dyamically tagged expressions if the expression
3050 initializing a tagged type corresponds with a non default CPP
3051 constructor.
3052 (OK_For_Limited_Init): CPP constructor calls are OK for initialization
3053 of limited type objects.
3054
3055 * sem_ch5.adb (Analyze_Assignment): Improve the error message reported
3056 when a CPP constructor is called in an assignment. Disable also the
3057 error message associated with dyamically tagged expressions if the
3058 exporession initializing a tagged type corresponds with a non default
3059 CPP constructor.
3060
3061 * sem_prag.adb (Analyze_Pragma): Remove code disabling the use of
3062 non-default C++ constructors.
3063
3064 * sem_util.ads, sem_util.adb (Is_CPP_Constructor_Call): New subprogram.
3065
3066 * exp_tss.ads, exp_tss.adb (Base_Init_Proc): Add support for
3067 non-default constructors.
3068 (Init_Proc): Add support for non-default constructors.
3069
3070 * exp_disp.adb (Set_Default_Constructor): Removed.
3071 (Set_CPP_Constructors): Code based in removed Set_Default_Constructor
3072 but extending its functionality to handle non-default constructors.
3073
3074 * exp_aggr.adb (Build_Record_Aggr_Code): Add support for non-default
3075 constructors. Minor code cleanup removing unrequired label and goto
3076 statement.
3077
3078 * exp_ch3.adb (Build_Initialization_Call): Add support for non-default
3079 constructors.
3080 (Build_Init_Statements): Add support for non-default constructors.
3081 (Expand_N_Object_Declaration): Add support for non-default constructors.
3082 (Freeze_Record_Type): Replace call to Set_Default_Constructor by call
3083 to Set_CPP_Constructors.
3084
3085 * exp_ch5.adb (Expand_N_Assignment_Statement): Add support for
3086 non-default constructors.
3087 Required to handle its use in build-in-place statements.
3088
3089 * gnat_rm.texi (CPP_Constructor): Document new extended use of this
3090 pragma for non-default C++ constructors and the new compiler support
3091 that allows the use of these constructors in record components, limited
3092 aggregates, and extended return statements.
3093
0ec21a5b
AC
30942009-04-29 Vincent Celier <celier@adacore.com>
3095
3096 * prj-part.adb (Parse_Single_Project): Do not attempt to find a
3097 project extending an abstract project.
3098
30992009-04-29 Eric Botcazou <ebotcazou@adacore.com>
3100
3101 * targparm.ads: Fix oversight.
3102
96b20738
ES
31032009-04-29 Ed Schonberg <schonberg@adacore.com>
3104
3105 * lib-xref.adb (Output_Overridden_Op): Follow several levels of
3106 derivation when necessary, to find the user-subprogram that is actally
3107 being overridden.
3108
3b4ebfc3
RD
31092009-04-29 Robert Dewar <dewar@adacore.com>
3110
3111 * sem_util.adb (May_Be_Lvalue): Fix cases involving indexed/selected
3112 components
3113
eb9cb0fc
ES
31142009-04-29 Ed Schonberg <schonberg@adacore.com>
3115
3116 * exp_ch9.ads, exp_ch9.adb (Build_Wrapper_Spec): Use source line of
3117 primitive operation, rather than source line of synchronized type, when
3118 building the wrapper for a primitive operation that overrides an
3119 operation inherited from a progenitor, to improve the error message on
3120 duplicate declarations.
3121
3122 * sem_ch3.adb (Process_Full_View): Use new signature of
3123 Build_Wrapper_Spec.
3124
7f7d37cb
AC
31252009-04-29 Robert Dewar <dewar@adacore.com>
3126
3127 * prj-nmsc.ads: Minor reformatting
3128
31292009-04-29 Eric Botcazou <ebotcazou@adacore.com>
3130
3131 * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of the
3132 expression on the existing parent If statement.
3133
3c638456
RD
31342009-04-29 Robert Dewar <dewar@adacore.com>
3135
3136 * prj-proc.adb, prj.ads: Minor reformatting
3137
fb1949a0
EB
31382009-04-29 Eric Botcazou <ebotcazou@adacore.com>
3139
3140 * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of an
3141 existing parent If statement on the newly created one.
3142
bd0a4cab
EB
31432009-04-29 Emmanuel Briot <briot@adacore.com>
3144
3145 * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb,
3146 prj-part.ads, prj.adb, prj.ads, clean.adb, prj-dect.adb, prj-dect.ads,
3147 prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-makr.adb
3148 (Set_In_Configuration, In_Configuration): Removed.
3149 Replaced by an extra parameter Is_Config_File in several parameter to
3150 avoid global variables to store the state of the parser.
3151
9af094a1
ES
31522009-04-29 Ed Schonberg <schonberg@adacore.com>
3153
3154 * sinfo.ads, sinfo.adb: New attribute Next_Implicit_With, to chain
3155 with_clauses generated for the same unit through rtsfind, and that
3156 appear in the context of different units.
3157
3158 * rtsfind.adb: New attribute First_Implicit_With, component of the
3159 Unit_Record that stores information about a unit loaded through rtsfind.
3160
ac72c9c5
AC
31612009-04-29 Gary Dismukes <dismukes@adacore.com>
3162
3163 * exp_ch3.adb (Stream_Operation_OK): Return True for limited interfaces
3164 (other conditions permitting), so that abstract stream subprograms will
3165 be declared for them.
3166
31672009-04-29 Bob Duff <duff@adacore.com>
3168
3169 * g-expect.adb (Expect_Internal): Fix check for overfull buffer.
3170
3171 * g-expect.ads: Minor comment fixes.
3172
31732009-04-29 Ed Schonberg <schonberg@adacore.com>
3174
3175 * freeze.adb, lib-xref.adb (Check_Dispatching_Operation): if the
3176 dispatching operation is a body without previous spec, update the list
3177 of primitive operations to ensure that cross-reference information is
3178 up-to-date.
3179
31802009-04-29 Albert Lee <lee@adacore.com>
3181
3182 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
3183 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
3184 g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads
3185 (GNAT.Sockets.Thin.C_Readv,
3186 GNAT.Sockets.Thin.C_Writev): Remove unused subprograms.
3187 (GNAT.Sockets.Thin.C_Recvmsg,
3188 GNAT.Sockets.Thin.C_Sendmsg): New bindings to call recvmsg(2) and
3189 sendmsg(2).
3190 (GNAT.Sockets.Receive_Vector, GNAT.Sockets.Send_Vector): Use
3191 C_Recvmsg/C_Sendmsg rather than Readv/C_Writev.
3192
4fc26524
AC
31932009-04-29 Ed Schonberg <schonberg@adacore.com>
3194
3195 * sem_disp.adb (Check_Dispatching_Operation): if the dispatching
3196 operation is a body without previous spec, update the list of
3197 primitive operations to ensure that cross-reference information is
3198 up-to-date.
3199
3200 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): When creating a
3201 new compilation unit node for the instance declaration, keep the
3202 context items of the original unit on it, so that the context of the
3203 instance body only holds the context inherited from the generic body.
3204
32052009-04-29 Bob Duff <duff@adacore.com>
3206
3207 * sem_res.adb: Minor comment fix.
3208
7f4c1903
AC
32092009-04-29 Thomas Quinot <quinot@adacore.com>
3210
3211 * sem_elim.adb: Minor reformatting
3212
32132009-04-29 Ed Schonberg <schonberg@adacore.com>
3214
3215 * exp_aggr.adb (Convert_To_Positional): if the current unit is a
3216 predefined unit, allow arbitrary number of components in static
3217 aggregate, to ensure that the same level of constant folding applies
3218 for Ada 95 and Ada 05 versions of the file.
3219
33374829
AC
32202009-04-29 Ed Schonberg <schonberg@adacore.com>
3221
3222 * sem_elim.adb (Check_Eliminated): Handle new improved eliminate
3223 information: no need for full scope check.
3224 (Eliminate_Error): Do not emit error in a generic context.
3225
32262009-04-29 Ed Falis <falis@adacore.com>
3227
3228 * adaint.c (__gnat_rmdir): return error code if VTHREADS is defined.
3229 VxWorks 653 POS does not support rmdir.
3230
32312009-04-29 Matteo Bordin <bordin@adacore.com>
3232
3233 * s-stausa.adb, s-stausa.ads: Get_Usage_Range: changing the way
3234 results are printed.
3235
91c2cbdb
AC
32362009-04-29 Arnaud Charlet <charlet@adacore.com>
3237
3238 * s-taskin.adb (Initialize): Remove pragma Warnings Off and remove
3239 unused assignment.
3240
32412009-04-29 Thomas Quinot <quinot@adacore.com>
3242
3243 * make.adb: Minor reformatting.
3244 Minor code reorganization throughout.
3245
32462009-04-29 Matteo Bordin <bordin@adacore.com>
3247
3248 * s-stausa.ads: Changed visibility of type Task_Result: moved to
3249 public part to give application visibility over it.
3250 This is for future improvement and to build a public API on top of it.
3251 Changed record components name of type Task_Result to reflect the new
3252 way of reporting.
3253
3254 * s-stausa.adb: Actual_Size_Str changed to reflect the new way of
3255 reporting Stack usage.
3256
3257 * gnat_ugn.texi: Update doc of stack usage report.
3258
3259 * g-tastus.ads, s-stusta.ads, s-stusta.adb: New files.
3260
3261 * Makefile.rtl: Add new run-time files.
3262
6d47b1e3
PO
32632009-04-29 Pascal Obry <obry@adacore.com>
3264
3265 * initialize.c: Do not expand quoted arguments.
3266
d45871da
EB
32672009-04-29 Emmanuel Briot <briot@adacore.com>
3268
3269 * prj-ext.adb, prj.adb, prj.ads: Fix memory leaks.
3270
3271 * clean.adb (Ultimate_Extension_Of): removed, since duplicate of
3272 Prj.Ultimate_Extending_Project_Of
3273
4f87ded3
ES
32742009-04-29 Ed Schonberg <schonberg@adacore.com>
3275
3276 * exp_ch7.adb (Build_Final_List): If the designated type is a Taft
3277 Amendment type, add the with_clause for Finalization.List_Controller
3278 only if the current context is a package body.
3279
349ff68f
AC
32802009-04-29 Thomas Quinot <quinot@adacore.com>
3281
3282 * sem_ch12.adb: Minor reformatting
3283
3284 * sem_aggr.adb: Minor reformatting
3285
3286 * sem_ch6.adb, sem_cat.ads: Minor reformatting
3287
3288 * sem_ch10.adb, gnat1drv.adb, prj-nmsc.adb: Minor reformatting
3289
32902009-04-29 Quentin Ochem <ochem@adacore.com>
3291
3292 * prj.ads (Source_Id): Now general pointer type.
3293
d81b4bfe
TQ
32942009-04-29 Thomas Quinot <quinot@adacore.com>
3295
3296 * exp_ch7.adb, rtsfind.adb: Minor reformatting
3297
3298 * sem_res.adb: Minor reformatting
3299
4342eda9
TQ
33002009-04-29 Thomas Quinot <quinot@adacore.com>
3301
3302 * sem_res.adb (Static_Concatenation): An N_Op_Concat with static
3303 operands is static only if it is a predefined concatenation operator.
3304
3305 * sem_util.adb: Minor reformatting
3306
3307 * sem_ch12.adb (Save_References): When propagating semantic information
3308 from generic copy back to generic template, for the case of an
3309 identifier that has been rewritten to an explicit dereference whose
3310 prefix is either an object name or a parameterless funcion call
3311 denoting a global object or function, properly capture the denoted
3312 global entity: perform the corresponding rewriting in the template,
3313 and point the rewritten identifier to the correct global entity (not
3314 to the associated identifier in the generic copy).
3315
0b8074ed
AC
33162009-04-29 Robert Dewar <dewar@adacore.com>
3317
3318 * rtsfind.adb, prj-env.adb: Minor reformatting
3319 Minor code reorganization
3320
33212009-04-29 Emmanuel Briot <briot@adacore.com>
3322
3323 * make.adb: Fix comment
3324
3325 * prj.adb (Ultimate_Extending_Project_Of): Fix handling when no project
3326 is given as argument, as might happen in gnatmake.
3327
8f983e64
ES
33282009-04-29 Ed Schonberg <schonberg@adacore.com>
3329
3330 * sem_ch3.adb (Check_Abstract_Overriding): Improve error message when
3331 an abstract operation of a progenitor is not properly overridden by an
3332 operation of a derived synchronized type.
3333
132410cb
RD
33342009-04-29 Robert Dewar <dewar@adacore.com>
3335
3336 * mlib-prj.adb, mlib-tgt.adb, mlib-tgt.ads, prj-nmsc.adb,
3337 prj-proc.adb: Minor reformatting
3338 Minor code reorganization
3339
66713d62
AC
33402009-04-29 Bob Duff <duff@adacore.com>
3341
3342 * exp_ch7.adb (Build_Final_List): For an access type that designates a
3343 Taft Amendment type, if the access type needs finalization, make sure
3344 the implicit with clause for List_Controller occurs on the package spec.
3345
3346 * rtsfind.adb (Text_IO_Kludge): Fine tune the creation of implicit
3347 with's created for the pseudo-children of Text_IO and friends. In
3348 particular, avoid cycles, such as Ada.Wide_Text_IO.Integer_IO and
3349 Ada.Text_IO.Integer_IO both with-ing each other.
3350
3351 * sem.adb (Walk_Library_Items): Suppress assertion failure in certain
3352 oddball cases when pragma Extend_System is used.
3353
3354 * sem_ch12.adb (Get_Associated_Node): Prevent direct 'with' cycles in
3355 the case where a package spec instantiates a generic whose body with's
3356 this package, so Walk_Library_Items won't complain about cyclic with's.
3357
33582009-04-29 Emmanuel Briot <briot@adacore.com>
3359
3360 * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads,
3361 prj-pp.adb, prj-pp.ads, makeutl.adb, clean.adb, prj-nmsc.adb,
3362 mlib-tgt.adb, mlib-tgt.ads, prj-util.adb, prj-env.adb, prj-env.ads
3363 (Project_Id): now a real pointer to Project_Data, instead of an index
3364 into the Projects_Table. This simplifies the API significantly, avoiding
3365 extra lookups in this table and the need to pass the Project_Tree_Ref
3366 parameter in several cases
3367
059caa3e
NS
33682009-04-29 Nicolas Setton <setton@adacore.com>
3369
3370 * gcc-interface/Makefile.in: Produce .dSYM files for shared libs on
3371 darwin.
3372
19440588
EB
33732009-04-25 Eric Botcazou <ebotcazou@adacore.com>
3374
3375 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Put
3376 back kludge.
3377
b178461a
RD
33782009-04-24 Robert Dewar <dewar@adacore.com>
3379
3380 * mlib-prj.adb, prj-env.adb, prj-nmsc.adb, prj-proc.adb, make.adb,
3381 clean.adb: Minor reformatting.
3382 Minor code reorganization and message improvement.
3383
e1c9f239
EB
33842009-04-24 Emmanuel Briot <briot@adacore.com>
3385
3386 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-nmsc.ads
3387 (Alternate_Languages): now implemented as a malloc-ed list rather
3388 than through a table.
3389
c72a85f2
TQ
33902009-04-24 Thomas Quinot <quinot@adacore.com>
3391
3392 * sem_res.adb (Static_Concatenation): Simplify predicate to make it
3393 accurately handle cases such as "lit" & "lit" and
3394 "lit" & static_string_constant
3395
3563739b
AC
33962009-04-24 Emmanuel Briot <briot@adacore.com>
3397
3398 * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
3399 prj-nmsc.adb, prj-env.adb (Project_List_Table, Project_Element):
3400 removed. Lists of projects are now implemented via standard malloc
3401 rather than through the table.
3402
34032009-04-24 Thomas Quinot <quinot@adacore.com>
3404
3405 * sem_ch12.adb: Minor reformatting
3406
3407 * g-trasym.adb: Minor reformatting
3408
3409 * exp_ch6.adb: Minor reformatting
3410
34112009-04-24 Robert Dewar <dewar@adacore.com>
3412
3413 * layout.adb (Layout_Type): For packed array type, copy unset
3414 size/alignment fields from the referenced Packed_Array_Type.
3415
34162009-04-24 Bob Duff <duff@adacore.com>
3417
3418 * lib-load.adb (Make_Instance_Unit): Revert previous change, no
3419 longer needed after sem_ch12 changes.
3420
3421 * sem.adb (Walk_Library_Items): Include with's in some debugging
3422 printouts.
3423
757240b3
AC
34242009-04-24 Emmanuel Briot <briot@adacore.com>
3425
3426 * prj.ads, prj-nmsc.adb (Unit_Project): removed, since in fact we were
3427 only ever using the Project field.
3428
34292009-04-24 Ed Schonberg <schonberg@adacore.com>
3430
3431 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Do not set
3432 Body_Required on the generated compilation node. The new node is linked
3433 to its body, but both share the same file, so we do not set this flag
3434 on the new unit so as not to create a spurious dependency on a
3435 non-existent body in the ali file for the instance.
3436
34372009-04-24 Robert Dewar <dewar@adacore.com>
3438
3439 * make.adb: Minor reformatting
3440
aca53298
AC
34412009-04-24 Emmanuel Briot <briot@adacore.com>
3442
3443 * prj.adb, prj.ads, prj-nmsc.adb (Check_File, Record_Ada_Source,
3444 Add_Source): merge some code between those. In particular change where
3445 file normalization is done to avoid a few extra calls to
3446 Canonicalize_File_Name. This also removes the need for passing
3447 Current_Dir in a number of subprograms.
3448
34492009-04-24 Bob Duff <duff@adacore.com>
3450
3451 * lib-load.adb (Make_Instance_Unit): In the case where In_Main is
3452 False, assign the correct unit to the Cunit field of the new table
3453 entry. We want the spec unit, not the body unit.
3454
3455 * rtsfind.adb (Make_Unit_Name, Maybe_Add_With): Simplify calling
3456 interface for these.
3457 (Maybe_Add_With): Check whether we're trying to a with on the current
3458 unit, and avoid creating such directly self-referential with clauses.
3459 (Text_IO_Kludge): Add implicit with's for the generic pseudo-children of
3460 [[Wide_]Wide_]Text_IO. These are needed for Walk_Library_Items,
3461 and matches existing comments in the spec.
3462
3463 * sem.adb (Walk_Library_Items): Add various special cases to make the
3464 assertions pass.
3465
3466 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Use Body_Cunit
3467 instead of Parent (N), for uniformity.
3468
6db828c3
AC
34692009-04-24 Robert Dewar <dewar@adacore.com>
3470
3471 * errout.ads: Minor reformatting
3472
34732009-04-24 Emmanuel Briot <briot@adacore.com>
3474
3475 * gnat_ugn.texi (Library Projects): add documentation on gnatmake's
3476 behavior when the project includes sources from multiple languages
3477
34782009-04-24 Vincent Celier <celier@adacore.com>
3479
3480 * prj.adb (Has_Foreign_Sources): Returns True in Ada_Only mode if there
3481 is a language other than Ada declared.
3482
3483 * makeutl.adb (Linker_Options_Switches): Call For_All_Projects with
3484 Imported_First set to True.
3485
a7a3cf5c
AC
34862009-04-24 Ed Schonberg <schonberg@adacore.com>
3487
3488 * sem_res.adb: additional optimization to inhibit creation of
3489 redundant transient scopes.
3490
34912009-04-24 Bob Duff <duff@adacore.com>
3492
3493 * rtsfind.ads: Minor comment fix
3494
34952009-04-24 Emmanuel Briot <briot@adacore.com>
3496
3497 * prj-proc.adb, prj-nmsc.adb (Find_Ada_Sources,
3498 Get_Path_Name_And_Record_Ada_Sources): merged, since these were
3499 basically doing the same work (for explicit or implicit sources).
3500 (Find_Explicit_Sources): renamed to Find_Sources to better reflect its
3501 role. Rewritten to share some code (testing that all explicit sources
3502 have been found) between ada_only and multi_language modes.
3503
35042009-04-24 Jerome Lambourg <lambourg@adacore.com>
3505
3506 * sem_prag.adb (Check_Form_Of_Interface_Name): Allow space in Ext_Name
3507 for CLI imported types.
3508 (Analyze_Pragma): Allow CIL or Java imported functions returning
3509 access-to-subprogram types.
3510
2324b3fd
EB
35112009-04-24 Emmanuel Briot <briot@adacore.com>
3512
3513 * make.adb, prj.adb, prj.ads, makeutl.adb, makeutl.ads:
3514 (Project_Data.Dir_Path): field removed, since it can be computed
3515 directly from .Directory, and is needed only once when processing the
3516 project is buildgpr.adb or make.adb
3517
8eaf1723
RD
35182009-04-24 Robert Dewar <dewar@adacore.com>
3519
3520 * prj-env.adb, prj-proc.adb, prj.adb, prj.ads,
3521 rtsfind.adb: Minor reformatting.
3522 Minor code reorganization
3523
04f33e7b
AC
35242009-04-24 Arnaud Charlet <charlet@adacore.com>
3525
3526 * mlib-prj.adb: Use friendlier english identifier.
3527
3528 * gnatcmd.adb, make.adb: Use better english identifiers.
3529
35302009-04-24 Robert Dewar <dewar@adacore.com>
3531
3532 * clean.adb: Minor reformatting
3533
d1f453b7
RD
35342009-04-24 Robert Dewar <dewar@adacore.com>
3535
3536 * einfo.adb (OK_To_Rename): New flag
3537
3538 * einfo.ads (OK_To_Rename): New flag
3539
3540 * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite as renames if
3541 OK_To_Rename set.
3542
3543 * exp_ch4.adb (Expand_Concatenate): Mark temp variable OK_To_Rename
3544
3545 * sem_ch7.adb (Uninstall_Declarations): Allow for renames from
3546 OK_To_Rename.
3547
8b9890fa
EB
35482009-04-24 Emmanuel Briot <briot@adacore.com>
3549
3550 * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, makeutl.adb,
3551 clean.adb, prj-nmsc.adb, prj-env.adb, prj-env.ads (Project_Data.Seen):
3552 field removed. This is not a property of the
3553 project, just a boolean used to traverse the project tree, and storing
3554 it in the structure prevents doing multiple traversal in parallel.
3555 (Project_Data.Checked): also removed, since it was playing the same role
3556 as Seen when we had two nested loops, and this is no longer necessary
3557 (For_All_Imported_Projects): removed, since in fact there was already
3558 the equivalent in For_Every_Project_Imported. The latter was rewritten
3559 to use a local hash table instead of Project_Data.Seen
3560 Various loops were rewritten to use For_Every_Project_Imported, thus
3561 removing the need for Project_Data.Seen. This avoids a lot of code
3562 duplication
3563
76e776e5
AC
35642009-04-24 Ed Schonberg <schonberg@adacore.com>
3565
3566 * sem_res.adb (Resolve_Actuals): Do not create blocks around code
3567 statements, even though the actual of the call is a concatenation,
3568 because the argument is static, and we want to preserve warning
3569 messages about sequences of code statements that are not marked
3570 volatile.
3571
3572 * sem_warn.adb: remove obsolete comment about warning being obsolete
3573
3574 * s-tasren.adb (Task_Do_Or_Queue): If a timed entry call is being
3575 requeued and the delay has expired while within the accept statement
3576 that executes the requeue, do not perform the requeue and indicate that
3577 the timed call has been aborted.
3578
35792009-04-24 Emmanuel Briot <briot@adacore.com>
3580
3581 * mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
3582 (Has_Ada_Sources, Has_Foreign_Sources): new subprograms
3583 (Project_Data.Ada_Sources_Present, Foreign_Sources_Present): removed,
3584 since they can be computed from the above.
3585
481f29eb
VC
35862009-04-24 Vincent Celier <celier@adacore.com>
3587
3588 * gnatcmd.adb: Call Prj.Env.Initialize with the Project_Tree
3589
3590 * prj-env.adb: Move all global variables to the private part of the
3591 project tree data.
3592 Access these new components instead of the global variables no longer
3593 in existence.
3594 (Add_To_Path): New Project_Tree_Ref parameter, to access the new
3595 components that were previously global variables.
3596
3597 * prj-env.ads (Initialize): New Project_Tree_Ref parameter
3598 (Set_Mapping_File_Initial_State_To_Empty): New Project_Tree_Ref
3599 parameter.
3600
3601 * prj-nmsc.adb (Compute_Unit_Name): New Project_Tree_Ref parameter to
3602 be able to call Set_Mapping_File_Initial_State_To_Empty with it.
3603
3604 * prj.adb (Initialize): Do not call Prj.Env.Initialize
3605 (Reset): Do not call Prj.Env.Initialize. Instead, initialize the new
3606 components in the private part of the project tree data.
3607
3608 * prj.ads (Private_Project_Tree_Data): new components moved from
3609 Prj.Env: Current_Source_Path_File, Current_Object_Path_File,
3610 Ada_Path_Buffer, Ada_Path_Length, Ada_Prj_Include_File_Set,
3611 Ada_Prj_Objects_File_Set, Fill_Mapping_File.
3612
c54ab0b5
AC
36132009-04-24 Vincent Celier <celier@adacore.com>
3614
3615 * opt.ads (Unchecked_Shared_Lib_Imports): New Boolean flag.
3616
3617 * prj-nmsc.adb (Check_Library): No error for imports by shared library
3618 projects, when --unchecked-shared-lib-imports is used.
3619
36202009-04-24 Robert Dewar <dewar@adacore.com>
3621
3622 * sem_ch7.adb: Minor reformatting
3623
b3520ca0
AC
36242009-04-24 Tristan Gingold <gingold@adacore.com>
3625
3626 * s-osinte-darwin.adb, s-osinte-darwin.ads: lwp_self now returns the
3627 mach thread id.
3628
36292009-04-24 Emmanuel Briot <briot@adacore.com>
3630
3631 * prj-env.adb, prj-env.ads (Body_Path_Name_Of, Spec_Path_Name_Of,
3632 Path_Name_Of_Library_Unit_Body): rEmove unused subprograms.
3633 (For_All_Imported_Projects): new procedure
3634 (For_All_Source_Dirs, For_All_Object_Dirs): Rewritten based on the
3635 above rather than duplicating code.
3636
5d07d0cf
EB
36372009-04-24 Emmanuel Briot <briot@adacore.com>
3638
3639 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
3640 (Source_Id, Source_Data): use a real list to store sources rather than
3641 using an external table to store the elements. This makes code more
3642 efficient and more readable.
3643
5eed512d
EB
36442009-04-24 Emmanuel Briot <briot@adacore.com>
3645
3646 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
3647 (Source_Iterator): new type.
53b2323e
RH
3648 This removes the need for having the sources on three different
3649 lists at the project tree, project and language level. They are now
3650 on a single list.
5eed512d 3651
5876578b
EB
36522009-04-24 Emmanuel Briot <briot@adacore.com>
3653
3654 * gnatcmd.adb, prj.adb, prj.ads: Remove unused entities
3655
a9d17e32
ES
36562009-04-24 Ed Schonberg <schonberg@adacore.com>
3657
3658 * sem_warn.adb: Add comment on obsolete warning
3659
144c034d
AC
36602009-04-24 Arnaud Charlet <charlet@adacore.com>
3661
3662 * s-tassta.adb (Create_Task): Fix violation of locking rule.
3663
e0697153
EB
36642009-04-24 Emmanuel Briot <briot@adacore.com>
3665
3666 * prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb (Language_Index): renamed
3667 to Language_Ptr to better reflect its new implementation.
3668 (Project_Data.First_Languages_Processing): renamed to Languages now
3669 that the field with that name is no longer used
3670 (Project_Data.Languages): removed, no longer used, and duplicates
3671 information already available through First_Language_Processing.
3672 (Prj.Language_Index): now an actual pointer, instead of an index into
3673 a table. This makes the list somewhat more obvious, but more importantly
3674 removes the need to pass a pointer to the project_tree_data in a few
3675 places, and makes accessing the attributes of a languages more
3676 efficient.
3677
18e6d56a 36782009-04-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
53b2323e 3679 Thomas Quinot <quinot@adacore.com>
18e6d56a
RK
3680
3681 * fe.h (Set_Identifier_Casing): Add const to second parameter.
c91f9cd4 3682 * gcc-interface/misc.c (internal_error_function): Make copy of return
18e6d56a
RK
3683 from pp_formatted_text before assigning BUFFER to it.
3684 (gnat_init): Likewise for main_input_filename and gnat_argv.
3685 (gnat_printable_name): Remove cast from call to Set_Identifier_Casing.
3686
caa9d12a
EB
36872009-04-24 Eric Botcazou <ebotcazou@adacore.com>
3688
3689 * ttypes.ads (Target_Double_Float_Alignment): New variable.
3690 (Target_Double_Scalar_Alignment): Likewise.
3691 * get_targ.ads (Get_Strict_Alignment): Adjust external name.
3692 (Get_Double_Float_Alignment): New imported function.
3693 (Get_Double_Scalar_Alignment): Likewise.
3694 * layout.adb (Set_Elem_Alignment): Take into account specific caps for
3695 the alignment of "double" floating-point types and "double" or larger
3696 scalar types, as parameterized by Target_Double_Float_Alignment and
3697 Target_Double_Scalar_Alignment respectively.
3698 * gcc-interface/gigi.h (double_float_alignment): Declare.
3699 (double_scalar_alignment): Likewise.
3700 (is_double_float_or_array): Likewise.
3701 (is_double_scalar_or_array): Likewise.
3702 (get_target_double_float_alignment): Likewise.
3703 (get_target_double_scalar_alignment): Likewise.
3704 * gcc-interface/targtyps.c (get_strict_alignment): Rename into...
3705 (get_target_strict_alignment): ...this.
3706 (get_target_double_float_alignment): New function.
3707 (get_target_double_scalar_alignment): Likewise.
3708 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
3709 Test the presence of an alignment clause for under-aligned integer
3710 types. Take into account specific caps for the alignment of "double"
3711 floating-point types and "double" or larger scalar types, as
3712 parameterized by Target_Double_Float_Alignment and
3713 Target_Double_Scalar_Alignment respectively.
3714 (validate_alignment): Likewise.
3715 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Alignment>: Likewise.
3716 (gigi): Initialize double_float_alignment and double_scalar_alignment.
3717 * gcc-interface/utils.c (double_float_alignment): New global variable.
3718 (double_scalar_alignment): Likewise.
3719 (is_double_float_or_array): New predicate.
3720 (is_double_scalar_or_array): Likewise.
3721
1275de7d
EB
37222009-04-24 Eric Botcazou <ebotcazou@adacore.com>
3723
3724 * gcc-interface/utils2.c (build_cond_expr): Move SAVE_EXPR ahead of
3725 the conditional expression only if it is common to both arms.
3726
6f61bd41
EB
37272009-04-24 Eric Botcazou <ebotcazou@adacore.com>
3728
3729 * gcc-interface/gigi.h (build_call_alloc_dealloc): Update comment.
3730 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Pass correct
3731 arguments to build_allocator.
3732 * gcc-interface/utils2.c (build_call_alloc_dealloc): Update comment.
3733 Remove code handling special allocator and assert its uselessness.
3734
0d858698
EB
37352009-04-24 Eric Botcazou <ebotcazou@adacore.com>
3736
3737 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If an
3738 alignment is specified, do not promote that of the component type
3739 beyond it.
3740 <E_Array_Subtype>: Likewise.
3741
bbaba73f
EB
37422009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3743
3744 * einfo.ads (Is_True_Constant): Lift restriction on atomic objects.
3745 * sinfo.ads (Object Declaration): Likewise.
3746 (Assignment Statement): Likewise.
3747 * freeze.adb (Expand_Atomic_Aggregate): Remove useless test.
3748 Do not force Is_True_Constant to false on the temporary.
3749 (Freeze_Entity): Do not force Is_True_Constant to false on names on
3750 the RHS of object declarations.
3751 * gcc-interface/trans.c (lvalue_required_p) <N_Object_Declaration>:
3752 New case. Return 1 if the object is atomic.
3753 <N_Assignment_Statement>: Likewise.
3754
4fd78fe6
EB
37552009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3756
3757 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>
3758 For packed array types, make the original array type a parallel type
3759 for the modular type and its JM wrapper if the type is bit-packed.
3760 <E_Array_Subtype>: Likewise. Do not generate the special XA parallel
3761 record type for packed array types. Remove kludge.
3762
c1abd261
EB
37632009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3764
3765 * gcc-interface/gigi.h (create_index_type): Adjust head comment.
3766 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
3767 Use front-end predicates to compute signedness and precision.
3768 <E_String_Literal_Subtype>: Fold range type.
3769 Make sure to set longest_float_type_node to a scalar type.
3770 (elaborate_entity): Use consistent Constraint_Error spelling.
3771 (substitute_in_type) <INTEGER_TYPE>: Always copy the type.
3772 * gcc-interface/misc.c (gnat_print_type) <INTEGER_TYPE>: Use brief
3773 output for the modulus, if any.
3774 <ENUMERAL_TYPE>: Likewise for the RM size.
3775 * gcc-interface/trans.c (gnat_to_gnu): Use consistent Constraint_Error
3776 spelling.
3777 * gcc-interface/utils.c (finish_record_type): Really test the alignment
3778 of BLKmode bit-fields to compute their addressability.
3779 (create_index_type): Adjust comments.
3780 (create_param_decl): Create the biased subtype manually.
3781 * gcc-interface/utils2.c (build_component_ref): Use consistent
3782 Constraint_Error spelling.
3783
8713b7e4
EB
37842009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3785
3786 * gcc-interface/cuintp.c: Clean up include directives.
3787 * gcc-interface/targtyps.c: Likewise.
3788 * gcc-interface/decl.c: Likewise.
3789 * gcc-interface/misc.c: Likewise.
3790 * gcc-interface/trans.c: Likewise.
3791 * gcc-interface/utils.c: Likewise.
3792 * gcc-interface/utils2.c: Likewise.
3793 * gcc-interface/Make-lang.in: Adjust dependencies accordingly.
3794
26383c64
EB
37952009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3796
3797 * gcc-interface/ada-tree.h (union lang_tree_node): Use standard idiom.
3798 (SET_TYPE_LANG_SPECIFIC): Likewise. Fix formatting.
3799 (SET_DECL_LANG_SPECIFIC): Likewise.
3800 Reorder macros.
3801 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
3802 Update comment about use of build_range_type.
3803 <E_Array_Type, E_Array_Subtype>: Use consistent naming convention.
3804 <E_Array_Subtype>: Rework comments about TYPE_ACTUAL_BOUNDS and add
3805 check for other cases of overloading.
3806 * gcc-interface/trans.c (gigi): Use size_int in lieu of build_int_cst.
3807 * gcc-interface/utils2.c (build_call_raise): Fix off-by-one error.
3808 Use size_int in lieu of build_int_cst.
3809 (build_call_alloc_dealloc): Use build_index_2_type in lieu of
3810 build_range_type.
3811
b7babd5d
EB
38122009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3813
3814 * gcc-interface/utils2.c (build_binary_op) <PLUS_EXPR>: If operation's
3815 type is an enumeral or a boolean type, change it to an integer type
3816 with the same mode and signedness.
3817
5225a138
EB
38182009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3819
3820 * gcc-interface/utils.c (create_var_decl_1): Do not emit debug info
3821 for an external constant whose initializer is not absolute.
3822
38232009-04-22 Taras Glek <tglek@mozilla.com>
d1b38208
TG
3824
3825 * gcc-interface/ada-tree.h: Update GTY annotations to new syntax.
3826 * gcc-interface/trans.c: Likewise.
3827 * gcc-interface/utils.c: Likewise.
3828
a52fefe6
AC
38292009-04-22 Ed Schonberg <schonberg@adacore.com>
3830
3831 * sem_res.adb: Create block around procedure call when actual is a
3832 concatenation.
3833
38342009-04-22 Thomas Quinot <quinot@adacore.com>
3835
3836 * s-soflin.ads: Fix typos
3837
38382009-04-22 Vincent Celier <celier@adacore.com>
3839
3840 * prj-env.adb: Minor comment change
3841
3842 * prj-nmsc.adb (Check_Common): Add guard to avoid calling
3843 Get_Name_String with No_File.
3844
3845 * tempdir.adb (Create_Temp_File): Output diagnostic when temp file
3846 cannot be created even when not in verbose mode.
3847
2f1e0b61
EB
38482009-04-22 Emmanuel Briot <briot@adacore.com>
3849
3850 * make.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj.adb,
3851 prj.ads (Create_Mapping_File): merge the two versions for Ada_Only and
3852 Multi_Language modes, to avoid code duplication.
3853 (Project_Data.Include_Language): Removed.
3854
35afb012
AC
38552009-04-22 Vincent Celier <celier@adacore.com>
3856
3857 * tempdir.adb (Create_Temp_File): Add a diagnostic in verbose mode when
3858 the temporary file cannot be created, indicating the directory when the
3859 creation was attempted.
3860
38612009-04-22 Emmanuel Briot <briot@adacore.com>
3862
3863 * prj-env.adb, prj-env.ads (Create_Mapping_File): we need to compare
3864 the language names, not their indices.
3865
10d2a6f7
EB
38662009-04-22 Emmanuel Briot <briot@adacore.com>
3867
3868 * prj.ads, prj-nmsc.adb, prj-env.adb, prj-env.ads
3869 (Source_Data.Language_Name): Field removed.
3870
39d4e04a
EB
38712009-04-22 Emmanuel Briot <briot@adacore.com>
3872
3873 * prj.adb, prj.ads, prj-nmsc.adb (Project_Data.Unit_Based_Language_*):
3874 Two fields removed.
3875
f1eea135
EB
38762009-04-22 Emmanuel Briot <briot@adacore.com>
3877
3878 * prj-nmsc.adb (Check_Naming_Ada_Only): Properly initialize the
3879 separate_suffix to the same value as the body_suffix.
3880
d9c0e057
AC
38812009-04-22 Robert Dewar <dewar@adacore.com>
3882
3883 * prj.adb: Minor code reorganization
3884 Code clean up.
3885
3886 * prj-proc.adb: Minor code reorganization, clean up.
3887
3888 * prj-nmsc.adb: Minor reformatting
3889 Minor code reorganization
3890
3891 * gnat_ugn.texi: Add to doc on strict aliasing
3892
38932009-04-22 Pascal Obry <obry@adacore.com>
3894
3895 * s-osinte-mingw.ads: Rename Reserved field in CRITICAL_SECTION to
3896 SpinCount.
3897
3898 * s-tasini.adb: Minor reformatting.
3899
3900 * s-tassta.adb: Minor reformatting.
3901
ce30eccb
EB
39022009-04-22 Emmanuel Briot <briot@adacore.com>
3903
3904 * prj-proc.adb, prj-nmsc.adb (Check_Naming_Schemes): split into several
3905 smaller subprograms.
3906 Renamed to Check_File_Naming_Schemes to avoid confusion with the
3907 other Check_Naming_Schemes functions that plays a totally different
3908 role.
3909 (Check_Unit_Based_Lang, Check_File_Based_Lang): new subprograms,
3910 extracted from the above. These were partially rewritten to avoid
3911 unnecessary code and temporary variables.
3912 (Compute_Unit_Name): new subprogram, merge of Check_Unit_Based_Lang
3913 and Get_Unit (which for now still exist since they contain mode-specific
3914 code)
3915
347ab254
EB
39162009-04-22 Emmanuel Briot <briot@adacore.com>
3917
3918 * prj.ads, prj.adb, prj-nmsc.adb, prj-proc.adb (Recursive_Process):
3919 Remove duplicated code.
3920 (Canonical_Case_File_Name): new subprogram
3921 (Check_And_Normalize_Unit_Names): new subprogram
3922 (Write_Attr): new subprogram
3923 Better sharing of code
3924 (Check_Naming_Ada_Only, Check_Naming_Multi_Lang): new subprogram, to
3925 split Check_Naming and help find duplicated code
3926 (Check_Common): new subprogram, sharing code between ada_only and
3927 multi_language mode.
3928 (Naming_Data.Dot_Repl_Loc): field removed
3929
aa903780
EB
39302009-04-22 Emmanuel Briot <briot@adacore.com>
3931
3932 * prj-proc.adb, prj-nmsc.adb (Load_Naming_Exceptions): New subprogram.
3933 Minor refactoring to reduce the size of
3934 Process_Sources_In_Multi_Language_Mode.
3935 Avoid extra copied of Source_Data, which we found in the past could be
3936 quite slow.
3937 (Mark_Excluded_Sources): new subprogram.
3938 (Remove_Locally_Removed_Files_From_Units): merged into the above
3939 Refactors Process_Sources_In_Multi_Language_Mode to reduce its size,
3940 and allow better sharing of code between multi_lang and ada_only modes
3941 (Project_Extends): removed, since exact duplicate of Prj.Is_Extending
3942
95c05c62
EB
39432009-04-22 Emmanuel Briot <briot@adacore.com>
3944
3945 * prj-proc.adb, prj.adb, prj.ads (Project_Data.First_Referred_By):
3946 Removed, since unused.
3947
c9a1acdc
AC
39482009-04-22 Vincent Celier <celier@adacore.com>
3949
3950 * prj-attr.adb: New single project level attribute
3951 Separate_Run_Path_Options.
3952
3953 * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
3954 attribute Seperate_Run_Path_Options.
3955
3956 * prj.ads: (Project_Configuration): New Boolean component
3957 Separate_Run_Path_Options, defaulted to False.
3958
3959 * snames.ads-tmpl: New standard name Seperate_Run_Path_Options
3960
6d2a1120
RD
39612009-04-22 Robert Dewar <dewar@adacore.com>
3962
c9a1acdc
AC
3963 * sem_type.adb: Minor reformatting
3964
6d2a1120
RD
3965 * mlib.adb: Minor reformatting
3966
3967 * sem_aggr.adb: Minor reformatting. Defend against junk aggregate from
3968 syntax error.
3969
3b81743f
NS
39702009-04-22 Nicolas Setton <setton@adacore.com>
3971
3972 * link.c: Add flag __gnat_separate_run_path_options.
3973
3974 * mlib.adb (Separate_Run_Path_Options): New subprogram.
3975
3976 * mlib.ads (Separate_Run_Path_Options): Declare.
3977
3978 * gnatcmd.adb (Process_Link): Add support for emitting one "rpath"
3979 switch per directory, rather than one "rpath" switch listing all
3980 directories.
3981
3982 * gnatlink.adb (Process_Binder_File): Likewise.
3983
3984 * make.adb (Gnatmake): Likewise.
3985
3a69b5ff
AC
39862009-04-22 Hristian Kirtchev <kirtchev@adacore.com>
3987
3988 * exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): Code cleanup.
3989 Add a call to Move_Final_List when the target of the assignment is a
3990 return object that needs finalization and the expression is a
3991 controlled build-in-place function.
3992
39932009-04-22 Vincent Celier <celier@adacore.com>
3994
3995 * make.adb (Gnatmake, Bind_Step): call Set_Ada_Paths with
3996 Including_Libraries set to True.
3997
f3a67cfc
ES
39982009-04-22 Ed Schonberg <schonberg@adacore.com>
3999
4000 * lib-load.ads, lib-load.adb (Make_Child_Decl_Unit): New subprogram, to
4001 create a unit table entry for the subprogram declaration created for a
4002 child suprogram body that has no separate specification.
4003
4004 * sem_ch10.adb (Analyze_Compilation_Unit): For a child unit that is a
4005 subprogram body, call Make_Child_Decl_Unit.
4006
4007 * lib.adb (Get_Cunit_Unit_Number): Verify that an entry not yet in the
4008 table can only be the created specification of a child subprogram body
4009 that is the main unit, which has not been entered in the table yet.
4010
4011 * errout.adb (Output_Messages): Ignore created specification of a
4012 child subprogram body to prevent repeated listing of error messages.
4013
4014 * gnat1drv.adb (gnat1drv): The generated specification for a child
4015 subprogram body does not generate code.
4016
1ef4d0a8
AC
40172009-04-22 Arnaud Charlet <charlet@adacore.com>
4018
4019 * s-bitops.adb, s-bitops.ads (Raise_Error): Do not use Ada 05 syntax,
4020 since this unit is now part of bootstrap units, so must use Ada 95
4021 syntax only.
4022
40232009-04-22 Thomas Quinot <quinot@adacore.com>
4024
4025 * a-tasatt.adb: Minor reformatting
4026
40272009-04-22 Bob Duff <duff@adacore.com>
4028
4029 * s-stalib.ads: Remove "with System;" since we're inside System, so
4030 it's unnecessary.
4031
40322009-04-22 Vincent Celier <celier@adacore.com>
4033
4034 * prj-nmsc.adb (Add_Source): Always put the dependency file name in
4035 the source record, as there may be a dependency file even if no object
4036 file is created.
4037
1cb46af0
RD
40382009-04-22 Robert Dewar <dewar@adacore.com>
4039
1ef4d0a8 4040 * lib-load.adb: Minor reformatting
1cb46af0
RD
4041
4042 * lib-load.ads: Minor reformatting
4043
4044 * sinfo.ads: Minor reformatting
4045
218e53ff
BD
40462009-04-22 Bob Duff <duff@adacore.com>
4047
4048 * exp_pakd.adb: Minor comment fixes.
4049
4050 * sinfo.ads, par-load.adb, sem_ch10.adb, lib-load.ads, lib-load.adb
4051 sem_ch12.adb: Change the meaning of the Library_Unit attribute to
4052 include units containing instantiations, as well as units that are
4053 generic instantiations.
4054
4055 * sem.adb: Include dependents and corresponding specs/bodies in the
4056 unit walk.
4057
4058 * gcc-interface/Make-lang.in:
4059 sem now depends on s-bitops, because of the packed array of Booleans.
4060
feec4372
EB
40612009-04-22 Eric Botcazou <ebotcazou@adacore.com>
4062
4063 * gcc-interface/ada-tree.def: Fix formatting nits.
4064 (REGION_STMT): Delete.
4065 (HANDLER_STMT): Likewise.
4066 * gcc-interface/ada-tree.h: Fix formatting nits.
4067 (IS_STMT): Delete.
4068 (REGION_STMT_BODY): Likewise.
4069 (REGION_STMT_HANDLE): Likewise.
4070 (REGION_STMT_BLOCK): Likewise.
4071 (HANDLER_STMT_ARG): Likewise.
4072 (HANDLER_STMT_LIST): Likewise.
4073 (HANDLER_STMT_BLOCK): Likewise.
4074 * gcc-interface/gigi.h (fp_prec_to_size): Update comment.
4075 (fp_size_to_prec): Likewise.
4076 (largest_move_alignment): Delete.
4077 (gnat_compute_largest_alignment): Likewise.
4078 Fix minor nits.
4079 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
4080 Remove redundant code.
4081 <E_Array_Type>: Remove redundant assert.
4082 <E_Array_Subtype>: Exit early from index computation in pathological
4083 cases.
4084 Rewrite conditional assignment.
4085 (make_type_from_size): Likewise.
4086 * gcc-interface/misc.c (largest_move_alignment): Delete.
4087 (gnat_finish_incomplete_decl): Likewise.
4088 (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Likewise.
4089 (asm_out_file): Likewise
4090 (gnat_print_type) <INTEGER_TYPE>: Fall through to ENUMERAL_TYPE case.
4091 (gnat_dwarf_name): Move around.
4092 * gcc-interface/trans.c (Attribute_to_gnu): Fix minor nits.
4093 (gigi): Remove call to gnat_compute_largest_alignment.
4094 * utils.c (create_field_decl): Rewrite conditional assignment.
4095 Fix minor nits.
4096
a8e05f92
EB
40972009-04-22 Eric Botcazou <ebotcazou@adacore.com>
4098
4099 * gcc-interface/decl.c (gnat_to_gnu_entity): Compute is_type predicate
4100 on entry. Defer common processing for types. Reorder and clean up.
4101 Compute the equivalent GNAT node and the default size for types only.
4102 <E_Modular_Integer_Type>: Directly use Esize for the type's precision.
4103 <E_Access_Type>: For an unconstrained designated type, do not pretend
4104 that a dummy type is always made.
4105 <all> Fix nits in comments.
4106 (validate_size): Fix formatting nits and comments.
4107 (set_rm_size): Likewise.
4108 * gcc-interface/utils.c (create_param_decl): Replace bogus argument
4109 passed to TARGET_PROMOTE_PROTOTYPES hook.
4110
0fb2335d
EB
41112009-04-22 Eric Botcazou <ebotcazou@adacore.com>
4112
4113 * fe.h (Get_External_Name): Declare.
4114 * gcc-interface/gigi.h (concat_id_with_name): Rename to...
4115 (concat_name): ...this.
4116 * gcc-interface/decl.c (gnat_to_gnu_entity): Rename gnu_entity_id to
4117 gnu_entity_name and adjust for above renaming.
4118 <E_Access_Type>: Use create_concat_name to get the name of the various
4119 types associated with unconstrained array types.
4120 (make_aligning_type): Adjust for above renaming.
4121 (maybe_pad_type): Likewise.
a8e05f92 4122 (components_to_record): Likewise. Use get_identifier_with_length for
0fb2335d
EB
4123 the encoding of the variant.
4124 (get_entity_name): Use get_identifier_with_length.
a8e05f92 4125 (create_concat_name): Likewise. Use Get_External_Name if no suffix.
0fb2335d
EB
4126 Do not fiddle with Name_Buffer.
4127 (concat_id_with_name): Rename to...
a8e05f92 4128 (concat_name): ...this. Use get_identifier_with_length. Do not fiddle
0fb2335d
EB
4129 with Name_Buffer.
4130 * gcc-interface/utils.c (rest_of_record_type_compilation): Adjust for
4131 above renaming.
4132
ad41bd84
JM
41332009-04-21 Joseph Myers <joseph@codesourcery.com>
4134
4135 * ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
4136 license notices.
4137
ca80e52b
EB
41382009-04-21 Eric Botcazou <ebotcazou@adacore.com>
4139
4140 * gcc-interface/trans.c (gnat_to_gnu): Do not overwrite location info.
4141
b4680ca1
EB
41422009-04-21 Eric Botcazou <ebotcazou@adacore.com>
4143
71b495a2 4144 * gcc-interface/ada-tree.h (TYPE_RM_SIZE_NUM): Delete.
b4680ca1 4145 (TYPE_RM_SIZE): Access TYPE_LANG_SLOT_1 directly for integral types.
71b495a2
EB
4146 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>:
4147 Remove useless support code for packed array types and assert its
4148 uselessness.
b4680ca1
EB
4149 <E_Signed_Integer_Subtype>: Reuse entity identifier in more places and
4150 adjust for TYPE_RM_SIZE change.
4151 <all> Fix nits in comments. Use Original_Array_Type accessor instead
4152 of Associated_Node_For_Itype accessor for packed array types.
4153 (make_packable_type): Likewise.
4154 (maybe_pad_type): Likewise.
4155 (set_rm_size): Likewise. Rework conditional statement. Adjust for
4156 TYPE_RM_SIZE change.
4157 (make_type_from_size): Adjust for TYPE_RM_SIZE change.
4158 (rm_size): Fix nits in comments. Rework conditional statements.
71b495a2
EB
4159 * gcc-interface/misc.c (gnat_print_type): Adjust for TYPE_RM_SIZE
4160 change.
4161 * gcc-interface/trans.c (Attribute_to_gnu): Fix nits in comments.
4162 * gcc-interface/utils.c (gnat_init_decl_processing): Use more
4163 appropriate function to initialize the size_type_node. Adjust for
4164 TYPE_RM_SIZE change.
b4680ca1 4165
a962b0a1
EB
41662009-04-21 Eric Botcazou <ebotcazou@adacore.com>
4167
4168 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set force_global
4169 for imported subprograms.
4170
2f283818
EB
41712009-04-21 Eric Botcazou <ebotcazou@adacore.com>
4172
4173 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not make
4174 constant objects covered by 13.3(19) volatile.
4175
ac53d5f2
EB
41762009-04-21 Eric Botcazou <ebotcazou@adacore.com>
4177
4178 * gcc-interface/utils.c (create_type_decl): Do not pass declarations
4179 of dummy fat pointer types to the debug back-end.
4180
6e0f0975
EB
41812009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4182
4183 * gcc-interface/decl.c (gnat_to_gnu_entity): Rewrite Esize calculation.
4184 <E_Signed_Integer_Subtype>: Set the RM size on the integer type
4185 before wrapping it up in the record type. Do not overwrite the
4186 Ada size of the record type with the Esize.
4187
c2efda0d
EB
41882009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4189
4190 * gcc-interface/trans.c (unchecked_conversion_lhs_nop): New predicate.
4191 (gnat_to_gnu) <N_Unchecked_Type_Conversion>: Return the expression
4192 if the conversion is on the LHS of an assignment and a no-op.
4193 <all> Do not convert the result to the result type if the Parent
4194 node is such a conversion.
4195
77022fa8
EB
41962009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4197
4198 * gcc-interface/ada-tree.h (DECL_HAS_REP_P): Delete.
4199 * gcc-interface/decl.c (gnat_to_gnu_entity): Add support for extension
4200 of types with unknown discriminants.
4201 (substitute_in_type): Rewrite and restrict to formal substitutions.
4202 * gcc-interface/utils.c (create_field_decl): Do not set DECL_HAS_REP_P.
4203 (update_pointer_to): Update comment.
4204
e69614ad
AC
42052009-04-20 Ed Schonberg <schonberg@adacore.com>
4206
4207 * sem_ch8.adb (Use_One_Package): In an instance, if two
4208 potentially_use_visible and non-overloadable homonyms are available
4209 from the actuals of distinct formal packages, retain the current one,
4210 which was visible in the generic, to prevent spurious visibility
4211 errors.
4212 (End_Use_Package): Restore use_visibility when needed.
4213
42142009-04-20 Sergey Rybin <rybin@adacore.com>
4215
4216 * gnat_ugn.texi, vms_data.ads: Update doc.
4217
32838704
AC
42182009-04-20 Arnaud Charlet <charlet@adacore.com>
4219
4220 * gcc-interface/Make-lang.in: Update dependencies
4221
4222 * gcc-interface/Makefile.in: Link run-time against winsock2 lib under
4223 Windows.
4224
37951d8e
AC
42252009-04-20 Robert Dewar <dewar@adacore.com>
4226
4227 * checks.ads: Fix documentation of range check handling
4228
42292009-04-20 Ed Schonberg <schonberg@adacore.com>
4230
4231 * sem_ch8.adb (Use_One_Type): Use proper entity on warning message for
4232 a redundant use_type clause.
4233
5d5832bc
AC
42342009-04-20 Robert Dewar <dewar@adacore.com>
4235
4236 * sem_attr.adb (Eval_Attribute, case Length): Catch more cases where
4237 this attribute can be evaluated at compile time.
4238 (Eval_Attribute, case Range_Length): Same improvement
4239
4240 * sem_eval.ads, sem_eval.adb (Compile_Time_Compare): New procedure
4241
42422009-04-20 Ed Schonberg <schonberg@adacore.com>
4243
4244 * sem_ch6.adb (Analye_Subprogram_Declaration): Code reorganization,
4245 for better handling of null procedures.
4246 (Check_Overriding_Indicator): Do not emit a warning on a missing
4247 overriding indicator on an operator when the type of which the operator
4248 is a primitive is private.
4249
97a8fb16
AC
42502009-04-20 Bob Duff <duff@adacore.com>
4251
4252 * sem.adb, gnat1drv.adb, debug.adb: Use the -gnatd.W switch to control
4253 debugging output.
4254
42552009-04-20 Robert Dewar <dewar@adacore.com>
4256
4257 * sem_attr.adb: Minor reformatting
4258
4259 * gnatcmd.adb: Minor reformatting
4260
7340e432
AC
42612009-04-20 Ed Schonberg <schonberg@adacore.com>
4262
4263 * sem_ch4.adb (Analyze_User_Defined_Binary_Op): If left operand is
4264 overloaded and one interpretation matches the context, label the
4265 operand with the type of first formal.
4266
42672009-04-20 Bob Duff <duff@adacore.com>
4268
4269 * debug.ads: Minor comment fix.
4270
4271 * debug.adb: Minor comment fixes.
4272
42732009-04-20 Javier Miranda <miranda@adacore.com>
4274
4275 * rtsfind.ads (RE_Null_Id): New entity of package Ada.Exceptions
4276
4277 * exp_ch6.adb (Expand_Inlined_Call): Undo previous patch.
4278
4279 * exp_ch11.adb (Expand_N_Raise_Statement): When the raise stmt
4280 is expanded into a call to Raise_Exception, avoid passing the
4281 exception-name'identity in runtimes in which this argument
4282 is not used.
4283
bf06d37f
AC
42842009-04-20 Jerome Lambourg <lambourg@adacore.com>
4285
4286 * impunit.adb: Add i-cil and i-cilobj packages, now needed by the
4287 generated bindings for cil.
4288
42892009-04-20 Ed Schonberg <schonberg@adacore.com>
4290
4291 * sem_aggr.adb (Resolve_Record_Aggregate): If the type has unknown
4292 discriminants, collect components from the Underlying_Record_View,
4293 which will be used in the expansion of the aggregate into assignments.
4294
4295 * sem_ch3.adb: Do not label derived type with unknown discriminants as
4296 having a private declaration.
4297
58a9d876
AC
42982009-04-20 Ed Schonberg <schonberg@adacore.com>
4299
4300 * exp_util.adb (Expand_Subtype_From_Expr): use the
4301 underlying_record_view when available, to create the proper constrained
4302 subtype for an object of a derived type with unknown discriminants.
4303
43042009-04-20 Javier Miranda <miranda@adacore.com>
4305
4306 * exp_ch6.adb (Expand_Inlined_Call): Avoid generation of temporaries for
4307 formals that have pragma unreferenced.
4308
e34ca162
AC
43092009-04-20 Pascal Obry <obry@adacore.com>
4310
4311 * a-direct.adb (To_Lower_If_Case_Insensitive): Removed.
4312 Remove all calls to To_Lower_If_Case_Insensitive to preserve
4313 the pathname original casing.
4314
43152009-04-20 Robert Dewar <dewar@adacore.com>
4316
4317 * g-trasym.adb: Minor reformatting
4318
4319 * s-os_lib.adb: Minor reformatting
4320
4321 * sem.adb: Minor reformatting
4322 Minor code reorganization
4323
4324 * sem_ch3.adb: Minor reformatting
4325
4326 * sem_ch4.adb: Minor reformatting
4327
4328 * sem_ch8.adb: Minor reformatting
4329
4330 * sem_type.adb: Minor reformatting
4331
ee9aa7b6
AC
43322009-04-20 Javier Miranda <miranda@adacore.com>
4333
4334 * sem_disp.adb (Find_Dispatching_Type): For subprograms internally
4335 generated by derivations of tagged types use the aliased subprogram a
4336 reference to locate their controlling type.
4337
43382009-04-20 Tristan Gingold <gingold@adacore.com>
4339
4340 * g-trasym.adb: Set size of result buffer before calling
4341 convert_address.
4342
43432009-04-20 Ed Schonberg <schonberg@adacore.com>
4344
4345 * sem_ch4.adb (Valid_Candidate): When checking whether a prefixed call
4346 to a function returning an array can be interpreted as a call with
4347 defaulted parameters whose result is indexed, take into account the
4348 types of all the indices of the array result type.
4349
43502009-04-20 Pascal Obry <obry@adacore.com>
4351
4352 * a-direct.adb, s-os_lib.adb: Minor reformatting.
4353
bddd6058
AC
43542009-04-20 Ed Schonberg <schonberg@adacore.com>
4355
4356 * sem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect
4357 null exclusion qualifiers for object renaming declarations.
4358
43592009-04-20 Nicolas Roche <roche@adacore.com>
4360
4361 * sysdep.c (__gnat_localtime_tzoff): on Windows, manipulated times are
4362 unsigned long long. So compare local_time and utc_time before computing
4363 the difference.
4364
43652009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4366
4367 * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
4368 of the Underlying_Record_View before that of the derived type.
4369
4370 * exp_ch3.adb (Expand_Record_Extension): Do not special-case types
4371 with unknown discriminants with regard to the parent subtype.
4372
4f18d860
BD
43732009-04-20 Bob Duff <duff@adacore.com>
4374
4375 * sem.adb (Semantics, Walk_Library_Items): Include dependents of bodies
4376 that are not included. This is necessary if the main unit is a generic
4377 instantiation.
4378
4379 * gnat1drv.adb (Gnat1drv): Comment out the call to Check_Library_Items,
4380 because it doesn't work if -gnatn is used.
4381
5987e59c
AC
43822009-04-20 Ed Schonberg <schonberg@adacore.com>
4383
4384 * rtsfind.adb (RTE, RTE_Record_Component): In
4385 Configurable_Run_Time_Mode, do not enable front-end inlining.
4386
43872009-04-20 Thomas Quinot <quinot@adacore.com>
4388
4389 * g-socthi-vms.adb: Remove now unnecessary WITH clause on
4390 System.Address_To_Access_Conversions.
4391
43922009-04-20 Ed Schonberg <schonberg@adacore.com>
4393
4394 * sem.adb: Guard against ill-formed subunits.
4395
43962009-04-20 Bob Duff <duff@adacore.com>
4397
4398 * output.adb (Flush_Buffer): Do not indent blank lines.
4399 (Ignore_Output): New procedure for output suppression.
4400
44012009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4402
4403 * a-calfor.adb (Image): Subtract 0.5 from the sub second component only
4404 when it is positive. This avoids a potential constraint error raised
4405 by the conversion to Natural.
4406
44072009-04-20 Gary Dismukes <dismukes@adacore.com>
4408
4409 * exp_ch5.adb (Expand_Assign_Array): For the case where the assignment
4410 involves a target that has a specified address, don't set Forward_OK
4411 and Backward_OK to False if the rhs is an aggregate, since overlap
4412 can't occur.
4413
44142009-04-20 Ed Schonberg <schonberg@adacore.com>
4415
451800a0 4416 * sem_ch8.adb (Analyze_Object_Renaming): Reject ambiguous expressions
5987e59c
AC
4417 in an object renaming declaration when the expected type is an
4418 anonymous access type.
4419
4420 * sem_type.adb (Disambiguate): Use anonymousness to resolve a potential
4421 ambiguity when one interpretation is an anonymous access type and the
4422 other is a named access type, and the context itself is anonymous
4423
44242009-04-20 Thomas Quinot <quinot@adacore.com>
4425
4426 * einfo.ads: Minor comment rewording
4427
4428 * sem_aggr.adb: Minor comment rewording
4429
4430 * sem_ch3.adb, sem_ch6.adb: Minor reformatting
4431
44322009-04-20 Pascal Obry <obry@adacore.com>
4433
4434 * adaint.c (__gnat_is_readable_file): Check for file existence
4435 when not using ACL (always the case on remote drives).
4436
8737a29a
AC
44372009-04-20 Robert Dewar <dewar@adacore.com>
4438
4439 * sinfo.ads: Minor comment fixes
4440
4441 * exp_disp.adb: Minor reformatting
4442
4443 * gnat1drv.adb: Minor reformatting
4444
4445 * output.adb: Minor reformatting
4446
4447 * s-vxwext-kernel.ads: Minor reformatting
4448
4449 * sem.ads: Minor reformatting
4450
4451 * sem.adb: Minor reformatting
4452
4453 * sem_elim.adb: Minor reformatting
4454
4455 * uname.ads: Minor reformatting
4456
44572009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4458
4459 * init.c (__gnat_adjust_context_for_raise): On x86{-64}/Linux, add
4460 a small dope of 4 words to the adjustment to the stack pointer.
4461
44622009-04-20 Thomas Quinot <quinot@adacore.com>
4463
4464 * xoscons.adb: generate C header s-oscons.h in
4465 addition to s-oscons.ads.
4466
4467 * socket.c: On VMS, use s-oscons.h.
4468
4469 * sem_ch3.adb: Minor reformatting
4470
4471 * exp_ch9.adb: Minor reformatting
4472
85087bcb
EB
44732009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4474
4475 * gcc-interface/trans.c (check_for_eliminated_entity): Remove.
4476 (Attribute_to_gnu): Do not call check_for_eliminated_entity.
4477 (call_to_gnu): Likewise.
4478
ecc3905a
EB
44792009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4480
4481 * gcc-interface/trans.c (gigi): Declare the name of the compilation
4482 unit as the first global name at the very beginning.
4483
2907036d
TQ
44842009-04-20 Thomas Quinot <quinot@adacore.com>
4485
4486 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
4487 s-oscons-tmplt.c, gsocket.h, g-socthi-mingw.ads, g-socthi.ads,
4488 g-sothco.ads (__gnat_inet_pton): Needs to be enabled for HP-UX as well,
4489 since HP-UX supports neither inet_aton nor inet_pton (altough the
4490 latter is part of the Single UNIX Specification!).
4491 So reorganize code, and share C implementation based on inet_addr(3)
4492 with VMS (instead of having a VMS specific Ada implementation in
4493 g-socthi-vms.adb).
4494
d5063351
AC
44952009-04-20 Gary Dismukes <dismukes@adacore.com>
4496
4497 * osint-c.ads, osint-c.adb (Get_Object_Output_File_Name): New function
4498 to return the object file name saved by Set_Object_Output_File_Name.
4499
45002009-04-20 Emmanuel Briot <briot@adacore.com>
4501
4502 * g-comlin.adb (Initialize_Option_Scan): Fix initialization of parsers
4503 for the standard command line, when argc has been modified since the
4504 start of the application.
4505
45062009-04-20 Thomas Quinot <quinot@adacore.com>
4507
4508 * socket.c (__gnat_inet_pton, Windows case): Adjust return value.
4509 WSAStringToAddress returns 0 for success and SOCKET_ERROR for failure.
4510
3edf2f76
AC
45112009-04-20 Bob Duff <duff@adacore.com>
4512
4513 * gnat1drv.adb (Gnat1drv): Put call to Check_Library_Items inside
4514 pragma Debug.
4515
45162009-04-20 Ed Schonberg <schonberg@adacore.com>
4517
4518 * exp_ch9.adb (Build_Protected_Sub_Specification): Mark generated
4519 subprogram as Eliminated when source operation is.
4520 (Expand_N_Protected_Type_Declaration): Generate protected and
4521 unprotected specs for the internal operations, even if the source
4522 operation is eliminated.
4523
45242009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4525
4526 * exp_ch3.adb (Make_Predefined_Primitive_Specs,
4527 Predefined_Primitive_Bodies): Do not create the declarations and bodies
4528 of the primitive subprograms associated with dispatching select
4529 statements when the runtime is in configurable mode.
4530
45312009-04-20 Ed Falis <falis@adacore.com>
4532
4533 * s-vxwext-kernel.ads (tickGet): Use tick64Get.
4534
4fd1e8b0
AC
45352009-04-20 Thomas Quinot <quinot@adacore.com>
4536
4537 * s-oscons-tmplt.c: Add support for generating a dummy version of
4538 s-oscons.ads providing all possible constants.
4539
4540 * g-socthi-mingw.ads: Fix calling convention for __gnat_inet_pton.
4541
4542 * socket.c (__gnat_inet_pton): On Windows make sure we always use the
4543 ANSI version (not the UNICODE version) of WSAStringToAddress.
4544
45452009-04-20 Pascal Obry <obry@adacore.com>
4546
4547 * adaint.c (__gnat_set_OWNER_ACL): properly free memory
4548 allocated for the security descriptor and make sure all
4549 handles are closed before leaving this procedure.
4550
9013065b
AC
45512009-04-20 Javier Miranda <miranda@adacore.com>
4552
4553 * einfo.ads, einfo.adb (Is_Underlying_Record_View): New subprogram
4554 (Set_Is_Underlying_Record_View): New subprogram
4555
4556 * sem_aggr.adb (Discr_Present, Resolve_Record_Aggregate): In case of
4557 private types with unknown discriminants use the underlying record view
4558 if available.
4559
4560 * sem_ch3.adb (Build_Derived_Private_Type): Enable construction of the
4561 underlying record view in the full view of private types whose parent
4562 has unknown discriminants.
4563 (Build_Derived_Record_Type): Avoid generating the class-wide entity
4564 associated with an underlying record view.
4565 (Derived_Type_Declaration): Avoid deriving parent primitives in
4566 underlying record views.
4567
4568 * sem_ch6.adb (Check_Return_Subtype_Indication): Add support for
4569 records with unknown discriminants.
4570
4571 * sem_type.adb (Covers): Handle underlying record views.
4572 (Is_Ancestor): Add support for underlying record views.
4573
4574 * exp_attr.adb (Expand_Attribute): Expand attribute 'size into a
4575 dispatching call if the type of the target object is tagged and has
4576 unknown discriminants.
4577
4578 * exp_aggr.adb (Resolve_Record_Aggregate): Add support for records with
4579 unknown discriminants.
4580
4581 * exp_disp.adb (Build_Dispatch_Tables): Avoid generating dispatch
4582 tables for internally built underlying record views.
4583
4584 * sprint.adb (sprint_node_actual): Improve output of aggregates with an
4585 empty list of component associations.
4586
45872009-04-20 Thomas Quinot <quinot@adacore.com>
4588
4589 * sem_ch10.adb: Minor reformatting
4590
4591 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
4592 g-socthi-mingw.ads, g-socthi.ads, g-socket.adb
4593 (GNAT.Sockets.Inet_Addr): Do not use non-portable inet_aton, instead use
4594 standard inet_pton API (and emulate it on platforms that do not
4595 support it).
4596 (GNAT.Sockets.Thin.Inet_Pton, VMS case): Implement in terms of
4597 DECC$INET_ADDR, imported in Ada.
4598 (GNAT.Sockets.Thin.Inet_Pton, VxWorks and Windows cases): Use C
4599 implementation provided by GNAT runtime.
4600 (__gnat_inet_pton): C implementation of inet_pton(3) for VxWorks and
4601 Windows.
4602
7289b80c
AC
46032009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4604
4605 * gnat_ugn.texi: Add documentation for -fno-ivopts.
4606
46072009-04-20 Ed Schonberg <schonberg@adacore.com>
4608
4609 * sem_ch10.adb (Analyze_Context): Do not analyze a unit in a
4610 with_clause if it is the main unit.
4611
c09a557e
AC
46122009-04-20 Thomas Quinot <quinot@adacore.com>
4613
4614 * sem_type.adb, ali.adb, erroutc.adb: Minor code reorganization
4615 (no behaviour change): Use Append instead of Increment_Last followed
4616 by assignment.
4617
46182009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4619
4620 * exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate the
4621 declarations of all primitives associated with dispatching asynchronous,
4622 conditional and timed selects when dispaching calls are forbidden and
4623 select statements are not allowed (such as in Ravenscar).
4624 (Predefined_Primitive_Bodies): Ditto for bodies.
4625
4626 * exp_disp.ad (Make_DT): Do not create and populate the
4627 Select_Specific_Data of the dispatch table when dispatching calls are
4628 forbidden and select statements are not allowed (such as in Ravenscar).
4629
46302009-04-20 Robert Dewar <dewar@adacore.com>
4631
4632 * a-tifiio.adb: Minor reformatting
4633
46342009-04-20 Thomas Quinot <quinot@adacore.com>
4635
4636 * g-socthi-vms.adb, g-socket.adb, g-socket.ads: inet_aton(3), unlike
4637 other C library functions, report *failure* with a zero status, and
4638 success with a non-zero status.
4639
46402009-04-20 Bob Duff <duff@adacore.com>
4641
4642 * sem.ads, sem.adb (Walk_Library_Items): New generic procedure.
4643 (Semantics): After analyzing each unit, Append it to the
4644 Comp_Unit_List, if appropriate.
4645
4646 * gnat1drv.adb (Check_Library_Items): New procedure for debugging
4647 purposes.
4648 (Gnat1drv): Correct comment regarding Back_End_Mode.
4649
46502009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4651
4652 * gnat_ugn.texi: Add documentation for -fno-inline-small-functions.
4653
7e728b0f
TQ
46542009-04-20 Thomas Quinot <quinot@adacore.com>
4655
4656 * s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
4657 output.adb, output.ads, s-taprop-hpux-dce.adb,
4658 s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-posix.adb: Minor
4659 reformatting.
4660
5e39baa6
TQ
46612009-04-20 Thomas Quinot <quinot@adacore.com>
4662
4663 * g-socket.adb, g-socket.ads, g-socthi-mingw.ads, g-socthi-vms.adb,
4664 g-socthi-vms.ads, g-socthi-vxworks.ads, g-socthi.ads
4665 (GNAT.Sockets.Thin.C_Inet_Addr): Remove.
4666 (GNAT.Sockets.Thin.Inet_Aton): New function, imported from C library
4667 except for VMS where it is reimplemented in Ada using DECC$INET_ADDR.
4668 (GNAT.Sockets.Inet_Addr): Use inet_aton(3) instead of inet_addr(3).
4669
4670 * debug.adb: Fix typo
4671
4672 * gnat_rm.texi: Minor doc fix.
4673
4674 * sem_ch7.adb, freeze.adb: Minor reformatting
4675
3568b271
AC
46762009-04-20 Thomas Quinot <quinot@adacore.com>
4677
4678 * g-socket.ads: Add new constants:
4679 Loopback_Inet_Addr
4680 Unspecified_Group_Inet_Addr
4681 All_Hosts_Group_Inet_Addr
4682 All_Routers_Group_Inet_Addr
4683
4684 * s-oscons-tmplt.c, g-sttsne-vxworks.adb (System.OS_Constants): Add
4685 ERANGE (Result too large).
4686 (GNAT.Sockets.Thin.Task_Safe_NetDB, VxWorks version): Add missing
4687 propagation of errno to caller.
4688
46892009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4690
4691 * a-calend.adb, a-calend-vms.adb: Increase the number of leap seconds
4692 to 24. Increment Leap_Seconds_Count and add an entry to aggregate
4693 Leap_Second_Times.
4694
46952009-04-20 Gary Dismukes <dismukes@adacore.com>
4696
4697 * sem_elim.ads (Check_For_Eliminated_Subprogram): New procedure for
4698 checking for references to eliminated subprograms that should be
4699 flagged.
4700 (Eliminate_Error_Message): Update comment to say "references" rather
4701 than "calls" (since attribute cases are handled here as well).
4702
4703 * sem_elim.adb (Check_For_Eliminated_Subprogram): New procedure for
4704 checking for references to eliminated subprograms that should be
4705 flagged. Add with and use of Sem and Sem_Util.
4706
4707 * sem_res.adb (Resolve_Call): Reject calls to eliminated subprograms.
4708 Add with and use of Sem_Elim.
4709
4710 * sem_attr.adb (Analyze_Access_Attribute): Reject access attributes
4711 applied to eliminated subprograms.
4712 (Analyze_Attribute): Reject 'Address and 'Code_Address applied to
4713 eliminated subprograms.
4714 Add with and use of Sem_Elim.
4715
4716 * sem_disp.adb (Check_Dispatching_Call): Remove error check for calls
4717 to eliminated subprograms, now handled during Resolve_Call.
4718 Remove with and use of Sem_Elim.
4719
4720 * exp_disp.adb (Make_DT): Get Ultimate_Alias of primitive before
4721 testing Is_Eliminated, for proper handling of primitive derived from
4722 eliminated subprograms.
4723
47242009-04-20 Vincent Celier <celier@adacore.com>
4725
4726 * mlib-prj.adb (Build_Library): Use the shared library linker, if one
4727 has been declared (Library_GCC or Linker'Driver), for the driver name.
4728
4729 * prj-nmsc.adb (Process_Linker): If Library_GCC is not declared and
4730 Linker'Driver is, use Linker'Driver as the shared library linker.
4731 (Process_Project_Level_Simple_Attributes): Issue a warning if attribute
4732 Library_GCC is declared.
4733 (Check_Library_Attributes): Set up the shared linker driver: either
4734 Library_GCC or Linker'Driver. Issue a warning if Library_GCC is
4735 declared.
4736
6e55ac7a
TQ
47372009-04-20 Thomas Quinot <quinot@adacore.com>
4738
4739 * g-socket.ads (Send_Socket): Fix misleading comment.
4740
68218f7c
AC
47412009-04-20 Arnaud Charlet <charlet@adacore.com>
4742
4743 * switch-c.adb (Scan_Front_End_Switches): Disable inspector mode in
4744 ASIS mode.
4745
47462009-04-20 Geert Bosch <bosch@adacore.com>
4747
4748 * a-tifiio.adb (Put): Avoid generating too many digits for certain
4749 fixed types with smalls that are neither integer or the reciprocal
4750 of an integer.
4751
47522009-04-20 Bob Duff <duff@adacore.com>
4753
4754 * uname.ads: Minor comment fix.
4755
4756 * types.ads: Minor comment fix.
4757
262991d8
PO
47582009-04-20 Pascal Obry <obry@adacore.com>
4759
4760 * adaint.c (__gnat_get_libraries_from_registry): Fix code to
4761 avoid warning. At the same time fix a memory leak.
4762
4763 * osint.adb (Get_Libraries_From_Registry): Properly free memory
4764 returned by the above routine.
4765
d0f8d157
AC
47662009-04-20 Robert Dewar <dewar@adacore.com>
4767
4768 * s-conca5.adb, s-conca5.ads, s-conca7.adb, s-conca7.ads, s-conca9.adb,
4769 s-conca9.ads, rtsfind.ads, s-conca2.adb, s-conca2.ads, s-conca4.adb,
4770 s-conca4.ads, s-conca6.adb, s-conca6.ads, s-conca8.adb, s-conca8.ads,
4771 s-conca3.adb, s-conca3.ads (Str_Concat_Bounds_x): New functions.
4772
4773 * exp_ch4.adb (Expand_Concatenate): Minor code reorganization
4774
47752009-04-20 Pascal Obry <obry@adacore.com>
4776
4777 * initialize.c (__gnat_initialize): Add braces to kill warning.
4778
262991d8 4779 * adaint.c: Minor reformatting, remove trailing spaces.
d0f8d157 4780
34c25b32
AC
47812009-04-17 Arnaud Charlet <charlet@adacore.com>
4782
4783 * gcc-interface/Make-lang.in: Update dependencies.
4784
9549767b
AC
47852009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4786
4787 * adaint.h (__gnat_lwp_self): Declare on Linux.
4788
4789 * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'.
4790
47912009-04-20 Robert Dewar <dewar@adacore.com>
4792
4793 * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement
4794 front-end part of -fpreserve-control-flow switch.
4795
d7f94401
AC
47962009-04-20 Bob Duff <duff@adacore.com>
4797
4798 * rtsfind.adb: Minor comment fix
4799
48002009-04-20 Robert Dewar <dewar@adacore.com>
4801
4802 * exp_aggr.adb: Minor reformatting
4803 Minor code reorganization (use Nkind_In)
4804
4805 * g-socket.adb: Minor reformatting
4806
4807 * g-socket.ads: Minor comment fix
4808
4809 * s-auxdec.ads: Minor comment and organization update.
4810
4811 * s-auxdec-vms_64.ads: Minor comment and organization update.
4812
4813 * sem_ch10.adb: Minor addition of ??? comment
4814
4815 * sem_disp.adb: Minor reformatting
4816
f8b86c2d
AC
48172009-04-20 Ed Schonberg <schonberg@adacore.com>
4818
4819 * inline.adb (Add_Inlined_Subprogram): Do not place on the back-end
4820 list a caller of an inlined subprogram, if the caller itself is not
4821 called.
4822
48232009-04-20 Pascal Obry <obry@adacore.com>
4824
4825 * adaint.c: Disable use of ACL on network drives.
4826
48272009-04-20 Arnaud Charlet <charlet@adacore.com>
4828
4829 * gnat_ugn.texi: Add examples.
4830
efec4f2a
TQ
48312009-04-20 Thomas Quinot <quinot@adacore.com>
4832
4833 * g-socket.ads (Abort_Selector): Clarify documentation.
4834
ff2e7c1e
AC
48352009-04-20 Arnaud Charlet <charlet@adacore.com>
4836
4837 * opt.ads (Inspector_Mode): Update documentation of this flag.
4838
48392009-04-20 Thomas Quinot <quinot@adacore.com>
4840
4841 * g-socket.ads: Minor reformatting
4842
4843 * socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to
4844 consider S_resolvLib error codes since we only use the hostLib wrappers.
4845
48462009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4847
4848 * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
4849 of the Underlying_Record_View after that of the derived type.
4850
26a43556
AC
48512009-04-20 Arnaud Charlet <charlet@adacore.com>
4852
4853 * switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining
4854 in inspector mode.
4855
48562009-04-20 Javier Miranda <miranda@adacore.com>
4857
4858 * sem_ch6.adb (New_Overloaded_Entity): Minor reformating.
4859
4860 * sem_ch6.ads (Subtype_Conformant, Type_Conformant): Add missing
4861 documentation.
4862
4863 * exp_aggr.adb (Build_Record_Aggr_Code): Code cleanup.
4864
4865 * sem_disp.adb
4866 (Check_Dispatching_Operation): Set attribute Is_Dispatching_Operation
4867 in internally built overriding subprograms.
4868
48692009-04-20 Doug Rupp <rupp@adacore.com>
4870
4871 * s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types.
4872
4873 * s-auxdec.ads: Likewise
4874
48752009-04-20 Ed Schonberg <schonberg@adacore.com>
4876
4877 * sem_ch3.adb (Find_Type_Name): Reject the completion of a private
4878 type by an interface.
4879
4880 * exp_ch6.adb (Expand_Call): Inline To_Address unconditionally, to
4881 minimze difference in expanded tree when compiled as spec of the main
4882 unit, or as a spec in the context of another unit.
4883
3f25c54d
AC
48842009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4885
4886 * a-calend.adb: Remove types char_Pointer, int, tm and tm_Pointer.
4887 (localtime_tzoff): This routine no longer accepts an actual of type
4888 tm_Pointer.
4889 (UTC_Time_Offset): Remove local variable Secs_TM.
4890
4891 * sysdep.c (__gnat_localtime_tzoff): This routine no longer accepts an
4892 actual of type struct tm*. Add local variable of type struct tm for all
4893 targets that provide localtime_r and need to invoke it.
4894
48952009-04-20 Thomas Quinot <quinot@adacore.com>
4896
4897 * s-oscons-tmplt.c, g-socket.adb, g-socket.ads
4898 (GNAT.Sockets.Resolve_Error): Add case of EPIPE
4899 Add case of EAGAIN for platforms where it is not equal to EWOULDBLOCK
4900
8dbf3473
AC
49012009-04-20 Robert Dewar <dewar@adacore.com>
4902
4903 * sem_ch3.adb: Minor reformatting
4904
4905 * lib-load.adb: Minor reformatting
4906
4907 * sem_ch4.adb: Minor reformatting
4908
49092009-04-20 Robert Dewar <dewar@adacore.com>
4910
4911 * namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec
4912 (equal values => False).
4913
49142009-04-20 Ed Schonberg <schonberg@adacore.com>
4915
4916 * exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls
4917 to null procedures can be inlined unconditionally.
4918
56fe7b05
EB
49192009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4920
4921 * gcc-interface/trans.c (call_to_gnu): When creating the copy for a
4922 non-addressable parameter passed by reference, do not convert the
4923 actual if its type is already the nominal type, unless it is of
4924 self-referential size.
4925
9fcf2a0b
AC
49262009-04-20 Arnaud Charlet <charlet@adacore.com>
4927
4928 * gnat_ugn.texi: Fix typos.
4929
49302009-04-20 Robert Dewar <dewar@adacore.com>
4931
4932 * debug.adb, gnat1drv.adb, sem_ch13.adb: Add circuitry to
4933 Validate_Unchecked_Warnings to suppress warnings about size or
4934 alignment or extra bits if either type involved has pragma Warnings
4935 (Off) set for the type entity.
4936
f7ebc6a8
EB
49372009-04-19 Eric Botcazou <ebotcazou@adacore.com>
4938
4939 * gcc-interface/trans.c (gigi): Make the special IA-64 descriptor type
4940 a builtin type and give it a name.
4941
105ab5db
DN
49422009-04-17 Diego Novillo <dnovillo@google.com>
4943
4944 * gcc-interface/misc.c (gnat_expand_expr): Remove.
4945 (LANG_HOOKS_EXPAND_EXPR): Remove.
4946
03b64787
AC
49472009-04-17 Robert Dewar <dewar@adacore.com>
4948
4949 * sem_ch3.adb: Minor reformatting
4950
49512009-04-17 Pascal Obry <obry@adacore.com>
4952
4953 * adaint.c: Add __gnat_use_acl global variable to control use of ACL.
4954
054275e4
ES
49552009-04-17 Ed Schonberg <schonberg@adacore.com>
4956
4957 * sem_ch3.adb (Build_Derived_Enumeration_Type): Diagnose properly
4958 illegal constraints on type derived from formal discrete types.
4959
aed6fda8
TQ
49602009-04-17 Thomas Quinot <quinot@adacore.com>
4961
4962 PR ada/35953
4963
4964 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
4965 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
4966 g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb,
4967 g-socket.ads (GNAT.Sockets.Thin.C_Send,
4968 GNAT.Sockets.Thin.Syscall_Send): Remove unused subprograms.
4969 Replace calls to send(2) with equivalent sendto(2) calls.
4970 (GNAT.Sockets.Send_Socket): Factor common code in inlined subprogram.
4971 (GNAT.Sockets.Write): Account for the case of hyper-empty arrays, do not
4972 report an error in that case. Factor code common to the two versions
4973 (datagram and stream) in common routine Stream_Write.
4974
c5d91669
AC
49752009-04-17 Robert Dewar <dewar@adacore.com>
4976
4977 * exp_disp.adb: Minor reformatting
4978 Minor code reorganization (use Nkind_In)
4979
4980 * prepcomp.adb: Minor reformatting
4981
4982 * sem_ch3.adb: Minor reformatting
4983
4984 * sem_res.adb: Minor comment addition
4985
4986 * exp_ch5.adb (Expand_Assign_Array): Use Has_Address_Clause to test
4987 for address clause
4988
4989 * lib-xref.adb (Generate_Reference): Exclude recursive calls from
4990 setting Is_Referenced
4991
4992 * types.ads: Minor reformatting
4993
49942009-04-17 Arnaud Charlet <charlet@adacore.com>
4995
4996 * gnat_ugn.texi: Initial documentation on binding generator.
4997
39f346aa
ES
49982009-04-17 Ed Schonberg <schonberg@adacore.com>
4999
5000 * einfo.ads, einfo.adb: New attribute Underlying_Record_View, to handle
5001 type extensions whose parent is a type with unknown discriminants.
5002
5003 * exp_aggr.adb (Expand_Record_Aggregate): If the type of an extension
5004 aggregate has unknown discriminants, use the Underlying_Record_View to
5005 obtain the discriminants of the ancestor part.
5006
5007 * exp_disp.adb (Build_Dispatch_Tables): Types that are
5008 Underlying_Record_Views share the dispatching information of the
5009 original record extension.
5010
5011 * exp_ch3.adb (Expand_Record_Extension): If the type inherits unknown
5012 discriminants, propagate dispach table information to the
5013 Underlying_Record_View.
5014
5015 * sem_ch3.adb (Build_Derived_Private_Type): If parent type has unknown
5016 discriminants and declaration is not a completion, generate
5017 Underlying_Record_View to provide proper discriminant information to
5018 the front-end and to gigi.
5019
8c64de1e
RD
50202009-04-17 Robert Dewar <dewar@adacore.com>
5021
5022 * s-conca5.adb, g-sercom.adb, s-conca5.ads, s-conca7.adb, exp_imgv.adb,
5023 s-conca7.ads, s-crc32.adb, s-crc32.ads, s-conca9.adb, s-conca9.ads,
5024 s-addope.adb, i-cstrin.ads, s-addope.ads, s-carun8.adb, s-carun8.ads,
5025 g-htable.ads, g-hesora.adb, g-hesora.ads, s-htable.adb, s-htable.ads,
5026 s-conca2.adb, s-conca2.ads, a-except.adb, s-conca4.adb, a-except.ads,
5027 s-conca4.ads, s-except.adb, s-except.ads, s-conca6.adb, s-conca6.ads,
5028 g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads, s-conca8.adb,
5029 s-conca8.ads, g-byorma.adb, g-byorma.ads, s-memory.adb, s-memory.ads,
5030 g-speche.adb, g-speche.ads, g-stsifd-sockets.adb, exp_dist.adb,
5031 s-imgenu.adb, s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-exctab.adb,
5032 s-exctab.ads, s-imenne.adb, s-imenne.ads, s-casuti.adb, osint.adb,
5033 s-assert.adb, s-casuti.ads, s-assert.ads, s-os_lib.adb, s-conca3.adb,
5034 s-conca3.ads: Remove unneeded pragma Warnings
5035
74e63df1
RD
50362009-04-17 Robert Dewar <dewar@adacore.com>
5037
5038 * g-moreex.adb: Add comments.
5039
5040 * s-auxdec.ads: Add ??? comment for uncommented pragma Warnings (Off)
5041
5042 * s-auxdec-vms_64.ads: Add ??? comment for uncommented pragma
5043 Warnings (Off)
5044
5045 * prepcomp.adb: Add ??? comment
5046
5047 * a-tasatt.adb: Minor reformatting
5048
5049 * g-trasym-vms-alpha.adb: Add ??? comment
5050
5051 * g-trasym-vms-ia64.adb: Add ??? comment
5052
5053 * xoscons.adb: Minor reformatting
5054
5055 * s-tassta.adb: Minor reformatting
5056
5057 * s-scaval.adb: Add ??? comment
5058
5059 * stand.ads: Minor code clean up (remove junk with of Namet)
5060
5061 * s-strcom.adb, s-strcom.ads, s-string.adb, s-string.ads, s-sopco3.adb,
5062 s-sopco3.ads, s-strops.adb, s-strops.ads, s-sopco5.adb, s-sopco5.ads,
5063 s-wchcnv.adb, s-wchcnv.ads, s-ststop.adb, s-ststop.ads, s-soflin.adb,
5064 s-soflin.ads, s-traceb.adb, s-traceb.ads, s-traent.adb, s-traent.ads,
5065 s-secsta.adb, s-secsta.ads, s-utf_32.adb, s-utf_32.ads, s-wchcon.adb,
5066 s-wchjis.adb, s-wchcon.ads, s-wchjis.ads, s-sopco4.adb, s-sopco4.ads,
5067 s-stache.adb, s-stache.ads, s-stoele.adb, s-stoele.ads, s-stalib.adb,
5068 s-stalib.ads, s-os_lib.ads, s-purexc.ads: Remove no longer needed
5069 Warnings off pragmas.
5070
df416fb0
AC
50712009-04-17 Pascal Obry <obry@adacore.com>
5072
5073 * initialize.c: Fix test for reallocating the arguments array.
5074
50752009-04-17 Geert Bosch <bosch@adacore.com>
5076
5077 * exp_fixd.adb (Expand_Convert_Float_To_Fixed): Have float to fixed
5078 conversion truncate only for decimal fixed point types.
5079
50802009-04-17 Jerome Lambourg <lambourg@adacore.com>
5081
5082 * g-comlin.adb (Initialize_Scan_Option): Make sure the sections are
5083 reinitialized.
5084
01cd0938
AC
50852009-04-17 Robert Dewar <dewar@adacore.com>
5086
5087 * exp_ch5.adb (Expand_Assign_Array): Do not set Forwards_OK and
5088 Backwards_OK if either operand has an address clause.
5089
50902009-04-17 Pascal Obry <obry@adacore.com>
5091
5092 * initialize.c: Code clean up, use realloc.
5093
46e26fe3
PO
50942009-04-17 Pascal Obry <obry@adacore.com>
5095
5096 * initialize.c: Do not get Unicode command line if Unicode support not
5097 activated.
5098 Add support for wildcard expansion for Unicode parameters on Win32.
5099
5100 * mingw32.h: Add missing macros when Unicode support not activated.
5101
b20de9b9
AC
51022009-04-17 Javier Miranda <miranda@adacore.com>
5103
5104 * sem_ch6.adb (Check_Anonymous_Return): Add missing checks to
5105 avoid generating code that references the Current_Master
5106 when compiling without tasks.
5107
51082009-04-17 Vincent Celier <celier@adacore.com>
5109
5110 * prj-attr.adb: New project level attribute Target
5111
5112 * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
5113 attribute Target
5114
5115 * prj.ads (Project_Configuration): New component Target
5116
a8f59a33
AC
51172009-04-17 Thomas Quinot <quinot@adacore.com>
5118
5119 * exp_ch7.adb (Expand_Ctrl_Function_Call): Remove incorrect special
5120 case for the case of an aggregate component, the attach call for the
5121 result is actually needed.
5122
5123 * exp_aggr.adb (Backend_Processing_Possible): Backend processing for
5124 an array aggregate must be disabled if the component type requires
5125 controlled actions.
5126
5127 * exp_ch3.adb: Minor reformatting
5128
51292009-04-17 Bob Duff <duff@adacore.com>
5130
5131 * output.ads (Indent,Outdent): New procedures for indenting the output.
5132 (Write_Char): Correct comment -- LF _is_ allowed.
5133
5134 * output.adb (Indent,Outdent): New procedures for indenting the output.
5135 Keep track of the indentation level, and make sure it doesn't get too
5136 high.
5137 (Flush_Buffer): Insert spaces at the beginning of each line, if
5138 indentation level is nonzero.
5139 (Save_Output_Buffer,Restore_Output_Buffer): Save and restore the current
5140 indentation level.
5141 (Set_Standard_Error,Set_Standard_Output): Remove superfluous
5142 "Next_Col := 1;". Flush_Buffer does that.
5143
5144 * sem_ch6.adb, sem_ch7.adb (Debug_Flag_C): Reorganize the output
5145 controlled by the -gnatdc switch. It now occurs on entry/exit to the
5146 relevant analysis routines, and calls Indent/Outdent to make the
5147 indentation reflect the nesting level. Add "helper" routines, since
5148 otherwise lots of "return;" statements would skip the debugging output.
5149
51502009-04-17 Arnaud Charlet <charlet@adacore.com>
5151
5152 * s-taprop-tru64.adb, s-taprop-vms.adb, s-taprop-linux.adb,
5153 s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop-hpux-dce.adb,
5154 s-taprop-posix.adb (Suspend_Until_True): Protect against early wakeup.
5155
32beb1f3
AC
51562009-04-17 Thomas Quinot <quinot@adacore.com>
5157
5158 * exp_aggr.adb: Minor code reorganization, no behaviour change.
5159
51602009-04-17 Ed Schonberg <schonberg@adacore.com>
5161
5162 * sem_ch8.adb (Use_One_Type): Handle properly a redundant use type
5163 clause in a unit that is a package body or a subunit, when the previous
5164 clause appears in a spec or a parent.
5165
36c73552
AC
51662009-04-17 Thomas Quinot <quinot@adacore.com>
5167
5168 * sinfo.ads, exp_aggr.adb, exp_aggr.ads: Minor reformatting
5169
5170 * exp_ch7.adb: Minor reformatting
5171
51722009-04-17 Bob Duff <duff@adacore.com>
5173
5174 * exp_ch4.adb (Expand_Allocator_Expression): In an initialized
5175 allocator, check that the expression of the qualified expression obeys
5176 the constraints of the subtype of the qualified expression.
5177
51782009-04-17 Thomas Quinot <quinot@adacore.com>
5179
5180 * sprint.adb (Write_Itype): Add handling of enumeration subtypes.
5181
cac5a801
AC
51822009-04-17 Ed Schonberg <schonberg@adacore.com>
5183
5184 * exp_ch4.adb (Expand_Allocator_Expression): Apply constraint check to
5185 aggregate, using context imposed by subtype mark in allocator.
5186
51872009-04-17 Pascal Obry <obry@adacore.com>
5188
5189 * gnat_rm.texi: Document GNAT_CODE_PAGE environment variable
5190
03f050b6
AC
51912009-04-17 Nicolas Roche <roche@adacore.com>
5192
5193 * initialize.c (__gnat_initialize): remove MAX_PATH limitation on each
5194 argument length.
5195
51962009-04-17 Gary Dismukes <dismukes@adacore.com>
5197
5198 * sem_elim.adb (Eliminate_Error_Msg): Minor change to error message to
5199 cover both calls and attribute references ("call" => "reference").
5200
52012009-04-17 Ed Schonberg <schonberg@adacore.com>
5202
5203 * sem_ch3.adb (Analyze_Subtype_Declaration): A subtype of an access
5204 type for which Storage_Size is set to 0 is legal in a pure unit.
5205
bf327c92
AC
52062009-04-17 Thomas Quinot <quinot@adacore.com>
5207
5208 * exp_ch7.adb: Minor reformatting
5209
52102009-04-17 Robert Dewar <dewar@adacore.com>
5211
5212 * restrict.adb (Check_Restriction_No_Dependence): Don't check
5213 restriction if outside main extended source unit.
5214
5215 * sem_ch10.adb (Analyze_With_Clause): Check No_Dependence restriction
5216 for parents of child units as well as the child unit itself.
5217
52182009-04-17 Bob Duff <duff@adacore.com>
5219
5220 * checks.ads: Minor comment fix
5221
5222 * exp_aggr.ads: Minor comment fix
5223
52242009-04-17 Nicolas Roche <roche@adacore.com>
5225
5226 * adaint.c: Improve cross compiler detection and handling.
5227
ffec8e81
AC
52282009-04-17 Eric Botcazou <ebotcazou@adacore.com>
5229
5230 * exp_ch4.adb (Expand_Concatenation): Do not use calls at -Os.
5231
52322009-04-17 Pascal Obry <obry@adacore.com>
5233
5234 * mingw32.h: Add S2WSC and WS2SC macros to convert to/from
5235 CurrentCodePage.
5236
5237 * adaint.h: Encoding_Unspecified is now defined. Corresponds to the
5238 value when no encoding form paramter is set on Text_IO services.
5239
5240 * adaint.c: CurrentCodePage new variable on Windows.
5241 Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
5242 ones.
5243
5244 * mkdir.c: Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
5245 ones.
5246
5247 * initialize.c: Initialize CurrentCodePage depending on GNAT_CODE_PAGE
5248 environment variable value. Default is UTF-8.
5249
5250 * s-crtl.ads: Filename_Encoding add Unspecified in the enumeration type.
5251 fopen and freopen encoding parameter is now set to Unspecified.
5252 The default value is in this case UTF-8 (as it was before) but
5253 use the new macros that convert to/from the code page set
5254 at runtime (CurrentCodePage).
5255
5256 * s-fileio.adb: When no encoding specified use Unspecified value.
5257
52582009-04-17 Ed Schonberg <schonberg@adacore.com>
5259
5260 * atree.adb, atree.ads: Remove dead code.
5261
432e3422
AC
52622009-04-17 Arnaud Charlet <charlet@adacore.com>
5263
5264 * gcc-interface/Make-lang.in: Update dependencies.
5265
f3b01cd9
AC
52662009-04-17 Ed Schonberg <schonberg@adacore.com>
5267
5268 * sem_ch3.adb (Access_Subprogram_Definition): Additional checks on
5269 illegal uses of incomplete types in formal parts and return types.
5270
5271 * sem_ch6.adb (Process_Formals): Taft-amendment types are legal in
5272 access to subprograms.
5273
5274 * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to use
5275 Taft-amendment types as the return type of an access_to_function type.
5276
5277 * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
5278 type for access_to_subprograms. The check is performed on package exit.
5279
52802009-04-17 Ed Schonberg <schonberg@adacore.com>
5281
5282 * atree.ads, atree.adb: Move New_Copy_Tree.to sem_util.
5283
5284 * nlists.ads, nlists.adb: Move New_Copy_List to sem_util.
5285
5286 * lib-load.adb: Use Copy_Separate_Tree rather than New_Copy_Tree
5287
5288 * sem_util.ads, sem_util.adb: New_Copy_Tree and New_Copy_List belong in
5289 semantic units, because the handling of itypes in the copied tree
5290 requires semantic information that does not belong in atree.
5291
52922009-04-17 Robert Dewar <dewar@adacore.com>
5293
5294 * par-ch6.adb: Minor reformatting
5295
5296 * prj.adb: Minor reformatting
5297
618fb570
AC
52982009-04-17 Gary Dismukes <dismukes@adacore.com>
5299
5300 * par-ch6.adb (P_Subprogram): Overriding indicators should be allowed
5301 on protected subprogram bodies, so exclude the case where Pf_Flags is
5302 Pf_Decl_Pbod from the error check.
5303
5304 * par-ch9.adb (P_Protected_Operation_Items): Permit overriding
5305 indicators on subprograms in protected bodies, and proceed with parsing
5306 the subprogram.
5307
5308 * sem_ch6.adb (Verify_Overriding_Indicator): Exclude protected
5309 subprograms from the check for primitiveness on subprograms with
5310 overriding indicators.
5311 (Check_Overriding_Indicator): Include protected subprograms in the
5312 style check for missing overriding indicators.
5313
53142009-04-17 Tristan Gingold <gingold@adacore.com>
5315
5316 * init.c: Fix stack checking for x86 Darwin.
5317
53182009-04-17 Vincent Celier <celier@adacore.com>
5319
5320 * prj-attr.adb: New project level attribute Object_File_Suffix
5321 (<language>).
5322
5323 * prj-nmsc.adb (Add_Source): Use the object file suffix to get the
5324 object file name
5325 (Process_Compiler): Process attribute Object_File_Suffix
5326
5327 * prj.adb (Object_Name): Use suffix Object_File_Suffix instead of
5328 platform suffix, when specified.
5329
5330 * prj.ads (Language_Config): New component Object_File_Suffix,
5331 defaulted to No_Name.
5332 (Object_Name): New parameter Object_File_Suffix, defaulted to No_Name
5333
5334 * snames.ads-tmpl: New standard name Object_File_Suffix
5335
93bcda23
AC
53362009-04-17 Robert Dewar <dewar@adacore.com>
5337
5338 * gnat_rm.texi: Add documentation about No_Streams restriction
5339
5340 * sem_attr.adb (Check_Stream_Attribute): Exclude implicit stream
5341 attributes when checking No_Streams restriction.
5342
53432009-04-17 Thomas Quinot <quinot@adacore.com>
5344
5345 * rtsfind.ads (RE_Request_Destroy): New PolyORB s-parint entity.
5346
5347 * exp_dist.adb (PolyORB_Support.Build_General_Calling_Stubs): Add
5348 missing calls to RE_Request_Destroy to deallocate request objects after
5349 use.
5350
53512009-04-17 Nicolas Setton <setton@adacore.com>
5352
5353 * link.c: Fix support for passing a response file under Darwin.
5354
53552009-04-17 Emmanuel Briot <briot@adacore.com>
5356
5357 * prj.adb (Free): new subprogram.
5358
53592009-04-17 Ed Schonberg <schonberg@adacore.com>
5360
5361 * sem_ch3.adb: additional initialization on incomplete subtypes.
5362
5363 * sem_ch6.adb (Process_Formals): if the subprogram is in the private
5364 part and one of the formals is an incomplete tagged type, attach to
5365 list of private dependends of the type for later validation.
5366
5367 * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to declare
5368 primitive operations of a Taft-amendmment type.
5369
5370 * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
5371 type. The check is performed on package exit, possibly after the
5372 subprogram is frozen.
5373
53742009-04-17 Vincent Celier <celier@adacore.com>
5375
5376 * prj-nmsc.adb (Get_Directories): Get the object and exec directory
5377 before looking for source directories, but make sure that there are nil
5378 if they are not explicitely declared and there is explicitely no
5379 sources in the project.
5380
ba4a2f78 53812009-04-17 Pascal Obry <obry@adacore.com>
78246a6e 5382
ba4a2f78 5383 * initialize.c: Set gnat_argv with UTF-8 encoded strings on Windows.
78246a6e 5384
ba4a2f78 5385 * init.c: Fix minor typo and style fix.
ee00428a 5386
ba4a2f78 53872009-04-17 Robert Dewar <dewar@adacore.com>
ee00428a 5388
ba4a2f78 5389 * a-except.adb, a-except-2005.adb: Add PE_Address_Of_Intrinsic
ee00428a 5390
ba4a2f78
AC
5391 * sem_attr.adb (Analyze_Attribute, case Address): Use
5392 PE_Address_Of_Intrinsic.
5393
5394 * types.ads: Add PE_Address_Of_Intrinsic
5395
5396 * types.h: Add PE_Address_Of_Intrinsic
5397
53982009-04-17 Nicolas Setton <setton@adacore.com>
5399
5400 * gcc-interface/Makefile.in: Under darwin, build shared libraries
5401 with install_name starting with "@rpath/".
ee00428a
AC
5402
54032009-04-17 Nicolas Setton <setton@adacore.com>
5404
5405 * link.c: Add darwin section
5406
9fbb3ae6
AC
54072009-04-16 Robert Dewar <dewar@adacore.com>
5408
5409 * g-pehage.adb: Minor reformatting
5410
5411 * sem_ch12.adb: Minor reformatting
5412
5413 * exp_dist.adb: Minor reformatting
5414
5415 * bindgen.adb: Minor style fixes.
5416
54172009-04-16 Ed Schonberg <schonberg@adacore.com>
5418
5419 * sem_eval.adb (Eval_Indexed_Component): Extend constant-folding of
5420 indexed components to the case where the prefix is a static string
5421 literal.
5422
54232009-04-16 Javier Miranda <miranda@adacore.com>
5424
5425 * exp_ch3.adb (Expand_N_Object_Declaration): In case of build-in-place
5426 objects avoid any further expansion of the expression initializing the
5427 object.
5428
c1c5e0fa
AC
54292009-04-16 Ed Schonberg <schonberg@adacore.com>
5430
5431 * sem_ch12.adb (Preanalyze_Actuals): If the instance is a child unit
5432 that hides an outer homograph, make that homograph invisible when
5433 analyzing the actuals, to to prevent illegal direct visibility on it.
5434
54352009-04-16 Eric Botcazou <ebotcazou@adacore.com>
5436
5437 * g-pehage.adb (Initialize): Fix off-by-one error.
5438
d15d61c6
AC
54392009-04-16 Tristan Gingold <gingold@adacore.com>
5440
5441 * init.c: Detect real stack overflow on Darwin.
5442
5443 * system-darwin-x86.ads: Use stack probing on darwin x86.
5444
54452009-04-16 Ed Schonberg <schonberg@adacore.com>
5446
5447 * sem_attr.adb (Analyze_Attribute, case 'Address): It is illegal to
5448 take the address of an intrinsic subprogram.
5449
0a0a18c3
AC
54502009-04-16 Arnaud Charlet <charlet@adacore.com>
5451
5452 * gcc-interface/Makefile.in: Change g-trasym to g-trasym-unimplemented
5453 for the targets where GNAT.Traceback.Symbolic is not supported.
5454
d15d61c6
AC
54552009-04-16 Vincent Celier <celier@adacore.com>
5456
5457 * g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: New file.
5458
5459 * g-trasym.ads: Update comments.
5460
54612009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
5462
5463 * tracebak.c (STOP_FRAME): Verify validity of the current address
5464 before dereferencing.
5465
b61ebe4f
AC
54662009-04-16 Ed Schonberg <schonberg@adacore.com>
5467
5468 * sprint.adb (Write_Itype): If the itype is an array subtype, preserve
5469 the original location of the index expressions and the index subtypes,
5470 to prevent spurious out-of-scope references in gigi.
5471
54722009-04-16 Tristan Gingold <gingold@adacore.com>
5473
5474 * init.c, s-osinte-darwin.ads, system-darwin-x86_64.ads:
5475 Add support for stack checking on darwin.
5476
54772009-04-16 Vincent Celier <celier@adacore.com>
5478
5479 * prj-attr.adb: New attribute Runtime_Source_Dir
5480
5481 * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Process
5482 attribute Runtime_Source_Dir.
5483 (Check_Naming_Schemes): Give default values to out parameters to avoid
5484 invalid data.
5485
5486 * prj.ads (Language_Config): New component Runtime_Source_Dir
5487
5488 * snames.ads-tmpl: New standard name Runtime_Source_Dir
5489
468ee337
PO
54902009-04-16 Pascal Obry <obry@adacore.com>
5491
5492 * adaint.h, adaint.c (__gnat_rmdir): New routine.
5493 Simple wrapper routines used to convert to proper encoding on
5494 Windows.
5495
5496 * s-crtl.ads: Use __gnat_rmdir instead of direct call to the C library.
5497
5498 * g-dirope.adb (Remove_Dir): Fix a bug, the root directory was removed
5499 twice.
5500
bca17d51
PO
55012009-04-16 Pascal Obry <obry@adacore.com>
5502
5503 * s-crtl.ads, s-os_lib.adb: Minor code clean-up.
5504
4e0079cc
AC
55052009-04-16 Thomas Quinot <quinot@adacore.com>
5506
5507 * snames.ads-tmpl (Name_Defined): New predefined name for use by the
5508 integrated preprocessor.
5509
5510 * prep.ads, prep.adb (Setup_Hooks): New subprogram.
5511 (Initialize): Split into two subprograms, Initialize (to be called
5512 prior to compiler command line processing) and Setup_Hooks (to be called
5513 later on when the first source file is loaded).
5514
5515 * gprep.adb: Change call to Prep.Initialize to call to Prep.Setup_Hooks.
5516 Add call to Prep.Initialize.
5517
5518 * sinput-l.adb, prepcomp.adb: Change call to Prep.Initialize to call
5519 to Prep.Setup_Hooks.
5520
55212009-04-16 Pascal Obry <obry@adacore.com>
5522
5523 * adaint.h, adaint.c (__gnat_chdir): New routine.
5524 Simple wrapper routines used to convert to proper encoding on
5525 Windows.
5526
5527 * s-crtl.ads: Use __gnat_chdir instead of direct call to the C library.
5528
5529 * a-direct.adb, g-dirope.adb: Use chdir from System.CRTL.
5530
cbbdee52
AC
55312009-04-16 Quentin Ochem <ochem@adacore.com>
5532
5533 * sinput-p.adb (Clear_Source_File_Table): Use Sinput.Initialize instead
5534 of Source.Init.
5535
55362009-04-16 Eric Botcazou <ebotcazou@adacore.com>
5537
5538 * a-convec.ads (Is_Empty): Mark inline.
5539
55402009-04-16 Nicolas Roche <roche@adacore.com>
5541
5542 * init.c (__gnat_init_float): Initialize FPU on x86_64 windows
5543
55442009-04-16 Thomas Quinot <quinot@adacore.com>
5545
5546 * prepcomp.adb: Minor reformatting
5547
7e8ed0a6
AC
55482009-04-16 Jerome Lambourg <lambourg@adacore.com>
5549
5550 * sem_prag.adb (Process_Import_Or_Interface): With .NET,
5551 Access_Subprogram types can also be imported.
5552 (Check_Form_Of_Interface_Name): Accept '/' character in entity CIL
5553 names.
5554
55552009-04-16 Ed Schonberg <schonberg@adacore.com>
5556
5557 * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
5558 preserve homonym chain when the declaration is rewritten into a
5559 renaming declaration, in order to preserve visibility structure.
5560
540b5d9c
AC
55612009-04-16 Jerome Lambourg <lambourg@adacore.com>
5562
5563 * sem_prag.adb (Analyze_Pragma): Make sure that pragma pack is not
5564 taken into account for VM targets.
5565
55662009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
5567
5568 * g-calend.ads, g-calend.adb (Week_In_Year): Now calls
5569 Year_Week_In_Year.
5570 (Year_Week_In_Year): New routine which contains the original code from
5571 Week_In_Year. Add the missing special case for January 1st falling on
5572 a Monday.
5573
dae4faf2
TQ
55742009-04-16 Thomas Quinot <quinot@adacore.com>
5575
5576 * exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic
5577 actual type, use the base type to build the To_Any function.
5578 (Build_From_Any_Function): Remove junk, useless subtype conversion.
5579
55802009-04-16 Thomas Quinot <quinot@adacore.com>
5581
5582 * exp_ch9.adb, exp_code.adb, tbuild.adb, sem_case.adb,
5583 restrict.adb: Minor code reorganization (use
5584 Add_{Char,Str}_To_Name_Buffer instead of inlining it by hand).
5585
2794f022
AC
55862009-04-16 Bob Duff <duff@adacore.com>
5587
5588 * exp_ch6.ads, exp_ch6.adb (Is_Build_In_Place_Function_Return): Remove,
5589 unused.
5590
55912009-04-16 Thomas Quinot <quinot@adacore.com>
5592
5593 * sem_ch4.adb: Minor reformatting
5594
5595 * adaint.c: Remove junk duplicated code.
5596
5597 * sem_ch3.adb: Minor reformatting
5598
5599 * exp_dist.adb: Minor comment rewording
5600
a8e65aa5
AC
56012009-04-16 Robert Dewar <dewar@adacore.com>
5602
5603 * gnat_rm.texi: Document effect of Assume_No_Invalid_Values and -gnatVa
5604 used together.
5605
56062009-04-16 Ed Schonberg <schonberg@adacore.com>
5607
5608 * sem_ch4.adb (Find_Equality_Types): Filter out types that are not
5609 usable before calling Add_One_Interp, to resolve spurious ambiguities.
5610
bded454f
RD
56112009-04-16 Robert Dewar <dewar@adacore.com>
5612
b0fbf3c0
RD
5613 * Make-lang.in: Add entries for s-conca?.o
5614
bded454f
RD
5615 * Makefile.rtl: Add entries for s-conca?
5616
5617 * debug.adb: Add debug flags -gnatd.c and -gnatd.C to control behavior
5618 of concatenation expansion
5619
5620 * exp_ch4.adb (Expand_Concatenation): Generate calls for certain
5621 string cases instead of expanding assignments inline.
5622
5623 * opt.ads (Optimize_Size): New flag
5624
5625 * s-conca2.ads, s-conca2.adb, s-conca3.adb, s-conca3.ads,
5626 s-conca4.adb, s-conca4.ads, s-conca5.adb, s-conca5.ads, s-conca6.adb,
5627 s-conca6.ads, s-conca7.ads, s-conca7.adb, s-conca8.adb, s-conca8.ads,
5628 s-conca9.adb, s-conca9.ads: New file.
5629
4a3b249c
RD
56302009-04-16 Robert Dewar <dewar@adacore.com>
5631
5632 * exp_ch6.adb: Add comments
5633
5634 * rtsfind.ads: Add entries for s-conca? routines
5635
e8e028cb 56362009-04-16 Arnaud Charlet <charlet@adacore.com>
14814170
AC
5637
5638 * gcc-interface/Make-lang.in: Update dependencies.
5639
5640 * gcc-interface/Makefile.in: Update translation for vms.
5641
3204b9cd
AC
56422009-04-16 Ed Schonberg <schonberg@adacore.com>
5643
5644 * sem_ch12.adb (Map_Formal_Package_Entities): renamed from Map_Entities
5645 and made global, to be used when installing parents of a child
5646 instance, to provide mappings for entities declared in formal packages
5647 of ancestor units. Now called from Install_Formal_Packages.
5648
56492009-04-16 Doug Rupp <rupp@adacore.com>
5650
5651 * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events with others
5652 notation for clarity.
5653
5654 * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
5655 s-taprop-mingw.adb, s-taprop-linux.adb, s-taprop-solaris.adb,
5656 s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-posix.adb
5657 (Initialize): Initialize Known_Tasks with Environment task.
5658
5659 * s-taskin.ads (Task_States): Move new states to end for the sake of
5660 GDB compatibility.
5661
5662 * s-tassta.adb (Task_Wrapper): Fix comment about Enter_Task.
5663
f17f3601
ES
56642009-04-16 Ed Schonberg <schonberg@adacore.com>
5665
5666 * exp_ch9.adb (Expand_N_Protected_Type_Declaration): If a protected
5667 operation has an inline pragma, propagate the flag to the internal
5668 unprotected subprogram.
5669
5e44c5ea
DR
56702009-04-16 Doug Rupp <rupp@adacore.com>
5671
5672 * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-mingw.adb,
5673 s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-irix.adb,
5674 s-taprop-hpux-dce.adb, s-taprop-posix.adb
5675 (Enter_Task): Move Known_Tasks initialization to s-tassta.adb
5676
5677 * s-taprop-vms.adb (Enter_Task): Likewise.
5678 (Initialize): Import DBEXT, Debug_Register. Register DBGEXT callback.
5679
5680 * s-tassta.adb (Activate_Tasks): After task creation set state to
5681 Activating, vice Runnable. Initialize Known_Tasks, moved here from
5682 s-taprop.adb (Enter_Task). Set Debug_Event_Activating for debugger.
5683 Set state to Runnable after above.
5684 (Task_Wrapper): Set Debug_Event_Run. In exception block set
5685 Debug_Event_Terminated.
5686
5687 * s-taskin.ads (Task_States): Add new states Activiting and
5688 Activator_Delay_Sleep.
5689 (Bit_Array, Debug_Event_Array): New types.
5690 (Global_Task_Debug_Event_Set: New flag.
5691 (Common_ATCB): New field Debug_Events.
5692
5693 * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events.
5694
5695 * s-tasren.adb (Timed_Selective_Wait): Set Activator_Delay_Sleep vice
5696 Activator_Sleep.
5697
5698 * s-tasini.adb (Locked_Abort_To_Level): Add case alternatives for when
5699 Activating and when Acceptor_Delay_Sleep.
5700
5701 * s-tasdeb.ads: Add constants for Debug_Events.
5702 (Debug_Event_Kind_Type): New subtype.
5703 (Signal_Debug_Event): New subprogram.
5704
5705 * s-tasdeb.adb (Signal_Debug_Event): New null subprogram.
5706
205c14b0
TQ
57072009-04-16 Thomas Quinot <quinot@adacore.com>
5708
5709 * sem_elim.adb: Minor reformatting
5710
5711 * freeze.adb: Minor reformatting
5712
5713 * exp_ch4.adb: Minor reformatting
5714
b4763f5c
AC
57152009-04-16 Emmanuel Briot <briot@adacore.com>
5716
5717 * prj-nmsc.adb (Path_Name_Of): fix memory leak
5718
57192009-04-16 Robert Dewar <dewar@adacore.com>
5720
5721 * sinfo.ads (Backwards_OK, Forwards_OK): Clarify documentation
5722
57232009-04-16 Vincent Celier <celier@adacore.com>
5724
5725 * fmap.adb (Initialize): Show the current line when the mapping file
5726 is detected as "incorrectly formatted".
5727
57282009-04-16 Robert Dewar <dewar@adacore.com>
5729
5730 * sem_ch12.adb: Minor reformatting
5731
5732 * sem_ch5.adb: Minor comment addition
5733
5734 * sem_util.adb: Minor reformatting
5735
5736 * sinput-p.adb: Minor reformatting
5737 Add missing pragma Warnings (On)
5738
0c72247e
AC
57392009-04-16 Ed Falis <falis@adacore.com>
5740
5741 * s-vxwext-kernel.adb: (ERROR): deleted unused constant
5742
57432009-04-16 Vincent Celier <celier@adacore.com>
5744
5745 * ali-util.adb: Minor comment spelling error fix
5746
014caddb
EB
57472009-04-16 Eric Botcazou <ebotcazou@adacore.com>
5748
5749 * exp_ch5.adb (Expand_Assign_Array): For the GCC back-end, do not
5750 generate an assignment loop in case of overlap.
5751
b2ed7a03
AC
57522009-04-16 Olivier Hainque <hainque@adacore.com>
5753
5754 * gnat_ugn.texi (gnatmem description): Make it explicit that
5755 gnatmem is designed to work in association with static runtime
5756 library only.
5757
57582009-04-16 Thomas Quinot <quinot@adacore.com>
5759
5760 * sem_type.adb: Minor reformatting
5761
57622009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
5763
5764 * s-osprim-darwin.adb, s-osprim-posix.adb (Clock): Add comment
5765 concerning return codes of gettimeofday and return value check.
5766
57672009-04-16 Ed Falis <falis@adacore.com>
5768
5769 * s-vxwext-kernel.ads (Int_Lock, Int_Unlock): set to convention C so
5770 body can be renaming of imported routines.
5771
57722009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
5773
5774 * s-asthan-vms-alpha.adb: Disable warnings on alignment in a more
5775 targeted fashion.
5776
8a912a6e
AC
57772009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5778
5779 * exp_ch9.adb: Comment improvements.
5780 (Build_Entry_Family_Name): Add parentheses around the index of a entry
5781 family member.
5782
57832009-04-15 Bob Duff <duff@adacore.com>
5784
5785 * sem_warn.adb (Check_Infinite_Loop_Warning): Catch cases like
5786 "while X /= null loop" where X is unchanged inside the loop. We were
5787 not warning in this case, because of the pointers -- we feared that the
5788 loop variable could be updated via a pointer, if there are any pointers
5789 around the place. But that is impossible in this case.
5790
5791 * sem_util.adb (May_Be_Lvalue): This routine was overly pessimistic in
5792 the case of dereferences. In X.all, X cannot be an l-value. We now
5793 catch that case (and implicit dereferences, too).
5794
57952009-04-15 Vincent Celier <celier@adacore.com>
5796
5797 * sinput-p.ads, sinput-p.adb (Clear_Source_File_Table): New procedure
5798
57992009-04-15 Ed Schonberg <schonberg@adacore.com>
5800
5801 * sem_ch12.adb (Is_Actual_Of_Previous_Formal): Make fully recursive.
5802 From code reading.
5803 (Analyze_Package_Instantiation): If generic unit in child instance is
5804 the same as generic unit in parent instance, look for an outer homonym
5805 to locate the desired generic.
5806
4a13695c
AC
58072009-04-15 Bob Duff <duff@adacore.com>
5808
5809 * sem_ch5.adb (Analyze_Loop_Statement): Don't check for infinite loop
5810 warnings unless the loop comes from source, because checking generated
5811 loops is a waste of time, and makes it harder to debug
5812 Check_Infinite_Loop_Warning.
5813
5814 * sem_warn.adb (Check_Infinite_Loop_Warning): If the local variable
5815 tested in the while loop is a renaming, do not warn. Otherwise, we get
5816 false alarms, because it's usually renaming something that we can't
5817 deal with (an indexed component, a global variable, ...).
5818
5819 * gnat_rm.texi: Fix typo
5820
58212009-04-15 Thomas Quinot <quinot@adacore.com>
5822
5823 * sem_ch6.adb: Minor reformatting
5824
c3b36d48
AC
58252009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5826
5827 * exp_ch7.adb (Expand_Ctrl_Function_Call): Check for the case where the
5828 immediate parent of the controlled function call is a component
5829 association.
5830
58312009-04-15 Ed Schonberg <schonberg@adacore.com>
5832
5833 * sem_ch8.adb (Use_One_Type): If the type is tagged, indicate that the
5834 corresponding class-wide type is also in use.
5835
58362009-04-15 Thomas Quinot <quinot@adacore.com>
5837
5838 * frontend.adb: Minor comment fix
5839
1f07382d
AC
58402009-04-15 Robert Dewar <dewar@adacore.com>
5841
5842 * gnatchop.adb (BOM_Length): New global variable
5843 (Write_Unit): Add new parameter Write_BOM
5844 (Write_Chopped_Files): Check for BOM and set Write_BOM for call
5845 to Write_Unit
5846
5847 * gnat_ugn.texi: Add note on propagation of BOM by gnatchop
5848
58492009-04-15 Geert Bosch <bosch@adacore.com>
5850
5851 * system-mingw-x86_64.ads, system-darwin-x86_64.ads
5852 (Backend_Overflow_Checks): Set to True.
5853
58542009-04-15 Gary Dismukes <dismukes@adacore.com>
5855
5856 * par-ch3.adb (P_Type_Declaration): Issue an error if the synchronized
5857 keyword is given in a record extension.
5858
58592009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5860
5861 * exp_ch7.adb (Expand_Ctrl_Function_Call): Procede with the expansion
5862 of a controlled function call in the context of a record aggregate.
5863 This does not apply to array aggregates since the call will be expanded
5864 into assignments.
5865
58662009-04-15 Ed Falis <falis@adacore.com>
5867
5868 * s-osinte-vxworks-kernel.adb, s-osinte-vxworks.adb,
5869 s-osinte-vxworks.ads s-vxwext.ads, s-vxwext-kernel.adb,
3405870d
EF
5870 s-vxwext-kernel.ads, s-vxwext-rtp.ads, s-vxwext-rtp.adb: Reorganize
5871 s-osinte-vxworks* and s-vxwext*.
1f07382d 5872
6cc60200
AC
58732009-04-15 Arnaud Charlet <charlet@adacore.com>
5874
5875 * gcc-interface/Make-lang.in: Update dependencies.
5876
5877 * gcc-interface/Makefile.in: Reorganization of s-osinte-vxworks*
5878 and s-vxwext*.
5879
f66d46ec
AC
58802009-04-15 Robert Dewar <dewar@adacore.com>
5881
5882 * sem_ch13.adb (Unchecked_Conversions): Store source location instead
5883 of node for location for warning messages.
5884
5885 * gnatchop.adb: Minor reformatting
5886
58872009-04-15 Ed Schonberg <schonberg@adacore.com>
5888
5889 * exp_ch6.adb: additional guard for renaming declarations for in
5890 parameters of an array type.
5891
bafc9e1d
AC
58922009-04-15 Robert Dewar <dewar@adacore.com>
5893
5894 * sem_eval.adb (Get_Static_Length): Go to origin node for array bounds
5895 in case they were rewritten by expander (Force_Evaluation).
5896
5897 * targparm.adb (Get_Target_Parameters): Correct check for
5898 Suppress_Exception_Locations.
5899
59002009-04-15 Ed Schonberg <schonberg@adacore.com>
5901
5902 * exp_ch6.adb (Expand_Inlined_Call): If an in-parameter in a call to be
5903 inlined is of an array type that is not bit-packed, use a renaming
5904 declaration to capture its value, rather than a constant declaration.
5905
443614e3
AC
59062009-04-15 Robert Dewar <dewar@adacore.com>
5907
5908 * rtsfind.adb: Minor reformatting.
5909
59102009-04-15 Emmanuel Briot <briot@adacore.com>
5911
5912 * prj-part.adb, prj-tree.adb, prj-tree.ads (Restore_And_Free): renames
5913 Restore, and free the saved context.
5914
59152009-04-15 Gary Dismukes <dismukes@adacore.com>
5916
5917 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Move error check
5918 for illegal private extension from a synchronized interface parent in
5919 front of check for illegal limited extension so that limited extension
5920 from a synchronized interface will be rejected.
5921 (Check_Ifaces): Check that a private extension that has a synchronized
5922 interface as a progenitor must be explicitly declared synchronized.
5923 Also check that a record extension cannot derive from a synchronized
5924 interface.
5925
991395ab
AC
59262009-04-15 Pascal Obry <obry@adacore.com>
5927
5928 * adaint.h (__gnat_unlink): Add spec.
5929 (__gnat_rename): Likewise.
5930
59312009-04-15 Vincent Celier <celier@adacore.com>
5932
5933 * prj-nmsc.adb: Minor spelling error corrections in error messages
5934
59352009-04-15 Robert Dewar <dewar@adacore.com>
5936
5937 * sinfo.ads: Minor comment update
5938
5939 * opt.ads: Minor comment updates
5940
5941 * checks.adb (Enable_Overflow_Check): Do not set Do_Overflow_Check for
5942 modular type.
5943
59442009-04-15 Ed Schonberg <schonberg@adacore.com>
5945
5946 * exp_disp.ads, exp_disp.adb (Register_Primitive): Is now a function
5947 that generates the code needed to update a dispatch table when a
5948 primitive operation is declared with a subprogram body without previous
5949 spec. Insertion of the generated code is responsibility of the caller.
5950 (Make_DT): When building static tables, append the code created by
5951 Register_Primitive to update a secondary table after it has been
5952 constructed.
5953
5954 * exp_ch3.adb, exp_ch6.adb: use new version of Register_Primitive.
5955
5956 * sem_disp.adb (Check_Dispatching_Operation): Call Register_Primitive
5957 on an overriding operation that implements an interface operation only
5958 if not building static dispatch tables.
5959
59602009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5961
5962 * a-caldel-vms.adb (To_Duration): Declare a "safe" end of time which
5963 does not cause overflow when converted to Duration. Use the safe value
5964 as the maximum allowable time delay..
5965
59662009-04-15 Jerome Lambourg <lambourg@adacore.com>
5967
5968 * g-comlin.adb (Set_Command_Line): When adding a switch with attached
5969 parameter, specify that the delimiter is NUL, otherwise "-j2" will be
5970 translated to "-j 2".
5971
59722009-04-15 Bob Duff <duff@adacore.com>
5973
5974 * rtsfind.adb (Maybe_Add_With): Split out procedure to add implicit
5975 with_clauses, to avoid code duplication. Change this processing so we
5976 always add a with_clause on the main unit if needed.
5977
55cc1a05
AC
59782009-04-15 Pascal Obry <obry@adacore.com>
5979
5980 Add support for Win32 native encoding for delete/rename routines.
5981
5982 * adaint.c (__gnat_unlink): New routine.
5983 (__gnat_rename): New routine.
5984 Simple wrapper routines used to convert to proper encoding on
5985 Windows.
5986
5987 * s-os_lib.adb: Use __gnat_unlink and __gnat_rename instead of direct
5988 call to the C library.
5989
5990 * g-sercom-mingw.adb, s-win32.ads: Update Win32 binding.
5991
59922009-04-15 Robert Dewar <dewar@adacore.com>
5993
5994 * s-tassta.adb: Minor reformatting
5995
1f6821b4
AC
59962009-04-15 Robert Dewar <dewar@adacore.com>
5997
5998 * frontend.adb (Frontend): Set proper default for
5999 Warn_On_Non_Local_Exception.
6000
6001 * opt.ads (Exception_Handler_Encountered): New flag
6002 (No_Warn_On_Non_Local_Exception): New flag
6003
6004 * par-ch11.adb (P_Exception_Handler): Set Exception_Handler_Encountered
6005
6006 * sem_warn.adb (Set_Warning_Switch): Set No_Warn_On_Non_Local_Exception
6007 (Set_Dot_Warning_Switch): Set No_Warn_On_Non_Local_Exception
6008
60092009-04-15 Cyrille Comar <comar@adacore.com>
6010
6011 * s-tassta.adb, a-exextr.adb, a-elchha.adb
6012 (Ada.Exception.Last_Chance_Handler): Do not print unhandled exception
6013 message when exception traces are active since it would generate
6014 redundant information.
6015 (Exception_Traces.Notify_Exception): put message output by a critical
6016 section to avoid unsynchronized output.
6017 (Trace_Unhandled_Exception_In_Task): put message output by a critical
6018 section to avoid unsynchronized output.
6019
60202009-04-15 Emmanuel Briot <briot@adacore.com>
6021
6022 * g-comlin.adb, prj-tree.adb, prj-tree.ads, prj.adb, prj.ads
6023 (Free): New subprogram.
6024
8aec446b
AC
60252009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
6026
6027 * a-calend.adb: Add new constant Nanos_In_Four_Years.
6028 (Formatting_Operations.Time_Of): Change the way four year chunks of
6029 nanoseconds are added to the intermediate result.
6030
60312009-04-15 Nicolas Setton <setton@adacore.com>
6032
6033 * sysdep.c: Add __APPLE__ in the list of systems where get_immediate
6034 does not need to wait for a carriage return.
6035
60362009-04-15 Tristan Gingold <gingold@adacore.com>
6037
6038 * bindgen.adb: Do not generate adafinal if No_Finalization restriction
6039 is set.
6040
60412009-04-15 Ed Schonberg <schonberg@adacore.com>
6042
6043 * freeze.adb (Freeze_Entity): improve error message for improper use of
6044 incomplete types.
6045 Diagnose additional illegal uses of incomplete types in formal parts.
6046 appearing in formal parts.
6047
6048 * sem_ch6.adb (Process_Formals, Analyze_Return_Type): ditto.
6049
60502009-04-15 Robert Dewar <dewar@adacore.com>
6051
6052 * exp_ch4.adb (Expand_N_Allocator): Install test for object too large.
6053
442dd5fb
NR
60542009-04-15 Nicolas Roche <roche@adacore.com>
6055
6056 * adaint.c: Add function __gnat_lwp_self that retrieves the LWP of the
6057 current thread.
6058
6059 * s-osinte-linux.ads: Import the __gnat_lwp_self function as lwp_self
6060
6061 * s-taprop-linux.adb (Enter_Task): Store the LWP in the TCB
6062
61bee0e3
AC
60632009-04-15 Ed Schonberg <schonberg@adacore.com>
6064
6065 * sem_ch4.adb: improve error message on exponentiation.
6066
60672009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
6068
6069 * a-calend.adb: Move constant Epoch_Offset from package
6070 Conversion_Operations to top level.
6071 (Delay_Operations.To_Duration): Define a constant which represents
6072 "end of time" and use it as a guard against very distant delay dates.
6073 Protect the code against overflow when performing the origin shift to
6074 Unix time.
6075
361effb1
AC
60762009-04-15 Robert Dewar <dewar@adacore.com>
6077
6078 * sem_prag.adb: Minor reformatting.
6079
6080 * sem_type.adb: Minor reformatting
6081
60822009-04-15 Javier Miranda <miranda@adacore.com>
6083
6084 * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Add missing
6085 support to check eliminated subprograms.
6086
6087 * sem_elim.ads (Eliminate_Error_Msg): Update documentation.
6088
6089 * sem_elim.adb (Set_Eliminated): Add support for elimination of
6090 dispatching subprograms.
6091
6092 * exp_disp.adb (Make_DT): Minor code cleanup when freezing primitive
6093 operations. Initialize with "null" the slots of eliminated dispaching
6094 primitives.
6095 (Write_DT): Add output for eliminated primitives.
6096
6097 * sem_disp.adb (Check_Dispatching_Call): Check eliminated primitives.
6098
f7ca1d04
AC
60992009-04-15 Ed Schonberg <schonberg@adacore.com>
6100
6101 * sem_ch8.adb (Use_One_Type): If both clauses appear on the same unit,
6102 the second is redundant, regardless of scopes.
6103
61042009-04-15 Vincent Celier <celier@adacore.com>
6105
6106 * prj-nmsc.adb (Get_Directories): Check for sources before checking
6107 the object directory as when there are no sources, they may not be any
6108 object directory.
6109
6110 * make.adb (Gnatmake): Do not attempt to get the path name of the exec
6111 directory, when there are no exec directory.
6112
61132009-04-15 Ed Schonberg <schonberg@adacore.com>
6114
6115 * sem_type.adb (Remove_Conversions): In order to resolve spurious
6116 ambiguities, refine removal of universal interpretations from complex
6117 expressions with literal arguments, when some numeric operators have
6118 been declared abstract.
6119
61202009-04-15 Ed Falis <falis@adacore.com>
6121
6122 * init.c: Map SIGSEGV to Storage_Error for all targets for uniformity
6123 and backward compatibility for targets using probing for stack overflow
6124
61252009-04-15 Ed Schonberg <schonberg@adacore.com>
6126
6127 * sem_prag.adb (Analyze_Pragma, case 'Obsolescent): Pragma is legal
6128 after any declaration, including renaming declarations.
6129
4bffd4e0
AC
61302009-04-15 Arnaud Charlet <charlet@adacore.com>
6131
6132 * gcc-interface/Make-lang.in: Update dependencies.
6133
6134 * gcc-interface/Makefile.in: Fix VxWorks target pairs.
cbd8be94 6135 Update xenomai target pairs.
4bffd4e0 6136
a523b302
JM
61372009-04-15 Javier Miranda <miranda@adacore.com>
6138
6139 * exp_ch4.adb (Expand_N_Allocator): Code cleanup.
6140
6141 * sem_ch6.adb (Check_Anonymous_Return): Add missing support for
6142 functions returning anonymous access to class-wide limited types. Mark
6143 also the containing scope as a task master.
6144
6145 * sem_ch8.adb (Restore_Scope_Stack): Add missing management for
6146 limited-withed packages. Required to restore their visibility after
6147 processing packages associated with implicit with-clauses.
6148
6149 * exp_ch3.adb (Build_Class_Wide_Master): Avoid marking masters
6150 associated with return statements because this work is now done by
6151 Check_Anonymous_Return.
6152 (Build_Master): Code cleanup.
6153
e358346d
AC
61542009-04-15 Thomas Quinot <quinot@adacore.com>
6155
6156 * sem_warn.ads: Minor reformatting
6157
61582009-04-15 Ed Schonberg <schonberg@adacore.com>
6159
6160 * sem_ch3.adb: better error message for illegal interfaces
6161
6162 * sem_ch6.adb (Possible_Freeze): Delay freezing a subprogram if a
6163 formal is an incomplete type from a limited_with clause.
6164
a9872a59
VC
61652009-04-15 Vincent Celier <celier@adacore.com>
6166
6167 * prj-nmsc.adb (Locate_Directory): New Boolean parameter
6168 Externally_Built indicating if the project is externally built. If it
6169 is, and --subdirs is specified, but the subdir does not exist, look
6170 for the specified directory, without the subdir.
6171
b8aadf01
AC
61722009-04-15 Gary Dismukes <dismukes@adacore.com>
6173
6174 * a-tasatt.adb: Fix typo, plus minor reformatting
6175
6176 * sem_ch3.ads: Add missing hyphen ("class wide" => "class-wide").
6177
6178 * sem_ch10.adb: Add missing hyphen ("use visible" => "use-visible").
6179
61802009-04-15 Ed Schonberg <schonberg@adacore.com>
6181
6182 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Verify that a
6183 private extension whose parent is a synchronized interface carries an
6184 explicit synchronized keyword.
6185
a808ba1b
TQ
61862009-04-15 Thomas Quinot <quinot@adacore.com>
6187
6188 * exp_smem.adb (Make_Shared_Var_Procs): For a protected type,
6189 instantiate generic shared object package with the corresponding
6190 record type.
6191
e0568eec
AC
61922009-04-15 Arnaud Charlet <charlet@adacore.com>
6193
6194 * system-linux-sparc.ads: Remove obsolete entries.
6195
61962009-04-15 Thomas Quinot <quinot@adacore.com>
6197
6198 * s-tasuti.ads: Add ??? comment
6199
28450a75
ES
62002009-04-15 Ed Schonberg <schonberg@adacore.com>
6201
6202 * sem_ch3.adb (Analyze_Type_Declaration): Create freeze node for access
6203 type even if the designated type comes from a limited_with clause, to
6204 ensure that the symbol for the finalization list of the access type is
6205 created.
6206
b0d3b11d
AC
62072009-04-10 Robert Dewar <dewar@adacore.com>
6208
6209 * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): Catch more cases
6210 for warning suppression.
6211
62122009-04-10 Ed Schonberg <schonberg@adacore.com>
6213
6214 * sem_ch8.adb (Use_One_Type): If the two use_type clauses are
6215 identical, there is no redudancy to check.
6216
62172009-04-10 Gary Dismukes <dismukes@adacore.com>
6218
6219 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Delete redundant
6220 calls initializing SS_Allocator (which is initialized in following
6221 code).
6222 (Expand_Simple_Function_Return): Add comment about False value for
6223 Comes_From_Source on secondary-stack allocator.
6224
6225 * exp_ch9.adb (Build_Entry_Family_Name): Add comment.
6226 (Build_Entry_Name): Add comment.
6227
fad0600d
AC
62282009-04-10 Robert Dewar <dewar@adacore.com>
6229
6230 * einfo.ads, einfo.adb (Low_Bound_Tested): New name for Low_Bound_Known
6231
6232 * sem_prag.adb (Analyze_Pragma, case Check): Remove check for lower
6233 bound tested, since this is now done more generally in Sem_Res.
6234
6235 * sem_res.adb (Resolve_Comparison_Op): Add call to
6236 Check_Lower_Bound_Tested.
6237 (Resolve_Equality_Op): Add call to Check_Lower_Bound_Tested
6238
6239 * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): New procedure
6240 (Low_Bound_Tested): New name for Low_Bound_Known flag
6241
6242 * exp_ch5.adb: Minor reformatting
6243
6244 * exp_ch4.adb:
6245 Add comments on copying the Comes_From_Source flag for allocators
6246
6247 * sinfo.ads:
6248 Add comments on copying the Comes_From_Source flag for allocators
6249
6250 * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Copy
6251 Comes_From_Source flag from old allocator to new one.
6252
62532009-04-10 Ed Schonberg <schonberg@adacore.com>
6254
6255 * sem_ch6.ads: Address missing documentation query
6256
62572009-04-10 Vincent Celier <celier@adacore.com>
6258
6259 * prj-attr.adb:
6260 Add new Linker attributes Max_Command_Line_Length, Response_File_Format
6261 and Response_File_Switches.
6262
6263 * prj-nmsc.adb (Process_Linker): Process new attributes
6264 Max_Command_Line_Length, Response_File_Format and
6265 Response_File_Switches.
6266
6267 * prj.ads (Response_File_Format): New enumeration type
6268 (Project_Configuration): New componants Max_Command_Line_Length,
6269 Resp_File_Format and Resp_File_Options.
6270
6271 * snames.ads-tmpl: Add new standard names for linking response files
6272 for gprbuild: GNU, None, Object_List, Option_List,
6273 Max_Command_Line_Length, Response_File_Format and
6274 Response_File_Switches.
6275
62762009-04-10 Geert Bosch <bosch@adacore.com>
6277
6278 * system-aix.ads, system-darwin-ppc.ads, system-darwin-x86.ads,
6279 system-freebsd-x86.ads, system-hpux.ads, system-hpux-ia64.ads,
6280 system-irix-n32.ads, system-irix-o32.ads, system-linux-alpha.ads,
6281 system-linux-hppa.ads, system-linux-ia64.ads, system-linux-ppc.ads,
6282 system-linux-s390.ads, system-linux-s390x.ads, system-linux-sh4.ads,
6283 system-linux-sparc.ads, system-linux-x86_64.ads, system-linux-x86.ads,
6284 system-mingw.ads, system-solaris-sparc.ads, system-solaris-sparcv9.ads,
6285 system-solaris-x86.ads, system-tru64.ads, system-vms_64.ads,
6286 system-vms.ads, system-vms-ia64.ads, system-vms-zcx.ads,
6287 system-vxworks-arm.ads, system-vxworks-m68k.ads,
6288 system-vxworks-mips.ads, system-vxworks-ppc.ads,
6289 system-vxworks-sparcv9.ads, system-vxworks-x86.ads
6290 (Backend_Overflow_Checks): Set to True.
6291
934a3a25
AC
62922009-04-10 Thomas Quinot <quinot@adacore.com>
6293
6294 * exp_attr.adb: Minor reformatting
6295
62962009-04-10 Ed Schonberg <schonberg@adacore.com>
6297
6298 * sem_prag.adb (Check_Precondition_Postcondition): Within a generic,
6299 analyze the expression for a postcondition, even if the compiler mode
6300 is Generate_Code.
6301
ab8e1b35
RD
63022009-04-10 Robert Dewar <dewar@adacore.com>
6303
6304 * sem_aux.adb: Minor reformatting
6305
2c880bdf
EF
63062009-04-10 Ed Falis <falis@adacore.com>
6307
6308 * init.c: Change VxWorks 6 stack overflow checking for kernel apps.
6309
6310 * system-vxworks-ppc.ads, system-vxworks-x86.ads: Update header.
6311
d8221f45
TQ
63122009-04-10 Thomas Quinot <quinot@adacore.com>
6313
6314 * sem_ch6.ads (Check_Subtype_Conformant): Add ??? comment for
6315 undocumented formal.
6316 Minor reformatting
6317
6318 * a-direio.ads: Fix typo in comment
6319
6320 * sem_ch3.adb, g-dirope.adb, sem_type.adb, sem_ch12.adb, sem_case.adb,
6321 errout.adb, sem_ch4.adb, sem_ch11.adb, exp_dist.adb, sem_ch13.adb:
6322 Use uniform phrasing for comment at start of subprogram body.
6323
6324 * xsnamest.adb: Add note to explain why we use specific names for the
6325 newly generated files instead of generating snames.{ads,adb,h} directly
6326
f559e62f
AC
63272009-04-10 Sergey Rybin <rybin@adacore.com>
6328
6329 * vms_data.ads:
6330 Add qualifier for new gnatstub option '--no-exception'
6331
6332 * gnat_ugn.texi:
6333 Add the description of the new gnatstub option '--no-exception'
6334
63352009-04-10 Robert Dewar <dewar@adacore.com>
6336
6337 * rtsfind.adb: Minor reformatting
6338
63392009-04-10 Thomas Quinot <quinot@adacore.com>
6340
6341 * sem_disp.adb: Minor reformatting.
6342 Add comment pointing to RM clause for the case of warning against a
6343 (failed) attempt at declaring a primitive operation elsewhere than in a
6344 package spec.
6345
63462009-04-10 Ed Schonberg <schonberg@adacore.com>
6347
6348 * sem_ch12.adb (Denotes_Formal_Package): Check whether the package is
6349 an actual for a previous formal package of the current instance.
6350
e50e1c5e
AC
63512009-04-10 Bob Duff <duff@adacore.com>
6352
6353 * rtsfind.adb (RTE): Put implicit with_clauses on whatever unit needs
6354 them first, rather than on the extended main unit.
6355
63562009-04-10 Ed Schonberg <schonberg@adacore.com>
6357
6358 * sem_ch6.adb (Check_Discriminant_Conformance): If discriminant
6359 specification of full view carries a null exclusion indicator, create
6360 an itype for it, to check for conformance with partial view.
6361
cb736868
AC
63622009-04-10 Bob Duff <duff@adacore.com>
6363
6364 * rtsfind.ads: Minor code change: make RE_Unit_Table constant.
6365
6366 * rtsfind.adb: Minor comment changes, and remove useless code.
6367
6368 * sinfo.ads: Add ??? comment.
6369
63702009-04-10 Vincent Celier <celier@adacore.com>
6371
6372 * vms_data.ads: Add missing GNAT SYNC VMS qualifiers -main= and -U
6373
8a78c50d
AC
63742009-04-10 Ed Schonberg <schonberg@adacore.com>
6375
6376 * exp_attr.adb (Expand_N_Attribute_Reference, case 'Tag): If the tagged
6377 type is a synchronized type, retrieve tag information from the
6378 corresponding record, which has the dispatch table link.
6379
63802009-04-10 Jerome Lambourg <lambourg@adacore.com>
6381
6382 * g-comlin.adb (Group_Analysis): Take care of switches that might be
6383 decomposed afterwards, but are present as-is in the command line
6384 configuration, and thus should be kept as-is.
6385
b66c3ff4
AC
63862009-04-10 Robert Dewar <dewar@adacore.com>
6387
6388 * gnat_rm.texi: Document that postconditions are tested on implicit
6389 returns.
6390
6391 * sem_aux.adb: Minor reformatting
6392
63932009-04-10 Gary Dismukes <dismukes@adacore.com>
6394
6395 * itypes.adb (Create_Null_Excluding_Itype): Apply Base_Type when
6396 setting Etype.
6397
6398 * par-ch3.adb (P_Access_Type_Definition): Set new attribute
6399 Null_Exclusion_In_Return_Present when an access-to-function type has a
6400 result type with an explicit not null.
6401
6402 * sem_ch3.adb (Access_Subprogram_Definition): If a null exclusion is
6403 given on the result type, then create a null-excluding itype for the
6404 function.
6405
6406 * sem_ch6.adb (Analyze_Return_Type): Create a null-excluding itype in
6407 the case where a null exclusion is imposed on a named access type.
6408 (Analyze_Subprogram_Specification): Push and pop the scope of the
6409 function around the call to Analyze_Return_Type in the case of no
6410 formals, for consistency with handling when formals are present
6411 (Process_Formals does this). Ensures that any itype created for the
6412 return type will be associated with the proper scope.
6413
6414 * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): If a null
6415 exclusion is given on a generic function's result type, then create a
6416 null-excluding itype for the generic function.
6417 (Instantiate_Object): Set Null_Exclusion_Present of a constant created
6418 for an actual for a formal in object according to the setting on the
6419 formal. Ensures null exclusion checks are done when the association is
6420 elaborated.
6421
6422 * sinfo.ads: Add new flag Null_Exclusion_In_Return_Present on
6423 N_Access_Function_Definition.
6424
6425 * sinfo.adb: Add Get_ and Set_ operations for
6426 Null_Exclusion_In_Return_Present.
6427
5334d18f
BD
64282009-04-10 Bob Duff <duff@adacore.com>
6429
6430 * exp_ch5.adb, exp_ch6.adb, sem_ch6.adb: Move the code that creates a
6431 call to the _Postconditions procedure in the case of implicit returns
6432 from analysis to expansion. This eliminates some duplicated code. Use
6433 the Postcondition_Proc to find the identity of this procedure during
6434 expansion.
6435
701b7fbb
RD
64362009-04-10 Robert Dewar <dewar@adacore.com>
6437
6438 * sem_ch6.adb: Minor code clean up.
6439
6440 * einfo.ads, sem_attr.adb: Minor comment fixes.
6441
64422009-04-10 Robert Dewar <dewar@adacore.com>
6443
6444 * sem_ch8.adb: Minor reformatting
6445
7ca78bba
RD
64462009-04-10 Robert Dewar <dewar@adacore.com>
6447
6448 * einfo.ads, einfo.adb (Postcondition_Proc): New attribute for
6449 procedures.
6450
6451 * sem_ch6.adb: Minor code clean up.
6452
043ce308
AC
64532009-04-10 Robert Dewar <dewar@adacore.com>
6454
6455 * mlib-tgt-specific-xi.adb: Minor reformatting
6456
64572009-04-10 Bob Duff <duff@adacore.com>
6458
6459 * einfo.ads: Minor comment fixes
6460
64612009-04-10 Vincent Celier <celier@adacore.com>
6462
6463 * snames.ads-tmpl: Remove names that are no longer used in the
6464 Project Manager.
6465 Mark specifically those that are used only in gprbuild
6466
64672009-04-10 Eric Botcazou <ebotcazou@adacore.com>
6468
6469 * init.c: Adjust EH support code on Alpha/Tru64.
6470
64712009-04-10 Bob Duff <duff@adacore.com>
6472
6473 * sem_ch6.adb (Process_PPCs): Add a call to the _Postconditions
6474 procedure on every path that could return implicitly (not via a return
6475 statement) from a procedure.
6476
64772009-04-10 Ed Schonberg <schonberg@adacore.com>
6478
6479 * exp_ch9.adb (Build_Master_Entity): An extended return statement is a
6480 valid scope for a task declarations and therefore for a master id.
6481
64822009-04-10 Robert Dewar <dewar@adacore.com>
6483
6484 * sem_aux.adb: Minor reformatting
6485
64862009-04-10 Vincent Celier <celier@adacore.com>
6487
6488 * scn.adb (Obsolescent_Check_Flag): New Boolean flag, initialized to
6489 True.
6490 (Obsolescent_Check): Do nothing if Obsolescent_Check_Flag is False
6491 (Set_Obsolescent_Check): New procedure to change the value of
6492 Obsolescent_Check_Flag.
6493
6494 * scn.ads (Set_Obsolescent_Check): New procedure to control
6495 Obsolescent_Check.
6496
6497 * sinput-l.adb (Load_File): Do not check for pragma Restrictions on
6498 obsolescent features while preprocessing.
6499
550f4135
AC
65002009-04-10 Thomas Quinot <quinot@adacore.com>
6501
6502 * xsnamest.adb: Use XUtil to have uniform line endings (UNIX style) in
6503 generated files on all platforms.
6504
65052009-04-10 Robert Dewar <dewar@adacore.com>
6506
6507 * sem_aux.adb: Minor reformatting
6508
65092009-04-10 Ed Schonberg <schonberg@adacore.com>
6510
6511 * sem_ch3.adb (Access_Definition): Handle properly the case of a
6512 protected function with formals that returns an anonymous access type.
6513
65142009-04-10 Thomas Quinot <quinot@adacore.com>
6515
6516 * sem_disp.adb: Minor reformatting
6517
65182009-04-10 Vasiliy Fofanov <fofanov@adacore.com>
6519
6520 * seh_init.c: Do not use the 32-bit specific implementation of
6521 __gnat_install_SEH_handler on 64-bit Windows target (64-bit specific
6522 version TBD).
6523
65242009-04-10 Jose Ruiz <ruiz@adacore.com>
6525
6526 * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Target_Name may contain
6527 a '/' at the end so we better use the complete target name to determine
6528 whether it is a PowerPC 55xx target.
6529
3996951a
TQ
65302009-04-10 Thomas Quinot <quinot@adacore.com>
6531
6532 * sem_eval.adb: Minor reformatting
6533
b62a90f2
AC
65342009-04-10 Thomas Quinot <quinot@adacore.com>
6535
6536 * snames.h, snames.ads, snames.adb: Remove files, now generated from
6537 templates.
6538
6539 * snames.h-tmpl, snames.ads-tmpl, snames.adb-tmpl: Templates for the
6540 above.
6541
6542 * xsnamest.adb: New file.
6543
6544 * gcc-interface/Make-lang.in: New target for automated generation of
6545 snames.ads, snames.adb and snames.h
6546
62298c61
TG
65472009-04-10 Tristan Gingold <gingold@adacore.com>
6548
6549 * gcc-interface/Makefile.in, gcc-interface/utils.c: Include "rtl.h" to
6550 avoid compile time warnings.
6551 Do not add gcc/config in include search list while compiling the RTS.
6552 Pragma Thread_Local_Storage is available on any target.
6553
3764bb00
BD
65542009-04-10 Bob Duff <duff@adacore.com>
6555
6556 * sem.ads, par.adb, sem_ch6.adb, sem_ch8.adb: Minor comment fixes.
6557
b3b9865d
AC
65582009-04-10 Tristan Gingold <gingold@adacore.com>
6559
6560 * init.c: Install signal handler on Darwin.
6561
65622009-04-10 Robert Dewar <dewar@adacore.com>
6563
6564 * sem_prag.adb: Minor reformatting
6565
6566 * exp_util.adb (Make_Non_Empty_Check): New function
6567 (Silly_Boolean_Array_Not_Test): Add call to Make_Non_Empty_Check
6568 (Silly_Boolean_Array_Xor_Test): Use Make_Non_Empty_Check
6569
65702009-04-10 Arnaud Charlet <charlet@adacore.com>
6571
6572 * make.adb, gnatlink.adb: Rename JGNAT toolchain.
6573
65742009-04-10 Jose Ruiz <ruiz@adacore.com>
6575
6576 * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Insert the appropriate
6577 tool prefix for AVR and PowerPC 55xx targets.
6578
65792009-04-10 Robert Dewar <dewar@adacore.com>
6580
6581 * sem_warn.adb (Within_Postcondition): New function
6582 (Check_Unset_Reference): Use Within_Postcondition to stop bad warning
6583
c5288c90
AC
65842009-04-10 Robert Dewar <dewar@adacore.com>
6585
6586 * sem_warn.adb: Minor reformatting
6587
6588 * make.adb: Minor reformatting.
6589
65902009-04-10 Gary Dismukes <dismukes@adacore.com>
6591
6592 * exp_ch7.adb (Find_Final_List): When creating a finalization-chain
6593 entity and the scope is a subprogram, retrieve the Sloc of the
6594 subprogram's body rather than using the sloc of the spec, for better
6595 line-stepping behavior in gdb.
6596 (Wrap_Transient_Declaration): For the Sloc of nodes created with a list
6597 controller, use the Sloc of the first declaration of the containing list
6598 rather than that of the node that triggered creation of the list
6599 controller.
6600
2844b330
AC
66012009-04-10 Vincent Celier <celier@adacore.com>
6602
6603 * prj-nmsc.adb (Check_Naming_Schemes): Initialize local variable Casing
6604 to avoid gcc warning.
6605
66062009-04-10 Robert Dewar <dewar@adacore.com>
6607
6608 * g-comlin.adb: Add ??? comment
6609
66102009-04-10 Ed Schonberg <schonberg@adacore.com>
6611
6612 * sem_warn.adb (Check_Unused_Withs): Do not emit message about
6613 unreferenced entities for a package with no visible declarations.
6614
66152009-04-10 Robert Dewar <dewar@adacore.com>
6616
6617 * exp_ch9.adb: Minor reformatting
6618
be21e9d8
AC
66192009-04-10 Thomas Quinot <quinot@adacore.com>
6620
6621 * sem_prag.adb: Minor reformatting
6622
66232009-04-10 Vincent Celier <celier@adacore.com>
6624
6625 * prj-nmsc.adb:
6626 (Check_Library_Attributes): For a project qualified as a library project
6627 that is not a library project, indicate in the error message which
6628 attributes are missing (Library_Dir and/or Library_Name).
6629
4a7dedcb
BD
66302009-04-10 Bob Duff <duff@adacore.com>
6631
6632 * exp_ch5.adb, exp_ch9.adb: Avoid use of No_Position in Sloc of
6633 generated nodes, because it might confuse various circuits in the FE.
6634
4017021b
AC
66352009-04-10 Ed Schonberg <schonberg@adacore.com>
6636
6637 * sem_prag.adb (Analyze_Pragma, case Task_Name): Do not expand argument
6638 of pragma. It will be recopied and analyzed when used in call to
6639 Create_Task.
6640
6641 * sem_res.adb (Resolve_Call): Clarify use of secondary stack within
6642 initialization operations and recognize use of it in procedure calls
6643 within init_procs.
6644
6645 * exp_ch9.adb (Make_Task_Create_Call): Copy full tree of Task_Name
6646 argument, because it may have side-effects.
6647
6648 * exp_ch2.adb: Remove obsolete comments on default functions
6649
66502009-04-10 Jose Ruiz <ruiz@adacore.com>
6651
6652 * adaint.c (RTX section): Do for RTX the same thing as we do for
6653 Windows (include ctype.h and define a fallback ISALPHA if IN_RTS).
6654
24357840
RD
66552009-04-10 Robert Dewar <dewar@adacore.com>
6656
6657 * sem_aux.ads, sem_aux.adb (Nearest_Current_Scope): New function.
6658
6659 * sem_res.adb (Resolve_Call): Fix test for
6660 Suppress_Value_Tracking_On_Call (was wrong for the case of a call from
6661 a non-dynamic scope).
6662
4f64abad
AC
66632009-04-10 Robert Dewar <dewar@adacore.com>
6664
6665 * make.adb: Add comment.
6666 Minor reformatting
6667
66682009-04-10 Nicolas Setton <setton@adacore.com>
6669
6670 * s-osprim-darwin.adb: New file.
6671
6672 * s-osinte-darwin.adb, s-osinte-darwin.ads: Fix binding to timespec.
6673
66742009-04-10 Thomas Quinot <quinot@adacore.com>
6675
6676 * g-socket.ads: Add comment clarifying alignment requirement for Fd_Set
6677
748086b7
JJ
66782009-04-09 Nick Clifton <nickc@redhat.com>
6679
6680 * adadecode.h: Change copyright header to refer to version
6681 3 of the GNU General Public License with version 3.1 of the
6682 GCC Runtime Library Exception and to point readers at the
6683 COPYING3 and COPYING3.RUNTIME files and the FSF's license web
6684 page.
6685 * 9drpc.adb: Likewise.
6686 * a-assert.adb: Likewise.
6687 * a-astaco.adb: Likewise.
6688 * a-calari.adb: Likewise.
6689 * a-calcon.adb: Likewise.
6690 * a-calcon.ads: Likewise.
6691 * a-caldel.ads: Likewise.
6692 * a-calend-vms.adb: Likewise.
6693 * a-calend-vms.ads: Likewise.
6694 * a-calend.adb: Likewise.
6695 * a-calend.ads: Likewise.
6696 * a-calfor.adb: Likewise.
6697 * a-catizo.adb: Likewise.
6698 * a-cdlili.adb: Likewise.
6699 * a-cdlili.ads: Likewise.
6700 * a-cgaaso.adb: Likewise.
6701 * a-cgaaso.ads: Likewise.
6702 * a-cgarso.adb: Likewise.
6703 * a-cgcaso.adb: Likewise.
6704 * a-chacon.adb: Likewise.
6705 * a-chacon.ads: Likewise.
6706 * a-chahan.adb: Likewise.
6707 * a-chahan.ads: Likewise.
6708 * a-chlat9.ads: Likewise.
6709 * a-chtgke.adb: Likewise.
6710 * a-chtgke.ads: Likewise.
6711 * a-chtgop.adb: Likewise.
6712 * a-chtgop.ads: Likewise.
6713 * a-chzla1.ads: Likewise.
6714 * a-chzla9.ads: Likewise.
6715 * a-cidlli.adb: Likewise.
6716 * a-cidlli.ads: Likewise.
6717 * a-cihama.adb: Likewise.
6718 * a-cihama.ads: Likewise.
6719 * a-cihase.adb: Likewise.
6720 * a-cihase.ads: Likewise.
6721 * a-ciorma.adb: Likewise.
6722 * a-ciorma.ads: Likewise.
6723 * a-ciormu.adb: Likewise.
6724 * a-ciormu.ads: Likewise.
6725 * a-ciorse.adb: Likewise.
6726 * a-ciorse.ads: Likewise.
6727 * a-clrefi.adb: Likewise.
6728 * a-clrefi.ads: Likewise.
6729 * a-cohama.adb: Likewise.
6730 * a-cohama.ads: Likewise.
6731 * a-cohase.adb: Likewise.
6732 * a-cohase.ads: Likewise.
6733 * a-cohata.ads: Likewise.
6734 * a-coinve.adb: Likewise.
6735 * a-coinve.ads: Likewise.
6736 * a-colien.adb: Likewise.
6737 * a-colien.ads: Likewise.
6738 * a-colire.adb: Likewise.
6739 * a-colire.ads: Likewise.
6740 * a-comlin.adb: Likewise.
6741 * a-comlin.ads: Likewise.
6742 * a-convec.adb: Likewise.
6743 * a-convec.ads: Likewise.
6744 * a-coorma.adb: Likewise.
6745 * a-coorma.ads: Likewise.
6746 * a-coormu.adb: Likewise.
6747 * a-coormu.ads: Likewise.
6748 * a-coorse.adb: Likewise.
6749 * a-coorse.ads: Likewise.
6750 * a-coprnu.adb: Likewise.
6751 * a-coprnu.ads: Likewise.
6752 * a-crbltr.ads: Likewise.
6753 * a-crbtgk.adb: Likewise.
6754 * a-crbtgk.ads: Likewise.
6755 * a-crbtgo.adb: Likewise.
6756 * a-crbtgo.ads: Likewise.
6757 * a-crdlli.adb: Likewise.
6758 * a-crdlli.ads: Likewise.
6759 * a-cwila1.ads: Likewise.
6760 * a-cwila9.ads: Likewise.
6761 * a-decima.adb: Likewise.
6762 * a-decima.ads: Likewise.
6763 * a-diocst.adb: Likewise.
6764 * a-diocst.ads: Likewise.
6765 * a-direct.adb: Likewise.
6766 * a-direct.ads: Likewise.
6767 * a-direio.adb: Likewise.
6768 * a-direio.ads: Likewise.
6769 * a-dirval-mingw.adb: Likewise.
6770 * a-dirval-vms.adb: Likewise.
6771 * a-dirval.adb: Likewise.
6772 * a-dirval.ads: Likewise.
6773 * a-dynpri.adb: Likewise.
6774 * a-einuoc.adb: Likewise.
6775 * a-einuoc.ads: Likewise.
6776 * a-elchha.adb: Likewise.
6777 * a-elchha.ads: Likewise.
6778 * a-envvar.adb: Likewise.
6779 * a-excach.adb: Likewise.
6780 * a-except-2005.adb: Likewise.
6781 * a-except-2005.ads: Likewise.
6782 * a-except.adb: Likewise.
6783 * a-except.ads: Likewise.
6784 * a-excpol-abort.adb: Likewise.
6785 * a-excpol.adb: Likewise.
6786 * a-exctra.adb: Likewise.
6787 * a-exctra.ads: Likewise.
6788 * a-exetim-mingw.adb: Likewise.
6789 * a-exetim-mingw.ads: Likewise.
6790 * a-exexda.adb: Likewise.
6791 * a-exexpr-gcc.adb: Likewise.
6792 * a-exexpr.adb: Likewise.
6793 * a-exextr.adb: Likewise.
6794 * a-exstat.adb: Likewise.
6795 * a-filico.adb: Likewise.
6796 * a-filico.ads: Likewise.
6797 * a-finali.adb: Likewise.
6798 * a-finali.ads: Likewise.
6799 * a-interr.ads: Likewise.
6800 * a-intnam-aix.ads: Likewise.
6801 * a-intnam-darwin.ads: Likewise.
6802 * a-intnam-dummy.ads: Likewise.
6803 * a-intnam-freebsd.ads: Likewise.
6804 * a-intnam-hpux.ads: Likewise.
6805 * a-intnam-irix.ads: Likewise.
6806 * a-intnam-linux.ads: Likewise.
6807 * a-intnam-lynxos.ads: Likewise.
6808 * a-intnam-mingw.ads: Likewise.
6809 * a-intnam-rtems.ads: Likewise.
6810 * a-intnam-solaris.ads: Likewise.
6811 * a-intnam-tru64.ads: Likewise.
6812 * a-intnam-vms.ads: Likewise.
6813 * a-intnam-vxworks.ads: Likewise.
6814 * a-intsig.adb: Likewise.
6815 * a-intsig.ads: Likewise.
6816 * a-ngcefu.adb: Likewise.
6817 * a-ngcoar.adb: Likewise.
6818 * a-ngcoty.adb: Likewise.
6819 * a-ngcoty.ads: Likewise.
6820 * a-ngelfu.adb: Likewise.
6821 * a-ngrear.adb: Likewise.
6822 * a-ngrear.ads: Likewise.
6823 * a-nudira.adb: Likewise.
6824 * a-nudira.ads: Likewise.
6825 * a-nuflra.adb: Likewise.
6826 * a-nuflra.ads: Likewise.
6827 * a-numaux-darwin.adb: Likewise.
6828 * a-numaux-darwin.ads: Likewise.
6829 * a-numaux-libc-x86.ads: Likewise.
6830 * a-numaux-vxworks.ads: Likewise.
6831 * a-numaux-x86.adb: Likewise.
6832 * a-numaux-x86.ads: Likewise.
6833 * a-numaux.ads: Likewise.
6834 * a-rbtgso.adb: Likewise.
6835 * a-rbtgso.ads: Likewise.
6836 * a-reatim.ads: Likewise.
6837 * a-retide.adb: Likewise.
6838 * a-retide.ads: Likewise.
6839 * a-rttiev.adb: Likewise.
6840 * a-rttiev.ads: Likewise.
6841 * a-secain.adb: Likewise.
6842 * a-secain.ads: Likewise.
6843 * a-sequio.adb: Likewise.
6844 * a-sequio.ads: Likewise.
6845 * a-shcain.adb: Likewise.
6846 * a-shcain.ads: Likewise.
6847 * a-siocst.adb: Likewise.
6848 * a-siocst.ads: Likewise.
6849 * a-slcain.adb: Likewise.
6850 * a-slcain.ads: Likewise.
6851 * a-ssicst.adb: Likewise.
6852 * a-ssicst.ads: Likewise.
6853 * a-stboha.adb: Likewise.
6854 * a-stmaco.ads: Likewise.
6855 * a-storio.adb: Likewise.
6856 * a-strbou.adb: Likewise.
6857 * a-strbou.ads: Likewise.
6858 * a-stream.ads: Likewise.
6859 * a-strfix.adb: Likewise.
6860 * a-strhas.adb: Likewise.
6861 * a-strmap.adb: Likewise.
6862 * a-strmap.ads: Likewise.
6863 * a-strsea.adb: Likewise.
6864 * a-strsea.ads: Likewise.
6865 * a-strsup.adb: Likewise.
6866 * a-strsup.ads: Likewise.
6867 * a-strunb.adb: Likewise.
6868 * a-strunb.ads: Likewise.
6869 * a-ststio.adb: Likewise.
6870 * a-ststio.ads: Likewise.
6871 * a-stunau.adb: Likewise.
6872 * a-stunau.ads: Likewise.
6873 * a-stunha.adb: Likewise.
6874 * a-stwibo.adb: Likewise.
6875 * a-stwibo.ads: Likewise.
6876 * a-stwifi.adb: Likewise.
6877 * a-stwiha.adb: Likewise.
6878 * a-stwima.adb: Likewise.
6879 * a-stwima.ads: Likewise.
6880 * a-stwise.adb: Likewise.
6881 * a-stwise.ads: Likewise.
6882 * a-stwisu.adb: Likewise.
6883 * a-stwisu.ads: Likewise.
6884 * a-stwiun.adb: Likewise.
6885 * a-stwiun.ads: Likewise.
6886 * a-stzbou.adb: Likewise.
6887 * a-stzbou.ads: Likewise.
6888 * a-stzfix.adb: Likewise.
6889 * a-stzhas.adb: Likewise.
6890 * a-stzmap.adb: Likewise.
6891 * a-stzmap.ads: Likewise.
6892 * a-stzsea.adb: Likewise.
6893 * a-stzsea.ads: Likewise.
6894 * a-stzsup.adb: Likewise.
6895 * a-stzsup.ads: Likewise.
6896 * a-stzunb.adb: Likewise.
6897 * a-stzunb.ads: Likewise.
6898 * a-suteio.adb: Likewise.
6899 * a-suteio.ads: Likewise.
6900 * a-swbwha.adb: Likewise.
6901 * a-swmwco.ads: Likewise.
6902 * a-swunau.adb: Likewise.
6903 * a-swunau.ads: Likewise.
6904 * a-swuwha.adb: Likewise.
6905 * a-swuwti.adb: Likewise.
6906 * a-swuwti.ads: Likewise.
6907 * a-sytaco.adb: Likewise.
6908 * a-sytaco.ads: Likewise.
6909 * a-szbzha.adb: Likewise.
6910 * a-szmzco.ads: Likewise.
6911 * a-szunau.adb: Likewise.
6912 * a-szunau.ads: Likewise.
6913 * a-szuzha.adb: Likewise.
6914 * a-szuzti.adb: Likewise.
6915 * a-szuzti.ads: Likewise.
6916 * a-tags.adb: Likewise.
6917 * a-tags.ads: Likewise.
6918 * a-tasatt.ads: Likewise.
6919 * a-taside.adb: Likewise.
6920 * a-taside.ads: Likewise.
6921 * a-taster.adb: Likewise.
6922 * a-teioed.adb: Likewise.
6923 * a-teioed.ads: Likewise.
6924 * a-textio.adb: Likewise.
6925 * a-textio.ads: Likewise.
6926 * a-tiboio.adb: Likewise.
6927 * a-ticoau.adb: Likewise.
6928 * a-ticoau.ads: Likewise.
6929 * a-ticoio.adb: Likewise.
6930 * a-ticoio.ads: Likewise.
6931 * a-tideau.adb: Likewise.
6932 * a-tideau.ads: Likewise.
6933 * a-tideio.adb: Likewise.
6934 * a-tideio.ads: Likewise.
6935 * a-tienau.adb: Likewise.
6936 * a-tienau.ads: Likewise.
6937 * a-tienio.adb: Likewise.
6938 * a-tienio.ads: Likewise.
6939 * a-tifiio.adb: Likewise.
6940 * a-tifiio.ads: Likewise.
6941 * a-tiflau.adb: Likewise.
6942 * a-tiflau.ads: Likewise.
6943 * a-tiflio.adb: Likewise.
6944 * a-tiflio.ads: Likewise.
6945 * a-tigeau.adb: Likewise.
6946 * a-tigeau.ads: Likewise.
6947 * a-tiinau.adb: Likewise.
6948 * a-tiinau.ads: Likewise.
6949 * a-tiinio.adb: Likewise.
6950 * a-tiinio.ads: Likewise.
6951 * a-timoau.adb: Likewise.
6952 * a-timoau.ads: Likewise.
6953 * a-timoio.adb: Likewise.
6954 * a-timoio.ads: Likewise.
6955 * a-tiocst.adb: Likewise.
6956 * a-tiocst.ads: Likewise.
6957 * a-titest.adb: Likewise.
6958 * a-wichun.adb: Likewise.
6959 * a-wichun.ads: Likewise.
6960 * a-witeio.adb: Likewise.
6961 * a-witeio.ads: Likewise.
6962 * a-wtcoau.adb: Likewise.
6963 * a-wtcoau.ads: Likewise.
6964 * a-wtcoio.adb: Likewise.
6965 * a-wtcstr.adb: Likewise.
6966 * a-wtcstr.ads: Likewise.
6967 * a-wtdeau.adb: Likewise.
6968 * a-wtdeau.ads: Likewise.
6969 * a-wtdeio.adb: Likewise.
6970 * a-wtdeio.ads: Likewise.
6971 * a-wtedit.adb: Likewise.
6972 * a-wtedit.ads: Likewise.
6973 * a-wtenau.adb: Likewise.
6974 * a-wtenau.ads: Likewise.
6975 * a-wtenio.adb: Likewise.
6976 * a-wtenio.ads: Likewise.
6977 * a-wtfiio.adb: Likewise.
6978 * a-wtfiio.ads: Likewise.
6979 * a-wtflau.adb: Likewise.
6980 * a-wtflau.ads: Likewise.
6981 * a-wtflio.adb: Likewise.
6982 * a-wtflio.ads: Likewise.
6983 * a-wtgeau.adb: Likewise.
6984 * a-wtgeau.ads: Likewise.
6985 * a-wtinau.adb: Likewise.
6986 * a-wtinau.ads: Likewise.
6987 * a-wtinio.adb: Likewise.
6988 * a-wtmoau.adb: Likewise.
6989 * a-wtmoau.ads: Likewise.
6990 * a-wtmoio.adb: Likewise.
6991 * a-wtmoio.ads: Likewise.
6992 * a-wttest.adb: Likewise.
6993 * a-wwboio.adb: Likewise.
6994 * a-zchuni.adb: Likewise.
6995 * a-zchuni.ads: Likewise.
6996 * a-ztcoau.adb: Likewise.
6997 * a-ztcoau.ads: Likewise.
6998 * a-ztcoio.adb: Likewise.
6999 * a-ztcstr.adb: Likewise.
7000 * a-ztcstr.ads: Likewise.
7001 * a-ztdeau.adb: Likewise.
7002 * a-ztdeau.ads: Likewise.
7003 * a-ztdeio.adb: Likewise.
7004 * a-ztdeio.ads: Likewise.
7005 * a-ztedit.adb: Likewise.
7006 * a-ztedit.ads: Likewise.
7007 * a-ztenau.adb: Likewise.
7008 * a-ztenau.ads: Likewise.
7009 * a-ztenio.adb: Likewise.
7010 * a-ztenio.ads: Likewise.
7011 * a-ztexio.adb: Likewise.
7012 * a-ztexio.ads: Likewise.
7013 * a-ztfiio.adb: Likewise.
7014 * a-ztfiio.ads: Likewise.
7015 * a-ztflau.adb: Likewise.
7016 * a-ztflau.ads: Likewise.
7017 * a-ztflio.adb: Likewise.
7018 * a-ztflio.ads: Likewise.
7019 * a-ztgeau.adb: Likewise.
7020 * a-ztgeau.ads: Likewise.
7021 * a-ztinau.adb: Likewise.
7022 * a-ztinau.ads: Likewise.
7023 * a-ztinio.adb: Likewise.
7024 * a-ztmoau.adb: Likewise.
7025 * a-ztmoau.ads: Likewise.
7026 * a-ztmoio.adb: Likewise.
7027 * a-ztmoio.ads: Likewise.
7028 * a-zttest.adb: Likewise.
7029 * a-zzboio.adb: Likewise.
7030 * adadecode.c: Likewise.
7031 * adaint.c: Likewise.
7032 * adaint.h: Likewise.
7033 * alloc.ads: Likewise.
7034 * argv.c: Likewise.
7035 * arit64.c: Likewise.
7036 * atree.adb: Likewise.
7037 * atree.ads: Likewise.
7038 * aux-io.c: Likewise.
7039 * cal.c: Likewise.
7040 * casing.adb: Likewise.
7041 * casing.ads: Likewise.
7042 * cio.c: Likewise.
7043 * csets.adb: Likewise.
7044 * csets.ads: Likewise.
7045 * cstreams.c: Likewise.
7046 * ctrl_c.c: Likewise.
7047 * debug.adb: Likewise.
7048 * debug.ads: Likewise.
7049 * dec.ads: Likewise.
7050 * einfo.adb: Likewise.
7051 * einfo.ads: Likewise.
7052 * elists.adb: Likewise.
7053 * elists.ads: Likewise.
7054 * env.c: Likewise.
7055 * env.h: Likewise.
7056 * errno.c: Likewise.
7057 * exit.c: Likewise.
7058 * fe.h: Likewise.
7059 * final.c: Likewise.
7060 * fname.adb: Likewise.
7061 * fname.ads: Likewise.
7062 * g-allein.ads: Likewise.
7063 * g-alleve.adb: Likewise.
7064 * g-alleve.ads: Likewise.
7065 * g-altcon.adb: Likewise.
7066 * g-altcon.ads: Likewise.
7067 * g-altive.ads: Likewise.
7068 * g-alveop.adb: Likewise.
7069 * g-alveop.ads: Likewise.
7070 * g-alvety.ads: Likewise.
7071 * g-alvevi.ads: Likewise.
7072 * g-arrspl.adb: Likewise.
7073 * g-arrspl.ads: Likewise.
7074 * g-calend.ads: Likewise.
7075 * g-comlin.adb: Likewise.
7076 * g-debpoo.adb: Likewise.
7077 * g-debpoo.ads: Likewise.
7078 * g-eacodu-vms.adb: Likewise.
7079 * g-eacodu.adb: Likewise.
7080 * g-excact.adb: Likewise.
7081 * g-excact.ads: Likewise.
7082 * g-locfil.adb: Likewise.
7083 * g-os_lib.ads: Likewise.
7084 * g-rannum.adb: Likewise.
7085 * g-rannum.ads: Likewise.
7086 * g-regist.adb: Likewise.
7087 * g-regist.ads: Likewise.
7088 * g-signal.adb: Likewise.
7089 * g-signal.ads: Likewise.
7090 * g-soccon.ads: Likewise.
7091 * g-string.adb: Likewise.
7092 * g-string.ads: Likewise.
7093 * g-strspl.ads: Likewise.
7094 * g-timsta.adb: Likewise.
7095 * g-timsta.ads: Likewise.
7096 * g-trasym-vms-alpha.adb: Likewise.
7097 * g-trasym-vms-ia64.adb: Likewise.
7098 * g-utf_32.adb: Likewise.
7099 * g-utf_32.ads: Likewise.
7100 * g-wistsp.ads: Likewise.
7101 * g-zstspl.ads: Likewise.
7102 * gmem.c: Likewise.
7103 * gnatvsn.adb: Likewise.
7104 * gnatvsn.ads: Likewise.
7105 * gsocket.h: Likewise.
7106 * hostparm.ads: Likewise.
7107 * i-c.adb: Likewise.
7108 * i-cexten.ads: Likewise.
7109 * i-cobol.adb: Likewise.
7110 * i-cobol.ads: Likewise.
7111 * i-cpoint.adb: Likewise.
7112 * i-cpoint.ads: Likewise.
7113 * i-cpp.adb: Likewise.
7114 * i-cpp.ads: Likewise.
7115 * i-cstrea-vms.adb: Likewise.
7116 * i-cstrea.adb: Likewise.
7117 * i-cstrea.ads: Likewise.
7118 * i-cstrin.adb: Likewise.
7119 * i-cstrin.ads: Likewise.
7120 * i-forbla-darwin.adb: Likewise.
7121 * i-forbla-unimplemented.ads: Likewise.
7122 * i-forbla.adb: Likewise.
7123 * i-forbla.ads: Likewise.
7124 * i-forlap.ads: Likewise.
7125 * i-fortra.adb: Likewise.
7126 * i-pacdec.adb: Likewise.
7127 * i-pacdec.ads: Likewise.
7128 * i-vxwoio.adb: Likewise.
7129 * i-vxwoio.ads: Likewise.
7130 * indepsw-aix.adb: Likewise.
7131 * indepsw-gnu.adb: Likewise.
7132 * indepsw-mingw.adb: Likewise.
7133 * indepsw.adb: Likewise.
7134 * indepsw.ads: Likewise.
7135 * init.c: Likewise.
7136 * initialize.c: Likewise.
7137 * interfac.ads: Likewise.
7138 * krunch.adb: Likewise.
7139 * krunch.ads: Likewise.
7140 * lib-list.adb: Likewise.
7141 * lib-sort.adb: Likewise.
7142 * lib.adb: Likewise.
7143 * lib.ads: Likewise.
7144 * link.c: Likewise.
7145 * math_lib.adb: Likewise.
7146 * memtrack.adb: Likewise.
7147 * mingw32.h: Likewise.
7148 * mkdir.c: Likewise.
7149 * namet-sp.adb: Likewise.
7150 * namet-sp.ads: Likewise.
7151 * namet.adb: Likewise.
7152 * namet.ads: Likewise.
7153 * nlists.adb: Likewise.
7154 * nlists.ads: Likewise.
7155 * opt.adb: Likewise.
7156 * opt.ads: Likewise.
7157 * output.adb: Likewise.
7158 * output.ads: Likewise.
7159 * raise-gcc.c: Likewise.
7160 * raise.c: Likewise.
7161 * raise.h: Likewise.
7162 * repinfo.adb: Likewise.
7163 * repinfo.ads: Likewise.
7164 * repinfo.h: Likewise.
7165 * rident.ads: Likewise.
7166 * s-addima.adb: Likewise.
7167 * s-addima.ads: Likewise.
7168 * s-addope.adb: Likewise.
7169 * s-addope.ads: Likewise.
7170 * s-arit64.adb: Likewise.
7171 * s-arit64.ads: Likewise.
7172 * s-assert.adb: Likewise.
7173 * s-assert.ads: Likewise.
7174 * s-asthan-vms-alpha.adb: Likewise.
7175 * s-asthan.adb: Likewise.
7176 * s-asthan.ads: Likewise.
7177 * s-atacco.adb: Likewise.
7178 * s-atacco.ads: Likewise.
7179 * s-auxdec-empty.adb: Likewise.
7180 * s-auxdec-empty.ads: Likewise.
7181 * s-auxdec-vms_64.ads: Likewise.
7182 * s-auxdec.adb: Likewise.
7183 * s-auxdec.ads: Likewise.
7184 * s-bitops.adb: Likewise.
7185 * s-bitops.ads: Likewise.
7186 * s-boarop.ads: Likewise.
7187 * s-carsi8.adb: Likewise.
7188 * s-carsi8.ads: Likewise.
7189 * s-carun8.adb: Likewise.
7190 * s-carun8.ads: Likewise.
7191 * s-casi16.adb: Likewise.
7192 * s-casi16.ads: Likewise.
7193 * s-casi32.adb: Likewise.
7194 * s-casi32.ads: Likewise.
7195 * s-casi64.adb: Likewise.
7196 * s-casi64.ads: Likewise.
7197 * s-casuti.ads: Likewise.
7198 * s-caun16.adb: Likewise.
7199 * s-caun16.ads: Likewise.
7200 * s-caun32.adb: Likewise.
7201 * s-caun32.ads: Likewise.
7202 * s-caun64.adb: Likewise.
7203 * s-caun64.ads: Likewise.
7204 * s-chepoo.ads: Likewise.
7205 * s-crc32.adb: Likewise.
7206 * s-crc32.ads: Likewise.
7207 * s-crtl.ads: Likewise.
7208 * s-direio.adb: Likewise.
7209 * s-direio.ads: Likewise.
7210 * s-dsaser.ads: Likewise.
7211 * s-except.adb: Likewise.
7212 * s-except.ads: Likewise.
7213 * s-exctab.adb: Likewise.
7214 * s-exctab.ads: Likewise.
7215 * s-exnint.adb: Likewise.
7216 * s-exnint.ads: Likewise.
7217 * s-exnllf.adb: Likewise.
7218 * s-exnllf.ads: Likewise.
7219 * s-exnlli.adb: Likewise.
7220 * s-exnlli.ads: Likewise.
7221 * s-expint.adb: Likewise.
7222 * s-expint.ads: Likewise.
7223 * s-explli.adb: Likewise.
7224 * s-explli.ads: Likewise.
7225 * s-expllu.adb: Likewise.
7226 * s-expllu.ads: Likewise.
7227 * s-expmod.adb: Likewise.
7228 * s-expmod.ads: Likewise.
7229 * s-expuns.adb: Likewise.
7230 * s-expuns.ads: Likewise.
7231 * s-fatflt.ads: Likewise.
7232 * s-fatgen.adb: Likewise.
7233 * s-fatgen.ads: Likewise.
7234 * s-fatlfl.ads: Likewise.
7235 * s-fatllf.ads: Likewise.
7236 * s-fatsfl.ads: Likewise.
7237 * s-ficobl.ads: Likewise.
7238 * s-fileio.adb: Likewise.
7239 * s-fileio.ads: Likewise.
7240 * s-filofl.ads: Likewise.
7241 * s-finimp.adb: Likewise.
7242 * s-finimp.ads: Likewise.
7243 * s-finroo.adb: Likewise.
7244 * s-finroo.ads: Likewise.
7245 * s-fishfl.ads: Likewise.
7246 * s-fore.adb: Likewise.
7247 * s-fore.ads: Likewise.
7248 * s-fvadfl.ads: Likewise.
7249 * s-fvaffl.ads: Likewise.
7250 * s-fvagfl.ads: Likewise.
7251 * s-gearop.adb: Likewise.
7252 * s-gearop.ads: Likewise.
7253 * s-gecobl.adb: Likewise.
7254 * s-gecobl.ads: Likewise.
7255 * s-gecola.adb: Likewise.
7256 * s-gecola.ads: Likewise.
7257 * s-gerebl.adb: Likewise.
7258 * s-gerebl.ads: Likewise.
7259 * s-gerela.adb: Likewise.
7260 * s-gerela.ads: Likewise.
7261 * s-geveop.adb: Likewise.
7262 * s-geveop.ads: Likewise.
7263 * s-gloloc.adb: Likewise.
7264 * s-gloloc.ads: Likewise.
7265 * s-hibaen.ads: Likewise.
7266 * s-imenne.adb: Likewise.
7267 * s-imenne.ads: Likewise.
7268 * s-imgbiu.adb: Likewise.
7269 * s-imgbiu.ads: Likewise.
7270 * s-imgboo.adb: Likewise.
7271 * s-imgboo.ads: Likewise.
7272 * s-imgcha.adb: Likewise.
7273 * s-imgcha.ads: Likewise.
7274 * s-imgdec.adb: Likewise.
7275 * s-imgdec.ads: Likewise.
7276 * s-imgenu.adb: Likewise.
7277 * s-imgenu.ads: Likewise.
7278 * s-imgint.adb: Likewise.
7279 * s-imgint.ads: Likewise.
7280 * s-imgllb.adb: Likewise.
7281 * s-imgllb.ads: Likewise.
7282 * s-imglld.adb: Likewise.
7283 * s-imglld.ads: Likewise.
7284 * s-imglli.adb: Likewise.
7285 * s-imglli.ads: Likewise.
7286 * s-imgllu.adb: Likewise.
7287 * s-imgllu.ads: Likewise.
7288 * s-imgllw.adb: Likewise.
7289 * s-imgllw.ads: Likewise.
7290 * s-imgrea.adb: Likewise.
7291 * s-imgrea.ads: Likewise.
7292 * s-imguns.adb: Likewise.
7293 * s-imguns.ads: Likewise.
7294 * s-imgwch.adb: Likewise.
7295 * s-imgwch.ads: Likewise.
7296 * s-imgwiu.adb: Likewise.
7297 * s-imgwiu.ads: Likewise.
7298 * s-inmaop-dummy.adb: Likewise.
7299 * s-inmaop-vms.adb: Likewise.
7300 * s-inmaop.ads: Likewise.
7301 * s-interr-hwint.adb: Likewise.
7302 * s-interr-sigaction.adb: Likewise.
7303 * s-interr-vms.adb: Likewise.
7304 * s-interr.adb: Likewise.
7305 * s-interr.ads: Likewise.
7306 * s-intman-dummy.adb: Likewise.
7307 * s-intman-mingw.adb: Likewise.
7308 * s-intman-posix.adb: Likewise.
7309 * s-intman-solaris.adb: Likewise.
7310 * s-intman-vms.adb: Likewise.
7311 * s-intman-vms.ads: Likewise.
7312 * s-intman-vxworks.adb: Likewise.
7313 * s-intman-vxworks.ads: Likewise.
7314 * s-intman.ads: Likewise.
7315 * s-io.adb: Likewise.
7316 * s-io.ads: Likewise.
7317 * s-linux-alpha.ads: Likewise.
7318 * s-linux-hppa.ads: Likewise.
7319 * s-linux.ads: Likewise.
7320 * s-maccod.ads: Likewise.
7321 * s-mantis.adb: Likewise.
7322 * s-mantis.ads: Likewise.
7323 * s-mastop-irix.adb: Likewise.
7324 * s-mastop.adb: Likewise.
7325 * s-mastop.ads: Likewise.
7326 * s-memcop.ads: Likewise.
7327 * s-memory-mingw.adb: Likewise.
7328 * s-memory.adb: Likewise.
7329 * s-memory.ads: Likewise.
7330 * s-os_lib.ads: Likewise.
7331 * s-oscons-tmplt.c: Likewise.
7332 * s-osinte-aix.adb: Likewise.
7333 * s-osinte-darwin.adb: Likewise.
7334 * s-osinte-freebsd.adb: Likewise.
7335 * s-osinte-irix.adb: Likewise.
7336 * s-osinte-lynxos-3.adb: Likewise.
7337 * s-osinte-rtems.ads: Likewise.
7338 * s-osinte-tru64.adb: Likewise.
7339 * s-osinte-vxworks-kernel.adb: Likewise.
7340 * s-osinte-vxworks.adb: Likewise.
7341 * s-osprim-mingw.adb: Likewise.
7342 * s-osprim-posix.adb: Likewise.
7343 * s-osprim-solaris.adb: Likewise.
7344 * s-osprim-unix.adb: Likewise.
7345 * s-osprim-vms.adb: Likewise.
7346 * s-osprim-vms.ads: Likewise.
7347 * s-osprim-vxworks.adb: Likewise.
7348 * s-osprim.ads: Likewise.
7349 * s-pack03.adb: Likewise.
7350 * s-pack03.ads: Likewise.
7351 * s-pack05.adb: Likewise.
7352 * s-pack05.ads: Likewise.
7353 * s-pack06.adb: Likewise.
7354 * s-pack06.ads: Likewise.
7355 * s-pack07.adb: Likewise.
7356 * s-pack07.ads: Likewise.
7357 * s-pack09.adb: Likewise.
7358 * s-pack09.ads: Likewise.
7359 * s-pack10.adb: Likewise.
7360 * s-pack10.ads: Likewise.
7361 * s-pack11.adb: Likewise.
7362 * s-pack11.ads: Likewise.
7363 * s-pack12.adb: Likewise.
7364 * s-pack12.ads: Likewise.
7365 * s-pack13.adb: Likewise.
7366 * s-pack13.ads: Likewise.
7367 * s-pack14.adb: Likewise.
7368 * s-pack14.ads: Likewise.
7369 * s-pack15.adb: Likewise.
7370 * s-pack15.ads: Likewise.
7371 * s-pack17.adb: Likewise.
7372 * s-pack17.ads: Likewise.
7373 * s-pack18.adb: Likewise.
7374 * s-pack18.ads: Likewise.
7375 * s-pack19.adb: Likewise.
7376 * s-pack19.ads: Likewise.
7377 * s-pack20.adb: Likewise.
7378 * s-pack20.ads: Likewise.
7379 * s-pack21.adb: Likewise.
7380 * s-pack21.ads: Likewise.
7381 * s-pack22.adb: Likewise.
7382 * s-pack22.ads: Likewise.
7383 * s-pack23.adb: Likewise.
7384 * s-pack23.ads: Likewise.
7385 * s-pack24.adb: Likewise.
7386 * s-pack24.ads: Likewise.
7387 * s-pack25.adb: Likewise.
7388 * s-pack25.ads: Likewise.
7389 * s-pack26.adb: Likewise.
7390 * s-pack26.ads: Likewise.
7391 * s-pack27.adb: Likewise.
7392 * s-pack27.ads: Likewise.
7393 * s-pack28.adb: Likewise.
7394 * s-pack28.ads: Likewise.
7395 * s-pack29.adb: Likewise.
7396 * s-pack29.ads: Likewise.
7397 * s-pack30.adb: Likewise.
7398 * s-pack30.ads: Likewise.
7399 * s-pack31.adb: Likewise.
7400 * s-pack31.ads: Likewise.
7401 * s-pack33.adb: Likewise.
7402 * s-pack33.ads: Likewise.
7403 * s-pack34.adb: Likewise.
7404 * s-pack34.ads: Likewise.
7405 * s-pack35.adb: Likewise.
7406 * s-pack35.ads: Likewise.
7407 * s-pack36.adb: Likewise.
7408 * s-pack36.ads: Likewise.
7409 * s-pack37.adb: Likewise.
7410 * s-pack37.ads: Likewise.
7411 * s-pack38.adb: Likewise.
7412 * s-pack38.ads: Likewise.
7413 * s-pack39.adb: Likewise.
7414 * s-pack39.ads: Likewise.
7415 * s-pack40.adb: Likewise.
7416 * s-pack40.ads: Likewise.
7417 * s-pack41.adb: Likewise.
7418 * s-pack41.ads: Likewise.
7419 * s-pack42.adb: Likewise.
7420 * s-pack42.ads: Likewise.
7421 * s-pack43.adb: Likewise.
7422 * s-pack43.ads: Likewise.
7423 * s-pack44.adb: Likewise.
7424 * s-pack44.ads: Likewise.
7425 * s-pack45.adb: Likewise.
7426 * s-pack45.ads: Likewise.
7427 * s-pack46.adb: Likewise.
7428 * s-pack46.ads: Likewise.
7429 * s-pack47.adb: Likewise.
7430 * s-pack47.ads: Likewise.
7431 * s-pack48.adb: Likewise.
7432 * s-pack48.ads: Likewise.
7433 * s-pack49.adb: Likewise.
7434 * s-pack49.ads: Likewise.
7435 * s-pack50.adb: Likewise.
7436 * s-pack50.ads: Likewise.
7437 * s-pack51.adb: Likewise.
7438 * s-pack51.ads: Likewise.
7439 * s-pack52.adb: Likewise.
7440 * s-pack52.ads: Likewise.
7441 * s-pack53.adb: Likewise.
7442 * s-pack53.ads: Likewise.
7443 * s-pack54.adb: Likewise.
7444 * s-pack54.ads: Likewise.
7445 * s-pack55.adb: Likewise.
7446 * s-pack55.ads: Likewise.
7447 * s-pack56.adb: Likewise.
7448 * s-pack56.ads: Likewise.
7449 * s-pack57.adb: Likewise.
7450 * s-pack57.ads: Likewise.
7451 * s-pack58.adb: Likewise.
7452 * s-pack58.ads: Likewise.
7453 * s-pack59.adb: Likewise.
7454 * s-pack59.ads: Likewise.
7455 * s-pack60.adb: Likewise.
7456 * s-pack60.ads: Likewise.
7457 * s-pack61.adb: Likewise.
7458 * s-pack61.ads: Likewise.
7459 * s-pack62.adb: Likewise.
7460 * s-pack62.ads: Likewise.
7461 * s-pack63.adb: Likewise.
7462 * s-pack63.ads: Likewise.
7463 * s-parame-ae653.ads: Likewise.
7464 * s-parame-hpux.ads: Likewise.
7465 * s-parame-rtems.adb: Likewise.
7466 * s-parame-vms-alpha.ads: Likewise.
7467 * s-parame-vms-ia64.ads: Likewise.
7468 * s-parame-vms-restrict.ads: Likewise.
7469 * s-parame-vxworks.adb: Likewise.
7470 * s-parame-vxworks.ads: Likewise.
7471 * s-parame.adb: Likewise.
7472 * s-parame.ads: Likewise.
7473 * s-parint.adb: Likewise.
7474 * s-parint.ads: Likewise.
7475 * s-pooglo.adb: Likewise.
7476 * s-pooglo.ads: Likewise.
7477 * s-pooloc.adb: Likewise.
7478 * s-pooloc.ads: Likewise.
7479 * s-poosiz.adb: Likewise.
7480 * s-poosiz.ads: Likewise.
7481 * s-powtab.ads: Likewise.
7482 * s-proinf-irix-athread.adb: Likewise.
7483 * s-proinf-irix-athread.ads: Likewise.
7484 * s-proinf.adb: Likewise.
7485 * s-proinf.ads: Likewise.
7486 * s-purexc.ads: Likewise.
7487 * s-rannum.adb: Likewise.
7488 * s-rannum.ads: Likewise.
7489 * s-restri.adb: Likewise.
7490 * s-restri.ads: Likewise.
7491 * s-rident.ads: Likewise.
7492 * s-rpc.adb: Likewise.
7493 * s-rpc.ads: Likewise.
7494 * s-scaval.adb: Likewise.
7495 * s-scaval.ads: Likewise.
7496 * s-secsta.adb: Likewise.
7497 * s-secsta.ads: Likewise.
7498 * s-sequio.adb: Likewise.
7499 * s-sequio.ads: Likewise.
7500 * s-shasto.adb: Likewise.
7501 * s-shasto.ads: Likewise.
7502 * s-soflin.adb: Likewise.
7503 * s-soflin.ads: Likewise.
7504 * s-solita.adb: Likewise.
7505 * s-solita.ads: Likewise.
7506 * s-sopco3.adb: Likewise.
7507 * s-sopco3.ads: Likewise.
7508 * s-sopco4.adb: Likewise.
7509 * s-sopco4.ads: Likewise.
7510 * s-sopco5.adb: Likewise.
7511 * s-sopco5.ads: Likewise.
7512 * s-stache.adb: Likewise.
7513 * s-stache.ads: Likewise.
7514 * s-stalib.adb: Likewise.
7515 * s-stalib.ads: Likewise.
7516 * s-stausa.adb: Likewise.
7517 * s-stausa.ads: Likewise.
7518 * s-stchop-limit.ads: Likewise.
7519 * s-stchop-rtems.adb: Likewise.
7520 * s-stchop-vxworks.adb: Likewise.
7521 * s-stchop.adb: Likewise.
7522 * s-stchop.ads: Likewise.
7523 * s-stoele.adb: Likewise.
7524 * s-stoele.ads: Likewise.
7525 * s-stopoo.adb: Likewise.
7526 * s-stopoo.ads: Likewise.
7527 * s-stratt.adb: Likewise.
7528 * s-stratt.ads: Likewise.
7529 * s-strcom.adb: Likewise.
7530 * s-strcom.ads: Likewise.
7531 * s-string.adb: Likewise.
7532 * s-string.ads: Likewise.
7533 * s-strops.adb: Likewise.
7534 * s-strops.ads: Likewise.
7535 * s-strxdr.adb: Likewise.
7536 * s-ststop.adb: Likewise.
7537 * s-ststop.ads: Likewise.
7538 * s-taasde.adb: Likewise.
7539 * s-taasde.ads: Likewise.
7540 * s-tadeca.adb: Likewise.
7541 * s-tadeca.ads: Likewise.
7542 * s-tadert.adb: Likewise.
7543 * s-tadert.ads: Likewise.
7544 * s-taenca.adb: Likewise.
7545 * s-taenca.ads: Likewise.
7546 * s-taprob.ads: Likewise.
7547 * s-taprop-dummy.adb: Likewise.
7548 * s-taprop-hpux-dce.adb: Likewise.
7549 * s-taprop-irix.adb: Likewise.
7550 * s-taprop-linux.adb: Likewise.
7551 * s-taprop-lynxos.adb: Likewise.
7552 * s-taprop-mingw.adb: Likewise.
7553 * s-taprop-posix.adb: Likewise.
7554 * s-taprop-solaris.adb: Likewise.
7555 * s-taprop-tru64.adb: Likewise.
7556 * s-taprop-vms.adb: Likewise.
7557 * s-taprop-vxworks.adb: Likewise.
7558 * s-taprop.ads: Likewise.
7559 * s-tarest.adb: Likewise.
7560 * s-tarest.ads: Likewise.
7561 * s-tasdeb.adb: Likewise.
7562 * s-tasdeb.ads: Likewise.
7563 * s-tasinf-irix.ads: Likewise.
7564 * s-tasinf-linux.adb: Likewise.
7565 * s-tasinf-linux.ads: Likewise.
7566 * s-tasinf-mingw.adb: Likewise.
7567 * s-tasinf-mingw.ads: Likewise.
7568 * s-tasinf-solaris.adb: Likewise.
7569 * s-tasinf-solaris.ads: Likewise.
7570 * s-tasinf-tru64.ads: Likewise.
7571 * s-tasinf.adb: Likewise.
7572 * s-tasinf.ads: Likewise.
7573 * s-tasini.adb: Likewise.
7574 * s-tasini.ads: Likewise.
7575 * s-taskin.adb: Likewise.
7576 * s-taskin.ads: Likewise.
7577 * s-taspri-dummy.ads: Likewise.
7578 * s-taspri-hpux-dce.ads: Likewise.
7579 * s-taspri-mingw.ads: Likewise.
7580 * s-taspri-solaris.ads: Likewise.
7581 * s-taspri-tru64.ads: Likewise.
7582 * s-taspri-vms.ads: Likewise.
7583 * s-taspri-vxworks.ads: Likewise.
7584 * s-tasque.adb: Likewise.
7585 * s-tasque.ads: Likewise.
7586 * s-tasren.adb: Likewise.
7587 * s-tasren.ads: Likewise.
7588 * s-tasres.ads: Likewise.
7589 * s-tassta.adb: Likewise.
7590 * s-tassta.ads: Likewise.
7591 * s-tasuti.adb: Likewise.
7592 * s-tasuti.ads: Likewise.
7593 * s-tfsetr-default.adb: Likewise.
7594 * s-tfsetr-vxworks.adb: Likewise.
7595 * s-tpinop.adb: Likewise.
7596 * s-tpinop.ads: Likewise.
7597 * s-tpoben.adb: Likewise.
7598 * s-tpoben.ads: Likewise.
7599 * s-tpobop.adb: Likewise.
7600 * s-tpobop.ads: Likewise.
7601 * s-tpopde-vms.adb: Likewise.
7602 * s-tpopde-vms.ads: Likewise.
7603 * s-tpopsp-lynxos.adb: Likewise.
7604 * s-tpopsp-posix-foreign.adb: Likewise.
7605 * s-tpopsp-posix.adb: Likewise.
7606 * s-tpopsp-solaris.adb: Likewise.
7607 * s-tpopsp-vxworks.adb: Likewise.
7608 * s-tporft.adb: Likewise.
7609 * s-tposen.adb: Likewise.
7610 * s-tposen.ads: Likewise.
7611 * s-traceb.adb: Likewise.
7612 * s-traceb.ads: Likewise.
7613 * s-traces-default.adb: Likewise.
7614 * s-traces.adb: Likewise.
7615 * s-traces.ads: Likewise.
7616 * s-traent-vms.adb: Likewise.
7617 * s-traent-vms.ads: Likewise.
7618 * s-traent.adb: Likewise.
7619 * s-traent.ads: Likewise.
7620 * s-trafor-default.adb: Likewise.
7621 * s-trafor-default.ads: Likewise.
7622 * s-tratas-default.adb: Likewise.
7623 * s-tratas.adb: Likewise.
7624 * s-tratas.ads: Likewise.
7625 * s-unstyp.ads: Likewise.
7626 * s-utf_32.adb: Likewise.
7627 * s-utf_32.ads: Likewise.
7628 * s-vaflop-vms-alpha.adb: Likewise.
7629 * s-vaflop.adb: Likewise.
7630 * s-vaflop.ads: Likewise.
7631 * s-valboo.adb: Likewise.
7632 * s-valboo.ads: Likewise.
7633 * s-valcha.adb: Likewise.
7634 * s-valcha.ads: Likewise.
7635 * s-valdec.adb: Likewise.
7636 * s-valdec.ads: Likewise.
7637 * s-valenu.adb: Likewise.
7638 * s-valenu.ads: Likewise.
7639 * s-valint.adb: Likewise.
7640 * s-valint.ads: Likewise.
7641 * s-vallld.adb: Likewise.
7642 * s-vallld.ads: Likewise.
7643 * s-vallli.adb: Likewise.
7644 * s-vallli.ads: Likewise.
7645 * s-valllu.adb: Likewise.
7646 * s-valllu.ads: Likewise.
7647 * s-valrea.adb: Likewise.
7648 * s-valrea.ads: Likewise.
7649 * s-valuns.adb: Likewise.
7650 * s-valuns.ads: Likewise.
7651 * s-valuti.adb: Likewise.
7652 * s-valuti.ads: Likewise.
7653 * s-valwch.adb: Likewise.
7654 * s-valwch.ads: Likewise.
7655 * s-veboop.adb: Likewise.
7656 * s-veboop.ads: Likewise.
7657 * s-vector.ads: Likewise.
7658 * s-vercon.adb: Likewise.
7659 * s-vercon.ads: Likewise.
7660 * s-vmexta.adb: Likewise.
7661 * s-vmexta.ads: Likewise.
7662 * s-vxwext-kernel.ads: Likewise.
7663 * s-vxwext-rtp.adb: Likewise.
7664 * s-vxwext-rtp.ads: Likewise.
7665 * s-vxwext.ads: Likewise.
7666 * s-vxwork-arm.ads: Likewise.
7667 * s-vxwork-m68k.ads: Likewise.
7668 * s-vxwork-mips.ads: Likewise.
7669 * s-vxwork-ppc.ads: Likewise.
7670 * s-vxwork-sparcv9.ads: Likewise.
7671 * s-vxwork-x86.ads: Likewise.
7672 * s-wchcnv.adb: Likewise.
7673 * s-wchcnv.ads: Likewise.
7674 * s-wchcon.adb: Likewise.
7675 * s-wchcon.ads: Likewise.
7676 * s-wchjis.adb: Likewise.
7677 * s-wchjis.ads: Likewise.
7678 * s-wchstw.adb: Likewise.
7679 * s-wchstw.ads: Likewise.
7680 * s-wchwts.adb: Likewise.
7681 * s-wchwts.ads: Likewise.
7682 * s-widboo.adb: Likewise.
7683 * s-widboo.ads: Likewise.
7684 * s-widcha.adb: Likewise.
7685 * s-widcha.ads: Likewise.
7686 * s-widenu.adb: Likewise.
7687 * s-widenu.ads: Likewise.
7688 * s-widlli.adb: Likewise.
7689 * s-widlli.ads: Likewise.
7690 * s-widllu.adb: Likewise.
7691 * s-widllu.ads: Likewise.
7692 * s-widwch.adb: Likewise.
7693 * s-widwch.ads: Likewise.
7694 * s-win32.ads: Likewise.
7695 * s-winext.ads: Likewise.
7696 * s-wwdcha.adb: Likewise.
7697 * s-wwdcha.ads: Likewise.
7698 * s-wwdenu.adb: Likewise.
7699 * s-wwdenu.ads: Likewise.
7700 * s-wwdwch.adb: Likewise.
7701 * s-wwdwch.ads: Likewise.
7702 * scans.adb: Likewise.
7703 * scans.ads: Likewise.
7704 * seh_init.c: Likewise.
7705 * sfn_scan.adb: Likewise.
7706 * sinfo.adb: Likewise.
7707 * sinfo.ads: Likewise.
7708 * sinput.adb: Likewise.
7709 * sinput.ads: Likewise.
7710 * snames.adb: Likewise.
7711 * snames.ads: Likewise.
7712 * socket.c: Likewise.
7713 * stand.adb: Likewise.
7714 * stand.ads: Likewise.
7715 * stringt.adb: Likewise.
7716 * stringt.ads: Likewise.
7717 * sysdep.c: Likewise.
7718 * system-aix.ads: Likewise.
7719 * system-darwin-ppc.ads: Likewise.
7720 * system-darwin-x86.ads: Likewise.
7721 * system-darwin-x86_64.ads: Likewise.
7722 * system-freebsd-x86.ads: Likewise.
7723 * system-hpux-ia64.ads: Likewise.
7724 * system-hpux.ads: Likewise.
7725 * system-irix-n32.ads: Likewise.
7726 * system-irix-n64.ads: Likewise.
7727 * system-irix-o32.ads: Likewise.
7728 * system-linux-alpha.ads: Likewise.
7729 * system-linux-hppa.ads: Likewise.
7730 * system-linux-ia64.ads: Likewise.
7731 * system-linux-mips.ads: Likewise.
7732 * system-linux-mipsel.ads: Likewise.
7733 * system-linux-ppc.ads: Likewise.
7734 * system-linux-ppc64.ads: Likewise.
7735 * system-linux-s390.ads: Likewise.
7736 * system-linux-s390x.ads: Likewise.
7737 * system-linux-sh4.ads: Likewise.
7738 * system-linux-sparc.ads: Likewise.
7739 * system-linux-sparcv9.ads: Likewise.
7740 * system-linux-x86.ads: Likewise.
7741 * system-linux-x86_64.ads: Likewise.
7742 * system-lynxos-ppc.ads: Likewise.
7743 * system-lynxos-x86.ads: Likewise.
7744 * system-mingw-x86_64.ads: Likewise.
7745 * system-mingw.ads: Likewise.
7746 * system-rtems.ads: Likewise.
7747 * system-solaris-sparc.ads: Likewise.
7748 * system-solaris-sparcv9.ads: Likewise.
7749 * system-solaris-x86.ads: Likewise.
7750 * system-solaris-x86_64.ads: Likewise.
7751 * system-tru64.ads: Likewise.
7752 * system-vms-ia64.ads: Likewise.
7753 * system-vms-zcx.ads: Likewise.
7754 * system-vms.ads: Likewise.
7755 * system-vms_64.ads: Likewise.
7756 * system-vxworks-arm.ads: Likewise.
7757 * system-vxworks-m68k.ads: Likewise.
7758 * system-vxworks-mips.ads: Likewise.
7759 * system-vxworks-ppc.ads: Likewise.
7760 * system-vxworks-sparcv9.ads: Likewise.
7761 * system-vxworks-x86.ads: Likewise.
7762 * system.ads: Likewise.
7763 * table.adb: Likewise.
7764 * table.ads: Likewise.
7765 * targext.c: Likewise.
7766 * targparm.ads: Likewise.
7767 * tree_in.adb: Likewise.
7768 * tree_in.ads: Likewise.
7769 * tree_io.adb: Likewise.
7770 * tree_io.ads: Likewise.
7771 * types.adb: Likewise.
7772 * types.ads: Likewise.
7773 * uintp.adb: Likewise.
7774 * uintp.ads: Likewise.
7775 * uname.adb: Likewise.
7776 * uname.ads: Likewise.
7777 * urealp.adb: Likewise.
7778 * urealp.ads: Likewise.
7779 * vx_stack_info.c: Likewise.
7780 * widechar.adb: Likewise.
7781 * widechar.ads: Likewise.
7782 * exp_attr.adb: Change copyright header to refer to version
7783 3 of the GNU General Public License and to point readers at the
7784 COPYING3 file and the FSF's license web page.
7785 * sem.adb: Likewise.
7786 * sem_attr.ads: Likewise.
7787 * freeze.adb: Likewise.
7788 * freeze.ads: Likewise.
7789 * errout.ads: Likewise.
7790 * erroutc.adb: Likewise.
7791 * exp_ch11.ads: Likewise.
7792
77932009-04-09 Jakub Jelinek <jakub@redhat.com>
7794
7795 * config-lang.in: Change copyright header to refer to version
7796 3 of the GNU General Public License and to point readers at the
7797 COPYING3 file and the FSF's license web page.
7798 * gcc-interface/trans.c: Likewise.
7799 * gnathtml.pl: Likewise.
7800 * gcc-interface/ada.h: Likewise. Remove runtime exception.
7801 * gcc-interface/gigi.h: Likewise.
7802 * gcc-interface/misc.c: Likewise.
7803 * gcc-interface/targtyps.c: Likewise.
7804
dd8cfe3a
AC
78052009-04-09 Nicolas Setton <setton@adacore.com>
7806
7807 * s-osinte-darwin.ads: Fix wrong binding to struc timeval.
7808
7809 * s-osinte-darwin.adb (To_Timeval): Adapt to fixed implementation of
7810 struct_timeval.
7811
78122009-04-09 Bob Duff <duff@adacore.com>
7813
7814 * exp_ch5.adb, exp_ch9.adb: Correct miscellaneous Slocs in
7815 internally-generated nodes related to select statements to avoid
7816 confusing the debugger.
7817
78182009-04-09 Pascal Obry <obry@adacore.com>
7819
7820 * make.adb: Ensure that all linker arguments are duplicated.
7821
59f3dd0a
AC
78222009-04-09 Robert Dewar <dewar@adacore.com>
7823
7824 * sem_ch5.adb: Minor reformatting
7825
78262009-04-09 Vincent Celier <celier@adacore.com>
7827
7828 * vms_data.ads:
7829 Change GNAT CHECK qualifier /DIAGNOSIS_LIMIT to /DIAGNOSTIC_LIMIT
7830 New qualifier /LEXPAND_SOURCE=nnn for -gnatGnnn
7831 New qualifier /LXDEBUG=nnn for -gnatDnnn
7832 For H820-010
7833
7834 * gnat_ugn.texi:
7835 Update documentation for VMS qualifiers equivalent to -gnatGnn and
7836 -gnatDnn
7837
78382009-04-09 Nicolas Setton <setton@adacore.com>
7839
7840 * s-osinte-darwin.ads: (Pad_Type): Make this an array of unsigned_long,
7841 to match layout of siginfo_t in sys/signal.h.
7842
7843 * gcc-interface/Makefile.in: Add section for x86_64 darwin.
7844
78452009-04-09 Thomas Quinot <quinot@adacore.com>
7846
7847 * g-socket.ads: (Fd_Set): Use Interfaces.C.long alignment.
7848
78492009-04-09 Nicolas Setton <setton@adacore.com>
7850
7851 * s-oscons-tmplt.c: Allow long lines in the generated spec.
7852 Add generation of Darwin-specific constants needed when binding to the
7853 pthread library.
7854
78552009-04-09 Robert Dewar <dewar@adacore.com>
7856
53b2323e
RH
7857 * checks.adb:
7858 (Insert_Valid_Check): Avoid unnecessary generation of junk declaration
7859 when no invalid values exist, Avoid duplicate read of atomic variable.
59f3dd0a 7860
53b2323e
RH
7861 * cstand.adb (Build_Signed_Integer_Type): Set Is_Known_Valid
7862 (Standard_Unsigned): Set Is_Known_Valid
59f3dd0a 7863
53b2323e 7864 * sem_ch3.adb (Analyze_Subtype_Declaration): Copy Is_Known_Valid on
59f3dd0a 7865 subtype declaration if no constraint.
53b2323e
RH
7866 (Set_Modular_Size): Set Is_Known_Valid if appropriate
7867 (Build_Derived_Numeric_Type): Copy Is_Known_Valid if no constraint
59f3dd0a 7868
f7d7bb51
AC
78692009-04-09 Robert Dewar <dewar@adacore.com>
7870
7871 * switch-c.adb, gnat_ugn.texi, vms_data.ads, switch.adb,
7872 switch.ads: for numeric switches, an optional equal sign is always
7873 allowed.
7874
78752009-04-09 Vincent Celier <celier@adacore.com>
7876
7877 * prj-nmsc.adb (Get_Unit): Do not consider Casing on platform where
7878 the case of file names is not significant.
7879
c75c4293
AC
78802009-04-09 Vincent Celier <celier@adacore.com>
7881
7882 * errout.adb: Remove dependency on package Style
7883
7884 * style.ads, styleg.adb, styleg.ads (RM_Column_Check): Remove function,
7885 moved to Stylesw.
7886
7887 * stylesw.ads, stylesw.adb (RM_Column_Check): New function, moved from
7888 Styleg.
7889
7890 * errutil.adb, par.adb: Import Stylesw
7891
78922009-04-09 Arnaud Charlet <charlet@adacore.com>
7893
7894 * opt.ads: Fix typos.
7895
78962009-04-09 Robert Dewar <dewar@adacore.com>
7897
7898 * einfo.adb: Minor reformatting
7899
e7aea0fa
RD
79002009-04-09 Robert Dewar <dewar@adacore.com>
7901
7902 * gcc-interface/Make-lang.in, style.ads, style.adb: Reorganize style
7903 units.
7904
7905 * styleg-c.ads, styleg-c.adb: Removed, no longer used.
7906
1c383b4c
AC
79072009-04-09 Robert Dewar <dewar@adacore.com>
7908
7909 * g-comver.adb: Minor reformatting.
7910
79112009-04-09 Thomas Quinot <quinot@adacore.com>
7912
7913 * lib-load.ads (Load_Unit): Update documentation.
7914
79152009-04-09 Ed Schonberg <schonberg@adacore.com>
7916
7917 * lib-load.adb (Load_Unit): When loading the parent of a child unit
7918 named in a with_clause, retain the with_clause to preserve a
7919 limited_with indication.
7920
d7ba4df4
RD
79212009-04-09 Robert Dewar <dewar@adacore.com>
7922
7923 * sem_ch7.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, sem_util.adb,
7924 exp_ch13.adb, sem_ch6.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb,
7925 sem_cat.adb: Code clean up: use Is_Package_Or_Generic_Package where
7926 possible to replace an OR of two separate tests.
7927
923e6ff3
RD
79282009-04-09 Robert Dewar <dewar@adacore.com>
7929
7930 * binderr.adb, errout.adb, errutil.adb: New circuitry for handling
7931 Maximum_Messages.
7932
7933 * erroutc.adb, erroutc.ads (Warnings_Suppressed): Now tests global
7934 warning status as well.
7935
7936 * opt.ads (Maximum_Messages): New name for Maximum_Errors.
7937
7938 * switch-b.adb, switch-c.adb: Change name Maximum_Errors to
7939 Maximum_Messages.
7940
7941 * bindusg.adb, usage.adb: Update line for -gnatm switch
7942
7943 * gnat_ugn.texi: Update documentation for -gnatmnn compiler switch and
7944 -mnn binder switch.
7945
79462009-04-09 Robert Dewar <dewar@adacore.com>
7947
7948 * sem_ch10.adb: Minor reformatting.
7949
beb50807
AC
79502009-04-09 Bob Duff <duff@adacore.com>
7951
7952 * exp_ch11.adb (Expand_Exception_Handlers, Prepend_Call_To_Handler):
7953 Set Sloc of generated nodes for calls to Undefer_Aborts and
7954 Save_Occurrence to No_Location, so the debugger ignores them and
7955 therefore does not jump back and forth when single stepping.
7956
79572009-04-09 Robert Dewar <dewar@adacore.com>
7958
7959 * switch-b.adb: Minor reformatting.
7960
a4100e55
RD
79612009-04-09 Robert Dewar <dewar@adacore.com>
7962
7963 * sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, exp_atag.adb, layout.adb,
7964 sem_dist.adb, exp_ch7.adb, sem_ch5.adb, sem_type.adb, exp_imgv.adb,
7965 exp_util.adb, sem_aux.adb, sem_aux.ads, exp_attr.adb, exp_ch9.adb,
7966 sem_ch7.adb, inline.adb, fe.h, sem_ch9.adb, exp_code.adb, einfo.adb,
7967 einfo.ads, exp_pakd.adb, checks.adb, sem_ch12.adb, exp_smem.adb,
7968 tbuild.adb, freeze.adb, sem_util.adb, sem_res.adb, sem_attr.adb,
7969 exp_dbug.adb, sem_case.adb, exp_tss.adb, exp_ch4.adb, exp_ch6.adb,
7970 sem_smem.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, exp_disp.adb,
7971 sem_ch8.adb, exp_aggr.adb, sem_eval.adb, sem_cat.adb, exp_dist.adb,
7972 sem_ch13.adb, exp_strm.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb:
7973 Reorganize einfo/sem_aux, moving routines from einfo to sem_aux
7974
f17889b3
RD
79752009-04-09 Robert Dewar <dewar@adacore.com>
7976
7977 * exp_util.adb (Silly_Boolean_Array_Xor_Test): Simplify existing code.
7978
7979 * atree.h: Add Elist26
7980
7981 * gnat_ugn.texi: Complete documentation deprecating -gnatN for non-gcc
7982 backends.
7983
b16d9747
JM
79842009-04-09 Javier Miranda <miranda@adacore.com>
7985
7986 * exp_disp.adb (Export_DT): Addition of a new argument (Index); used to
7987 retrieve from the Dispatch_Table_Wrappers list the external name.
7988 Addition of documentation.
7989 (Make_Secondary_DT): Addition of a new argument (Suffix_Index) that is
7990 used to export secondary dispatch tables (in the previous version of
7991 the frontend only primary dispatch tables were exported). Addition of
7992 documentation.
7993 (Import_DT): New subprogram (internal of Make_Tags). Used to import a
7994 dispatch table of a given tagged type.
7995 (Make_Tags): Modified to import secondary dispatch tables.
7996
7997 * sem_ch3.adb (Analyze_Object_Declaration): Code cleanup.
7998 (Constant_Redeclaration): Code cleanup.
7999
8000 * einfo.ads (Dispatch_Table_Wrapper): Renamed to
8001 Dispatch_Table_Wrappers. Update documentation.
8002
8003 * einfo.adb (Dispatch_Table_Wrapper, Set_Dispatch_Table_Wrapper):
8004 Renamed to Dispatch_Table_Wrappers.
8005
8006 * sem_util.adb (Collect_Interface_Components): Improve handling of
8007 private types.
8008
8009 * atree.ads (Elist26, Set_Elist26): New subprograms
8010
8011 * atree.adb (Elist26, Set_Elist26): New subprograms
8012
59262ebb
AC
80132009-04-09 Javier Miranda <miranda@adacore.com>
8014
8015 * sem_ch3.adb (Build_Derived_Record_Type): Fix typo.
8016 (Derive_Progenitor_Subprograms): Handle interfaces in subtypes of
8017 tagged types.
8018
80192009-04-09 Robert Dewar <dewar@adacore.com>
8020
8021 * s-direio.adb: Minor reformatting
8022
8023 * exp_ch4.adb (Expand_Concatenate): Avoid overflow checks for String
8024
fa969310
AC
80252009-04-09 Robert Dewar <dewar@adacore.com>
8026
8027 * exp_ch4.adb (Expand_Concatenate): Improve handling of overflow cases
8028
80292009-04-09 Pascal Obry <obry@adacore.com>
8030
8031 * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coinve.ads,
8032 s-tpoben.adb, s-tpoben.ads, s-finimp.adb, s-finimp.ads,
8033 a-convec.adb, a-convec.ads, a-finali.adb, a-finali.ads,
8034 a-filico.ads: Add some missing overriding keywords.
8035
3c25856a
AC
80362009-04-09 Pascal Obry <obry@adacore.com>
8037
8038 * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coorma.ads, a-cihase.adb,
8039 a-cihase.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads,
8040 a-coormu.adb, a-coormu.ads, a-cohase.adb, a-cohase.ads: Minor
8041 reformatting.
8042
80432009-04-09 Ed Schonberg <schonberg@adacore.com>
8044
8045 * sem_ch6.adb (Check_Overriding_Indicator): Do not generate warning on
8046 missing overriding indicator if the new declaration is not seen as
8047 primitive.
8048
76c597a1
AC
80492009-04-09 Thomas Quinot <quinot@adacore.com>
8050
8051 * exp_ch4.adb (Expand_Concatenate): Add circuitry to properly handle
8052 overflows in computation of bounds.
8053
80542009-04-09 Pascal Obry <obry@adacore.com>
8055
8056 * a-cihama.adb, a-cgcaso.adb, a-cihase.adb, a-cohase.adb: Fix some
8057 typos in comment.
8058
95b89f1b
AC
80592009-04-09 Robert Dewar <dewar@adacore.com>
8060
8061 * sem_attr.adb (Check_Stream_Attribute): Check violation of
8062 restriction No_Streams
8063
8064 * gnat_rm.texi: Clarify No_Streams restriction
8065
8066 * g-socket.adb: Minor reformatting.
8067
80682009-04-09 Thomas Quinot <quinot@adacore.com>
8069
8070 * g-socket.ads: Mark Initialize and Finalize as obsolesent interfaces.
8071
80722009-04-09 Geert Bosch <bosch@adacore.com>
8073
8074 * exp_fixd.adb (Build_Conversion): Accept new optional Trunc argument.
8075 (Set_Result): Likewise.
8076 (Expand_Convert_Float_To_Fixed): Have Set_Result truncate the
8077 conversion, as required by RM 4.6(31).
8078
3d5952be
AC
80792009-04-08 Robert Dewar <dewar@adacore.com>
8080
8081 * checks.adb (Enable_Overflow_Check): Do not enable if overflow checks
8082 suppressed.
8083
8084 * exp_ch4.adb (Expand_Concatenate): Make sure checks are off for all
8085 resolution steps.
8086
80872009-04-08 Robert Dewar <dewar@adacore.com>
8088
8089 * sem_ch12.adb (Analyze_Package_Instantiation): Remove test for
8090 No_Local_Allocators restriction preventing local instantiation.
8091
80922009-04-08 Thomas Quinot <quinot@adacore.com>
8093
8094 * sem_eval.adb: Minor comment fix
8095
80962009-04-08 Thomas Quinot <quinot@adacore.com>
8097
8098 * g-socket.adb, g-socket.ads (GNAT.Sockets.Sockets_Library_Controller):
8099 New limited controlled type used to automate the initialization and
8100 finalization of the sockets implementation.
8101 (GNAT.Sockets.Initialize, Finalize): Make these no-ops
8102
81032009-04-08 Vincent Celier <celier@adacore.com>
8104
8105 * prj-attr.adb: New read-only project-level attribute Project_Dir
8106
8107 * prj-proc.adb (Add_Attributes): New parameter Project_Dir, value of
8108 read-only attribute of the same name.
8109 (Process_Declarative_Items): Call Add_Attributes with Project_Dir
8110 (Recursive_Process): Ditto
8111
8112 * snames.adb: Add new standard name Project_Dir
8113
8114 * snames.ads: Add new standard name Project_Dir
8115
b568955d
AC
81162009-04-08 Thomas Quinot <quinot@adacore.com>
8117
8118 * checks.adb: Minor reformatting
8119
81202009-04-08 Vincent Celier <celier@adacore.com>
8121
8122 * vms_data.ads: Add documentation for new style keyword
8123 OVERRIDING_INDICATORS
8124
81252009-04-08 Robert Dewar <dewar@adacore.com>
8126
8127 * sem_ch3.adb (Check_Completion.Post_Error): Post error on spec if the
8128 spec is in the current unit.
8129
ed57136d
AC
81302009-04-08 Ed Schonberg <schonberg@adacore.com>
8131
8132 * sem_util.adb (Is_Protected_Self_Reference): Add guard to check for
8133 presence of entity.
8134
8135 * usage.adb, gnat_ugn.texi: add info on -gnatyO: overriding indicators
8136
81372009-04-08 Vincent Celier <celier@adacore.com>
8138
8139 * vms_data.ads: Add VMS equivalent for -gnatyO (OVERRIDING_INDICATORS)
8140
81412009-04-08 Thomas Quinot <quinot@adacore.com>
8142
8143 * checks.ads: Minor reformatting
8144
81452009-04-08 Robert Dewar <dewar@adacore.com>
8146
8147 * gnat_rm.texi: Update documentation of pragma Obsolescent
8148
8149 * sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow identifiers to
8150 be omitted, and allow Entity parameter to be omitted.
8151
ef7c5692
AC
81522009-04-08 Thomas Quinot <quinot@adacore.com>
8153
8154 * exp_util.adb: Minor comment fix
8155
81562009-04-08 Robert Dewar <dewar@adacore.com>
8157
8158 * g-socket.ads: Fix bad syntax in pragma Obsolescent
8159
8160 * par-ch2.adb (Scan_Pragma_Argument_Association): Check for error of
8161 argument with no identifier following one that has an identifier. Was
8162 missed in some cases.
8163
8164 * sem_prag.adb (Analyze_Pragma, case Check_Policy): Allow Policy
8165 identifier.
8166 (Analyze_Pragma, case Obsolescent): Allow Message, Version identifiers
8167
8168 * snames.adb: Add Name_Policy
8169
8170 * snames.ads: Add Name_Policy
8171
0c7f5241
RD
81722009-04-08 Robert Dewar <dewar@adacore.com>
8173
8174 * gnat_rm.texi: Minor reformatting
8175
8176 * par-ch2.adb: Minor reformatting
8177
ae8c7d87
RD
81782009-04-08 Robert Dewar <dewar@adacore.com>
8179
8180 * exp_attr.adb, sem_attr.adb, sem_util.adb: Code clean up.
8181
ff69f95a
RD
81822009-04-08 Robert Dewar <dewar@adacore.com>
8183
8184 * sem_cat.adb (Check_Categorization_Dependencies): Handle Preelaborate
8185 properly in the presence of Remote_Types or Remote_Call_Interface.
8186
8187 * sem_util.adb: Add comment.
8188
2db15b1d
AC
81892009-04-08 Robert Dewar <dewar@adacore.com>
8190
8191 * ug_words: Add /ASSUME_VALID for -gnatB
8192
8193 * vms_data.ads: Add /ASSUME_VALID for -gnatB
8194
8195 * sem_cat.adb: Add clarifying commment
8196
8197 * a-direio.ads (Bytes): Make sure value is non-zero
8198
81992009-04-08 Ed Schonberg <schonberg@adacore.com>
8200
8201 * sem_util.adb (Is_Variable): If the prefix is an explicit dereference
8202 that does not come from source, check for a rewritten function call in
8203 prefixed notation before other forms of rewriting.
8204
82052009-04-08 Robert Dewar <dewar@adacore.com>
8206
8207 * Makefile.rtl: Remove s-strops and s-sopco? from the run time, since
8208 these are now obsolescent units used only for bootrapping with an
8209 older compiler.
8210
94fd3dc6
AC
82112009-04-08 Robert Dewar <dewar@adacore.com>
8212
8213 * gnat_rm.texi: Add documentation for pragma Thread_Local_Storage
8214
8215 * sem_ch3.adb: Minor comment updates
8216
82172009-04-08 Ed Schonberg <schonberg@adacore.com>
8218
8219 * inline.adb (Back_End_Cannot_Inline): restrict warning to subprograms
8220 that come from source.
8221
40a14772
TG
82222009-04-08 Tristan Gingold <gingold@adacore.com>
8223
cac9d8d6
EB
8224 * gcc-interface/gigi.h (enum attr_type): Add ATTR_THREAD_LOCAL_STORAGE.
8225 * gcc-interface/decl.c (prepend_attributes): New case
8226 Pragma_Thread_Local_Storage.
8227 * gcc-interface/utils.c (process_attributes): New case
8228 ATTR_THREAD_LOCAL_STORAGE.
8229
46ff89f3
AC
82302009-04-08 Ed Schonberg <schonberg@adacore.com>
8231
8232 * inline.adb (Back_End_Cannot_Inline): Do not mark a body as inlineable
8233 by the back-end if it contains a call to a subprogram without a
8234 previous spec that is declared in the same unit.
8235
8236 * errout.ads: Update comments on uses of dirs
8237
82382009-04-08 Robert Dewar <dewar@adacore.com>
8239
8240 * exp_ch4.adb (Expand_Concatenate): Make sure nodes are properly typed
8241
812f574f
AC
82422009-04-08 Tristan Gingold <gingold@adacore.com>
8243
8244 * sem_prag.adb: Restrict pragma Thread_Local_Storage to library level
8245 variables.
8246 Set Has_Gigi_Rep_Item flag to TLS variables (to ease gigi work).
8247
82482009-04-08 Vincent Celier <celier@adacore.com>
8249
8250 * prj-nmsc.adb:
8251 (Add_Source): Add the mapping of the unit name to source file name in
8252 the Unit_Sources_HT hash table, if the unit name is not null.
8253
8254 * prj.adb (Reset): Reset hash table Tree.Unit_Sources_HT
8255
8256 * prj.ads (Unit_Sources_Htable): New hash table instantiation
8257 (Project_Tree_Data): New component Unit_Sources_HT
8258
4c8a5bb8
AC
82592009-04-08 Thomas Quinot <quinot@adacore.com>
8260
8261 * sem_ch8.adb: Minor reformatting.
8262 Minor code reorganization.
8263
82642009-04-08 Robert Dewar <dewar@adacore.com>
8265
8266 * snames.h, einfo.adb, einfo.ads, sem_prag.adb, snames.adb,
8267 snames.ads, freeze.adb, par-prag.adb: Add implementation of
8268 pragma Thread_Local_Storage, setting new flag
8269 Has_Pragma_Thread_Local_Storage in corresponding entities.
8270
ecc4ddde
AC
82712009-04-08 Emmanuel Briot <briot@adacore.com>
8272
8273 * prj.ads: Update comment on switches file
8274
8275 * prj-nmsc.adb: Code clean up. Use renaming clauses.
8276
82772009-04-08 Robert Dewar <dewar@adacore.com>
8278
8279 * exp_ch4.adb (Expand_Concatenate): Further fixes to bounds handling
8280
82812009-04-08 Thomas Quinot <quinot@adacore.com>
8282
8283 * ali-util.adb: Minor comment fix
8284
82852009-04-08 Ed Schonberg <schonberg@adacore.com>
8286
8287 * sem_ch8.adb (Analyze_Use_Type): Improve error message when clause
8288 appears in a context clause, and the enclosing package is mentioned in
8289 a limited_with_clause.
8290 (Use_One_Type): Reject clause if type is still incomplete.
8291
a29262fd
AC
82922009-04-08 Emmanuel Briot <briot@adacore.com>
8293
8294 * prj-nmsc.adb (Check_File, Process_Sources_In_Multi_Language_Mode):
8295 avoid copies of Source_Data variables when possible, since these
8296 involve calls to memcpy() which are done too many times.
8297
82982009-04-08 Robert Dewar <dewar@adacore.com>
8299
8300 * exp_ch4.adb (Expand_Concatenate): Clean up code
8301
a2dc5812
AC
83022009-04-07 Thomas Quinot <quinot@adacore.com>
8303
8304 * exp_ch4.adb (Expand_Concatenate): Add missing conversion to index
8305 type for the case of concatenating a constrained array indexed by an
8306 enumeration type.
8307
83082009-04-07 Ed Schonberg <schonberg@adacore.com>
8309
8310 * sem_ch6.adb (Check_Conformance): when checking conformance of an
8311 operation that overrides an abstract operation inherited from an
8312 interface, return False if only one of the controlling formals is an
8313 access parameter.
8314
83152009-04-07 Ed Schonberg <schonberg@adacore.com>
8316
8317 * sem_ch8.adb (Analyze_Object_Renaming): additional error messages
8318 mandated by AI05-105.
8319
83202009-04-07 Vincent Celier <celier@adacore.com>
8321
8322 * prj-nmsc.adb (Get_Mains): Warn if a main is an empty string
8323
83242009-04-07 Thomas Quinot <quinot@adacore.com>
8325
8326 * usage.adb: Minor fix in usage message.
8327
8328 * sem_ch10.adb (Remove_Homonyms): Fix subtype of formal in body to
8329 match declaration; the correct subtype is Node_Id, not Entity_Id,
8330 because the expected node kind is an identifier, not a defining
8331 identifier.
8332
8333 * switch-c.adb: Minor reformatting.
8334
8335 * uintp.adb: Minor reformatting.
8336
83372009-04-07 Robert Dewar <dewar@adacore.com>
8338
8339 * exp_ch13.adb: Minor reformatting
8340
0ac73189
AC
83412009-04-07 Robert Dewar <dewar@adacore.com>
8342
8343 * sem_warn.adb (Check_Infinite_Loop_Warning.Test_Ref): Add defence
8344 against missing parent.
8345
83462009-04-07 Thomas Quinot <quinot@adacore.com>
8347
8348 * xoscons.adb: Minor reformatting
8349
83502009-04-07 Robert Dewar <dewar@adacore.com>
8351
8352 * rtsfind.ads: Remove obsolete string concatenation entries
8353
83542009-04-07 Robert Dewar <dewar@adacore.com>
8355
8356 * exp_ch4.adb (Expand_Concatenate): Redo handling of bounds
8357
83582009-04-07 Ed Schonberg <schonberg@adacore.com>
8359
8360 * sem_ch10.adb (Check_Body_Required): Handle properly imported
8361 subprograms.
8362
83632009-04-07 Gary Dismukes <dismukes@adacore.com>
8364
8365 * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case
8366 Attribute_Address): When Init_Or_Norm_Scalars is True and the object
8367 is of a scalar or string type then suppress the setting of the
8368 expression to Empty.
8369
8370 * freeze.adb (Warn_Overlay): Also emit the warnings about default
8371 initialization for the cases of scalar and string objects when
8372 Init_Or_Norm_Scalars is True.
8373
1732c156
AC
83742009-04-07 Bob Duff <duff@adacore.com>
8375
8376 * s-secsta.ads, g-pehage.ads, s-fileio.ads: Minor comment fixes
8377
83782009-04-07 Bob Duff <duff@adacore.com>
8379
8380 * gnat_rm.texi, s-fileio.adb (System.File_IO.Open): New feature: A
8381 Form parameter of Text_Translation=No allows binary mode for Text_IO
8382 files.
8383
8384 * gnat_rm.texi: Document Form parameter Text_Translation=xxx.
8385
83862009-04-07 Javier Miranda <miranda@adacore.com>
8387
8388 * exp_ch5.adb (Expand_Assign_Array): Add implicit conversion when
8389 processing the bounds for bit packed arrays or VM target machines.
8390
f16d05d9
AC
83912009-04-07 Thomas Quinot <quinot@adacore.com>
8392
8393 * g-sothco.ads (Int_Access): Remove extraneous access type (use
8394 anonymous access instead).
8395 (Get_Socket_From_Set): Fix incorrectly reverted formals
8396 Last and Socket to match the underlying C routine.
8397
ad1536a1 8398 * g-socket.adb, g-socket.ads
f16d05d9
AC
8399 (Get): Use named parameter associations instead of positional ones in
8400 call go Get_Socket_From_Set, since this routine has two formals of the
8401 same type.
ad1536a1 8402 (Image): New procedure.
f16d05d9
AC
8403
8404 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
8405 g-socthi-vxworks.ads, g-socthi-mingw.ads, g-socthi.adb, g-socthi.ads:
8406 (C_Ioctl, Syscall_Ioctl): use "access C.int" instead of "Int_Access"
8407 for type of Arg formal.
8408
8409 * sem_warn.adb: Minor reformatting
8410
84112009-04-07 Ed Schonberg <schonberg@adacore.com>
8412
8413 * sem_util.adb (Has_Tagged_Component): Fix typo in loop that iterates
8414 over record components.
8415
84162009-04-07 Nicolas Roche <roche@adacore.com>
8417
8418 * gsocket.h:
8419 Don't include resolvLib.h on VxWorks 6 (kernel and rtp). This library
8420 has disappeared between VxWorks 6.4 and VxWorks 6.5
8421 In RTP mode use time.h instead of times.h
8422
84232009-04-07 Robert Dewar <dewar@adacore.com>
8424
8425 * exp_ch4.adb (Expand_N_Op_Concat): Improve lower bound handling
8426
84272009-04-07 Kevin Pouget <pouget@adacore.com>
8428
8429 * exp_dist.adb: Modify Build_From_Any_Fonction procedure to correct
8430 expanded code for constrained types.
8431
84322009-04-07 Ed Schonberg <schonberg@adacore.com>
8433
8434 * sem_ch4.adb (Analyze_Overloaded_Selected_Component): implement
8435 AI05-105: in an object renaming declaration, anonymousness is a name
8436 resolution rule.
8437
8438 * sem_ch8.adb (Analyze_Object_Renaming): Ditto.
8439
84402009-04-07 Arnaud Charlet <charlet@adacore.com>
8441
8442 * g-comlin.adb (Expansion): Fix old regression: also return directory
8443 names when matching.
8444
2fc05e3d
AC
84452009-04-07 Robert Dewar <dewar@adacore.com>
8446
8447 * exp_ch4.adb:
8448 (Expand_N_Op_Concat): Call Expand_Concatenate for all cases
8449 (Expand_Concatenate): New name for Expand_Concatenate_String which has
8450 been rewritten to handle all types.
8451 (Expand_Concatenate_Other): Remove
8452
84532009-04-07 Ed Schonberg <schonberg@adacore.com>
8454
8455 * lib-xref.adb (Generate_Reference): A default subprogram in an
8456 instance appears within the tree for the instance, but generates an
8457 implicit reference in the ALI.
8458
fdac1f80
AC
84592009-04-07 Javier Miranda <miranda@adacore.com>
8460
8461 * sem_ch3.adb (Build_Derived_Record_Type): When processing a tagged
8462 derived type that has discriminants, propagate the list of interfaces
8463 to the corresponding new base type. In addition, propagate also
8464 attribute Limited_Present (found working in this patch).
8465
84662009-04-07 Robert Dewar <dewar@adacore.com>
8467
8468 * exp_ch4.adb: Rewrite concatenation expansion.
8469
8dbd1460
AC
84702009-04-07 Ed Schonberg <schonberg@adacore.com>
8471
8472 * sem_ch8.adb (Restore_Scope_Stack): First_Private_Entity is only
8473 relevant to packages.
8474
84752009-04-07 Robert Dewar <dewar@adacore.com>
8476
8477 * sem_attr.adb: Minor reformatting
8478
8479 * sem_ch6.adb: Minor reformatting
8480
2ddc2000
AC
84812009-04-07 Tristan Gingold <gingold@adacore.com>
8482
8483 * socket.c: Add more protections against S_resolvLib_ macros.
8484
84852009-04-07 Thomas Quinot <quinot@adacore.com>
8486
8487 * sem_attr.adb: Minor reformatting
8488
84892009-04-07 Ed Schonberg <schonberg@adacore.com>
8490
8491 * sem_ch6.adb (New_Overloaded_Entity): New predicate
8492 Is_Overriding_Alias to handle properly types that inherit two homonym
8493 operations that have distinct dispatch table entries.
8494
06a16f58
AC
84952009-04-07 Emmanuel Briot <briot@adacore.com>
8496
8497 * s-regexp.adb (Create_Mapping): Ignore excaped open parenthesis when
8498 looking for the end of a parenthesis group
8499
85002009-04-07 Tristan Gingold <gingold@adacore.com>
8501
8502 * gsocket.h Don't #include resolvLib.h if __RTP__ is defined.
8503
8504 * socket.c Don't use resolvLib_ macros if not defined.
8505
df46b832
AC
85062009-04-07 Robert Dewar <dewar@adacore.com>
8507
8508 * g-socket.adb: Minor reformatting.
8509
8510 * g-socthi-mingw.adb: Minor reformatting
8511
8512 * g-sothco.ads: Minor reformatting
8513
8514 * exp_ch4.adb:
8515 (Expand_Concatenate_String): Complete rewrite to generate efficient code
8516 inline instead of relying on external library routines.
8517
8518 * s-strops.ads, s-sopco5.ads, s-sopco5.adb, s-sopco4.ads, s-sopco4.adb,
8519 s-sopco3.ads, s-sopco3.adb, s-strops.adb: Note that this unit is now
8520 obsolescent
8521
85222009-04-07 Ed Schonberg <schonberg@adacore.com>
8523
8524 * sem_attr.adb:
8525 (Eval_Attribute): for attributes of array objects that are not strings,
8526 attributes are not static if nominal subtype of object is unconstrained.
8527
85282009-04-07 Ed Schonberg <schonberg@adacore.com>
8529
8530 * sem_ch6.adb (New_Overloaded_Entity): If two implicit homonym
8531 operations for a type T in an instance do not override each other,
8532 when T is derived from a formal private type, the corresponding
8533 operations inherited by a type derived from T outside
8534 of the instance do not override each other either.
8535
3dd9959c
AC
85362009-04-07 Robert Dewar <dewar@adacore.com>
8537
8538 (Osint.Fail): Change calling sequence to have one string arg
8539 (Make.Make_Failed): Same change
8540 All callers are adjusted to use concatenation
8541
85422009-04-07 Robert Dewar <dewar@adacore.com>
8543
8544 * exp_ch4.adb: Fix documentation typo
8545
85462009-04-07 Robert Dewar <dewar@adacore.com>
8547
8548 * tbuild.ads: Minor reformatting
8549
85502009-04-07 Javier Miranda <miranda@adacore.com>
8551
8552 * exp_disp.adb (Make_DT): Avoid the generation of the OSD_Table
8553 when compiling under ZFP runtime.
8554
85552009-04-07 Robert Dewar <dewar@adacore.com>
8556
8557 * g-comlin.adb: Minor reformatting
8558
85592009-04-07 Thomas Quinot <quinot@adacore.com>
8560
8561 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
8562 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
8563 g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads, g-sothco.ads:
8564 Remove dynamic allocation of Fd_Set in Socket_Set_Type objects.
8565
dcd8728b
RD
85662009-04-07 Robert Dewar <dewar@adacore.com>
8567
8568 * gnat_ugn.texi: Document -gnatDnn/-gnatGnn
8569
8570 * opt.ads (Sprint_Line_Limit): New parameter
8571
8572 * sprint.adb: Usa Sprint_Line_Limit instead of Line_Limit throughout
8573
8574 * switch-c.adb: Recognize -gnatDnnn and -gnatGnnn switches
8575
8576 * usage.adb: Output information for -gnatGnn -gnatDnn
8577
85782009-04-07 Robert Dewar <dewar@adacore.com>
8579
8580 * make.adb: Minor reformatting
8581
85822009-04-07 Robert Dewar <dewar@adacore.com>
8583
8584 * mlib-tgt-specific-vms-alpha.adb: Minor reformatting
8585
85862009-04-07 Robert Dewar <dewar@adacore.com>
8587
8588 * mlib-tgt-specific-vms-ia64.adb: Minor reformatting
8589
c27f2f15
RD
85902009-04-07 Robert Dewar <dewar@adacore.com>
8591
8592 * checks.adb:
8593 Remove Assume_Valid parameter from In_Subrange_Of calls
8594
8595 * sem_eval.adb:
8596 (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
8597 (Is_In_Range): Remove incorrect use of Assume_Valid
8598 (Is_Out_Of_Range): Remove incorrect use of Assume_Valid
8599
8600 * sem_eval.ads:
8601 (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
8602 (Is_In_Range): Documentation cleanup
8603 (Is_Out_Of_Range): Documentation cleanup
8604
8605 * gnat_rm.texi:
8606 Add documentation for Assume_No_Invalid_Values pragma
8607
8608 * sem_ch12.adb: Minor reformatting
8609
8610 * sem_ch6.adb: (Check_Conformance): Avoid cascaded errors
8611
8612 * sem_prag.adb: Improve error message.
8613
8614 * gnatchop.adb, osint.ads, sinput.adb, sinput.ads, styleg.adb:
8615 LF/CR no longer recognized as line terminator
8616
8617 * switch.ads: Minor documentation improvement
8618
8619 * vms_data.ads: Minor reformatting
8620
c800f862
RD
86212009-04-07 Robert Dewar <dewar@adacore.com>
8622
8623 * checks.adb (Determine_Range): Add Assume_Valid parameter
8624
8625 * checks.ads (Determine_Range): Add Assume_Valid parameter
8626
8627 * errout.adb (Error_Msg_NEL): Use Suppress_Loop_Warnings rather than
8628 Is_Null_Loop to suppress warnings in a loop body.
8629
8630 * exp_ch4.adb:
8631 (Rewrite_Comparison): Major rewrite to accomodate invalid values
8632
8633 * exp_ch5.adb:
8634 (Expand_N_Loop_Statement): Delete loop known not to execute
8635
8636 * opt.ads:
8637 (Assume_No_Invalid_Values): Now set to False, and as documented, this
8638 fully enables the proper handling of invalid values.
8639
8640 * sem_attr.adb:
8641 New calling sequence for Is_In_Range
8642
8643 * sem_ch5.adb:
8644 (Analyze_Iteration_Scheme): Accomodate possible invalid values
8645 in determining if a loop range is null.
8646
8647 * sem_eval.adb:
8648 (Is_In_Range): Add Assume_Valid parameter
8649 (Is_Out_Of_Range): Add Assume_Valid_Parameter
8650 (Compile_Time_Compare): Major rewrite to accomodate invalid values and
8651 also to do more accurate and complete range analysis, catching more
8652 cases.
8653
8654 * sem_eval.ads:
8655 (Is_In_Range): Add Assume_Valid parameter
8656 (Is_Out_Of_Range): Add Assume_Valid_Parameter
8657
8658 * sem_util.adb:
8659 New calling sequence for Is_In_Range
8660
8661 * sinfo.adb:
8662 (Suppress_Loop_Warnings): New flag
8663
8664 * sinfo.ads:
8665 (Is_Null_Loop): Update documentation
8666 (Suppress_Loop_Warnings): New flag
8667
8668 * gnat_ugn.texi: Document -gnatB switch
8669
9d00840d
AC
86702009-04-07 Arnaud Charlet <charlet@adacore.com>
8671
8672 * gnatvsn.ads: Bump version number.
8673
5f143024
AC
86742009-04-07 Thomas Quinot <quinot@adacore.com>
8675
8676 * exp_ch3.adb: Minor rewording (comments)
8677
86782009-04-07 Robert Dewar <dewar@adacore.com>
8679
8680 * exp_disp.adb: Minor reformatting
8681
d5859bf4
EB
86822009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8683
8684 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Test the
8685 underlying type.
8686 * gcc-interface/trans.c (lvalue_required_p): Likewise.
8687
c86f07f6
EB
86882009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8689
8690 * gcc-interface/trans.c (Attribute_to_gnu) <Max_Size_In_Storage_Elmts>:
8691 Do not convert the result. Remove obsolete comment.
8692
2d5be6c1
EB
86932009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8694
8695 * gcc-interface/trans.c (establish_gnat_vms_condition_handler): Clear
8696 DECL_CONTEXT.
8697 (Subprogram_Body_to_gnu): Fix pasto.
8698
10069d53
EB
86992009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8700
8701 * gcc-interface/gigi.h (standard_datatypes): Remove ADT_void_type_decl.
8702 (void_type_decl_node): Remove.
8703 (init_gigi_decls): Likewise.
8704 (gnat_install_builtins): Declare.
8705 (record_builtin_type): Likewise.
8706 (create_type_stub_decl): Likewise.
8707 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Void>: Use void_type.
8708 (gnat_to_gnu_entity) <E_Array_Type>: Make fat and thin pointer types
8709 artificial.
8710 <E_Array_Subtype>: Use the index types, not only their name, in the
8711 record giving the names of the bounds, if any.
8712 For a packed array type, make it artificial only if the base type
8713 was artificial as well. Remove redundant statement.
8714 (gnat_to_gnu_entity) <E_Incomplete_Type>: Do not create TYPE_DECL for
8715 dummy types.
8716 Use create_type_stub_decl to build the TYPE_STUB_DECL of types.
8717 (rest_of_type_decl_compilation_no_defer): Likewise.
8718 * gcc-interface/misc.c (gnat_printable_name): Add missing guard.
8719 * gcc-interface/utils.c (make_dummy_type): Always create TYPE_STUB_DECL
8720 and use create_type_stub_decl to build it.
8721 (gnat_pushdecl): Rewrite condition.
8722 (gnat_install_builtins): Remove bogus declaration.
8723 (record_builtin_type): New function.
8724 (finish_record_type): Use create_type_stub_decl to build TYPE_STUB_DECL
8725 of types.
8726 (create_type_stub_decl): New function.
8727 (create_type_decl): Assert that the type is not dummy. If the type
8728 hasn't been named yet, equate the TYPE_STUB_DECL to the created node.
8729 (build_vms_descriptor32): Do not create TYPE_DECL for the descriptor.
8730 (build_vms_descriptor): Likewise.
8731 (init_gigi_decls): Delete and move bulk of code to...
8732 * gcc-interface/trans.c (gigi): ...here. Use record_builtin_type.
8733 (emit_range_check): Add gnat_node parameter.
8734 (emit_index_check): Likewise.
8735 (emit_check): Likewise.
8736 (build_unary_op_trapv): Likewise.
8737 (build_binary_op_trapv): Likewise.
8738 (convert_with_check): Likewise.
8739 (Attribute_to_gnu): Adjust calls for above changes.
8740 (call_to_gnu): Likewise.
8741 (gnat_to_gnu): Likewise.
8742 (assoc_to_constructor): Likewise.
8743 (pos_to_constructor): Likewise.
8744 (Sloc_to_locus): Set BUILTINS_LOCATION for Standard_Location nodes.
8745 (process_type): Do not create TYPE_DECL for dummy types.
8746
229077b0
EB
87472009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8748
1e17ef87
EB
8749 * gcc-interface/decl.c (gnat_to_gnu_entity): Reorder local variables.
8750 * gcc-interface/trans.c: Fix formatting throughout. Fix comments.
8751 * gcc-interface/utils.c: Fix comments.
8752
87532009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8754
8755 * gcc-interface/decl.c (compile_time_known_address_p): Rewrite and
8756 move around.
229077b0
EB
8757 (gnat_to_gnu_type): Move around.
8758 (get_unpadded_type): Likewise.
1e17ef87
EB
8759 * gcc-interface/utils.c (update_pointer_to): Use synthetic macro.
8760 Tidy comments.
229077b0 8761
aa1aa786
EB
87622009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8763
8764 * gcc-interface/trans.c (check_for_eliminated_entity): New function.
8765 (Attribute_to_gnu): Invoke it for Access- and Address-like attributes.
8766 (call_to_gnu): Invoke it instead of manually checking.
8767
63787194
EB
87682009-04-04 Eric Botcazou <ebotcazou@adacore.com>
8769
8770 * gcc-interface/utils.c (finish_record_type): Force structural equality
8771 checks if the record type is discriminated.
8772
d236ace7
EB
87732009-03-31 Eric Botcazou <ebotcazou@adacore.com>
8774
8775 * system-linux-alpha.ads (Functions_Return_By_DSP): Remove.
8776 * system-linux-mips.ads (Functions_Return_By_DSP): Likewise.
8777 * system-linux-mipsel.ads (Functions_Return_By_DSP): Likewise.
8778 * system-linux-s390.ads (Functions_Return_By_DSP): Likewise.
8779 * system-linux-s390x.ads (Functions_Return_By_DSP): Likewise.
8780 * system-linux-sparc.ads (Functions_Return_By_DSP): Likewise.
8781 * system-linux-sparcv9.ads (Functions_Return_By_DSP): Likewise.
8782
bd9f68e0
PB
87832009-03-30 Paolo Bonzini <bonzini@gnu.org>
8784
d7be99f1
EB
8785 * gcc-interface/decl.c (maybe_pad_type): Use TREE_OVERFLOW instead
8786 of TREE_CONSTANT_OVERFLOW.
bd9f68e0 8787
8ce94e44
JM
87882009-03-30 Joseph Myers <joseph@codesourcery.com>
8789
8790 PR rtl-optimization/323
8791 * gcc-interface/misc.c (gnat_post_options): Set
8792 flag_excess_precision_cmdline. Give an error for
8793 -fexcess-precision=standard for processors where the option is
8794 significant.
8795
d9223014
L
87962009-03-27 H.J. Lu <hongjiu.lu@intel.com>
8797
8798 PR c/39323
8799 * gcc-interface/utils.c (create_field_decl): Use "unsigned int"
8800 on bit_align.
8801
76761bbd
OH
88022009-03-11 Olivier Hainque <hainque@adacore.com>
8803
8804 * gcc-interface/trans.c (gnat_to_gnu) <case N_Slice>: In range
8805 checks processing, remove unintended TREE_TYPE walk on index type.
8806
39ae51e0
EB
88072009-03-01 Eric Botcazou <ebotcazou@adacore.com>
8808
8809 PR ada/39264
8810 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do no
8811 call make_packable_type on fat pointer types.
8812 <E_Array_Subtype>: Likewise.
8813 <E_Record_Subtype>: Call make_packable_type on all record types
8814 except for fat pointer types.
8815 (make_packable_type): Likewise.
8816 (gnat_to_gnu_field): Likewise.
8817
7d01864f
EB
88182009-02-28 Eric Botcazou <ebotcazou@adacore.com>
8819
8820 * gcc-interface/Makefile.in (cygwin/mingw): Revert accidental
67901d32 8821 EH_MECHANISM change made on 2007-12-06.
7d01864f 8822
a760c977
AS
88232009-02-26 Andreas Schwab <schwab@suse.de>
8824
4c354194 8825 PR ada/39172
a760c977 8826 * Makefile.in (srcdir): Set to @top_srcdir@ instead of @srcdir@.
a760c977
AS
8827 * gcc-interface/Makefile.in: Change all uses of $(srcdir),
8828 $(fsrcdir) and $(fsrcpfx) to add ada subdir.
8829 (AWK): Substitute.
8830 (target_cpu_default): Substitute.
8831
054efbba
LG
88322009-02-25 Laurent GUERBY <laurent@guerby.net>
8833
975a4fd6 8834 PR ada/39221
a760c977
AS
8835 * a-teioed.adb (Expand): Fix Result overflow.
8836
c608b4d2 88372009-02-25 Laurent GUERBY <laurent@guerby.net>
2692d7f5 8838
a760c977
AS
8839 * gcc-interface/Makefile.in: Fix multilib handling for
8840 sparc64-linux.
8841
ea675ec3
RO
88422009-02-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
8843
8844 * s-oscons-tmplt.c [__osf__ && !_SS_MAXSIZE]: Undef AF_UNIX6.
8845
e98c0739
L
88462009-02-18 H.J. Lu <hongjiu.lu@intel.com>
8847
8848 * gcc-interface/misc.c (gnat_post_options): Turn off warn_psabi.
8849
70f5fc7c
EB
88502009-02-16 Eric Botcazou <ebotcazou@adacore.com>
8851
8852 * gcc-interface/deftarg.c: Remove.
8853
794511d2 88542009-02-10 Olivier Hainque <hainque@adacore.com>
e98c0739 8855 Eric Botcazou <ebotcazou@adacore.com>
794511d2
EB
8856
8857 * gcc-interface/decl.c (enum alias_set_op): New enumeration.
8858 (copy_alias_set): Rename into...
8859 (relate_alias_sets): ...this. Add third parameter OP. Retrieve the
8860 underlying array of unconstrained arrays for the new type as well.
8861 If the old and new alias sets don't conflict, make one a subset of
8862 the other as per the OP parameter.
8863 (gnat_to_gnu_entity): Adjust calls to copy_alias_set.
8864 <E_Record_Type>: Do not copy the alias set for derived types.
8865 For all types, make the alias set of derived types a superset of
8866 that of their parent type.
8867 (make_aligning_type): Adjust calls to copy_alias_set.
8868 (make_packable_type): Likewise.
8869 * gcc-interface/trans.c (gnat_to_gnu)<N_Validate_Unchecked_Conversion>:
8870 Check for alias set conflict instead of strict equality to issue the
8871 warning.
8872
c3734896
EB
88732009-02-09 Eric Botcazou <ebotcazou@adacore.com>
8874
8875 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
8876 Set TYPE_NONALIASED_COMPONENT on the array type only if appropriate.
8877 (copy_alias_set): Assert that arrays have the same aliasing settings.
8878 (substitute_in_type) <ARRAY_TYPE>: Copy TYPE_NONALIASED_COMPONENT.
8879
9a58d4d2
EB
88802009-02-08 Eric Botcazou <ebotcazou@adacore.com>
8881
8882 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
8883 Set TYPE_NONALIASED_COMPONENT on the array type.
8884
d0ec4c99
LG
88852009-01-31 Laurent GUERBY <laurent@guerby.net>
8886
8887 * gcc-interface/Makefile.in: Fix mipsel linux handling.
a760c977 8888
4dcb8fd1
JJ
88892009-01-16 Jakub Jelinek <jakub@redhat.com>
8890
8891 * gcc-interface/Makefile.in: Fix multilib handling for
8892 powerpc64-linux.
8893
3b9c1abd
EB
88942009-01-12 Eric Botcazou <ebotcazou@adacore.com>
8895
8896 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Really strip
8897 only useless conversions around renamed objects.
8898
13318d2f
EB
88992009-01-11 Eric Botcazou <ebotcazou@adacore.com>
8900
8901 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Put
8902 the _Tag field before any discriminants in the field list.
8903 (components_to_record): Remove obsolete comment.
8904
ad41bd84
JM
8905
8906\f
8ff1dd83 8907Copyright (C) 2009 Free Software Foundation, Inc.
ad41bd84
JM
8908
8909Copying and distribution of this file, with or without modification,
8910are permitted in any medium without royalty provided the copyright
8911notice and this notice are preserved.
This page took 1.357868 seconds and 5 git commands to generate.