aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2005-11-15a-secain.adb, [...]: Minor reformattingRobert Dewar683-1765/+1505
2005-11-14 Robert Dewar <dewar@adacore.com> * a-secain.adb, a-slcain.adb, a-shcain.adb, a-chtgke.ads, a-chtgke.adb, a-stwiha.adb, a-strhas.adb, a-chzla1.ads, a-chzla9.ads, a-stzbou.adb, a-stzbou.ads, a-stzfix.adb, a-stzhas.adb, a-stzmap.adb, a-stzmap.ads, a-stzsea.adb, a-stzsea.ads, a-stzsup.adb, a-stzsup.ads, a-stzunb.adb, a-stzunb.ads, a-szuzha.adb, a-szuzha.ads, a-szuzti.adb, a-szuzti.ads, a-ztcoau.adb, a-ztcoau.ads, a-ztcoio.adb, a-ztcstr.adb, a-ztcstr.ads, a-ztdeau.adb, a-ztdeau.ads, a-ztdeio.adb, a-ztdeio.ads, a-ztedit.adb, a-ztedit.ads, a-ztenau.ads, a-ztenio.adb, a-ztenio.ads, a-ztexio.adb, a-ztexio.ads, a-ztfiio.adb, a-ztfiio.ads, a-ztflau.adb, a-ztflau.ads, a-ztflio.adb, a-ztflio.ads, a-ztgeau.adb, a-ztgeau.ads, a-ztinau.adb, a-ztinau.ads, a-ztinio.adb, a-ztmoau.ads, a-ztmoio.adb, a-ztmoio.ads, a-zttest.adb, g-enblsp-vms-alpha.adb, g-enblsp-vms-alpha.adb, g-enblsp-vms-ia64.adb, g-enblsp-vms-ia64.adb, system-linux-hppa.ads, a-chacon.adb, a-chacon.ads, a-wichun.adb, a-wichun.ads, a-zchuni.adb, a-zchuni.ads, g-trasym-vms-alpha.adb, g-trasym-vms-ia64.adb, system-hpux-ia64.ads, g-soccon-unixware.ads, g-soliop-unixware.ads, g-soccon-interix.ads, g-soliop-solaris.ads, g-eacodu-vms.adb, g-expect-vms.adb, g-socthi-vms.adb, g-soliop-mingw.ads, a-intnam-unixware.ads, a-intnam-lynxos.ads, a-intnam-tru64.ads, a-intnam-aix.ads, a-intnam-linux.ads, a-intnam-linux.ads, a-intnam-dummy.ads, a-numaux-libc-x86.ads, a-intnam-interix.ads, a-intnam-solaris.ads, a-calend-vms.adb, a-calend-vms.ads, a-intnam-vms.ads, a-calend-mingw.adb, a-intnam-mingw.ads, a-intnam-vxworks.ads, a-numaux-vxworks.ads, system-unixware.ads, system-linux-ia64.ads, a-intnam-freebsd.ads, system-freebsd-x86.ads, system-lynxos-ppc.ads, system-linux-x86_64.ads, a-stunha.adb, a-cgaaso.ads, a-cgaaso.adb, a-chtgop.adb, a-cgcaso.adb, a-cgarso.adb, a-cohata.ads, a-crbtgk.adb, a-crbltr.ads, a-coprnu.adb, a-rbtgso.adb, a-intnam-darwin.ads, system-darwin-ppc.ads, gprmake.adb, makegpr.ads, system-tru64.ads, system-aix.ads, system-solaris-x86.ads, system-irix-o32.ads, s-interr-sigaction.adb, system-irix-n32.ads, s-parame-mingw.adb, system-hpux.ads, s-traceb-hpux.adb, system-linux-x86.ads, s-inmaop-dummy.adb, system-os2.ads, system-interix.ads, system-solaris-sparc.ads, system-solaris-sparcv9.ads, s-inmaop-vms.adb, s-mastop-vms.adb, expander.adb, expander.ads, s-gloloc-mingw.adb, system-mingw.ads, system-vms-zcx.ads, s-osinte-fsu.adb, s-traceb-mastop.adb, a-exextr.adb, a-exstat.adb, a-filico.ads, a-finali.ads, a-interr.ads, a-intsig.adb, a-intsig.ads, a-except.ads, a-numaux-x86.ads, a-astaco.adb, a-calend.adb, a-calend.ads, a-chahan.adb, a-chahan.ads, a-chlat9.ads, a-colien.adb, a-colien.ads, a-colire.adb, a-colire.ads, a-comlin.adb, a-comlin.ads, a-cwila1.ads, a-cwila9.ads, a-elchha.adb, a-decima.adb, a-decima.ads, a-diocst.ads, a-direio.adb, a-direio.ads, a-excach.adb, a-excach.adb, a-exctra.ads, ali-util.adb, a-ngcefu.adb, a-ngcoty.adb, a-ngcoty.ads, a-nudira.adb, a-nudira.ads, a-nuflra.adb, a-numaux.ads, a-reatim.ads, a-sequio.adb, a-sequio.ads, a-siocst.ads, a-ssicst.ads, a-stmaco.ads, a-storio.adb, a-strbou.adb, a-strbou.ads, a-stream.ads, a-strfix.adb, a-strmap.adb, a-strmap.ads, a-strsea.adb, a-strsea.ads, a-strsup.adb, a-strsup.ads, a-strunb.adb, a-strunb.ads, a-stwibo.adb, a-stwibo.ads, a-stwifi.adb, a-stwima.adb, a-stwima.ads, a-stwise.adb, a-stwise.ads, a-stwisu.adb, a-stwisu.ads, a-stwiun.adb, a-stwiun.ads, a-suteio.adb, a-suteio.ads, a-swmwco.ads, a-swuwti.adb, a-swuwti.ads, a-sytaco.adb, a-sytaco.ads, a-tasatt.adb, a-taside.adb, a-taside.ads, a-teioed.adb, a-textio.adb, a-textio.ads, a-ticoau.adb, a-ticoau.ads, a-ticoio.adb, a-tideau.adb, a-tideio.adb, a-tienau.adb, a-tienio.adb, a-tifiio.adb, a-tiflio.adb, a-tigeau.adb, a-tigeau.ads, a-tiinau.adb, a-tiinio.adb, a-timoau.adb, a-timoio.adb, a-timoio.ads, a-tiocst.ads, a-titest.adb, atree.adb, a-witeio.adb, a-witeio.ads, a-wtcoau.adb, a-wtcoau.ads, a-wtcoio.adb, a-wtcstr.ads, a-wtdeau.adb, a-wtdeio.adb, a-wtedit.adb, a-wtedit.ads, a-wtenau.adb, a-wtenio.adb, a-wtfiio.adb, a-wtflio.adb, a-wtgeau.adb, a-wtinau.adb, a-wtinio.adb, a-wtmoau.adb, a-wtmoio.adb, a-wttest.adb, back_end.adb, bindgen.adb, butil.adb, butil.ads, checks.ads, cio.c, comperr.adb, csets.ads, cstand.adb, debug.ads, elists.ads, errno.c, errout.adb, errout.ads, erroutc.adb, erroutc.ads, errutil.adb, errutil.ads, errutil.ads, err_vars.ads, eval_fat.adb, exp_ch11.adb, exp_ch11.ads, exp_ch2.adb, exp_ch7.ads, exp_imgv.ads, exp_pakd.adb, exp_prag.adb, exp_prag.ads, exp_tss.adb, exp_tss.ads, exp_vfpt.ads, fe.h, fmap.adb, freeze.ads, frontend.adb, frontend.ads, g-arrspl.adb, g-arrspl.ads, g-awk.adb, g-awk.ads, g-boumai.ads, g-calend.adb, g-calend.ads, g-catiio.adb, g-comlin.adb, g-comlin.ads, g-comlin.ads, g-comlin.ads, g-comver.adb, g-crc32.adb, g-crc32.ads, g-ctrl_c.ads, g-curexc.ads, g-debpoo.ads, g-debuti.adb, g-diopit.adb, g-diopit.ads, g-dirope.adb, g-dirope.ads, g-dyntab.adb, g-dyntab.ads, g-excact.adb, g-excact.ads, g-except.ads, g-exctra.adb, g-exctra.ads, g-expect.ads, g-flocon.ads, g-hesorg.ads, g-io.adb, g-locfil.ads, g-md5.adb, g-md5.ads, g-md5.ads, g-moreex.adb, g-signal.ads, g-signal.adb, gnatbind.ads, gnatchop.adb, gnatcmd.adb, gnatfind.adb, gnatlbr.adb, gnatmake.ads, gnatmem.adb, gnatprep.adb, gnatprep.ads, gnatsym.adb, gnatxref.adb, g-os_lib.adb, g-os_lib.ads, g-pehage.adb, g-pehage.ads, gprep.ads, g-regexp.adb, g-regexp.ads, g-regist.adb, g-regist.ads, g-regpat.ads, g-semaph.adb, g-socthi.adb, g-soliop.ads, g-spipat.adb, g-spipat.ads, g-sptabo.ads, g-sptain.ads, g-sptavs.ads, g-string.ads, g-tasloc.adb, g-tasloc.ads, g-trasym.adb, g-trasym.ads, i-fortra.adb, i-fortra.ads, inline.adb, layout.adb, live.adb, make.ads, makeutl.ads, makeutl.adb, mdll-fil.adb, mdll-fil.ads, mdll-utl.ads, memroot.ads, memtrack.adb, mlib.ads, mlib-fil.adb, mlib-fil.ads, mlib-prj.ads, mlib-utl.adb, mlib-utl.ads, nlists.adb, nlists.ads, osint.adb, osint.ads, osint-c.adb, osint-l.adb, osint-l.ads, osint-m.ads, output.adb, par.adb, par.adb, par.ads, par-ch11.adb, par-ch12.adb, par-ch2.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb, par-tchk.adb, prep.adb, prepcomp.adb, prepcomp.ads, prj-attr.ads, prj-com.ads, prj-dect.adb, prj-dect.ads, prj-env.ads, prj-err.ads, prj-ext.ads, prj-makr.adb, prj-makr.ads, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-part.ads, prj-pp.ads, prj-proc.ads, prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-util.adb, prj-util.ads, rtsfind.adb, sem.adb, sem.ads, sem_case.adb, sem_case.ads, sem_ch11.adb, sem_ch4.adb, sem_ch6.ads, sem_ch7.ads, sem_dist.ads, sem_elab.ads, sem_elim.ads, sem_eval.ads, sem_intr.ads, sem_maps.adb, sem_maps.ads, sem_maps.ads, sem_res.ads, sem_type.ads, sfn_scan.adb, sfn_scan.ads, s-imgwch.ads, s-imgwiu.adb, s-imgwiu.ads, s-inmaop.ads, sinput.adb, sinput.ads, s-pack03.adb, s-pack03.ads, s-pack05.adb, s-pack05.ads, s-pack06.adb, s-pack06.ads, s-pack07.adb, s-pack07.ads, s-pack09.adb, s-pack09.ads, s-pack10.adb, s-pack10.ads, s-pack11.adb, s-pack11.ads, s-pack12.adb, s-pack12.ads, s-pack13.adb, s-pack13.ads, s-pack14.adb, s-pack14.ads, s-pack15.adb, s-pack15.ads, s-pack17.adb, s-pack17.ads, s-pack18.adb, s-pack18.ads, s-pack19.adb, s-pack19.ads, s-pack20.adb, s-pack20.ads, s-pack21.adb, s-pack21.ads, s-pack22.adb, s-pack22.ads, s-pack23.adb, s-pack23.ads, s-pack24.adb, s-pack24.ads, s-pack25.adb, s-pack25.ads, s-pack26.adb, s-pack26.ads, s-pack27.adb, s-pack27.ads, s-pack28.adb, s-pack28.ads, s-pack29.adb, s-pack29.ads, s-pack30.adb, s-pack30.ads, s-pack31.adb, s-pack31.ads, s-pack33.adb, s-pack33.ads, s-pack34.adb, s-pack34.ads, s-pack35.adb, s-pack35.ads, s-pack36.adb, s-pack36.ads, s-pack37.adb, s-pack37.ads, s-pack38.adb, s-pack38.ads, s-pack39.adb, s-pack39.ads, s-pack40.adb, s-pack40.ads, s-pack41.adb, s-pack41.ads, s-pack42.adb, s-pack42.ads, s-pack43.adb, s-pack43.ads, s-pack44.adb, s-pack44.ads, s-pack45.adb, s-pack45.ads, s-pack46.adb, s-pack46.ads, s-pack47.adb, s-pack47.ads, s-pack48.adb, s-pack48.ads, s-pack49.adb, s-pack49.ads, s-pack50.adb, s-pack50.ads, s-pack51.adb, s-pack51.ads, s-pack52.adb, s-pack52.ads, s-pack53.adb, s-pack53.ads, s-pack54.adb, s-pack54.ads, s-pack55.adb, s-pack55.ads, s-pack56.adb, s-pack56.ads, s-pack57.adb, s-pack57.ads, s-pack58.adb, s-pack58.ads, s-pack59.adb, s-pack59.ads, s-pack60.adb, s-pack60.adb, s-pack60.ads, s-pack61.adb, s-pack61.ads, s-pack62.adb, s-pack62.ads, s-pack63.adb, s-pack63.ads, s-parint.adb, s-parint.adb, s-parint.ads, sprint.ads, s-purexc.ads, s-restri.ads, s-restri.adb, s-scaval.adb, s-scaval.ads, s-secsta.adb, s-secsta.ads, s-sequio.adb, s-sequio.ads, stand.ads, s-tasuti.adb, s-traceb.adb, s-traceb.ads, stringt.adb, stringt.ads, styleg.ads, s-valboo.adb, s-valboo.ads, s-valcha.adb, s-valcha.ads, s-valdec.adb, s-valdec.ads, s-valint.adb, s-valint.ads, s-valint.ads, s-vallld.adb, s-vallld.ads, s-vallli.adb, s-vallli.ads, s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads, s-valuns.adb, s-valuns.ads, s-valuti.adb, s-valuti.ads, s-valwch.ads, s-veboop.adb, s-veboop.ads, s-vercon.adb, s-vercon.ads, s-wchcnv.adb, s-wchcnv.ads, s-wchcon.ads, s-wchjis.adb, s-wchjis.ads, s-wchstw.adb, s-wchstw.adb, s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, s-widboo.adb, s-widboo.ads, s-widcha.adb, s-widcha.ads, s-widenu.adb, s-widenu.ads, s-widlli.adb, s-widlli.ads, s-widllu.adb, s-widllu.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb, s-wwdcha.ads, s-wwdenu.adb, s-wwdenu.ads, symbols.adb, symbols.ads, table.ads, targparm.adb, targparm.ads, tb-alvms.c, tb-alvxw.c, tbuild.adb, tree_io.ads, treepr.adb, treeprs.adt, ttypef.ads, ttypes.ads, types.adb, uintp.adb, uintp.ads, uname.ads, urealp.ads, usage.ads, validsw.ads, vxaddr2line.adb, widechar.adb, widechar.ads, xeinfo.adb, xnmake.adb, xref_lib.ads, xr_tabls.adb, xr_tabls.ads, xsinfo.adb, xtreeprs.adb, xsnames.adb, vms_conv.ads, vms_conv.adb, a-dirval.ads, a-dirval.adb, a-dirval-mingw.adb, a-direct.ads, a-direct.adb, indepsw.ads, prj-attr-pm.ads, system-linux-ppc.ads, a-numaux-darwin.ads, a-numaux-darwin.adb, a-swuwha.ads, a-stunha.ads: Minor reformatting From-SVN: r107016
2005-11-15gnat_ugn.texi: Document that -fstack-check is needed for strict compliance ↵Cyrille Comar5-357/+798
with the Ada 95... 2005-11-14 Cyrille Comar <comar@adacore.com> Robert Dewar <dewar@adacore.com> Vincent Celier <celier@adacore.com> Ben Brosgol <brosgol@adacore.com> Jose Ruiz <ruiz@adacore.com> Pascal Obry <obry@adacore.com> * gnat_ugn.texi: Document that -fstack-check is needed for strict compliance with the Ada 95 Reference Manual. Correct reference to VAX systems to meet HP guidelines Add documentation for new gnatmake switches -vl, -vm and -vh Replace DEC Ada by HP Ada Replace DIGITAL by HP Remove empty section on tools in compatibility section Clarify the Windows convention semantics. Document the Win32 calling convention. The Stdcall, Win32 and DLL convention are synonyms. Add a note in -gnatR description about zero size record components Note on new >= and <= warnings for -gnatwc Document that equal sign after -gnatm is optional. Note that strip is working fine on DLL built with a Library Project. The restriction apply only to DLL built with gnatdll. Update section about the way to debug a DLL. Update information about the DLL convention. Document -C switch for gnatprep Document new attribute Library_ALI_Dir Update elaboration doc to include implicit Elaborate pragmas now generated for subprogram instantiations. Document limitation on executable names that include spaces for --GCC, --GNATBIND, and --GNATLINK switches. Document that -w causes -gnatws to be added at start of gcc switches * gnat_rm.texi: Document that -mieee is needed for generating infinite and NaN values in case of overflow on machines that are not fully compliant with the IEEE floating-point standard. Create a section describing the set of compiler options needed for strict compliance with the Ada 95 Reference Manual. Add documentation for pragma Obsolescent applied to a package Clarify potential issues of mixed language programs related to the I/O buffering enabling in the elaboration of the GNAT runtime. Add extra documentation for pragma Restrictions (No_Elaboration_Code) This documentation only patch adds extra documentsion for pragma Restrictions (No_Elaboration_Code), explaining why it is not possible to document this restriction in terms of allowed source constructs. Document string literal form of pragma Warnings Document new attribute Library_ALI_Dir Add documentation on stable attributes in project files that was missing * gnat-style.texi: Indicate that paragraphs within a single comment should be separated by empty comment lines * ug_words: Added replacements for -gnat95 and -gnat05 (/95 and /05 respectively) * bindusg.adb: Minor cleanup, put -m before -M for consistency From-SVN: r107015
2005-11-15[multiple changes]Arnaud Charlet7-43/+32
2005-11-14 Vincent Celier <celier@adacore.com> * makegpr.adb (Gprmake): Do not attempt to build the global archive if there is no object directory. 2005-11-14 Robert Dewar <dewar@adacore.com> * usage.adb: Minor adjustment to output format, use nn instead of nnn (so that -gnateInnn does not run into next column) 2005-11-14 Ed Falis <falis@adacore.com> * s-bitops.adb (Bits_Array): corrected comment: "unconstrained" => "constrained" 2005-11-14 Cyrille Comar <comar@adacore.com> * s-chepoo.ads: Add comments on Dereference. Remove unnecessary inherited abstract primitives. Cosmetic cleanup. 2005-11-14 Robert Dewar <dewar@adacore.com> * sem_cat.ads (Validate_Access_Type_Declaration): Remove declaration node parameter, not needed, since it is available as Declaration_Node. 2005-11-14 Geert Bosch <bosch@adacore.com> * s-exnllf.adb (Exn_LLF): Fix comment to be more precise and grammatically correct. 2005-11-14 Vincent Celier <celier@adacore.com> * s-fileio.ads: Correct spelling error in comment From-SVN: r107014
2005-11-15xgnatugn.adb: Replace invalid membership test by 'ValidRobert Dewar1-7/+7
2005-11-14 Robert Dewar <dewar@adacore.com> * xgnatugn.adb: Replace invalid membership test by 'Valid From-SVN: r107013
2005-11-15tempdir.adb (Tempdir): Do not use environment variable TMPDIR if it ↵Vincent Celier1-2/+5
designates a non existent directory. 2005-11-14 Vincent Celier <celier@adacore.com> * tempdir.adb (Tempdir): Do not use environment variable TMPDIR if it designates a non existent directory. From-SVN: r107012
2005-11-15switch.adb (Bad_Switch): New procedureVincent Celier3-58/+54
2005-11-14 Vincent Celier <celier@adacore.com> * switch.adb (Bad_Switch): New procedure (Scan_Nat, Scan_Pos): Directly call Osint.Fail with the appropriate message when in error. * switch.ads (Bad_Switch, Bad_Switch_Value, Missing_Switch_Value, Too_Many_Output_Files): Remove declarations, no longer used. (Scan_Nat): New parameter Switch (Scan_Pos): Ditto (Bad_Switch): New procedure * switch-b.adb (Scan_Binder_Switches): Replace "raise Bad_Switch;" with call to new procedure Bad_Switch. Call Scan_Pos and Scan_Natwith new parameter Switch. Replace "raise Too_Many_Output_Files;" with call to Osint.Fail. Do not handle any exception. From-SVN: r107011
2005-11-15s-stoele.adb: Fix code for Address mod Storage_Offset for negative offset valuesRobert Dewar1-4/+6
2005-11-14 Robert Dewar <dewar@adacore.com> * s-stoele.adb: Fix code for Address mod Storage_Offset for negative offset values From-SVN: r107010
2005-11-15s-finroo.ads, [...] (Read): Addition of "not null" to the anonymous access.Javier Miranda5-124/+159
2005-11-14 Javier Miranda <miranda@adacore.com> * s-finroo.ads, s-finroo.adb (Read): Addition of "not null" to the anonymous access. (Write): Addition of "not null" to the anonymous access. (Read): Addition of "not null" to the anonymous access. (Write): Addition of "not null" to the anonymous access. * s-strxdr.adb, s-stratt.ads, s-stratt.adb (I_AD, I_AS, I_B, I_C, I_F, I_I, I_LF, I_LI, I_LLF, I_LLI, I_LLU, I_LU, I_SF, I_SI, I_SSI, I_SSU, I_SU, I_U, I_WC): Addition of "not null" to the anonymous access. (W_AD, W_AS, W_B, W_C, W_F, W_I, W_LF, W_LI, W_LLF, W_LLI, W_LLU, W_LU, W_SF, W_SI, W_SSI, W_SSU, W_SU, W_U, W_WC): Addition of "not null" to the anonymous access. From-SVN: r107009
2005-11-15sem_warn.ads, [...] (Publicly_Referenceable): Generic formals of a generic ↵Ed Schonberg3-17/+243
subprogram are not visible outside the body. 2005-11-14 Ed Schonberg <schonberg@adacore.com> Robert Dewar <dewar@adacore.com> * sem_warn.ads, sem_warn.adb (Publicly_Referenceable): Generic formals of a generic subprogram are not visible outside the body. (Set_Warning_Switch): New procedure (code to set warning mode moved here from Switch.C so that it can be shared by pragma processing. (Check_References): Special case warning for non-modified non-imported volatile objects. * par-prag.adb: Modify processing of pragma Warnings to accomodate new form with a string literal argument From-SVN: r107008
2005-11-15sem_util.ads, [...]: Change name Is_Package to Is_Package_Or_Generic_Package.Robert Dewar2-34/+127
2005-11-14 Robert Dewar <dewar@adacore.com> Thomas Quinot <quinot@adacore.com> Hristian Kirtchev <kirtchev@adacore.com> Ed Schonberg <schonberg@adacore.com> * sem_util.ads, sem_util.adb: Change name Is_Package to Is_Package_Or_Generic_Package. (Check_Obsolescent): New procedure. (Set_Is_Public): Remove obsolete junk test. (Set_Public_Status): Do not set Is_Public on an object whose declaration occurs within a handled_sequence_of_statemets. (Is_Controlling_Limited_Procedure): Factor some of the logic, account for a parameterless procedure. (Enter_Name): Recognize renaming declarations created for private component of a protected type within protected operations, so that the source name of the component can be used in the debugger. From-SVN: r107007
2005-11-15re PR ada/15604 (Ambiguous aggregate -- Accepts invalid)Ed Schonberg1-7/+73
2005-11-14 Ed Schonberg <schonberg@adacore.com> Javier Miranda <miranda@adacore.com> PR ada/15604 * sem_type.adb (Covers): In an inlined body, a composite type matches a private type whose full view is a composite type. (Interface_Present_In_Ancestor): Protect the frontend against previously detected errors to ensure that its compilation with assertions enabled gives the same output that its compilation without assertions. (Interface_Present_In_Ancestor): Add support for private types. Change name In_Actual to In_Generic_Actual (clean up) (Disambiguate): New predicate In_Actual, to recognize expressions that appear in the renaming declaration generated for generic actuals, and which must be resolved in the outer context. From-SVN: r107006
2005-11-15sem_res.adb (Resolve_Call): Provide a better error message whenever a ↵Hristian Kirtchev1-82/+111
procedure call is used as a select... 2005-11-14 Hristian Kirtchev <kirtchev@adacore.com> Ed Schonberg <schonberg@adacore.com> Robert Dewar <dewar@adacore.com> Thomas Quinot <quinot@adacore.com> * sem_res.adb (Resolve_Call): Provide a better error message whenever a procedure call is used as a select statement trigger and is not an entry renaming or a primitive of a limited interface. (Valid_Conversion): If the operand has a single interpretation do not remove address operations. (Check_Infinite_Recursion): Skip freeze nodes when looking for a raise statement to inhibit warning. (Resolve_Unary_Op): Do not produce a warning when processing an expression of the form -(A mod B) Use Universal_Real instead of Long_Long_Float when we need a high precision float type for the generated code (prevents gratuitous Vax_Float stuff when pragma Float_Representation (Vax_Float) used) (Resolve_Concatenation_Arg): Improve error message when argument is an ambiguous call to a function that returns an array. (Make_Call_Into_Operator, Operand_Type_In_Scope): Do not check that there is an implicit operator in the given scope if we are within an instance: legality check has been performed on the generic. (Resolve_Unary_Op): Apply warnings checks on argument of Abs operator after resolving operand, to avoid false warnings on overloaded calls. From-SVN: r107005
2005-11-15sem_eval.adb: Implement d.f flagRobert Dewar1-9/+23
2005-11-14 Robert Dewar <dewar@adacore.com> Ed Schonberg <schonberg@adacore.com> * sem_eval.adb: Implement d.f flag (Subtype_Statically_Match): A generic actual type has unknown discriminants when the corresponding actual has a similar partial view. If the routine is called to validate the signature of an inherited operation in a child instance, the generic actual matches the full view, From-SVN: r107004
2005-11-15sem_ch8.adb (Analyze_Subprogram_Renaming): In a generic context...Ed Schonberg1-14/+268
2005-11-14 Ed Schonberg <schonberg@adacore.com> * sem_ch8.adb (Analyze_Subprogram_Renaming): In a generic context, do not try to rewrite a renamed stream attribute, because the operations on the type may not have been generated. Handle properly a renaming_as_body generated for a stream operation whose default is abstract because the object type itself is abstract. (Find_Type): If the type is incomplete and appears as the prefix of a 'Class reference, it is tagged, and its list of primitive operations must be initialized properly. (Chain_Use_Clauses): When chaining the use clauses that appear in the private declaration of a parent unit, prior to compiling the private part of a child unit, find on the scope stack the proper parent entity on which to link the use clause. (Note_Redundant_Use): Emit a warning when a redundant use clause is detected. (Analyze_Object_Renaming): An attribute reference is not a legal object if it is not a function call. From-SVN: r107003
2005-11-15sem_ch7.adb (Install_Parent_Private_Declarations): New procedure nested ↵Gary Dismukes1-6/+95
within Analyze_Package_Specification to install the... 2005-11-14 Gary Dismukes <dismukes@adacore.com> Ed Schonberg <schonberg@adacore.com> * sem_ch7.adb (Install_Parent_Private_Declarations): New procedure nested within Analyze_Package_Specification to install the private declarations and use clauses within each of the parent units of a package instance of a generic child package. (Analyze_Package_Specification): When entering a private part of a package associated with a generic instance or formal package, the private declarations of the parent must be installed (by calling new procedure Install_Parent_Private_Declarations). Change name Is_Package to Is_Package_Or_Generic_Package (Preserve_Full_Attributes): For a synchronized type, the corresponding record is absent in a generic context, which does not indicate a compiler error. From-SVN: r107002
2005-11-15sem_ch6.adb (Check_Conformance): The null-exclusion feature can be omitted ↵Javier Miranda1-52/+149
in case of stream attribute subprograms. 2005-11-14 Javier Miranda <miranda@adacore.com> Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Check_Conformance): The null-exclusion feature can be omitted in case of stream attribute subprograms. (Check_Inline_Pragma): Handle Inline and Inline_Always pragmas that appear immediately after a subprogram body, when there is no previous subprogram declaration. Change name Is_Package to Is_Package_Or_Generic_Package (Process_Formals): A non null qualifier on a non null named access type is not an error, and is a warning only if Redundant_Constructs are flagged. From-SVN: r107001
2005-11-15sem_ch3.ads, [...] (Build_Discriminal): Add link to original discriminant.Ed Schonberg2-194/+261
2005-11-14 Ed Schonberg <schonberg@adacore.com> Javier Miranda <miranda@adacore.com> * sem_ch3.ads, sem_ch3.adb (Build_Discriminal): Add link to original discriminant. (Build_Private_Derived_Type): The entity of the created full view of the derived type does not come from source. If after installing the private declarations of the parent scope the parent is still private, use its full view to construct the full declaration of the derived type. (Build_Derived_Record_Type): Relax the condition that controls the execution of the check that verifies that the partial view and the full view agree in the set of implemented interfaces. In addition, this test now only takes into account the progenitors. (Derive_Interface_Subprograms): No need to derive subprograms of ancestors that are interfaces. (Derive_Subprograms): Remove formal No_Predefined_Prims and the associated code. Change name Is_Package to Is_Package_Or_Generic_Package (Complete_Subprograms_Derivation): Handle the case in which the full view is a transitive derivation of the ancestor of the partial view. (Process_Full_View): Rename local subprogram Find_Interface_In_ Descendant to Find_Ancestor_Interface to leave the code more clear. Remove wrong code that avoids the generation of an error message when the immediate ancestor of the partial view is an interface. In addition some minor reorganization of the code has been done to leave it more clear. (Analyze_Type_Declaration): If type has previous incomplete tagged partial view, inherit properly its primitive operations. (Collect_Interfaces): Make public, for analysis of formal interfaces. (Analyze_Interface_Declaration): New procedure for use for regular and formal interface declarations. (Build_Derived_Record_Type): Add support for private types to the code that checks if a tagged type implements abstract interfaces. (Check_Aliased_Component_Type): The test applies in the spec of an instance as well. (Access_Type_Declaration): Clean up declaration of malformed type declared as an access to its own classwide type, to prevent cascaded crash. (Collect_Interfaces): For private extensions and for derived task types and derived protected types, the parent may be an interface that must be included in the interface list. (Access_Definition): If the designated type is an interface that may contain tasks, create Master_Id for it before analyzing the expression of the declaration, which may be an allocator. (Record_Type_Declaration): Set properly the interface kind, for use in allocators, the creation of master id's for task interfaces, etc. From-SVN: r107000
2005-11-15sem_ch12.ads, [...] (Map_Entities): Exclude entities whose names are internal...Gary Dismukes2-71/+342
2005-11-14 Gary Dismukes <dismukes@adacore.com> Ed Schonberg <schonberg@adacore.com> Gary Dismukes <dismukes@adacore.com> Thomas Quinot <quinot@adacore.com> * sem_ch12.ads, sem_ch12.adb (Map_Entities): Exclude entities whose names are internal, because they will not have a corresponding partner in the actual package. (Analyze_Formal_Package): Move the setting of the formal package spec's Generic_Parent field so that it occurs prior to analyzing the package, to allow proper operation of Install_Parent_Private_Declarations. (Analyze_Package_Instantiation): Set the instantiated package entity's Package_Instantiation field. (Get_Package_Instantiation_Node): Move declaration to package spec. Retrieve the N_Package_Instantiation node when the Package_Instantiation field is present. (Check_Generic_Child_Unit): Within an inlined call, the only possible instantiation is Unchecked_Conversion, for which no parents are needed. (Inline_Instance_Body): Deinstall and record the use_clauses for all parent scopes of a scope being removed prior to inlining an instance body. (Analyze_Package_Instantiation): Do not perform front-end inlining when the current context is itself an instance within a non-instance child unit, to prevent scope stack errors. (Save_References): If the node is an aggregate that is an actual in a call, rewrite as a qualified expression to preserve some type information, to resolve possible ambiguities in the instance. (Instance_Parent_Unit): New global variable to record the ultimate parent unit associated with a generic child unit instance (associated with the existing Parent_Unit_Visible flag). (type Instance_Env): New component Instance_Parent_Unit for stacking parents recorded in the global Instance_Parent_Unit. (Init_Env): Save value of Instance_Parent_Unit in the Instance_Env stack. (Install_Spec): Save the parent unit entity in Instance_Parent_Unit when it's not a top-level unit, and only do this if Instance_Parent_Unit is not already set. Replace test of Is_Child_Unit with test of parent's scope against package Standard. Add comments and a ??? comment. (Remove_Parent): Revise condition for resetting Is_Immediately_Visible on a child instance parent to test that the parent equals Instance_Parent rather than simply checking that the unit is not a child unit. (Restore_Env): Restore value of Instance_Parent_Unit from Instance_Env. (Validate_Derived_Interface_Type_Instance): Verify that all ancestors of a formal interface are ancestors of the corresponding actual. (Validate_Formal_Interface_Type): Additional legality checks. (Analyze_Formal_Derived_Interface_Type): New procedure to handle formal interface types with ancestors. (Analyze_Formal_Package): If formal is a renaming, use renamed entity to diagnose attempts to use generic within its own declaration. From-SVN: r106999
2005-11-15sem_ch10.adb: Change name Is_Package to Is_Package_Or_Generic_Package Do not ↵Robert Dewar1-42/+76
give obsolescent... 2005-11-14 Robert Dewar <dewar@adacore.com> Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb: Change name Is_Package to Is_Package_Or_Generic_Package Do not give obsolescent warning on with of subprogram (since we diagnose calls) (Analyze_With_Clause): Add test for obsolescent package (Install_Context_Clauses): If the unit is the body of a child unit, do not install twice the private declarations of the parents, to prevent circular lists of Use_Clauses in a parent. (Implicit_With_On_Parent): Do add duplicate with_clause on parent when compiling body of child unit. Use new class N_Subprogram_Instantiation (Expand_With_Clause): If this is a private with_clause for a child unit, appearing in the context of a package declaration, then the implicit with_clauses generated for parent units are private as well. (License_Check): Do not generate message if with'ed unit is internal From-SVN: r106998
2005-11-15sem_aggr.adb (Resolve_Aggregate): An others choice is legal on the rhs of an ↵Ed Schonberg1-5/+26
assignment even if... 2005-11-14 Ed Schonberg <schonberg@adacore.com> * sem_aggr.adb (Resolve_Aggregate): An others choice is legal on the rhs of an assignment even if the type is unconstrained, when the context is non-expanding. In an inlined body, if the context type is private, resolve with its full view, which must be a composite type. From-SVN: r106997
2005-11-15prj-pp.adb (Print): Do not output the with statement if the associated name ↵Emmanuel Briot2-18/+36
is empty... 2005-11-14 Emmanuel Briot <briot@adacore.com> * prj-pp.adb (Print): Do not output the with statement if the associated name is empty, which happens for virtual extending projects. (Print): Preserve the "extends all" attribute when printing the project. * prj-tree.ads (String_Value_Of): Add comment about returned value for a virtual extending project. From-SVN: r106996
2005-11-15prj-part.adb (Create_Virtual_Extending_Project): Put virtual project into ↵Vincent Celier1-1/+14
Prj.Tree.Tree_Private_Part.Projects_Htable for GPS. 2005-11-14 Vincent Celier <celier@adacore.com> * prj-part.adb (Create_Virtual_Extending_Project): Put virtual project into Prj.Tree.Tree_Private_Part.Projects_Htable for GPS. From-SVN: r106995
2005-11-15prj-ext.adb: Take into account new environment variable GPR_PROJECT_PATH.Vincent Celier1-9/+51
2005-11-14 Vincent Celier <celier@adacore.com> * prj-ext.adb: Take into account new environment variable GPR_PROJECT_PATH. Warn if both GPR_PROJECT_PATH and ADA_PROJECT_PATH are defined. (Prj.Ext elaboration): For each directory in the ADA_PROJECT_PATH, normalize its path name, making it absolute and resolving symbolic links, and replace the original if resolved path is different. From-SVN: r106994
2005-11-15par-ch10.adb (P_Compilation_Unit): Add defenses against junk unit syntax, ↵Robert Dewar1-5/+20
which could cause compiler hangs. 2005-11-14 Robert Dewar <dewar@adacore.com> * par-ch10.adb (P_Compilation_Unit): Add defenses against junk unit syntax, which could cause compiler hangs. From-SVN: r106993
2005-11-15namet.h: (Column_Numbe): New type.Eric Botcazou1-1/+6
2005-11-14 Eric Botcazou <ebotcazou@adacore.com> * namet.h: (Column_Numbe): New type. (Get_Column_Number): Define to sinput__get_column_number. (Instantiation): Define to sinput__instantiation. (Get_Column_Number): Declare. (Instantiation): Likewise. From-SVN: r106992
2005-11-15mdll.adb (Build_Reloc_DLL): Fix parameter handling when a map file is used.Pascal Obry1-15/+22
2005-11-14 Pascal Obry <obry@adacore.com> * mdll.adb (Build_Reloc_DLL): Fix parameter handling when a map file is used. (Ada_Build_Reloc_DLL): Fix parameter handling when a map file is used. In both cases the last argument was dropped. From-SVN: r106991
2005-11-15Make-lang.in: Makefile automatically updatedGNAT Script1-1319/+1371
2005-11-14 GNAT Script <nobody@adacore.com> * Make-lang.in: Makefile automatically updated From-SVN: r106990
2005-11-15make.adb (Compile_Sources): Change verbose message to minimum verbosity ↵Vincent Celier2-178/+501
level High for "is in an Ada... 2005-11-14 Vincent Celier <celier@adacore.com> * make.adb (Compile_Sources): Change verbose message to minimum verbosity level High for "is in an Ada library", "is a read-only library" and "is an internal library", (Create_Binder_Mapping_File): Path name of ALI file for library project must include the library directory, not the object directory. (Scan_Make_Arg): Make sure that Switch.M.Scan_Make_Switches is called for new switches -vl, -vm and -vh. (Verbose_Msg): Add new defaulted parameter Minimum_Verbosity (Check): Use minimum verbosity Medium for some Verbose_Msg calls (Compile_Sources): Do not attempt to compile if an ALI file is missing in a project that is externally built. (Compute_All_Imported_Projects): New procedure (Gnatmake): Check if importing libraries should be regenerated because at least an imported library is more recent. (Initialize): For each project compute the list of the projects it imports directly or indirectly. (Add_Library_Search_Dir): New procedure, used in place of Add_Lib_Search_Dir in procedure Scan_Make_Arg so that absolute paths are put in the search paths. (Add_Source_Search_Dir): New procedure, used in place of Add_Src_Search_Dir in procedure Scan_Make_Arg so that absolute paths are put in the search paths. (Mark_Directory): Resolve the absolute path the directory before marking it. * switch-m.adb (Scan_Make_Switches): Replace "raise Bad_Switch;" with call to new procedure Bad_Switch. Call Scan_Pos with new parameter Switch. Do not handle any exception. (Scan_Make_Switches): Increment Ptr for new switches -vl, -vm and -vh so that the switch is recognized as valid. (Scan_Make_Switches): Implement new switches -vl, -vm and -vh. From-SVN: r106989
2005-11-15lib-xref.adb (Generate_Definition, [...]): Treat the internal entity created ↵Ed Schonberg1-1/+14
for the declaration of a child subprogram... 2005-11-14 Ed Schonberg <schonberg@adacore.com> * lib-xref.adb (Generate_Definition, Generate_Reference): Treat the internal entity created for the declaration of a child subprogram body with no spec as coming from source, to generate proper cross-reference information. From-SVN: r106988
2005-11-15interfac.ads: Change declarations of IEEE float types so that we no longer ↵Robert Dewar1-11/+15
need a separate... 2005-11-14 Robert Dewar <dewar@adacore.com> * interfac.ads: Change declarations of IEEE float types so that we no longer need a separate version of this package for VMS. From-SVN: r106987
2005-11-15init.c [VMS]: Don't install __gnat_error_handler if DBG$TDBG defined.Doug Rupp1-1/+6
2005-11-14 Doug Rupp <rupp@adacore.com> * init.c [VMS]: Don't install __gnat_error_handler if DBG$TDBG defined. From-SVN: r106986
2005-11-15g-spitbo.adb: (Hash): Rotate by 3 instead of 1Robert Dewar1-2/+2
2005-11-14 Robert Dewar <dewar@adacore.com> * g-spitbo.adb: (Hash): Rotate by 3 instead of 1 From-SVN: r106985
2005-11-15g-regpat.adb (Fail): raise Expression_Error including the diagnostic ↵Arnaud Charlet1-23/+23
message, friendlier. * g-regpat.adb (Fail): raise Expression_Error including the diagnostic message, friendlier. From-SVN: r106984
2005-11-15gprep.adb: Implement -C switch to scan commentsRobert Dewar5-56/+151
2005-11-14 Robert Dewar <dewar@adacore.com> Vincent Celier <celier@adacore.com> * gprep.adb: Implement -C switch to scan comments * scng.adb: Scan comment symbol separately if Replace_In_Comments set * scans.ads: Comment updates (including new use of Tok_Comment in preprocessing) * opt.ads: Add documentation for flags that are used by gprmake, currently and in the next version of gprmake. (Verbosity_Level): New variable Add Replace_In_Comments switch * vms_data.ads: Add VMS equivalent for new gnatmake switches -vl, -vm and -vm. Add /REPLACE_IN_COMMENTS for gnatprep -C switch From-SVN: r106983
2005-11-15gnatbind.adb (Is_Cross_Compiler): New function returning True for ↵Pascal Obry1-3/+21
cross-compiler. 2005-11-14 Pascal Obry <obry@adacore.com> * gnatbind.adb (Is_Cross_Compiler): New function returning True for cross-compiler. (Scan_Bind_Arg): Fail with an error message if -M option is used on a native compiler. From-SVN: r106982
2005-11-15g-debpoo.adb (Set_Valid): Use Integer_Address instead of Storage_Offset to ↵Robert Dewar1-65/+87
avoid wrap around causing... 2005-11-14 Robert Dewar <dewar@adacore.com> * g-debpoo.adb (Set_Valid): Use Integer_Address instead of Storage_Offset to avoid wrap around causing invalid results. From-SVN: r106981
2005-11-15re PR ada/23732 ([ada] Library_Version still at 4.0 ?)Arnaud Charlet1-2/+2
PR ada/23732 * gnatvsn.ads (Library_Version): Bump to 4.1 From-SVN: r106980
2005-11-15freeze.adb (Freeze_Entity): For an access formal that is an access to ↵Ed Schonberg1-5/+6
subprogram... 2005-11-14 Ed Schonberg <schonberg@adacore.com> * freeze.adb (Freeze_Entity): For an access formal that is an access to subprogram, freeze the anonymous subprogram type at the same time, to prevent later freezing in the wrong scope, such as the enclosing subprogram body. (Freeze_Entity): Freeze the equivalent_type of an access_to_protected_ subprogram whenever available. From-SVN: r106979
2005-11-15impunit.adb: Exclude container helper units not intended for use by users.Robert Dewar1-11/+3
2005-11-14 Robert Dewar <dewar@adacore.com> * impunit.adb: Exclude container helper units not intended for use by users. From-SVN: r106978
2005-11-15exp_strm.adb (Build_Stream_Attr_Profile, [...]): Add the null-excluding ↵Javier Miranda2-8/+18
attribute to the first formal. 2005-11-14 Javier Miranda <miranda@adacore.com> * exp_strm.adb (Build_Stream_Attr_Profile, Build_Stream_Function, Build_Stream_Procedure): Add the null-excluding attribute to the first formal. This has no semantic meaning under Ada95 mode but it is a requirement under Ada05 mode. * par-ch3.adb (P_Access_Definition): Addition of warning message if the null exclusion is used under Ada95 mode (P_Null_Exclusion): The qualifier has no semantic meaning in Ada 95. (P_Access_Definition): Remove assertion that forbids the use of the null-exclusion feature in Ada95. From-SVN: r106977
2005-11-15exp_intr.adb (Expand_Unc_Deallocation): If GIGI needs an actual subtype to ↵Thomas Quinot2-59/+121
compute the size of the designated object at... 2005-11-14 Thomas Quinot <quinot@adacore.com> Robert Dewar <dewar@adacore.com> Ed Schonberg <schonberg@adacore.com> * exp_intr.adb (Expand_Unc_Deallocation): If GIGI needs an actual subtype to compute the size of the designated object at run-time, create such a subtype and store it in the Actual_Designated_Subtype attribute of the N_Free_Statement. Generate itype for classwide designated object in both cases of user-specified storage pool: specific and class-wide, not only in the specific case. Raise CE when trying to set a not null access type object to null. (Expand_Dispatching_Constructor_Call): Retrieve subprogram actual with an explicit loop, because freeze nodes make its position variable. * sem_intr.adb (Check_Intrinsic_Call): Given warning for freeing not null object. From-SVN: r106976
2005-11-15exp_fixd.adb: Use Universal_Real instead of Long_Long_Float when...Robert Dewar2-96/+77
2005-11-14 Robert Dewar <dewar@adacore.com> * exp_fixd.adb: Use Universal_Real instead of Long_Long_Float when we need a high precision float type for the generated code (prevents gratuitous Vax_Float stuff when pragma Float_Representation (Vax_Float) used). * exp_imgv.adb: Use Universal_Real instead of Long_Long_Float when we need a high precision float type for the generated code (prevents gratuitous Vax_Float stuff when pragma Float_Representation (Vax_Float) used). (Expand_Width_Attribute): In configurable run-time, the attribute is not allowed on non-static enumeration subtypes. Force a load error to emit the correct diagnostic. From-SVN: r106975
2005-11-15expect.c (__gnat_kill): Fix implementation...Pascal Obry2-23/+20
2005-11-14 Pascal Obry <obry@adacore.com> * expect.c (__gnat_kill) [Win32]: Fix implementation, the pid returned by spawnve is a process handle, no need to convert. Add a parameter close to control wether the process handle must be closed. (__gnat_waitpid): Fix implementation, the pid returned by spawnve is a process handle, not need to convert. (__gnat_kill) [*]: Add dummy parameter close to match the Win32 spec. * g-expect.adb: (Kill): Document the new close parameter. (Close): Do not release the process handle in the kill there as waitpid() is using it. (Send_Signal): Release the process handle. From-SVN: r106974
2005-11-15exp_dist.adb (Append_Array_Traversal): Modify constrained case to generate a ↵Thomas Quinot1-62/+89
set of nested array aggregates instead of... 2005-11-14 Thomas Quinot <quinot@adacore.com> * exp_dist.adb (Append_Array_Traversal): Modify constrained case to generate a set of nested array aggregates instead of a single flat aggregate for multi-dimensional arrays. From-SVN: r106973
2005-11-15exp_ch5.adb (Expand_N_Assignment_Statement, [...]): For an assignment of a ↵Cyrille Comar3-123/+164
value of a tagged type that has been rewritten to a... 2005-11-14 Cyrille Comar <comar@adacore.com> Thomas Quinot <quinot@adacore.com> * exp_ch5.adb (Expand_N_Assignment_Statement, Tagged_Case): For an assignment of a value of a tagged type that has been rewritten to a block statement, it is known by construction that no checks are necessary for the statements within the block: analyze it with checks suppressed. (Expand_N_If_Statement): When killing a dead then-branch in an if-statement that has elsif_parts, recompute the Current_Value node for any entity whose value is known from the condition of the first elsif_part. (Expand_N_Return_Statement): When returning a mutable record, convert the return value into its actual subtype in order to help the backend to return the actual size instead of the maximum. This is another aftermath of not returning mutable records on the sec-stack anymore. * sem_ch5.ads, sem_ch5.adb (Analyze_Iteration_Scheme): Minor change to handling of error msg for suspicious reverse range iteration. (Check_Possible_Current_Value_Condition): Move declaration from body to spec, to allow this subprogram to be called from exp_ch5. From-SVN: r106972
2005-11-15sem_disp.adb: Change name Is_Package to Is_Package_Or_Generic_PackageJavier Miranda11-11/+295
2005-11-14 Javier Miranda <miranda@adacore.com> Robert Dewar <dewar@adacore.com> Hristian Kirtchev <kirtchev@adacore.com> * sem_disp.adb: Change name Is_Package to Is_Package_Or_Generic_Package (Check_Dispatching_Operation): Protect the frontend againts previously detected errors. * Makefile.rtl: Add new instantiations of system.fat_gen * s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads: Change name of instantiated package for better consistency with newly added system.fat_gen instantiations. * s-filofl.ads, s-fishfl.ads, s-fvadfl.ads, s-fvaffl.ads, s-fvagfl.ads: New files. From-SVN: r106971
2005-11-15sem_attr.adb: Implement Machine_Rounding attributeRobert Dewar6-229/+513
2005-11-14 Robert Dewar <dewar@adacore.com> Hristian Kirtchev <kirtchev@adacore.com> * sem_attr.adb: Implement Machine_Rounding attribute (Analyze_Access_Attribute): The access attribute may appear within an aggregate that has been expanded into a loop. (Check_Task_Prefix): Add semantic check for attribute 'Callable and 'Terminated whenever the prefix is of a task interface class-wide type. (Analyze_Attribute): Add semantic check for attribute 'Identity whenever the prefix is of a task interface class-wide type. * s-vaflop-vms-alpha.adb: Valid_D, Valid_F, Valid_G: Make Val constant to avoid warnings. * s-fatgen.ads, s-fatgen.adb (Machine_Rounding): New function Remove pragma Inline for [Unaligned_]Valid. Add comments that Valid routines do not work for Vax_Float * exp_attr.adb: Implement Machine_Rounding attribute * snames.h: Add entry for Machine_Rounding attribute From-SVN: r106970
2005-11-15exp_aggr.adb (Build_Record_Aggr_Code): Do not create master entity for task ↵Ed Schonberg1-255/+311
component, in the case of a limited aggregate. 2005-11-14 Ed Schonberg <schonberg@adacore.com> Cyrille Comar <comar@adacore.com> * exp_aggr.adb (Build_Record_Aggr_Code): Do not create master entity for task component, in the case of a limited aggregate. The enclosed object declaration will create it earlier. Otherwise, in the case of a nested aggregate, the object may appear in the wrong scope. (Convert_Aggr_In_Object_Decl): Create a transient scope when needed. (Gen_Assign): If the component being assigned is an array type and the expression is itself an aggregate, wrap the assignment in a block to force finalization actions on the temporary created for each row of the enclosing object. (Build_Record_Aggr_Code): Significant rewrite insuring that ctrl structures are initialized after all discriminants are set so that they can be accessed even when their offset is dynamic. From-SVN: r106969
2005-11-15sem_elab.adb: Change name Is_Package to Is_Package_Or_Generic_PackageRobert Dewar9-123/+432
2005-11-14 Robert Dewar <dewar@adacore.com> Ed Schonberg <schonberg@adacore.com> * sem_elab.adb: Change name Is_Package to Is_Package_Or_Generic_Package (Check_Elab_Call): A call within a protected body is never an elaboration call, and does not require checking. (Same_Elaboration_Scope): Take into account protected types for both entities. (Activate_Elaborate_All_Desirable): New procedure * ali.ads, ali.adb: Implement new AD/ED for Elaborate_All/Elaborate desirable * binde.adb: Implement new AD/ED for Elaborate_All/Elaborate desirable (Elab_Error_Msg): Use -da to include internal unit links, not -de. * lib-writ.ads, lib-writ.adb: Implement new AD/ED for Elaborate_All/Elaborate desirable Use new Elaborate_All_Desirable flag in N_With_Clause node * sinfo.ads, sinfo.adb (Actual_Designated_Subtype): New attribute for N_Free_Statement nodes. Define new class N_Subprogram_Instantiation Add Elaborate_Desirable flag to N_With_Clause node Add N_Delay_Statement (covering two kinds of delay) * debug.adb: Introduce d.f flag for compiler Add -da switch for binder From-SVN: r106968
2005-11-15clean.adb (Check_Project): Look for Ada code in extending project, even if ↵Vincent Celier8-446/+1133
Ada is not specified as a language. 2005-11-14 Vincent Celier <celier@adacore.com> * clean.adb (Check_Project): Look for Ada code in extending project, even if Ada is not specified as a language. Use new function DLL_Prefix for DLL_Name (Clean_Interface_Copy_Directory): New procedure (Clean_Library_Directory): New procedure (Clean_Directory): Remove procedure, no longer used (Clean_Project): Do not delete any file in an externally built project * prj-env.adb (Set_Ada_Paths.Add.Recursive_Add): Add the object directory of an extending project, even when there are no Ada source present. (Ada_Objects_Path.Add): Add Library_ALI_Dir, not Library_Dir to the path (Set_Ada_Paths.Add.Recursive_Add): Ditto * mlib-prj.adb (Check_Library): For all library projects, get the library file timestamp. (Build_Library): Copy ALI files in Library_ALI_Dir, not in Library_Dir (Build_Library): Use new function DLL_Prefix for the DLL_Name (Clean): Remove procedure, no longer used (Ultimate_Extension_Of): New function (Build_Library): When cleaning the library directory, only remove an existing library file and any ALI file of a source of the project. When cleaning the interface copy directory, remove any source that could be a source of the project. * prj.ads, prj.adb (Project_Empty): Add values of new components Library_TS and All_Imported_Projects. (Project_Empty): Add values for new components of Project_Data: Library_ALI_Dir and Display_Library_ALI_Dir * prj-attr.adb: New project level attribute name Library_ALI_Dir * prj-nmsc.adb (Check_Library_Attributes): Take into account new attribute Library_ALI_Dir. (Check_Library_Attributes): The library directory cannot be the same as any source directory of the project tree. (Check_Stand_Alone_Library): The interface copy directory cannot be the same as any source directory of the project tree. * mlib.adb: Use Prj.Com.Fail, instead of Osint.Fail directly, to delete all temporary files. From-SVN: r106967