aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada
AgeCommit message (Collapse)AuthorFilesLines
2005-06-28Makefile.in: Set and use UNWIND_H.Paul Brook2-0/+5
2005-06-28 Paul Brook <paul@codesourcery.com> gcc/ * Makefile.in: Set and use UNWIND_H. Install as unwind.h. * c-decl.c (finish_decl): Call default_init_unwind_resume_libfunc. * except.c (add_ehspec_entry): Generate arm eabi filter lists. (assign_filter_values): Ditto. (output_ttype): New function. (output_function_exception_table): Use output_ttype. Generate arm eabi filter lists. (default_init_unwind_resume_libfunc): New function. * except.h (default_init_unwind_resume_libfunc): Add prototype. * optabs.c (init_optabs): Don't set unwind_resume_libfunc. * opts.c (decode_options): Use targetm.unwind_tables_default. * target-def.h (TARGET_ASM_TTYPE): Provide and use definition. (TARGET_ARM_EABI_UNWINDER, TARGET_UNWIND_TABLES_DEFAULT): Ditto. * target.h (struct gcc_target): Add asm.ttype, unwind_tables_default and arm_eabi_unwinder. * unwind-c.c: Support Arm EABI unwinder. * unwind.h: Rename ... * unwind-generic.h: ... To this. * doc/tm.texi (TARGET_ASM_TTYPE, TARGET_ARM_EABI_UNWINDER): Document. (TARGET_UNWID_TABLES_DEFAULT): Document. * config/arm/arm-protos.h (arm_output_fn_unwind): Add prototype. * config/arm/arm.c (arm_unwind_emit, arm_output_ttype): New functions. (TARGET_UNWIND_EMIT, TARGET_ASM_TTYPE, TARGET_ARM_EABI_UNWINDER): Define. (thumb_pushpop, thumb_output_function_prologue): Output unwinding directives. (arm_unwind_emit_stm, arm_unwind_emit_set): New functions. * config/arm/arm.h (MUST_USE_SJLJ_EXCEPTIONS): Only define when !TARGET_UNWIND_INFO. (ARM_OUTPUT_FN_UNWIND, ARM_EABI_UNWIND_TABLES): Define. * config/arm/bpabi.h (TARGET_UNWIND_INFO): Define. * config/arm/elf.h (ASM_DECLARE_FUNCTION_NAME, ASM_DECLARE_FUNCTION_SIZE): Use ARM_OUTPUT_FN_UNWIND. * config/arm/lib1funcs.asm: Include libunwind.S. * config/arm/libgcc-bpabi.ver: Add unwinding routines. * config/arm/libunwind.S: New file. * config/arm/pr-support.c: New file. * config/arm/t-bpabi (LIB1ASMFUNCS): Add _unwind. (UNWIND_H, LIB2ADDEH, LIB2ADDEHDEP): Set. * config/arm/t-symbian (UNWIND_H, LIB2ADDEH, LIB2ADDEHDEP): Set. * config/arm/unwind-arm.c: New file. * config/arm/unwind-arm.h: New file. * config/i386/t-netware (USER_H): Remove unwind.h. * config/ia64/ia64.h (TARGET_UNWIND_TABLES_DEFAULT): Define. gcc/cp/ * Make-lang.in (cp/except.o): Depend on $(TARGET_H) * except.c: Include target.h. (init_exception_processing): Initialize unwind_resume_libfunc. * doc/tm.texi: Document TARGET_ASM_TTYPE gcc/ada/ * misc.c (gnat_init_gcc_eh): Call default_init_unwind_resume_libfunc. gcc/java/ * decl.c (java_init_decl_processing): Call default_init_unwind_resume_libfunc. gcc/objc/ * objc-act.c (objc_init_exceptions): Call default_init_unwind_resume_libfunc. libstdc++/ * acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Check for __cxa_end_cleanup. * libsupc++/Makefile.am (sources): Add eh_call.c and eh_arm.c. * libsupc++/eh_arm.cc: New file. * libsupc++/eh_call.cc: New file. * libsupc++/eh_catch.cc (__cxa_get_exception_ptr): Use __gxx_caught_object. (__cxa_begin_catch): Ditto. Use __is_gxx_exception_class. Call _Unwind_Complete when using the ARM EABI. (__cxa_end_catch): Use __is_gxx_exception_class. * libsupc++/eh_personality.cc: Define NO_SIZE_OF_ENCODED_VALUE when using the ARM EABI. (save_caught_exception, restore_caught_exception): New functions. (_throw_typet): New typedef. (get_ttype_entry, get_adjusted_ptr, check_exception_spec): Add ARM EABI implementations. (PERSONALITY_FUNCTION): Use new functions. Addd support for ARM EABI unwinding libary. (__cxa_unexpected): Disable when using the ARM EABI. * libsupc++/eh_throw.cc (__cxa_throw): Use __GXX_INIT_EXCEPTION_CLASS. (__cxa_rethrow): Use __is_gxx_exception_class. Call _Unwind_RaiseException when using the ARM EABI. * libsupc++/unwind-cxx.h (struct __cxa_exception): Add fields for ARM EABI semantics. (struct __cxa_eh_globals): Ditto. (__cxa_call_terminate): Add prototype. (__cxa_type_match, __cxa_begin_cleanup, __cxa_end_cleanup): Add prototypes. (__get_exception_header_from_obj, __get_exception_header_from_ue): Move earlier in file. (__is_gxx_exception_class, __GXX_INIT_EXCEPTION_CLASS, __gxx_caught_object): New functions. * aclocal.m4: Regenerate. * configure: Regenerate. * Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * libmath/Makefile.in: Regenerate. * libsupc++/Makefile.in: Regenerate. * po/Makefile.in: Regenerate. * src/Makefie.in: Regenerate. * testsuite/makefile.in: Regenerate. From-SVN: r101385
2005-06-16resyncArnaud Charlet1-0/+1522
From-SVN: r101081
2005-06-16Resync with latest version of AI-302Arnaud Charlet5-55/+67
From-SVN: r101079
2005-06-16Update header.Arnaud Charlet2-2/+2
From-SVN: r101078
2005-06-16Update comments and spec.Arnaud Charlet1-17/+22
From-SVN: r101077
2005-06-16Minor reformatting.Arnaud Charlet1-1/+1
From-SVN: r101076
2005-06-16Minor reformatting.Arnaud Charlet2-5/+3
Update header. From-SVN: r101075
2005-06-16Update copyrightArnaud Charlet2-2/+2
From-SVN: r101074
2005-06-16Removed, no longer used.Arnaud Charlet3-916/+0
From-SVN: r101073
2005-06-16[multiple changes]Arnaud Charlet71-203/+1168
2005-06-10 Arnaud Charlet <charlet@adacore.com> * Makefile.in: Add initialize.o when needed. Adapt to new VMS package body Symbols and subunits No specialized version of a-sytaco is needed for VxWorks. * a-wichun.ads, a-wichun.adb, a-zchuni.ads, a-zchuni.adb: New files. * a-zchara.ads, a-widcha.ads: New files. * system-hpux-ia64.ads: New file. * i-vxwork-x86.ads, i-vxwork.ads (intContext): Add this function which is imported from the VxWorks kernel. 2005-06-14 Robert Dewar <dewar@adacore.com> * g-soliop-mingw.ads, g-soccon-vms.adb, a-swmwco.ads, exp_smem.adb, fmap.adb, a-szmzco.ads, s-traent-vms.adb, s-traent-vms.ads, a-direio.ads, a-exctra.ads, a-exexda.adb, a-exextr.adb, a-stream.ads, s-restri.ads, s-restri.adb, s-traent.adb, s-traent.ads, a-slcain.adb, a-stzhas.ads, a-tiinau.adb, comperr.adb, exp_ch11.adb, g-boubuf.adb, g-calend.adb, g-debpoo.ads, g-moreex.ads, gprep.adb, g-regpat.ads, i-cexten.ads, i-os2thr.ads, makeutl.ads, memroot.adb, mlib-prj.adb, namet.adb, namet.ads, prj-makr.adb, prj-proc.adb, sem_dist.adb, sem_elim.ads, s-valint.adb, s-vallli.adb, s-vallli.adb, s-vallli.ads, s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads, scn.adb, s-tasinf.adb, targparm.adb, uname.adb, uname.ads, xnmake.adb, xsinfo.adb, a-direct.ads: Remove extra blank lines. Minor reformatting. 2005-06-14 Thomas Quinot <quinot@adacore.com> * xeinfo.adb: Fix typo in comment 2005-06-14 Javier Miranda <miranda@adacore.com> * repinfo.ads: Fix typo in comment 2005-06-14 Gary Dismukes <dismukes@adacore.com> * s-finimp.adb (Parent_Tag): Delete this imported function (function Parent_Tag is now in the visible part of Ada.Tags). (Get_Deep_Controller): Call Ada.Tags.Parent_Tag directly instead of using imported function. 2005-06-14 Bernard Banner <banner@adacore.com> * vxaddr2line.adb: Add support for Windows hosted x86 vxworks. Should also apply for handling support for VxSim 653. 2005-06-14 Eric Botcazou <ebotcazou@adacore.com> * xsnames.adb: Add automatic generation of snames.h. 2005-06-14 Thomas Quinot <quinot@adacore.com> * gen-soccon.c: Add IP_MULTICAST_IF constant Minor reformatting and adjustments to prevent warnings. 2005-06-14 Pascal Obry <obry@adacore.com> * seh_init.c: Do not include <sys/stat.h>. This is not needed. From-SVN: r101072
2005-06-16gnat_rm.texi: Add documentation for pragma Persistent_BSS Document second ↵Robert Dewar3-113/+234
argument (Ada_05)... 2005-06-10 Robert Dewar <dewar@adacore.com> Eric Botcazou <ebotcazou@adacore.com> Ben Brosgol <brosgol@adacore.com> Cyrille Comar <comar@adacore.com> Sergey Rybin <rybin@adacore.com> Pascal Obry <obry@adacore.com> * gnat_rm.texi: Add documentation for pragma Persistent_BSS Document second argument (Ada_05) of pragma Obsolescent Add note that call to subprogram marked with pragma Obsolescent is now considered to be a violation of program Restrictions (No_Obsolescent_Features). (Implementation Defined Pragmas) <Machine_Attribute>: Make it clear that only machine-dependent attributes are supported. * gnat_ugn.texi: Commented out menu lines and empty section for gnatclean examples Document -gnatwy/Y Fix some over long lines Clarify and enhance documentation of ADA_PROJECT_PATH. Rework section 2.11.2(3) about linking with a non-GNU compiler. Mention new switch -fcallgraph-info. Mention new switch -fstack-usage. For gnatpp, replace '-notab' with '-N' and add this option to Index Corrected VMS example. VMS keyword for style check -gnatyd is DOS_LINE_ENDINGS, no NOCRLF Minor reformatting Add documentation for -gnatyu switch (unnecessary blank lines) Document new switch -U for GNAT PRETTY and GNAT METRIC Add note about Stdcall being handled as C convention on non Windows OS. Remove some junk typo in description of gnatbind -S switch Remove reference to Extensions_Allowed pragma Document the new order of the directories to be searched (source and object directories of project files before directories in ADA_*_PATH environment variables. * g-trasym.ads: Document that IRIX is supported From-SVN: r101071
2005-06-16re PR ada/20515 ("stdcall" imports are not handled correctly)Eric Botcazou3-30/+90
2005-06-10 Eric Botcazou <ebotcazou@adacore.com> Olivier Hainque <hainque@adacore.com> Richard Kenner <kenner@vlsi1.ultra.nyu.edu> Pascal Obry <obry@adacore.com> * gigi.h: (build_allocator): Add arg IGNORE_INIT_TYPE. * trans.c (call_to_gnu): Issue a warning for users of Starlet when making a temporary around a procedure call because of non-addressable actual parameter. (process_freeze_entity): If entity is a private type, capture size information that may have been computed for the full view. (tree_transform, case N_Allocator): If have initializing expression, check type for Has_Constrained_Partial_View and pass that to build_allocator. (tree_transform, case N_Return_Statement): Pass extra arg to build_allocator. * decl.c (annotate_value): Remove early return if -gnatR is not specified. (gnat_to_gnu_field): Don't make a packable type for a component clause if the position is byte aligned, the field is aliased, and the clause size isn't a multiple of the packable alignment. It serves no useful purpose packing-wise and would be rejected later on. (gnat_to_gnu_entity, case object): Pass extra arg to build_allocator. PR ada/20515 (gnat_to_gnu_entity): Remove use of macro _WIN32 which is wrong in the context of cross compilers. We use TARGET_DLLIMPORT_DECL_ATTRIBUTES instead. (create_concat_name): Idem. From-SVN: r101070
2005-06-16a-swunha.ads, [...]: Removed.Matthew Heaney49-7076/+10382
2005-06-14 Matthew Heaney <heaney@adacore.com> * a-swunha.ads, a-swunha.adb: Removed. Replaced by a-swuwha.ad[sb] * a-swuwha.ads, a-swuwha.adb: New files * a-szunha.ads, a-szunha.adb: Removed, replaced by a-szuzha.ad[sb] * a-szuzha.ads, a-szuzha.adb: New files. * a-rbtgso.adb, a-crbtgo.ads, a-crbtgo.adb, a-crbtgk.ads, a-crbtgk.adb, a-crbltr.ads, a-coorse.ads, a-coorse.adb, a-convec.ads, a-convec.adb, a-coinve.ads, a-coinve.adb, a-cohata.ads, a-cohama.ads, a-cohama.adb, a-ciorse.ads, a-ciorse.adb, a-cihama.ads, a-cihama.adb, a-cidlli.ads, a-cidlli.adb, a-chtgop.ads, a-chtgop.adb, a-cdlili.ads, a-cdlili.adb, a-coormu.adb, a-ciormu.adb, a-cihase.adb, a-cohase.adb, a-cohase.ads, a-ciorma.ads, a-coorma.ads, a-ciormu.ads, a-coormu.ads, a-swunha.adb, a-stunha.adb, a-ciorma.adb, a-coorma.adb, a-shcain.ads, a-shcain.adb, a-chtgke.ads, a-chtgke.adb, a-stwiha.ads, a-stwiha.adb, a-strhas.adb, a-stzhas.adb: synchronized to the latest version of the Ada 2005 RM. From-SVN: r101069
2005-06-16makegpr.adb (Compile_Link_With_Gnatmake): Invoke gnatmake with -d if gprmake ↵Vincent Celier1-0/+60
was invoked with -d. 2005-06-14 Vincent Celier <celier@adacore.com> * makegpr.adb (Compile_Link_With_Gnatmake): Invoke gnatmake with -d if gprmake was invoked with -d. (Compile_Sources): If -d was used, output the "completed ..." message for each compilation. (Scan_Arg): Recognize new switch -d When -c and at least one main is specified, set Unique_Compile to True to guarantee that no other sources will be compiled. From-SVN: r101068
2005-06-16vms_conv.ads, [...]: Remove "Library" command.Doug Rupp4-63/+46
2005-06-14 Doug Rupp <rupp@adacore.com> Vincent Celier <celier@adacore.com> * vms_conv.ads, vms_conv.adb: Remove "Library" command. Update copyright. * vms_data.ads: Add entry for -gnaty/Y [NO]ADA_2005_COMPATIBILITY Remove "Library" command. Change keyword for style check -gnatyd from NOCRLF to DOS_LINE_ENDINGS. Remove useless second style check keyword NONE Remove help documentation for inexistent style check keyword RM_COLUMN_LAYOUT. Add help documentation for style check keywords DOS_LINE_ENDINGS, UNNECESSARY_BLANK_LINES and XTRA_PARENS Add UNNECESSARY_BLANK_LINES for -gnatyu Add qualifiers /ALL_PROJECTS (-U) for GNAT PRETTY and GNAT METRIC * ug_words: Add entry for -gnaty/Y [NO]ADA_2005_COMPATIBILITY From-SVN: r101067
2005-06-16styleg-c.adb (Body_With_No_Spec): Remove ':' from warning message.Sergey Rybin1-3/+3
2005-06-14 Sergey Rybin <rybin@adacore.com> * styleg-c.adb (Body_With_No_Spec): Remove ':' from warning message. From-SVN: r101066
2005-06-16nmake.adt: Modify header so that xnmake does not generate output files with ↵Robert Dewar2-8/+6
multiple blank... 2005-06-14 Robert Dewar <dewar@adacore.com> * nmake.adt: Modify header so that xnmake does not generate output files with multiple blank lines. * treeprs.adt: Remove a blank line so that output from xtreeprs does not have an extra blank line From-SVN: r101065
2005-06-162005-06-14 Arnaud Charlet <charlet@adacore.com>Arnaud Charlet2-22/+97
Jose Ruiz <ruiz@adacore.com> * s-tposen.adb, s-tpobop.adb (Exceptional_Complete_Rendezvous): Save the occurrence and not only the exception id. (PO_Do_Or_Queue): Before queuing a task on an entry queue we check that there is no violation of the Max_Entry_Queue_Length restriction (if it has been set); Program_Error is raised otherwise. (Requeue_Call): Before requeuing the task on the target entry queue we check that there is no violation of the Max_Entry_Queue_Length restriction (if it has been set); Program_Error is raised otherwise. From-SVN: r101064
2005-06-16s-tasren.adb (Exceptional_Complete_Rendezvous): Fix race condition.Arnaud Charlet1-7/+9
2005-06-14 Arnaud Charlet <charlet@adacore.com> * s-tasren.adb (Exceptional_Complete_Rendezvous): Fix race condition. From-SVN: r101063
2005-06-16s-strxdr.adb: Follow AI95-00132Thomas Quinot1-4/+6
2005-06-14 Thomas Quinot <quinot@adacore.com> * s-strxdr.adb: Follow AI95-00132 From-SVN: r101062
2005-06-16sem_warn.adb (Warn_On_Known_Condition): If the constant expression appears ↵Ed Schonberg1-7/+25
within a negation (either from source or as... 2005-06-14 Ed Schonberg <schonberg@adacore.com> * sem_warn.adb (Warn_On_Known_Condition): If the constant expression appears within a negation (either from source or as a rewriting of inequality) adjust text of warning accordingly. From-SVN: r101061
2005-06-16re PR ada/10671 (improve error message for named notation used in pragma)Robert Dewar6-825/+1043
2005-06-14 Robert Dewar <dewar@adacore.com> Ed Schonberg <schonberg@adacore.com> PR ada/10671 * sem_prag.adb: Implement pragma Persistent_BSS Remove obsolete pragma Persistent_Data, Persistent_Object Set Ada_Version_Explicit, for implementation of AI-362 Test Ada_Version_Explicit for Preelaborate_05 and Pure_05 Add processing for pragma Pure_05 and Preelaborate_05 Add processing for Assertion_Policy pragma Add pragma identifiers for Assert (Analyze_Pragma, case Assert): Check number of arguments (Process_Inline): Additional guard against an illegal program, where the argument of the pragma is undefined, and warnings on redundant constructs are enabled. (Analyze_Pragma, case Obsolescent): Allow an optional second argument Ada_05 to this pragma, specifying that the pragma is only active in Ada_05 mode. (Check_Arg_Order): New procedure Add appropriate calls to this procedure throughout Also throughout, check entity name before doing any other checks * snames.h snames.ads, snames.adb: Add pragma Persistent_BSS Remove obsolete pragma Persistent_Data, Persistent_Object Add entries for pragma Pure_05 and Preelaborate_05 Add entries for Assertion_Policy pragma and associated names Add some names for pragma argument processing * tbuild.ads, tbuild.adb: (Make_Linker_Section_Pragma): New function From-SVN: r101060
2005-06-16sem_eval.adb (Subtypes_Statically_Match): Use discriminant constraint of ↵Ed Schonberg1-1/+32
full view if present... 2005-06-14 Ed Schonberg <schonberg@adacore.com> * sem_eval.adb (Subtypes_Statically_Match): Use discriminant constraint of full view if present, when other type is discriminated. (Eval_Relational_Op): Recognize tests of pointer values against Null, when the pointer is known to be non-null, and emit appropriate warning. From-SVN: r101059
2005-06-16sem_case.adb (Expand_Others_Choice): Improve warning.Ed Schonberg1-1/+2
2005-06-14 Ed Schonberg <schonberg@adacore.com> * sem_case.adb (Expand_Others_Choice): Improve warning. From-SVN: r101058
2005-06-16sem_aggr.adb (Aggregate_Constraint_Checks): Apply a conversion to the ↵Gary Dismukes2-21/+34
expression when the component type is an anonymous... 2005-06-14 Gary Dismukes <dismukes@adacore.com> * sem_aggr.adb (Aggregate_Constraint_Checks): Apply a conversion to the expression when the component type is an anonymous access type to ensure that appropriate accessibility checks are done. * sem_ch5.adb (Analyze_Assignment): Apply a implicit conversion to the expression of an assignment when the target object is of an anonymous access type. This ensures that required accessibility checks are done. (One_Bound): Move the check for type Universal_Integer to Process_Bounds. (Process_Bounds): Check whether the type of the preanalyzed range is Universal_Integer, and in that case set Typ to Integer_Type prior to setting the type of the original range and the calls to One_Bound. From-SVN: r101057
2005-06-16scng.adb: Add call to new Check_EOF routineRobert Dewar7-29/+128
2005-06-14 Robert Dewar <dewar@adacore.com> * scng.adb: Add call to new Check_EOF routine (Accumulate_Checksum): Properly handle wide wide char >= 2 ** 24 Add some comments regarding wide character handling * style.ads, styleg.ads, styleg.adb: Implement new style switch -gnatyu * stylesw.ads, stylesw.adb: Implement new style switch -gnatyu * g-utf_32.ads, g-utf_32.adb (Is_UTF_32_Non_Graphic): Other_Format characters are now considered graphic characters and hence yield false in this call. From-SVN: r101056
2005-06-16s-atacco.ads: Put a pragma No_Strict_Aliasing on Object_Pointer.Eric Botcazou1-0/+7
2005-06-14 Eric Botcazou <ebotcazou@adacore.com> * s-atacco.ads: Put a pragma No_Strict_Aliasing on Object_Pointer. From-SVN: r101055
2005-06-16prj-part.adb (Pre_Parse_Context_Clause): Call Set_Is_Not_Last_In_List when ↵Vincent Celier4-14/+81
the project file in a with clause is not the... 2005-06-14 Vincent Celier <celier@adacore.com> * prj-part.adb (Pre_Parse_Context_Clause): Call Set_Is_Not_Last_In_List when the project file in a with clause is not the last one, that is the project file name is followed by a comma. * prj-pp.adb: (First_With_In_List): New Boolean global variable (Print): Issue list of project files separated by commas in with clauses according to the values returned by Is_Not_Last_In_List. * prj-tree.ads, prj-tree.adb: (Is_Not_Last_In_List): New function (Set_Is_Not_Last_In_List): New procedure From-SVN: r101054
2005-06-16prj-nmsc.adb (Suffix_For): Change default suffix for C++ to ".cpp"Vincent Celier1-5/+28
2005-06-14 Vincent Celier <celier@adacore.com> * prj-nmsc.adb (Suffix_For): Change default suffix for C++ to ".cpp" (Check_Stand_Alone_Library): If the specified reference symbol file does not exist, only issue a warning when the symbol policy is not Controlled. And, when symbol policy is Compliant, set the symbol policy to Autonomous. From-SVN: r101053
2005-06-16prep.adb (Preprocess): Ignore error when scanning the first token of a line.Vincent Celier1-1/+3
2005-06-14 Vincent Celier <celier@adacore.com> * prep.adb (Preprocess): Ignore error when scanning the first token of a line. From-SVN: r101052
2005-06-16re PR ada/15613 (Accepts named parameters not last)Robert Dewar1-15/+36
2005-06-14 Robert Dewar <dewar@adacore.com> PR ada/15613 * par-ch2.adb (Scan_Pragma_Argument): New procedure (P_Pragma): Implement RM 2.8(4) check for no pos args after named args From-SVN: r101051
2005-06-16osint.adb (Add_Default_Search_Dirs): Put source and object directories of ↵Vincent Celier1-17/+17
project files before directories coming... 2005-06-14 Vincent Celier <celier@adacore.com> * osint.adb (Add_Default_Search_Dirs): Put source and object directories of project files before directories coming from ADA_INCLUDE_PATH and ADA_OBJECTS_PATH. From-SVN: r101050
2005-06-16opt.ads, opt.adb: New flags for persistent_bss mode Add Ada_Version_Explicit...Robert Dewar4-141/+217
2005-06-14 Robert Dewar <dewar@adacore.com> * opt.ads, opt.adb: New flags for persistent_bss mode Add Ada_Version_Explicit, for implementation of AI-362 Add Assertions_Enabled_Config and associated handling Needed since setting can be changed with Assertion_Policy pragma Add new flag Warn_On_Ada_2005_Compatibility * switch-c.adb: Recognize -gnatwy/Y Set Ada_Version_Explicit, for implementation of AI-362 The -gnatg switch now includes -gnatyu * usage.adb: Add -gnatwy/Y Remove wrong asterisk on -gnatwX line Add line for -gnatyu switch From-SVN: r101049
2005-06-16mdll.adb (Get_Dll_Name): New routine that returns the DLL name given the ↵Pascal Obry1-42/+66
library name. 2005-06-14 Pascal Obry <obry@adacore.com> * mdll.adb (Get_Dll_Name): New routine that returns the DLL name given the library name. From-SVN: r101048
2005-06-16Make-lang.in: Add initialize.o when needed.Doug Rupp3-391/+505
2005-06-10 Doug Rupp <rupp@adacore.com> Arnaud Charlet <charlet@adacore.com> Olivier Hainque <hainque@adacore.com> Jose Ruiz <ruiz@adacore.com> * Make-lang.in: Add initialize.o when needed. Remove obsolete references to RT_FLAGS. Add missing dependencies for sdefault.o * initialize.c: New file. * init.c [VMS] Declare ADA$ externs weak to fix build problem in IVMS. [VMS] cond_signal_table: Fix problem in declaration. [VMS] __gnat_error_handler: rewrite. Move all __gnat_initialize() routines to initialize.c Specialize the former "hpux" section to "hppa hpux", as this is what the section really is here for and we now have other hpux ports that need different contents. (__gnat_adjust_context_for_raise) i386-linux: First version of this function for this target. Adjust PC by one in the machine context. This adjustment was previously done in the MD_FALLBACK_FRAME_STATE_FOR, but it is more reliable to do that in the signal handler itself. (__gnat_install_handler) i386-linux: Set SA_SIGINFO in the sigaction flags, so that the handler is passed the context structure to adjust prior to the raise. (__gnat_error_handler) i386-linux: Adjust the signature to match what a SA_SIGINFO sigaction should look like. Call __gnat_adjust_context_for_raise before actually raising. Cleanup unused Machine_State_Operations stuff. Add conditional code so that the x86_64 is also supported. From-SVN: r101047
2005-06-16lib-xref.ads, [...] (Generate_Definition): Treat any entity declared within ↵Ed Schonberg5-31/+161
an inlined body as referenced... 2005-06-14 Ed Schonberg <schonberg@adacore.com> Emmanuel Briot <briot@adacore.com> * lib-xref.ads, lib-xref.adb (Generate_Definition): Treat any entity declared within an inlined body as referenced, to prevent spurious warnings. (Output_One_Ref): If an entity renames an array component, indicate in the ALI file that this aliases (renames) the array. Capture as well function renamings that rename predefined operations. Add information about generic parent for package and subprogram instances. (Get_Type_Reference): For a subtype that is the renaming of an actual in an instantiation, use the first_subtype to ensure that we don't generate cross-reference information for internal types. For objects and parameters of a generic private type, retain the '*' indicator to distinguish such an entity from its type. * ali.ads (Xref_Entity_Record): New fields Iref_File_Num and Iref_Line, to store information about instantiated entities. * ali.adb (Scan_ALI): Add support for parsing the reference to the generic parent * xref_lib.adb (Skip_To_Matching_Closing_Bracket): New subprogram (Parse_Identifier_Info, Parse_Token): Add support for the generic parent information. From-SVN: r101046
2005-06-16lib-load.ads, [...] (Load_Unit): Addition of a new parameter that indicates ↵Javier Miranda6-66/+154
if... 2005-06-14 Javier Miranda <miranda@adacore.com> Jose Ruiz <ruiz@adacore.com> Robert Dewar <dewar@adacore.com> Ed Schonberg <schonberg@adacore.com> * lib-load.ads, lib-load.adb (Load_Unit): Addition of a new parameter that indicates if we are parsing a compilation unit found in a limited-with clause. It is use to avoid the circularity check. * par.ads, par.adb (Par): Addition of a new parameter to indicate if we are parsing a compilation unit found in a limited-with clause. This is use to avoid the circularity check. * par-load.adb (Load): Indicate Lib.Load_Unit if we are loading the unit as a consequence of parsing a limited-with clause. This is used to avoid the circularity check. * sem_ch10.adb: Suppress Ada 2005 unit warning if -gnatwY used (Analyze_Context): Limited-with clauses are now allowed in more compilation units. (Analyze_Subunit_Context, Check_Parent): Protect the frontend againts previously reported critical errors in context clauses (Install_Limited_Withed_Unit): Code cleanup plus static detection of two further errors: renamed subprograms and renamed packages are not allowed in limited with clauses. (Install_Siblings): Do not install private_with_clauses on the package declaration for a non-private child unit. (Re_Install_Parents): When a parent of the subunit is reinstalled, reset visibility of child units properly. (Install_Withed_Unit): When a child unit appears in a with_clause of its parent, it is immediately visible. From-SVN: r101045
2005-06-16layout.adb (Discrimify): Remove resetting of Vtype to the underlying type ↵Gary Dismukes1-10/+21
which turns out to be an... 2005-06-14 Gary Dismukes <dismukes@adacore.com> * layout.adb (Discrimify): Remove resetting of Vtype to the underlying type which turns out to be an incomplete and incorrect fix. (Layout_Array_Type): Use Underlying_Type when checking whether the scope of the type is declared in a record (for determination of insertion type). (SO_Ref_From_Expr): Test whether Vtype denotes a partial or full view of a private type and ensure that the primary entity is used for the type of the newly created function's V formal by taking the Etype of the view. From-SVN: r101044
2005-06-16re PR ada/6717 (Race condition in GNAT.Sockets.Create_Selector)Thomas Quinot2-36/+55
2005-06-14 Thomas Quinot <quinot@adacore.com> PR ada/6717 * g-socket.ads, g-socket.adb (Inet_Addr): Special case the all-ones broadcast address. (Create_Selector): Bind listening socket used to create the signalling socket pair to 127.0.0.1 to limit the scope for 'theft' of connection. Set listen backlog to 1 to ensure that we detect socket theft by a failure of our own connect(2) call. (Check_Selector): Improve documentation of the selector mechanism. (Broadcast_Inet_Addr): New constant. From-SVN: r101043
2005-06-16g-os_lib.ads, [...] (Non_Blocking_Spawn): Two new versions with output file ↵Vincent Celier2-12/+148
descriptor and with output file name. 2005-06-14 Vincent Celier <celier@adacore.com> Cyrille Comar <comar@adacore.com> * g-os_lib.ads, g-os_lib.adb (Non_Blocking_Spawn): Two new versions with output file descriptor and with output file name. (Dup, Dup2): Now global procedures as they are used by two subprograms (Copy): Allocate the 200K buffer on the heap rather than on the stack. From-SVN: r101042
2005-06-16g-dynhta.ads, [...] (Reset): Free the table itself after releasing the items.Pascal Obry2-11/+19
2005-06-14 Pascal Obry <obry@adacore.com> * g-dynhta.ads, g-dynhta.adb (Reset): Free the table itself after releasing the items. From-SVN: r101041
2005-06-16g-diopit.adb (Wildcard_Iterator): Return directly if Path is equal to ""Nicolas Roche1-12/+15
2005-06-14 Nicolas Roche <roche@adacore.com> * g-diopit.adb (Wildcard_Iterator): Return directly if Path is equal to "" (Next_Level): Fix minor bug in handling of ../dir case (Read): Add dir separator to Directory name so that "" is understood as "/" From-SVN: r101040
2005-06-16g-debpoo.adb (Deallocate, [...]): Improve output.Emmanuel Briot1-1/+5
2005-06-14 Emmanuel Briot <briot@adacore.com> * g-debpoo.adb (Deallocate, Dereference): Improve output. From-SVN: r101039
2005-06-16g-comlin.adb (Getopt): Skip any leading space in the Switches string.Joel Brobecker1-2/+10
2005-06-14 Joel Brobecker <brobecker@adacore.com> * g-comlin.adb (Getopt): Skip any leading space in the Switches string. Avoids a CE when it starts with spaces. From-SVN: r101038
2005-06-16fe.h: Add entry for Opt.Exception_Locations_Suppressed so that gigi can ↵Jose Ruiz2-9/+16
determine... 2005-06-14 Jose Ruiz <ruiz@adacore.com> * fe.h: Add entry for Opt.Exception_Locations_Suppressed so that gigi can determine whether pragma Suppress_Exception_Locations is in effect. * utils2.c (build_call_raise): Do not pass the file name to the exception handler if pragma Suppress_Exception_Locations is in effect. (build_allocator): Add and process arg IGNORE_INIT_TYPE. From-SVN: r101037
2005-06-16exp_intr.adb, [...]: Minor fix to error message textRobert Dewar2-3/+3
2005-06-14 Robert Dewar <dewar@adacore.com> * exp_intr.adb, par-ch5.adb: Minor fix to error message text From-SVN: r101036
2005-06-16exp_dist.adb (Add_RACW_Primitive_Declarations_And_Bodies): For an RACW ↵Thomas Quinot1-5/+10
without any primitives... 2005-06-14 Thomas Quinot <quinot@adacore.com> * exp_dist.adb (Add_RACW_Primitive_Declarations_And_Bodies): For an RACW without any primitives, do not generate the if statement for dispatching by name in the PolyORB/DSA case, as it would be malformed (it would have an Elsif_Parts list that is not No_List, but with a length of 0). From-SVN: r101035
2005-06-16exp_dbug.ads, [...] (Get_Variant_Part): Fix the encoding of the ↵Nicolas Setton2-22/+33
"simple_choice" member in a variant record... 2005-06-14 Nicolas Setton <setton@adacore.com> Ed Schonberg <schonberg@adacore.com> * exp_dbug.ads, exp_dbug.adb (Get_Variant_Part): Fix the encoding of the "simple_choice" member in a variant record, in accordance with the description in the package spec: the information output for a constant should be "S number", not "SS number". (Get_Encoded_Name): Return at once if not generating code. Avoids name overflow problem when compiling with -gnatct, for ASIS/gnatmetrics. From-SVN: r101034
2005-06-16exp_ch7.adb (Find_Node_To_Be_Wrapped): If the node appears within the ↵Ed Schonberg1-2/+6
entry_call alternative of a conditional entry... 2005-06-14 Ed Schonberg <schonberg@adacore.com> * exp_ch7.adb (Find_Node_To_Be_Wrapped): If the node appears within the entry_call alternative of a conditional entry call, wrap the conditional entry call itself. From-SVN: r101033
2005-06-16exp_ch2.adb (Param_Entity): Take the case of an expanded_name denoting a ↵Thomas Quinot1-1/+1
formal parameter into account. 2005-06-14 Thomas Quinot <quinot@adacore.com> * exp_ch2.adb (Param_Entity): Take the case of an expanded_name denoting a formal parameter into account. From-SVN: r101032