]> gcc.gnu.org Git - gcc.git/blame - gcc/ada/ChangeLog
par.adb: Minor reformatting Add ??? comment for possible bad comment
[gcc.git] / gcc / ada / ChangeLog
CommitLineData
8aaeba8f
RD
12009-07-15 Robert Dewar <dewar@adacore.com>
2
3 * par.adb: Minor reformatting
4 Add ??? comment for possible bad comment
5
6 * par-ch10.adb: Minor reformatting
7
00838d9a
AC
82009-07-15 Ed Schonberg <schonberg@adacore.com>
9
10 * sem_warn.adb (Warn_On_Constant_Condition): if the constant condition
11 is a literal of a derived boolean type, it appears as an unchecked
12 conversion. Retrieve actual value from expression of conversion.
13
142009-07-15 Robert Dewar <dewar@adacore.com>
15
16 * sem_ch3.adb: Minor reformatting
17
18 * lib-xref.ads, lib-xref.adb, lib.ads, par_sco.ads, par_sco.adb,
19 lib-writ.ads, lib-writ.adb: Minor reformatting.
20 Fix problem with SCO format in ALI files
21
faf387e1
AC
222009-07-15 Robert Dewar <dewar@adacore.com>
23
24 * exp_ch7.adb, exp_util.adb, tbuild.adb, tbuild.ads, exp_ch4.adb,
25 exp_aggr.adb: Minor code reorganization (better calling sequence for
26 Make_Temporary).
27
282009-07-15 Thomas Quinot <quinot@adacore.com>
29
30 * opt.ads: Minor comment edits
31
ece6940b
TG
322009-07-15 Tristan Gingold <gingold@adacore.com>
33
34 * gcc-interface/Makefile.in: Special rule for seh_init.o no longer
35 needed.
36
6f12117a
RD
372009-07-15 Robert Dewar <dewar@adacore.com>
38
6f12117a
RD
39 * lib-writ.adb (Write_Unit_Information): Use SCO_Output to output SCO
40 information.
41
42 * lib-writ.ads: Document addition of SCO lines to ALI file
43
44 * par_sco.ads, par_sco.adb: New files.
45
46 * opt.ads (Generate_SCO): New switch
47
48 * par.adb (Par): Call SCO_Record to record SCO information
49
50 * sem_warn.adb (Warn_On_Constant_Condition): Adjust SCO condition
51
52 * switch-c.adb: Recognize -gnateS to generate SCO information
53
54 * usage.adb: Add line for -gnateS
55
56 * gcc-interface/Make-lang.in: Add dependency on par_sco.o for gnat1
57
3a336262
AC
582009-07-15 Robert Dewar <dewar@adacore.com>
59
60 * sinfo.ads, make.adb, par.ads, par.adb, sem_warn.adb: Minor
61 reformatting.
62
632009-07-15 Thomas Quinot <quinot@adacore.com>
64
65 * g-socthi-mingw.adb: Minor comment addition
66
67 * g-socthi-mingw.ads (WSAStartup): First argument is a WORD not an int.
68
1b73fbc4
RD
692009-07-15 Robert Dewar <dewar@adacore.com>
70
71 * g-htable.ads, s-htable.ads: Minor reformatting
72
6b3fc735
RD
732009-07-15 Robert Dewar <dewar@adacore.com>
74
75 * switch-c.adb, sem_ch10.adb, sem_warn.adb, sem_warn.ads: Implement
76 new switch -gnatw.g.
77 (Set_GNAT_Mode_Warnings): New procedure.
78
79 * lib-xref.adb: Minor reformatting
80
124e3829
RD
812009-07-15 Robert Dewar <dewar@adacore.com>
82
83 * exp_aggr.adb, tbuild.ads, tbuild.adb: Minor reformatting
84 Minor code reorganization
85
2a4c0366
TG
862009-07-14 Taras Glek <tglek@mozilla.com>
87 Rafael Espindola <espindola@google.com>
88
89 * gcc-interface/Make-lang.in (ada.install-plugin): New target for
90 installing plugin headers.
91
ae525aa8
ES
922009-07-13 Ed Schonberg <schonberg@adacore.com>
93
94 * exp_ch7.adb, exp_util.adb, tbuild.adb, tbuild.ads, exp_ch4.adb,
95 exp_aggr.adb (Make_Temporary): Utility to create a defining identifier
96 and link it to the expression whose value it captures.
97
a7209434
AC
982009-07-13 Robert Dewar <dewar@adacore.com>
99
100 * output.adb: Minor comment addition for last change
101
102 * sinfo.ads: Minor reformatting
103
1042009-07-13 Vasiliy Fofanov <fofanov@adacore.com>
105
106 * adaint.c (__gnat_portable_no_block_spawn): on Windows, return -1 when
107 spawn failed like on all other targets.
108
1092009-07-13 Ed Schonberg <schonberg@adacore.com>
110
111 * exp_ch7.adb: Indicate origin of temporary for transient expression.
112
ef76538f
AC
1132009-07-13 Thomas Quinot <quinot@adacore.com>
114
115 * s-oscons-tmplt.c: Add comment.
116
1172009-07-13 Robert Dewar <dewar@adacore.com>
118
119 * sinfo.adb, sinfo.ads, sem_util.adb, atree.adb, atree.ads: Minor
120 reformatting. Minor code reorganization (add 9 argument version of
121 Nkind_In).
122
123 * impunit.adb: Remove s-os_lib from list of system extensions.
124
125 * sem_util.ads: Minor reformatting
126
127 * output.adb: Add warnings off/on around System.OS_Lib.
128
690001a2
BD
1292009-07-13 Bob Duff <duff@adacore.com>
130
131 * exp_dist.adb: Minor comment updates.
132
a712aa03
AC
1332009-07-13 Gary Dismukes <dismukes@adacore.com>
134
135 * sem_ch10.adb, sem_ch12.adb, gnat1drv.adb, exp_ch4.adb: Fix casing of
136 several references to CodePeer.
137
1382009-07-13 Bob Duff <duff@adacore.com>
139
140 * exp_dist.adb (Build_From_Any_Function,Build_To_Any_Function,
141 Build_TypeCode_Function_All): Do not recurse if the type is the base
142 type.
143
76efd572
AC
1442009-07-13 Robert Dewar <dewar@adacore.com>
145
146 * exp_ch4.adb: Minor comment change
147
1482009-07-13 Ed Schonberg <schonberg@adacore.com>
149
150 * sem_ch5.adb (Analyze_Iteration_Scheme): Generate dummy reference for
151 type of iteration, to prevent spurious warnings.
152
1532009-07-13 Nicolas Roche <roche@adacore.com>
154
155 * s-oscons-tmplt.c: On VxWorks target ensure that vxWorks.h is always
156 included.
157
1582009-07-13 Arnaud Charlet <charlet@adacore.com>
159
160 * switch-c.adb, usage.adb, sem_ch9.adb, gnat_ugn.texi, rtsfind.adb,
161 gnat1drv.adb, opt.ads, sem_ch13.adb (Inspector_Mode): Renamed to
162 Generate_SCIL.
163 (CodePeer_Mode): New -gnatC switch.
164 (Adjust_Global_Switches): Adjust settings for Generate_SCIL and
165 CodePeer_Mode.
166
10475800
EB
1672009-07-13 Eric Botcazou <ebotcazou@adacore.com>
168
169 * checks.adb (Selected_Range_Checks): Do not consider that a non-static
170 integer bound forces the check if it is compared to its subtype range.
171
7b00e31d
AC
1722009-07-13 Robert Dewar <dewar@adacore.com>
173
174 * prj.ads, prj-dect.adb, prj-err.ads, prj-err.adb, prj-nmsc.adb,
175 prj-strt.ads: Minor reformatting
176
1772009-07-13 Thomas Quinot <quinot@adacore.com>
178
179 * exp_dist.adb (Build_From_Any_Call): For the case of a generic type,
180 set the type of the From_Any call to the base type.
181
1822009-07-13 Doug Rupp <rupp@adacore.com>
183
184 * symbols-processing-vms-ia64.adb (Process): Add variables and
185 constants to retrieve and check for symbol visibility.
186
1872009-07-13 Javier Miranda <miranda@adacore.com>
188
189 * exp_ch4.adb (Expand_N_Unchecked_Type_Conversion): If conversion is to
190 the identical type we remove the conversion completely because
191 it is useless.
192
0e41a941
AC
1932009-07-13 Emmanuel Briot <briot@adacore.com>
194
195 * prj-err.adb (Error_Msg): One more case where a message should be
196 considered as a warning.
197
198 * gnatcmd.adb (GNATCmd): Fix previous change, which negated a test.
199
2002009-07-13 Thomas Quinot <quinot@adacore.com>
201
202 * exp_dist.adb (Expand_All_Calls_Remote_Subprogram_Call): Analyze
203 calling stubs in the (library level) scope of the RCI locator, where it
204 is attached, not in the caller's scope.
205
2062009-07-13 Javier Miranda <miranda@adacore.com>
207
208 * sem_ch3.adb (Analyze_Object_Declaration): In case of class-wide
209 interface object declarations we delay the generation of the equivalent
210 record type declarations until its expansion because there are cases in
211 which they are not required.
212
213 * sem_util.adb (Implements_Interface): Add missing support for subtypes.
214
215 * sem_disp.adb (Check_Controlling_Formals): Minor code cleanup plus
216 addition of assertion.
217
218 * exp_util.adb (Expand_Subtype_From_Expr): Renamings of class-wide
219 interface types require no equivalent constrained type declarations
220 because the expanded code only references the tag component associated
221 with the interface.
222 (Find_Interface_Tag): Improve management of interfaces that are
223 ancestors of tagged types.
224
225 * exp_ch3.adb (Expand_N_Object_Declaration): Improve the expansion of
226 class-wide object declarations to add missing support to statically
227 displace the pointer to the object to reference the tag component
228 associated with the interface.
229
230 * exp_disp.adb (Make_Tags) Avoid generation of internally generated
231 auxiliary types associated with user-defined dispatching calls if the
232 type has no user-defined primitives.
233
75069667
VF
2342009-07-13 Vasiliy Fofanov <fofanov@adacore.com>
235
236 * mingw32.h: Make it explicit that we need XP or later.
237
238 * initialize.c: Remove useless extern symbol declaration.
239
240 * adaint.h: Ditto, also expose __gnat_win32_remove_handle to allow
241 code reuse in expect.c.
242
243 * adaint.c: Changes throughout the Windows section to redesign storage
244 of the child process list and the process identification.
245
246 * expect.c (__gnat_kill, __gnat_waitpid): Simplify, cleanup, use pids
247 for interfacing, fix errors.
248 (__gnat_expect_portable_execvp): use function in adaint.c
249
e2d9085b
EB
2502009-07-13 Emmanuel Briot <briot@adacore.com>
251
252 * prj-proc.adb, prj-part.adb, prj-part.ads, prj-strt.adb,
253 prj-strt.ads, prj.adb, prj.ads, prj-makr.adb, prj-makr.ads,
254 prj-dect.adb, prj-dect.ads, prj-nmsc.adb, prj-pars.adb, errutil.adb,
255 errutil.ads, prj-conf.adb, gnatname.adb, prj-err.adb, prj-err.ads
256 (Prj.Nmsc.Report_Error): Removed, no longer needed.
257 Always use Prj.Err.Report_Message.
258
442c0581
RD
2592009-07-13 Robert Dewar <dewar@adacore.com>
260
261 * prj.adb, sem_ch4.adb, sem_res.adb, prj-nmsc.adb: Minor reformatting
262 & comment edits.
263
3c2815d8
RD
2642009-07-13 Robert Dewar <dewar@adacore.com>
265
266 * opt.ads, prj-conf.adb, prj-env.adb, prj-ext.adb, prj-nmsc.adb,
267 prj-proc.adb, prj-tree.adb, prj-tree.ads: Minor reformatting
268
197e4514
AC
2692009-07-13 Emmanuel Briot <briot@adacore.com>
270
271 * prj.adb, prj.ads, prj-env.adb, prj-conf.adb, prj-tree.adb,
272 mlib-prj.adb (Private_Part.Ada_Prj_Objects_File_Set,
273 Ada_Prj_Include_File_Set): Removed, since not needed
274 Code clean up.
275
2762009-07-13 Ed Schonberg <schonberg@adacore.com>
277
278 * sem_ch4.adb (Analyze_Set_Membership): New procedure, subsidiary of
279 Analyze_Membership_Op.
280
281 * sem_res.adb (Resolve_Set_Membership): New procedure, subsidiary of
282 Resolve_Membership_Op.
283
284 * exp_ch4.adb (Expand_Set_Membership): New procedure, subsidiary of
285 Expand_N_In.
286
2872009-07-13 Robert Dewar <dewar@adacore.com>
288
289 * clean.adb: Minor reformattting
290
7bccff24
EB
2912009-07-13 Emmanuel Briot <briot@adacore.com>
292
293 * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj-ext.adb,
294 gnat_ugn.texi, prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-util.adb,
295 prj-conf.adb, gnatname.adb, prj-env.adb, prj-env.ads, prj-tree.adb,
296 prj-tree.ads (Prj.Tree.Create*): New subprograms to create new packages
297 and attributes in a project tree.
298 (Add_Default_GNAT_Naming_Scheme): Provide real implementation.
299 Remove last remaining mode-specific code (ada_only or
300 multi_language). This was duplicating code
301 (Get_Mode, Set_Mode): removed, no longer used.
302 (Initialize_Project_Path): all tools will now take into account both
303 GPR_PROJECT_PATH and ADA_PROJECT_PATH (in that order).
304 Remove some global variables and subprograms no longer used
305 Make temporary files tree-specific, to avoid interferences between
306 trees loaded in memory at the same time.
307 (Prj.Delete_Temporary_File): new subprogram
308 (Object_Paths, Source_Paths): fields no longer stored in the project
309 tree, since they are only needed locally in Set_Ada_Paths.
310 (Set_Mapping_File_Initial_State_To_Empty): removed, since had no
311 effect in practice.
312 (Project_Tree_Data.Ada_Path_Buffer): removed, since it can be replaced
313 by local variables in the appropriate subprograms
314 (Has_Foreign_Sources): removed.
315
316 * gcc-interface/Makefile.in: prj-pp.o is now needed to build gnatmake
317
5a64837c
AC
3182009-07-13 Arnaud Charlet <charlet@adacore.com>
319
320 * gnat1drv.adb (Adjust_Global_Switches): No longer set
321 Back_Annotate_Rep_Info in inspector mode.
322 (Gnat1Drv): Need to call the back-end in inspector mode to generate SCIL
323
324 * opt.ads: Update comment.
325
2c011ce1
RD
3262009-07-13 Robert Dewar <dewar@adacore.com>
327
328 * lib.adb, prj-nmsc.adb, prj-proc.adb, prj-proc.ads, prj.adb,
329 prj.ads: Minor reformatting and code reorganization.
330
331 * par-ch3.adb (Check_Restricted_Expression): New procedure
332
99269cf5
ES
3332009-07-13 Ed Schonberg <schonberg@adacore.com>
334
335 * exp_attr.adb (Rewrite_Stream_Proc_Call): When rewriting a stream
336 attribute into a call of the corresponding suprogram, create extra
337 formals for the subprogram, because it may be a renaming whose
338 analysis does not create extra formals.
339
32404665
EB
3402009-07-13 Emmanuel Briot <briot@adacore.com>
341
342 * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb,
343 prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb,
344 prj-pars.ads, prj-conf.adb, prj-conf.ads, prj-env.adb, prj-tree.adb,
345 prj-tree.ads: Minor reformatting.
346 (Processing_Flags): new record to encapsulate the set of common
347 parameters to several subprograms in the project manager.
348 (Prj.Nmsc.Process_Naming_Scheme): renames Check, and moved to body
349 Remove the need for the Current_Dir parameter in subprograms.
350 (Look_For_Sources): minor refactoring, now that we no longer need to
351 share subprograms between the two Ada_Only and Multi_Language modes
352 (Processing_Flags): New field Error_On_Unknown_Language.
353 Merge tests for library project between gnatmake and gprbuild.
354
959dd7d8
AC
3552009-07-13 Arnaud Charlet <charlet@adacore.com>
356
357 * lib.adb, make.adb, mlib.adb, exp_dist.adb: Update comments.
358 Minor reformatting.
359
23c4ff9b
AC
3602009-07-13 Emmanuel Briot <briot@adacore.com>
361
362 * prj-env.adb (Create_Config_Pragmas_File): Iterate on sources rather
363 than units.
364
3652009-07-13 Thomas Quinot <quinot@adacore.com>
366
367 * sem_ch3.adb (Process_Full_View): Propagate Has_Specified_Stream_{Read,
368 Write,Input,Output} from private view to full view.
369
370 * sem_type.adb, sem_type.ads: Minor reformatting
371
3722009-07-13 Nicolas Setton <setton@adacore.com>
373
374 * exp_dbug.ads: Add documentation note on the utility of
375 DW_AT_GNAT_encoding for IDEs.
376
3772009-07-13 Robert Dewar <dewar@adacore.com>
378
379 * g-socthi-vxworks.adb: Minor reformatting
380
381 * gnatcmd.adb: Minor reformatting
382
72a3d7c7
AC
3832009-07-13 Thomas Quinot <quinot@adacore.com>
384
385 * rtsfind.ads, exp_dist.adb (RE_Allocate_Buffer): Runtime entry
386 removed, not used anymore.
387 (Exp_Dist.PolyORB_Support.Helpers.Assign_Opaque_From_Any):
388 New subprogram, implements copy of an Any value into a limited object.
389 (Exp_Dist.PolyORB_Support.Build_General_Calling_Stubs,
390 Exp_Dist.PolyORB_Support.Build_Subprogram_Receiving_Stubs,
391 Exp_Dist.PolyORB_Support.Helpers.Build_From_Any_Function): For the case
392 of parameters of a limited type, use the above new subprogram.
393
3942009-07-13 Emmanuel Briot <briot@adacore.com>
395
396 * prj-nmsc.adb, prj-proc.adb, mlib.adb (Add_Source): new parameter
397 Location.
398 (Copy_ALI_Files): Avoid calls to read when pointing outside of the
399 allocated space.
400 (Error_Report): Remove global variable, replaced by parameters.
401
223eab97
AC
4022009-07-13 Thomas Quinot <quinot@adacore.com>
403
404 * g-socthi-vxworks.adb (C_Sendto): VxWorks does not support the
405 standard sendto(2) interface for connected sockets (passing a null
406 destination address). Use send(2) instead for that case.
407
4082009-07-13 Pascal Obry <obry@adacore.com>
409
410 * adaint.c: Fix __gnat_stat() with Win32 UNC paths.
411
fdd7e7bb
EB
4122009-07-13 Emmanuel Briot <briot@adacore.com>
413
414 * prj-proc.adb, prj-proc.ads, prj.ads, prj-nmsc.adb, prj-nmsc.ads,
415 prj-pars.adb, prj-conf.adb, prj-conf.ads: Remove all remaining global
416 variables and tables in prj-nmsc.adb.
417 (Tree_Processing_Data): Renames Processing_Data, some new fields added
418 (Project_Processing_Data): New record
419 Simplify/unify check for missing sources.
420
fc2c32e2
EB
4212009-07-13 Emmanuel Briot <briot@adacore.com>
422
423 * gnatcmd.adb, make.adb, mlib-prj.adb, prj-part.adb, mlib.adb,
424 prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb,
425 prj-pars.ads, prj-conf.adb, prj-conf.ads, prj-tree.adb,
426 prj-tree.ads (Immediate_Directory_Of): Removed.
427 (Prj.Pars): Now parse the project simulating a default config file.
428 (Add_Default_GNAT_Naming_Scheme): New subprogram
429 (Check_Naming_Multi_Lang): Fix default value for Dot_Replacement.
430 Remove gnatmake-specific parsing of source files.
431 (Check_Illegal_Suffix): Renames Is_Illegal_Suffix, since it now raises
432 the error itself to provide more precise diagnostics.
433 (Process_Exceptions_Unit_Based): Avoid duplicate error message when
434 a unit belongs to several projects.
435 (Copy_Interface_Sources): Search the full path of files to copy in the
436 list of sources of the application rather than in the list of units.
437 (Parse_Project_And_Apply_Config): Do not reset the name of the main
438 project file.
439 (Check_File): Use htables to find out whether a source is duplicated.
440 (Add_Source): check whether the source or unit were already seen earlier
441
442 * gcc-interface/Makefile.in: Update gnatmake dependencies.
443
1629f700
RD
4442009-07-13 Robert Dewar <dewar@adacore.com>
445
446 * par-ch3.adb (P_Discrete_Choice_List): Choice can only be simple
447 expression if extensions permitted.
448
449 * par-ch4.adb (P_Membership_Test): New procedure (implement membership
450 set tests).
451 (P_Relation): Use P_Membership_Test
452
453 * par.adb (P_Membership_Test): New procedure (implement membership set
454 tests).
455
456 * sinfo.ads, sinfo.adb (N_In, N_Not_In) Add Alternatives field for sets.
457
458 * sprint.adb (Sprint_Node): Handle set form for membership tests.
459
c6f39437
AC
4602009-07-13 Thomas Quinot <quinot@adacore.com>
461
462 * exp_dist.adb (Add_RACW_Primitive_Declarations_And_Bodies):
463 Do not attempt to generate stubs for predefined primitives of
464 synchronized interfaces.
465 (Add_Stub_Type): Factor some code from the PCS-specific variants of
466 Build_Stub_Type.
467
4682009-07-13 Ed Schonberg <schonberg@adacore.com>
469
470 * sem_disp.adb (Override_Dispatching_Operation): Functions inherit the
471 Controlling_Result flag from the operation they override.
472
d97a04d0
AC
4732009-07-13 Arnaud Charlet <charlet@adacore.com>
474
475 * gcc-interface/Make-lang.in: Update dependencies
476
01957849
AC
4772009-07-13 Robert Dewar <dewar@adacore.com>
478
479 * gnat_ugn.texi: The gnatf switch no longer is needed to get full
480 details on unsupported constructs.
481
482 * rtsfind.adb: Remove references to All_Errors_Mode, give errors
483 unconditionally.
484
485 * s-trafor-default.adb: Correct some warnings
486
487 * s-valwch.adb, a-calend.adb, freeze.adb, prj.ads, s-vmexta.adb,
488 sem.adb, sem_ch10.adb, sem_ch6.adb, sem_disp.adb, vxaddr2line.adb:
489 Minor reformatting.
490
491 * par-ch4.adb (Conditional_Expression): Capture proper location for
492 conditional expression, should point to IF.
493
494 * s-tassta.adb, a-wtdeau.adb, s-tasren.adb, s-arit64.adb, s-imgdec.adb,
495 s-direio.adb, s-tpobop.adb, g-socket.adb, s-tposen.adb, s-taskin.adb,
496 g-calend.adb, s-regpat.adb, s-scaval.adb, g-catiio.adb: Minor code
497 reorganization (use conditional expressions).
498
4992009-07-13 Ed Schonberg <schonberg@adacore.com>
500
501 * exp_util.adb (Remove_Side_Effects): If the expression is a call to a
502 build-in-place function that returns an inherently limited type (not
503 just a task type) create proper object declaration so that extra
504 build-in-place actuals are properly added to the call.
505
79afa047
AC
5062009-07-13 Robert Dewar <dewar@adacore.com>
507
508 * freeze.adb (Freeze_Entity): Implement Warn_On_Suspicious_Modulus_Value
509
510 * gnat_ugn.texi: Add documentation for -gnatw.m/.M
511
512 * opt.ads (Warn_On_Suspicious_Modulus_Value): New flag
513
514 * sem_warn.adb (Set_Dot_Warning_Flag): Set/reset
515 Warn_On_Suspicious_Modulus_Value.
516
517 * ug_words: Add entries for -gnatw.m/-gnatw.M.
518
519 * usage.adb: Add lines for -gnatw.m/.M switches.
520
521 * vms_data.ads: Add [NO]SUSPICIOUS_MODULUS for -gnatw.m/w.M
522
5232009-07-13 Javier Miranda <miranda@adacore.com>
524
525 * sem_ch6.adb (Check_Synchronized_Overriding): Add missing check before
526 reading the Is_Interface attribute of the dispatching type.
527
5282009-07-13 Robert Dewar <dewar@adacore.com>
529
530 * a-convec.adb: Minor code reorganization (use conditional expressions)
531
67b3acf8
RD
5322009-07-13 Robert Dewar <dewar@adacore.com>
533
534 * freeze.adb (Check_Suspicious_Modulus): New procedure.
535
cfb120b5
AC
5362009-07-13 Robert Dewar <dewar@adacore.com>
537
538 * i-cobol.ads: Minor code fix (2**4 instead of 16 as modulus to avoid
539 warning).
540
541 * par-ch4.adb: Minor reformatting
542
5432009-07-13 Ed Schonberg <schonberg@adacore.com>
544
545 * freeze.adb, freeze.ads, exp_aggr.adb: Rename Expand_Atomic_Aggregate
546 => Is_Atomic_Aggregate
547
fb2e11ee
AC
5482009-07-13 Emmanuel Briot <briot@adacore.com>
549
550 * prj-nmsc.adb: Avoid traversing the list of source files if
551 we have already processed all locally removed files.
552
5532009-07-13 Jose Ruiz <ruiz@adacore.com>
554
555 * gnat_ugn.texi: Fix typo.
556
5572009-07-13 Robert Dewar <dewar@adacore.com>
558
559 * freeze.adb: Minor reformatting
560 Minor code reorganization (use Nkind_In)
561
01e17342 562 * exp_ch6.adb, prj.adb, sem_res.adb: Minor reformatting
fb2e11ee 563
f4cd2542
EB
5642009-07-11 Eric Botcazou <ebotcazou@adacore.com>
565
566 * checks.adb (Apply_Address_Clause_Check): Remove Size_Warning_Output
567 local variable and do not test it in Compile_Time_Bad_Alignment.
568 Do not issue size or alignment warnings for the X'Address form.
569 * sem_util.ads (Find_Overlaid_Object): Delete.
570 (Find_Overlaid_Entity): New procedure.
571 * sem_util.adb (Find_Overlaid_Object): Rename to...
572 (Find_Overlaid_Entity): ...this and turn into a procedure. Report
573 whether the address is offseted within the overlaid entity.
574 (Has_Compatible_Alignment): Track the offset globally instead of
575 passing it to Check_Offset. For an indexed component, compute the
576 full offset when possible. If the resulting offset is zero, only
577 check the prefix.
578 (Check_Offset): Delete.
579 * sem_ch13.adb (Address_Clause_Check_Record): Add Off field.
580 (Address_Aliased_Entity): Delete.
581 (Analyze_Attribute_Definition_Clause) <Attribute_Address>: Call
582 Find_Overlaid_Entity to find the overlaid entity and the offset.
583 Adjust throughout for above change.
584 (Validate_Address_Clauses): Always use attributes of entities, not of
585 their type. Tweak message for warning. Call Has_Compatible_Alignment
586 if the address is offseted to warn about incompatible alignments.
587 * gcc-interface/gigi.h (annotate_object): Declare.
588 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Annotate renaming
589 entity. Call annotate_object instead of annotating manually objects.
590 (annotate_object): New function.
591 * gcc-interface/trans.c (Subprogram_Body_to_gnu): Annotate parameters
592 at the end.
593
7635b357
EB
5942009-07-11 Eric Botcazou <ebotcazou@adacore.com>
595
596 * gcc-interface/ada-tree.h: Minor reorganization.
597 * gcc-interface/misc.c (gnat_print_decl): Minor tweaks.
598 (gnat_print_type): Likewise.
599
b0159fbe
AC
6002009-07-11 Thomas Quinot <quinot@adacore.com>
601
602 * sem_util.adb, sem_res.adb, sem_warn.adb: Minor comment editing:
603 Lvalue -> lvalue
604
605 * exp_ch6.adb: Minor reformatting
606
6072009-07-11 Ed Schonberg <schonberg@adacore.com>
608
609 * freeze.adb (Expand_Atomic_Aggregate): Clean up code, take into
610 account possible type qualification to determine whether aggregate
611 needs a target temporary to respect atomic type or object.
612
613 * exp_aggr.adb (Expand_Record_Aggregate): Use new version of
614 Expand_Atomic_Aggregate.
615
6162009-07-11 Emmanuel Briot <briot@adacore.com>
617
618 * prj.adb, prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Speed up
619 algorithm.
620 (Excluded_Sources_Htable): No longer a global table.
621 Change error message to indicate which files are illegal in the list
622 of excluded files, as opposed to only the location in the project
623 file.
624 (Find_Source): New subprogram.
625
811c6a85
AC
6262009-07-10 Thomas Quinot <quinot@adacore.com>
627
628 * exp_ch7.adb: Update comments.
629
6302009-07-10 Arnaud Charlet <charlet@adacore.com>
631
632 * exp_ch13.adb (Expand_N_Record_Representation_Clause): Ignore mod
633 clause if -gnatI is set instead of crashing.
634
6352009-07-10 Ed Schonberg <schonberg@adacore.com>
636
637 * sem_ch11.adb (Same_Expression): Null is always equal to itself.
638 Additional work to remove redundant successive raise statements, in
639 this case access checks.
640
6412009-07-10 Vincent Celier <celier@adacore.com>
642
643 * make.adb (Compile): Always create a deep copy of the mapping file
644 argument (-gnatem=...) as it may be deallocate/reallocate by
645 Normalize_Arguments.
646
6472009-07-10 Javier Miranda <miranda@adacore.com>
648
649 * einfo.adb (Directly_Designated_Type): Add assertion.
650
651 * sem_res.adb (Check_Fully_Declared_Prefix): Add missing check on
652 access types before using attribute Directly_Designated_Type.
653
6542009-07-10 Emmanuel Briot <briot@adacore.com>
655
656 * prj.ads: Minor typo fix
657
6582009-07-10 Ed Schonberg <schonberg@adacore.com>
659
660 * sem_ch6.adb (Add_Extra_Formal): Protected operations do no need
661 special treatment.
662
663 * exp_ch6.adb (Expand_Protected_Subprogram_Call): If rewritten
664 subprogram is a function call, resolve properly, to ensure that extra
665 actuals are added as needed.
666
2be0bff8
TQ
6672009-07-10 Thomas Quinot <quinot@adacore.com>
668
669 * sem_aggr.adb: Minor comments editing
670
671 * exp_tss.adb, exp_ch3.adb: Minor reformatting
672
ac7120ce
RD
6732009-07-10 Robert Dewar <dewar@adacore.com>
674
675 * exp_util.adb: Minor code reorganization (use N_Short_Circuit)
676
677 * exp_ch4.adb: Add ??? comment for conditional expressions on limited
678 types.
679
680 * checks.adb (In_Declarative_Region_Of_Subprogram_Body): New procedure,
681 replaces Safe_To_Capture_In_Parameter_Value, and properly handles the
682 case of conditional expressions that may not be elaborated.
683
684 * sem_util.adb (Safe_To_Capture_Value): Properly handle case of
685 conditional expression where we may not execute then then or else
686 branches.
687
514d0fc5
AC
6882009-07-10 Arnaud Charlet <charlet@adacore.com>
689
690 * i-cexten.ads (bool): New type.
691
6922009-07-10 Robert Dewar <dewar@adacore.com>
693
694 * sinfo.ads (N_Short_Circuit): New definition
695
696 * sem_ch13.adb, sem_ch6.adb, sem_eval.adb, sem_res.adb,
697 treepr.adb: Minor code reorganization (use N_Short_Circuit)
698
7b4db06c
JM
6992009-07-10 Javier Miranda <miranda@adacore.com>
700
701 * exp_ch3.adb (Expand_Freeze_Record_Type): Handle constructors of
702 non-tagged record types.
703
704 * sem_prag.adb
705 (Process_Import_Or_Interface): Allow the use of "pragma Import (CPP,..)"
706 with non-tagged types. Required to import C++ classes that have no
707 virtual primitives.
708 (Analyze_Pragma): For pragma CPP_Constructor. Allow the use of functions
709 returning non-tagged types. For backward compatibility, if the
710 constructor returns a class wide type we internally change the
711 returned type to the corresponding non class-wide type.
712
713 * sem_aggr.adb
714 (Valid_Ancestor_Type): CPP_Constructors code cleanup.
715 (Resolve_Extension_Aggregate): CPP_Constructors code cleanup.
716 (Resolve_Aggr_Expr): CPP_Constructors code cleanup.
717 (Resolve_Record_Aggregate): CPP_Constructors code cleanup.
718
719 * sem_ch3.adb
720 (Analyze_Object_Declaration): CPP_Constructors code cleanup.
721
722 * sem_ch5.adb (Analyze_Assignment): CPP_Constructors code cleanup.
723
724 * sem_util.adb (Is_CPP_Constructor_Call): Code cleanup.
725
726 * sem_res.adb (Resolve_Allocator): CPP_Constructors code cleanup.
727
728 * exp_ch4.adb (Expand_Allocator_Expression): CPP_Constructors code
729 cleanup.
730
731 * exp_aggr.adb (Build_Record_Aggr_Code): CPP_Constructors code clean up.
732
733 * gnat_rm.texi
734 (pragma CPP_Class): Document that it can be used now with non-tagged
735 record types.
736 (pragma CPP_Constructor): Document that it can be used now with
737 functions returning specific types. For backward compatibility
738 we also support functions returning class-wide types.
739
740 * gnat_ugn.texi
741 (Interfacing with C++ constructors): Update the examples to incorporate
742 the new syntax in which the functions used to import C++ constructors
743 return specific types.
744 (Interfacing with C++ at the Class Level): Update the examples to
745 incorporate the new syntax in which the functions used to import
746 C++ constructors return specific types.
747
f2abc637
AC
7482009-07-10 Thomas Quinot <quinot@adacore.com>
749
750 * exp_disp.adb (Make_Disp_Asynchronous_Select_Body,
751 Make_Disp_Conditional_Select_Body,
752 Make_Disp_Timed_Select_Body): For the case of a type that is neither an
753 interface nor a concurrent type, the primitive body is empty. Generate
754 a null statement so that it remains well formed.
755
7562009-07-10 Ed Schonberg <schonberg@adacore.com>
757
758 * exp_aggr.adb (Build_Record_Aggr_Code): If the type has discriminants,
759 replace references to them in defaulted component expressions with
760 references to the values of the discriminants of the target object.
761
b603e37b
AC
7622009-07-10 Ed Schonberg <schonberg@adacore.com>
763
764 * sem_prag.adb (Analyze pragma, case Task_Name): Analyze argument of
765 pragma, to capture global references if the context is generic.
766
767 * exp_ch2.adb (Expand_Discriminant): If a task type discriminant
768 appears within the initialization procedure for the corresponding
769 record, replace it with the proper discriminal.
770
7712009-07-10 Vincent Celier <celier@adacore.com>
772
773 * make.adb: Do not include object directories or library ALI
774 directories of library projects in the object path.
775
7762009-07-10 Javier Miranda <miranda@adacore.com>
777
778 * exp_util.adb (Find_Interface_Tag): Reorder processing of incoming
779 Typ argument to ensure proper management of access types.
780
7812009-07-10 Ed Schonberg <schonberg@adacore.com>
782
783 * exp_ch7.adb (Build_Final_List): If the list is being built for a
784 Taft-Amendment type, place the finalization list in the package body,
785 to ensure that the tree for the spec is identical whenever it is
786 compiled.
787
7882009-07-10 Javier Miranda <miranda@adacore.com>
789
790 * sem_ch3.adb (Build_Derived_Record_Type): Use the full-view when
791 inheriting attributes from a private Parent_Base.
792
7932009-07-10 Ed Schonberg <schonberg@adacore.com>
794
795 * sem_ch11.adb (analyze_raise_xxx_error): Remove consecutive raise
796 statements with the same condition.
797
7982009-07-10 Robert Dewar <dewar@adacore.com>
799
800 * exp_ch4.adb (Raise_Accessibility_Error): New procedure
801
a80b0574
TT
8022009-07-09 Tom Tromey <tromey@redhat.com>
803
804 * raise-gcc.c: Include dwarf2h (unconditionally).
805
24da37f2
AC
8062009-07-09 Ed Schonberg <schonberg@adacore.com>
807
808 * sem_ch10.adb (Install_Context): If the unit is a package body,
809 install the private with_clauses of the corresponding package
810 declaration.
811
8122009-07-09 Robert Dewar <dewar@adacore.com>
813
814 * checks.adb: Minor reformatting
815
8162009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
817
818 * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
819 into ug_words.
820
8212009-07-09 Thomas Quinot <quinot@adacore.com>
822
823 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
824 Do not warn for a constant overlaying any constant object
825
8262009-07-09 Ed Schonberg <schonberg@adacore.com>
827
828 * sem_ch10.adb (Install_Context): If the unit is a package body,
829 install the private with_clauses of the corresponding package
830 declaration.
831
8322009-07-09 Robert Dewar <dewar@adacore.com>
833
834 * checks.adb: Minor reformatting
835
8362009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
837
838 * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
839 into ug_words.
840
8412009-07-09 Thomas Quinot <quinot@adacore.com>
842
843 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
844 Do not warn for a constant overlaying any constant object
845
d97a04d0 8462009-07-09 Arnaud Charlet <charlet@adacore.com>
24da37f2
AC
847
848 * gcc-interface/Make-lang.in: Update dependencies
849
7a5debc9
AC
8502009-07-09 Thomas Quinot <quinot@adacore.com>
851
852 * g-socket.adb (Check_Selector): Do not create local copies of the
853 socket sets on the stack.
854
8552009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
856
857 * gnat_ugn.texi: Add missing VMS translations.
858
3f92c93b
AC
8592009-07-09 Ed Schonberg <schonberg@adacore.com>
860
861 * sem_prag.adb (Analyze_Pragma, case Precondition): Do not analyze the
862 condition, to prevent generation of visible code during expansion,
863 when Check is not enabled.
864
8652009-07-09 Gary Dismukes <dismukes@adacore.com>
866
867 * checks.adb (Install_Static_Check): Call Possible_Local_Raise so that
868 the check gets registered for any available local handler
869 (Set_Local_Raise).
870
871 * sem_util.adb: Add with and use of Exp_Ch11.
872 (Apply_Compile_Time_Constraint_Error): Call Possible_Local_Raise so
873 that the check gets registered for any available local handler.
874
875 * exp_ch4.adb (Expand_N_Slice): Remove call to Enable_Range_Check
876 on slice ranges.
877
8782009-07-09 Steve Baird <baird@adacore.com>
879
880 * exp_ch11.adb (Force_Static_Allocation_Of_Referenced_Objects): New
881 function.
882 (Expand_N_Exception_Declaration): Fix handling of exceptions
883 declared in a subprogram.
884
f6cf5b85
AC
8852009-07-09 Emmanuel Briot <briot@adacore.com>
886
887 * prj-nmsc.adb (Find_Sources): Avoid error messages from gprbuild from
888 multi-unit files.
889
8902009-07-09 Thomas Quinot <quinot@adacore.com>
891
892 * freeze.adb: Minor reformatting
893
894 * exp_ch3.adb: Minor comment fix.
895
896 * sinfo.ads: Minor comment fix
897
8982009-07-09 Ed Schonberg <schonberg@adacore.com>
899
900 * exp_ch4.adb (Expand_N_Conditional_Expression): Set Related_Expression.
901
7aedb36a
AC
9022009-07-09 Ed Schonberg <schonberg@adacore.com>
903
904 * freeze.adb (Freeze_Expression): If the expression is the name of a
905 function in a call, and the function has not been frozen yet, create
906 extra formals for it to ensure that the proper actuals are created
907 when expanding the call.
908
9092009-07-09 Emmanuel Briot <briot@adacore.com>
910
911 * prj-pp.adb (Print): Fix handling of source index when set on a
912 declaration node.
913
a4941eec
ES
9142009-07-09 Ed Schonberg <schonberg@adacore.com>
915
916 * einfo.ads, einfo.adb: New attribute Related_Expression, used to link
917 a temporary to the source expression whose value it captures.
918
919 * exp_util.adb (Remove_Side_Effects): Set Related_Expression as needed.
920
5e278028
MLI
9212009-07-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
922
a729ce28 923 * gcc-interface/trans.c (gnat_gimplify_expr): Replace EXPR_LOCUS by
5e278028
MLI
924 EXPR_LOCATION.
925
c2369146
AC
9262009-07-07 Gary Dismukes <dismukes@adacore.com>
927
928 * exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for in out
929 parameters when the subtype of the actual is not known to be a subrange
930 of the formal's subtype.
931 (Expand_Call): Generate a range check only in the E_In_parameter case
932 (in out parameter range checks are now handled in Expand_Actuals).
933
934 * exp_ch4.adb (Expand_N_Slice): Restore code that calls
935 Enable_Range_Check.
936
9372009-07-07 Robert Dewar <dewar@adacore.com>
938
939 * a-stwise.adb, a-stzsea.adb, a-strsea.adb: Add comments
940
9412009-07-07 Javier Miranda <miranda@adacore.com>
942
943 * exp_disp.adb (Expand_Interface_Conversion): Handle access type whose
944 designated type comes from a limited views.
945
9462009-07-07 Emmanuel Briot <briot@adacore.com>
947
948 * prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Fix handling of
949 locally removed files that are later made visible again in an importing
950 project.
951
9522009-07-07 Robert Dewar <dewar@adacore.com>
953
954 * gnat_rm.texi: Clarify documentation of Stream_Convert pragma
955
9562009-07-07 Sergey Rybin <rybin@adacore.com>
957
958 * gnat_ugn.texi: Add an example to the description of gnatcheck
959 'Style_Checks' rule option.
960
9612009-07-07 Tristan Gingold <gingold@adacore.com>
962
963 * seh_init.c: Fix inline assembly statement in seh_init.c
964
9652009-07-07 Ed Schonberg <schonberg@adacore.com>
966
967 * sem_warn.adb (Check_References): Do not emit warnings on formals of
968 an entry body. Only the formals of the entry declaration are traced.
969
75a5a487
RD
9702009-07-07 Robert Dewar <dewar@adacore.com>
971
a729ce28 972 * s-osprim-mingw.adb: Minor code reorganization
75a5a487 973
85686ad9
AC
9742009-07-07 Robert Dewar <dewar@adacore.com>
975
976 * prj-nmsc.adb: Minor reformatting
977
9782009-07-07 Pascal Obry <obry@adacore.com>
979
980 * a-stwise.adb, a-stzsea.adb, a-strsea.adb (Index): properly handle
981 cases where Pattern is longer than Source.
982
9832009-07-07 Pascal Obry <obry@adacore.com>
984
985 * s-osprim-mingw.adb (Get_Base_Time): Avoid infinite loop.
986
54ecb428
AC
9872009-07-07 Emmanuel Briot <briot@adacore.com>
988
989 * prj-nmsc.adb (Process_Naming): canonicalize file suffixes read in the
990 project file.
991
9922009-07-07 Ed Schonberg <schonberg@adacore.com>
993
994 * exp_ch3.adb (Expand_Freeze_Record_Type): Add extra formals to
995 primitive operations, in case one of them is called in the
996 initialization procedure for the type.
997
84157c9a
RD
9982009-07-07 Robert Dewar <dewar@adacore.com>
999
1000 * a-calend.adb: Minor code reorganization (use conditional expressions)
1001
1002 * s-stusta.ads, s-interr-hwint.adb, g-expect-vms.adb, s-secsta.ads,
1003 prj-nmsc.adb, a-teioed.adb, output.ads, prj-attr.ads, a-textio.adb,
1004 s-taskin.ads, scans.ads, s-osinte-vms.adb, s-taprop-solaris.adb,
1005 s-tpopsp-posix-foreign.adb, s-trafor-default.adb, gnat1drv.adb,
1006 s-stchop-vxworks.adb, s-tpopsp-posix.adb, prj-env.adb, prj-env.ads,
1007 g-comlin.adb, exp_ch11.adb: Minor reformatting.
1008
d79e621a
GD
10092009-07-07 Gary Dismukes <dismukes@adacore.com>
1010
1011 * checks.adb (Generate_Range_Check): Replace type conversions with
1012 unchecked conversions to support the case of performing range checks
1013 on Enum'Val (permits integer values to be converted to enumeration).
1014
1015 * exp_attr.adb (Expand_N_Attribute_Reference, cases Attribute_Pred,
1016 Attribute_Succ): Set Do_Range_Check to False before calling
1017 Expand_Pred_Succ, to prevent gigi from generating any range checks.
1018 (Expand_N_Attribute_Reference, case Attribute_Val):
1019 Generate a range check when needed (and set Do_Range_Check to False).
1020
1021 * exp_ch3.adb (Expand_N_Object_Declaration): Generate a range check on
1022 scalar object initialization if needed.
1023
1024 * exp_ch4.adb (Expand_Allocator_Expression): Generate range checks
1025 when needed on scalar allocators.
1026 (Expand_N_Qualified_Expression): Generate range check when needed.
1027 (Expand_N_Slice): Remove call to Enable_Range_Check on slice ranges.
1028 Checks on slice ranges handled in Resolve_Slice.
1029
1030 * exp_ch5.adb (Expand_N_Assignment_Statement): Generate a range check,
1031 when needed, for all scalar assignments, not just discrete.
1032 (Expand_Simple_Function_Return): Resolve the conversion created for a
1033 scalar function return so that the conversion will get expanded to
1034 generate a possible constraint check.
1035
1036 * exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for out and
1037 in out scalar actuals when subtypes don't match, to ensure generation
1038 of return checks (and set Do_Range_Check to False).
1039 (Expand_Call): Uncomment code to perform range checks, but make it apply
1040 only to in and in out parameters (checks on parameter returns are
1041 handled in Expand_Actuals). If a scalar actual for a call to a derived
1042 subprogram is marked as needing a range check, peform it here (and set
1043 Do_Range_Check to False).
1044
1045 * sem_aggr.adb (Resolve_*_Aggregate.Resolve_Aggr_Expr): Generate a
1046 range check on scalar component associations when needed.
1047
1048 * sem_eval.adb (In_Subrange_Of): Return False when the first type has
1049 infinities but the second type does not, as these aren't compatible
1050 floating-point types.
1051
1052 * sem_res.adb (Resolve_Slice): In the case where the prefix of the
1053 slice is itself a slice, pick up the Etype of the prefix. This handles
1054 the case where the prefix was an Image attribute expanded to a slice,
1055 and ensures that we get the subtype with the slice constraint rather
1056 than the unconstrained subbtype of the 'Image.
1057
e0ba1bfd
ES
10582009-07-07 Ed Schonberg <schonberg@adacore.com>
1059
1060 * sem_ch4.adb (Analyze_Conditional_Expression): handle properly
1061 overloaded expressions in a conditional expressions.
1062
1063 * sem_res.adb (Resolve): Handle properly overloaded conditional
1064 expressions.
1065
b46be8a2
RD
10662009-07-07 Robert Dewar <dewar@adacore.com>
1067
1068 * scng.adb: Minor reformattting
1069
1070 * par-ch2.adb (Scan_Pragma_Argument_Association): Pragma argument
1071 association allows conditional expression without parens.
1072
1073 * par-ch4.adb (P_Name): Attribute arguments can be conditional
1074 expressions without enclosing parentheses, and also as parameters,
1075 indexing expressions etc.
1076 (P_Conditional_Expression): New procedure
1077 (P_Expression_If_OK): New procedure
1078
1079 * par.adb (P_Conditional_Expression): New procedure
1080 (P_Expression_If_OK): New procedure
1081
1082 * sem_ch4.adb (Analyze_Conditional_Expression): Allow for two argument
1083 form of conditional expression.
1084
1085 * sem_res.adb (Resolve_Conditional_Expression): Deal with supplying
1086 missing True argument if ELSE argument missing.
1087
1088 * sinfo.adb (Is_Elsif): New flag
1089
1090 * sinfo.ads (N_Conditional_Expression): This node is now a syntactic
1091 part of the language, and the documentation is modified accordingly.
1092 (Is_Elsif): New flag
1093
4fd263a6
OH
10942009-07-06 Olivier Hainque <hainque@adacore.com>
1095
1096 * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu,
1097 setjmp_longjmp): Attach the exception propagation reraise fallback
1098 to the sequence end label location when we have it.
1099
d5b7dccd
FXC
11002009-07-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1101
1102 PR ada/40608
1103 * init.c (APPLE): Include <mach/mach_init.h>.
27778058 1104 (__gnat_error_handler, APPLE): Add ATTRIBUTE_UNUSED marker.
d5b7dccd 1105
9ce8e057
EB
11062009-07-04 Eric Botcazou <ebotcazou@adacore.com>
1107
1108 * ada-tree.h (SET_TYPE_LANG_SPECIFIC): Rewrite.
1109 (SET_DECL_LANG_SPECIFIC): Likewise.
1110 (TYPE_RM_VALUE): New macro.
1111 (SET_TYPE_RM_VALUE): Likewise.
1112 (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUE.
1113 (TYPE_RM_MIN_VALUE): Likewise.
1114 (TYPE_RM_MAX_VALUE): Likewise.
1115 (SET_TYPE_RM_SIZE): Rewrite in terms of SET_TYPE_RM_VALUE.
1116 (SET_TYPE_RM_MIN_VALUE): Likewise.
1117 (SET_TYPE_RM_MAX_VALUE): Likewise.
1118 * decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Remove kludge.
1119
d8bf0ab8
LG
11202009-07-04 Laurent GUERBY <laurent@guerby.net>
1121
1122 PR ada/40631
1123 * tracebak.c (__gnat_backtrace): Fix old-style definition.
27778058 1124
74c9e852
RO
11252009-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1126
1127 * tracebak.c [i386 && sun] (IS_BAD_PTR): Use -1UL in comparison.
1128
882e35a6
JDA
11292009-07-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1130
1131 PR ada/40609
bf92f919
EB
1132 * init.c (__gnat_error_handler, HP-UX): Add ATTRIBUTE_UNUSED marker to
1133 ucontext argument.
882e35a6 1134
c29fe0c8
EB
11352009-07-01 Eric Botcazou <ebotcazou@adacore.com>
1136
1137 * init.c (__gnat_error_handler, Solaris): Add ATTRIBUTE_UNUSED marker.
1138
342f368c
EB
11392009-06-30 Eric Botcazou <ebotcazou@adacore.com>
1140
1141 * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Do not use
1142 the type of the left operand if it pads a self-referential type when
1143 the right operand is a constructor.
1144
1145 * gcc-interface/lang-specs.h: Fix copyright date.
1146
f82a627c
EB
11472009-06-30 Eric Botcazou <ebotcazou@adacore.com>
1148
1149 * gcc-interface/decl.c: Include tree-inline.h.
1150 (annotate_value) <CALL_EXPR>: Try to inline the call in the expression.
1151 * gcc-interface/utils.c (max_size) <CALL_EXPR>: Likewise.
1152 * gcc-interface/utils2.c: Include tree-inline.
1153 (known_alignment) <CALL_EXPR>: Likewise.
1154
a2350322
EB
11552009-06-30 Eric Botcazou <ebotcazou@adacore.com>
1156
b6a1a144 1157 * raise-gcc.c: Include dwarf2.h conditionally.
a2350322 1158
bbf531f0
TT
11592009-06-29 Tom Tromey <tromey@redhat.com>
1160
1161 * raise-gcc.c: Include elf/dwarf2.h.
1162
6ccbcf32
LG
11632009-06-27 Laurent GUERBY <laurent@guerby.net>
1164
1165 * tb-gcc.c (trace_callback): Add casts to silence warning.
1166
463d9ac4
EB
11672009-06-27 Eric Botcazou <ebotcazou@adacore.com>
1168
1169 * tb-gcc.c: Fix copyright notice.
1170
c6bd4220
EB
11712009-06-27 Eric Botcazou <ebotcazou@adacore.com>
1172
1173 * init.c (__gnat_set_globals): Add prototype.
1174 * adaint.c (__gnat_binder_supports_auto_init): Likewise.
1175 (__gnat_sals_init_using_constructors): Likewise.
1176 * gcc-interface/utils.c (gnat_pushlevel): Likewise.
1177 (get_block_jmpbuf_decl): Likewise.
1178 (gnat_poplevel): Likewise.
1179 (merge_sizes): Rename local variable.
1180 (copy_type): Likewise.
1181 (build_vms_descriptor32): Likewise.
1182 (build_vms_descriptor): Likewise.
1183 (convert_vms_descriptor64): Likewise.
1184 (convert_vms_descriptor32): Likewise.
1185 (convert_to_fat_pointer): Likewise.
1186 (maybe_unconstrained_array): Likewise.
1187 (def_fn_type): Use promoted type with va_arg.
1188 * gcc-interface/decl.c (gnat_to_gnu_entity): Add declaration.
1189 (substitute_in_type): Rename local variable.
1190 * gcc-interface/Make-lang.in (ada-warn): Use STRICT_WARN.
1191
6bf68a93
LG
11922009-06-26 Laurent GUERBY <laurent@guerby.net>
1193
1194 * tb-gcc.c (trace_callback): Use char* instead of void*.
91dc2352
EB
1195 * gcc-interface/misc.c (enumerate_modes): Make loop C++ compatible.
1196 * gcc-interface/trans.c (parm_attr): Rename to parm_attr_d.
1197 (Attribute_to_gnu): Adjust for above change.
1198 (Subprogram_Body_to_gnu): Likewise.
1199 * gcc-interface/utils.c (merge_sizes): Rename local variable.
1200 (copy_type): Likewise.
1201 (build_vms_descriptor32): Likewise.
1202 (build_vms_descriptor): Likewise.
1203 (convert_vms_descriptor64): Likewise.
1204 (convert_vms_descriptor32): Likewise.
1205 (convert_to_fat_pointer): Likewise.
1206 (maybe_unconstrained_array): Likewise.
1207 * gcc-interface/decl.c (substitute_in_type): Likewise.
1208
f45f9664
EB
12092009-06-26 Eric Botcazou <ebotcazou@adacore.com>
1210
1211 * gcc-interface/decl.c (cannot_be_superflat_p): New predicate.
1212 (gnat_to_gnu_entity) <E_Array_Subtype>: Use it to build the expression
1213 of the upper bound of the index types.
1214
c0e1e108
EB
12152009-06-26 Eric Botcazou <ebotcazou@adacore.com>
1216
1217 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Factor
1218 out common predicate. Use the maximum to compute the upper bound of
1219 the index type only when it is not wider than sizetype. Perform the
1220 comparison in the index type for the generic expression. Use real
1221 precision to decide whether to generate special types for debugging
1222 information.
1223
ffa5876f
AC
12242009-06-26 Matthew Gingell <gingell@adacore.com>
1225
1226 * adaint.c: Do not use the dummy version of convert_addresses on LynxOS
1227
12282009-06-26 Vincent Celier <celier@adacore.com>
1229
1230 * prj.ads (No_Language_Config): Value of Dependency_Kind is None by
1231 default.
1232
12332009-06-26 Robert Dewar <dewar@adacore.com>
1234
1235 * exp_ch4.adb, gnatcmd.adb, make.adb: Minor reformatting
1236
4e6602a8
EB
12372009-06-26 Eric Botcazou <ebotcazou@adacore.com>
1238
1239 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Pass
1240 correct arguments to create_field_decl. Remove redundant iteration.
1241 Rewrite computation of the maximum size.
1242 <E_Array_Subtype>: Reorder and simplify handling of special cases.
1243 Rewrite computation of the maximum size. Use consistent naming.
1244 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Length>: Swap
1245 comparison order for consistency. Use generic integer node to
1246 build the operator and fold the result.
1247
2a31c32b
AC
12482009-06-25 Vincent Celier <celier@adacore.com>
1249
1250 * vms_data.ads: Minor comment change
1251
12522009-06-25 Gary Dismukes <dismukes@adacore.com>
1253
1254 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Don't build an
1255 assignment statement to targeting a caller-provided object when the
1256 result type is an interface type.
1257
1258 * exp_ch6.adb (Expand_Call): Remove redundant test of
1259 Is_Limited_Interface (Is_Inherently_Limited is sufficient).
1260 (Is_Build_In_Place_Function): Remove test for Is_Limited_Interface.
1261
1262 * sem_aggr.adb (Check_Expr_OK_In_Limited_Aggregate): Add type in call
1263 to OK_For_Limited_Init.
1264
1265 * sem_aux.adb (Is_Inherently_Limited_Type): Revise limited type
1266 condition so that True is returned for all limited interfaces, not
1267 just synchronized ones. Ignore components of an interface type when
1268 checking for limited components (such a component can be a parent
1269 component).
1270
1271 * sem_ch3.ads (OK_For_Limited_Init_In_05): Add type parameter.
1272 (OK_For_Limited_Init): Add type parameter.
1273
1274 * sem_ch3.adb (Check_Initialization): Add type in call to
1275 OK_For_Limited_Init.
1276 (OK_For_Limited_Init): Add new type param in call to
1277 OK_For_Limited_Init_In_05.
1278 (OK_For_Limited_Init_In_05): Permit arbitrary expressions of a
1279 nonlimited type when the context type is a limited interface. Add type
1280 on recursive calls.
1281
1282 * sem_ch4.adb (Analyze_Allocator): Add type in call to
1283 OK_For_Limited_Init.
1284
1285 * sem_ch6.adb (Check_Limited_Return): Add type in call to
1286 OK_For_Limited_Init.
1287
1288 * sem_ch12.adb (Analyze_Formal_Object_Declaration): Add type in call to
1289 OK_For_Limited_Init.
1290 (Instantiate_Object): Add type in call to OK_For_Limited_Init.
1291
1292 * sem_type.adb (Interface_Present_In_Ancestor): In the case of a
1293 class-wide interface, get the base type before applying Etype, in order
1294 to account for class-wide subtypes.
1295
fadcf313
AC
12962009-06-25 Emmanuel Briot <briot@adacore.com>
1297
1298 * gnatcmd.adb, prj-proc.adb, make.adb, prj.adb, prj.ads, prj-nmsc.adb,
1299 prj-util.adb, prj-env.adb, prj-env.ads: Merge handling of naming_data
1300 between gnatmake and gprbuild.
1301 (Naming_Data): Removed, no longer used
1302 (Naming_Table, Project_Tree_Ref.Namings): Removed, since this is only
1303 needed locally in one subprogram, no need to store forever in the
1304 structure.
1305 (Check_Naming_Scheme, Check_Package_Naming): Merged, since they play
1306 a similar role.
1307 (Body_Suffix_Of, Body_Suffix_Id_Of, Register_Default_Naming_Scheme,
1308 Same_Naming_Scheme, Set_Body_Suffix, Set_Spec_Suffix, Spec_Suffix_Of,
1309 Spec_Suffix_Id_Of): removed, no longer used.
1310
13112009-06-25 Javier Miranda <miranda@adacore.com>
1312
1313 * sem_res.adb (Resolve_Allocator): Skip test requiring exact match of
1314 types on qualified expression in calls to imported C++ constructors.
1315
1316 * exp_ch4.adb (Expand_Allocator_Expression): Add missing support for
1317 imported C++ constructors.
1318
13192009-06-25 Sergey Rybin <rybin@adacore.com>
1320
1321 * vms_data.ads: Add qualifier for new gnatcheck '-t' option.
1322
5b900a45
AC
13232009-06-25 Vincent Celier <celier@adacore.com>
1324
1325 * s-os_lib.adb (Normalize_Pathname.Get_Directory): If directory
1326 provided, on Windows change all '/' to '\'.
1327
1328 * fmap.ads, fmap.adb (Remove_Forbidden_File_Name): Remove, no longer
1329 used. Minor comment changes
1330
1331 * prj-nmsc.adb: Do not call Fmap.Add_Forbidden_File_Name or
1332 Remove_Forbidden_File_Name.
1333
13342009-06-25 Quentin Ochem <ochem@adacore.com>
1335
1336 * prj.ads (Unit_Index): Now general access type.
fadcf313 1337
a2b62f99
PO
13382009-06-25 Pascal Obry <obry@adacore.com>
1339
1340 * a-stwise.adb, a-stzsea.adb: Fix confusion between 'Length and 'Last.
1341
1d24fc5e
EB
13422009-06-25 Emmanuel Briot <briot@adacore.com>
1343
1344 * fmap.ads, make.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb,
1345 prj-env.ads (Source_Data.Get_Object): Field removed, since it can be
1346 computed efficiently from the other fields.
1347 (Object_To_Global_Archive): New subprogram
1348 (Create_Mapping): Remove unneeded call to Remove_Forbidden_File_Name.
1349 (Override_Kind): Fix handling of separates in Ada.
1350 (Create_Mapping_File): Remove duplicate code
1351 (Naming_Data.Implementation_Exception, Specification_Exception):
1352 field removed, since never used.
1353 (Naming_Data.Specs, .Bodies): field removed, since this is only
1354 used while processing the project and is not needed once the tree
1355 is in memory. This brings Naming_Data and Lang_Naming_Data
1356 closer (same content now, but different use still).
1357
8f2eeab7
PO
13582009-06-25 Pascal Obry <obry@adacore.com>
1359
1360 * sem_ch4.adb: Minor reformatting.
1361
1362 * a-strsea.adb: Fix confusion between 'Length and 'Last.
1363
bea993f9
AC
13642009-06-25 Ed Schonberg <schonberg@adacore.com>
1365
1366 * exp_attr.adb (Expand_N_Attribute_Reference, case 'Access and
1367 Unchecked_Access): If the context is an interface type, and the prefix
1368 is of the corresponding class-wide type, do not insert a conversion
1369 because the pointer displacement has already taken place, and we must
1370 retain the class-wide type in a dispatching context.
1371
13722009-06-25 Emmanuel Briot <briot@adacore.com>
1373
1374 * prj-nmsc.adb, prj-env.adb (Override_Kind): Unset the unit field of
1375 the previous source file.
1376 (Create_Mapping): Iterate on sources rather than on units.
1377
cabadd1c
AC
13782009-06-25 Emmanuel Briot <briot@adacore.com>
1379
1380 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb,
1381 prj-env.adb, prj-env.ads (Slash): removed, no longer used
1382 (Source_Data): no longer use Path.Name to point to a locally removed
1383 file. Instead we use the field Locally_Removed which is clearer
1384
13852009-06-25 Arnaud Charlet <charlet@adacore.com>
1386
1387 * gcc-interface/Make-lang.in: Remove references to sem_maps.o
1388
1389 * sem_maps.adb, sem_maps.ads: Removed, not used.
1390
9763f8c8
AC
13912009-06-25 Ed Falis <falis@adacore.com>
1392
1393 * s-vxwext-rtp.ads: Add missing declaration
1394
13952009-06-25 Matthew Gingell <gingell@adacore.com>
1396
1397 * a-stwise.adb, a-stzsea.adb (Count, Index): Avoid local copy on stack,
1398 speed up unmapped case.
1399
14002009-06-25 Vincent Celier <celier@adacore.com>
1401
1402 * prj-nmsc.adb (Check): Change error message for illegal abstract
1403 projects.
1404
14052009-06-25 Robert Dewar <dewar@adacore.com>
1406
1407 * gnat_ugn.texi: Add note on use of -gnatct for ASIS
1408
14092009-06-25 Emmanuel Briot <briot@adacore.com>
1410
1411 * fmap.ads: Add documentation on mapping files
1412
d6533e74
RD
14132009-06-25 Robert Dewar <dewar@adacore.com>
1414
1415 * exp_ch6.adb, g-socket.ads, g-socket.adb, sem_ch3.adb: Minor
1416 reformatting
1417
e1f3cb58
AC
14182009-06-24 Robert Dewar <dewar@adacore.com>
1419
1420 * prj-nmsc.adb, prj-nmsc.ads, prj-proc.adb, prj.adb: Minor reformatting
1421
1422 * a-strsea.adb (Count): Avoid local copy on stack, speed up unmapped
1423 case.
1424 (Index): Ditto.
1425
14262009-06-24 Ed Schonberg <schonberg@adacore.com>
1427
1428 * sem_ch4.adb (Analyze_One_Call): Check that at least one actual is
1429 present when checking whether a call may be interpreted as an indexing
1430 of the result of a call.
1431
1432 * exp_ch9.adb (Expand_N_Subprogram_Declaration): Place the generated
1433 body for a null procedure on the freeze actions for the procedure, so
1434 that it will be analyzed at the proper place without premature freezing
1435 of actuals.
1436
1437 * sem_ch3.adb (Check_Completion): Code cleanup.
1438 Do not diagnose a null procedure without a body, if previous errors
1439 have disabled expansion.
1440
14412009-06-24 Doug Rupp <rupp@adacore.com>
1442
1443 * init.c [VMS] Resignal C$_SIGKILL
1444
14452009-06-24 Ed Falis <falis@adacore.com>
1446
1447 * s-vxwext.adb, s-vxwext-kernel.adb: Add s-vxwext body for VxWorks 5
1448 Define ERROR in body for VxWorks 6 kernel
1449
14502009-06-24 Pascal Obry <obry@adacore.com>
1451
1452 * g-socket.adb, g-socket.ads: Fix possible unexpected constraint error
1453 in [Send/Receive]_Socket.
1454
c9287857
EB
14552009-06-24 Emmanuel Briot <briot@adacore.com>
1456
1457 * prj-proc.adb, prj-proc.ads, prj.ads, prj-nmsc.adb, prj-nmsc.ads,
1458 prj-conf.adb, prj-conf.ads (Allow_Duplicate_Basenames): New parameter
1459 to several subprograms.
1460 (Source_Data.Other_Part): Removed, since can be computed from the
1461 language.
1462 (Other_Part): New subprogram.
1463
2b426674
EB
14642009-06-24 Emmanuel Briot <briot@adacore.com>
1465
1466 * gnat_ugn.texi, prj-nmsc.adb (Suffix_Matches): A suffix can also match
1467 the full base name of the file when the suffix doesn't start with a '.'.
1468
95cd3246
AC
14692009-06-24 Vincent Celier <celier@adacore.com>
1470
1471 * prj-nmsc.adb (Check): A project declared abstract is legal if no
1472 attribute Source_Dirs, Source_Files, Source_List_File or Languages is
1473 declared.
1474
14752009-06-24 Robert Dewar <dewar@adacore.com>
1476
1477 * clean.adb, gnatcmd.adb, make.adb, mlib-prj.adb,
1478 prj-env.adb: Minor reformatting
1479
14802009-06-24 Ed Falis <falis@adacore.com>
1481
1482 * s-taprop-vxworks.adb, s-osinte-vxworks.ads, s-vxwext.ads,
1483 s-vxwext-kernel.adb, s-vxwext-kernel.ads, s-vxwext-rtp.adb,
1484 s-tasinf-vxworks.ads, gcc-interface/Makefile.in: Add processor affinity
1485 support for VxWorks SMP.
1486
1487 * gcc-interface/Make-lang.in: Update dependencies
1488
5a66a766
EB
14892009-06-24 Emmanuel Briot <briot@adacore.com>
1490
1491 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
1492 prj-nmsc.adb, prj-env.adb, prj-proc.adb (Units_Table): Removed, since
1493 no longer useful.
1494 (Source_Data.Lang_Kind): Removed, since it duplicates information
1495 already available through Language.Config.
1496 (Source_Data.Compile): Removed, since information is already available
1497 through the language.
1498 (Is_Compilable): New subprogram.
1499 (Source_Data.Dependency): Removed, since already available through
1500 the language.
1501 (Source_Data.Object_Exist, Object_Linked): Removed since available
1502 through the language already.
1503 (Unit_Data.File_Names): Is now also set in multi_language mode, to
1504 bring the two modes closer in the resulting data structures.
1505 (Source_Data.Unit): Now a direct pointer to the unit data, rather than
1506 just the name that would point into a hash table.
1507 (Get_Language_From_Name): New subprogram.
1508
852dba80
AC
15092009-06-24 Javier Miranda <miranda@adacore.com>
1510
1511 * exp_ch4.adb (Expand_N_Type_Conversion): Handle entities that are
1512 visible through limited-with context clauses. In addition, avoid an
1513 extra tag check that is not required when the class-wide
1514 designated types of the operand and target types are
1515 the same entity.
1516 (Tagged_Membership): Handle entities from the limited view.
1517
15182009-06-24 Emmanuel Briot <briot@adacore.com>
1519
1520 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.ads, clean.adb,
1521 prj-nmsc.adb, prj-env.adb (File_Name_Data): removed
1522 (Spec_Or_Body): now a subtype of Source_Kind, to avoid using two
1523 different vocabularies for similar concepts (Impl/Body_Part and
1524 Spec/Specification).
1525 (Unit_Data): now points directly to a Source_Id, rather than duplicating
1526 some of the information in File_Name_Data. This also saves a bit of
1527 memory. However, since we are now using a pointer we need to test
1528 for null explicitly in several places of the code
1529
950d217a
AC
15302009-06-24 Javier Miranda <miranda@adacore.com>
1531
1532 * exp_ch4.adb (Expand_N_Type_Conversion): return immediately
1533 from processing the type conversion when the node is
1534 replaced by an N_Raise_Program_Error node.
1535
15362009-06-24 Hristian Kirtchev <kirtchev@adacore.com>
1537
1538 * sem_ch6.adb (Designates_From_With_Type): New routine.
1539 (Process_Formals): Since anonymous access types are no longer flagged
1540 as from with types, traverse the designated type to determine whether
1541 it is coming from a limited view.
1542
1543 * sem_res.adb: Remove with and use clauses for Sem_Ch10.
1544 (Full_Designated_Type): Use Available_View to extract the non-limited /
1545 full view of a type.
1546
dd3e1ff5
AC
15472009-06-24 Robert Dewar <dewar@adacore.com>
1548
1549 * exp_ch6.adb: Minor reformatting
1550
1551 * layout.adb: Minor reformatting
1552
1553 * make.adb: Minor reformatting
1554
15552009-06-24 Thomas Quinot <quinot@adacore.com>
1556
1557 * sem_ch10.adb: Minor code reorganization.
1558
0386aad1
AC
15592009-06-24 Eric Botcazou <ebotcazou@adacore.com>
1560
1561 * ttypes.ads: Minor editing.
1562
15632009-06-24 Robert Dewar <dewar@adacore.com>
1564
1565 * exp_ch6.adb (Expand_Actuals): Use Is_Volatile, not Treat_As_Volatile
1566 in deciding to do call-by-copy code.
1567
15682009-06-24 Vincent Celier <celier@adacore.com>
1569
1570 * make.adb (Gnatmake): To decide if an executable should be rebuilt,
1571 check if an externally built library file is more current than the
1572 executable.
1573
2724e58f
OH
15742009-06-23 Olivier Hainque <hainque@adacore.com>
1575
1576 * gcc-interface/utils.c (handle_vector_size_attribute): Import from
1577 c-common.c and populate in gnat_internal_attribute_table.
1578
14e33999
AC
15792009-06-23 Ed Schonberg <schonberg@adacore.com>
1580
1581 * sem_res.adb (Valid_Conversion, Full_Designated_Type): Use
1582 Available_View only when designated type of an anonymous access type
1583 is limited view.
1584
15852009-06-23 Robert Dewar <dewar@adacore.com>
1586
1587 * sem_ch10.adb: Minor reformatting
1588
792569a9
RD
1589 * ali.ads: Mino reformatting.
1590
14e33999
AC
1591 * gnat1drv.adb (Adjust_Global_Switches): New procedure (take care of
1592 turning off inlining if ASIS mode active).
1593
1594 * switch-c.adb: Remove fiddling with Inspector_Mode and ASIS_Mode
1595 This belongs in gnat1drv.adb after switches are scanned.
1596
c0985d4e
HK
15972009-06-23 Hristian Kirtchev <kirtchev@adacore.com>
1598
1599 * sem_attr.adb: Add with and use clauses for Sem_Ch10.
1600 (Check_Not_Incomplete_Type): Minor reformatting. Retrieve the root type
1601 when dealing with class-wide types. Detect a legal shadow entity and
1602 retrieve its non-limited view.
1603
1604 * sem_ch10.adb (Has_With_Clause): Move the spec and body of the
1605 subprogram to top package level from Intall_Limited_Withed_Unit.
1606 (Install_Limited_Withed_Unit): Remove spec and body of Has_With_Clause.
1607 Add check which prevents the installation of a limited view if the
1608 non-limited view is already visible through a with clause.
1609 (Is_Legal_Shadow_Entity_In_Body): New routine. Detect a residual, but
1610 legal shadow entity which may occur in subprogram formals of anonymous
1611 access type.
1612
1613 * sem_ch10.ads (Is_Legal_Shadow_Entity_In_Body): New routine.
1614
1615 * sem_ch3.adb (Access_Definition): Remove the propagation of flag
1616 From_With_Type from the designated type to the generated anonymous
1617 access type. Remove associated comment.
1618
1619 * sem_res.adb Add with and use clauses for Sem_Ch10.
1620 (Full_Designated_Type): Detect a legal shadow entity and retrieve its
1621 non-limited view. Since the shadow entity may replace a regular
1622 incomplete type, return the available full view.
1623
0d354370
AC
16242009-06-23 Ed Schonberg <schonberg@adacore.com>
1625
1626 * sem_ch10.adb (Remove_Limited_With_Clause): Clean up code that handles
1627 incomplete type declarations. Previous code was potentially quadratic
1628 in the number of visible declarations in any package appearing in a
1629 limited_with_clause.
1630
16312009-06-23 Robert Dewar <dewar@adacore.com>
1632
1633 * prj-conf.ads, prj-part.adb, prj-proc.adb, prj-proc.ads, sem_ch8.adb,
1634 xref_lib.adb: Minor reformatting
1635
85b7d482
RD
16362009-06-23 Robert Dewar <dewar@adacore.com>
1637
1638 * a-stzhas.adb: Provide dummy body to avoid build problems with old
1639 versions which did have a body for this unit.
1640
efc81a89
AC
16412009-06-23 Vincent Celier <celier@adacore.com>
1642
1643 * prj-attr.adb: Attribute names Initial_Required_Switches and
1644 Final_Required_Switches changed to Leading_Required_Switches and
1645 Trailing_Required_Switches.
1646
1647 * prj-nmsc.adb (Process_Compiler): Attribute names
1648 Initial_Required_Switches and Final_Required_Switches changed to
1649 Leading_Required_Switches and Trailing_Required_Switches.
1650
1651 * prj.ads (Language_Config): Component Initial_Required_Switches and
1652 Final_Required_Switches changed to Leading_Required_Switches and
1653 Trailing_Required_Switches.
1654
1655 * snames.ads-tmpl: Remove standard names Initial_Required_Switches and
1656 Final_Required_Switches; add standard names Leading_Required_Switches
1657 and Trailing_Required_Switches.
1658
16592009-06-23 Thomas Quinot <quinot@adacore.com>
1660
1661 * prj-conf.adb: Minor reformatting
1662
1663 * xref_lib.adb: Minor cleanup
1664
1290ef14
AC
16652009-06-23 Emmanuel Briot <briot@adacore.com>
1666
1667 * prj-proc.adb, prj-proc.ads, prj-nmsc.adb, prj-nmsc.ads, prj-conf.adb,
1668 prj-conf.ads (Check_Configuration): New parameter
1669 Compiler_Driver_Mandatory.
1670
16712009-06-23 Ed Schonberg <schonberg@adacore.com>
1672
1673 * sem_ch10.adb (Analyze_With_Clause): If a subprogram instance in the
1674 context of the current unit has an inline pragma, the instance is not
1675 rewritten as the declaration of the package wrapper. Handle both
1676 possibilities when retrieving the visible subprogram that renames the
1677 instantiation itself.
1678
d6a24cdb
AC
16792009-06-23 Javier Miranda <miranda@adacore.com>
1680
1681 * exp_ch4.adb (Displace_Allocator_Pointer, Expand_N_Allocator): Handle
1682 designated types referencing entities from the limited view.
1683
f91c36dc
AC
16842009-06-23 Robert Dewar <dewar@adacore.com>
1685
1686 * s-strhas.adb, s-strhas.ads: Restrict to 32-bit modular types
1687
1688 * s-imgdec.adb (Set_Decimal_Digits): Fix error of too many digits for
1689 small values
1690
1691 * prj-conf.ads: Minor reformatting
1692
1693 * prj-conf.adb: Minor reformatting
1694
16952009-06-23 Vasiliy Fofanov <fofanov@adacore.com>
1696
1697 * g-debpoo.adb (Dump_Gnatmem): Output dummy timestamps for allocations
1698 to correspond to the log format that gnatmem now expects.
1699
17002009-06-23 Vincent Celier <celier@adacore.com>
1701
1702 * prj-attr.adb: New attributes Initial_Required_Switches,
1703 Final_Required_Switches and Object_File_Switches
1704
1705 * prj-nmsc.adb (Process_Compiler): Process new attributes
1706 Name_Final_Required_Switches, Name_Initial_Required_Switches and
1707 Name_Object_File_Switches.
1708
1709 * prj.ads (Language_Config): New component
1710 Compiler_Initial_Required_Switches (replace Compiler_Required_Switches),
1711 Compiler_Final_Required_Switches and Object_File_Switches.
1712
1713 * snames.ads-tmpl: New standard names Initial_Required_Switches,
1714 Final_Required_Switches and Object_File_Switches
1715
35262047
AC
17162009-06-23 Pascal Obry <obry@adacore.com>
1717
1718 * s-strhas.adb, s-strhas.ads: Minor reformatting.
1719
17202009-06-23 Ed Schonberg <schonberg@adacore.com>
1721
1722 * sem_ch10.adb (Install_Limited_Withed_Unit): a null procedure does
1723 not indicate that the enclosing unit needs a body.
1724
abe19d88
EB
17252009-06-23 Emmanuel Briot <briot@adacore.com>
1726
1727 * prj-conf.ads, prj-conf.adb: New files part of the project manager.
1728
af268547
ES
17292009-06-23 Ed Schonberg <schonberg@adacore.com>
1730
1731 * sem_ch3.adb (Derive_Subprogram): If the inherited subprogram is a
1732 primitive equality include it with its source name even if the
1733 operation is currently invisible, to make sure that the corresponding
1734 slot in the dispatch table is reserved for the internal equality
1735 subsequently generated during expansion.
1736
a3e3b8da
MG
17372009-06-23 Matthew Gingell <gingell@adacore.com>
1738
1739 * Makefile.rtl, a-stwiha.adb: Add a-stwiha.adb back.
1740
f61580d4
AC
17412009-06-22 Jose Ruiz <ruiz@adacore.com>
1742
1743 * sysdep.c (__gnat_localtime_tzoff for RTX):
1744 SystemTimeToTzSpecificLocalTime is not supported by RTX. Use
1745 GetTimeZoneInformation instead.
1746
17472009-06-22 Robert Dewar <dewar@adacore.com>
1748
1749 * sem_res.adb (Check_No_Direct_Boolean_Operators): New procedure
1750
17512009-06-22 Ed Schonberg <schonberg@adacore.com>
1752
1753 * sem_ch12.adb (Collect_Previous_Instances): Do not collect
1754 instantiations declared in a previous generic package body.
1755
17562009-06-22 Robert Dewar <dewar@adacore.com>
1757
1758 * gnat_rm.texi: Add doc that X=True and X=False is allowed for the
1759 restriction No_Direct_Boolean_Operators.
1760
17612009-06-22 Thomas Quinot <quinot@adacore.com>
1762
1763 * bindusg.adb: Minor fixes to gnatbind usage message
1764
1765 * sem_eval.adb: Minor reformatting
1766
6823270c
AC
17672009-06-22 Javier Miranda <miranda@adacore.com>
1768
1769 * sem_ch3.adb (Analyze_Object_Declaration, Freeze_Entity): Move to the
1770 freezing point the check on the use of abstract types in object
1771 declarations. Done to allow the declaration of C++ imported variables
1772 or constants whose type corresponds with an imported C++ classes for
1773 which the constructor is not imported.
1774
17752009-06-22 Thomas Quinot <quinot@adacore.com>
1776
1777 * sem_ch6.adb: Minor reformatting
1778
17792009-06-22 Ed Schonberg <schonberg@adacore.com>
1780
1781 * exp_ch3.adb (Build_Initialization_Call): If a discriminated record
1782 component is constrained with an expression rather than with a
1783 discriminant of the enclosing type, use that expression when building
1784 the call to default-initialize the component, when the call is part of
1785 an aggregate with box initialization.
1786
c9e7bd8e
AC
17872009-06-22 Ed Schonberg <schonberg@adacore.com>
1788
1789 * sem_ch6.adb (Check_Overriding_Indicator): Clean up code, make warning
1790 unconditional rather than a style check, because a formal name out of
1791 order is suspicious.
1792
17932009-06-22 Vincent Celier <celier@adacore.com>
1794
1795 * prj-nmsc.adb (Locate_Directory): Indicate the project name when
1796 creating a directory automatically.
1797
17982009-06-22 Eric Botcazou <ebotcazou@adacore.com>
1799
1800 * sem_ch3.adb (Create_Constrained_Components): For a subtype of an
1801 untagged derived type, add a hidden component for every constrained
1802 discriminant of the parent type to keep record layout consistent.
1803
d88a51b1
AC
18042009-06-22 Thomas Quinot <quinot@adacore.com>
1805
1806 * exp_ch3.adb: Minor code reorganization (avoid an unnecessary tree
1807 copy).
1808
18092009-06-22 Matthew Gingell <gingell@adacore.com>
1810
1811 * a-stzhas.adb, a-stwiha.adb, impunit.adb, a-swbwha.adb, a-shcain.adb,
1812 s-htable.adb, a-szuzha.adb, a-stunha.adb, a-stboha.adb, a-strhas.adb,
1813 g-spitbo.adb, s-strhas.adb, a-szbzha.adb, s-strhas.ads, Makefile.rtl,
1814 a-swuwha.adb: New unit System.String_Hash.
1815 Refactor redundant cut and pasted hash functions with instances of a
1816 new generic hash function.
1817 Implement a new string hashing algorithm which appears in testing to
1818 be move effective than to previous approach.
1819
18202009-06-22 Ed Falis <falis@adacore.com>
1821
1822 * sysdep.c: remove include for nfsLib.h and an NFS specific error
1823 message for VxWorks 653 vThreads: not supported by the OS.
1824
1825 * gsocket.h: disable sockets for VxWorks 653 vThreads.
1826
18272009-06-22 Robert Dewar <dewar@adacore.com>
1828
1829 * sem_ch6.adb: Add ??? comment for bad use of Style_Check
1830
e7d72fb9
AC
18312009-06-22 Robert Dewar <dewar@adacore.com>
1832
1833 * sinput.adb, sinput.ads (Expr_First_Char, Expr_Last_Char): Replaced
1834 by Sloc_Range.
1835
1836 * freeze.adb: Minor comment updates
1837
1838 * s-valrea.adb (Bad_Based_Value): New procedure
1839 (Scan_Real): Raise exceptions with messages
1840
18412009-06-22 Matthew Gingell <gingell@adacore.com>
1842
1843 * adaint.h: Complete previous change.
1844
18452009-06-22 Thomas Quinot <quinot@adacore.com>
1846
1847 * exp_ch7.ads, exp_ch3.adb: Minor reformatting
1848
18492009-06-22 Ed Schonberg <schonberg@adacore.com>
1850
1851 * sem_ch6.adb (Check_Overriding_Indicator): When style checks are
1852 enabled, emit warning when a non-controlling argument of the overriding
1853 operation appears out of place vis-a-vis of the formal of the
1854 overridden operation.
1855
03456e44
AC
18562009-06-22 Vincent Celier <celier@adacore.com>
1857
1858 * gnatcmd.adb (Check_Files): Close temporary files after all file names
1859 have been written into it.
1860
18612009-06-22 Matthew Gingell <gingell@adacore.com>
1862
1863 * adaint.c, adaint.h, cstreams.c: Call stat64 on platforms where it is
1864 available.
1865
18662009-06-22 Thomas Quinot <quinot@adacore.com>
1867
1868 * sem_disp.adb (Check_Direct_Call): Handle the case where the full
1869 view of the root type is visible at the point of the call.
1870
18712009-06-22 Pat Rogers <rogers@adacore.com>
1872
1873 * gnat_ugn.texi: Revised a sentence to correct a minor grammar error.
1874
59366db6
JL
18752009-06-22 Jerome Lambourg <lambourg@adacore.com>
1876
1877 * freeze.adb: Add comments.
1878
f3b57ab0
AC
18792009-06-21 Thomas Quinot <quinot@adacore.com>
1880
1881 * exp_ch3.adb, exp_prag.adb, exp_util.adb, exp_util.ads, freeze.adb,
1882 sem_ch13.adb, sem_elab.adb (Exp_Prag.Expand_Pragma_Import_Or_Interface):
1883 Factor out code to new subprogram...
1884 (Exp_Util.Find_Init_Call): New shared routine to find the init proc call
1885 for a default initialized variable.
1886 (Freeze.Check_Address_Clause): Do not reset Has_Delayed_Freeze on an
1887 entity that has an associated freeze node.
1888 (Sem_Ch13.Analyze_Attribute_Definition_Clause, case Address):
1889 If there is an init call for the object, defer it to the object freeze
1890 point.
1891 (Check_Elab_Call.Find_Init_Call): Rename to Check_Init_Call, to avoid
1892 name clash with new subprogram introduced in Exp_Util.
1893
18942009-06-21 Robert Dewar <dewar@adacore.com>
1895
1896 * einfo.ads: Minor reformatting
1897
4f91a255
AC
18982009-06-21 Ed Falis <falis@adacore.com>
1899
1900 * env.c (__gnat_environ): return NULL for vThreads - unimplemented
1901
19022009-06-21 Eric Botcazou <ebotcazou@adacore.com>
1903
1904 * einfo.ads: Update comments.
1905
19062009-06-21 Hristian Kirtchev <kirtchev@adacore.com>
1907
1908 * sem_disp.adb (Check_Direct_Call): New routine. Dispatching calls
1909 where the controlling formal is of private class-wide type whose
1910 completion is a synchronized type can be converted into direct calls.
1911
19122009-06-21 Vincent Celier <celier@adacore.com>
1913
1914 * gnatcmd.adb (Check_Files): When all sources of the project are to be
1915 indicated to gnatcheck, gnatpp or gnatmetric, always specify the list
1916 of sources using -files=, so that the distinction can be made by the
1917 tool of a call with no source (to display the usage) from a call with
1918 a project file that contains no source.
1919
19202009-06-21 Jerome Lambourg <lambourg@adacore.com>
1921
1922 * exp_ch3.adb (Build_Array_Init_Proc): Do not build the init proc in
1923 case of VM convention arrays.
1924
8a45323c
RD
19252009-06-20 Robert Dewar <dewar@adacore.com>
1926
1927 * a-nudira.adb: Minor reformatting
1928
5afaf827
AC
19292009-06-20 Ed Schonberg <schonberg@adacore.com>
1930
1931 * exp_ch3.adb (Build_Record_Init_Proc): When copying initial
1932 expressions (possibly from a parent type) indicate that the scope of
1933 the new itypes is the initialization procedure being built.
1934
19352009-06-20 Robert Dewar <dewar@adacore.com>
1936
1937 * a-nudira.adb (Fits_In_32_Bits): New name (inverted sense) for
1938 Needs_64, and now computed without anomolies for some dynamic types.
1939
19402009-06-20 Thomas Quinot <quinot@adacore.com>
1941
1942 * sem_prag.adb: Minor reformatting
1943
1944 * exp_disp.ads: Minor reformatting
1945
e80d72ea
ES
19462009-06-20 Ed Schonberg <schonberg@adacore.com>
1947
1948 * sem_ch3.adb (Is_OK_For_Limited_Init): An unchecked conversion of a
1949 function call is a legal expression to initialize a limited object.
1950
1951 * exp_ch3.adb: Rename various freeze operations that perform expansion
1952 actions, to prevent confusion with subprograms in the freeze package.
1953
6ca063eb
AC
19542009-06-20 Ed Schonberg <schonberg@adacore.com>
1955
1956 * sem.adb (Walk_Library_Units): Check instantiations first.
1957
1958 * sem_ch6.adb (Analyze_Subprogram_Declaration): Mark a subprogram as a
1959 private primitive if it is a function with a controlling result that is
1960 a type extension with progenitors.
1961
1962 * exp_ch9.adb (Build_Wrapper_Spec, Build_Wrapper_Body): Handle properly
1963 a primitive operation of a synchronized tagged type that has a
1964 controlling result.
1965
19662009-06-20 Thomas Quinot <quinot@adacore.com>
1967
1968 * einfo.ads: Fix typo.
1969
19702009-06-20 Ed Falis <falis@adacore.com>
1971
1972 * s-vxwext.ads, s-vxwext-kernel.adb: Complete previous change.
1973
502c4bb9
EB
19742009-06-19 Eric Botcazou <ebotcazou@adacore.com>
1975
1976 * gcc-interface/trans.c (emit_check): Do not wrap up the result
1977 in a SAVE_EXPR.
1978 (protect_multiple_eval): Always protect complex expressions.
1979
659819b9
AC
19802009-06-19 Emmanuel Briot <briot@adacore.com>
1981
1982 * prj-ext.adb, makeutl.adb, makeutl.ads (Executable_Prefix_Path): Now
1983 make sure we always return a name ending with a path separator.
1984
19852009-06-19 Javier Miranda <miranda@adacore.com>
1986
1987 * sem_ch12.adb (Instantiate_Package_Body, Instantiate_Subprogram_Body):
1988 Save and restore the visibility of the parent when installed.
1989
19902009-06-19 Jose Ruiz <ruiz@adacore.com>
1991
1992 * s-tposen.ads (Protection_Entry): Replace fields L, Ceiling, and Owner
1993 by Common which contains all these fields.
1994
1995 * s-tposen.adb (Initialize_Protection_Entry, Lock_Entry,
1996 Lock_Read_Only_Entry, Timed_Protected_Single_Entry_Call, Unlock_Entry):
1997 Remove code duplication in this package by means of calling the
1998 equivalent code in s-taprob.
1999
20002009-06-19 Robert Dewar <dewar@adacore.com>
2001
2002 * a-einuoc.ads: Minor reformatting
2003
0eed21bd
EF
20042009-06-19 Ed Falis <falis@adacore.com>
2005
2006 * a-einuoc.ads, s-osinte-vxworks.ads, s-vxwext.ads, s-vxwext-kernel.adb,
2007 s-vxwext-kernel.ads, s-vxwext-rtp.ads: Code clean up.
2008
93c3fca7
AC
20092009-06-19 Eric Botcazou <ebotcazou@adacore.com>
2010
2011 * einfo.ads (Handling of Type'Size Values): Fix Object_Size values.
2012
20132009-06-19 Robert Dewar <dewar@adacore.com>
2014
2015 * a-nudira.adb (Need_64): Handle negative ranges and also dynamic
2016 ranges
2017
2018 * checks.adb (Determine_Range): Move the test for generic types later.
2019
2020 * sem_eval.adb (Compile_Time_Compare): Improve circuitry to catch more
2021 cases.
2022 (Eval_Relational_Op): Fold more cases including string compares
2023
2024 * sem_util.ads, sem_util.adb (References_Generic_Formal_Type): New
2025 function.
2026
e29e2483
AC
20272009-06-19 Robert Dewar <dewar@adacore.com>
2028
2029 * sem_type.ads, sem_ch12.adb: Minor reformatting
2030
2031 * s-wchcnv.adb (UTF_32_To_Char_Sequence): Handle invalid data properly
2032
20332009-06-19 Ed Schonberg <schonberg@adacore.com>
2034
2035 * exp_ch9.adb (Build_Wrapper_Spec): Handle properly an overridden
2036 primitive operation of a rivate extension whose controlling argument
2037 is an out parameter.
2038
2039 * sem.adb (Walk_Library_Units): exclude generic package declarations
2040 from check.
2041
f26d5cd3
AC
20422009-06-19 Thomas Quinot <quinot@adacore.com>
2043
2044 * i-vxwoio.ads: Add comments
2045
20462009-06-19 Thomas Quinot <quinot@adacore.com>
2047
2048 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
2049 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
2050 g-socthi.adb, g-socthi.ads, g-socket.adb, g-sothco.ads
2051 (GNAT.Sockets.Thin.C_Ioctl): Rename to Socket_Ioctl.
2052 (GNAT.Sockets.Thin.Socket_Ioctl): Use new function
2053 Thin_Common.Socket_Ioctl.
2054 (GNAT.Sockets.Thin_Common.Socket_Ioctl): Binding to new C wrapper
2055 __gnat_socket_ioctl.
2056 (__gnat_socket_ioctl): Wrapper for ioctl(2) called with a single int*
2057 argument after the file descriptor and request code.
2058
20592009-06-19 Robert Dewar <dewar@adacore.com>
2060
2061 * checks.adb: Minor reformatting
2062
1abad480
AC
20632009-06-19 Jose Ruiz <ruiz@adacore.com>
2064
2065 * env.c (__gnat_environ): RTX does not support this functionality.
2066
20672009-06-19 Ed Schonberg <schonberg@adacore.com>
2068
2069 * sem.adb (Walk_Library_Items): Include bodies in the list of units to
2070 traverse, to account for front-end inlining and instantiations in a
2071 spec or in the main unit.
2072
20732009-06-19 Robert Dewar <dewar@adacore.com>
2074
2075 * checks.adb (Determine_Range): Do not attempt to get range of generic
2076 type.
2077
c38e990f
SR
20782009-06-19 Sergey Rybin <rybin@adacore.com>
2079
2080 * gnat_ugn.texi, vms_data.ads: Add the documentation for the new
2081 gnatmetric option for generating the schema file for gnatmetric XML
2082 output. Add corresponding VMS qualifier.
2083
1175f0b6
AC
20842009-06-19 Robert Dewar <dewar@adacore.com>
2085
2086 * g-cgi.adb: Minor reformatting
2087
20882009-06-19 Eric Botcazou <ebotcazou@adacore.com>
2089
2090 * s-intman-solaris.adb (Notify_Exception): Do not discriminate on the
2091 signal code for SIGFPE and raise Program_Error for SIGILL.
2092
2093 * s-osinte-solaris.ads: Remove signal code constants for SIGFPE.
2094
20952009-06-19 Ed Schonberg <schonberg@adacore.com>
2096
2097 * sem_ch8.adb (Nvis_Messages): Do not list an entity declared in a
2098 generic package if there is a visibility candidate that is declared in
2099 a regular package.
2100
4c1a9016
OH
21012009-06-18 Olivier Hainque <hainque@adacore.com>
2102
2103 * system-aix64.ads: New file.
2104 * gcc-interface/Makefile.in (aix LIBGNAT_TARGET_PAIRS): Use the
2105 64bit system.ads for ppc64 multilib variants.
2106
d81b4c61
RD
21072009-06-16 Robert Dewar <dewar@adacore.com>
2108 Olivier Hainque <hainque@adacore.com>
2109
2110 Relax constraints on Machine_Attribute argument types:
2111 * sem_prag.adb (Check_Arg_Is_Static_Expression): Allow for
2112 missing type.
2113 (Analyze_Attribute, case Machine_Attribute): Allow any type for arg 3.
2114 * gcc-interface/decl.c (prepend_attributes): Accept static
2115 expressions of any type as attribute arguments, not only string
2116 literals.
2117 * gnat_rm.texi (pragma Machine_Attribute section): Adjust to reflect
2118 the relaxation of the restriction on the Info argument type.
2119
c172df28
AH
21202009-06-13 Aldy Hernandez <aldyh@redhat.com>
2121
2122 * gcc-interface/utils.c (record_builtin_type): Pass location
2123 argument to build_decl.
2124 (create_type_stub_decl): Same.
2125 (create_type_decl): Same.
2126 (create_var_decl_1): Same.
2127 (create_field_decl): Same.
2128 (create_param_decl): Same.
2129 (create_label_decl): Same.
c172df28
AH
2130 (create_subprog_decl): Same.
2131 * gcc-interface/decl.c (gnat_to_gnu_entity): Same.
2132 * gcc-interface/trans.c (Case_Statement_to_gnu): Pass location
2133 argument to create_artificial_label.
c172df28
AH
2134 (Loop_Statement_to_gnu): Same.
2135 (Subprogram_Body_to_gnu): Same.
2136 (gnat_gimplify_stmt): Same.
2137
53b2323e
RH
21382009-06-11 Richard Henderson <rth@redhat.com>
2139
cd19075f
EB
2140 * gcc-interface/misc.c (gnat_handle_option): Rename OPT_gdwarf_ to
2141 OPT_gdwarfplus.
53b2323e 2142
2995ebee
AC
21432009-06-11 Ed Schonberg <schonberg@adacore.com>
2144
2145 * sem_attr.adb (Resolve_Attribute, case 'access): Add missing
2146 accessibiliy check on access_to_subprogram in the context of an
2147 anonymous access that is not an access parameter.
2148
21492009-06-11 Eric Botcazou <ebotcazou@adacore.com>
2150
2151 * tracebak.c (i386 section): Define IS_BAD_PTR on Solaris.
2152
21532009-06-11 Quentin Ochem <ochem@adacore.com>
2154
2155 * sem_warn.adb, scng.adb, sfn_scan.adb, freeze.adb: Add CODEFIX
2156 comments for message handled by GPS.
2157
21582009-06-11 Matthew Gingell <gingell@adacore.com>
2159
2160 * adaint.c: Use fopen64 instead of fopen on platforms where we know
2161 it's supported.
2162
21632009-06-11 Pascal Obry <obry@adacore.com>
2164
2165 * g-cgi.ads: Fix comment typo.
2166
2167 * g-cgi.adb: Properly decode "+" in CGI parameters as spaces.
2168
c244bf8f
EB
21692009-06-10 Eric Botcazou <ebotcazou@adacore.com>
2170
2171 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Use
2172 a reference to the original type for the type of the field of the
2173 XVS type.
2174 (maybe_pad_type): Likewise.
2175
2176 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Factor
2177 common predicate and remove redundant setting of TYPE_BY_REFERENCE_P.
2178 Pass correctly typed arguments to create_field_decl.
2179 <E_Record_Subtype>: Set BLKmode for tagged and limited types in the
2180 case of contrained discriminants as well. Use the padded base type
2181 in the other case as well. Rename temporary variable. Tweak test.
2182 Factor common access pattern. Set GNU_SIZE only once.
2183
ff346f70
OH
21842009-06-09 Olivier Hainque <hainque@adacore.com>
2185
2186 * gcc-interface/utils2.c (build_call_alloc_dealloc_proc): New
2187 helper for build_call_alloc_dealloc with arguments to be interpreted
2188 identically. Process the case where a GNAT_PROC to call is provided.
2189 (maybe_wrap_malloc): New helper for build_call_alloc_dealloc, to build
2190 and return an allocator for DATA_SIZE bytes aimed at containing a
2191 DATA_TYPE object, using the default __gnat_malloc allocator. Honor
2192 DATA_TYPE alignments greater than what the latter offers.
2193 (maybe_wrap_free): New helper for build_call_alloc_dealloc, to
2194 release a DATA_TYPE object designated by DATA_PTR using the
2195 __gnat_free entry point.
2196 (build_call_alloc_dealloc): Expect object data type instead of naked
2197 alignment constraint. Use the new helpers.
2198 (build_allocator): Remove special processing for the super-aligned
2199 case, now handled by build_call_alloc_dealloc. Pass data
2200 type instead of the former alignment argument, as expected by the new
2201 interface.
2202 * gcc-interface/gigi.h (build_call_alloc_dealloc): Adjust prototype
2203 and comment.
2204 * gcc-interface/trans.c (gnat_to_gnu) <case N_Free_Statement>:
2205 Remove special processing for the super-aligned case, now handled
2206 by build_call_alloc_dealloc. Pass data type instead of the former
2207 alignment argument, as expected by the new interface.
2208
2153915d
AO
22092009-06-08 Alexandre Oliva <aoliva@redhat.com>
2210
2211 * lib-writ.adb (flag_compare_debug): Import.
2212 (Write_ALI): Skip during -fcompare-debug-second.
2213
cdaa0e0b
EB
22142009-06-03 Eric Botcazou <ebotcazou@adacore.com>
2215
2216 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: When
2217 adjusting the discriminant nodes in an extension, use the full view
2218 of the parent subtype if it is of a private kind.
2219
a6a29d0c
EB
22202009-06-03 Eric Botcazou <ebotcazou@adacore.com>
2221
2222 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Add the
2223 _Parent field, if any, to the record before adding the other fields.
2224 <E_Record_Subtype>: Put the _Controller field before the other fields
2225 except for the _Tag or _Parent fields.
2226 (components_to_record): Likewise. Retrieve the _Parent field from the
2227 record type.
2228
8cd28148
EB
22292009-06-03 Eric Botcazou <ebotcazou@adacore.com>
2230
2231 * gcc-interface/decl.c (substitution_list): Rename to build_subst_list,
2232 remove unused parameter and simplify.
2233 (gnat_to_gnu_entity) <E_Record_Type>: Do not set TYPE_FIELDS. Factor
2234 common predicate. Rewrite loop for clarity. Use GNU_TYPE directly
2235 as context for all discriminants. Fix formatting nits.
2236 <E_Record_Subtype>: Add cosmetic 'break'. Test Has_Discriminants
2237 before Discriminant_Constraint. Adjust for above renaming. Do not
2238 set GNU_TYPE more than once.
2239 (elaborate_entity): Test Has_Discriminants on the entity and use
2240 Implementation_Base_Type.
2241 (components_to_record): Rename component_list to gnat_component_list.
2242 Retrieve the _Parent field from the list. Fix nits in comments.
2243 Clarify logic in loop. Pass correct arguments to create_field_decl.
2244
beb7e030
EB
22452009-06-02 Eric Botcazou <ebotcazou@adacore.com>
2246
2247 * gcc-interface/Make-lang.in: Fix formatting.
2248
db868e1e 22492009-06-01 Olivier Hainque <hainque@adacore.com>
53b2323e 2250 Eric Botcazou <ebotcazou@adacore.com>
db868e1e
OH
2251
2252 * gcc-interface/utils.c (convert) <CONSTRUCTOR case>: When converting
2253 to the packable version of the type, clear TREE_STATIC/TREE_CONSTANT
2254 on the result if at least one of the input fields couldn't be output
2255 as a static constant any more.
2256
324c9b02 22572009-06-01 Olivier Hainque <hainque@adacore.com>
53b2323e 2258 Eric Botcazou <ebotcazou@adacore.com>
324c9b02
OH
2259
2260 * gcc-interface/utils2.c (gnat_build_constructor): Factor
18d6353c 2261 out code. Use initializer_constant_valid_for_bitfield_p and
324c9b02
OH
2262 CONSTRUCTOR_BITFIELD_P for bit-fields.
2263
7980bfb8
ILT
22642009-05-26 Ian Lance Taylor <iant@google.com>
2265
2266 * gcc-interface/Makefile.in (COMPILER): Define.
2267 (COMPILER_FLAGS, ALL_COMPILERFLAGS): Define.
2268 (.c.o, cio.o, init.o, initialize.o, targext.o): Use $(COMPILER).
2269 (seh_init.o, tracebak.o): Likewise.
2270 * gcc-interface/Make-lang.in (ada/targext.o): Likewise.
2271 (ada/cio.o, ada/init.o, ada/initialize.o, ada/raise.o): Likewise.
2272 (ada/tracebak.o, ada/cuintp.o, ada/decl.o, ada/misc.o): Likewise.
2273 (ada/targtyps.o, ada/trans.o, ada/utils.o): Likewise.
2274 (ada/utils2.o): Likewise.
2275
6e00e546
OH
22762009-05-24 Olivier Hainque <hainque@adacore.com>
2277
2278 * switch.adb (Is_Internal_GCC_Switch, Switch_Last): Bodies of ...
2279 * switch.ads (Is_Internal_GCC_Switch, Switch_Last): New functions.
2280 Add -auxbase variants to the list of recognized internal switches.
2281 * back_end.adb (Scan_Back_End_Switches): Use the new functions and
2282 adjust comments.
2283 * lib.ads: Make comment on internal GCC switches more general.
2284 * gcc-interface/lang-specs.h (specs for Ada): Pass -auxbase variants
2285 as for C.
2286
22702f93
EB
22872009-05-23 Eric Botcazou <ebotcazou@adacore.com>
2288
2289 * gcc-interface/misc.c (gnat_get_subrange_bounds): Fix thinko.
2290
03049a4e
EB
22912009-05-23 Eric Botcazou <ebotcazou@adacore.com>
2292
2293 * gcc-interface/decl.c (set_rm_size): Bypass the check for packed array
2294 types.
2295
aae8570a
EB
22962009-05-23 Eric Botcazou <ebotcazou@adacore.com>
2297
2298 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not modify the
2299 original type because of the alignment when there is an address clause.
2300
3f6f0eb2
EB
23012009-05-20 Eric Botcazou <ebotcazou@adacore.com>
2302
2303 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: When
2304 discriminants affect the shape of the subtype, retrieve the GCC type
2305 directly from the original field if the GNAT types for the field and
2306 the original field are the same.
2307
84fb43a1
EB
23082009-05-15 Eric Botcazou <ebotcazou@adacore.com>
2309
2310 * gcc-interface/ada-tree.h (TYPE_GCC_MIN_VALUE, TYPE_GCC_MAX_VALUE):
2311 New macros.
2312 (TYPE_RM_VALUES): Likewise.
2313 (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUES.
2314 (SET_TYPE_RM_SIZE): New macro.
2315 (TYPE_RM_MIN_VALUE, TYPE_RM_MAX_VALUE): Likewise.
2316 (SET_TYPE_RM_SIZE, SET_TYPE_RM_MAX_VALUE): Likewise.
2317 (TYPE_MIN_VALUE, TYPE_MAX_VALUE): Redefine.
2318 * gcc-interface/gigi.h (create_range_type): Declare.
2319 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>
2320 Use SET_TYPE_RM_MAX_VALUE to set the upper bound on the UMT type.
2321 <E_Signed_Integer_Subtype>: Build a regular integer type first and
2322 then set the RM bounds. Use SET_TYPE_RM_SIZE to set the RM size.
2323 <E_Floating_Point_Subtype>: Build a regular floating-point type first
2324 and then set the RM bounds.
2325 <E_Array_Type>: Use create_range_type instead of build_range_type.
2326 <E_Array_Subtype>: Build a regular integer type first and then set
2327 the RM bounds for the extra subtype.
2328 <E_String_Literal_Subtype>: Use create_range_type instead of
2329 build_range_type.
2330 <all>: Set the RM bounds for enumeration types and the GCC bounds for
2331 floating-point types.
2332 (set_rm_size): Use SET_TYPE_RM_SIZE to set the RM size.
2333 (make_type_from_size) <INTEGER_TYPE>: Use SET_TYPE_RM_{MIN,MAX}_VALUE
2334 to set the bounds. Use SET_TYPE_RM_SIZE to set the RM size.
2335 (substitute_in_type) <INTEGER_TYPE>: Deal with GCC bounds for domain
2336 types and with RM bounds for subtypes.
2337 * gcc-interface/misc.c (LANG_HOOKS_GET_SUBRANGE_BOUNDS): Define.
2338 (gnat_print_type) <REAL_TYPE>: New case.
2339 <ENUMERAL_TYPE>: Fall through to above case.
2340 (gnat_get_subrange_bounds): New function.
2341 * gcc-interface/trans.c (add_decl_expr): Mark the trees rooted as
2342 TYPE_RM_MIN_VALUE and TYPE_RM_MAX_VALUE, if any.
2343 * gcc-interface/utils.c (gnat_init_decl_processing): Use precision 8
2344 for booleans. Adjust and use SET_TYPE_RM_SIZE to set the RM size.
2345 (create_range_type): New function.
2346 (create_param_decl): Build a regular integer type first and then set
2347 the RM bounds for the extra subtype.
2348 (unchecked_convert): Remove kludge for 'Valid.
2349 * gcc-interface/utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Convert
2350 the index to sizetype instead of TYPE_DOMAIN.
2351
a531043b
EB
23522009-05-14 Eric Botcazou <ebotcazou@adacore.com>
2353
2354 * gcc-interface/decl.c (elaborate_expression_1): Remove GNAT_EXPR
2355 parameter and move check for static expression to...
2356 (elaborate_expression): ...here. Adjust call to above function.
2357 (gnat_to_gnu_entity): Likewise for all calls. Use correct arguments
2358 in calls to elaborate_expression.
2359 (elaborate_entity): Likewise.
2360 (substitution_list): Likewise.
2361 (maybe_variable): Fix formatting.
2362 (substitute_in_type) <REAL_TYPE>: Merge with INTEGER_TYPE case and add
2363 missing guard.
2364 * gcc-interface/trans.c (protect_multiple_eval): Minor cleanup.
2365
59141a28
AC
23662009-05-07 Arnaud Charlet <charlet@adacore.com>
2367
c608b4d2 2368 * gcc-interface/Make-lang.in: Update dependencies.
59141a28 2369
c608b4d2
EB
23702009-05-06 Laurent GUERBY <laurent@guerby.net>
2371
2372 * s-linux.ads, s-linux-alpha.ads, s-linux-hppa.ads, osinte-linux.ads:
2373 Define sa_handler_pos.
2374 * s-osinte-linux.ads: Use it.
2375 * s-linux-mipsel.ads: New.
2376 * system-linux-mips64el.ads: New.
2377 * gcc-interface/Makefile.in: Multilib handling for mipsel-linux and
2378 mips64el-linux.
e84efdce 2379
1f110335
AC
23802009-05-06 Arnaud Charlet <charlet@adacore.com>
2381
2382 * exp_ch5.adb, exp_util.adb, exp_attr.adb, sem_util.adb, sem_res.adb,
2383 targparm.adb, targparm.ads, exp_ch4.adb, exp_ch6.adb, exp_disp.adb,
2384 opt.ads, exp_aggr.adb, exp_intr.adb, sem_disp.adb, exp_ch3.adb
2385 (Tagged_Type_Expansion): New flag.
2386 Replace use of VM_Target related to tagged types expansion by
2387 Tagged_Type_Expansion, since tagged type expansion is not necessarily
2388 linked to VM targets.
2389
e0bf7d65
RD
23902009-05-06 Robert Dewar <dewar@adacore.com>
2391
1f110335
AC
2392 * sem_attr.adb: Add processing for Standard'Compiler_Version
2393
e0bf7d65
RD
2394 * sinput.adb (Expr_Last_Char): Fix some copy-paste errors for paren
2395 skipping.
2396 (Expr_First_Char): Add ??? comment that paren skipping needs work
2397 (Expr_Last_Char): Add ??? comment that paren skipping needs work
2398
2399 * exp_attr.adb: Add processing for Compiler_Version
2400
2401 * sem_attr.adb: New attribute Compiler_Version
2402
2403 * snames.ads-tmpl: Add entries for Compiler_Version attribute
2404
2405 * gnat_rm.texi: Document Compiler_Version attribute
2406
483c78cb
RD
24072009-05-06 Robert Dewar <dewar@adacore.com>
2408
2409 * errout.adb: Minor reformatting
2410
2411 * scng.adb, sem_prag.adb, par-ch4.adb, sem_res.adb, par-ch6.adb,
2412 sem_ch6.adb, par-prag.adb, sem_ch8.adb, sem_warn.adb, par-util.adb,
2413 styleg.adb: Add stylized comments to error messages that are included
2414 in the codefix circuitry of IDE's such as GPS.
2415
4e7a4f6e
AC
24162009-05-06 Sergey Rybin <rybin@adacore.com>
2417
2418 * gnat_ugn.texi: For Misnamed_Identifiers rule all description of the
2419 new form of the rule parameter that allows to specify the suffix for
2420 access-to-access type names.
2421
24222009-05-06 Robert Dewar <dewar@adacore.com>
2423
2424 * sem_warn.adb (Warn_On_Useless_Assignment): Avoid false negative for
2425 out parameter assigned when exception handlers are present.
2426
2427 * sem_ch5.adb (Analyze_Exit_Statement): Kill current value last
2428 assignments on exit.
2429
2430 * par-ch9.adb, sem_aggr.adb, par-endh.adb, sem_res.adb, par-ch6.adb,
2431 sinput-l.adb, par-load.adb, errout.ads, sem_ch4.adb, lib-load.adb,
2432 prj-dect.adb, par-ch12.adb, sem_ch8.adb, par-util.adb, par-ch3.adb,
2433 par-tchk.adb, par-ch5.adb: This patch adds stylized comments to error
2434 messages that are included in the codefix circuitry of IDE's such as
2435 GPS.
2436
2437 * sinput.ads, sinput.adb (Expr_First_Char): New function
53b2323e 2438 (Expr_Last_Char): New function
4e7a4f6e 2439
35117aa8
AC
24402009-05-06 Sergey Rybin <rybin@adacore.com>
2441
2442 * gnat_ugn.texi: Add subsection for Exits_From_Conditional_Loops rule
2443 Add formal definition for extra exit point metric
2444
24452009-05-06 Pascal Obry <obry@adacore.com>
2446
2447 * adaint.c: Support for setting attributes on unicode filename on
2448 Windows.
2449
0c020dde
AC
24502009-05-06 Robert Dewar <dewar@adacore.com>
2451
2452 * sem_warn.adb: Minor reformatting
2453
24542009-05-06 Javier Miranda <miranda@adacore.com>
2455
2456 * sem_prag.adb (Process_Import_Or_Interface): Imported CPP types must
2457 not have discriminants or components with default expressions.
2458 (Analyze_Pragma): For pragma CPP_Class check that imported types
2459 have no discriminants and components have no default expression.
2460
2461 * sem_aggr.adb (Resolve_Aggr_Expr): Add missing check on wrong use of
2462 class-wide types in the expression of a record component association.
2463
24642009-05-06 Sergey Rybin <rybin@adacore.com>
2465
2466 * vms_data.ads: Add qualifier for gnatmetric extra exit points metric
2467
2468 * gnat_ugn.texi: Add description for the new extra exit points metric
2469 (gnatmetric section).
2470
deef4289
AC
24712009-05-06 Robert Dewar <dewar@adacore.com>
2472
2473 * s-fileio.adb: Minor comment update
2474
2475 * sem_ch8.adb: Minor reformatting
2476
2477 * exp_ch3.adb: Update comments.
2478
24792009-05-06 Tristan Gingold <gingold@adacore.com>
2480
2481 * init.c, s-osinte-darwin.ads: Reduce alternate stack size
2482
89522556
AC
24832009-05-06 Arnaud Charlet <charlet@adacore.com>
2484
2485 * gcc-interface/Makefile.in: Update LIBGNAT_TARGET_PAIRS for Xenomai.
2486 Fix missing unit for rtp-smp runtime on both ppc and x86 vxworks
2487
2488 * gcc-interface/Make-lang.in: Update dependencies
2489
a693f55e
AC
24902009-05-06 Ed Schonberg <schonberg@adacore.com>
2491
2492 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Revert previous
2493 change. The context clause of a generic instance declaration must be
2494 preserved until the end of the compilation, because it may have to be
2495 installed/removed repeatedly.
2496 The latest change to sem.adb ensures that the context of both spec and
2497 body of an instance is traversed before the instance itself, making
2498 this patch redundant.
2499
e264efcc
AC
25002009-05-06 Gary Dismukes <dismukes@adacore.com>
2501
2502 * sem_aggr.adb: Fix typo.
2503
25042009-05-06 Thomas Quinot <quinot@adacore.com>
2505
2506 * exp_ch3.adb (Expand_N_Object_Declaration): For a controlled object
2507 declaration, do not adjust if the declaration is to be rewritten into
2508 a renaming.
2509
25102009-05-06 Ed Schonberg <schonberg@adacore.com>
2511
2512 * sem_ch8.adb (Find_Type): Reject the use of a task type in its own
2513 discriminant part.
2514
25152009-05-06 Bob Duff <duff@adacore.com>
2516
2517 * s-fileio.adb (File_IO_Clean_Up_Type): Make this type limited, since
2518 otherwise the compiler would be allowed to optimize away the cleanup
2519 code.
2520
69a0c174
AC
25212009-05-06 Gary Dismukes <dismukes@adacore.com>
2522
2523 * gnat_ugn.texi: Fix typo.
2524
25252009-05-06 Thomas Quinot <quinot@adacore.com>
2526
2527 * g-debuti.adb: Minor reformatting
2528
2529 * exp_attr.adb: Minor reformatting
2530
25312009-05-06 Robert Dewar <dewar@adacore.com>
2532
2533 * sem_aggr.adb: Minor reformatting.
2534
2535 * g-socthi-vms.adb: Minor reformatting
2536
25372009-05-06 Bob Duff <duff@adacore.com>
2538
2539 * g-table.ads, g-table.adb, g-dyntab.ads, g-dyntab.adb:
2540 (Append_All): Add Append_All to g-table and g-dyntab, similar to table.
2541
4e0d20ca
BD
25422009-05-06 Bob Duff <duff@adacore.com>
2543
2544 * gnat_ugn.texi, gnat_rm.texi: Add missing documentation for warnings
2545 flags.
2546
11795185
JM
25472009-05-06 Javier Miranda <miranda@adacore.com>
2548
2549 * sem_aggr.adb (Valid_Ancestor_Type): Add support for C++ constructors.
2550 (Resolve_Extension_Aggregate): Do not reject C++ constructors in
2551 extension aggregates.
2552 (Resolve_Record_Aggregate): Add support for C++ constructors in
2553 extension aggregates.
2554
2555 * exp_aggr.adb (Build_Record_Aggr_Code): Add support for C++
2556 constructors in extension aggregates.
2557
426d2717
AC
25582009-05-06 Robert Dewar <dewar@adacore.com>
2559
2560 * freeze.adb (Freeze_Record_Type): Improve error msg for bad size
2561 clause.
2562
25632009-05-06 Thomas Quinot <quinot@adacore.com>
2564
2565 * g-socthi-vms.adb (C_Recvmsg, C_Sendmsg): Convert Msg to appropriate
2566 packed type, since on OpenVMS, struct msghdr is packed.
2567
25682009-05-06 Ed Schonberg <schonberg@adacore.com>
2569
2570 * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
2571 call returning an unconstrained composite value, create the proper
2572 subtype for it, as is done for object dclarations with unconstrained
2573 nominal subtypes. Perform this transformation regarless of whether
2574 call comes from source.
2575
8dc10d38
AC
25762009-05-06 Robert Dewar <dewar@adacore.com>
2577
2578 * freeze.adb (Freeze_Record_Type): Implement Implicit_Packing for
2579 records
2580
2581 * gnat_rm.texi:
2582 Add documentation for pragma Implicit_Packing applied to record
2583 types.
2584
25852009-05-06 Ed Schonberg <schonberg@adacore.com>
2586
2587 * sem.adb (Walk_Library_Items): Place all with_clauses of an
2588 instantiation on the spec, because late instance bodies may generate
2589 with_clauses for the instance body but are inserted in the instance
2590 spec.
2591
3249690d
AC
25922009-05-06 Emmanuel Briot <briot@adacore.com>
2593
2594 * prj-nmsc.adb (Locate_Directory): Remove unused parameters, and add
2595 support for returning the directory even if it doesn't exist. This is
2596 used for the object directory, since we are always setting it to a
2597 non-null value, and we should set it to an absolute name rather than a
2598 relative name for the sake of external tools that might depend on it.
2599 (Check_Library_Attributes): When Project.Library_Dir is known, check
2600 that the directory exists.
2601
26022009-05-06 Ed Schonberg <schonberg@adacore.com>
2603
2604 * sem_attr.adb (Check_Dereference): If the prefix of an attribute
2605 reference is an implicit dereference, do not freeze the designated type
2606 if within a default expression or when preanalyzing a pre/postcondtion.
2607
fd366a46
AC
26082009-05-06 Ed Schonberg <schonberg@adacore.com>
2609
2610 * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
2611 call returning an unconstrained composite value, create the proper
2612 subtype for it, as is done for object dclarations with unconstrained
2613 nominal subtypes
2614
26152009-05-06 Robert Dewar <dewar@adacore.com>
2616
2617 * sem_ch13.adb (Check_Constant_Address_Clause): Minor error message
2618 improvements
2619
2620 * freeze.adb: Minor reformatting
2621
7dd1ab84
AC
26222009-05-06 Thomas Quinot <quinot@adacore.com>
2623
2624 * sem_ch3.adb (Access_Type_Declaration): An access type whose
2625 designated type is a limited view from a limited with clause (flagged
2626 From_With_Type) is not itself such a limited view.
2627
26282009-05-06 Emmanuel Briot <briot@adacore.com>
2629
2630 * prj-nmsc.adb: Remove unused variable.
2631
2632 * clean.adb, gnatcmd.adb, makeutl.ads, prj-pars.adb, prj-pars.ads,
2633 prj-proc.ads, prj.ads, switch-m.adb (Subdirs_Option): Moved to
2634 makeutl.ads, since not all users of prj.ads need this.
2635
28541488
JM
26362009-05-06 Javier Miranda <miranda@adacore.com>
2637
2638 * exp_aggr.adb (Build_Record_Aggr_Code): Add implicit call to the C++
2639 constructor in case of aggregates whose type is a CPP_Class type.
2640
55c078ac
AC
26412009-05-06 Robert Dewar <dewar@adacore.com>
2642
2643 * sem_ch13.adb: Minor comment additions
2644
2645 * osint.adb: Minor reformatting
2646
26472009-05-06 Pascal Obry <obry@adacore.com>
2648
2649 * initialize.c: On Windows, keep full pathname to expanded command
2650 line patterns.
2651
6bde3eb5
AC
26522009-05-06 Ed Schonberg <schonberg@adacore.com>
2653
2654 * sem_aggr.adb (Resolve_Record_Aggregate): If a defaulted component of
2655 an aggregate with box default is of a discriminated private type, do
2656 not build a subaggregate for it.
2657 A proper call to the initialization procedure is generated for it.
2658
26592009-05-06 Thomas Quinot <quinot@adacore.com>
2660
2661 * rtsfind.adb, rtsfind.ads, exp_dist.adb, exp_dist.ads
2662 (Exp_Dist.Build_TC_Call, Build_From_Any_Call, Build_To_Any_Call):
2663 Use PolyORB strings to represent Ada.Strings.Unbounded_String value;
2664 use standard array code for Standard.String.
2665 (Exp_Dist): Bump PolyORB s-parint API version to 3.
2666 (Rtsfind): New entities TA_Std_String, Unbounded_String.
2667
26682009-05-06 Robert Dewar <dewar@adacore.com>
2669
2670 * g-comlin.ads: Minor reformatting
2671
2672 * xoscons.adb: Minor reformatting
2673
3743d5bd
AC
26742009-05-06 Gary Dismukes <dismukes@adacore.com>
2675
2676 * sem_aggr.adb (Resolve_Record_Aggregate): In step 5, get the
2677 Underlying_Type before retrieving the type definition for gathering
2678 components, to account for the case where the type is private.
2679
26802009-05-06 Tristan Gingold <gingold@adacore.com>
2681
2682 * g-comlin.ads: Fix minor typos (Getopt instead of Get_Opt).
2683
26842009-05-06 Thomas Quinot <quinot@adacore.com>
2685
2686 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
2687 g-socthi-vxworks.ads, g-socthi-mingw.adb g-socthi-mingw.ads,
2688 g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb
2689 (GNAT.Sockets.Thin.C_Sendmsg, GNAT.Sockets.Thin.C_Recvmsg,
2690 Windows versions): Fix incorrect base
2691 address of Iovec (it's Msg_Iov, not Msg_Iov'Address).
2692 (GNAT.Sockets.Thin.C_Sendto, GNAT.Sockets.Thin.C_Recvfrom): Use a
2693 System.Address for the To parameter instead of a Sockaddr_In_Access, to
2694 achieve independance from AF_INET family, and also to allow this
2695 parameter to be retrieved from a Msghdr for the Windows case where
2696 these routines are used to implement C_Sendmsg and C_Recvmsg.
2697
26982009-05-06 Bob Duff <duff@adacore.com>
2699
2700 * g-expect.adb, g-expect.ads: Minor reformatting
2701
2702 * sdefault.ads: Minor comment fix
2703
2704 * g-expect-vms.adb: Minor reformatting
2705
2706 * table.ads, table.adb (Append_All): New convenience procedure for
2707 appending a whole array.
2708
2709 * comperr.adb (Compiler_Abort): Mention the -gnatd.n switch in the bug
2710 box message. Call Osint.Dump_Source_File_Names to print out the file
2711 list, instead of rummaging around in various data structures.
2712
2713 * debug.adb: New switch -gnatd.n, to print source file names as they
2714 are read.
2715
2716 * alloc.ads: Add parameters for Osint.File_Name_Chars.
2717
2718 * osint.ads, osint.adb (Dump_Source_File_Names): New procedure to print
2719 out source file names during a "bug box".
2720 (Include_Dir_Default_Prefix): Use memo-izing to avoid repeated new/free.
2721 (Read_Source_File): Print out the file name, if requested via -gnatd.n.
2722 If it's not part of the runtimes, store it for later printing by
2723 Dump_Source_File_Names.
2724
27252009-05-06 Javier Miranda <miranda@adacore.com>
2726
2727 * gnat_rm.texi (CPP_Constructor): Avoid duplication of the
2728 documentation and add reference to the GNAT user guide for further
2729 details.
2730
27312009-05-06 Javier Miranda <miranda@adacore.com>
2732
2733 * gnat_ugn.texi: Complete documentation for CPP_Constructor and remove
2734 also wrong examples that use extension aggregates.
2735
27362009-05-06 Albert Lee <lee@adacore.com>
2737
2738 * s-oscons-tmplt.c (System.OS_Constants): Do not use special definition
2739 of Msg_Iovlen_T for VMS.
2740
ffef1219
LG
27412009-05-04 Laurent GUERBY <laurent@guerby.net>
2742
2743 PR ada/38874
2744 * make.adb (Scan_Make_Arg): Pass --param= to compiler and linker.
2745
70b70ce8
AC
27462009-04-29 Ed Schonberg <schonberg@adacore.com>
2747
2748 * sem_ch8.adb (Analyze_Subprogram_Renaming): Improve error message on
2749 box-defaulted operator in an instantiation, when the type of the
2750 operands is not directly visible.
2751
27522009-04-29 Gary Dismukes <dismukes@adacore.com>
2753
2754 * sem_aggr.adb (Valid_Limited_Ancestor): Undo previous change.
2755 (Resolve_Extension_Aggregate): Call Check_Parameterless_Call after the
2756 analysis of the ancestor part. Remove prohibition against limited
2757 interpretations of the ancestor expression in the case of Ada 2005.
2758 Revise error message in overloaded case, adding a message to cover
2759 the Ada 2005 case.
2760
27612009-04-29 Thomas Quinot <quinot@adacore.com>
2762
2763 * xoscons.adb: Minor reformatting
2764
27652009-04-29 Bob Duff <duff@adacore.com>
2766
2767 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not ignore
2768 attribute_definition_clauses for the following attributes when the
2769 -gnatI switch is used: External_Tag, Input, Output, Read, Storage_Pool,
2770 Storage_Size, Write. Otherwise, we get spurious errors (for example,
2771 missing Read attribute on remote types).
2772
2773 * gnat_ugn.texi: Document the change, and add a stern warning.
2774
27752009-04-29 Ed Schonberg <schonberg@adacore.com>
2776
2777 * sem_attr.adb (Check_Local_Access): Indicate that value tracing is
2778 disabled not just for the current scope, but for the innermost dynamic
2779 scope as well.
2780
4cc51f5e
AC
27812009-04-29 Arnaud Charlet <charlet@adacore.com>
2782
2783 * gcc-interface/Make-lang.in: Update dependencies
2784
107b023c
AC
27852009-04-29 Vincent Celier <celier@adacore.com>
2786
2787 * prj-part.adb: Minor comment update
2788
27892009-04-29 Ed Schonberg <schonberg@adacore.com>
2790
2791 * sem_aggr.adb (Resolve_Record_Aggregate): handle properly
2792 box-initialized records with discriminated subcomponents that are
2793 constrained by discriminants of enclosing components. New subsidiary
2794 procedures Add_Discriminant_Values, Propagate_Discriminants.
2795
27962009-04-29 Arnaud Charlet <charlet@adacore.com>
2797
2798 * g-socket.adb: Code clean up.
2799
1933c497
AC
28002009-04-29 Gary Dismukes <dismukes@adacore.com>
2801
2802 * sem_aggr.adb (Valid_Limited_Ancestor): Add test for the name of a
2803 function entity, to cover the case of a parameterless function call
2804 that has not been resolved.
2805
28062009-04-29 Robert Dewar <dewar@adacore.com>
2807
2808 * err_vars.ads, prj-part.adb, scans.ads, exp_tss.adb: Minor
2809 reformatting and comment updates.
2810
51ec70b8
AC
28112009-04-29 Arnaud Charlet <charlet@adacore.com>
2812
2813 * gnat_ugn.texi: Update some documentation about interfacing with C++
2814 Mention -fkeep-inline-functions.
2815
2816 * gnat_ugn.texi: Minor edits
2817
28182009-04-29 Ed Schonberg <schonberg@adacore.com>
2819
2820 * sem_aggr.adb (Resolve_Record_Aggregate): When building an aggregate
2821 for a defaulted component of an enclosing aggregate, inherit the type
2822 from the component declaration of the enclosing type.
2823
28242009-04-29 Albert Lee <lee@adacore.com>
2825
2826 * g-socthi-vms.ads, g-socthi-vxworks.ads, s-oscons-tmplt.c,
2827 g-socthi-mingw.ads, g-socthi.ads, g-socket.adb, g-sothco.ads
2828 (System.OS_Constants): New type Msg_Iovlen_T which follows whether the
2829 msg_iovlen field in struct msghdr is 32 or 64 bits wide.
2830 Relocate the Msghdr record type from GNAT.Sockets.Thin to
2831 GNAT.Sockets.Common, and use System.OS_Constants.Msg_Iovlen_T as the
2832 type for the Msg_Iovlen field.
2833
9e895ab5
AC
28342009-04-29 Vincent Celier <celier@adacore.com>
2835
2836 * sinput-l.adb (Load_File): When preprocessing, set temporarily the
2837 Source_File_Index_Table entries for the source, to avoid crash when
2838 reporting an error.
2839
2840 * gnatcmd.adb (Test_If_Relative_Path): Use
2841 Makeutl.Test_If_Relative_Path.
2842
2843 * makeutl.adb:(Test_If_Relative_Path): Process switches --RTS= only if
2844 Including_RTS is True.
2845
2846 * makeutl.ads (Test_If_Relative_Path): New Boolean parameter
2847 Including_RTS defaulted to False.
2848
2849 * sinput.ads, scans.ads, err_vars.ads: Initialize some variables with
2850 a default value.
2851
28522009-04-29 Javier Miranda <miranda@adacore.com>
2853
2854 * gnat_ugn.texi: Adding documentation for non-default C++ constructors.
2855
236fecbf
JM
28562009-04-29 Javier Miranda <miranda@adacore.com>
2857
2858 * sem_ch3.adb (Analyze_Object_Declaration): Disable error message
2859 associated with dyamically tagged expressions if the expression
2860 initializing a tagged type corresponds with a non default CPP
2861 constructor.
2862 (OK_For_Limited_Init): CPP constructor calls are OK for initialization
2863 of limited type objects.
2864
2865 * sem_ch5.adb (Analyze_Assignment): Improve the error message reported
2866 when a CPP constructor is called in an assignment. Disable also the
2867 error message associated with dyamically tagged expressions if the
2868 exporession initializing a tagged type corresponds with a non default
2869 CPP constructor.
2870
2871 * sem_prag.adb (Analyze_Pragma): Remove code disabling the use of
2872 non-default C++ constructors.
2873
2874 * sem_util.ads, sem_util.adb (Is_CPP_Constructor_Call): New subprogram.
2875
2876 * exp_tss.ads, exp_tss.adb (Base_Init_Proc): Add support for
2877 non-default constructors.
2878 (Init_Proc): Add support for non-default constructors.
2879
2880 * exp_disp.adb (Set_Default_Constructor): Removed.
2881 (Set_CPP_Constructors): Code based in removed Set_Default_Constructor
2882 but extending its functionality to handle non-default constructors.
2883
2884 * exp_aggr.adb (Build_Record_Aggr_Code): Add support for non-default
2885 constructors. Minor code cleanup removing unrequired label and goto
2886 statement.
2887
2888 * exp_ch3.adb (Build_Initialization_Call): Add support for non-default
2889 constructors.
2890 (Build_Init_Statements): Add support for non-default constructors.
2891 (Expand_N_Object_Declaration): Add support for non-default constructors.
2892 (Freeze_Record_Type): Replace call to Set_Default_Constructor by call
2893 to Set_CPP_Constructors.
2894
2895 * exp_ch5.adb (Expand_N_Assignment_Statement): Add support for
2896 non-default constructors.
2897 Required to handle its use in build-in-place statements.
2898
2899 * gnat_rm.texi (CPP_Constructor): Document new extended use of this
2900 pragma for non-default C++ constructors and the new compiler support
2901 that allows the use of these constructors in record components, limited
2902 aggregates, and extended return statements.
2903
0ec21a5b
AC
29042009-04-29 Vincent Celier <celier@adacore.com>
2905
2906 * prj-part.adb (Parse_Single_Project): Do not attempt to find a
2907 project extending an abstract project.
2908
29092009-04-29 Eric Botcazou <ebotcazou@adacore.com>
2910
2911 * targparm.ads: Fix oversight.
2912
96b20738
ES
29132009-04-29 Ed Schonberg <schonberg@adacore.com>
2914
2915 * lib-xref.adb (Output_Overridden_Op): Follow several levels of
2916 derivation when necessary, to find the user-subprogram that is actally
2917 being overridden.
2918
3b4ebfc3
RD
29192009-04-29 Robert Dewar <dewar@adacore.com>
2920
2921 * sem_util.adb (May_Be_Lvalue): Fix cases involving indexed/selected
2922 components
2923
eb9cb0fc
ES
29242009-04-29 Ed Schonberg <schonberg@adacore.com>
2925
2926 * exp_ch9.ads, exp_ch9.adb (Build_Wrapper_Spec): Use source line of
2927 primitive operation, rather than source line of synchronized type, when
2928 building the wrapper for a primitive operation that overrides an
2929 operation inherited from a progenitor, to improve the error message on
2930 duplicate declarations.
2931
2932 * sem_ch3.adb (Process_Full_View): Use new signature of
2933 Build_Wrapper_Spec.
2934
7f7d37cb
AC
29352009-04-29 Robert Dewar <dewar@adacore.com>
2936
2937 * prj-nmsc.ads: Minor reformatting
2938
29392009-04-29 Eric Botcazou <ebotcazou@adacore.com>
2940
2941 * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of the
2942 expression on the existing parent If statement.
2943
3c638456
RD
29442009-04-29 Robert Dewar <dewar@adacore.com>
2945
2946 * prj-proc.adb, prj.ads: Minor reformatting
2947
fb1949a0
EB
29482009-04-29 Eric Botcazou <ebotcazou@adacore.com>
2949
2950 * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of an
2951 existing parent If statement on the newly created one.
2952
bd0a4cab
EB
29532009-04-29 Emmanuel Briot <briot@adacore.com>
2954
2955 * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb,
2956 prj-part.ads, prj.adb, prj.ads, clean.adb, prj-dect.adb, prj-dect.ads,
2957 prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-makr.adb
2958 (Set_In_Configuration, In_Configuration): Removed.
2959 Replaced by an extra parameter Is_Config_File in several parameter to
2960 avoid global variables to store the state of the parser.
2961
9af094a1
ES
29622009-04-29 Ed Schonberg <schonberg@adacore.com>
2963
2964 * sinfo.ads, sinfo.adb: New attribute Next_Implicit_With, to chain
2965 with_clauses generated for the same unit through rtsfind, and that
2966 appear in the context of different units.
2967
2968 * rtsfind.adb: New attribute First_Implicit_With, component of the
2969 Unit_Record that stores information about a unit loaded through rtsfind.
2970
ac72c9c5
AC
29712009-04-29 Gary Dismukes <dismukes@adacore.com>
2972
2973 * exp_ch3.adb (Stream_Operation_OK): Return True for limited interfaces
2974 (other conditions permitting), so that abstract stream subprograms will
2975 be declared for them.
2976
29772009-04-29 Bob Duff <duff@adacore.com>
2978
2979 * g-expect.adb (Expect_Internal): Fix check for overfull buffer.
2980
2981 * g-expect.ads: Minor comment fixes.
2982
29832009-04-29 Ed Schonberg <schonberg@adacore.com>
2984
2985 * freeze.adb, lib-xref.adb (Check_Dispatching_Operation): if the
2986 dispatching operation is a body without previous spec, update the list
2987 of primitive operations to ensure that cross-reference information is
2988 up-to-date.
2989
29902009-04-29 Albert Lee <lee@adacore.com>
2991
2992 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
2993 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
2994 g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads
2995 (GNAT.Sockets.Thin.C_Readv,
2996 GNAT.Sockets.Thin.C_Writev): Remove unused subprograms.
2997 (GNAT.Sockets.Thin.C_Recvmsg,
2998 GNAT.Sockets.Thin.C_Sendmsg): New bindings to call recvmsg(2) and
2999 sendmsg(2).
3000 (GNAT.Sockets.Receive_Vector, GNAT.Sockets.Send_Vector): Use
3001 C_Recvmsg/C_Sendmsg rather than Readv/C_Writev.
3002
4fc26524
AC
30032009-04-29 Ed Schonberg <schonberg@adacore.com>
3004
3005 * sem_disp.adb (Check_Dispatching_Operation): if the dispatching
3006 operation is a body without previous spec, update the list of
3007 primitive operations to ensure that cross-reference information is
3008 up-to-date.
3009
3010 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): When creating a
3011 new compilation unit node for the instance declaration, keep the
3012 context items of the original unit on it, so that the context of the
3013 instance body only holds the context inherited from the generic body.
3014
30152009-04-29 Bob Duff <duff@adacore.com>
3016
3017 * sem_res.adb: Minor comment fix.
3018
7f4c1903
AC
30192009-04-29 Thomas Quinot <quinot@adacore.com>
3020
3021 * sem_elim.adb: Minor reformatting
3022
30232009-04-29 Ed Schonberg <schonberg@adacore.com>
3024
3025 * exp_aggr.adb (Convert_To_Positional): if the current unit is a
3026 predefined unit, allow arbitrary number of components in static
3027 aggregate, to ensure that the same level of constant folding applies
3028 for Ada 95 and Ada 05 versions of the file.
3029
33374829
AC
30302009-04-29 Ed Schonberg <schonberg@adacore.com>
3031
3032 * sem_elim.adb (Check_Eliminated): Handle new improved eliminate
3033 information: no need for full scope check.
3034 (Eliminate_Error): Do not emit error in a generic context.
3035
30362009-04-29 Ed Falis <falis@adacore.com>
3037
3038 * adaint.c (__gnat_rmdir): return error code if VTHREADS is defined.
3039 VxWorks 653 POS does not support rmdir.
3040
30412009-04-29 Matteo Bordin <bordin@adacore.com>
3042
3043 * s-stausa.adb, s-stausa.ads: Get_Usage_Range: changing the way
3044 results are printed.
3045
91c2cbdb
AC
30462009-04-29 Arnaud Charlet <charlet@adacore.com>
3047
3048 * s-taskin.adb (Initialize): Remove pragma Warnings Off and remove
3049 unused assignment.
3050
30512009-04-29 Thomas Quinot <quinot@adacore.com>
3052
3053 * make.adb: Minor reformatting.
3054 Minor code reorganization throughout.
3055
30562009-04-29 Matteo Bordin <bordin@adacore.com>
3057
3058 * s-stausa.ads: Changed visibility of type Task_Result: moved to
3059 public part to give application visibility over it.
3060 This is for future improvement and to build a public API on top of it.
3061 Changed record components name of type Task_Result to reflect the new
3062 way of reporting.
3063
3064 * s-stausa.adb: Actual_Size_Str changed to reflect the new way of
3065 reporting Stack usage.
3066
3067 * gnat_ugn.texi: Update doc of stack usage report.
3068
3069 * g-tastus.ads, s-stusta.ads, s-stusta.adb: New files.
3070
3071 * Makefile.rtl: Add new run-time files.
3072
6d47b1e3
PO
30732009-04-29 Pascal Obry <obry@adacore.com>
3074
3075 * initialize.c: Do not expand quoted arguments.
3076
d45871da
EB
30772009-04-29 Emmanuel Briot <briot@adacore.com>
3078
3079 * prj-ext.adb, prj.adb, prj.ads: Fix memory leaks.
3080
3081 * clean.adb (Ultimate_Extension_Of): removed, since duplicate of
3082 Prj.Ultimate_Extending_Project_Of
3083
4f87ded3
ES
30842009-04-29 Ed Schonberg <schonberg@adacore.com>
3085
3086 * exp_ch7.adb (Build_Final_List): If the designated type is a Taft
3087 Amendment type, add the with_clause for Finalization.List_Controller
3088 only if the current context is a package body.
3089
349ff68f
AC
30902009-04-29 Thomas Quinot <quinot@adacore.com>
3091
3092 * sem_ch12.adb: Minor reformatting
3093
3094 * sem_aggr.adb: Minor reformatting
3095
3096 * sem_ch6.adb, sem_cat.ads: Minor reformatting
3097
3098 * sem_ch10.adb, gnat1drv.adb, prj-nmsc.adb: Minor reformatting
3099
31002009-04-29 Quentin Ochem <ochem@adacore.com>
3101
3102 * prj.ads (Source_Id): Now general pointer type.
3103
d81b4bfe
TQ
31042009-04-29 Thomas Quinot <quinot@adacore.com>
3105
3106 * exp_ch7.adb, rtsfind.adb: Minor reformatting
3107
3108 * sem_res.adb: Minor reformatting
3109
4342eda9
TQ
31102009-04-29 Thomas Quinot <quinot@adacore.com>
3111
3112 * sem_res.adb (Static_Concatenation): An N_Op_Concat with static
3113 operands is static only if it is a predefined concatenation operator.
3114
3115 * sem_util.adb: Minor reformatting
3116
3117 * sem_ch12.adb (Save_References): When propagating semantic information
3118 from generic copy back to generic template, for the case of an
3119 identifier that has been rewritten to an explicit dereference whose
3120 prefix is either an object name or a parameterless funcion call
3121 denoting a global object or function, properly capture the denoted
3122 global entity: perform the corresponding rewriting in the template,
3123 and point the rewritten identifier to the correct global entity (not
3124 to the associated identifier in the generic copy).
3125
0b8074ed
AC
31262009-04-29 Robert Dewar <dewar@adacore.com>
3127
3128 * rtsfind.adb, prj-env.adb: Minor reformatting
3129 Minor code reorganization
3130
31312009-04-29 Emmanuel Briot <briot@adacore.com>
3132
3133 * make.adb: Fix comment
3134
3135 * prj.adb (Ultimate_Extending_Project_Of): Fix handling when no project
3136 is given as argument, as might happen in gnatmake.
3137
8f983e64
ES
31382009-04-29 Ed Schonberg <schonberg@adacore.com>
3139
3140 * sem_ch3.adb (Check_Abstract_Overriding): Improve error message when
3141 an abstract operation of a progenitor is not properly overridden by an
3142 operation of a derived synchronized type.
3143
132410cb
RD
31442009-04-29 Robert Dewar <dewar@adacore.com>
3145
3146 * mlib-prj.adb, mlib-tgt.adb, mlib-tgt.ads, prj-nmsc.adb,
3147 prj-proc.adb: Minor reformatting
3148 Minor code reorganization
3149
66713d62
AC
31502009-04-29 Bob Duff <duff@adacore.com>
3151
3152 * exp_ch7.adb (Build_Final_List): For an access type that designates a
3153 Taft Amendment type, if the access type needs finalization, make sure
3154 the implicit with clause for List_Controller occurs on the package spec.
3155
3156 * rtsfind.adb (Text_IO_Kludge): Fine tune the creation of implicit
3157 with's created for the pseudo-children of Text_IO and friends. In
3158 particular, avoid cycles, such as Ada.Wide_Text_IO.Integer_IO and
3159 Ada.Text_IO.Integer_IO both with-ing each other.
3160
3161 * sem.adb (Walk_Library_Items): Suppress assertion failure in certain
3162 oddball cases when pragma Extend_System is used.
3163
3164 * sem_ch12.adb (Get_Associated_Node): Prevent direct 'with' cycles in
3165 the case where a package spec instantiates a generic whose body with's
3166 this package, so Walk_Library_Items won't complain about cyclic with's.
3167
31682009-04-29 Emmanuel Briot <briot@adacore.com>
3169
3170 * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads,
3171 prj-pp.adb, prj-pp.ads, makeutl.adb, clean.adb, prj-nmsc.adb,
3172 mlib-tgt.adb, mlib-tgt.ads, prj-util.adb, prj-env.adb, prj-env.ads
3173 (Project_Id): now a real pointer to Project_Data, instead of an index
3174 into the Projects_Table. This simplifies the API significantly, avoiding
3175 extra lookups in this table and the need to pass the Project_Tree_Ref
3176 parameter in several cases
3177
059caa3e
NS
31782009-04-29 Nicolas Setton <setton@adacore.com>
3179
3180 * gcc-interface/Makefile.in: Produce .dSYM files for shared libs on
3181 darwin.
3182
19440588
EB
31832009-04-25 Eric Botcazou <ebotcazou@adacore.com>
3184
3185 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Put
3186 back kludge.
3187
b178461a
RD
31882009-04-24 Robert Dewar <dewar@adacore.com>
3189
3190 * mlib-prj.adb, prj-env.adb, prj-nmsc.adb, prj-proc.adb, make.adb,
3191 clean.adb: Minor reformatting.
3192 Minor code reorganization and message improvement.
3193
e1c9f239
EB
31942009-04-24 Emmanuel Briot <briot@adacore.com>
3195
3196 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-nmsc.ads
3197 (Alternate_Languages): now implemented as a malloc-ed list rather
3198 than through a table.
3199
c72a85f2
TQ
32002009-04-24 Thomas Quinot <quinot@adacore.com>
3201
3202 * sem_res.adb (Static_Concatenation): Simplify predicate to make it
3203 accurately handle cases such as "lit" & "lit" and
3204 "lit" & static_string_constant
3205
3563739b
AC
32062009-04-24 Emmanuel Briot <briot@adacore.com>
3207
3208 * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
3209 prj-nmsc.adb, prj-env.adb (Project_List_Table, Project_Element):
3210 removed. Lists of projects are now implemented via standard malloc
3211 rather than through the table.
3212
32132009-04-24 Thomas Quinot <quinot@adacore.com>
3214
3215 * sem_ch12.adb: Minor reformatting
3216
3217 * g-trasym.adb: Minor reformatting
3218
3219 * exp_ch6.adb: Minor reformatting
3220
32212009-04-24 Robert Dewar <dewar@adacore.com>
3222
3223 * layout.adb (Layout_Type): For packed array type, copy unset
3224 size/alignment fields from the referenced Packed_Array_Type.
3225
32262009-04-24 Bob Duff <duff@adacore.com>
3227
3228 * lib-load.adb (Make_Instance_Unit): Revert previous change, no
3229 longer needed after sem_ch12 changes.
3230
3231 * sem.adb (Walk_Library_Items): Include with's in some debugging
3232 printouts.
3233
757240b3
AC
32342009-04-24 Emmanuel Briot <briot@adacore.com>
3235
3236 * prj.ads, prj-nmsc.adb (Unit_Project): removed, since in fact we were
3237 only ever using the Project field.
3238
32392009-04-24 Ed Schonberg <schonberg@adacore.com>
3240
3241 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Do not set
3242 Body_Required on the generated compilation node. The new node is linked
3243 to its body, but both share the same file, so we do not set this flag
3244 on the new unit so as not to create a spurious dependency on a
3245 non-existent body in the ali file for the instance.
3246
32472009-04-24 Robert Dewar <dewar@adacore.com>
3248
3249 * make.adb: Minor reformatting
3250
aca53298
AC
32512009-04-24 Emmanuel Briot <briot@adacore.com>
3252
3253 * prj.adb, prj.ads, prj-nmsc.adb (Check_File, Record_Ada_Source,
3254 Add_Source): merge some code between those. In particular change where
3255 file normalization is done to avoid a few extra calls to
3256 Canonicalize_File_Name. This also removes the need for passing
3257 Current_Dir in a number of subprograms.
3258
32592009-04-24 Bob Duff <duff@adacore.com>
3260
3261 * lib-load.adb (Make_Instance_Unit): In the case where In_Main is
3262 False, assign the correct unit to the Cunit field of the new table
3263 entry. We want the spec unit, not the body unit.
3264
3265 * rtsfind.adb (Make_Unit_Name, Maybe_Add_With): Simplify calling
3266 interface for these.
3267 (Maybe_Add_With): Check whether we're trying to a with on the current
3268 unit, and avoid creating such directly self-referential with clauses.
3269 (Text_IO_Kludge): Add implicit with's for the generic pseudo-children of
3270 [[Wide_]Wide_]Text_IO. These are needed for Walk_Library_Items,
3271 and matches existing comments in the spec.
3272
3273 * sem.adb (Walk_Library_Items): Add various special cases to make the
3274 assertions pass.
3275
3276 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Use Body_Cunit
3277 instead of Parent (N), for uniformity.
3278
6db828c3
AC
32792009-04-24 Robert Dewar <dewar@adacore.com>
3280
3281 * errout.ads: Minor reformatting
3282
32832009-04-24 Emmanuel Briot <briot@adacore.com>
3284
3285 * gnat_ugn.texi (Library Projects): add documentation on gnatmake's
3286 behavior when the project includes sources from multiple languages
3287
32882009-04-24 Vincent Celier <celier@adacore.com>
3289
3290 * prj.adb (Has_Foreign_Sources): Returns True in Ada_Only mode if there
3291 is a language other than Ada declared.
3292
3293 * makeutl.adb (Linker_Options_Switches): Call For_All_Projects with
3294 Imported_First set to True.
3295
a7a3cf5c
AC
32962009-04-24 Ed Schonberg <schonberg@adacore.com>
3297
3298 * sem_res.adb: additional optimization to inhibit creation of
3299 redundant transient scopes.
3300
33012009-04-24 Bob Duff <duff@adacore.com>
3302
3303 * rtsfind.ads: Minor comment fix
3304
33052009-04-24 Emmanuel Briot <briot@adacore.com>
3306
3307 * prj-proc.adb, prj-nmsc.adb (Find_Ada_Sources,
3308 Get_Path_Name_And_Record_Ada_Sources): merged, since these were
3309 basically doing the same work (for explicit or implicit sources).
3310 (Find_Explicit_Sources): renamed to Find_Sources to better reflect its
3311 role. Rewritten to share some code (testing that all explicit sources
3312 have been found) between ada_only and multi_language modes.
3313
33142009-04-24 Jerome Lambourg <lambourg@adacore.com>
3315
3316 * sem_prag.adb (Check_Form_Of_Interface_Name): Allow space in Ext_Name
3317 for CLI imported types.
3318 (Analyze_Pragma): Allow CIL or Java imported functions returning
3319 access-to-subprogram types.
3320
2324b3fd
EB
33212009-04-24 Emmanuel Briot <briot@adacore.com>
3322
3323 * make.adb, prj.adb, prj.ads, makeutl.adb, makeutl.ads:
3324 (Project_Data.Dir_Path): field removed, since it can be computed
3325 directly from .Directory, and is needed only once when processing the
3326 project is buildgpr.adb or make.adb
3327
8eaf1723
RD
33282009-04-24 Robert Dewar <dewar@adacore.com>
3329
3330 * prj-env.adb, prj-proc.adb, prj.adb, prj.ads,
3331 rtsfind.adb: Minor reformatting.
3332 Minor code reorganization
3333
04f33e7b
AC
33342009-04-24 Arnaud Charlet <charlet@adacore.com>
3335
3336 * mlib-prj.adb: Use friendlier english identifier.
3337
3338 * gnatcmd.adb, make.adb: Use better english identifiers.
3339
33402009-04-24 Robert Dewar <dewar@adacore.com>
3341
3342 * clean.adb: Minor reformatting
3343
d1f453b7
RD
33442009-04-24 Robert Dewar <dewar@adacore.com>
3345
3346 * einfo.adb (OK_To_Rename): New flag
3347
3348 * einfo.ads (OK_To_Rename): New flag
3349
3350 * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite as renames if
3351 OK_To_Rename set.
3352
3353 * exp_ch4.adb (Expand_Concatenate): Mark temp variable OK_To_Rename
3354
3355 * sem_ch7.adb (Uninstall_Declarations): Allow for renames from
3356 OK_To_Rename.
3357
8b9890fa
EB
33582009-04-24 Emmanuel Briot <briot@adacore.com>
3359
3360 * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, makeutl.adb,
3361 clean.adb, prj-nmsc.adb, prj-env.adb, prj-env.ads (Project_Data.Seen):
3362 field removed. This is not a property of the
3363 project, just a boolean used to traverse the project tree, and storing
3364 it in the structure prevents doing multiple traversal in parallel.
3365 (Project_Data.Checked): also removed, since it was playing the same role
3366 as Seen when we had two nested loops, and this is no longer necessary
3367 (For_All_Imported_Projects): removed, since in fact there was already
3368 the equivalent in For_Every_Project_Imported. The latter was rewritten
3369 to use a local hash table instead of Project_Data.Seen
3370 Various loops were rewritten to use For_Every_Project_Imported, thus
3371 removing the need for Project_Data.Seen. This avoids a lot of code
3372 duplication
3373
76e776e5
AC
33742009-04-24 Ed Schonberg <schonberg@adacore.com>
3375
3376 * sem_res.adb (Resolve_Actuals): Do not create blocks around code
3377 statements, even though the actual of the call is a concatenation,
3378 because the argument is static, and we want to preserve warning
3379 messages about sequences of code statements that are not marked
3380 volatile.
3381
3382 * sem_warn.adb: remove obsolete comment about warning being obsolete
3383
3384 * s-tasren.adb (Task_Do_Or_Queue): If a timed entry call is being
3385 requeued and the delay has expired while within the accept statement
3386 that executes the requeue, do not perform the requeue and indicate that
3387 the timed call has been aborted.
3388
33892009-04-24 Emmanuel Briot <briot@adacore.com>
3390
3391 * mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
3392 (Has_Ada_Sources, Has_Foreign_Sources): new subprograms
3393 (Project_Data.Ada_Sources_Present, Foreign_Sources_Present): removed,
3394 since they can be computed from the above.
3395
481f29eb
VC
33962009-04-24 Vincent Celier <celier@adacore.com>
3397
3398 * gnatcmd.adb: Call Prj.Env.Initialize with the Project_Tree
3399
3400 * prj-env.adb: Move all global variables to the private part of the
3401 project tree data.
3402 Access these new components instead of the global variables no longer
3403 in existence.
3404 (Add_To_Path): New Project_Tree_Ref parameter, to access the new
3405 components that were previously global variables.
3406
3407 * prj-env.ads (Initialize): New Project_Tree_Ref parameter
3408 (Set_Mapping_File_Initial_State_To_Empty): New Project_Tree_Ref
3409 parameter.
3410
3411 * prj-nmsc.adb (Compute_Unit_Name): New Project_Tree_Ref parameter to
3412 be able to call Set_Mapping_File_Initial_State_To_Empty with it.
3413
3414 * prj.adb (Initialize): Do not call Prj.Env.Initialize
3415 (Reset): Do not call Prj.Env.Initialize. Instead, initialize the new
3416 components in the private part of the project tree data.
3417
3418 * prj.ads (Private_Project_Tree_Data): new components moved from
3419 Prj.Env: Current_Source_Path_File, Current_Object_Path_File,
3420 Ada_Path_Buffer, Ada_Path_Length, Ada_Prj_Include_File_Set,
3421 Ada_Prj_Objects_File_Set, Fill_Mapping_File.
3422
c54ab0b5
AC
34232009-04-24 Vincent Celier <celier@adacore.com>
3424
3425 * opt.ads (Unchecked_Shared_Lib_Imports): New Boolean flag.
3426
3427 * prj-nmsc.adb (Check_Library): No error for imports by shared library
3428 projects, when --unchecked-shared-lib-imports is used.
3429
34302009-04-24 Robert Dewar <dewar@adacore.com>
3431
3432 * sem_ch7.adb: Minor reformatting
3433
b3520ca0
AC
34342009-04-24 Tristan Gingold <gingold@adacore.com>
3435
3436 * s-osinte-darwin.adb, s-osinte-darwin.ads: lwp_self now returns the
3437 mach thread id.
3438
34392009-04-24 Emmanuel Briot <briot@adacore.com>
3440
3441 * prj-env.adb, prj-env.ads (Body_Path_Name_Of, Spec_Path_Name_Of,
3442 Path_Name_Of_Library_Unit_Body): rEmove unused subprograms.
3443 (For_All_Imported_Projects): new procedure
3444 (For_All_Source_Dirs, For_All_Object_Dirs): Rewritten based on the
3445 above rather than duplicating code.
3446
5d07d0cf
EB
34472009-04-24 Emmanuel Briot <briot@adacore.com>
3448
3449 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
3450 (Source_Id, Source_Data): use a real list to store sources rather than
3451 using an external table to store the elements. This makes code more
3452 efficient and more readable.
3453
5eed512d
EB
34542009-04-24 Emmanuel Briot <briot@adacore.com>
3455
3456 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
3457 (Source_Iterator): new type.
53b2323e
RH
3458 This removes the need for having the sources on three different
3459 lists at the project tree, project and language level. They are now
3460 on a single list.
5eed512d 3461
5876578b
EB
34622009-04-24 Emmanuel Briot <briot@adacore.com>
3463
3464 * gnatcmd.adb, prj.adb, prj.ads: Remove unused entities
3465
a9d17e32
ES
34662009-04-24 Ed Schonberg <schonberg@adacore.com>
3467
3468 * sem_warn.adb: Add comment on obsolete warning
3469
144c034d
AC
34702009-04-24 Arnaud Charlet <charlet@adacore.com>
3471
3472 * s-tassta.adb (Create_Task): Fix violation of locking rule.
3473
e0697153
EB
34742009-04-24 Emmanuel Briot <briot@adacore.com>
3475
3476 * prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb (Language_Index): renamed
3477 to Language_Ptr to better reflect its new implementation.
3478 (Project_Data.First_Languages_Processing): renamed to Languages now
3479 that the field with that name is no longer used
3480 (Project_Data.Languages): removed, no longer used, and duplicates
3481 information already available through First_Language_Processing.
3482 (Prj.Language_Index): now an actual pointer, instead of an index into
3483 a table. This makes the list somewhat more obvious, but more importantly
3484 removes the need to pass a pointer to the project_tree_data in a few
3485 places, and makes accessing the attributes of a languages more
3486 efficient.
3487
18e6d56a 34882009-04-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
53b2323e 3489 Thomas Quinot <quinot@adacore.com>
18e6d56a
RK
3490
3491 * fe.h (Set_Identifier_Casing): Add const to second parameter.
c91f9cd4 3492 * gcc-interface/misc.c (internal_error_function): Make copy of return
18e6d56a
RK
3493 from pp_formatted_text before assigning BUFFER to it.
3494 (gnat_init): Likewise for main_input_filename and gnat_argv.
3495 (gnat_printable_name): Remove cast from call to Set_Identifier_Casing.
3496
caa9d12a
EB
34972009-04-24 Eric Botcazou <ebotcazou@adacore.com>
3498
3499 * ttypes.ads (Target_Double_Float_Alignment): New variable.
3500 (Target_Double_Scalar_Alignment): Likewise.
3501 * get_targ.ads (Get_Strict_Alignment): Adjust external name.
3502 (Get_Double_Float_Alignment): New imported function.
3503 (Get_Double_Scalar_Alignment): Likewise.
3504 * layout.adb (Set_Elem_Alignment): Take into account specific caps for
3505 the alignment of "double" floating-point types and "double" or larger
3506 scalar types, as parameterized by Target_Double_Float_Alignment and
3507 Target_Double_Scalar_Alignment respectively.
3508 * gcc-interface/gigi.h (double_float_alignment): Declare.
3509 (double_scalar_alignment): Likewise.
3510 (is_double_float_or_array): Likewise.
3511 (is_double_scalar_or_array): Likewise.
3512 (get_target_double_float_alignment): Likewise.
3513 (get_target_double_scalar_alignment): Likewise.
3514 * gcc-interface/targtyps.c (get_strict_alignment): Rename into...
3515 (get_target_strict_alignment): ...this.
3516 (get_target_double_float_alignment): New function.
3517 (get_target_double_scalar_alignment): Likewise.
3518 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
3519 Test the presence of an alignment clause for under-aligned integer
3520 types. Take into account specific caps for the alignment of "double"
3521 floating-point types and "double" or larger scalar types, as
3522 parameterized by Target_Double_Float_Alignment and
3523 Target_Double_Scalar_Alignment respectively.
3524 (validate_alignment): Likewise.
3525 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Alignment>: Likewise.
3526 (gigi): Initialize double_float_alignment and double_scalar_alignment.
3527 * gcc-interface/utils.c (double_float_alignment): New global variable.
3528 (double_scalar_alignment): Likewise.
3529 (is_double_float_or_array): New predicate.
3530 (is_double_scalar_or_array): Likewise.
3531
1275de7d
EB
35322009-04-24 Eric Botcazou <ebotcazou@adacore.com>
3533
3534 * gcc-interface/utils2.c (build_cond_expr): Move SAVE_EXPR ahead of
3535 the conditional expression only if it is common to both arms.
3536
6f61bd41
EB
35372009-04-24 Eric Botcazou <ebotcazou@adacore.com>
3538
3539 * gcc-interface/gigi.h (build_call_alloc_dealloc): Update comment.
3540 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Pass correct
3541 arguments to build_allocator.
3542 * gcc-interface/utils2.c (build_call_alloc_dealloc): Update comment.
3543 Remove code handling special allocator and assert its uselessness.
3544
0d858698
EB
35452009-04-24 Eric Botcazou <ebotcazou@adacore.com>
3546
3547 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If an
3548 alignment is specified, do not promote that of the component type
3549 beyond it.
3550 <E_Array_Subtype>: Likewise.
3551
bbaba73f
EB
35522009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3553
3554 * einfo.ads (Is_True_Constant): Lift restriction on atomic objects.
3555 * sinfo.ads (Object Declaration): Likewise.
3556 (Assignment Statement): Likewise.
3557 * freeze.adb (Expand_Atomic_Aggregate): Remove useless test.
3558 Do not force Is_True_Constant to false on the temporary.
3559 (Freeze_Entity): Do not force Is_True_Constant to false on names on
3560 the RHS of object declarations.
3561 * gcc-interface/trans.c (lvalue_required_p) <N_Object_Declaration>:
3562 New case. Return 1 if the object is atomic.
3563 <N_Assignment_Statement>: Likewise.
3564
4fd78fe6
EB
35652009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3566
3567 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>
3568 For packed array types, make the original array type a parallel type
3569 for the modular type and its JM wrapper if the type is bit-packed.
3570 <E_Array_Subtype>: Likewise. Do not generate the special XA parallel
3571 record type for packed array types. Remove kludge.
3572
c1abd261
EB
35732009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3574
3575 * gcc-interface/gigi.h (create_index_type): Adjust head comment.
3576 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
3577 Use front-end predicates to compute signedness and precision.
3578 <E_String_Literal_Subtype>: Fold range type.
3579 Make sure to set longest_float_type_node to a scalar type.
3580 (elaborate_entity): Use consistent Constraint_Error spelling.
3581 (substitute_in_type) <INTEGER_TYPE>: Always copy the type.
3582 * gcc-interface/misc.c (gnat_print_type) <INTEGER_TYPE>: Use brief
3583 output for the modulus, if any.
3584 <ENUMERAL_TYPE>: Likewise for the RM size.
3585 * gcc-interface/trans.c (gnat_to_gnu): Use consistent Constraint_Error
3586 spelling.
3587 * gcc-interface/utils.c (finish_record_type): Really test the alignment
3588 of BLKmode bit-fields to compute their addressability.
3589 (create_index_type): Adjust comments.
3590 (create_param_decl): Create the biased subtype manually.
3591 * gcc-interface/utils2.c (build_component_ref): Use consistent
3592 Constraint_Error spelling.
3593
8713b7e4
EB
35942009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3595
3596 * gcc-interface/cuintp.c: Clean up include directives.
3597 * gcc-interface/targtyps.c: Likewise.
3598 * gcc-interface/decl.c: Likewise.
3599 * gcc-interface/misc.c: Likewise.
3600 * gcc-interface/trans.c: Likewise.
3601 * gcc-interface/utils.c: Likewise.
3602 * gcc-interface/utils2.c: Likewise.
3603 * gcc-interface/Make-lang.in: Adjust dependencies accordingly.
3604
26383c64
EB
36052009-04-23 Eric Botcazou <ebotcazou@adacore.com>
3606
3607 * gcc-interface/ada-tree.h (union lang_tree_node): Use standard idiom.
3608 (SET_TYPE_LANG_SPECIFIC): Likewise. Fix formatting.
3609 (SET_DECL_LANG_SPECIFIC): Likewise.
3610 Reorder macros.
3611 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
3612 Update comment about use of build_range_type.
3613 <E_Array_Type, E_Array_Subtype>: Use consistent naming convention.
3614 <E_Array_Subtype>: Rework comments about TYPE_ACTUAL_BOUNDS and add
3615 check for other cases of overloading.
3616 * gcc-interface/trans.c (gigi): Use size_int in lieu of build_int_cst.
3617 * gcc-interface/utils2.c (build_call_raise): Fix off-by-one error.
3618 Use size_int in lieu of build_int_cst.
3619 (build_call_alloc_dealloc): Use build_index_2_type in lieu of
3620 build_range_type.
3621
b7babd5d
EB
36222009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3623
3624 * gcc-interface/utils2.c (build_binary_op) <PLUS_EXPR>: If operation's
3625 type is an enumeral or a boolean type, change it to an integer type
3626 with the same mode and signedness.
3627
5225a138
EB
36282009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3629
3630 * gcc-interface/utils.c (create_var_decl_1): Do not emit debug info
3631 for an external constant whose initializer is not absolute.
3632
36332009-04-22 Taras Glek <tglek@mozilla.com>
d1b38208
TG
3634
3635 * gcc-interface/ada-tree.h: Update GTY annotations to new syntax.
3636 * gcc-interface/trans.c: Likewise.
3637 * gcc-interface/utils.c: Likewise.
3638
a52fefe6
AC
36392009-04-22 Ed Schonberg <schonberg@adacore.com>
3640
3641 * sem_res.adb: Create block around procedure call when actual is a
3642 concatenation.
3643
36442009-04-22 Thomas Quinot <quinot@adacore.com>
3645
3646 * s-soflin.ads: Fix typos
3647
36482009-04-22 Vincent Celier <celier@adacore.com>
3649
3650 * prj-env.adb: Minor comment change
3651
3652 * prj-nmsc.adb (Check_Common): Add guard to avoid calling
3653 Get_Name_String with No_File.
3654
3655 * tempdir.adb (Create_Temp_File): Output diagnostic when temp file
3656 cannot be created even when not in verbose mode.
3657
2f1e0b61
EB
36582009-04-22 Emmanuel Briot <briot@adacore.com>
3659
3660 * make.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj.adb,
3661 prj.ads (Create_Mapping_File): merge the two versions for Ada_Only and
3662 Multi_Language modes, to avoid code duplication.
3663 (Project_Data.Include_Language): Removed.
3664
35afb012
AC
36652009-04-22 Vincent Celier <celier@adacore.com>
3666
3667 * tempdir.adb (Create_Temp_File): Add a diagnostic in verbose mode when
3668 the temporary file cannot be created, indicating the directory when the
3669 creation was attempted.
3670
36712009-04-22 Emmanuel Briot <briot@adacore.com>
3672
3673 * prj-env.adb, prj-env.ads (Create_Mapping_File): we need to compare
3674 the language names, not their indices.
3675
10d2a6f7
EB
36762009-04-22 Emmanuel Briot <briot@adacore.com>
3677
3678 * prj.ads, prj-nmsc.adb, prj-env.adb, prj-env.ads
3679 (Source_Data.Language_Name): Field removed.
3680
39d4e04a
EB
36812009-04-22 Emmanuel Briot <briot@adacore.com>
3682
3683 * prj.adb, prj.ads, prj-nmsc.adb (Project_Data.Unit_Based_Language_*):
3684 Two fields removed.
3685
f1eea135
EB
36862009-04-22 Emmanuel Briot <briot@adacore.com>
3687
3688 * prj-nmsc.adb (Check_Naming_Ada_Only): Properly initialize the
3689 separate_suffix to the same value as the body_suffix.
3690
d9c0e057
AC
36912009-04-22 Robert Dewar <dewar@adacore.com>
3692
3693 * prj.adb: Minor code reorganization
3694 Code clean up.
3695
3696 * prj-proc.adb: Minor code reorganization, clean up.
3697
3698 * prj-nmsc.adb: Minor reformatting
3699 Minor code reorganization
3700
3701 * gnat_ugn.texi: Add to doc on strict aliasing
3702
37032009-04-22 Pascal Obry <obry@adacore.com>
3704
3705 * s-osinte-mingw.ads: Rename Reserved field in CRITICAL_SECTION to
3706 SpinCount.
3707
3708 * s-tasini.adb: Minor reformatting.
3709
3710 * s-tassta.adb: Minor reformatting.
3711
ce30eccb
EB
37122009-04-22 Emmanuel Briot <briot@adacore.com>
3713
3714 * prj-proc.adb, prj-nmsc.adb (Check_Naming_Schemes): split into several
3715 smaller subprograms.
3716 Renamed to Check_File_Naming_Schemes to avoid confusion with the
3717 other Check_Naming_Schemes functions that plays a totally different
3718 role.
3719 (Check_Unit_Based_Lang, Check_File_Based_Lang): new subprograms,
3720 extracted from the above. These were partially rewritten to avoid
3721 unnecessary code and temporary variables.
3722 (Compute_Unit_Name): new subprogram, merge of Check_Unit_Based_Lang
3723 and Get_Unit (which for now still exist since they contain mode-specific
3724 code)
3725
347ab254
EB
37262009-04-22 Emmanuel Briot <briot@adacore.com>
3727
3728 * prj.ads, prj.adb, prj-nmsc.adb, prj-proc.adb (Recursive_Process):
3729 Remove duplicated code.
3730 (Canonical_Case_File_Name): new subprogram
3731 (Check_And_Normalize_Unit_Names): new subprogram
3732 (Write_Attr): new subprogram
3733 Better sharing of code
3734 (Check_Naming_Ada_Only, Check_Naming_Multi_Lang): new subprogram, to
3735 split Check_Naming and help find duplicated code
3736 (Check_Common): new subprogram, sharing code between ada_only and
3737 multi_language mode.
3738 (Naming_Data.Dot_Repl_Loc): field removed
3739
aa903780
EB
37402009-04-22 Emmanuel Briot <briot@adacore.com>
3741
3742 * prj-proc.adb, prj-nmsc.adb (Load_Naming_Exceptions): New subprogram.
3743 Minor refactoring to reduce the size of
3744 Process_Sources_In_Multi_Language_Mode.
3745 Avoid extra copied of Source_Data, which we found in the past could be
3746 quite slow.
3747 (Mark_Excluded_Sources): new subprogram.
3748 (Remove_Locally_Removed_Files_From_Units): merged into the above
3749 Refactors Process_Sources_In_Multi_Language_Mode to reduce its size,
3750 and allow better sharing of code between multi_lang and ada_only modes
3751 (Project_Extends): removed, since exact duplicate of Prj.Is_Extending
3752
95c05c62
EB
37532009-04-22 Emmanuel Briot <briot@adacore.com>
3754
3755 * prj-proc.adb, prj.adb, prj.ads (Project_Data.First_Referred_By):
3756 Removed, since unused.
3757
c9a1acdc
AC
37582009-04-22 Vincent Celier <celier@adacore.com>
3759
3760 * prj-attr.adb: New single project level attribute
3761 Separate_Run_Path_Options.
3762
3763 * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
3764 attribute Seperate_Run_Path_Options.
3765
3766 * prj.ads: (Project_Configuration): New Boolean component
3767 Separate_Run_Path_Options, defaulted to False.
3768
3769 * snames.ads-tmpl: New standard name Seperate_Run_Path_Options
3770
6d2a1120
RD
37712009-04-22 Robert Dewar <dewar@adacore.com>
3772
c9a1acdc
AC
3773 * sem_type.adb: Minor reformatting
3774
6d2a1120
RD
3775 * mlib.adb: Minor reformatting
3776
3777 * sem_aggr.adb: Minor reformatting. Defend against junk aggregate from
3778 syntax error.
3779
3b81743f
NS
37802009-04-22 Nicolas Setton <setton@adacore.com>
3781
3782 * link.c: Add flag __gnat_separate_run_path_options.
3783
3784 * mlib.adb (Separate_Run_Path_Options): New subprogram.
3785
3786 * mlib.ads (Separate_Run_Path_Options): Declare.
3787
3788 * gnatcmd.adb (Process_Link): Add support for emitting one "rpath"
3789 switch per directory, rather than one "rpath" switch listing all
3790 directories.
3791
3792 * gnatlink.adb (Process_Binder_File): Likewise.
3793
3794 * make.adb (Gnatmake): Likewise.
3795
3a69b5ff
AC
37962009-04-22 Hristian Kirtchev <kirtchev@adacore.com>
3797
3798 * exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): Code cleanup.
3799 Add a call to Move_Final_List when the target of the assignment is a
3800 return object that needs finalization and the expression is a
3801 controlled build-in-place function.
3802
38032009-04-22 Vincent Celier <celier@adacore.com>
3804
3805 * make.adb (Gnatmake, Bind_Step): call Set_Ada_Paths with
3806 Including_Libraries set to True.
3807
f3a67cfc
ES
38082009-04-22 Ed Schonberg <schonberg@adacore.com>
3809
3810 * lib-load.ads, lib-load.adb (Make_Child_Decl_Unit): New subprogram, to
3811 create a unit table entry for the subprogram declaration created for a
3812 child suprogram body that has no separate specification.
3813
3814 * sem_ch10.adb (Analyze_Compilation_Unit): For a child unit that is a
3815 subprogram body, call Make_Child_Decl_Unit.
3816
3817 * lib.adb (Get_Cunit_Unit_Number): Verify that an entry not yet in the
3818 table can only be the created specification of a child subprogram body
3819 that is the main unit, which has not been entered in the table yet.
3820
3821 * errout.adb (Output_Messages): Ignore created specification of a
3822 child subprogram body to prevent repeated listing of error messages.
3823
3824 * gnat1drv.adb (gnat1drv): The generated specification for a child
3825 subprogram body does not generate code.
3826
1ef4d0a8
AC
38272009-04-22 Arnaud Charlet <charlet@adacore.com>
3828
3829 * s-bitops.adb, s-bitops.ads (Raise_Error): Do not use Ada 05 syntax,
3830 since this unit is now part of bootstrap units, so must use Ada 95
3831 syntax only.
3832
38332009-04-22 Thomas Quinot <quinot@adacore.com>
3834
3835 * a-tasatt.adb: Minor reformatting
3836
38372009-04-22 Bob Duff <duff@adacore.com>
3838
3839 * s-stalib.ads: Remove "with System;" since we're inside System, so
3840 it's unnecessary.
3841
38422009-04-22 Vincent Celier <celier@adacore.com>
3843
3844 * prj-nmsc.adb (Add_Source): Always put the dependency file name in
3845 the source record, as there may be a dependency file even if no object
3846 file is created.
3847
1cb46af0
RD
38482009-04-22 Robert Dewar <dewar@adacore.com>
3849
1ef4d0a8 3850 * lib-load.adb: Minor reformatting
1cb46af0
RD
3851
3852 * lib-load.ads: Minor reformatting
3853
3854 * sinfo.ads: Minor reformatting
3855
218e53ff
BD
38562009-04-22 Bob Duff <duff@adacore.com>
3857
3858 * exp_pakd.adb: Minor comment fixes.
3859
3860 * sinfo.ads, par-load.adb, sem_ch10.adb, lib-load.ads, lib-load.adb
3861 sem_ch12.adb: Change the meaning of the Library_Unit attribute to
3862 include units containing instantiations, as well as units that are
3863 generic instantiations.
3864
3865 * sem.adb: Include dependents and corresponding specs/bodies in the
3866 unit walk.
3867
3868 * gcc-interface/Make-lang.in:
3869 sem now depends on s-bitops, because of the packed array of Booleans.
3870
feec4372
EB
38712009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3872
3873 * gcc-interface/ada-tree.def: Fix formatting nits.
3874 (REGION_STMT): Delete.
3875 (HANDLER_STMT): Likewise.
3876 * gcc-interface/ada-tree.h: Fix formatting nits.
3877 (IS_STMT): Delete.
3878 (REGION_STMT_BODY): Likewise.
3879 (REGION_STMT_HANDLE): Likewise.
3880 (REGION_STMT_BLOCK): Likewise.
3881 (HANDLER_STMT_ARG): Likewise.
3882 (HANDLER_STMT_LIST): Likewise.
3883 (HANDLER_STMT_BLOCK): Likewise.
3884 * gcc-interface/gigi.h (fp_prec_to_size): Update comment.
3885 (fp_size_to_prec): Likewise.
3886 (largest_move_alignment): Delete.
3887 (gnat_compute_largest_alignment): Likewise.
3888 Fix minor nits.
3889 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
3890 Remove redundant code.
3891 <E_Array_Type>: Remove redundant assert.
3892 <E_Array_Subtype>: Exit early from index computation in pathological
3893 cases.
3894 Rewrite conditional assignment.
3895 (make_type_from_size): Likewise.
3896 * gcc-interface/misc.c (largest_move_alignment): Delete.
3897 (gnat_finish_incomplete_decl): Likewise.
3898 (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Likewise.
3899 (asm_out_file): Likewise
3900 (gnat_print_type) <INTEGER_TYPE>: Fall through to ENUMERAL_TYPE case.
3901 (gnat_dwarf_name): Move around.
3902 * gcc-interface/trans.c (Attribute_to_gnu): Fix minor nits.
3903 (gigi): Remove call to gnat_compute_largest_alignment.
3904 * utils.c (create_field_decl): Rewrite conditional assignment.
3905 Fix minor nits.
3906
a8e05f92
EB
39072009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3908
3909 * gcc-interface/decl.c (gnat_to_gnu_entity): Compute is_type predicate
3910 on entry. Defer common processing for types. Reorder and clean up.
3911 Compute the equivalent GNAT node and the default size for types only.
3912 <E_Modular_Integer_Type>: Directly use Esize for the type's precision.
3913 <E_Access_Type>: For an unconstrained designated type, do not pretend
3914 that a dummy type is always made.
3915 <all> Fix nits in comments.
3916 (validate_size): Fix formatting nits and comments.
3917 (set_rm_size): Likewise.
3918 * gcc-interface/utils.c (create_param_decl): Replace bogus argument
3919 passed to TARGET_PROMOTE_PROTOTYPES hook.
3920
0fb2335d
EB
39212009-04-22 Eric Botcazou <ebotcazou@adacore.com>
3922
3923 * fe.h (Get_External_Name): Declare.
3924 * gcc-interface/gigi.h (concat_id_with_name): Rename to...
3925 (concat_name): ...this.
3926 * gcc-interface/decl.c (gnat_to_gnu_entity): Rename gnu_entity_id to
3927 gnu_entity_name and adjust for above renaming.
3928 <E_Access_Type>: Use create_concat_name to get the name of the various
3929 types associated with unconstrained array types.
3930 (make_aligning_type): Adjust for above renaming.
3931 (maybe_pad_type): Likewise.
a8e05f92 3932 (components_to_record): Likewise. Use get_identifier_with_length for
0fb2335d
EB
3933 the encoding of the variant.
3934 (get_entity_name): Use get_identifier_with_length.
a8e05f92 3935 (create_concat_name): Likewise. Use Get_External_Name if no suffix.
0fb2335d
EB
3936 Do not fiddle with Name_Buffer.
3937 (concat_id_with_name): Rename to...
a8e05f92 3938 (concat_name): ...this. Use get_identifier_with_length. Do not fiddle
0fb2335d
EB
3939 with Name_Buffer.
3940 * gcc-interface/utils.c (rest_of_record_type_compilation): Adjust for
3941 above renaming.
3942
ad41bd84
JM
39432009-04-21 Joseph Myers <joseph@codesourcery.com>
3944
3945 * ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
3946 license notices.
3947
ca80e52b
EB
39482009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3949
3950 * gcc-interface/trans.c (gnat_to_gnu): Do not overwrite location info.
3951
b4680ca1
EB
39522009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3953
71b495a2 3954 * gcc-interface/ada-tree.h (TYPE_RM_SIZE_NUM): Delete.
b4680ca1 3955 (TYPE_RM_SIZE): Access TYPE_LANG_SLOT_1 directly for integral types.
71b495a2
EB
3956 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>:
3957 Remove useless support code for packed array types and assert its
3958 uselessness.
b4680ca1
EB
3959 <E_Signed_Integer_Subtype>: Reuse entity identifier in more places and
3960 adjust for TYPE_RM_SIZE change.
3961 <all> Fix nits in comments. Use Original_Array_Type accessor instead
3962 of Associated_Node_For_Itype accessor for packed array types.
3963 (make_packable_type): Likewise.
3964 (maybe_pad_type): Likewise.
3965 (set_rm_size): Likewise. Rework conditional statement. Adjust for
3966 TYPE_RM_SIZE change.
3967 (make_type_from_size): Adjust for TYPE_RM_SIZE change.
3968 (rm_size): Fix nits in comments. Rework conditional statements.
71b495a2
EB
3969 * gcc-interface/misc.c (gnat_print_type): Adjust for TYPE_RM_SIZE
3970 change.
3971 * gcc-interface/trans.c (Attribute_to_gnu): Fix nits in comments.
3972 * gcc-interface/utils.c (gnat_init_decl_processing): Use more
3973 appropriate function to initialize the size_type_node. Adjust for
3974 TYPE_RM_SIZE change.
b4680ca1 3975
a962b0a1
EB
39762009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3977
3978 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set force_global
3979 for imported subprograms.
3980
2f283818
EB
39812009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3982
3983 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not make
3984 constant objects covered by 13.3(19) volatile.
3985
ac53d5f2
EB
39862009-04-21 Eric Botcazou <ebotcazou@adacore.com>
3987
3988 * gcc-interface/utils.c (create_type_decl): Do not pass declarations
3989 of dummy fat pointer types to the debug back-end.
3990
6e0f0975
EB
39912009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3992
3993 * gcc-interface/decl.c (gnat_to_gnu_entity): Rewrite Esize calculation.
3994 <E_Signed_Integer_Subtype>: Set the RM size on the integer type
3995 before wrapping it up in the record type. Do not overwrite the
3996 Ada size of the record type with the Esize.
3997
c2efda0d
EB
39982009-04-20 Eric Botcazou <ebotcazou@adacore.com>
3999
4000 * gcc-interface/trans.c (unchecked_conversion_lhs_nop): New predicate.
4001 (gnat_to_gnu) <N_Unchecked_Type_Conversion>: Return the expression
4002 if the conversion is on the LHS of an assignment and a no-op.
4003 <all> Do not convert the result to the result type if the Parent
4004 node is such a conversion.
4005
77022fa8
EB
40062009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4007
4008 * gcc-interface/ada-tree.h (DECL_HAS_REP_P): Delete.
4009 * gcc-interface/decl.c (gnat_to_gnu_entity): Add support for extension
4010 of types with unknown discriminants.
4011 (substitute_in_type): Rewrite and restrict to formal substitutions.
4012 * gcc-interface/utils.c (create_field_decl): Do not set DECL_HAS_REP_P.
4013 (update_pointer_to): Update comment.
4014
e69614ad
AC
40152009-04-20 Ed Schonberg <schonberg@adacore.com>
4016
4017 * sem_ch8.adb (Use_One_Package): In an instance, if two
4018 potentially_use_visible and non-overloadable homonyms are available
4019 from the actuals of distinct formal packages, retain the current one,
4020 which was visible in the generic, to prevent spurious visibility
4021 errors.
4022 (End_Use_Package): Restore use_visibility when needed.
4023
40242009-04-20 Sergey Rybin <rybin@adacore.com>
4025
4026 * gnat_ugn.texi, vms_data.ads: Update doc.
4027
32838704
AC
40282009-04-20 Arnaud Charlet <charlet@adacore.com>
4029
4030 * gcc-interface/Make-lang.in: Update dependencies
4031
4032 * gcc-interface/Makefile.in: Link run-time against winsock2 lib under
4033 Windows.
4034
37951d8e
AC
40352009-04-20 Robert Dewar <dewar@adacore.com>
4036
4037 * checks.ads: Fix documentation of range check handling
4038
40392009-04-20 Ed Schonberg <schonberg@adacore.com>
4040
4041 * sem_ch8.adb (Use_One_Type): Use proper entity on warning message for
4042 a redundant use_type clause.
4043
5d5832bc
AC
40442009-04-20 Robert Dewar <dewar@adacore.com>
4045
4046 * sem_attr.adb (Eval_Attribute, case Length): Catch more cases where
4047 this attribute can be evaluated at compile time.
4048 (Eval_Attribute, case Range_Length): Same improvement
4049
4050 * sem_eval.ads, sem_eval.adb (Compile_Time_Compare): New procedure
4051
40522009-04-20 Ed Schonberg <schonberg@adacore.com>
4053
4054 * sem_ch6.adb (Analye_Subprogram_Declaration): Code reorganization,
4055 for better handling of null procedures.
4056 (Check_Overriding_Indicator): Do not emit a warning on a missing
4057 overriding indicator on an operator when the type of which the operator
4058 is a primitive is private.
4059
97a8fb16
AC
40602009-04-20 Bob Duff <duff@adacore.com>
4061
4062 * sem.adb, gnat1drv.adb, debug.adb: Use the -gnatd.W switch to control
4063 debugging output.
4064
40652009-04-20 Robert Dewar <dewar@adacore.com>
4066
4067 * sem_attr.adb: Minor reformatting
4068
4069 * gnatcmd.adb: Minor reformatting
4070
7340e432
AC
40712009-04-20 Ed Schonberg <schonberg@adacore.com>
4072
4073 * sem_ch4.adb (Analyze_User_Defined_Binary_Op): If left operand is
4074 overloaded and one interpretation matches the context, label the
4075 operand with the type of first formal.
4076
40772009-04-20 Bob Duff <duff@adacore.com>
4078
4079 * debug.ads: Minor comment fix.
4080
4081 * debug.adb: Minor comment fixes.
4082
40832009-04-20 Javier Miranda <miranda@adacore.com>
4084
4085 * rtsfind.ads (RE_Null_Id): New entity of package Ada.Exceptions
4086
4087 * exp_ch6.adb (Expand_Inlined_Call): Undo previous patch.
4088
4089 * exp_ch11.adb (Expand_N_Raise_Statement): When the raise stmt
4090 is expanded into a call to Raise_Exception, avoid passing the
4091 exception-name'identity in runtimes in which this argument
4092 is not used.
4093
bf06d37f
AC
40942009-04-20 Jerome Lambourg <lambourg@adacore.com>
4095
4096 * impunit.adb: Add i-cil and i-cilobj packages, now needed by the
4097 generated bindings for cil.
4098
40992009-04-20 Ed Schonberg <schonberg@adacore.com>
4100
4101 * sem_aggr.adb (Resolve_Record_Aggregate): If the type has unknown
4102 discriminants, collect components from the Underlying_Record_View,
4103 which will be used in the expansion of the aggregate into assignments.
4104
4105 * sem_ch3.adb: Do not label derived type with unknown discriminants as
4106 having a private declaration.
4107
58a9d876
AC
41082009-04-20 Ed Schonberg <schonberg@adacore.com>
4109
4110 * exp_util.adb (Expand_Subtype_From_Expr): use the
4111 underlying_record_view when available, to create the proper constrained
4112 subtype for an object of a derived type with unknown discriminants.
4113
41142009-04-20 Javier Miranda <miranda@adacore.com>
4115
4116 * exp_ch6.adb (Expand_Inlined_Call): Avoid generation of temporaries for
4117 formals that have pragma unreferenced.
4118
e34ca162
AC
41192009-04-20 Pascal Obry <obry@adacore.com>
4120
4121 * a-direct.adb (To_Lower_If_Case_Insensitive): Removed.
4122 Remove all calls to To_Lower_If_Case_Insensitive to preserve
4123 the pathname original casing.
4124
41252009-04-20 Robert Dewar <dewar@adacore.com>
4126
4127 * g-trasym.adb: Minor reformatting
4128
4129 * s-os_lib.adb: Minor reformatting
4130
4131 * sem.adb: Minor reformatting
4132 Minor code reorganization
4133
4134 * sem_ch3.adb: Minor reformatting
4135
4136 * sem_ch4.adb: Minor reformatting
4137
4138 * sem_ch8.adb: Minor reformatting
4139
4140 * sem_type.adb: Minor reformatting
4141
ee9aa7b6
AC
41422009-04-20 Javier Miranda <miranda@adacore.com>
4143
4144 * sem_disp.adb (Find_Dispatching_Type): For subprograms internally
4145 generated by derivations of tagged types use the aliased subprogram a
4146 reference to locate their controlling type.
4147
41482009-04-20 Tristan Gingold <gingold@adacore.com>
4149
4150 * g-trasym.adb: Set size of result buffer before calling
4151 convert_address.
4152
41532009-04-20 Ed Schonberg <schonberg@adacore.com>
4154
4155 * sem_ch4.adb (Valid_Candidate): When checking whether a prefixed call
4156 to a function returning an array can be interpreted as a call with
4157 defaulted parameters whose result is indexed, take into account the
4158 types of all the indices of the array result type.
4159
41602009-04-20 Pascal Obry <obry@adacore.com>
4161
4162 * a-direct.adb, s-os_lib.adb: Minor reformatting.
4163
bddd6058
AC
41642009-04-20 Ed Schonberg <schonberg@adacore.com>
4165
4166 * sem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect
4167 null exclusion qualifiers for object renaming declarations.
4168
41692009-04-20 Nicolas Roche <roche@adacore.com>
4170
4171 * sysdep.c (__gnat_localtime_tzoff): on Windows, manipulated times are
4172 unsigned long long. So compare local_time and utc_time before computing
4173 the difference.
4174
41752009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4176
4177 * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
4178 of the Underlying_Record_View before that of the derived type.
4179
4180 * exp_ch3.adb (Expand_Record_Extension): Do not special-case types
4181 with unknown discriminants with regard to the parent subtype.
4182
4f18d860
BD
41832009-04-20 Bob Duff <duff@adacore.com>
4184
4185 * sem.adb (Semantics, Walk_Library_Items): Include dependents of bodies
4186 that are not included. This is necessary if the main unit is a generic
4187 instantiation.
4188
4189 * gnat1drv.adb (Gnat1drv): Comment out the call to Check_Library_Items,
4190 because it doesn't work if -gnatn is used.
4191
5987e59c
AC
41922009-04-20 Ed Schonberg <schonberg@adacore.com>
4193
4194 * rtsfind.adb (RTE, RTE_Record_Component): In
4195 Configurable_Run_Time_Mode, do not enable front-end inlining.
4196
41972009-04-20 Thomas Quinot <quinot@adacore.com>
4198
4199 * g-socthi-vms.adb: Remove now unnecessary WITH clause on
4200 System.Address_To_Access_Conversions.
4201
42022009-04-20 Ed Schonberg <schonberg@adacore.com>
4203
4204 * sem.adb: Guard against ill-formed subunits.
4205
42062009-04-20 Bob Duff <duff@adacore.com>
4207
4208 * output.adb (Flush_Buffer): Do not indent blank lines.
4209 (Ignore_Output): New procedure for output suppression.
4210
42112009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4212
4213 * a-calfor.adb (Image): Subtract 0.5 from the sub second component only
4214 when it is positive. This avoids a potential constraint error raised
4215 by the conversion to Natural.
4216
42172009-04-20 Gary Dismukes <dismukes@adacore.com>
4218
4219 * exp_ch5.adb (Expand_Assign_Array): For the case where the assignment
4220 involves a target that has a specified address, don't set Forward_OK
4221 and Backward_OK to False if the rhs is an aggregate, since overlap
4222 can't occur.
4223
42242009-04-20 Ed Schonberg <schonberg@adacore.com>
4225
451800a0 4226 * sem_ch8.adb (Analyze_Object_Renaming): Reject ambiguous expressions
5987e59c
AC
4227 in an object renaming declaration when the expected type is an
4228 anonymous access type.
4229
4230 * sem_type.adb (Disambiguate): Use anonymousness to resolve a potential
4231 ambiguity when one interpretation is an anonymous access type and the
4232 other is a named access type, and the context itself is anonymous
4233
42342009-04-20 Thomas Quinot <quinot@adacore.com>
4235
4236 * einfo.ads: Minor comment rewording
4237
4238 * sem_aggr.adb: Minor comment rewording
4239
4240 * sem_ch3.adb, sem_ch6.adb: Minor reformatting
4241
42422009-04-20 Pascal Obry <obry@adacore.com>
4243
4244 * adaint.c (__gnat_is_readable_file): Check for file existence
4245 when not using ACL (always the case on remote drives).
4246
8737a29a
AC
42472009-04-20 Robert Dewar <dewar@adacore.com>
4248
4249 * sinfo.ads: Minor comment fixes
4250
4251 * exp_disp.adb: Minor reformatting
4252
4253 * gnat1drv.adb: Minor reformatting
4254
4255 * output.adb: Minor reformatting
4256
4257 * s-vxwext-kernel.ads: Minor reformatting
4258
4259 * sem.ads: Minor reformatting
4260
4261 * sem.adb: Minor reformatting
4262
4263 * sem_elim.adb: Minor reformatting
4264
4265 * uname.ads: Minor reformatting
4266
42672009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4268
4269 * init.c (__gnat_adjust_context_for_raise): On x86{-64}/Linux, add
4270 a small dope of 4 words to the adjustment to the stack pointer.
4271
42722009-04-20 Thomas Quinot <quinot@adacore.com>
4273
4274 * xoscons.adb: generate C header s-oscons.h in
4275 addition to s-oscons.ads.
4276
4277 * socket.c: On VMS, use s-oscons.h.
4278
4279 * sem_ch3.adb: Minor reformatting
4280
4281 * exp_ch9.adb: Minor reformatting
4282
85087bcb
EB
42832009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4284
4285 * gcc-interface/trans.c (check_for_eliminated_entity): Remove.
4286 (Attribute_to_gnu): Do not call check_for_eliminated_entity.
4287 (call_to_gnu): Likewise.
4288
ecc3905a
EB
42892009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4290
4291 * gcc-interface/trans.c (gigi): Declare the name of the compilation
4292 unit as the first global name at the very beginning.
4293
2907036d
TQ
42942009-04-20 Thomas Quinot <quinot@adacore.com>
4295
4296 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
4297 s-oscons-tmplt.c, gsocket.h, g-socthi-mingw.ads, g-socthi.ads,
4298 g-sothco.ads (__gnat_inet_pton): Needs to be enabled for HP-UX as well,
4299 since HP-UX supports neither inet_aton nor inet_pton (altough the
4300 latter is part of the Single UNIX Specification!).
4301 So reorganize code, and share C implementation based on inet_addr(3)
4302 with VMS (instead of having a VMS specific Ada implementation in
4303 g-socthi-vms.adb).
4304
d5063351
AC
43052009-04-20 Gary Dismukes <dismukes@adacore.com>
4306
4307 * osint-c.ads, osint-c.adb (Get_Object_Output_File_Name): New function
4308 to return the object file name saved by Set_Object_Output_File_Name.
4309
43102009-04-20 Emmanuel Briot <briot@adacore.com>
4311
4312 * g-comlin.adb (Initialize_Option_Scan): Fix initialization of parsers
4313 for the standard command line, when argc has been modified since the
4314 start of the application.
4315
43162009-04-20 Thomas Quinot <quinot@adacore.com>
4317
4318 * socket.c (__gnat_inet_pton, Windows case): Adjust return value.
4319 WSAStringToAddress returns 0 for success and SOCKET_ERROR for failure.
4320
3edf2f76
AC
43212009-04-20 Bob Duff <duff@adacore.com>
4322
4323 * gnat1drv.adb (Gnat1drv): Put call to Check_Library_Items inside
4324 pragma Debug.
4325
43262009-04-20 Ed Schonberg <schonberg@adacore.com>
4327
4328 * exp_ch9.adb (Build_Protected_Sub_Specification): Mark generated
4329 subprogram as Eliminated when source operation is.
4330 (Expand_N_Protected_Type_Declaration): Generate protected and
4331 unprotected specs for the internal operations, even if the source
4332 operation is eliminated.
4333
43342009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4335
4336 * exp_ch3.adb (Make_Predefined_Primitive_Specs,
4337 Predefined_Primitive_Bodies): Do not create the declarations and bodies
4338 of the primitive subprograms associated with dispatching select
4339 statements when the runtime is in configurable mode.
4340
43412009-04-20 Ed Falis <falis@adacore.com>
4342
4343 * s-vxwext-kernel.ads (tickGet): Use tick64Get.
4344
4fd1e8b0
AC
43452009-04-20 Thomas Quinot <quinot@adacore.com>
4346
4347 * s-oscons-tmplt.c: Add support for generating a dummy version of
4348 s-oscons.ads providing all possible constants.
4349
4350 * g-socthi-mingw.ads: Fix calling convention for __gnat_inet_pton.
4351
4352 * socket.c (__gnat_inet_pton): On Windows make sure we always use the
4353 ANSI version (not the UNICODE version) of WSAStringToAddress.
4354
43552009-04-20 Pascal Obry <obry@adacore.com>
4356
4357 * adaint.c (__gnat_set_OWNER_ACL): properly free memory
4358 allocated for the security descriptor and make sure all
4359 handles are closed before leaving this procedure.
4360
9013065b
AC
43612009-04-20 Javier Miranda <miranda@adacore.com>
4362
4363 * einfo.ads, einfo.adb (Is_Underlying_Record_View): New subprogram
4364 (Set_Is_Underlying_Record_View): New subprogram
4365
4366 * sem_aggr.adb (Discr_Present, Resolve_Record_Aggregate): In case of
4367 private types with unknown discriminants use the underlying record view
4368 if available.
4369
4370 * sem_ch3.adb (Build_Derived_Private_Type): Enable construction of the
4371 underlying record view in the full view of private types whose parent
4372 has unknown discriminants.
4373 (Build_Derived_Record_Type): Avoid generating the class-wide entity
4374 associated with an underlying record view.
4375 (Derived_Type_Declaration): Avoid deriving parent primitives in
4376 underlying record views.
4377
4378 * sem_ch6.adb (Check_Return_Subtype_Indication): Add support for
4379 records with unknown discriminants.
4380
4381 * sem_type.adb (Covers): Handle underlying record views.
4382 (Is_Ancestor): Add support for underlying record views.
4383
4384 * exp_attr.adb (Expand_Attribute): Expand attribute 'size into a
4385 dispatching call if the type of the target object is tagged and has
4386 unknown discriminants.
4387
4388 * exp_aggr.adb (Resolve_Record_Aggregate): Add support for records with
4389 unknown discriminants.
4390
4391 * exp_disp.adb (Build_Dispatch_Tables): Avoid generating dispatch
4392 tables for internally built underlying record views.
4393
4394 * sprint.adb (sprint_node_actual): Improve output of aggregates with an
4395 empty list of component associations.
4396
43972009-04-20 Thomas Quinot <quinot@adacore.com>
4398
4399 * sem_ch10.adb: Minor reformatting
4400
4401 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
4402 g-socthi-mingw.ads, g-socthi.ads, g-socket.adb
4403 (GNAT.Sockets.Inet_Addr): Do not use non-portable inet_aton, instead use
4404 standard inet_pton API (and emulate it on platforms that do not
4405 support it).
4406 (GNAT.Sockets.Thin.Inet_Pton, VMS case): Implement in terms of
4407 DECC$INET_ADDR, imported in Ada.
4408 (GNAT.Sockets.Thin.Inet_Pton, VxWorks and Windows cases): Use C
4409 implementation provided by GNAT runtime.
4410 (__gnat_inet_pton): C implementation of inet_pton(3) for VxWorks and
4411 Windows.
4412
7289b80c
AC
44132009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4414
4415 * gnat_ugn.texi: Add documentation for -fno-ivopts.
4416
44172009-04-20 Ed Schonberg <schonberg@adacore.com>
4418
4419 * sem_ch10.adb (Analyze_Context): Do not analyze a unit in a
4420 with_clause if it is the main unit.
4421
c09a557e
AC
44222009-04-20 Thomas Quinot <quinot@adacore.com>
4423
4424 * sem_type.adb, ali.adb, erroutc.adb: Minor code reorganization
4425 (no behaviour change): Use Append instead of Increment_Last followed
4426 by assignment.
4427
44282009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4429
4430 * exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate the
4431 declarations of all primitives associated with dispatching asynchronous,
4432 conditional and timed selects when dispaching calls are forbidden and
4433 select statements are not allowed (such as in Ravenscar).
4434 (Predefined_Primitive_Bodies): Ditto for bodies.
4435
4436 * exp_disp.ad (Make_DT): Do not create and populate the
4437 Select_Specific_Data of the dispatch table when dispatching calls are
4438 forbidden and select statements are not allowed (such as in Ravenscar).
4439
44402009-04-20 Robert Dewar <dewar@adacore.com>
4441
4442 * a-tifiio.adb: Minor reformatting
4443
44442009-04-20 Thomas Quinot <quinot@adacore.com>
4445
4446 * g-socthi-vms.adb, g-socket.adb, g-socket.ads: inet_aton(3), unlike
4447 other C library functions, report *failure* with a zero status, and
4448 success with a non-zero status.
4449
44502009-04-20 Bob Duff <duff@adacore.com>
4451
4452 * sem.ads, sem.adb (Walk_Library_Items): New generic procedure.
4453 (Semantics): After analyzing each unit, Append it to the
4454 Comp_Unit_List, if appropriate.
4455
4456 * gnat1drv.adb (Check_Library_Items): New procedure for debugging
4457 purposes.
4458 (Gnat1drv): Correct comment regarding Back_End_Mode.
4459
44602009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4461
4462 * gnat_ugn.texi: Add documentation for -fno-inline-small-functions.
4463
7e728b0f
TQ
44642009-04-20 Thomas Quinot <quinot@adacore.com>
4465
4466 * s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
4467 output.adb, output.ads, s-taprop-hpux-dce.adb,
4468 s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-posix.adb: Minor
4469 reformatting.
4470
5e39baa6
TQ
44712009-04-20 Thomas Quinot <quinot@adacore.com>
4472
4473 * g-socket.adb, g-socket.ads, g-socthi-mingw.ads, g-socthi-vms.adb,
4474 g-socthi-vms.ads, g-socthi-vxworks.ads, g-socthi.ads
4475 (GNAT.Sockets.Thin.C_Inet_Addr): Remove.
4476 (GNAT.Sockets.Thin.Inet_Aton): New function, imported from C library
4477 except for VMS where it is reimplemented in Ada using DECC$INET_ADDR.
4478 (GNAT.Sockets.Inet_Addr): Use inet_aton(3) instead of inet_addr(3).
4479
4480 * debug.adb: Fix typo
4481
4482 * gnat_rm.texi: Minor doc fix.
4483
4484 * sem_ch7.adb, freeze.adb: Minor reformatting
4485
3568b271
AC
44862009-04-20 Thomas Quinot <quinot@adacore.com>
4487
4488 * g-socket.ads: Add new constants:
4489 Loopback_Inet_Addr
4490 Unspecified_Group_Inet_Addr
4491 All_Hosts_Group_Inet_Addr
4492 All_Routers_Group_Inet_Addr
4493
4494 * s-oscons-tmplt.c, g-sttsne-vxworks.adb (System.OS_Constants): Add
4495 ERANGE (Result too large).
4496 (GNAT.Sockets.Thin.Task_Safe_NetDB, VxWorks version): Add missing
4497 propagation of errno to caller.
4498
44992009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4500
4501 * a-calend.adb, a-calend-vms.adb: Increase the number of leap seconds
4502 to 24. Increment Leap_Seconds_Count and add an entry to aggregate
4503 Leap_Second_Times.
4504
45052009-04-20 Gary Dismukes <dismukes@adacore.com>
4506
4507 * sem_elim.ads (Check_For_Eliminated_Subprogram): New procedure for
4508 checking for references to eliminated subprograms that should be
4509 flagged.
4510 (Eliminate_Error_Message): Update comment to say "references" rather
4511 than "calls" (since attribute cases are handled here as well).
4512
4513 * sem_elim.adb (Check_For_Eliminated_Subprogram): New procedure for
4514 checking for references to eliminated subprograms that should be
4515 flagged. Add with and use of Sem and Sem_Util.
4516
4517 * sem_res.adb (Resolve_Call): Reject calls to eliminated subprograms.
4518 Add with and use of Sem_Elim.
4519
4520 * sem_attr.adb (Analyze_Access_Attribute): Reject access attributes
4521 applied to eliminated subprograms.
4522 (Analyze_Attribute): Reject 'Address and 'Code_Address applied to
4523 eliminated subprograms.
4524 Add with and use of Sem_Elim.
4525
4526 * sem_disp.adb (Check_Dispatching_Call): Remove error check for calls
4527 to eliminated subprograms, now handled during Resolve_Call.
4528 Remove with and use of Sem_Elim.
4529
4530 * exp_disp.adb (Make_DT): Get Ultimate_Alias of primitive before
4531 testing Is_Eliminated, for proper handling of primitive derived from
4532 eliminated subprograms.
4533
45342009-04-20 Vincent Celier <celier@adacore.com>
4535
4536 * mlib-prj.adb (Build_Library): Use the shared library linker, if one
4537 has been declared (Library_GCC or Linker'Driver), for the driver name.
4538
4539 * prj-nmsc.adb (Process_Linker): If Library_GCC is not declared and
4540 Linker'Driver is, use Linker'Driver as the shared library linker.
4541 (Process_Project_Level_Simple_Attributes): Issue a warning if attribute
4542 Library_GCC is declared.
4543 (Check_Library_Attributes): Set up the shared linker driver: either
4544 Library_GCC or Linker'Driver. Issue a warning if Library_GCC is
4545 declared.
4546
6e55ac7a
TQ
45472009-04-20 Thomas Quinot <quinot@adacore.com>
4548
4549 * g-socket.ads (Send_Socket): Fix misleading comment.
4550
68218f7c
AC
45512009-04-20 Arnaud Charlet <charlet@adacore.com>
4552
4553 * switch-c.adb (Scan_Front_End_Switches): Disable inspector mode in
4554 ASIS mode.
4555
45562009-04-20 Geert Bosch <bosch@adacore.com>
4557
4558 * a-tifiio.adb (Put): Avoid generating too many digits for certain
4559 fixed types with smalls that are neither integer or the reciprocal
4560 of an integer.
4561
45622009-04-20 Bob Duff <duff@adacore.com>
4563
4564 * uname.ads: Minor comment fix.
4565
4566 * types.ads: Minor comment fix.
4567
262991d8
PO
45682009-04-20 Pascal Obry <obry@adacore.com>
4569
4570 * adaint.c (__gnat_get_libraries_from_registry): Fix code to
4571 avoid warning. At the same time fix a memory leak.
4572
4573 * osint.adb (Get_Libraries_From_Registry): Properly free memory
4574 returned by the above routine.
4575
d0f8d157
AC
45762009-04-20 Robert Dewar <dewar@adacore.com>
4577
4578 * s-conca5.adb, s-conca5.ads, s-conca7.adb, s-conca7.ads, s-conca9.adb,
4579 s-conca9.ads, rtsfind.ads, s-conca2.adb, s-conca2.ads, s-conca4.adb,
4580 s-conca4.ads, s-conca6.adb, s-conca6.ads, s-conca8.adb, s-conca8.ads,
4581 s-conca3.adb, s-conca3.ads (Str_Concat_Bounds_x): New functions.
4582
4583 * exp_ch4.adb (Expand_Concatenate): Minor code reorganization
4584
45852009-04-20 Pascal Obry <obry@adacore.com>
4586
4587 * initialize.c (__gnat_initialize): Add braces to kill warning.
4588
262991d8 4589 * adaint.c: Minor reformatting, remove trailing spaces.
d0f8d157 4590
34c25b32
AC
45912009-04-17 Arnaud Charlet <charlet@adacore.com>
4592
4593 * gcc-interface/Make-lang.in: Update dependencies.
4594
9549767b
AC
45952009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4596
4597 * adaint.h (__gnat_lwp_self): Declare on Linux.
4598
4599 * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'.
4600
46012009-04-20 Robert Dewar <dewar@adacore.com>
4602
4603 * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement
4604 front-end part of -fpreserve-control-flow switch.
4605
d7f94401
AC
46062009-04-20 Bob Duff <duff@adacore.com>
4607
4608 * rtsfind.adb: Minor comment fix
4609
46102009-04-20 Robert Dewar <dewar@adacore.com>
4611
4612 * exp_aggr.adb: Minor reformatting
4613 Minor code reorganization (use Nkind_In)
4614
4615 * g-socket.adb: Minor reformatting
4616
4617 * g-socket.ads: Minor comment fix
4618
4619 * s-auxdec.ads: Minor comment and organization update.
4620
4621 * s-auxdec-vms_64.ads: Minor comment and organization update.
4622
4623 * sem_ch10.adb: Minor addition of ??? comment
4624
4625 * sem_disp.adb: Minor reformatting
4626
f8b86c2d
AC
46272009-04-20 Ed Schonberg <schonberg@adacore.com>
4628
4629 * inline.adb (Add_Inlined_Subprogram): Do not place on the back-end
4630 list a caller of an inlined subprogram, if the caller itself is not
4631 called.
4632
46332009-04-20 Pascal Obry <obry@adacore.com>
4634
4635 * adaint.c: Disable use of ACL on network drives.
4636
46372009-04-20 Arnaud Charlet <charlet@adacore.com>
4638
4639 * gnat_ugn.texi: Add examples.
4640
efec4f2a
TQ
46412009-04-20 Thomas Quinot <quinot@adacore.com>
4642
4643 * g-socket.ads (Abort_Selector): Clarify documentation.
4644
ff2e7c1e
AC
46452009-04-20 Arnaud Charlet <charlet@adacore.com>
4646
4647 * opt.ads (Inspector_Mode): Update documentation of this flag.
4648
46492009-04-20 Thomas Quinot <quinot@adacore.com>
4650
4651 * g-socket.ads: Minor reformatting
4652
4653 * socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to
4654 consider S_resolvLib error codes since we only use the hostLib wrappers.
4655
46562009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4657
4658 * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
4659 of the Underlying_Record_View after that of the derived type.
4660
26a43556
AC
46612009-04-20 Arnaud Charlet <charlet@adacore.com>
4662
4663 * switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining
4664 in inspector mode.
4665
46662009-04-20 Javier Miranda <miranda@adacore.com>
4667
4668 * sem_ch6.adb (New_Overloaded_Entity): Minor reformating.
4669
4670 * sem_ch6.ads (Subtype_Conformant, Type_Conformant): Add missing
4671 documentation.
4672
4673 * exp_aggr.adb (Build_Record_Aggr_Code): Code cleanup.
4674
4675 * sem_disp.adb
4676 (Check_Dispatching_Operation): Set attribute Is_Dispatching_Operation
4677 in internally built overriding subprograms.
4678
46792009-04-20 Doug Rupp <rupp@adacore.com>
4680
4681 * s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types.
4682
4683 * s-auxdec.ads: Likewise
4684
46852009-04-20 Ed Schonberg <schonberg@adacore.com>
4686
4687 * sem_ch3.adb (Find_Type_Name): Reject the completion of a private
4688 type by an interface.
4689
4690 * exp_ch6.adb (Expand_Call): Inline To_Address unconditionally, to
4691 minimze difference in expanded tree when compiled as spec of the main
4692 unit, or as a spec in the context of another unit.
4693
3f25c54d
AC
46942009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
4695
4696 * a-calend.adb: Remove types char_Pointer, int, tm and tm_Pointer.
4697 (localtime_tzoff): This routine no longer accepts an actual of type
4698 tm_Pointer.
4699 (UTC_Time_Offset): Remove local variable Secs_TM.
4700
4701 * sysdep.c (__gnat_localtime_tzoff): This routine no longer accepts an
4702 actual of type struct tm*. Add local variable of type struct tm for all
4703 targets that provide localtime_r and need to invoke it.
4704
47052009-04-20 Thomas Quinot <quinot@adacore.com>
4706
4707 * s-oscons-tmplt.c, g-socket.adb, g-socket.ads
4708 (GNAT.Sockets.Resolve_Error): Add case of EPIPE
4709 Add case of EAGAIN for platforms where it is not equal to EWOULDBLOCK
4710
8dbf3473
AC
47112009-04-20 Robert Dewar <dewar@adacore.com>
4712
4713 * sem_ch3.adb: Minor reformatting
4714
4715 * lib-load.adb: Minor reformatting
4716
4717 * sem_ch4.adb: Minor reformatting
4718
47192009-04-20 Robert Dewar <dewar@adacore.com>
4720
4721 * namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec
4722 (equal values => False).
4723
47242009-04-20 Ed Schonberg <schonberg@adacore.com>
4725
4726 * exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls
4727 to null procedures can be inlined unconditionally.
4728
56fe7b05
EB
47292009-04-20 Eric Botcazou <ebotcazou@adacore.com>
4730
4731 * gcc-interface/trans.c (call_to_gnu): When creating the copy for a
4732 non-addressable parameter passed by reference, do not convert the
4733 actual if its type is already the nominal type, unless it is of
4734 self-referential size.
4735
9fcf2a0b
AC
47362009-04-20 Arnaud Charlet <charlet@adacore.com>
4737
4738 * gnat_ugn.texi: Fix typos.
4739
47402009-04-20 Robert Dewar <dewar@adacore.com>
4741
4742 * debug.adb, gnat1drv.adb, sem_ch13.adb: Add circuitry to
4743 Validate_Unchecked_Warnings to suppress warnings about size or
4744 alignment or extra bits if either type involved has pragma Warnings
4745 (Off) set for the type entity.
4746
f7ebc6a8
EB
47472009-04-19 Eric Botcazou <ebotcazou@adacore.com>
4748
4749 * gcc-interface/trans.c (gigi): Make the special IA-64 descriptor type
4750 a builtin type and give it a name.
4751
105ab5db
DN
47522009-04-17 Diego Novillo <dnovillo@google.com>
4753
4754 * gcc-interface/misc.c (gnat_expand_expr): Remove.
4755 (LANG_HOOKS_EXPAND_EXPR): Remove.
4756
03b64787
AC
47572009-04-17 Robert Dewar <dewar@adacore.com>
4758
4759 * sem_ch3.adb: Minor reformatting
4760
47612009-04-17 Pascal Obry <obry@adacore.com>
4762
4763 * adaint.c: Add __gnat_use_acl global variable to control use of ACL.
4764
054275e4
ES
47652009-04-17 Ed Schonberg <schonberg@adacore.com>
4766
4767 * sem_ch3.adb (Build_Derived_Enumeration_Type): Diagnose properly
4768 illegal constraints on type derived from formal discrete types.
4769
aed6fda8
TQ
47702009-04-17 Thomas Quinot <quinot@adacore.com>
4771
4772 PR ada/35953
4773
4774 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
4775 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
4776 g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb,
4777 g-socket.ads (GNAT.Sockets.Thin.C_Send,
4778 GNAT.Sockets.Thin.Syscall_Send): Remove unused subprograms.
4779 Replace calls to send(2) with equivalent sendto(2) calls.
4780 (GNAT.Sockets.Send_Socket): Factor common code in inlined subprogram.
4781 (GNAT.Sockets.Write): Account for the case of hyper-empty arrays, do not
4782 report an error in that case. Factor code common to the two versions
4783 (datagram and stream) in common routine Stream_Write.
4784
c5d91669
AC
47852009-04-17 Robert Dewar <dewar@adacore.com>
4786
4787 * exp_disp.adb: Minor reformatting
4788 Minor code reorganization (use Nkind_In)
4789
4790 * prepcomp.adb: Minor reformatting
4791
4792 * sem_ch3.adb: Minor reformatting
4793
4794 * sem_res.adb: Minor comment addition
4795
4796 * exp_ch5.adb (Expand_Assign_Array): Use Has_Address_Clause to test
4797 for address clause
4798
4799 * lib-xref.adb (Generate_Reference): Exclude recursive calls from
4800 setting Is_Referenced
4801
4802 * types.ads: Minor reformatting
4803
48042009-04-17 Arnaud Charlet <charlet@adacore.com>
4805
4806 * gnat_ugn.texi: Initial documentation on binding generator.
4807
39f346aa
ES
48082009-04-17 Ed Schonberg <schonberg@adacore.com>
4809
4810 * einfo.ads, einfo.adb: New attribute Underlying_Record_View, to handle
4811 type extensions whose parent is a type with unknown discriminants.
4812
4813 * exp_aggr.adb (Expand_Record_Aggregate): If the type of an extension
4814 aggregate has unknown discriminants, use the Underlying_Record_View to
4815 obtain the discriminants of the ancestor part.
4816
4817 * exp_disp.adb (Build_Dispatch_Tables): Types that are
4818 Underlying_Record_Views share the dispatching information of the
4819 original record extension.
4820
4821 * exp_ch3.adb (Expand_Record_Extension): If the type inherits unknown
4822 discriminants, propagate dispach table information to the
4823 Underlying_Record_View.
4824
4825 * sem_ch3.adb (Build_Derived_Private_Type): If parent type has unknown
4826 discriminants and declaration is not a completion, generate
4827 Underlying_Record_View to provide proper discriminant information to
4828 the front-end and to gigi.
4829
8c64de1e
RD
48302009-04-17 Robert Dewar <dewar@adacore.com>
4831
4832 * s-conca5.adb, g-sercom.adb, s-conca5.ads, s-conca7.adb, exp_imgv.adb,
4833 s-conca7.ads, s-crc32.adb, s-crc32.ads, s-conca9.adb, s-conca9.ads,
4834 s-addope.adb, i-cstrin.ads, s-addope.ads, s-carun8.adb, s-carun8.ads,
4835 g-htable.ads, g-hesora.adb, g-hesora.ads, s-htable.adb, s-htable.ads,
4836 s-conca2.adb, s-conca2.ads, a-except.adb, s-conca4.adb, a-except.ads,
4837 s-conca4.ads, s-except.adb, s-except.ads, s-conca6.adb, s-conca6.ads,
4838 g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads, s-conca8.adb,
4839 s-conca8.ads, g-byorma.adb, g-byorma.ads, s-memory.adb, s-memory.ads,
4840 g-speche.adb, g-speche.ads, g-stsifd-sockets.adb, exp_dist.adb,
4841 s-imgenu.adb, s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-exctab.adb,
4842 s-exctab.ads, s-imenne.adb, s-imenne.ads, s-casuti.adb, osint.adb,
4843 s-assert.adb, s-casuti.ads, s-assert.ads, s-os_lib.adb, s-conca3.adb,
4844 s-conca3.ads: Remove unneeded pragma Warnings
4845
74e63df1
RD
48462009-04-17 Robert Dewar <dewar@adacore.com>
4847
4848 * g-moreex.adb: Add comments.
4849
4850 * s-auxdec.ads: Add ??? comment for uncommented pragma Warnings (Off)
4851
4852 * s-auxdec-vms_64.ads: Add ??? comment for uncommented pragma
4853 Warnings (Off)
4854
4855 * prepcomp.adb: Add ??? comment
4856
4857 * a-tasatt.adb: Minor reformatting
4858
4859 * g-trasym-vms-alpha.adb: Add ??? comment
4860
4861 * g-trasym-vms-ia64.adb: Add ??? comment
4862
4863 * xoscons.adb: Minor reformatting
4864
4865 * s-tassta.adb: Minor reformatting
4866
4867 * s-scaval.adb: Add ??? comment
4868
4869 * stand.ads: Minor code clean up (remove junk with of Namet)
4870
4871 * s-strcom.adb, s-strcom.ads, s-string.adb, s-string.ads, s-sopco3.adb,
4872 s-sopco3.ads, s-strops.adb, s-strops.ads, s-sopco5.adb, s-sopco5.ads,
4873 s-wchcnv.adb, s-wchcnv.ads, s-ststop.adb, s-ststop.ads, s-soflin.adb,
4874 s-soflin.ads, s-traceb.adb, s-traceb.ads, s-traent.adb, s-traent.ads,
4875 s-secsta.adb, s-secsta.ads, s-utf_32.adb, s-utf_32.ads, s-wchcon.adb,
4876 s-wchjis.adb, s-wchcon.ads, s-wchjis.ads, s-sopco4.adb, s-sopco4.ads,
4877 s-stache.adb, s-stache.ads, s-stoele.adb, s-stoele.ads, s-stalib.adb,
4878 s-stalib.ads, s-os_lib.ads, s-purexc.ads: Remove no longer needed
4879 Warnings off pragmas.
4880
df416fb0
AC
48812009-04-17 Pascal Obry <obry@adacore.com>
4882
4883 * initialize.c: Fix test for reallocating the arguments array.
4884
48852009-04-17 Geert Bosch <bosch@adacore.com>
4886
4887 * exp_fixd.adb (Expand_Convert_Float_To_Fixed): Have float to fixed
4888 conversion truncate only for decimal fixed point types.
4889
48902009-04-17 Jerome Lambourg <lambourg@adacore.com>
4891
4892 * g-comlin.adb (Initialize_Scan_Option): Make sure the sections are
4893 reinitialized.
4894
01cd0938
AC
48952009-04-17 Robert Dewar <dewar@adacore.com>
4896
4897 * exp_ch5.adb (Expand_Assign_Array): Do not set Forwards_OK and
4898 Backwards_OK if either operand has an address clause.
4899
49002009-04-17 Pascal Obry <obry@adacore.com>
4901
4902 * initialize.c: Code clean up, use realloc.
4903
46e26fe3
PO
49042009-04-17 Pascal Obry <obry@adacore.com>
4905
4906 * initialize.c: Do not get Unicode command line if Unicode support not
4907 activated.
4908 Add support for wildcard expansion for Unicode parameters on Win32.
4909
4910 * mingw32.h: Add missing macros when Unicode support not activated.
4911
b20de9b9
AC
49122009-04-17 Javier Miranda <miranda@adacore.com>
4913
4914 * sem_ch6.adb (Check_Anonymous_Return): Add missing checks to
4915 avoid generating code that references the Current_Master
4916 when compiling without tasks.
4917
49182009-04-17 Vincent Celier <celier@adacore.com>
4919
4920 * prj-attr.adb: New project level attribute Target
4921
4922 * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
4923 attribute Target
4924
4925 * prj.ads (Project_Configuration): New component Target
4926
a8f59a33
AC
49272009-04-17 Thomas Quinot <quinot@adacore.com>
4928
4929 * exp_ch7.adb (Expand_Ctrl_Function_Call): Remove incorrect special
4930 case for the case of an aggregate component, the attach call for the
4931 result is actually needed.
4932
4933 * exp_aggr.adb (Backend_Processing_Possible): Backend processing for
4934 an array aggregate must be disabled if the component type requires
4935 controlled actions.
4936
4937 * exp_ch3.adb: Minor reformatting
4938
49392009-04-17 Bob Duff <duff@adacore.com>
4940
4941 * output.ads (Indent,Outdent): New procedures for indenting the output.
4942 (Write_Char): Correct comment -- LF _is_ allowed.
4943
4944 * output.adb (Indent,Outdent): New procedures for indenting the output.
4945 Keep track of the indentation level, and make sure it doesn't get too
4946 high.
4947 (Flush_Buffer): Insert spaces at the beginning of each line, if
4948 indentation level is nonzero.
4949 (Save_Output_Buffer,Restore_Output_Buffer): Save and restore the current
4950 indentation level.
4951 (Set_Standard_Error,Set_Standard_Output): Remove superfluous
4952 "Next_Col := 1;". Flush_Buffer does that.
4953
4954 * sem_ch6.adb, sem_ch7.adb (Debug_Flag_C): Reorganize the output
4955 controlled by the -gnatdc switch. It now occurs on entry/exit to the
4956 relevant analysis routines, and calls Indent/Outdent to make the
4957 indentation reflect the nesting level. Add "helper" routines, since
4958 otherwise lots of "return;" statements would skip the debugging output.
4959
49602009-04-17 Arnaud Charlet <charlet@adacore.com>
4961
4962 * s-taprop-tru64.adb, s-taprop-vms.adb, s-taprop-linux.adb,
4963 s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop-hpux-dce.adb,
4964 s-taprop-posix.adb (Suspend_Until_True): Protect against early wakeup.
4965
32beb1f3
AC
49662009-04-17 Thomas Quinot <quinot@adacore.com>
4967
4968 * exp_aggr.adb: Minor code reorganization, no behaviour change.
4969
49702009-04-17 Ed Schonberg <schonberg@adacore.com>
4971
4972 * sem_ch8.adb (Use_One_Type): Handle properly a redundant use type
4973 clause in a unit that is a package body or a subunit, when the previous
4974 clause appears in a spec or a parent.
4975
36c73552
AC
49762009-04-17 Thomas Quinot <quinot@adacore.com>
4977
4978 * sinfo.ads, exp_aggr.adb, exp_aggr.ads: Minor reformatting
4979
4980 * exp_ch7.adb: Minor reformatting
4981
49822009-04-17 Bob Duff <duff@adacore.com>
4983
4984 * exp_ch4.adb (Expand_Allocator_Expression): In an initialized
4985 allocator, check that the expression of the qualified expression obeys
4986 the constraints of the subtype of the qualified expression.
4987
49882009-04-17 Thomas Quinot <quinot@adacore.com>
4989
4990 * sprint.adb (Write_Itype): Add handling of enumeration subtypes.
4991
cac5a801
AC
49922009-04-17 Ed Schonberg <schonberg@adacore.com>
4993
4994 * exp_ch4.adb (Expand_Allocator_Expression): Apply constraint check to
4995 aggregate, using context imposed by subtype mark in allocator.
4996
49972009-04-17 Pascal Obry <obry@adacore.com>
4998
4999 * gnat_rm.texi: Document GNAT_CODE_PAGE environment variable
5000
03f050b6
AC
50012009-04-17 Nicolas Roche <roche@adacore.com>
5002
5003 * initialize.c (__gnat_initialize): remove MAX_PATH limitation on each
5004 argument length.
5005
50062009-04-17 Gary Dismukes <dismukes@adacore.com>
5007
5008 * sem_elim.adb (Eliminate_Error_Msg): Minor change to error message to
5009 cover both calls and attribute references ("call" => "reference").
5010
50112009-04-17 Ed Schonberg <schonberg@adacore.com>
5012
5013 * sem_ch3.adb (Analyze_Subtype_Declaration): A subtype of an access
5014 type for which Storage_Size is set to 0 is legal in a pure unit.
5015
bf327c92
AC
50162009-04-17 Thomas Quinot <quinot@adacore.com>
5017
5018 * exp_ch7.adb: Minor reformatting
5019
50202009-04-17 Robert Dewar <dewar@adacore.com>
5021
5022 * restrict.adb (Check_Restriction_No_Dependence): Don't check
5023 restriction if outside main extended source unit.
5024
5025 * sem_ch10.adb (Analyze_With_Clause): Check No_Dependence restriction
5026 for parents of child units as well as the child unit itself.
5027
50282009-04-17 Bob Duff <duff@adacore.com>
5029
5030 * checks.ads: Minor comment fix
5031
5032 * exp_aggr.ads: Minor comment fix
5033
50342009-04-17 Nicolas Roche <roche@adacore.com>
5035
5036 * adaint.c: Improve cross compiler detection and handling.
5037
ffec8e81
AC
50382009-04-17 Eric Botcazou <ebotcazou@adacore.com>
5039
5040 * exp_ch4.adb (Expand_Concatenation): Do not use calls at -Os.
5041
50422009-04-17 Pascal Obry <obry@adacore.com>
5043
5044 * mingw32.h: Add S2WSC and WS2SC macros to convert to/from
5045 CurrentCodePage.
5046
5047 * adaint.h: Encoding_Unspecified is now defined. Corresponds to the
5048 value when no encoding form paramter is set on Text_IO services.
5049
5050 * adaint.c: CurrentCodePage new variable on Windows.
5051 Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
5052 ones.
5053
5054 * mkdir.c: Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
5055 ones.
5056
5057 * initialize.c: Initialize CurrentCodePage depending on GNAT_CODE_PAGE
5058 environment variable value. Default is UTF-8.
5059
5060 * s-crtl.ads: Filename_Encoding add Unspecified in the enumeration type.
5061 fopen and freopen encoding parameter is now set to Unspecified.
5062 The default value is in this case UTF-8 (as it was before) but
5063 use the new macros that convert to/from the code page set
5064 at runtime (CurrentCodePage).
5065
5066 * s-fileio.adb: When no encoding specified use Unspecified value.
5067
50682009-04-17 Ed Schonberg <schonberg@adacore.com>
5069
5070 * atree.adb, atree.ads: Remove dead code.
5071
432e3422
AC
50722009-04-17 Arnaud Charlet <charlet@adacore.com>
5073
5074 * gcc-interface/Make-lang.in: Update dependencies.
5075
f3b01cd9
AC
50762009-04-17 Ed Schonberg <schonberg@adacore.com>
5077
5078 * sem_ch3.adb (Access_Subprogram_Definition): Additional checks on
5079 illegal uses of incomplete types in formal parts and return types.
5080
5081 * sem_ch6.adb (Process_Formals): Taft-amendment types are legal in
5082 access to subprograms.
5083
5084 * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to use
5085 Taft-amendment types as the return type of an access_to_function type.
5086
5087 * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
5088 type for access_to_subprograms. The check is performed on package exit.
5089
50902009-04-17 Ed Schonberg <schonberg@adacore.com>
5091
5092 * atree.ads, atree.adb: Move New_Copy_Tree.to sem_util.
5093
5094 * nlists.ads, nlists.adb: Move New_Copy_List to sem_util.
5095
5096 * lib-load.adb: Use Copy_Separate_Tree rather than New_Copy_Tree
5097
5098 * sem_util.ads, sem_util.adb: New_Copy_Tree and New_Copy_List belong in
5099 semantic units, because the handling of itypes in the copied tree
5100 requires semantic information that does not belong in atree.
5101
51022009-04-17 Robert Dewar <dewar@adacore.com>
5103
5104 * par-ch6.adb: Minor reformatting
5105
5106 * prj.adb: Minor reformatting
5107
618fb570
AC
51082009-04-17 Gary Dismukes <dismukes@adacore.com>
5109
5110 * par-ch6.adb (P_Subprogram): Overriding indicators should be allowed
5111 on protected subprogram bodies, so exclude the case where Pf_Flags is
5112 Pf_Decl_Pbod from the error check.
5113
5114 * par-ch9.adb (P_Protected_Operation_Items): Permit overriding
5115 indicators on subprograms in protected bodies, and proceed with parsing
5116 the subprogram.
5117
5118 * sem_ch6.adb (Verify_Overriding_Indicator): Exclude protected
5119 subprograms from the check for primitiveness on subprograms with
5120 overriding indicators.
5121 (Check_Overriding_Indicator): Include protected subprograms in the
5122 style check for missing overriding indicators.
5123
51242009-04-17 Tristan Gingold <gingold@adacore.com>
5125
5126 * init.c: Fix stack checking for x86 Darwin.
5127
51282009-04-17 Vincent Celier <celier@adacore.com>
5129
5130 * prj-attr.adb: New project level attribute Object_File_Suffix
5131 (<language>).
5132
5133 * prj-nmsc.adb (Add_Source): Use the object file suffix to get the
5134 object file name
5135 (Process_Compiler): Process attribute Object_File_Suffix
5136
5137 * prj.adb (Object_Name): Use suffix Object_File_Suffix instead of
5138 platform suffix, when specified.
5139
5140 * prj.ads (Language_Config): New component Object_File_Suffix,
5141 defaulted to No_Name.
5142 (Object_Name): New parameter Object_File_Suffix, defaulted to No_Name
5143
5144 * snames.ads-tmpl: New standard name Object_File_Suffix
5145
93bcda23
AC
51462009-04-17 Robert Dewar <dewar@adacore.com>
5147
5148 * gnat_rm.texi: Add documentation about No_Streams restriction
5149
5150 * sem_attr.adb (Check_Stream_Attribute): Exclude implicit stream
5151 attributes when checking No_Streams restriction.
5152
51532009-04-17 Thomas Quinot <quinot@adacore.com>
5154
5155 * rtsfind.ads (RE_Request_Destroy): New PolyORB s-parint entity.
5156
5157 * exp_dist.adb (PolyORB_Support.Build_General_Calling_Stubs): Add
5158 missing calls to RE_Request_Destroy to deallocate request objects after
5159 use.
5160
51612009-04-17 Nicolas Setton <setton@adacore.com>
5162
5163 * link.c: Fix support for passing a response file under Darwin.
5164
51652009-04-17 Emmanuel Briot <briot@adacore.com>
5166
5167 * prj.adb (Free): new subprogram.
5168
51692009-04-17 Ed Schonberg <schonberg@adacore.com>
5170
5171 * sem_ch3.adb: additional initialization on incomplete subtypes.
5172
5173 * sem_ch6.adb (Process_Formals): if the subprogram is in the private
5174 part and one of the formals is an incomplete tagged type, attach to
5175 list of private dependends of the type for later validation.
5176
5177 * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to declare
5178 primitive operations of a Taft-amendmment type.
5179
5180 * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
5181 type. The check is performed on package exit, possibly after the
5182 subprogram is frozen.
5183
51842009-04-17 Vincent Celier <celier@adacore.com>
5185
5186 * prj-nmsc.adb (Get_Directories): Get the object and exec directory
5187 before looking for source directories, but make sure that there are nil
5188 if they are not explicitely declared and there is explicitely no
5189 sources in the project.
5190
ba4a2f78 51912009-04-17 Pascal Obry <obry@adacore.com>
78246a6e 5192
ba4a2f78 5193 * initialize.c: Set gnat_argv with UTF-8 encoded strings on Windows.
78246a6e 5194
ba4a2f78 5195 * init.c: Fix minor typo and style fix.
ee00428a 5196
ba4a2f78 51972009-04-17 Robert Dewar <dewar@adacore.com>
ee00428a 5198
ba4a2f78 5199 * a-except.adb, a-except-2005.adb: Add PE_Address_Of_Intrinsic
ee00428a 5200
ba4a2f78
AC
5201 * sem_attr.adb (Analyze_Attribute, case Address): Use
5202 PE_Address_Of_Intrinsic.
5203
5204 * types.ads: Add PE_Address_Of_Intrinsic
5205
5206 * types.h: Add PE_Address_Of_Intrinsic
5207
52082009-04-17 Nicolas Setton <setton@adacore.com>
5209
5210 * gcc-interface/Makefile.in: Under darwin, build shared libraries
5211 with install_name starting with "@rpath/".
ee00428a
AC
5212
52132009-04-17 Nicolas Setton <setton@adacore.com>
5214
5215 * link.c: Add darwin section
5216
9fbb3ae6
AC
52172009-04-16 Robert Dewar <dewar@adacore.com>
5218
5219 * g-pehage.adb: Minor reformatting
5220
5221 * sem_ch12.adb: Minor reformatting
5222
5223 * exp_dist.adb: Minor reformatting
5224
5225 * bindgen.adb: Minor style fixes.
5226
52272009-04-16 Ed Schonberg <schonberg@adacore.com>
5228
5229 * sem_eval.adb (Eval_Indexed_Component): Extend constant-folding of
5230 indexed components to the case where the prefix is a static string
5231 literal.
5232
52332009-04-16 Javier Miranda <miranda@adacore.com>
5234
5235 * exp_ch3.adb (Expand_N_Object_Declaration): In case of build-in-place
5236 objects avoid any further expansion of the expression initializing the
5237 object.
5238
c1c5e0fa
AC
52392009-04-16 Ed Schonberg <schonberg@adacore.com>
5240
5241 * sem_ch12.adb (Preanalyze_Actuals): If the instance is a child unit
5242 that hides an outer homograph, make that homograph invisible when
5243 analyzing the actuals, to to prevent illegal direct visibility on it.
5244
52452009-04-16 Eric Botcazou <ebotcazou@adacore.com>
5246
5247 * g-pehage.adb (Initialize): Fix off-by-one error.
5248
d15d61c6
AC
52492009-04-16 Tristan Gingold <gingold@adacore.com>
5250
5251 * init.c: Detect real stack overflow on Darwin.
5252
5253 * system-darwin-x86.ads: Use stack probing on darwin x86.
5254
52552009-04-16 Ed Schonberg <schonberg@adacore.com>
5256
5257 * sem_attr.adb (Analyze_Attribute, case 'Address): It is illegal to
5258 take the address of an intrinsic subprogram.
5259
0a0a18c3
AC
52602009-04-16 Arnaud Charlet <charlet@adacore.com>
5261
5262 * gcc-interface/Makefile.in: Change g-trasym to g-trasym-unimplemented
5263 for the targets where GNAT.Traceback.Symbolic is not supported.
5264
d15d61c6
AC
52652009-04-16 Vincent Celier <celier@adacore.com>
5266
5267 * g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: New file.
5268
5269 * g-trasym.ads: Update comments.
5270
52712009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
5272
5273 * tracebak.c (STOP_FRAME): Verify validity of the current address
5274 before dereferencing.
5275
b61ebe4f
AC
52762009-04-16 Ed Schonberg <schonberg@adacore.com>
5277
5278 * sprint.adb (Write_Itype): If the itype is an array subtype, preserve
5279 the original location of the index expressions and the index subtypes,
5280 to prevent spurious out-of-scope references in gigi.
5281
52822009-04-16 Tristan Gingold <gingold@adacore.com>
5283
5284 * init.c, s-osinte-darwin.ads, system-darwin-x86_64.ads:
5285 Add support for stack checking on darwin.
5286
52872009-04-16 Vincent Celier <celier@adacore.com>
5288
5289 * prj-attr.adb: New attribute Runtime_Source_Dir
5290
5291 * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Process
5292 attribute Runtime_Source_Dir.
5293 (Check_Naming_Schemes): Give default values to out parameters to avoid
5294 invalid data.
5295
5296 * prj.ads (Language_Config): New component Runtime_Source_Dir
5297
5298 * snames.ads-tmpl: New standard name Runtime_Source_Dir
5299
468ee337
PO
53002009-04-16 Pascal Obry <obry@adacore.com>
5301
5302 * adaint.h, adaint.c (__gnat_rmdir): New routine.
5303 Simple wrapper routines used to convert to proper encoding on
5304 Windows.
5305
5306 * s-crtl.ads: Use __gnat_rmdir instead of direct call to the C library.
5307
5308 * g-dirope.adb (Remove_Dir): Fix a bug, the root directory was removed
5309 twice.
5310
bca17d51
PO
53112009-04-16 Pascal Obry <obry@adacore.com>
5312
5313 * s-crtl.ads, s-os_lib.adb: Minor code clean-up.
5314
4e0079cc
AC
53152009-04-16 Thomas Quinot <quinot@adacore.com>
5316
5317 * snames.ads-tmpl (Name_Defined): New predefined name for use by the
5318 integrated preprocessor.
5319
5320 * prep.ads, prep.adb (Setup_Hooks): New subprogram.
5321 (Initialize): Split into two subprograms, Initialize (to be called
5322 prior to compiler command line processing) and Setup_Hooks (to be called
5323 later on when the first source file is loaded).
5324
5325 * gprep.adb: Change call to Prep.Initialize to call to Prep.Setup_Hooks.
5326 Add call to Prep.Initialize.
5327
5328 * sinput-l.adb, prepcomp.adb: Change call to Prep.Initialize to call
5329 to Prep.Setup_Hooks.
5330
53312009-04-16 Pascal Obry <obry@adacore.com>
5332
5333 * adaint.h, adaint.c (__gnat_chdir): New routine.
5334 Simple wrapper routines used to convert to proper encoding on
5335 Windows.
5336
5337 * s-crtl.ads: Use __gnat_chdir instead of direct call to the C library.
5338
5339 * a-direct.adb, g-dirope.adb: Use chdir from System.CRTL.
5340
cbbdee52
AC
53412009-04-16 Quentin Ochem <ochem@adacore.com>
5342
5343 * sinput-p.adb (Clear_Source_File_Table): Use Sinput.Initialize instead
5344 of Source.Init.
5345
53462009-04-16 Eric Botcazou <ebotcazou@adacore.com>
5347
5348 * a-convec.ads (Is_Empty): Mark inline.
5349
53502009-04-16 Nicolas Roche <roche@adacore.com>
5351
5352 * init.c (__gnat_init_float): Initialize FPU on x86_64 windows
5353
53542009-04-16 Thomas Quinot <quinot@adacore.com>
5355
5356 * prepcomp.adb: Minor reformatting
5357
7e8ed0a6
AC
53582009-04-16 Jerome Lambourg <lambourg@adacore.com>
5359
5360 * sem_prag.adb (Process_Import_Or_Interface): With .NET,
5361 Access_Subprogram types can also be imported.
5362 (Check_Form_Of_Interface_Name): Accept '/' character in entity CIL
5363 names.
5364
53652009-04-16 Ed Schonberg <schonberg@adacore.com>
5366
5367 * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
5368 preserve homonym chain when the declaration is rewritten into a
5369 renaming declaration, in order to preserve visibility structure.
5370
540b5d9c
AC
53712009-04-16 Jerome Lambourg <lambourg@adacore.com>
5372
5373 * sem_prag.adb (Analyze_Pragma): Make sure that pragma pack is not
5374 taken into account for VM targets.
5375
53762009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
5377
5378 * g-calend.ads, g-calend.adb (Week_In_Year): Now calls
5379 Year_Week_In_Year.
5380 (Year_Week_In_Year): New routine which contains the original code from
5381 Week_In_Year. Add the missing special case for January 1st falling on
5382 a Monday.
5383
dae4faf2
TQ
53842009-04-16 Thomas Quinot <quinot@adacore.com>
5385
5386 * exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic
5387 actual type, use the base type to build the To_Any function.
5388 (Build_From_Any_Function): Remove junk, useless subtype conversion.
5389
53902009-04-16 Thomas Quinot <quinot@adacore.com>
5391
5392 * exp_ch9.adb, exp_code.adb, tbuild.adb, sem_case.adb,
5393 restrict.adb: Minor code reorganization (use
5394 Add_{Char,Str}_To_Name_Buffer instead of inlining it by hand).
5395
2794f022
AC
53962009-04-16 Bob Duff <duff@adacore.com>
5397
5398 * exp_ch6.ads, exp_ch6.adb (Is_Build_In_Place_Function_Return): Remove,
5399 unused.
5400
54012009-04-16 Thomas Quinot <quinot@adacore.com>
5402
5403 * sem_ch4.adb: Minor reformatting
5404
5405 * adaint.c: Remove junk duplicated code.
5406
5407 * sem_ch3.adb: Minor reformatting
5408
5409 * exp_dist.adb: Minor comment rewording
5410
a8e65aa5
AC
54112009-04-16 Robert Dewar <dewar@adacore.com>
5412
5413 * gnat_rm.texi: Document effect of Assume_No_Invalid_Values and -gnatVa
5414 used together.
5415
54162009-04-16 Ed Schonberg <schonberg@adacore.com>
5417
5418 * sem_ch4.adb (Find_Equality_Types): Filter out types that are not
5419 usable before calling Add_One_Interp, to resolve spurious ambiguities.
5420
bded454f
RD
54212009-04-16 Robert Dewar <dewar@adacore.com>
5422
b0fbf3c0
RD
5423 * Make-lang.in: Add entries for s-conca?.o
5424
bded454f
RD
5425 * Makefile.rtl: Add entries for s-conca?
5426
5427 * debug.adb: Add debug flags -gnatd.c and -gnatd.C to control behavior
5428 of concatenation expansion
5429
5430 * exp_ch4.adb (Expand_Concatenation): Generate calls for certain
5431 string cases instead of expanding assignments inline.
5432
5433 * opt.ads (Optimize_Size): New flag
5434
5435 * s-conca2.ads, s-conca2.adb, s-conca3.adb, s-conca3.ads,
5436 s-conca4.adb, s-conca4.ads, s-conca5.adb, s-conca5.ads, s-conca6.adb,
5437 s-conca6.ads, s-conca7.ads, s-conca7.adb, s-conca8.adb, s-conca8.ads,
5438 s-conca9.adb, s-conca9.ads: New file.
5439
4a3b249c
RD
54402009-04-16 Robert Dewar <dewar@adacore.com>
5441
5442 * exp_ch6.adb: Add comments
5443
5444 * rtsfind.ads: Add entries for s-conca? routines
5445
e8e028cb 54462009-04-16 Arnaud Charlet <charlet@adacore.com>
14814170
AC
5447
5448 * gcc-interface/Make-lang.in: Update dependencies.
5449
5450 * gcc-interface/Makefile.in: Update translation for vms.
5451
3204b9cd
AC
54522009-04-16 Ed Schonberg <schonberg@adacore.com>
5453
5454 * sem_ch12.adb (Map_Formal_Package_Entities): renamed from Map_Entities
5455 and made global, to be used when installing parents of a child
5456 instance, to provide mappings for entities declared in formal packages
5457 of ancestor units. Now called from Install_Formal_Packages.
5458
54592009-04-16 Doug Rupp <rupp@adacore.com>
5460
5461 * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events with others
5462 notation for clarity.
5463
5464 * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
5465 s-taprop-mingw.adb, s-taprop-linux.adb, s-taprop-solaris.adb,
5466 s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-posix.adb
5467 (Initialize): Initialize Known_Tasks with Environment task.
5468
5469 * s-taskin.ads (Task_States): Move new states to end for the sake of
5470 GDB compatibility.
5471
5472 * s-tassta.adb (Task_Wrapper): Fix comment about Enter_Task.
5473
f17f3601
ES
54742009-04-16 Ed Schonberg <schonberg@adacore.com>
5475
5476 * exp_ch9.adb (Expand_N_Protected_Type_Declaration): If a protected
5477 operation has an inline pragma, propagate the flag to the internal
5478 unprotected subprogram.
5479
5e44c5ea
DR
54802009-04-16 Doug Rupp <rupp@adacore.com>
5481
5482 * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-mingw.adb,
5483 s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-irix.adb,
5484 s-taprop-hpux-dce.adb, s-taprop-posix.adb
5485 (Enter_Task): Move Known_Tasks initialization to s-tassta.adb
5486
5487 * s-taprop-vms.adb (Enter_Task): Likewise.
5488 (Initialize): Import DBEXT, Debug_Register. Register DBGEXT callback.
5489
5490 * s-tassta.adb (Activate_Tasks): After task creation set state to
5491 Activating, vice Runnable. Initialize Known_Tasks, moved here from
5492 s-taprop.adb (Enter_Task). Set Debug_Event_Activating for debugger.
5493 Set state to Runnable after above.
5494 (Task_Wrapper): Set Debug_Event_Run. In exception block set
5495 Debug_Event_Terminated.
5496
5497 * s-taskin.ads (Task_States): Add new states Activiting and
5498 Activator_Delay_Sleep.
5499 (Bit_Array, Debug_Event_Array): New types.
5500 (Global_Task_Debug_Event_Set: New flag.
5501 (Common_ATCB): New field Debug_Events.
5502
5503 * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events.
5504
5505 * s-tasren.adb (Timed_Selective_Wait): Set Activator_Delay_Sleep vice
5506 Activator_Sleep.
5507
5508 * s-tasini.adb (Locked_Abort_To_Level): Add case alternatives for when
5509 Activating and when Acceptor_Delay_Sleep.
5510
5511 * s-tasdeb.ads: Add constants for Debug_Events.
5512 (Debug_Event_Kind_Type): New subtype.
5513 (Signal_Debug_Event): New subprogram.
5514
5515 * s-tasdeb.adb (Signal_Debug_Event): New null subprogram.
5516
205c14b0
TQ
55172009-04-16 Thomas Quinot <quinot@adacore.com>
5518
5519 * sem_elim.adb: Minor reformatting
5520
5521 * freeze.adb: Minor reformatting
5522
5523 * exp_ch4.adb: Minor reformatting
5524
b4763f5c
AC
55252009-04-16 Emmanuel Briot <briot@adacore.com>
5526
5527 * prj-nmsc.adb (Path_Name_Of): fix memory leak
5528
55292009-04-16 Robert Dewar <dewar@adacore.com>
5530
5531 * sinfo.ads (Backwards_OK, Forwards_OK): Clarify documentation
5532
55332009-04-16 Vincent Celier <celier@adacore.com>
5534
5535 * fmap.adb (Initialize): Show the current line when the mapping file
5536 is detected as "incorrectly formatted".
5537
55382009-04-16 Robert Dewar <dewar@adacore.com>
5539
5540 * sem_ch12.adb: Minor reformatting
5541
5542 * sem_ch5.adb: Minor comment addition
5543
5544 * sem_util.adb: Minor reformatting
5545
5546 * sinput-p.adb: Minor reformatting
5547 Add missing pragma Warnings (On)
5548
0c72247e
AC
55492009-04-16 Ed Falis <falis@adacore.com>
5550
5551 * s-vxwext-kernel.adb: (ERROR): deleted unused constant
5552
55532009-04-16 Vincent Celier <celier@adacore.com>
5554
5555 * ali-util.adb: Minor comment spelling error fix
5556
014caddb
EB
55572009-04-16 Eric Botcazou <ebotcazou@adacore.com>
5558
5559 * exp_ch5.adb (Expand_Assign_Array): For the GCC back-end, do not
5560 generate an assignment loop in case of overlap.
5561
b2ed7a03
AC
55622009-04-16 Olivier Hainque <hainque@adacore.com>
5563
5564 * gnat_ugn.texi (gnatmem description): Make it explicit that
5565 gnatmem is designed to work in association with static runtime
5566 library only.
5567
55682009-04-16 Thomas Quinot <quinot@adacore.com>
5569
5570 * sem_type.adb: Minor reformatting
5571
55722009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
5573
5574 * s-osprim-darwin.adb, s-osprim-posix.adb (Clock): Add comment
5575 concerning return codes of gettimeofday and return value check.
5576
55772009-04-16 Ed Falis <falis@adacore.com>
5578
5579 * s-vxwext-kernel.ads (Int_Lock, Int_Unlock): set to convention C so
5580 body can be renaming of imported routines.
5581
55822009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
5583
5584 * s-asthan-vms-alpha.adb: Disable warnings on alignment in a more
5585 targeted fashion.
5586
8a912a6e
AC
55872009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5588
5589 * exp_ch9.adb: Comment improvements.
5590 (Build_Entry_Family_Name): Add parentheses around the index of a entry
5591 family member.
5592
55932009-04-15 Bob Duff <duff@adacore.com>
5594
5595 * sem_warn.adb (Check_Infinite_Loop_Warning): Catch cases like
5596 "while X /= null loop" where X is unchanged inside the loop. We were
5597 not warning in this case, because of the pointers -- we feared that the
5598 loop variable could be updated via a pointer, if there are any pointers
5599 around the place. But that is impossible in this case.
5600
5601 * sem_util.adb (May_Be_Lvalue): This routine was overly pessimistic in
5602 the case of dereferences. In X.all, X cannot be an l-value. We now
5603 catch that case (and implicit dereferences, too).
5604
56052009-04-15 Vincent Celier <celier@adacore.com>
5606
5607 * sinput-p.ads, sinput-p.adb (Clear_Source_File_Table): New procedure
5608
56092009-04-15 Ed Schonberg <schonberg@adacore.com>
5610
5611 * sem_ch12.adb (Is_Actual_Of_Previous_Formal): Make fully recursive.
5612 From code reading.
5613 (Analyze_Package_Instantiation): If generic unit in child instance is
5614 the same as generic unit in parent instance, look for an outer homonym
5615 to locate the desired generic.
5616
4a13695c
AC
56172009-04-15 Bob Duff <duff@adacore.com>
5618
5619 * sem_ch5.adb (Analyze_Loop_Statement): Don't check for infinite loop
5620 warnings unless the loop comes from source, because checking generated
5621 loops is a waste of time, and makes it harder to debug
5622 Check_Infinite_Loop_Warning.
5623
5624 * sem_warn.adb (Check_Infinite_Loop_Warning): If the local variable
5625 tested in the while loop is a renaming, do not warn. Otherwise, we get
5626 false alarms, because it's usually renaming something that we can't
5627 deal with (an indexed component, a global variable, ...).
5628
5629 * gnat_rm.texi: Fix typo
5630
56312009-04-15 Thomas Quinot <quinot@adacore.com>
5632
5633 * sem_ch6.adb: Minor reformatting
5634
c3b36d48
AC
56352009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5636
5637 * exp_ch7.adb (Expand_Ctrl_Function_Call): Check for the case where the
5638 immediate parent of the controlled function call is a component
5639 association.
5640
56412009-04-15 Ed Schonberg <schonberg@adacore.com>
5642
5643 * sem_ch8.adb (Use_One_Type): If the type is tagged, indicate that the
5644 corresponding class-wide type is also in use.
5645
56462009-04-15 Thomas Quinot <quinot@adacore.com>
5647
5648 * frontend.adb: Minor comment fix
5649
1f07382d
AC
56502009-04-15 Robert Dewar <dewar@adacore.com>
5651
5652 * gnatchop.adb (BOM_Length): New global variable
5653 (Write_Unit): Add new parameter Write_BOM
5654 (Write_Chopped_Files): Check for BOM and set Write_BOM for call
5655 to Write_Unit
5656
5657 * gnat_ugn.texi: Add note on propagation of BOM by gnatchop
5658
56592009-04-15 Geert Bosch <bosch@adacore.com>
5660
5661 * system-mingw-x86_64.ads, system-darwin-x86_64.ads
5662 (Backend_Overflow_Checks): Set to True.
5663
56642009-04-15 Gary Dismukes <dismukes@adacore.com>
5665
5666 * par-ch3.adb (P_Type_Declaration): Issue an error if the synchronized
5667 keyword is given in a record extension.
5668
56692009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5670
5671 * exp_ch7.adb (Expand_Ctrl_Function_Call): Procede with the expansion
5672 of a controlled function call in the context of a record aggregate.
5673 This does not apply to array aggregates since the call will be expanded
5674 into assignments.
5675
56762009-04-15 Ed Falis <falis@adacore.com>
5677
5678 * s-osinte-vxworks-kernel.adb, s-osinte-vxworks.adb,
5679 s-osinte-vxworks.ads s-vxwext.ads, s-vxwext-kernel.adb,
3405870d
EF
5680 s-vxwext-kernel.ads, s-vxwext-rtp.ads, s-vxwext-rtp.adb: Reorganize
5681 s-osinte-vxworks* and s-vxwext*.
1f07382d 5682
6cc60200
AC
56832009-04-15 Arnaud Charlet <charlet@adacore.com>
5684
5685 * gcc-interface/Make-lang.in: Update dependencies.
5686
5687 * gcc-interface/Makefile.in: Reorganization of s-osinte-vxworks*
5688 and s-vxwext*.
5689
f66d46ec
AC
56902009-04-15 Robert Dewar <dewar@adacore.com>
5691
5692 * sem_ch13.adb (Unchecked_Conversions): Store source location instead
5693 of node for location for warning messages.
5694
5695 * gnatchop.adb: Minor reformatting
5696
56972009-04-15 Ed Schonberg <schonberg@adacore.com>
5698
5699 * exp_ch6.adb: additional guard for renaming declarations for in
5700 parameters of an array type.
5701
bafc9e1d
AC
57022009-04-15 Robert Dewar <dewar@adacore.com>
5703
5704 * sem_eval.adb (Get_Static_Length): Go to origin node for array bounds
5705 in case they were rewritten by expander (Force_Evaluation).
5706
5707 * targparm.adb (Get_Target_Parameters): Correct check for
5708 Suppress_Exception_Locations.
5709
57102009-04-15 Ed Schonberg <schonberg@adacore.com>
5711
5712 * exp_ch6.adb (Expand_Inlined_Call): If an in-parameter in a call to be
5713 inlined is of an array type that is not bit-packed, use a renaming
5714 declaration to capture its value, rather than a constant declaration.
5715
443614e3
AC
57162009-04-15 Robert Dewar <dewar@adacore.com>
5717
5718 * rtsfind.adb: Minor reformatting.
5719
57202009-04-15 Emmanuel Briot <briot@adacore.com>
5721
5722 * prj-part.adb, prj-tree.adb, prj-tree.ads (Restore_And_Free): renames
5723 Restore, and free the saved context.
5724
57252009-04-15 Gary Dismukes <dismukes@adacore.com>
5726
5727 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Move error check
5728 for illegal private extension from a synchronized interface parent in
5729 front of check for illegal limited extension so that limited extension
5730 from a synchronized interface will be rejected.
5731 (Check_Ifaces): Check that a private extension that has a synchronized
5732 interface as a progenitor must be explicitly declared synchronized.
5733 Also check that a record extension cannot derive from a synchronized
5734 interface.
5735
991395ab
AC
57362009-04-15 Pascal Obry <obry@adacore.com>
5737
5738 * adaint.h (__gnat_unlink): Add spec.
5739 (__gnat_rename): Likewise.
5740
57412009-04-15 Vincent Celier <celier@adacore.com>
5742
5743 * prj-nmsc.adb: Minor spelling error corrections in error messages
5744
57452009-04-15 Robert Dewar <dewar@adacore.com>
5746
5747 * sinfo.ads: Minor comment update
5748
5749 * opt.ads: Minor comment updates
5750
5751 * checks.adb (Enable_Overflow_Check): Do not set Do_Overflow_Check for
5752 modular type.
5753
57542009-04-15 Ed Schonberg <schonberg@adacore.com>
5755
5756 * exp_disp.ads, exp_disp.adb (Register_Primitive): Is now a function
5757 that generates the code needed to update a dispatch table when a
5758 primitive operation is declared with a subprogram body without previous
5759 spec. Insertion of the generated code is responsibility of the caller.
5760 (Make_DT): When building static tables, append the code created by
5761 Register_Primitive to update a secondary table after it has been
5762 constructed.
5763
5764 * exp_ch3.adb, exp_ch6.adb: use new version of Register_Primitive.
5765
5766 * sem_disp.adb (Check_Dispatching_Operation): Call Register_Primitive
5767 on an overriding operation that implements an interface operation only
5768 if not building static dispatch tables.
5769
57702009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5771
5772 * a-caldel-vms.adb (To_Duration): Declare a "safe" end of time which
5773 does not cause overflow when converted to Duration. Use the safe value
5774 as the maximum allowable time delay..
5775
57762009-04-15 Jerome Lambourg <lambourg@adacore.com>
5777
5778 * g-comlin.adb (Set_Command_Line): When adding a switch with attached
5779 parameter, specify that the delimiter is NUL, otherwise "-j2" will be
5780 translated to "-j 2".
5781
57822009-04-15 Bob Duff <duff@adacore.com>
5783
5784 * rtsfind.adb (Maybe_Add_With): Split out procedure to add implicit
5785 with_clauses, to avoid code duplication. Change this processing so we
5786 always add a with_clause on the main unit if needed.
5787
55cc1a05
AC
57882009-04-15 Pascal Obry <obry@adacore.com>
5789
5790 Add support for Win32 native encoding for delete/rename routines.
5791
5792 * adaint.c (__gnat_unlink): New routine.
5793 (__gnat_rename): New routine.
5794 Simple wrapper routines used to convert to proper encoding on
5795 Windows.
5796
5797 * s-os_lib.adb: Use __gnat_unlink and __gnat_rename instead of direct
5798 call to the C library.
5799
5800 * g-sercom-mingw.adb, s-win32.ads: Update Win32 binding.
5801
58022009-04-15 Robert Dewar <dewar@adacore.com>
5803
5804 * s-tassta.adb: Minor reformatting
5805
1f6821b4
AC
58062009-04-15 Robert Dewar <dewar@adacore.com>
5807
5808 * frontend.adb (Frontend): Set proper default for
5809 Warn_On_Non_Local_Exception.
5810
5811 * opt.ads (Exception_Handler_Encountered): New flag
5812 (No_Warn_On_Non_Local_Exception): New flag
5813
5814 * par-ch11.adb (P_Exception_Handler): Set Exception_Handler_Encountered
5815
5816 * sem_warn.adb (Set_Warning_Switch): Set No_Warn_On_Non_Local_Exception
5817 (Set_Dot_Warning_Switch): Set No_Warn_On_Non_Local_Exception
5818
58192009-04-15 Cyrille Comar <comar@adacore.com>
5820
5821 * s-tassta.adb, a-exextr.adb, a-elchha.adb
5822 (Ada.Exception.Last_Chance_Handler): Do not print unhandled exception
5823 message when exception traces are active since it would generate
5824 redundant information.
5825 (Exception_Traces.Notify_Exception): put message output by a critical
5826 section to avoid unsynchronized output.
5827 (Trace_Unhandled_Exception_In_Task): put message output by a critical
5828 section to avoid unsynchronized output.
5829
58302009-04-15 Emmanuel Briot <briot@adacore.com>
5831
5832 * g-comlin.adb, prj-tree.adb, prj-tree.ads, prj.adb, prj.ads
5833 (Free): New subprogram.
5834
8aec446b
AC
58352009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5836
5837 * a-calend.adb: Add new constant Nanos_In_Four_Years.
5838 (Formatting_Operations.Time_Of): Change the way four year chunks of
5839 nanoseconds are added to the intermediate result.
5840
58412009-04-15 Nicolas Setton <setton@adacore.com>
5842
5843 * sysdep.c: Add __APPLE__ in the list of systems where get_immediate
5844 does not need to wait for a carriage return.
5845
58462009-04-15 Tristan Gingold <gingold@adacore.com>
5847
5848 * bindgen.adb: Do not generate adafinal if No_Finalization restriction
5849 is set.
5850
58512009-04-15 Ed Schonberg <schonberg@adacore.com>
5852
5853 * freeze.adb (Freeze_Entity): improve error message for improper use of
5854 incomplete types.
5855 Diagnose additional illegal uses of incomplete types in formal parts.
5856 appearing in formal parts.
5857
5858 * sem_ch6.adb (Process_Formals, Analyze_Return_Type): ditto.
5859
58602009-04-15 Robert Dewar <dewar@adacore.com>
5861
5862 * exp_ch4.adb (Expand_N_Allocator): Install test for object too large.
5863
442dd5fb
NR
58642009-04-15 Nicolas Roche <roche@adacore.com>
5865
5866 * adaint.c: Add function __gnat_lwp_self that retrieves the LWP of the
5867 current thread.
5868
5869 * s-osinte-linux.ads: Import the __gnat_lwp_self function as lwp_self
5870
5871 * s-taprop-linux.adb (Enter_Task): Store the LWP in the TCB
5872
61bee0e3
AC
58732009-04-15 Ed Schonberg <schonberg@adacore.com>
5874
5875 * sem_ch4.adb: improve error message on exponentiation.
5876
58772009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
5878
5879 * a-calend.adb: Move constant Epoch_Offset from package
5880 Conversion_Operations to top level.
5881 (Delay_Operations.To_Duration): Define a constant which represents
5882 "end of time" and use it as a guard against very distant delay dates.
5883 Protect the code against overflow when performing the origin shift to
5884 Unix time.
5885
361effb1
AC
58862009-04-15 Robert Dewar <dewar@adacore.com>
5887
5888 * sem_prag.adb: Minor reformatting.
5889
5890 * sem_type.adb: Minor reformatting
5891
58922009-04-15 Javier Miranda <miranda@adacore.com>
5893
5894 * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Add missing
5895 support to check eliminated subprograms.
5896
5897 * sem_elim.ads (Eliminate_Error_Msg): Update documentation.
5898
5899 * sem_elim.adb (Set_Eliminated): Add support for elimination of
5900 dispatching subprograms.
5901
5902 * exp_disp.adb (Make_DT): Minor code cleanup when freezing primitive
5903 operations. Initialize with "null" the slots of eliminated dispaching
5904 primitives.
5905 (Write_DT): Add output for eliminated primitives.
5906
5907 * sem_disp.adb (Check_Dispatching_Call): Check eliminated primitives.
5908
f7ca1d04
AC
59092009-04-15 Ed Schonberg <schonberg@adacore.com>
5910
5911 * sem_ch8.adb (Use_One_Type): If both clauses appear on the same unit,
5912 the second is redundant, regardless of scopes.
5913
59142009-04-15 Vincent Celier <celier@adacore.com>
5915
5916 * prj-nmsc.adb (Get_Directories): Check for sources before checking
5917 the object directory as when there are no sources, they may not be any
5918 object directory.
5919
5920 * make.adb (Gnatmake): Do not attempt to get the path name of the exec
5921 directory, when there are no exec directory.
5922
59232009-04-15 Ed Schonberg <schonberg@adacore.com>
5924
5925 * sem_type.adb (Remove_Conversions): In order to resolve spurious
5926 ambiguities, refine removal of universal interpretations from complex
5927 expressions with literal arguments, when some numeric operators have
5928 been declared abstract.
5929
59302009-04-15 Ed Falis <falis@adacore.com>
5931
5932 * init.c: Map SIGSEGV to Storage_Error for all targets for uniformity
5933 and backward compatibility for targets using probing for stack overflow
5934
59352009-04-15 Ed Schonberg <schonberg@adacore.com>
5936
5937 * sem_prag.adb (Analyze_Pragma, case 'Obsolescent): Pragma is legal
5938 after any declaration, including renaming declarations.
5939
4bffd4e0
AC
59402009-04-15 Arnaud Charlet <charlet@adacore.com>
5941
5942 * gcc-interface/Make-lang.in: Update dependencies.
5943
5944 * gcc-interface/Makefile.in: Fix VxWorks target pairs.
cbd8be94 5945 Update xenomai target pairs.
4bffd4e0 5946
a523b302
JM
59472009-04-15 Javier Miranda <miranda@adacore.com>
5948
5949 * exp_ch4.adb (Expand_N_Allocator): Code cleanup.
5950
5951 * sem_ch6.adb (Check_Anonymous_Return): Add missing support for
5952 functions returning anonymous access to class-wide limited types. Mark
5953 also the containing scope as a task master.
5954
5955 * sem_ch8.adb (Restore_Scope_Stack): Add missing management for
5956 limited-withed packages. Required to restore their visibility after
5957 processing packages associated with implicit with-clauses.
5958
5959 * exp_ch3.adb (Build_Class_Wide_Master): Avoid marking masters
5960 associated with return statements because this work is now done by
5961 Check_Anonymous_Return.
5962 (Build_Master): Code cleanup.
5963
e358346d
AC
59642009-04-15 Thomas Quinot <quinot@adacore.com>
5965
5966 * sem_warn.ads: Minor reformatting
5967
59682009-04-15 Ed Schonberg <schonberg@adacore.com>
5969
5970 * sem_ch3.adb: better error message for illegal interfaces
5971
5972 * sem_ch6.adb (Possible_Freeze): Delay freezing a subprogram if a
5973 formal is an incomplete type from a limited_with clause.
5974
a9872a59
VC
59752009-04-15 Vincent Celier <celier@adacore.com>
5976
5977 * prj-nmsc.adb (Locate_Directory): New Boolean parameter
5978 Externally_Built indicating if the project is externally built. If it
5979 is, and --subdirs is specified, but the subdir does not exist, look
5980 for the specified directory, without the subdir.
5981
b8aadf01
AC
59822009-04-15 Gary Dismukes <dismukes@adacore.com>
5983
5984 * a-tasatt.adb: Fix typo, plus minor reformatting
5985
5986 * sem_ch3.ads: Add missing hyphen ("class wide" => "class-wide").
5987
5988 * sem_ch10.adb: Add missing hyphen ("use visible" => "use-visible").
5989
59902009-04-15 Ed Schonberg <schonberg@adacore.com>
5991
5992 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Verify that a
5993 private extension whose parent is a synchronized interface carries an
5994 explicit synchronized keyword.
5995
a808ba1b
TQ
59962009-04-15 Thomas Quinot <quinot@adacore.com>
5997
5998 * exp_smem.adb (Make_Shared_Var_Procs): For a protected type,
5999 instantiate generic shared object package with the corresponding
6000 record type.
6001
e0568eec
AC
60022009-04-15 Arnaud Charlet <charlet@adacore.com>
6003
6004 * system-linux-sparc.ads: Remove obsolete entries.
6005
60062009-04-15 Thomas Quinot <quinot@adacore.com>
6007
6008 * s-tasuti.ads: Add ??? comment
6009
28450a75
ES
60102009-04-15 Ed Schonberg <schonberg@adacore.com>
6011
6012 * sem_ch3.adb (Analyze_Type_Declaration): Create freeze node for access
6013 type even if the designated type comes from a limited_with clause, to
6014 ensure that the symbol for the finalization list of the access type is
6015 created.
6016
b0d3b11d
AC
60172009-04-10 Robert Dewar <dewar@adacore.com>
6018
6019 * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): Catch more cases
6020 for warning suppression.
6021
60222009-04-10 Ed Schonberg <schonberg@adacore.com>
6023
6024 * sem_ch8.adb (Use_One_Type): If the two use_type clauses are
6025 identical, there is no redudancy to check.
6026
60272009-04-10 Gary Dismukes <dismukes@adacore.com>
6028
6029 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Delete redundant
6030 calls initializing SS_Allocator (which is initialized in following
6031 code).
6032 (Expand_Simple_Function_Return): Add comment about False value for
6033 Comes_From_Source on secondary-stack allocator.
6034
6035 * exp_ch9.adb (Build_Entry_Family_Name): Add comment.
6036 (Build_Entry_Name): Add comment.
6037
fad0600d
AC
60382009-04-10 Robert Dewar <dewar@adacore.com>
6039
6040 * einfo.ads, einfo.adb (Low_Bound_Tested): New name for Low_Bound_Known
6041
6042 * sem_prag.adb (Analyze_Pragma, case Check): Remove check for lower
6043 bound tested, since this is now done more generally in Sem_Res.
6044
6045 * sem_res.adb (Resolve_Comparison_Op): Add call to
6046 Check_Lower_Bound_Tested.
6047 (Resolve_Equality_Op): Add call to Check_Lower_Bound_Tested
6048
6049 * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): New procedure
6050 (Low_Bound_Tested): New name for Low_Bound_Known flag
6051
6052 * exp_ch5.adb: Minor reformatting
6053
6054 * exp_ch4.adb:
6055 Add comments on copying the Comes_From_Source flag for allocators
6056
6057 * sinfo.ads:
6058 Add comments on copying the Comes_From_Source flag for allocators
6059
6060 * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Copy
6061 Comes_From_Source flag from old allocator to new one.
6062
60632009-04-10 Ed Schonberg <schonberg@adacore.com>
6064
6065 * sem_ch6.ads: Address missing documentation query
6066
60672009-04-10 Vincent Celier <celier@adacore.com>
6068
6069 * prj-attr.adb:
6070 Add new Linker attributes Max_Command_Line_Length, Response_File_Format
6071 and Response_File_Switches.
6072
6073 * prj-nmsc.adb (Process_Linker): Process new attributes
6074 Max_Command_Line_Length, Response_File_Format and
6075 Response_File_Switches.
6076
6077 * prj.ads (Response_File_Format): New enumeration type
6078 (Project_Configuration): New componants Max_Command_Line_Length,
6079 Resp_File_Format and Resp_File_Options.
6080
6081 * snames.ads-tmpl: Add new standard names for linking response files
6082 for gprbuild: GNU, None, Object_List, Option_List,
6083 Max_Command_Line_Length, Response_File_Format and
6084 Response_File_Switches.
6085
60862009-04-10 Geert Bosch <bosch@adacore.com>
6087
6088 * system-aix.ads, system-darwin-ppc.ads, system-darwin-x86.ads,
6089 system-freebsd-x86.ads, system-hpux.ads, system-hpux-ia64.ads,
6090 system-irix-n32.ads, system-irix-o32.ads, system-linux-alpha.ads,
6091 system-linux-hppa.ads, system-linux-ia64.ads, system-linux-ppc.ads,
6092 system-linux-s390.ads, system-linux-s390x.ads, system-linux-sh4.ads,
6093 system-linux-sparc.ads, system-linux-x86_64.ads, system-linux-x86.ads,
6094 system-mingw.ads, system-solaris-sparc.ads, system-solaris-sparcv9.ads,
6095 system-solaris-x86.ads, system-tru64.ads, system-vms_64.ads,
6096 system-vms.ads, system-vms-ia64.ads, system-vms-zcx.ads,
6097 system-vxworks-arm.ads, system-vxworks-m68k.ads,
6098 system-vxworks-mips.ads, system-vxworks-ppc.ads,
6099 system-vxworks-sparcv9.ads, system-vxworks-x86.ads
6100 (Backend_Overflow_Checks): Set to True.
6101
934a3a25
AC
61022009-04-10 Thomas Quinot <quinot@adacore.com>
6103
6104 * exp_attr.adb: Minor reformatting
6105
61062009-04-10 Ed Schonberg <schonberg@adacore.com>
6107
6108 * sem_prag.adb (Check_Precondition_Postcondition): Within a generic,
6109 analyze the expression for a postcondition, even if the compiler mode
6110 is Generate_Code.
6111
ab8e1b35
RD
61122009-04-10 Robert Dewar <dewar@adacore.com>
6113
6114 * sem_aux.adb: Minor reformatting
6115
2c880bdf
EF
61162009-04-10 Ed Falis <falis@adacore.com>
6117
6118 * init.c: Change VxWorks 6 stack overflow checking for kernel apps.
6119
6120 * system-vxworks-ppc.ads, system-vxworks-x86.ads: Update header.
6121
d8221f45
TQ
61222009-04-10 Thomas Quinot <quinot@adacore.com>
6123
6124 * sem_ch6.ads (Check_Subtype_Conformant): Add ??? comment for
6125 undocumented formal.
6126 Minor reformatting
6127
6128 * a-direio.ads: Fix typo in comment
6129
6130 * sem_ch3.adb, g-dirope.adb, sem_type.adb, sem_ch12.adb, sem_case.adb,
6131 errout.adb, sem_ch4.adb, sem_ch11.adb, exp_dist.adb, sem_ch13.adb:
6132 Use uniform phrasing for comment at start of subprogram body.
6133
6134 * xsnamest.adb: Add note to explain why we use specific names for the
6135 newly generated files instead of generating snames.{ads,adb,h} directly
6136
f559e62f
AC
61372009-04-10 Sergey Rybin <rybin@adacore.com>
6138
6139 * vms_data.ads:
6140 Add qualifier for new gnatstub option '--no-exception'
6141
6142 * gnat_ugn.texi:
6143 Add the description of the new gnatstub option '--no-exception'
6144
61452009-04-10 Robert Dewar <dewar@adacore.com>
6146
6147 * rtsfind.adb: Minor reformatting
6148
61492009-04-10 Thomas Quinot <quinot@adacore.com>
6150
6151 * sem_disp.adb: Minor reformatting.
6152 Add comment pointing to RM clause for the case of warning against a
6153 (failed) attempt at declaring a primitive operation elsewhere than in a
6154 package spec.
6155
61562009-04-10 Ed Schonberg <schonberg@adacore.com>
6157
6158 * sem_ch12.adb (Denotes_Formal_Package): Check whether the package is
6159 an actual for a previous formal package of the current instance.
6160
e50e1c5e
AC
61612009-04-10 Bob Duff <duff@adacore.com>
6162
6163 * rtsfind.adb (RTE): Put implicit with_clauses on whatever unit needs
6164 them first, rather than on the extended main unit.
6165
61662009-04-10 Ed Schonberg <schonberg@adacore.com>
6167
6168 * sem_ch6.adb (Check_Discriminant_Conformance): If discriminant
6169 specification of full view carries a null exclusion indicator, create
6170 an itype for it, to check for conformance with partial view.
6171
cb736868
AC
61722009-04-10 Bob Duff <duff@adacore.com>
6173
6174 * rtsfind.ads: Minor code change: make RE_Unit_Table constant.
6175
6176 * rtsfind.adb: Minor comment changes, and remove useless code.
6177
6178 * sinfo.ads: Add ??? comment.
6179
61802009-04-10 Vincent Celier <celier@adacore.com>
6181
6182 * vms_data.ads: Add missing GNAT SYNC VMS qualifiers -main= and -U
6183
8a78c50d
AC
61842009-04-10 Ed Schonberg <schonberg@adacore.com>
6185
6186 * exp_attr.adb (Expand_N_Attribute_Reference, case 'Tag): If the tagged
6187 type is a synchronized type, retrieve tag information from the
6188 corresponding record, which has the dispatch table link.
6189
61902009-04-10 Jerome Lambourg <lambourg@adacore.com>
6191
6192 * g-comlin.adb (Group_Analysis): Take care of switches that might be
6193 decomposed afterwards, but are present as-is in the command line
6194 configuration, and thus should be kept as-is.
6195
b66c3ff4
AC
61962009-04-10 Robert Dewar <dewar@adacore.com>
6197
6198 * gnat_rm.texi: Document that postconditions are tested on implicit
6199 returns.
6200
6201 * sem_aux.adb: Minor reformatting
6202
62032009-04-10 Gary Dismukes <dismukes@adacore.com>
6204
6205 * itypes.adb (Create_Null_Excluding_Itype): Apply Base_Type when
6206 setting Etype.
6207
6208 * par-ch3.adb (P_Access_Type_Definition): Set new attribute
6209 Null_Exclusion_In_Return_Present when an access-to-function type has a
6210 result type with an explicit not null.
6211
6212 * sem_ch3.adb (Access_Subprogram_Definition): If a null exclusion is
6213 given on the result type, then create a null-excluding itype for the
6214 function.
6215
6216 * sem_ch6.adb (Analyze_Return_Type): Create a null-excluding itype in
6217 the case where a null exclusion is imposed on a named access type.
6218 (Analyze_Subprogram_Specification): Push and pop the scope of the
6219 function around the call to Analyze_Return_Type in the case of no
6220 formals, for consistency with handling when formals are present
6221 (Process_Formals does this). Ensures that any itype created for the
6222 return type will be associated with the proper scope.
6223
6224 * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): If a null
6225 exclusion is given on a generic function's result type, then create a
6226 null-excluding itype for the generic function.
6227 (Instantiate_Object): Set Null_Exclusion_Present of a constant created
6228 for an actual for a formal in object according to the setting on the
6229 formal. Ensures null exclusion checks are done when the association is
6230 elaborated.
6231
6232 * sinfo.ads: Add new flag Null_Exclusion_In_Return_Present on
6233 N_Access_Function_Definition.
6234
6235 * sinfo.adb: Add Get_ and Set_ operations for
6236 Null_Exclusion_In_Return_Present.
6237
5334d18f
BD
62382009-04-10 Bob Duff <duff@adacore.com>
6239
6240 * exp_ch5.adb, exp_ch6.adb, sem_ch6.adb: Move the code that creates a
6241 call to the _Postconditions procedure in the case of implicit returns
6242 from analysis to expansion. This eliminates some duplicated code. Use
6243 the Postcondition_Proc to find the identity of this procedure during
6244 expansion.
6245
701b7fbb
RD
62462009-04-10 Robert Dewar <dewar@adacore.com>
6247
6248 * sem_ch6.adb: Minor code clean up.
6249
6250 * einfo.ads, sem_attr.adb: Minor comment fixes.
6251
62522009-04-10 Robert Dewar <dewar@adacore.com>
6253
6254 * sem_ch8.adb: Minor reformatting
6255
7ca78bba
RD
62562009-04-10 Robert Dewar <dewar@adacore.com>
6257
6258 * einfo.ads, einfo.adb (Postcondition_Proc): New attribute for
6259 procedures.
6260
6261 * sem_ch6.adb: Minor code clean up.
6262
043ce308
AC
62632009-04-10 Robert Dewar <dewar@adacore.com>
6264
6265 * mlib-tgt-specific-xi.adb: Minor reformatting
6266
62672009-04-10 Bob Duff <duff@adacore.com>
6268
6269 * einfo.ads: Minor comment fixes
6270
62712009-04-10 Vincent Celier <celier@adacore.com>
6272
6273 * snames.ads-tmpl: Remove names that are no longer used in the
6274 Project Manager.
6275 Mark specifically those that are used only in gprbuild
6276
62772009-04-10 Eric Botcazou <ebotcazou@adacore.com>
6278
6279 * init.c: Adjust EH support code on Alpha/Tru64.
6280
62812009-04-10 Bob Duff <duff@adacore.com>
6282
6283 * sem_ch6.adb (Process_PPCs): Add a call to the _Postconditions
6284 procedure on every path that could return implicitly (not via a return
6285 statement) from a procedure.
6286
62872009-04-10 Ed Schonberg <schonberg@adacore.com>
6288
6289 * exp_ch9.adb (Build_Master_Entity): An extended return statement is a
6290 valid scope for a task declarations and therefore for a master id.
6291
62922009-04-10 Robert Dewar <dewar@adacore.com>
6293
6294 * sem_aux.adb: Minor reformatting
6295
62962009-04-10 Vincent Celier <celier@adacore.com>
6297
6298 * scn.adb (Obsolescent_Check_Flag): New Boolean flag, initialized to
6299 True.
6300 (Obsolescent_Check): Do nothing if Obsolescent_Check_Flag is False
6301 (Set_Obsolescent_Check): New procedure to change the value of
6302 Obsolescent_Check_Flag.
6303
6304 * scn.ads (Set_Obsolescent_Check): New procedure to control
6305 Obsolescent_Check.
6306
6307 * sinput-l.adb (Load_File): Do not check for pragma Restrictions on
6308 obsolescent features while preprocessing.
6309
550f4135
AC
63102009-04-10 Thomas Quinot <quinot@adacore.com>
6311
6312 * xsnamest.adb: Use XUtil to have uniform line endings (UNIX style) in
6313 generated files on all platforms.
6314
63152009-04-10 Robert Dewar <dewar@adacore.com>
6316
6317 * sem_aux.adb: Minor reformatting
6318
63192009-04-10 Ed Schonberg <schonberg@adacore.com>
6320
6321 * sem_ch3.adb (Access_Definition): Handle properly the case of a
6322 protected function with formals that returns an anonymous access type.
6323
63242009-04-10 Thomas Quinot <quinot@adacore.com>
6325
6326 * sem_disp.adb: Minor reformatting
6327
63282009-04-10 Vasiliy Fofanov <fofanov@adacore.com>
6329
6330 * seh_init.c: Do not use the 32-bit specific implementation of
6331 __gnat_install_SEH_handler on 64-bit Windows target (64-bit specific
6332 version TBD).
6333
63342009-04-10 Jose Ruiz <ruiz@adacore.com>
6335
6336 * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Target_Name may contain
6337 a '/' at the end so we better use the complete target name to determine
6338 whether it is a PowerPC 55xx target.
6339
3996951a
TQ
63402009-04-10 Thomas Quinot <quinot@adacore.com>
6341
6342 * sem_eval.adb: Minor reformatting
6343
b62a90f2
AC
63442009-04-10 Thomas Quinot <quinot@adacore.com>
6345
6346 * snames.h, snames.ads, snames.adb: Remove files, now generated from
6347 templates.
6348
6349 * snames.h-tmpl, snames.ads-tmpl, snames.adb-tmpl: Templates for the
6350 above.
6351
6352 * xsnamest.adb: New file.
6353
6354 * gcc-interface/Make-lang.in: New target for automated generation of
6355 snames.ads, snames.adb and snames.h
6356
62298c61
TG
63572009-04-10 Tristan Gingold <gingold@adacore.com>
6358
6359 * gcc-interface/Makefile.in, gcc-interface/utils.c: Include "rtl.h" to
6360 avoid compile time warnings.
6361 Do not add gcc/config in include search list while compiling the RTS.
6362 Pragma Thread_Local_Storage is available on any target.
6363
3764bb00
BD
63642009-04-10 Bob Duff <duff@adacore.com>
6365
6366 * sem.ads, par.adb, sem_ch6.adb, sem_ch8.adb: Minor comment fixes.
6367
b3b9865d
AC
63682009-04-10 Tristan Gingold <gingold@adacore.com>
6369
6370 * init.c: Install signal handler on Darwin.
6371
63722009-04-10 Robert Dewar <dewar@adacore.com>
6373
6374 * sem_prag.adb: Minor reformatting
6375
6376 * exp_util.adb (Make_Non_Empty_Check): New function
6377 (Silly_Boolean_Array_Not_Test): Add call to Make_Non_Empty_Check
6378 (Silly_Boolean_Array_Xor_Test): Use Make_Non_Empty_Check
6379
63802009-04-10 Arnaud Charlet <charlet@adacore.com>
6381
6382 * make.adb, gnatlink.adb: Rename JGNAT toolchain.
6383
63842009-04-10 Jose Ruiz <ruiz@adacore.com>
6385
6386 * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Insert the appropriate
6387 tool prefix for AVR and PowerPC 55xx targets.
6388
63892009-04-10 Robert Dewar <dewar@adacore.com>
6390
6391 * sem_warn.adb (Within_Postcondition): New function
6392 (Check_Unset_Reference): Use Within_Postcondition to stop bad warning
6393
c5288c90
AC
63942009-04-10 Robert Dewar <dewar@adacore.com>
6395
6396 * sem_warn.adb: Minor reformatting
6397
6398 * make.adb: Minor reformatting.
6399
64002009-04-10 Gary Dismukes <dismukes@adacore.com>
6401
6402 * exp_ch7.adb (Find_Final_List): When creating a finalization-chain
6403 entity and the scope is a subprogram, retrieve the Sloc of the
6404 subprogram's body rather than using the sloc of the spec, for better
6405 line-stepping behavior in gdb.
6406 (Wrap_Transient_Declaration): For the Sloc of nodes created with a list
6407 controller, use the Sloc of the first declaration of the containing list
6408 rather than that of the node that triggered creation of the list
6409 controller.
6410
2844b330
AC
64112009-04-10 Vincent Celier <celier@adacore.com>
6412
6413 * prj-nmsc.adb (Check_Naming_Schemes): Initialize local variable Casing
6414 to avoid gcc warning.
6415
64162009-04-10 Robert Dewar <dewar@adacore.com>
6417
6418 * g-comlin.adb: Add ??? comment
6419
64202009-04-10 Ed Schonberg <schonberg@adacore.com>
6421
6422 * sem_warn.adb (Check_Unused_Withs): Do not emit message about
6423 unreferenced entities for a package with no visible declarations.
6424
64252009-04-10 Robert Dewar <dewar@adacore.com>
6426
6427 * exp_ch9.adb: Minor reformatting
6428
be21e9d8
AC
64292009-04-10 Thomas Quinot <quinot@adacore.com>
6430
6431 * sem_prag.adb: Minor reformatting
6432
64332009-04-10 Vincent Celier <celier@adacore.com>
6434
6435 * prj-nmsc.adb:
6436 (Check_Library_Attributes): For a project qualified as a library project
6437 that is not a library project, indicate in the error message which
6438 attributes are missing (Library_Dir and/or Library_Name).
6439
4a7dedcb
BD
64402009-04-10 Bob Duff <duff@adacore.com>
6441
6442 * exp_ch5.adb, exp_ch9.adb: Avoid use of No_Position in Sloc of
6443 generated nodes, because it might confuse various circuits in the FE.
6444
4017021b
AC
64452009-04-10 Ed Schonberg <schonberg@adacore.com>
6446
6447 * sem_prag.adb (Analyze_Pragma, case Task_Name): Do not expand argument
6448 of pragma. It will be recopied and analyzed when used in call to
6449 Create_Task.
6450
6451 * sem_res.adb (Resolve_Call): Clarify use of secondary stack within
6452 initialization operations and recognize use of it in procedure calls
6453 within init_procs.
6454
6455 * exp_ch9.adb (Make_Task_Create_Call): Copy full tree of Task_Name
6456 argument, because it may have side-effects.
6457
6458 * exp_ch2.adb: Remove obsolete comments on default functions
6459
64602009-04-10 Jose Ruiz <ruiz@adacore.com>
6461
6462 * adaint.c (RTX section): Do for RTX the same thing as we do for
6463 Windows (include ctype.h and define a fallback ISALPHA if IN_RTS).
6464
24357840
RD
64652009-04-10 Robert Dewar <dewar@adacore.com>
6466
6467 * sem_aux.ads, sem_aux.adb (Nearest_Current_Scope): New function.
6468
6469 * sem_res.adb (Resolve_Call): Fix test for
6470 Suppress_Value_Tracking_On_Call (was wrong for the case of a call from
6471 a non-dynamic scope).
6472
4f64abad
AC
64732009-04-10 Robert Dewar <dewar@adacore.com>
6474
6475 * make.adb: Add comment.
6476 Minor reformatting
6477
64782009-04-10 Nicolas Setton <setton@adacore.com>
6479
6480 * s-osprim-darwin.adb: New file.
6481
6482 * s-osinte-darwin.adb, s-osinte-darwin.ads: Fix binding to timespec.
6483
64842009-04-10 Thomas Quinot <quinot@adacore.com>
6485
6486 * g-socket.ads: Add comment clarifying alignment requirement for Fd_Set
6487
748086b7
JJ
64882009-04-09 Nick Clifton <nickc@redhat.com>
6489
6490 * adadecode.h: Change copyright header to refer to version
6491 3 of the GNU General Public License with version 3.1 of the
6492 GCC Runtime Library Exception and to point readers at the
6493 COPYING3 and COPYING3.RUNTIME files and the FSF's license web
6494 page.
6495 * 9drpc.adb: Likewise.
6496 * a-assert.adb: Likewise.
6497 * a-astaco.adb: Likewise.
6498 * a-calari.adb: Likewise.
6499 * a-calcon.adb: Likewise.
6500 * a-calcon.ads: Likewise.
6501 * a-caldel.ads: Likewise.
6502 * a-calend-vms.adb: Likewise.
6503 * a-calend-vms.ads: Likewise.
6504 * a-calend.adb: Likewise.
6505 * a-calend.ads: Likewise.
6506 * a-calfor.adb: Likewise.
6507 * a-catizo.adb: Likewise.
6508 * a-cdlili.adb: Likewise.
6509 * a-cdlili.ads: Likewise.
6510 * a-cgaaso.adb: Likewise.
6511 * a-cgaaso.ads: Likewise.
6512 * a-cgarso.adb: Likewise.
6513 * a-cgcaso.adb: Likewise.
6514 * a-chacon.adb: Likewise.
6515 * a-chacon.ads: Likewise.
6516 * a-chahan.adb: Likewise.
6517 * a-chahan.ads: Likewise.
6518 * a-chlat9.ads: Likewise.
6519 * a-chtgke.adb: Likewise.
6520 * a-chtgke.ads: Likewise.
6521 * a-chtgop.adb: Likewise.
6522 * a-chtgop.ads: Likewise.
6523 * a-chzla1.ads: Likewise.
6524 * a-chzla9.ads: Likewise.
6525 * a-cidlli.adb: Likewise.
6526 * a-cidlli.ads: Likewise.
6527 * a-cihama.adb: Likewise.
6528 * a-cihama.ads: Likewise.
6529 * a-cihase.adb: Likewise.
6530 * a-cihase.ads: Likewise.
6531 * a-ciorma.adb: Likewise.
6532 * a-ciorma.ads: Likewise.
6533 * a-ciormu.adb: Likewise.
6534 * a-ciormu.ads: Likewise.
6535 * a-ciorse.adb: Likewise.
6536 * a-ciorse.ads: Likewise.
6537 * a-clrefi.adb: Likewise.
6538 * a-clrefi.ads: Likewise.
6539 * a-cohama.adb: Likewise.
6540 * a-cohama.ads: Likewise.
6541 * a-cohase.adb: Likewise.
6542 * a-cohase.ads: Likewise.
6543 * a-cohata.ads: Likewise.
6544 * a-coinve.adb: Likewise.
6545 * a-coinve.ads: Likewise.
6546 * a-colien.adb: Likewise.
6547 * a-colien.ads: Likewise.
6548 * a-colire.adb: Likewise.
6549 * a-colire.ads: Likewise.
6550 * a-comlin.adb: Likewise.
6551 * a-comlin.ads: Likewise.
6552 * a-convec.adb: Likewise.
6553 * a-convec.ads: Likewise.
6554 * a-coorma.adb: Likewise.
6555 * a-coorma.ads: Likewise.
6556 * a-coormu.adb: Likewise.
6557 * a-coormu.ads: Likewise.
6558 * a-coorse.adb: Likewise.
6559 * a-coorse.ads: Likewise.
6560 * a-coprnu.adb: Likewise.
6561 * a-coprnu.ads: Likewise.
6562 * a-crbltr.ads: Likewise.
6563 * a-crbtgk.adb: Likewise.
6564 * a-crbtgk.ads: Likewise.
6565 * a-crbtgo.adb: Likewise.
6566 * a-crbtgo.ads: Likewise.
6567 * a-crdlli.adb: Likewise.
6568 * a-crdlli.ads: Likewise.
6569 * a-cwila1.ads: Likewise.
6570 * a-cwila9.ads: Likewise.
6571 * a-decima.adb: Likewise.
6572 * a-decima.ads: Likewise.
6573 * a-diocst.adb: Likewise.
6574 * a-diocst.ads: Likewise.
6575 * a-direct.adb: Likewise.
6576 * a-direct.ads: Likewise.
6577 * a-direio.adb: Likewise.
6578 * a-direio.ads: Likewise.
6579 * a-dirval-mingw.adb: Likewise.
6580 * a-dirval-vms.adb: Likewise.
6581 * a-dirval.adb: Likewise.
6582 * a-dirval.ads: Likewise.
6583 * a-dynpri.adb: Likewise.
6584 * a-einuoc.adb: Likewise.
6585 * a-einuoc.ads: Likewise.
6586 * a-elchha.adb: Likewise.
6587 * a-elchha.ads: Likewise.
6588 * a-envvar.adb: Likewise.
6589 * a-excach.adb: Likewise.
6590 * a-except-2005.adb: Likewise.
6591 * a-except-2005.ads: Likewise.
6592 * a-except.adb: Likewise.
6593 * a-except.ads: Likewise.
6594 * a-excpol-abort.adb: Likewise.
6595 * a-excpol.adb: Likewise.
6596 * a-exctra.adb: Likewise.
6597 * a-exctra.ads: Likewise.
6598 * a-exetim-mingw.adb: Likewise.
6599 * a-exetim-mingw.ads: Likewise.
6600 * a-exexda.adb: Likewise.
6601 * a-exexpr-gcc.adb: Likewise.
6602 * a-exexpr.adb: Likewise.
6603 * a-exextr.adb: Likewise.
6604 * a-exstat.adb: Likewise.
6605 * a-filico.adb: Likewise.
6606 * a-filico.ads: Likewise.
6607 * a-finali.adb: Likewise.
6608 * a-finali.ads: Likewise.
6609 * a-interr.ads: Likewise.
6610 * a-intnam-aix.ads: Likewise.
6611 * a-intnam-darwin.ads: Likewise.
6612 * a-intnam-dummy.ads: Likewise.
6613 * a-intnam-freebsd.ads: Likewise.
6614 * a-intnam-hpux.ads: Likewise.
6615 * a-intnam-irix.ads: Likewise.
6616 * a-intnam-linux.ads: Likewise.
6617 * a-intnam-lynxos.ads: Likewise.
6618 * a-intnam-mingw.ads: Likewise.
6619 * a-intnam-rtems.ads: Likewise.
6620 * a-intnam-solaris.ads: Likewise.
6621 * a-intnam-tru64.ads: Likewise.
6622 * a-intnam-vms.ads: Likewise.
6623 * a-intnam-vxworks.ads: Likewise.
6624 * a-intsig.adb: Likewise.
6625 * a-intsig.ads: Likewise.
6626 * a-ngcefu.adb: Likewise.
6627 * a-ngcoar.adb: Likewise.
6628 * a-ngcoty.adb: Likewise.
6629 * a-ngcoty.ads: Likewise.
6630 * a-ngelfu.adb: Likewise.
6631 * a-ngrear.adb: Likewise.
6632 * a-ngrear.ads: Likewise.
6633 * a-nudira.adb: Likewise.
6634 * a-nudira.ads: Likewise.
6635 * a-nuflra.adb: Likewise.
6636 * a-nuflra.ads: Likewise.
6637 * a-numaux-darwin.adb: Likewise.
6638 * a-numaux-darwin.ads: Likewise.
6639 * a-numaux-libc-x86.ads: Likewise.
6640 * a-numaux-vxworks.ads: Likewise.
6641 * a-numaux-x86.adb: Likewise.
6642 * a-numaux-x86.ads: Likewise.
6643 * a-numaux.ads: Likewise.
6644 * a-rbtgso.adb: Likewise.
6645 * a-rbtgso.ads: Likewise.
6646 * a-reatim.ads: Likewise.
6647 * a-retide.adb: Likewise.
6648 * a-retide.ads: Likewise.
6649 * a-rttiev.adb: Likewise.
6650 * a-rttiev.ads: Likewise.
6651 * a-secain.adb: Likewise.
6652 * a-secain.ads: Likewise.
6653 * a-sequio.adb: Likewise.
6654 * a-sequio.ads: Likewise.
6655 * a-shcain.adb: Likewise.
6656 * a-shcain.ads: Likewise.
6657 * a-siocst.adb: Likewise.
6658 * a-siocst.ads: Likewise.
6659 * a-slcain.adb: Likewise.
6660 * a-slcain.ads: Likewise.
6661 * a-ssicst.adb: Likewise.
6662 * a-ssicst.ads: Likewise.
6663 * a-stboha.adb: Likewise.
6664 * a-stmaco.ads: Likewise.
6665 * a-storio.adb: Likewise.
6666 * a-strbou.adb: Likewise.
6667 * a-strbou.ads: Likewise.
6668 * a-stream.ads: Likewise.
6669 * a-strfix.adb: Likewise.
6670 * a-strhas.adb: Likewise.
6671 * a-strmap.adb: Likewise.
6672 * a-strmap.ads: Likewise.
6673 * a-strsea.adb: Likewise.
6674 * a-strsea.ads: Likewise.
6675 * a-strsup.adb: Likewise.
6676 * a-strsup.ads: Likewise.
6677 * a-strunb.adb: Likewise.
6678 * a-strunb.ads: Likewise.
6679 * a-ststio.adb: Likewise.
6680 * a-ststio.ads: Likewise.
6681 * a-stunau.adb: Likewise.
6682 * a-stunau.ads: Likewise.
6683 * a-stunha.adb: Likewise.
6684 * a-stwibo.adb: Likewise.
6685 * a-stwibo.ads: Likewise.
6686 * a-stwifi.adb: Likewise.
6687 * a-stwiha.adb: Likewise.
6688 * a-stwima.adb: Likewise.
6689 * a-stwima.ads: Likewise.
6690 * a-stwise.adb: Likewise.
6691 * a-stwise.ads: Likewise.
6692 * a-stwisu.adb: Likewise.
6693 * a-stwisu.ads: Likewise.
6694 * a-stwiun.adb: Likewise.
6695 * a-stwiun.ads: Likewise.
6696 * a-stzbou.adb: Likewise.
6697 * a-stzbou.ads: Likewise.
6698 * a-stzfix.adb: Likewise.
6699 * a-stzhas.adb: Likewise.
6700 * a-stzmap.adb: Likewise.
6701 * a-stzmap.ads: Likewise.
6702 * a-stzsea.adb: Likewise.
6703 * a-stzsea.ads: Likewise.
6704 * a-stzsup.adb: Likewise.
6705 * a-stzsup.ads: Likewise.
6706 * a-stzunb.adb: Likewise.
6707 * a-stzunb.ads: Likewise.
6708 * a-suteio.adb: Likewise.
6709 * a-suteio.ads: Likewise.
6710 * a-swbwha.adb: Likewise.
6711 * a-swmwco.ads: Likewise.
6712 * a-swunau.adb: Likewise.
6713 * a-swunau.ads: Likewise.
6714 * a-swuwha.adb: Likewise.
6715 * a-swuwti.adb: Likewise.
6716 * a-swuwti.ads: Likewise.
6717 * a-sytaco.adb: Likewise.
6718 * a-sytaco.ads: Likewise.
6719 * a-szbzha.adb: Likewise.
6720 * a-szmzco.ads: Likewise.
6721 * a-szunau.adb: Likewise.
6722 * a-szunau.ads: Likewise.
6723 * a-szuzha.adb: Likewise.
6724 * a-szuzti.adb: Likewise.
6725 * a-szuzti.ads: Likewise.
6726 * a-tags.adb: Likewise.
6727 * a-tags.ads: Likewise.
6728 * a-tasatt.ads: Likewise.
6729 * a-taside.adb: Likewise.
6730 * a-taside.ads: Likewise.
6731 * a-taster.adb: Likewise.
6732 * a-teioed.adb: Likewise.
6733 * a-teioed.ads: Likewise.
6734 * a-textio.adb: Likewise.
6735 * a-textio.ads: Likewise.
6736 * a-tiboio.adb: Likewise.
6737 * a-ticoau.adb: Likewise.
6738 * a-ticoau.ads: Likewise.
6739 * a-ticoio.adb: Likewise.
6740 * a-ticoio.ads: Likewise.
6741 * a-tideau.adb: Likewise.
6742 * a-tideau.ads: Likewise.
6743 * a-tideio.adb: Likewise.
6744 * a-tideio.ads: Likewise.
6745 * a-tienau.adb: Likewise.
6746 * a-tienau.ads: Likewise.
6747 * a-tienio.adb: Likewise.
6748 * a-tienio.ads: Likewise.
6749 * a-tifiio.adb: Likewise.
6750 * a-tifiio.ads: Likewise.
6751 * a-tiflau.adb: Likewise.
6752 * a-tiflau.ads: Likewise.
6753 * a-tiflio.adb: Likewise.
6754 * a-tiflio.ads: Likewise.
6755 * a-tigeau.adb: Likewise.
6756 * a-tigeau.ads: Likewise.
6757 * a-tiinau.adb: Likewise.
6758 * a-tiinau.ads: Likewise.
6759 * a-tiinio.adb: Likewise.
6760 * a-tiinio.ads: Likewise.
6761 * a-timoau.adb: Likewise.
6762 * a-timoau.ads: Likewise.
6763 * a-timoio.adb: Likewise.
6764 * a-timoio.ads: Likewise.
6765 * a-tiocst.adb: Likewise.
6766 * a-tiocst.ads: Likewise.
6767 * a-titest.adb: Likewise.
6768 * a-wichun.adb: Likewise.
6769 * a-wichun.ads: Likewise.
6770 * a-witeio.adb: Likewise.
6771 * a-witeio.ads: Likewise.
6772 * a-wtcoau.adb: Likewise.
6773 * a-wtcoau.ads: Likewise.
6774 * a-wtcoio.adb: Likewise.
6775 * a-wtcstr.adb: Likewise.
6776 * a-wtcstr.ads: Likewise.
6777 * a-wtdeau.adb: Likewise.
6778 * a-wtdeau.ads: Likewise.
6779 * a-wtdeio.adb: Likewise.
6780 * a-wtdeio.ads: Likewise.
6781 * a-wtedit.adb: Likewise.
6782 * a-wtedit.ads: Likewise.
6783 * a-wtenau.adb: Likewise.
6784 * a-wtenau.ads: Likewise.
6785 * a-wtenio.adb: Likewise.
6786 * a-wtenio.ads: Likewise.
6787 * a-wtfiio.adb: Likewise.
6788 * a-wtfiio.ads: Likewise.
6789 * a-wtflau.adb: Likewise.
6790 * a-wtflau.ads: Likewise.
6791 * a-wtflio.adb: Likewise.
6792 * a-wtflio.ads: Likewise.
6793 * a-wtgeau.adb: Likewise.
6794 * a-wtgeau.ads: Likewise.
6795 * a-wtinau.adb: Likewise.
6796 * a-wtinau.ads: Likewise.
6797 * a-wtinio.adb: Likewise.
6798 * a-wtmoau.adb: Likewise.
6799 * a-wtmoau.ads: Likewise.
6800 * a-wtmoio.adb: Likewise.
6801 * a-wtmoio.ads: Likewise.
6802 * a-wttest.adb: Likewise.
6803 * a-wwboio.adb: Likewise.
6804 * a-zchuni.adb: Likewise.
6805 * a-zchuni.ads: Likewise.
6806 * a-ztcoau.adb: Likewise.
6807 * a-ztcoau.ads: Likewise.
6808 * a-ztcoio.adb: Likewise.
6809 * a-ztcstr.adb: Likewise.
6810 * a-ztcstr.ads: Likewise.
6811 * a-ztdeau.adb: Likewise.
6812 * a-ztdeau.ads: Likewise.
6813 * a-ztdeio.adb: Likewise.
6814 * a-ztdeio.ads: Likewise.
6815 * a-ztedit.adb: Likewise.
6816 * a-ztedit.ads: Likewise.
6817 * a-ztenau.adb: Likewise.
6818 * a-ztenau.ads: Likewise.
6819 * a-ztenio.adb: Likewise.
6820 * a-ztenio.ads: Likewise.
6821 * a-ztexio.adb: Likewise.
6822 * a-ztexio.ads: Likewise.
6823 * a-ztfiio.adb: Likewise.
6824 * a-ztfiio.ads: Likewise.
6825 * a-ztflau.adb: Likewise.
6826 * a-ztflau.ads: Likewise.
6827 * a-ztflio.adb: Likewise.
6828 * a-ztflio.ads: Likewise.
6829 * a-ztgeau.adb: Likewise.
6830 * a-ztgeau.ads: Likewise.
6831 * a-ztinau.adb: Likewise.
6832 * a-ztinau.ads: Likewise.
6833 * a-ztinio.adb: Likewise.
6834 * a-ztmoau.adb: Likewise.
6835 * a-ztmoau.ads: Likewise.
6836 * a-ztmoio.adb: Likewise.
6837 * a-ztmoio.ads: Likewise.
6838 * a-zttest.adb: Likewise.
6839 * a-zzboio.adb: Likewise.
6840 * adadecode.c: Likewise.
6841 * adaint.c: Likewise.
6842 * adaint.h: Likewise.
6843 * alloc.ads: Likewise.
6844 * argv.c: Likewise.
6845 * arit64.c: Likewise.
6846 * atree.adb: Likewise.
6847 * atree.ads: Likewise.
6848 * aux-io.c: Likewise.
6849 * cal.c: Likewise.
6850 * casing.adb: Likewise.
6851 * casing.ads: Likewise.
6852 * cio.c: Likewise.
6853 * csets.adb: Likewise.
6854 * csets.ads: Likewise.
6855 * cstreams.c: Likewise.
6856 * ctrl_c.c: Likewise.
6857 * debug.adb: Likewise.
6858 * debug.ads: Likewise.
6859 * dec.ads: Likewise.
6860 * einfo.adb: Likewise.
6861 * einfo.ads: Likewise.
6862 * elists.adb: Likewise.
6863 * elists.ads: Likewise.
6864 * env.c: Likewise.
6865 * env.h: Likewise.
6866 * errno.c: Likewise.
6867 * exit.c: Likewise.
6868 * fe.h: Likewise.
6869 * final.c: Likewise.
6870 * fname.adb: Likewise.
6871 * fname.ads: Likewise.
6872 * g-allein.ads: Likewise.
6873 * g-alleve.adb: Likewise.
6874 * g-alleve.ads: Likewise.
6875 * g-altcon.adb: Likewise.
6876 * g-altcon.ads: Likewise.
6877 * g-altive.ads: Likewise.
6878 * g-alveop.adb: Likewise.
6879 * g-alveop.ads: Likewise.
6880 * g-alvety.ads: Likewise.
6881 * g-alvevi.ads: Likewise.
6882 * g-arrspl.adb: Likewise.
6883 * g-arrspl.ads: Likewise.
6884 * g-calend.ads: Likewise.
6885 * g-comlin.adb: Likewise.
6886 * g-debpoo.adb: Likewise.
6887 * g-debpoo.ads: Likewise.
6888 * g-eacodu-vms.adb: Likewise.
6889 * g-eacodu.adb: Likewise.
6890 * g-excact.adb: Likewise.
6891 * g-excact.ads: Likewise.
6892 * g-locfil.adb: Likewise.
6893 * g-os_lib.ads: Likewise.
6894 * g-rannum.adb: Likewise.
6895 * g-rannum.ads: Likewise.
6896 * g-regist.adb: Likewise.
6897 * g-regist.ads: Likewise.
6898 * g-signal.adb: Likewise.
6899 * g-signal.ads: Likewise.
6900 * g-soccon.ads: Likewise.
6901 * g-string.adb: Likewise.
6902 * g-string.ads: Likewise.
6903 * g-strspl.ads: Likewise.
6904 * g-timsta.adb: Likewise.
6905 * g-timsta.ads: Likewise.
6906 * g-trasym-vms-alpha.adb: Likewise.
6907 * g-trasym-vms-ia64.adb: Likewise.
6908 * g-utf_32.adb: Likewise.
6909 * g-utf_32.ads: Likewise.
6910 * g-wistsp.ads: Likewise.
6911 * g-zstspl.ads: Likewise.
6912 * gmem.c: Likewise.
6913 * gnatvsn.adb: Likewise.
6914 * gnatvsn.ads: Likewise.
6915 * gsocket.h: Likewise.
6916 * hostparm.ads: Likewise.
6917 * i-c.adb: Likewise.
6918 * i-cexten.ads: Likewise.
6919 * i-cobol.adb: Likewise.
6920 * i-cobol.ads: Likewise.
6921 * i-cpoint.adb: Likewise.
6922 * i-cpoint.ads: Likewise.
6923 * i-cpp.adb: Likewise.
6924 * i-cpp.ads: Likewise.
6925 * i-cstrea-vms.adb: Likewise.
6926 * i-cstrea.adb: Likewise.
6927 * i-cstrea.ads: Likewise.
6928 * i-cstrin.adb: Likewise.
6929 * i-cstrin.ads: Likewise.
6930 * i-forbla-darwin.adb: Likewise.
6931 * i-forbla-unimplemented.ads: Likewise.
6932 * i-forbla.adb: Likewise.
6933 * i-forbla.ads: Likewise.
6934 * i-forlap.ads: Likewise.
6935 * i-fortra.adb: Likewise.
6936 * i-pacdec.adb: Likewise.
6937 * i-pacdec.ads: Likewise.
6938 * i-vxwoio.adb: Likewise.
6939 * i-vxwoio.ads: Likewise.
6940 * indepsw-aix.adb: Likewise.
6941 * indepsw-gnu.adb: Likewise.
6942 * indepsw-mingw.adb: Likewise.
6943 * indepsw.adb: Likewise.
6944 * indepsw.ads: Likewise.
6945 * init.c: Likewise.
6946 * initialize.c: Likewise.
6947 * interfac.ads: Likewise.
6948 * krunch.adb: Likewise.
6949 * krunch.ads: Likewise.
6950 * lib-list.adb: Likewise.
6951 * lib-sort.adb: Likewise.
6952 * lib.adb: Likewise.
6953 * lib.ads: Likewise.
6954 * link.c: Likewise.
6955 * math_lib.adb: Likewise.
6956 * memtrack.adb: Likewise.
6957 * mingw32.h: Likewise.
6958 * mkdir.c: Likewise.
6959 * namet-sp.adb: Likewise.
6960 * namet-sp.ads: Likewise.
6961 * namet.adb: Likewise.
6962 * namet.ads: Likewise.
6963 * nlists.adb: Likewise.
6964 * nlists.ads: Likewise.
6965 * opt.adb: Likewise.
6966 * opt.ads: Likewise.
6967 * output.adb: Likewise.
6968 * output.ads: Likewise.
6969 * raise-gcc.c: Likewise.
6970 * raise.c: Likewise.
6971 * raise.h: Likewise.
6972 * repinfo.adb: Likewise.
6973 * repinfo.ads: Likewise.
6974 * repinfo.h: Likewise.
6975 * rident.ads: Likewise.
6976 * s-addima.adb: Likewise.
6977 * s-addima.ads: Likewise.
6978 * s-addope.adb: Likewise.
6979 * s-addope.ads: Likewise.
6980 * s-arit64.adb: Likewise.
6981 * s-arit64.ads: Likewise.
6982 * s-assert.adb: Likewise.
6983 * s-assert.ads: Likewise.
6984 * s-asthan-vms-alpha.adb: Likewise.
6985 * s-asthan.adb: Likewise.
6986 * s-asthan.ads: Likewise.
6987 * s-atacco.adb: Likewise.
6988 * s-atacco.ads: Likewise.
6989 * s-auxdec-empty.adb: Likewise.
6990 * s-auxdec-empty.ads: Likewise.
6991 * s-auxdec-vms_64.ads: Likewise.
6992 * s-auxdec.adb: Likewise.
6993 * s-auxdec.ads: Likewise.
6994 * s-bitops.adb: Likewise.
6995 * s-bitops.ads: Likewise.
6996 * s-boarop.ads: Likewise.
6997 * s-carsi8.adb: Likewise.
6998 * s-carsi8.ads: Likewise.
6999 * s-carun8.adb: Likewise.
7000 * s-carun8.ads: Likewise.
7001 * s-casi16.adb: Likewise.
7002 * s-casi16.ads: Likewise.
7003 * s-casi32.adb: Likewise.
7004 * s-casi32.ads: Likewise.
7005 * s-casi64.adb: Likewise.
7006 * s-casi64.ads: Likewise.
7007 * s-casuti.ads: Likewise.
7008 * s-caun16.adb: Likewise.
7009 * s-caun16.ads: Likewise.
7010 * s-caun32.adb: Likewise.
7011 * s-caun32.ads: Likewise.
7012 * s-caun64.adb: Likewise.
7013 * s-caun64.ads: Likewise.
7014 * s-chepoo.ads: Likewise.
7015 * s-crc32.adb: Likewise.
7016 * s-crc32.ads: Likewise.
7017 * s-crtl.ads: Likewise.
7018 * s-direio.adb: Likewise.
7019 * s-direio.ads: Likewise.
7020 * s-dsaser.ads: Likewise.
7021 * s-except.adb: Likewise.
7022 * s-except.ads: Likewise.
7023 * s-exctab.adb: Likewise.
7024 * s-exctab.ads: Likewise.
7025 * s-exnint.adb: Likewise.
7026 * s-exnint.ads: Likewise.
7027 * s-exnllf.adb: Likewise.
7028 * s-exnllf.ads: Likewise.
7029 * s-exnlli.adb: Likewise.
7030 * s-exnlli.ads: Likewise.
7031 * s-expint.adb: Likewise.
7032 * s-expint.ads: Likewise.
7033 * s-explli.adb: Likewise.
7034 * s-explli.ads: Likewise.
7035 * s-expllu.adb: Likewise.
7036 * s-expllu.ads: Likewise.
7037 * s-expmod.adb: Likewise.
7038 * s-expmod.ads: Likewise.
7039 * s-expuns.adb: Likewise.
7040 * s-expuns.ads: Likewise.
7041 * s-fatflt.ads: Likewise.
7042 * s-fatgen.adb: Likewise.
7043 * s-fatgen.ads: Likewise.
7044 * s-fatlfl.ads: Likewise.
7045 * s-fatllf.ads: Likewise.
7046 * s-fatsfl.ads: Likewise.
7047 * s-ficobl.ads: Likewise.
7048 * s-fileio.adb: Likewise.
7049 * s-fileio.ads: Likewise.
7050 * s-filofl.ads: Likewise.
7051 * s-finimp.adb: Likewise.
7052 * s-finimp.ads: Likewise.
7053 * s-finroo.adb: Likewise.
7054 * s-finroo.ads: Likewise.
7055 * s-fishfl.ads: Likewise.
7056 * s-fore.adb: Likewise.
7057 * s-fore.ads: Likewise.
7058 * s-fvadfl.ads: Likewise.
7059 * s-fvaffl.ads: Likewise.
7060 * s-fvagfl.ads: Likewise.
7061 * s-gearop.adb: Likewise.
7062 * s-gearop.ads: Likewise.
7063 * s-gecobl.adb: Likewise.
7064 * s-gecobl.ads: Likewise.
7065 * s-gecola.adb: Likewise.
7066 * s-gecola.ads: Likewise.
7067 * s-gerebl.adb: Likewise.
7068 * s-gerebl.ads: Likewise.
7069 * s-gerela.adb: Likewise.
7070 * s-gerela.ads: Likewise.
7071 * s-geveop.adb: Likewise.
7072 * s-geveop.ads: Likewise.
7073 * s-gloloc.adb: Likewise.
7074 * s-gloloc.ads: Likewise.
7075 * s-hibaen.ads: Likewise.
7076 * s-imenne.adb: Likewise.
7077 * s-imenne.ads: Likewise.
7078 * s-imgbiu.adb: Likewise.
7079 * s-imgbiu.ads: Likewise.
7080 * s-imgboo.adb: Likewise.
7081 * s-imgboo.ads: Likewise.
7082 * s-imgcha.adb: Likewise.
7083 * s-imgcha.ads: Likewise.
7084 * s-imgdec.adb: Likewise.
7085 * s-imgdec.ads: Likewise.
7086 * s-imgenu.adb: Likewise.
7087 * s-imgenu.ads: Likewise.
7088 * s-imgint.adb: Likewise.
7089 * s-imgint.ads: Likewise.
7090 * s-imgllb.adb: Likewise.
7091 * s-imgllb.ads: Likewise.
7092 * s-imglld.adb: Likewise.
7093 * s-imglld.ads: Likewise.
7094 * s-imglli.adb: Likewise.
7095 * s-imglli.ads: Likewise.
7096 * s-imgllu.adb: Likewise.
7097 * s-imgllu.ads: Likewise.
7098 * s-imgllw.adb: Likewise.
7099 * s-imgllw.ads: Likewise.
7100 * s-imgrea.adb: Likewise.
7101 * s-imgrea.ads: Likewise.
7102 * s-imguns.adb: Likewise.
7103 * s-imguns.ads: Likewise.
7104 * s-imgwch.adb: Likewise.
7105 * s-imgwch.ads: Likewise.
7106 * s-imgwiu.adb: Likewise.
7107 * s-imgwiu.ads: Likewise.
7108 * s-inmaop-dummy.adb: Likewise.
7109 * s-inmaop-vms.adb: Likewise.
7110 * s-inmaop.ads: Likewise.
7111 * s-interr-hwint.adb: Likewise.
7112 * s-interr-sigaction.adb: Likewise.
7113 * s-interr-vms.adb: Likewise.
7114 * s-interr.adb: Likewise.
7115 * s-interr.ads: Likewise.
7116 * s-intman-dummy.adb: Likewise.
7117 * s-intman-mingw.adb: Likewise.
7118 * s-intman-posix.adb: Likewise.
7119 * s-intman-solaris.adb: Likewise.
7120 * s-intman-vms.adb: Likewise.
7121 * s-intman-vms.ads: Likewise.
7122 * s-intman-vxworks.adb: Likewise.
7123 * s-intman-vxworks.ads: Likewise.
7124 * s-intman.ads: Likewise.
7125 * s-io.adb: Likewise.
7126 * s-io.ads: Likewise.
7127 * s-linux-alpha.ads: Likewise.
7128 * s-linux-hppa.ads: Likewise.
7129 * s-linux.ads: Likewise.
7130 * s-maccod.ads: Likewise.
7131 * s-mantis.adb: Likewise.
7132 * s-mantis.ads: Likewise.
7133 * s-mastop-irix.adb: Likewise.
7134 * s-mastop.adb: Likewise.
7135 * s-mastop.ads: Likewise.
7136 * s-memcop.ads: Likewise.
7137 * s-memory-mingw.adb: Likewise.
7138 * s-memory.adb: Likewise.
7139 * s-memory.ads: Likewise.
7140 * s-os_lib.ads: Likewise.
7141 * s-oscons-tmplt.c: Likewise.
7142 * s-osinte-aix.adb: Likewise.
7143 * s-osinte-darwin.adb: Likewise.
7144 * s-osinte-freebsd.adb: Likewise.
7145 * s-osinte-irix.adb: Likewise.
7146 * s-osinte-lynxos-3.adb: Likewise.
7147 * s-osinte-rtems.ads: Likewise.
7148 * s-osinte-tru64.adb: Likewise.
7149 * s-osinte-vxworks-kernel.adb: Likewise.
7150 * s-osinte-vxworks.adb: Likewise.
7151 * s-osprim-mingw.adb: Likewise.
7152 * s-osprim-posix.adb: Likewise.
7153 * s-osprim-solaris.adb: Likewise.
7154 * s-osprim-unix.adb: Likewise.
7155 * s-osprim-vms.adb: Likewise.
7156 * s-osprim-vms.ads: Likewise.
7157 * s-osprim-vxworks.adb: Likewise.
7158 * s-osprim.ads: Likewise.
7159 * s-pack03.adb: Likewise.
7160 * s-pack03.ads: Likewise.
7161 * s-pack05.adb: Likewise.
7162 * s-pack05.ads: Likewise.
7163 * s-pack06.adb: Likewise.
7164 * s-pack06.ads: Likewise.
7165 * s-pack07.adb: Likewise.
7166 * s-pack07.ads: Likewise.
7167 * s-pack09.adb: Likewise.
7168 * s-pack09.ads: Likewise.
7169 * s-pack10.adb: Likewise.
7170 * s-pack10.ads: Likewise.
7171 * s-pack11.adb: Likewise.
7172 * s-pack11.ads: Likewise.
7173 * s-pack12.adb: Likewise.
7174 * s-pack12.ads: Likewise.
7175 * s-pack13.adb: Likewise.
7176 * s-pack13.ads: Likewise.
7177 * s-pack14.adb: Likewise.
7178 * s-pack14.ads: Likewise.
7179 * s-pack15.adb: Likewise.
7180 * s-pack15.ads: Likewise.
7181 * s-pack17.adb: Likewise.
7182 * s-pack17.ads: Likewise.
7183 * s-pack18.adb: Likewise.
7184 * s-pack18.ads: Likewise.
7185 * s-pack19.adb: Likewise.
7186 * s-pack19.ads: Likewise.
7187 * s-pack20.adb: Likewise.
7188 * s-pack20.ads: Likewise.
7189 * s-pack21.adb: Likewise.
7190 * s-pack21.ads: Likewise.
7191 * s-pack22.adb: Likewise.
7192 * s-pack22.ads: Likewise.
7193 * s-pack23.adb: Likewise.
7194 * s-pack23.ads: Likewise.
7195 * s-pack24.adb: Likewise.
7196 * s-pack24.ads: Likewise.
7197 * s-pack25.adb: Likewise.
7198 * s-pack25.ads: Likewise.
7199 * s-pack26.adb: Likewise.
7200 * s-pack26.ads: Likewise.
7201 * s-pack27.adb: Likewise.
7202 * s-pack27.ads: Likewise.
7203 * s-pack28.adb: Likewise.
7204 * s-pack28.ads: Likewise.
7205 * s-pack29.adb: Likewise.
7206 * s-pack29.ads: Likewise.
7207 * s-pack30.adb: Likewise.
7208 * s-pack30.ads: Likewise.
7209 * s-pack31.adb: Likewise.
7210 * s-pack31.ads: Likewise.
7211 * s-pack33.adb: Likewise.
7212 * s-pack33.ads: Likewise.
7213 * s-pack34.adb: Likewise.
7214 * s-pack34.ads: Likewise.
7215 * s-pack35.adb: Likewise.
7216 * s-pack35.ads: Likewise.
7217 * s-pack36.adb: Likewise.
7218 * s-pack36.ads: Likewise.
7219 * s-pack37.adb: Likewise.
7220 * s-pack37.ads: Likewise.
7221 * s-pack38.adb: Likewise.
7222 * s-pack38.ads: Likewise.
7223 * s-pack39.adb: Likewise.
7224 * s-pack39.ads: Likewise.
7225 * s-pack40.adb: Likewise.
7226 * s-pack40.ads: Likewise.
7227 * s-pack41.adb: Likewise.
7228 * s-pack41.ads: Likewise.
7229 * s-pack42.adb: Likewise.
7230 * s-pack42.ads: Likewise.
7231 * s-pack43.adb: Likewise.
7232 * s-pack43.ads: Likewise.
7233 * s-pack44.adb: Likewise.
7234 * s-pack44.ads: Likewise.
7235 * s-pack45.adb: Likewise.
7236 * s-pack45.ads: Likewise.
7237 * s-pack46.adb: Likewise.
7238 * s-pack46.ads: Likewise.
7239 * s-pack47.adb: Likewise.
7240 * s-pack47.ads: Likewise.
7241 * s-pack48.adb: Likewise.
7242 * s-pack48.ads: Likewise.
7243 * s-pack49.adb: Likewise.
7244 * s-pack49.ads: Likewise.
7245 * s-pack50.adb: Likewise.
7246 * s-pack50.ads: Likewise.
7247 * s-pack51.adb: Likewise.
7248 * s-pack51.ads: Likewise.
7249 * s-pack52.adb: Likewise.
7250 * s-pack52.ads: Likewise.
7251 * s-pack53.adb: Likewise.
7252 * s-pack53.ads: Likewise.
7253 * s-pack54.adb: Likewise.
7254 * s-pack54.ads: Likewise.
7255 * s-pack55.adb: Likewise.
7256 * s-pack55.ads: Likewise.
7257 * s-pack56.adb: Likewise.
7258 * s-pack56.ads: Likewise.
7259 * s-pack57.adb: Likewise.
7260 * s-pack57.ads: Likewise.
7261 * s-pack58.adb: Likewise.
7262 * s-pack58.ads: Likewise.
7263 * s-pack59.adb: Likewise.
7264 * s-pack59.ads: Likewise.
7265 * s-pack60.adb: Likewise.
7266 * s-pack60.ads: Likewise.
7267 * s-pack61.adb: Likewise.
7268 * s-pack61.ads: Likewise.
7269 * s-pack62.adb: Likewise.
7270 * s-pack62.ads: Likewise.
7271 * s-pack63.adb: Likewise.
7272 * s-pack63.ads: Likewise.
7273 * s-parame-ae653.ads: Likewise.
7274 * s-parame-hpux.ads: Likewise.
7275 * s-parame-rtems.adb: Likewise.
7276 * s-parame-vms-alpha.ads: Likewise.
7277 * s-parame-vms-ia64.ads: Likewise.
7278 * s-parame-vms-restrict.ads: Likewise.
7279 * s-parame-vxworks.adb: Likewise.
7280 * s-parame-vxworks.ads: Likewise.
7281 * s-parame.adb: Likewise.
7282 * s-parame.ads: Likewise.
7283 * s-parint.adb: Likewise.
7284 * s-parint.ads: Likewise.
7285 * s-pooglo.adb: Likewise.
7286 * s-pooglo.ads: Likewise.
7287 * s-pooloc.adb: Likewise.
7288 * s-pooloc.ads: Likewise.
7289 * s-poosiz.adb: Likewise.
7290 * s-poosiz.ads: Likewise.
7291 * s-powtab.ads: Likewise.
7292 * s-proinf-irix-athread.adb: Likewise.
7293 * s-proinf-irix-athread.ads: Likewise.
7294 * s-proinf.adb: Likewise.
7295 * s-proinf.ads: Likewise.
7296 * s-purexc.ads: Likewise.
7297 * s-rannum.adb: Likewise.
7298 * s-rannum.ads: Likewise.
7299 * s-restri.adb: Likewise.
7300 * s-restri.ads: Likewise.
7301 * s-rident.ads: Likewise.
7302 * s-rpc.adb: Likewise.
7303 * s-rpc.ads: Likewise.
7304 * s-scaval.adb: Likewise.
7305 * s-scaval.ads: Likewise.
7306 * s-secsta.adb: Likewise.
7307 * s-secsta.ads: Likewise.
7308 * s-sequio.adb: Likewise.
7309 * s-sequio.ads: Likewise.
7310 * s-shasto.adb: Likewise.
7311 * s-shasto.ads: Likewise.
7312 * s-soflin.adb: Likewise.
7313 * s-soflin.ads: Likewise.
7314 * s-solita.adb: Likewise.
7315 * s-solita.ads: Likewise.
7316 * s-sopco3.adb: Likewise.
7317 * s-sopco3.ads: Likewise.
7318 * s-sopco4.adb: Likewise.
7319 * s-sopco4.ads: Likewise.
7320 * s-sopco5.adb: Likewise.
7321 * s-sopco5.ads: Likewise.
7322 * s-stache.adb: Likewise.
7323 * s-stache.ads: Likewise.
7324 * s-stalib.adb: Likewise.
7325 * s-stalib.ads: Likewise.
7326 * s-stausa.adb: Likewise.
7327 * s-stausa.ads: Likewise.
7328 * s-stchop-limit.ads: Likewise.
7329 * s-stchop-rtems.adb: Likewise.
7330 * s-stchop-vxworks.adb: Likewise.
7331 * s-stchop.adb: Likewise.
7332 * s-stchop.ads: Likewise.
7333 * s-stoele.adb: Likewise.
7334 * s-stoele.ads: Likewise.
7335 * s-stopoo.adb: Likewise.
7336 * s-stopoo.ads: Likewise.
7337 * s-stratt.adb: Likewise.
7338 * s-stratt.ads: Likewise.
7339 * s-strcom.adb: Likewise.
7340 * s-strcom.ads: Likewise.
7341 * s-string.adb: Likewise.
7342 * s-string.ads: Likewise.
7343 * s-strops.adb: Likewise.
7344 * s-strops.ads: Likewise.
7345 * s-strxdr.adb: Likewise.
7346 * s-ststop.adb: Likewise.
7347 * s-ststop.ads: Likewise.
7348 * s-taasde.adb: Likewise.
7349 * s-taasde.ads: Likewise.
7350 * s-tadeca.adb: Likewise.
7351 * s-tadeca.ads: Likewise.
7352 * s-tadert.adb: Likewise.
7353 * s-tadert.ads: Likewise.
7354 * s-taenca.adb: Likewise.
7355 * s-taenca.ads: Likewise.
7356 * s-taprob.ads: Likewise.
7357 * s-taprop-dummy.adb: Likewise.
7358 * s-taprop-hpux-dce.adb: Likewise.
7359 * s-taprop-irix.adb: Likewise.
7360 * s-taprop-linux.adb: Likewise.
7361 * s-taprop-lynxos.adb: Likewise.
7362 * s-taprop-mingw.adb: Likewise.
7363 * s-taprop-posix.adb: Likewise.
7364 * s-taprop-solaris.adb: Likewise.
7365 * s-taprop-tru64.adb: Likewise.
7366 * s-taprop-vms.adb: Likewise.
7367 * s-taprop-vxworks.adb: Likewise.
7368 * s-taprop.ads: Likewise.
7369 * s-tarest.adb: Likewise.
7370 * s-tarest.ads: Likewise.
7371 * s-tasdeb.adb: Likewise.
7372 * s-tasdeb.ads: Likewise.
7373 * s-tasinf-irix.ads: Likewise.
7374 * s-tasinf-linux.adb: Likewise.
7375 * s-tasinf-linux.ads: Likewise.
7376 * s-tasinf-mingw.adb: Likewise.
7377 * s-tasinf-mingw.ads: Likewise.
7378 * s-tasinf-solaris.adb: Likewise.
7379 * s-tasinf-solaris.ads: Likewise.
7380 * s-tasinf-tru64.ads: Likewise.
7381 * s-tasinf.adb: Likewise.
7382 * s-tasinf.ads: Likewise.
7383 * s-tasini.adb: Likewise.
7384 * s-tasini.ads: Likewise.
7385 * s-taskin.adb: Likewise.
7386 * s-taskin.ads: Likewise.
7387 * s-taspri-dummy.ads: Likewise.
7388 * s-taspri-hpux-dce.ads: Likewise.
7389 * s-taspri-mingw.ads: Likewise.
7390 * s-taspri-solaris.ads: Likewise.
7391 * s-taspri-tru64.ads: Likewise.
7392 * s-taspri-vms.ads: Likewise.
7393 * s-taspri-vxworks.ads: Likewise.
7394 * s-tasque.adb: Likewise.
7395 * s-tasque.ads: Likewise.
7396 * s-tasren.adb: Likewise.
7397 * s-tasren.ads: Likewise.
7398 * s-tasres.ads: Likewise.
7399 * s-tassta.adb: Likewise.
7400 * s-tassta.ads: Likewise.
7401 * s-tasuti.adb: Likewise.
7402 * s-tasuti.ads: Likewise.
7403 * s-tfsetr-default.adb: Likewise.
7404 * s-tfsetr-vxworks.adb: Likewise.
7405 * s-tpinop.adb: Likewise.
7406 * s-tpinop.ads: Likewise.
7407 * s-tpoben.adb: Likewise.
7408 * s-tpoben.ads: Likewise.
7409 * s-tpobop.adb: Likewise.
7410 * s-tpobop.ads: Likewise.
7411 * s-tpopde-vms.adb: Likewise.
7412 * s-tpopde-vms.ads: Likewise.
7413 * s-tpopsp-lynxos.adb: Likewise.
7414 * s-tpopsp-posix-foreign.adb: Likewise.
7415 * s-tpopsp-posix.adb: Likewise.
7416 * s-tpopsp-solaris.adb: Likewise.
7417 * s-tpopsp-vxworks.adb: Likewise.
7418 * s-tporft.adb: Likewise.
7419 * s-tposen.adb: Likewise.
7420 * s-tposen.ads: Likewise.
7421 * s-traceb.adb: Likewise.
7422 * s-traceb.ads: Likewise.
7423 * s-traces-default.adb: Likewise.
7424 * s-traces.adb: Likewise.
7425 * s-traces.ads: Likewise.
7426 * s-traent-vms.adb: Likewise.
7427 * s-traent-vms.ads: Likewise.
7428 * s-traent.adb: Likewise.
7429 * s-traent.ads: Likewise.
7430 * s-trafor-default.adb: Likewise.
7431 * s-trafor-default.ads: Likewise.
7432 * s-tratas-default.adb: Likewise.
7433 * s-tratas.adb: Likewise.
7434 * s-tratas.ads: Likewise.
7435 * s-unstyp.ads: Likewise.
7436 * s-utf_32.adb: Likewise.
7437 * s-utf_32.ads: Likewise.
7438 * s-vaflop-vms-alpha.adb: Likewise.
7439 * s-vaflop.adb: Likewise.
7440 * s-vaflop.ads: Likewise.
7441 * s-valboo.adb: Likewise.
7442 * s-valboo.ads: Likewise.
7443 * s-valcha.adb: Likewise.
7444 * s-valcha.ads: Likewise.
7445 * s-valdec.adb: Likewise.
7446 * s-valdec.ads: Likewise.
7447 * s-valenu.adb: Likewise.
7448 * s-valenu.ads: Likewise.
7449 * s-valint.adb: Likewise.
7450 * s-valint.ads: Likewise.
7451 * s-vallld.adb: Likewise.
7452 * s-vallld.ads: Likewise.
7453 * s-vallli.adb: Likewise.
7454 * s-vallli.ads: Likewise.
7455 * s-valllu.adb: Likewise.
7456 * s-valllu.ads: Likewise.
7457 * s-valrea.adb: Likewise.
7458 * s-valrea.ads: Likewise.
7459 * s-valuns.adb: Likewise.
7460 * s-valuns.ads: Likewise.
7461 * s-valuti.adb: Likewise.
7462 * s-valuti.ads: Likewise.
7463 * s-valwch.adb: Likewise.
7464 * s-valwch.ads: Likewise.
7465 * s-veboop.adb: Likewise.
7466 * s-veboop.ads: Likewise.
7467 * s-vector.ads: Likewise.
7468 * s-vercon.adb: Likewise.
7469 * s-vercon.ads: Likewise.
7470 * s-vmexta.adb: Likewise.
7471 * s-vmexta.ads: Likewise.
7472 * s-vxwext-kernel.ads: Likewise.
7473 * s-vxwext-rtp.adb: Likewise.
7474 * s-vxwext-rtp.ads: Likewise.
7475 * s-vxwext.ads: Likewise.
7476 * s-vxwork-arm.ads: Likewise.
7477 * s-vxwork-m68k.ads: Likewise.
7478 * s-vxwork-mips.ads: Likewise.
7479 * s-vxwork-ppc.ads: Likewise.
7480 * s-vxwork-sparcv9.ads: Likewise.
7481 * s-vxwork-x86.ads: Likewise.
7482 * s-wchcnv.adb: Likewise.
7483 * s-wchcnv.ads: Likewise.
7484 * s-wchcon.adb: Likewise.
7485 * s-wchcon.ads: Likewise.
7486 * s-wchjis.adb: Likewise.
7487 * s-wchjis.ads: Likewise.
7488 * s-wchstw.adb: Likewise.
7489 * s-wchstw.ads: Likewise.
7490 * s-wchwts.adb: Likewise.
7491 * s-wchwts.ads: Likewise.
7492 * s-widboo.adb: Likewise.
7493 * s-widboo.ads: Likewise.
7494 * s-widcha.adb: Likewise.
7495 * s-widcha.ads: Likewise.
7496 * s-widenu.adb: Likewise.
7497 * s-widenu.ads: Likewise.
7498 * s-widlli.adb: Likewise.
7499 * s-widlli.ads: Likewise.
7500 * s-widllu.adb: Likewise.
7501 * s-widllu.ads: Likewise.
7502 * s-widwch.adb: Likewise.
7503 * s-widwch.ads: Likewise.
7504 * s-win32.ads: Likewise.
7505 * s-winext.ads: Likewise.
7506 * s-wwdcha.adb: Likewise.
7507 * s-wwdcha.ads: Likewise.
7508 * s-wwdenu.adb: Likewise.
7509 * s-wwdenu.ads: Likewise.
7510 * s-wwdwch.adb: Likewise.
7511 * s-wwdwch.ads: Likewise.
7512 * scans.adb: Likewise.
7513 * scans.ads: Likewise.
7514 * seh_init.c: Likewise.
7515 * sfn_scan.adb: Likewise.
7516 * sinfo.adb: Likewise.
7517 * sinfo.ads: Likewise.
7518 * sinput.adb: Likewise.
7519 * sinput.ads: Likewise.
7520 * snames.adb: Likewise.
7521 * snames.ads: Likewise.
7522 * socket.c: Likewise.
7523 * stand.adb: Likewise.
7524 * stand.ads: Likewise.
7525 * stringt.adb: Likewise.
7526 * stringt.ads: Likewise.
7527 * sysdep.c: Likewise.
7528 * system-aix.ads: Likewise.
7529 * system-darwin-ppc.ads: Likewise.
7530 * system-darwin-x86.ads: Likewise.
7531 * system-darwin-x86_64.ads: Likewise.
7532 * system-freebsd-x86.ads: Likewise.
7533 * system-hpux-ia64.ads: Likewise.
7534 * system-hpux.ads: Likewise.
7535 * system-irix-n32.ads: Likewise.
7536 * system-irix-n64.ads: Likewise.
7537 * system-irix-o32.ads: Likewise.
7538 * system-linux-alpha.ads: Likewise.
7539 * system-linux-hppa.ads: Likewise.
7540 * system-linux-ia64.ads: Likewise.
7541 * system-linux-mips.ads: Likewise.
7542 * system-linux-mipsel.ads: Likewise.
7543 * system-linux-ppc.ads: Likewise.
7544 * system-linux-ppc64.ads: Likewise.
7545 * system-linux-s390.ads: Likewise.
7546 * system-linux-s390x.ads: Likewise.
7547 * system-linux-sh4.ads: Likewise.
7548 * system-linux-sparc.ads: Likewise.
7549 * system-linux-sparcv9.ads: Likewise.
7550 * system-linux-x86.ads: Likewise.
7551 * system-linux-x86_64.ads: Likewise.
7552 * system-lynxos-ppc.ads: Likewise.
7553 * system-lynxos-x86.ads: Likewise.
7554 * system-mingw-x86_64.ads: Likewise.
7555 * system-mingw.ads: Likewise.
7556 * system-rtems.ads: Likewise.
7557 * system-solaris-sparc.ads: Likewise.
7558 * system-solaris-sparcv9.ads: Likewise.
7559 * system-solaris-x86.ads: Likewise.
7560 * system-solaris-x86_64.ads: Likewise.
7561 * system-tru64.ads: Likewise.
7562 * system-vms-ia64.ads: Likewise.
7563 * system-vms-zcx.ads: Likewise.
7564 * system-vms.ads: Likewise.
7565 * system-vms_64.ads: Likewise.
7566 * system-vxworks-arm.ads: Likewise.
7567 * system-vxworks-m68k.ads: Likewise.
7568 * system-vxworks-mips.ads: Likewise.
7569 * system-vxworks-ppc.ads: Likewise.
7570 * system-vxworks-sparcv9.ads: Likewise.
7571 * system-vxworks-x86.ads: Likewise.
7572 * system.ads: Likewise.
7573 * table.adb: Likewise.
7574 * table.ads: Likewise.
7575 * targext.c: Likewise.
7576 * targparm.ads: Likewise.
7577 * tree_in.adb: Likewise.
7578 * tree_in.ads: Likewise.
7579 * tree_io.adb: Likewise.
7580 * tree_io.ads: Likewise.
7581 * types.adb: Likewise.
7582 * types.ads: Likewise.
7583 * uintp.adb: Likewise.
7584 * uintp.ads: Likewise.
7585 * uname.adb: Likewise.
7586 * uname.ads: Likewise.
7587 * urealp.adb: Likewise.
7588 * urealp.ads: Likewise.
7589 * vx_stack_info.c: Likewise.
7590 * widechar.adb: Likewise.
7591 * widechar.ads: Likewise.
7592 * exp_attr.adb: Change copyright header to refer to version
7593 3 of the GNU General Public License and to point readers at the
7594 COPYING3 file and the FSF's license web page.
7595 * sem.adb: Likewise.
7596 * sem_attr.ads: Likewise.
7597 * freeze.adb: Likewise.
7598 * freeze.ads: Likewise.
7599 * errout.ads: Likewise.
7600 * erroutc.adb: Likewise.
7601 * exp_ch11.ads: Likewise.
7602
76032009-04-09 Jakub Jelinek <jakub@redhat.com>
7604
7605 * config-lang.in: Change copyright header to refer to version
7606 3 of the GNU General Public License and to point readers at the
7607 COPYING3 file and the FSF's license web page.
7608 * gcc-interface/trans.c: Likewise.
7609 * gnathtml.pl: Likewise.
7610 * gcc-interface/ada.h: Likewise. Remove runtime exception.
7611 * gcc-interface/gigi.h: Likewise.
7612 * gcc-interface/misc.c: Likewise.
7613 * gcc-interface/targtyps.c: Likewise.
7614
dd8cfe3a
AC
76152009-04-09 Nicolas Setton <setton@adacore.com>
7616
7617 * s-osinte-darwin.ads: Fix wrong binding to struc timeval.
7618
7619 * s-osinte-darwin.adb (To_Timeval): Adapt to fixed implementation of
7620 struct_timeval.
7621
76222009-04-09 Bob Duff <duff@adacore.com>
7623
7624 * exp_ch5.adb, exp_ch9.adb: Correct miscellaneous Slocs in
7625 internally-generated nodes related to select statements to avoid
7626 confusing the debugger.
7627
76282009-04-09 Pascal Obry <obry@adacore.com>
7629
7630 * make.adb: Ensure that all linker arguments are duplicated.
7631
59f3dd0a
AC
76322009-04-09 Robert Dewar <dewar@adacore.com>
7633
7634 * sem_ch5.adb: Minor reformatting
7635
76362009-04-09 Vincent Celier <celier@adacore.com>
7637
7638 * vms_data.ads:
7639 Change GNAT CHECK qualifier /DIAGNOSIS_LIMIT to /DIAGNOSTIC_LIMIT
7640 New qualifier /LEXPAND_SOURCE=nnn for -gnatGnnn
7641 New qualifier /LXDEBUG=nnn for -gnatDnnn
7642 For H820-010
7643
7644 * gnat_ugn.texi:
7645 Update documentation for VMS qualifiers equivalent to -gnatGnn and
7646 -gnatDnn
7647
76482009-04-09 Nicolas Setton <setton@adacore.com>
7649
7650 * s-osinte-darwin.ads: (Pad_Type): Make this an array of unsigned_long,
7651 to match layout of siginfo_t in sys/signal.h.
7652
7653 * gcc-interface/Makefile.in: Add section for x86_64 darwin.
7654
76552009-04-09 Thomas Quinot <quinot@adacore.com>
7656
7657 * g-socket.ads: (Fd_Set): Use Interfaces.C.long alignment.
7658
76592009-04-09 Nicolas Setton <setton@adacore.com>
7660
7661 * s-oscons-tmplt.c: Allow long lines in the generated spec.
7662 Add generation of Darwin-specific constants needed when binding to the
7663 pthread library.
7664
76652009-04-09 Robert Dewar <dewar@adacore.com>
7666
53b2323e
RH
7667 * checks.adb:
7668 (Insert_Valid_Check): Avoid unnecessary generation of junk declaration
7669 when no invalid values exist, Avoid duplicate read of atomic variable.
59f3dd0a 7670
53b2323e
RH
7671 * cstand.adb (Build_Signed_Integer_Type): Set Is_Known_Valid
7672 (Standard_Unsigned): Set Is_Known_Valid
59f3dd0a 7673
53b2323e 7674 * sem_ch3.adb (Analyze_Subtype_Declaration): Copy Is_Known_Valid on
59f3dd0a 7675 subtype declaration if no constraint.
53b2323e
RH
7676 (Set_Modular_Size): Set Is_Known_Valid if appropriate
7677 (Build_Derived_Numeric_Type): Copy Is_Known_Valid if no constraint
59f3dd0a 7678
f7d7bb51
AC
76792009-04-09 Robert Dewar <dewar@adacore.com>
7680
7681 * switch-c.adb, gnat_ugn.texi, vms_data.ads, switch.adb,
7682 switch.ads: for numeric switches, an optional equal sign is always
7683 allowed.
7684
76852009-04-09 Vincent Celier <celier@adacore.com>
7686
7687 * prj-nmsc.adb (Get_Unit): Do not consider Casing on platform where
7688 the case of file names is not significant.
7689
c75c4293
AC
76902009-04-09 Vincent Celier <celier@adacore.com>
7691
7692 * errout.adb: Remove dependency on package Style
7693
7694 * style.ads, styleg.adb, styleg.ads (RM_Column_Check): Remove function,
7695 moved to Stylesw.
7696
7697 * stylesw.ads, stylesw.adb (RM_Column_Check): New function, moved from
7698 Styleg.
7699
7700 * errutil.adb, par.adb: Import Stylesw
7701
77022009-04-09 Arnaud Charlet <charlet@adacore.com>
7703
7704 * opt.ads: Fix typos.
7705
77062009-04-09 Robert Dewar <dewar@adacore.com>
7707
7708 * einfo.adb: Minor reformatting
7709
e7aea0fa
RD
77102009-04-09 Robert Dewar <dewar@adacore.com>
7711
7712 * gcc-interface/Make-lang.in, style.ads, style.adb: Reorganize style
7713 units.
7714
7715 * styleg-c.ads, styleg-c.adb: Removed, no longer used.
7716
1c383b4c
AC
77172009-04-09 Robert Dewar <dewar@adacore.com>
7718
7719 * g-comver.adb: Minor reformatting.
7720
77212009-04-09 Thomas Quinot <quinot@adacore.com>
7722
7723 * lib-load.ads (Load_Unit): Update documentation.
7724
77252009-04-09 Ed Schonberg <schonberg@adacore.com>
7726
7727 * lib-load.adb (Load_Unit): When loading the parent of a child unit
7728 named in a with_clause, retain the with_clause to preserve a
7729 limited_with indication.
7730
d7ba4df4
RD
77312009-04-09 Robert Dewar <dewar@adacore.com>
7732
7733 * sem_ch7.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, sem_util.adb,
7734 exp_ch13.adb, sem_ch6.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb,
7735 sem_cat.adb: Code clean up: use Is_Package_Or_Generic_Package where
7736 possible to replace an OR of two separate tests.
7737
923e6ff3
RD
77382009-04-09 Robert Dewar <dewar@adacore.com>
7739
7740 * binderr.adb, errout.adb, errutil.adb: New circuitry for handling
7741 Maximum_Messages.
7742
7743 * erroutc.adb, erroutc.ads (Warnings_Suppressed): Now tests global
7744 warning status as well.
7745
7746 * opt.ads (Maximum_Messages): New name for Maximum_Errors.
7747
7748 * switch-b.adb, switch-c.adb: Change name Maximum_Errors to
7749 Maximum_Messages.
7750
7751 * bindusg.adb, usage.adb: Update line for -gnatm switch
7752
7753 * gnat_ugn.texi: Update documentation for -gnatmnn compiler switch and
7754 -mnn binder switch.
7755
77562009-04-09 Robert Dewar <dewar@adacore.com>
7757
7758 * sem_ch10.adb: Minor reformatting.
7759
beb50807
AC
77602009-04-09 Bob Duff <duff@adacore.com>
7761
7762 * exp_ch11.adb (Expand_Exception_Handlers, Prepend_Call_To_Handler):
7763 Set Sloc of generated nodes for calls to Undefer_Aborts and
7764 Save_Occurrence to No_Location, so the debugger ignores them and
7765 therefore does not jump back and forth when single stepping.
7766
77672009-04-09 Robert Dewar <dewar@adacore.com>
7768
7769 * switch-b.adb: Minor reformatting.
7770
a4100e55
RD
77712009-04-09 Robert Dewar <dewar@adacore.com>
7772
7773 * sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, exp_atag.adb, layout.adb,
7774 sem_dist.adb, exp_ch7.adb, sem_ch5.adb, sem_type.adb, exp_imgv.adb,
7775 exp_util.adb, sem_aux.adb, sem_aux.ads, exp_attr.adb, exp_ch9.adb,
7776 sem_ch7.adb, inline.adb, fe.h, sem_ch9.adb, exp_code.adb, einfo.adb,
7777 einfo.ads, exp_pakd.adb, checks.adb, sem_ch12.adb, exp_smem.adb,
7778 tbuild.adb, freeze.adb, sem_util.adb, sem_res.adb, sem_attr.adb,
7779 exp_dbug.adb, sem_case.adb, exp_tss.adb, exp_ch4.adb, exp_ch6.adb,
7780 sem_smem.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, exp_disp.adb,
7781 sem_ch8.adb, exp_aggr.adb, sem_eval.adb, sem_cat.adb, exp_dist.adb,
7782 sem_ch13.adb, exp_strm.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb:
7783 Reorganize einfo/sem_aux, moving routines from einfo to sem_aux
7784
f17889b3
RD
77852009-04-09 Robert Dewar <dewar@adacore.com>
7786
7787 * exp_util.adb (Silly_Boolean_Array_Xor_Test): Simplify existing code.
7788
7789 * atree.h: Add Elist26
7790
7791 * gnat_ugn.texi: Complete documentation deprecating -gnatN for non-gcc
7792 backends.
7793
b16d9747
JM
77942009-04-09 Javier Miranda <miranda@adacore.com>
7795
7796 * exp_disp.adb (Export_DT): Addition of a new argument (Index); used to
7797 retrieve from the Dispatch_Table_Wrappers list the external name.
7798 Addition of documentation.
7799 (Make_Secondary_DT): Addition of a new argument (Suffix_Index) that is
7800 used to export secondary dispatch tables (in the previous version of
7801 the frontend only primary dispatch tables were exported). Addition of
7802 documentation.
7803 (Import_DT): New subprogram (internal of Make_Tags). Used to import a
7804 dispatch table of a given tagged type.
7805 (Make_Tags): Modified to import secondary dispatch tables.
7806
7807 * sem_ch3.adb (Analyze_Object_Declaration): Code cleanup.
7808 (Constant_Redeclaration): Code cleanup.
7809
7810 * einfo.ads (Dispatch_Table_Wrapper): Renamed to
7811 Dispatch_Table_Wrappers. Update documentation.
7812
7813 * einfo.adb (Dispatch_Table_Wrapper, Set_Dispatch_Table_Wrapper):
7814 Renamed to Dispatch_Table_Wrappers.
7815
7816 * sem_util.adb (Collect_Interface_Components): Improve handling of
7817 private types.
7818
7819 * atree.ads (Elist26, Set_Elist26): New subprograms
7820
7821 * atree.adb (Elist26, Set_Elist26): New subprograms
7822
59262ebb
AC
78232009-04-09 Javier Miranda <miranda@adacore.com>
7824
7825 * sem_ch3.adb (Build_Derived_Record_Type): Fix typo.
7826 (Derive_Progenitor_Subprograms): Handle interfaces in subtypes of
7827 tagged types.
7828
78292009-04-09 Robert Dewar <dewar@adacore.com>
7830
7831 * s-direio.adb: Minor reformatting
7832
7833 * exp_ch4.adb (Expand_Concatenate): Avoid overflow checks for String
7834
fa969310
AC
78352009-04-09 Robert Dewar <dewar@adacore.com>
7836
7837 * exp_ch4.adb (Expand_Concatenate): Improve handling of overflow cases
7838
78392009-04-09 Pascal Obry <obry@adacore.com>
7840
7841 * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coinve.ads,
7842 s-tpoben.adb, s-tpoben.ads, s-finimp.adb, s-finimp.ads,
7843 a-convec.adb, a-convec.ads, a-finali.adb, a-finali.ads,
7844 a-filico.ads: Add some missing overriding keywords.
7845
3c25856a
AC
78462009-04-09 Pascal Obry <obry@adacore.com>
7847
7848 * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coorma.ads, a-cihase.adb,
7849 a-cihase.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads,
7850 a-coormu.adb, a-coormu.ads, a-cohase.adb, a-cohase.ads: Minor
7851 reformatting.
7852
78532009-04-09 Ed Schonberg <schonberg@adacore.com>
7854
7855 * sem_ch6.adb (Check_Overriding_Indicator): Do not generate warning on
7856 missing overriding indicator if the new declaration is not seen as
7857 primitive.
7858
76c597a1
AC
78592009-04-09 Thomas Quinot <quinot@adacore.com>
7860
7861 * exp_ch4.adb (Expand_Concatenate): Add circuitry to properly handle
7862 overflows in computation of bounds.
7863
78642009-04-09 Pascal Obry <obry@adacore.com>
7865
7866 * a-cihama.adb, a-cgcaso.adb, a-cihase.adb, a-cohase.adb: Fix some
7867 typos in comment.
7868
95b89f1b
AC
78692009-04-09 Robert Dewar <dewar@adacore.com>
7870
7871 * sem_attr.adb (Check_Stream_Attribute): Check violation of
7872 restriction No_Streams
7873
7874 * gnat_rm.texi: Clarify No_Streams restriction
7875
7876 * g-socket.adb: Minor reformatting.
7877
78782009-04-09 Thomas Quinot <quinot@adacore.com>
7879
7880 * g-socket.ads: Mark Initialize and Finalize as obsolesent interfaces.
7881
78822009-04-09 Geert Bosch <bosch@adacore.com>
7883
7884 * exp_fixd.adb (Build_Conversion): Accept new optional Trunc argument.
7885 (Set_Result): Likewise.
7886 (Expand_Convert_Float_To_Fixed): Have Set_Result truncate the
7887 conversion, as required by RM 4.6(31).
7888
3d5952be
AC
78892009-04-08 Robert Dewar <dewar@adacore.com>
7890
7891 * checks.adb (Enable_Overflow_Check): Do not enable if overflow checks
7892 suppressed.
7893
7894 * exp_ch4.adb (Expand_Concatenate): Make sure checks are off for all
7895 resolution steps.
7896
78972009-04-08 Robert Dewar <dewar@adacore.com>
7898
7899 * sem_ch12.adb (Analyze_Package_Instantiation): Remove test for
7900 No_Local_Allocators restriction preventing local instantiation.
7901
79022009-04-08 Thomas Quinot <quinot@adacore.com>
7903
7904 * sem_eval.adb: Minor comment fix
7905
79062009-04-08 Thomas Quinot <quinot@adacore.com>
7907
7908 * g-socket.adb, g-socket.ads (GNAT.Sockets.Sockets_Library_Controller):
7909 New limited controlled type used to automate the initialization and
7910 finalization of the sockets implementation.
7911 (GNAT.Sockets.Initialize, Finalize): Make these no-ops
7912
79132009-04-08 Vincent Celier <celier@adacore.com>
7914
7915 * prj-attr.adb: New read-only project-level attribute Project_Dir
7916
7917 * prj-proc.adb (Add_Attributes): New parameter Project_Dir, value of
7918 read-only attribute of the same name.
7919 (Process_Declarative_Items): Call Add_Attributes with Project_Dir
7920 (Recursive_Process): Ditto
7921
7922 * snames.adb: Add new standard name Project_Dir
7923
7924 * snames.ads: Add new standard name Project_Dir
7925
b568955d
AC
79262009-04-08 Thomas Quinot <quinot@adacore.com>
7927
7928 * checks.adb: Minor reformatting
7929
79302009-04-08 Vincent Celier <celier@adacore.com>
7931
7932 * vms_data.ads: Add documentation for new style keyword
7933 OVERRIDING_INDICATORS
7934
79352009-04-08 Robert Dewar <dewar@adacore.com>
7936
7937 * sem_ch3.adb (Check_Completion.Post_Error): Post error on spec if the
7938 spec is in the current unit.
7939
ed57136d
AC
79402009-04-08 Ed Schonberg <schonberg@adacore.com>
7941
7942 * sem_util.adb (Is_Protected_Self_Reference): Add guard to check for
7943 presence of entity.
7944
7945 * usage.adb, gnat_ugn.texi: add info on -gnatyO: overriding indicators
7946
79472009-04-08 Vincent Celier <celier@adacore.com>
7948
7949 * vms_data.ads: Add VMS equivalent for -gnatyO (OVERRIDING_INDICATORS)
7950
79512009-04-08 Thomas Quinot <quinot@adacore.com>
7952
7953 * checks.ads: Minor reformatting
7954
79552009-04-08 Robert Dewar <dewar@adacore.com>
7956
7957 * gnat_rm.texi: Update documentation of pragma Obsolescent
7958
7959 * sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow identifiers to
7960 be omitted, and allow Entity parameter to be omitted.
7961
ef7c5692
AC
79622009-04-08 Thomas Quinot <quinot@adacore.com>
7963
7964 * exp_util.adb: Minor comment fix
7965
79662009-04-08 Robert Dewar <dewar@adacore.com>
7967
7968 * g-socket.ads: Fix bad syntax in pragma Obsolescent
7969
7970 * par-ch2.adb (Scan_Pragma_Argument_Association): Check for error of
7971 argument with no identifier following one that has an identifier. Was
7972 missed in some cases.
7973
7974 * sem_prag.adb (Analyze_Pragma, case Check_Policy): Allow Policy
7975 identifier.
7976 (Analyze_Pragma, case Obsolescent): Allow Message, Version identifiers
7977
7978 * snames.adb: Add Name_Policy
7979
7980 * snames.ads: Add Name_Policy
7981
0c7f5241
RD
79822009-04-08 Robert Dewar <dewar@adacore.com>
7983
7984 * gnat_rm.texi: Minor reformatting
7985
7986 * par-ch2.adb: Minor reformatting
7987
ae8c7d87
RD
79882009-04-08 Robert Dewar <dewar@adacore.com>
7989
7990 * exp_attr.adb, sem_attr.adb, sem_util.adb: Code clean up.
7991
ff69f95a
RD
79922009-04-08 Robert Dewar <dewar@adacore.com>
7993
7994 * sem_cat.adb (Check_Categorization_Dependencies): Handle Preelaborate
7995 properly in the presence of Remote_Types or Remote_Call_Interface.
7996
7997 * sem_util.adb: Add comment.
7998
2db15b1d
AC
79992009-04-08 Robert Dewar <dewar@adacore.com>
8000
8001 * ug_words: Add /ASSUME_VALID for -gnatB
8002
8003 * vms_data.ads: Add /ASSUME_VALID for -gnatB
8004
8005 * sem_cat.adb: Add clarifying commment
8006
8007 * a-direio.ads (Bytes): Make sure value is non-zero
8008
80092009-04-08 Ed Schonberg <schonberg@adacore.com>
8010
8011 * sem_util.adb (Is_Variable): If the prefix is an explicit dereference
8012 that does not come from source, check for a rewritten function call in
8013 prefixed notation before other forms of rewriting.
8014
80152009-04-08 Robert Dewar <dewar@adacore.com>
8016
8017 * Makefile.rtl: Remove s-strops and s-sopco? from the run time, since
8018 these are now obsolescent units used only for bootrapping with an
8019 older compiler.
8020
94fd3dc6
AC
80212009-04-08 Robert Dewar <dewar@adacore.com>
8022
8023 * gnat_rm.texi: Add documentation for pragma Thread_Local_Storage
8024
8025 * sem_ch3.adb: Minor comment updates
8026
80272009-04-08 Ed Schonberg <schonberg@adacore.com>
8028
8029 * inline.adb (Back_End_Cannot_Inline): restrict warning to subprograms
8030 that come from source.
8031
40a14772
TG
80322009-04-08 Tristan Gingold <gingold@adacore.com>
8033
cac9d8d6
EB
8034 * gcc-interface/gigi.h (enum attr_type): Add ATTR_THREAD_LOCAL_STORAGE.
8035 * gcc-interface/decl.c (prepend_attributes): New case
8036 Pragma_Thread_Local_Storage.
8037 * gcc-interface/utils.c (process_attributes): New case
8038 ATTR_THREAD_LOCAL_STORAGE.
8039
46ff89f3
AC
80402009-04-08 Ed Schonberg <schonberg@adacore.com>
8041
8042 * inline.adb (Back_End_Cannot_Inline): Do not mark a body as inlineable
8043 by the back-end if it contains a call to a subprogram without a
8044 previous spec that is declared in the same unit.
8045
8046 * errout.ads: Update comments on uses of dirs
8047
80482009-04-08 Robert Dewar <dewar@adacore.com>
8049
8050 * exp_ch4.adb (Expand_Concatenate): Make sure nodes are properly typed
8051
812f574f
AC
80522009-04-08 Tristan Gingold <gingold@adacore.com>
8053
8054 * sem_prag.adb: Restrict pragma Thread_Local_Storage to library level
8055 variables.
8056 Set Has_Gigi_Rep_Item flag to TLS variables (to ease gigi work).
8057
80582009-04-08 Vincent Celier <celier@adacore.com>
8059
8060 * prj-nmsc.adb:
8061 (Add_Source): Add the mapping of the unit name to source file name in
8062 the Unit_Sources_HT hash table, if the unit name is not null.
8063
8064 * prj.adb (Reset): Reset hash table Tree.Unit_Sources_HT
8065
8066 * prj.ads (Unit_Sources_Htable): New hash table instantiation
8067 (Project_Tree_Data): New component Unit_Sources_HT
8068
4c8a5bb8
AC
80692009-04-08 Thomas Quinot <quinot@adacore.com>
8070
8071 * sem_ch8.adb: Minor reformatting.
8072 Minor code reorganization.
8073
80742009-04-08 Robert Dewar <dewar@adacore.com>
8075
8076 * snames.h, einfo.adb, einfo.ads, sem_prag.adb, snames.adb,
8077 snames.ads, freeze.adb, par-prag.adb: Add implementation of
8078 pragma Thread_Local_Storage, setting new flag
8079 Has_Pragma_Thread_Local_Storage in corresponding entities.
8080
ecc4ddde
AC
80812009-04-08 Emmanuel Briot <briot@adacore.com>
8082
8083 * prj.ads: Update comment on switches file
8084
8085 * prj-nmsc.adb: Code clean up. Use renaming clauses.
8086
80872009-04-08 Robert Dewar <dewar@adacore.com>
8088
8089 * exp_ch4.adb (Expand_Concatenate): Further fixes to bounds handling
8090
80912009-04-08 Thomas Quinot <quinot@adacore.com>
8092
8093 * ali-util.adb: Minor comment fix
8094
80952009-04-08 Ed Schonberg <schonberg@adacore.com>
8096
8097 * sem_ch8.adb (Analyze_Use_Type): Improve error message when clause
8098 appears in a context clause, and the enclosing package is mentioned in
8099 a limited_with_clause.
8100 (Use_One_Type): Reject clause if type is still incomplete.
8101
a29262fd
AC
81022009-04-08 Emmanuel Briot <briot@adacore.com>
8103
8104 * prj-nmsc.adb (Check_File, Process_Sources_In_Multi_Language_Mode):
8105 avoid copies of Source_Data variables when possible, since these
8106 involve calls to memcpy() which are done too many times.
8107
81082009-04-08 Robert Dewar <dewar@adacore.com>
8109
8110 * exp_ch4.adb (Expand_Concatenate): Clean up code
8111
a2dc5812
AC
81122009-04-07 Thomas Quinot <quinot@adacore.com>
8113
8114 * exp_ch4.adb (Expand_Concatenate): Add missing conversion to index
8115 type for the case of concatenating a constrained array indexed by an
8116 enumeration type.
8117
81182009-04-07 Ed Schonberg <schonberg@adacore.com>
8119
8120 * sem_ch6.adb (Check_Conformance): when checking conformance of an
8121 operation that overrides an abstract operation inherited from an
8122 interface, return False if only one of the controlling formals is an
8123 access parameter.
8124
81252009-04-07 Ed Schonberg <schonberg@adacore.com>
8126
8127 * sem_ch8.adb (Analyze_Object_Renaming): additional error messages
8128 mandated by AI05-105.
8129
81302009-04-07 Vincent Celier <celier@adacore.com>
8131
8132 * prj-nmsc.adb (Get_Mains): Warn if a main is an empty string
8133
81342009-04-07 Thomas Quinot <quinot@adacore.com>
8135
8136 * usage.adb: Minor fix in usage message.
8137
8138 * sem_ch10.adb (Remove_Homonyms): Fix subtype of formal in body to
8139 match declaration; the correct subtype is Node_Id, not Entity_Id,
8140 because the expected node kind is an identifier, not a defining
8141 identifier.
8142
8143 * switch-c.adb: Minor reformatting.
8144
8145 * uintp.adb: Minor reformatting.
8146
81472009-04-07 Robert Dewar <dewar@adacore.com>
8148
8149 * exp_ch13.adb: Minor reformatting
8150
0ac73189
AC
81512009-04-07 Robert Dewar <dewar@adacore.com>
8152
8153 * sem_warn.adb (Check_Infinite_Loop_Warning.Test_Ref): Add defence
8154 against missing parent.
8155
81562009-04-07 Thomas Quinot <quinot@adacore.com>
8157
8158 * xoscons.adb: Minor reformatting
8159
81602009-04-07 Robert Dewar <dewar@adacore.com>
8161
8162 * rtsfind.ads: Remove obsolete string concatenation entries
8163
81642009-04-07 Robert Dewar <dewar@adacore.com>
8165
8166 * exp_ch4.adb (Expand_Concatenate): Redo handling of bounds
8167
81682009-04-07 Ed Schonberg <schonberg@adacore.com>
8169
8170 * sem_ch10.adb (Check_Body_Required): Handle properly imported
8171 subprograms.
8172
81732009-04-07 Gary Dismukes <dismukes@adacore.com>
8174
8175 * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case
8176 Attribute_Address): When Init_Or_Norm_Scalars is True and the object
8177 is of a scalar or string type then suppress the setting of the
8178 expression to Empty.
8179
8180 * freeze.adb (Warn_Overlay): Also emit the warnings about default
8181 initialization for the cases of scalar and string objects when
8182 Init_Or_Norm_Scalars is True.
8183
1732c156
AC
81842009-04-07 Bob Duff <duff@adacore.com>
8185
8186 * s-secsta.ads, g-pehage.ads, s-fileio.ads: Minor comment fixes
8187
81882009-04-07 Bob Duff <duff@adacore.com>
8189
8190 * gnat_rm.texi, s-fileio.adb (System.File_IO.Open): New feature: A
8191 Form parameter of Text_Translation=No allows binary mode for Text_IO
8192 files.
8193
8194 * gnat_rm.texi: Document Form parameter Text_Translation=xxx.
8195
81962009-04-07 Javier Miranda <miranda@adacore.com>
8197
8198 * exp_ch5.adb (Expand_Assign_Array): Add implicit conversion when
8199 processing the bounds for bit packed arrays or VM target machines.
8200
f16d05d9
AC
82012009-04-07 Thomas Quinot <quinot@adacore.com>
8202
8203 * g-sothco.ads (Int_Access): Remove extraneous access type (use
8204 anonymous access instead).
8205 (Get_Socket_From_Set): Fix incorrectly reverted formals
8206 Last and Socket to match the underlying C routine.
8207
ad1536a1 8208 * g-socket.adb, g-socket.ads
f16d05d9
AC
8209 (Get): Use named parameter associations instead of positional ones in
8210 call go Get_Socket_From_Set, since this routine has two formals of the
8211 same type.
ad1536a1 8212 (Image): New procedure.
f16d05d9
AC
8213
8214 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
8215 g-socthi-vxworks.ads, g-socthi-mingw.ads, g-socthi.adb, g-socthi.ads:
8216 (C_Ioctl, Syscall_Ioctl): use "access C.int" instead of "Int_Access"
8217 for type of Arg formal.
8218
8219 * sem_warn.adb: Minor reformatting
8220
82212009-04-07 Ed Schonberg <schonberg@adacore.com>
8222
8223 * sem_util.adb (Has_Tagged_Component): Fix typo in loop that iterates
8224 over record components.
8225
82262009-04-07 Nicolas Roche <roche@adacore.com>
8227
8228 * gsocket.h:
8229 Don't include resolvLib.h on VxWorks 6 (kernel and rtp). This library
8230 has disappeared between VxWorks 6.4 and VxWorks 6.5
8231 In RTP mode use time.h instead of times.h
8232
82332009-04-07 Robert Dewar <dewar@adacore.com>
8234
8235 * exp_ch4.adb (Expand_N_Op_Concat): Improve lower bound handling
8236
82372009-04-07 Kevin Pouget <pouget@adacore.com>
8238
8239 * exp_dist.adb: Modify Build_From_Any_Fonction procedure to correct
8240 expanded code for constrained types.
8241
82422009-04-07 Ed Schonberg <schonberg@adacore.com>
8243
8244 * sem_ch4.adb (Analyze_Overloaded_Selected_Component): implement
8245 AI05-105: in an object renaming declaration, anonymousness is a name
8246 resolution rule.
8247
8248 * sem_ch8.adb (Analyze_Object_Renaming): Ditto.
8249
82502009-04-07 Arnaud Charlet <charlet@adacore.com>
8251
8252 * g-comlin.adb (Expansion): Fix old regression: also return directory
8253 names when matching.
8254
2fc05e3d
AC
82552009-04-07 Robert Dewar <dewar@adacore.com>
8256
8257 * exp_ch4.adb:
8258 (Expand_N_Op_Concat): Call Expand_Concatenate for all cases
8259 (Expand_Concatenate): New name for Expand_Concatenate_String which has
8260 been rewritten to handle all types.
8261 (Expand_Concatenate_Other): Remove
8262
82632009-04-07 Ed Schonberg <schonberg@adacore.com>
8264
8265 * lib-xref.adb (Generate_Reference): A default subprogram in an
8266 instance appears within the tree for the instance, but generates an
8267 implicit reference in the ALI.
8268
fdac1f80
AC
82692009-04-07 Javier Miranda <miranda@adacore.com>
8270
8271 * sem_ch3.adb (Build_Derived_Record_Type): When processing a tagged
8272 derived type that has discriminants, propagate the list of interfaces
8273 to the corresponding new base type. In addition, propagate also
8274 attribute Limited_Present (found working in this patch).
8275
82762009-04-07 Robert Dewar <dewar@adacore.com>
8277
8278 * exp_ch4.adb: Rewrite concatenation expansion.
8279
8dbd1460
AC
82802009-04-07 Ed Schonberg <schonberg@adacore.com>
8281
8282 * sem_ch8.adb (Restore_Scope_Stack): First_Private_Entity is only
8283 relevant to packages.
8284
82852009-04-07 Robert Dewar <dewar@adacore.com>
8286
8287 * sem_attr.adb: Minor reformatting
8288
8289 * sem_ch6.adb: Minor reformatting
8290
2ddc2000
AC
82912009-04-07 Tristan Gingold <gingold@adacore.com>
8292
8293 * socket.c: Add more protections against S_resolvLib_ macros.
8294
82952009-04-07 Thomas Quinot <quinot@adacore.com>
8296
8297 * sem_attr.adb: Minor reformatting
8298
82992009-04-07 Ed Schonberg <schonberg@adacore.com>
8300
8301 * sem_ch6.adb (New_Overloaded_Entity): New predicate
8302 Is_Overriding_Alias to handle properly types that inherit two homonym
8303 operations that have distinct dispatch table entries.
8304
06a16f58
AC
83052009-04-07 Emmanuel Briot <briot@adacore.com>
8306
8307 * s-regexp.adb (Create_Mapping): Ignore excaped open parenthesis when
8308 looking for the end of a parenthesis group
8309
83102009-04-07 Tristan Gingold <gingold@adacore.com>
8311
8312 * gsocket.h Don't #include resolvLib.h if __RTP__ is defined.
8313
8314 * socket.c Don't use resolvLib_ macros if not defined.
8315
df46b832
AC
83162009-04-07 Robert Dewar <dewar@adacore.com>
8317
8318 * g-socket.adb: Minor reformatting.
8319
8320 * g-socthi-mingw.adb: Minor reformatting
8321
8322 * g-sothco.ads: Minor reformatting
8323
8324 * exp_ch4.adb:
8325 (Expand_Concatenate_String): Complete rewrite to generate efficient code
8326 inline instead of relying on external library routines.
8327
8328 * s-strops.ads, s-sopco5.ads, s-sopco5.adb, s-sopco4.ads, s-sopco4.adb,
8329 s-sopco3.ads, s-sopco3.adb, s-strops.adb: Note that this unit is now
8330 obsolescent
8331
83322009-04-07 Ed Schonberg <schonberg@adacore.com>
8333
8334 * sem_attr.adb:
8335 (Eval_Attribute): for attributes of array objects that are not strings,
8336 attributes are not static if nominal subtype of object is unconstrained.
8337
83382009-04-07 Ed Schonberg <schonberg@adacore.com>
8339
8340 * sem_ch6.adb (New_Overloaded_Entity): If two implicit homonym
8341 operations for a type T in an instance do not override each other,
8342 when T is derived from a formal private type, the corresponding
8343 operations inherited by a type derived from T outside
8344 of the instance do not override each other either.
8345
3dd9959c
AC
83462009-04-07 Robert Dewar <dewar@adacore.com>
8347
8348 (Osint.Fail): Change calling sequence to have one string arg
8349 (Make.Make_Failed): Same change
8350 All callers are adjusted to use concatenation
8351
83522009-04-07 Robert Dewar <dewar@adacore.com>
8353
8354 * exp_ch4.adb: Fix documentation typo
8355
83562009-04-07 Robert Dewar <dewar@adacore.com>
8357
8358 * tbuild.ads: Minor reformatting
8359
83602009-04-07 Javier Miranda <miranda@adacore.com>
8361
8362 * exp_disp.adb (Make_DT): Avoid the generation of the OSD_Table
8363 when compiling under ZFP runtime.
8364
83652009-04-07 Robert Dewar <dewar@adacore.com>
8366
8367 * g-comlin.adb: Minor reformatting
8368
83692009-04-07 Thomas Quinot <quinot@adacore.com>
8370
8371 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
8372 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
8373 g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads, g-sothco.ads:
8374 Remove dynamic allocation of Fd_Set in Socket_Set_Type objects.
8375
dcd8728b
RD
83762009-04-07 Robert Dewar <dewar@adacore.com>
8377
8378 * gnat_ugn.texi: Document -gnatDnn/-gnatGnn
8379
8380 * opt.ads (Sprint_Line_Limit): New parameter
8381
8382 * sprint.adb: Usa Sprint_Line_Limit instead of Line_Limit throughout
8383
8384 * switch-c.adb: Recognize -gnatDnnn and -gnatGnnn switches
8385
8386 * usage.adb: Output information for -gnatGnn -gnatDnn
8387
83882009-04-07 Robert Dewar <dewar@adacore.com>
8389
8390 * make.adb: Minor reformatting
8391
83922009-04-07 Robert Dewar <dewar@adacore.com>
8393
8394 * mlib-tgt-specific-vms-alpha.adb: Minor reformatting
8395
83962009-04-07 Robert Dewar <dewar@adacore.com>
8397
8398 * mlib-tgt-specific-vms-ia64.adb: Minor reformatting
8399
c27f2f15
RD
84002009-04-07 Robert Dewar <dewar@adacore.com>
8401
8402 * checks.adb:
8403 Remove Assume_Valid parameter from In_Subrange_Of calls
8404
8405 * sem_eval.adb:
8406 (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
8407 (Is_In_Range): Remove incorrect use of Assume_Valid
8408 (Is_Out_Of_Range): Remove incorrect use of Assume_Valid
8409
8410 * sem_eval.ads:
8411 (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
8412 (Is_In_Range): Documentation cleanup
8413 (Is_Out_Of_Range): Documentation cleanup
8414
8415 * gnat_rm.texi:
8416 Add documentation for Assume_No_Invalid_Values pragma
8417
8418 * sem_ch12.adb: Minor reformatting
8419
8420 * sem_ch6.adb: (Check_Conformance): Avoid cascaded errors
8421
8422 * sem_prag.adb: Improve error message.
8423
8424 * gnatchop.adb, osint.ads, sinput.adb, sinput.ads, styleg.adb:
8425 LF/CR no longer recognized as line terminator
8426
8427 * switch.ads: Minor documentation improvement
8428
8429 * vms_data.ads: Minor reformatting
8430
c800f862
RD
84312009-04-07 Robert Dewar <dewar@adacore.com>
8432
8433 * checks.adb (Determine_Range): Add Assume_Valid parameter
8434
8435 * checks.ads (Determine_Range): Add Assume_Valid parameter
8436
8437 * errout.adb (Error_Msg_NEL): Use Suppress_Loop_Warnings rather than
8438 Is_Null_Loop to suppress warnings in a loop body.
8439
8440 * exp_ch4.adb:
8441 (Rewrite_Comparison): Major rewrite to accomodate invalid values
8442
8443 * exp_ch5.adb:
8444 (Expand_N_Loop_Statement): Delete loop known not to execute
8445
8446 * opt.ads:
8447 (Assume_No_Invalid_Values): Now set to False, and as documented, this
8448 fully enables the proper handling of invalid values.
8449
8450 * sem_attr.adb:
8451 New calling sequence for Is_In_Range
8452
8453 * sem_ch5.adb:
8454 (Analyze_Iteration_Scheme): Accomodate possible invalid values
8455 in determining if a loop range is null.
8456
8457 * sem_eval.adb:
8458 (Is_In_Range): Add Assume_Valid parameter
8459 (Is_Out_Of_Range): Add Assume_Valid_Parameter
8460 (Compile_Time_Compare): Major rewrite to accomodate invalid values and
8461 also to do more accurate and complete range analysis, catching more
8462 cases.
8463
8464 * sem_eval.ads:
8465 (Is_In_Range): Add Assume_Valid parameter
8466 (Is_Out_Of_Range): Add Assume_Valid_Parameter
8467
8468 * sem_util.adb:
8469 New calling sequence for Is_In_Range
8470
8471 * sinfo.adb:
8472 (Suppress_Loop_Warnings): New flag
8473
8474 * sinfo.ads:
8475 (Is_Null_Loop): Update documentation
8476 (Suppress_Loop_Warnings): New flag
8477
8478 * gnat_ugn.texi: Document -gnatB switch
8479
9d00840d
AC
84802009-04-07 Arnaud Charlet <charlet@adacore.com>
8481
8482 * gnatvsn.ads: Bump version number.
8483
5f143024
AC
84842009-04-07 Thomas Quinot <quinot@adacore.com>
8485
8486 * exp_ch3.adb: Minor rewording (comments)
8487
84882009-04-07 Robert Dewar <dewar@adacore.com>
8489
8490 * exp_disp.adb: Minor reformatting
8491
d5859bf4
EB
84922009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8493
8494 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Test the
8495 underlying type.
8496 * gcc-interface/trans.c (lvalue_required_p): Likewise.
8497
c86f07f6
EB
84982009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8499
8500 * gcc-interface/trans.c (Attribute_to_gnu) <Max_Size_In_Storage_Elmts>:
8501 Do not convert the result. Remove obsolete comment.
8502
2d5be6c1
EB
85032009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8504
8505 * gcc-interface/trans.c (establish_gnat_vms_condition_handler): Clear
8506 DECL_CONTEXT.
8507 (Subprogram_Body_to_gnu): Fix pasto.
8508
10069d53
EB
85092009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8510
8511 * gcc-interface/gigi.h (standard_datatypes): Remove ADT_void_type_decl.
8512 (void_type_decl_node): Remove.
8513 (init_gigi_decls): Likewise.
8514 (gnat_install_builtins): Declare.
8515 (record_builtin_type): Likewise.
8516 (create_type_stub_decl): Likewise.
8517 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Void>: Use void_type.
8518 (gnat_to_gnu_entity) <E_Array_Type>: Make fat and thin pointer types
8519 artificial.
8520 <E_Array_Subtype>: Use the index types, not only their name, in the
8521 record giving the names of the bounds, if any.
8522 For a packed array type, make it artificial only if the base type
8523 was artificial as well. Remove redundant statement.
8524 (gnat_to_gnu_entity) <E_Incomplete_Type>: Do not create TYPE_DECL for
8525 dummy types.
8526 Use create_type_stub_decl to build the TYPE_STUB_DECL of types.
8527 (rest_of_type_decl_compilation_no_defer): Likewise.
8528 * gcc-interface/misc.c (gnat_printable_name): Add missing guard.
8529 * gcc-interface/utils.c (make_dummy_type): Always create TYPE_STUB_DECL
8530 and use create_type_stub_decl to build it.
8531 (gnat_pushdecl): Rewrite condition.
8532 (gnat_install_builtins): Remove bogus declaration.
8533 (record_builtin_type): New function.
8534 (finish_record_type): Use create_type_stub_decl to build TYPE_STUB_DECL
8535 of types.
8536 (create_type_stub_decl): New function.
8537 (create_type_decl): Assert that the type is not dummy. If the type
8538 hasn't been named yet, equate the TYPE_STUB_DECL to the created node.
8539 (build_vms_descriptor32): Do not create TYPE_DECL for the descriptor.
8540 (build_vms_descriptor): Likewise.
8541 (init_gigi_decls): Delete and move bulk of code to...
8542 * gcc-interface/trans.c (gigi): ...here. Use record_builtin_type.
8543 (emit_range_check): Add gnat_node parameter.
8544 (emit_index_check): Likewise.
8545 (emit_check): Likewise.
8546 (build_unary_op_trapv): Likewise.
8547 (build_binary_op_trapv): Likewise.
8548 (convert_with_check): Likewise.
8549 (Attribute_to_gnu): Adjust calls for above changes.
8550 (call_to_gnu): Likewise.
8551 (gnat_to_gnu): Likewise.
8552 (assoc_to_constructor): Likewise.
8553 (pos_to_constructor): Likewise.
8554 (Sloc_to_locus): Set BUILTINS_LOCATION for Standard_Location nodes.
8555 (process_type): Do not create TYPE_DECL for dummy types.
8556
229077b0
EB
85572009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8558
1e17ef87
EB
8559 * gcc-interface/decl.c (gnat_to_gnu_entity): Reorder local variables.
8560 * gcc-interface/trans.c: Fix formatting throughout. Fix comments.
8561 * gcc-interface/utils.c: Fix comments.
8562
85632009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8564
8565 * gcc-interface/decl.c (compile_time_known_address_p): Rewrite and
8566 move around.
229077b0
EB
8567 (gnat_to_gnu_type): Move around.
8568 (get_unpadded_type): Likewise.
1e17ef87
EB
8569 * gcc-interface/utils.c (update_pointer_to): Use synthetic macro.
8570 Tidy comments.
229077b0 8571
aa1aa786
EB
85722009-04-07 Eric Botcazou <ebotcazou@adacore.com>
8573
8574 * gcc-interface/trans.c (check_for_eliminated_entity): New function.
8575 (Attribute_to_gnu): Invoke it for Access- and Address-like attributes.
8576 (call_to_gnu): Invoke it instead of manually checking.
8577
63787194
EB
85782009-04-04 Eric Botcazou <ebotcazou@adacore.com>
8579
8580 * gcc-interface/utils.c (finish_record_type): Force structural equality
8581 checks if the record type is discriminated.
8582
d236ace7
EB
85832009-03-31 Eric Botcazou <ebotcazou@adacore.com>
8584
8585 * system-linux-alpha.ads (Functions_Return_By_DSP): Remove.
8586 * system-linux-mips.ads (Functions_Return_By_DSP): Likewise.
8587 * system-linux-mipsel.ads (Functions_Return_By_DSP): Likewise.
8588 * system-linux-s390.ads (Functions_Return_By_DSP): Likewise.
8589 * system-linux-s390x.ads (Functions_Return_By_DSP): Likewise.
8590 * system-linux-sparc.ads (Functions_Return_By_DSP): Likewise.
8591 * system-linux-sparcv9.ads (Functions_Return_By_DSP): Likewise.
8592
bd9f68e0
PB
85932009-03-30 Paolo Bonzini <bonzini@gnu.org>
8594
d7be99f1
EB
8595 * gcc-interface/decl.c (maybe_pad_type): Use TREE_OVERFLOW instead
8596 of TREE_CONSTANT_OVERFLOW.
bd9f68e0 8597
8ce94e44
JM
85982009-03-30 Joseph Myers <joseph@codesourcery.com>
8599
8600 PR rtl-optimization/323
8601 * gcc-interface/misc.c (gnat_post_options): Set
8602 flag_excess_precision_cmdline. Give an error for
8603 -fexcess-precision=standard for processors where the option is
8604 significant.
8605
d9223014
L
86062009-03-27 H.J. Lu <hongjiu.lu@intel.com>
8607
8608 PR c/39323
8609 * gcc-interface/utils.c (create_field_decl): Use "unsigned int"
8610 on bit_align.
8611
76761bbd
OH
86122009-03-11 Olivier Hainque <hainque@adacore.com>
8613
8614 * gcc-interface/trans.c (gnat_to_gnu) <case N_Slice>: In range
8615 checks processing, remove unintended TREE_TYPE walk on index type.
8616
39ae51e0
EB
86172009-03-01 Eric Botcazou <ebotcazou@adacore.com>
8618
8619 PR ada/39264
8620 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do no
8621 call make_packable_type on fat pointer types.
8622 <E_Array_Subtype>: Likewise.
8623 <E_Record_Subtype>: Call make_packable_type on all record types
8624 except for fat pointer types.
8625 (make_packable_type): Likewise.
8626 (gnat_to_gnu_field): Likewise.
8627
7d01864f
EB
86282009-02-28 Eric Botcazou <ebotcazou@adacore.com>
8629
8630 * gcc-interface/Makefile.in (cygwin/mingw): Revert accidental
67901d32 8631 EH_MECHANISM change made on 2007-12-06.
7d01864f 8632
a760c977
AS
86332009-02-26 Andreas Schwab <schwab@suse.de>
8634
4c354194 8635 PR ada/39172
a760c977 8636 * Makefile.in (srcdir): Set to @top_srcdir@ instead of @srcdir@.
a760c977
AS
8637 * gcc-interface/Makefile.in: Change all uses of $(srcdir),
8638 $(fsrcdir) and $(fsrcpfx) to add ada subdir.
8639 (AWK): Substitute.
8640 (target_cpu_default): Substitute.
8641
054efbba
LG
86422009-02-25 Laurent GUERBY <laurent@guerby.net>
8643
975a4fd6 8644 PR ada/39221
a760c977
AS
8645 * a-teioed.adb (Expand): Fix Result overflow.
8646
c608b4d2 86472009-02-25 Laurent GUERBY <laurent@guerby.net>
2692d7f5 8648
a760c977
AS
8649 * gcc-interface/Makefile.in: Fix multilib handling for
8650 sparc64-linux.
8651
ea675ec3
RO
86522009-02-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
8653
8654 * s-oscons-tmplt.c [__osf__ && !_SS_MAXSIZE]: Undef AF_UNIX6.
8655
e98c0739
L
86562009-02-18 H.J. Lu <hongjiu.lu@intel.com>
8657
8658 * gcc-interface/misc.c (gnat_post_options): Turn off warn_psabi.
8659
70f5fc7c
EB
86602009-02-16 Eric Botcazou <ebotcazou@adacore.com>
8661
8662 * gcc-interface/deftarg.c: Remove.
8663
794511d2 86642009-02-10 Olivier Hainque <hainque@adacore.com>
e98c0739 8665 Eric Botcazou <ebotcazou@adacore.com>
794511d2
EB
8666
8667 * gcc-interface/decl.c (enum alias_set_op): New enumeration.
8668 (copy_alias_set): Rename into...
8669 (relate_alias_sets): ...this. Add third parameter OP. Retrieve the
8670 underlying array of unconstrained arrays for the new type as well.
8671 If the old and new alias sets don't conflict, make one a subset of
8672 the other as per the OP parameter.
8673 (gnat_to_gnu_entity): Adjust calls to copy_alias_set.
8674 <E_Record_Type>: Do not copy the alias set for derived types.
8675 For all types, make the alias set of derived types a superset of
8676 that of their parent type.
8677 (make_aligning_type): Adjust calls to copy_alias_set.
8678 (make_packable_type): Likewise.
8679 * gcc-interface/trans.c (gnat_to_gnu)<N_Validate_Unchecked_Conversion>:
8680 Check for alias set conflict instead of strict equality to issue the
8681 warning.
8682
c3734896
EB
86832009-02-09 Eric Botcazou <ebotcazou@adacore.com>
8684
8685 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
8686 Set TYPE_NONALIASED_COMPONENT on the array type only if appropriate.
8687 (copy_alias_set): Assert that arrays have the same aliasing settings.
8688 (substitute_in_type) <ARRAY_TYPE>: Copy TYPE_NONALIASED_COMPONENT.
8689
9a58d4d2
EB
86902009-02-08 Eric Botcazou <ebotcazou@adacore.com>
8691
8692 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
8693 Set TYPE_NONALIASED_COMPONENT on the array type.
8694
d0ec4c99
LG
86952009-01-31 Laurent GUERBY <laurent@guerby.net>
8696
8697 * gcc-interface/Makefile.in: Fix mipsel linux handling.
a760c977 8698
4dcb8fd1
JJ
86992009-01-16 Jakub Jelinek <jakub@redhat.com>
8700
8701 * gcc-interface/Makefile.in: Fix multilib handling for
8702 powerpc64-linux.
8703
3b9c1abd
EB
87042009-01-12 Eric Botcazou <ebotcazou@adacore.com>
8705
8706 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Really strip
8707 only useless conversions around renamed objects.
8708
13318d2f
EB
87092009-01-11 Eric Botcazou <ebotcazou@adacore.com>
8710
8711 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Put
8712 the _Tag field before any discriminants in the field list.
8713 (components_to_record): Remove obsolete comment.
8714
ad41bd84
JM
8715
8716\f
8ff1dd83 8717Copyright (C) 2009 Free Software Foundation, Inc.
ad41bd84
JM
8718
8719Copying and distribution of this file, with or without modification,
8720are permitted in any medium without royalty provided the copyright
8721notice and this notice are preserved.
This page took 1.320952 seconds and 5 git commands to generate.