aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada
AgeCommit message (Collapse)AuthorFilesLines
2004-12-09tree.def (SET_TYPE): Remove.Nathan Sidwell2-1/+4
* tree.def (SET_TYPE): Remove. (CONSTRUCTOR): Update description. * builtins.c (type_to_class) Remove SET_TYPE case. * dbxout.c (dbxout_type): Likewise. * dwarf2out.c (is_base_type): Likewise. (gen_set_type_die): Remove. (gen_type_die): Remove SET_TYPE case. * expr.c (count_type_elements): Likewise. (mostly_zeroes_p): Likewise. (store_constructor): Likewise. * print_tree.c (print_node): Likewise. * stor-layout.c (layout_type): Likewise. * tree-browser.c (browse_tree): Likewise. * tree-inline.c (remap_type): Likewise. * tree-pretty-print.c (dump_generic_node): Likewise. * tree.c (type_contains_plaeholder_1, type_hash_eq, variably_modified_type_p, initializer_zerop): Likewise. * tree.h (SET_OR_ARRAY_CHECK): Remove. (AGGREGATE_TYPE_P): Remove SET_TYPE check. (TYPE_DOMAIN): Use ARRAY_TYPE_CHECK. * typeclass.h (enum type_class): Remove set_type_class. * varasm.c (const_hash_1): Remove SET_TYPE case. (compare_constant, copy_constant, output_constant): Likewise. * config/i386/i386.c (classify_argument): Likewise. * config/ia64/ia64.c (hfa_element_mode): Likewise. * config/sparc/sparc.c (sparc_type_code): Likewise. * ada/decl.c (gnat_substitute_in_type): Remove SET_TYPE case. From-SVN: r91931
2004-12-08Resync.Arnaud Charlet1-0/+380
From-SVN: r91897
2004-12-08g-socket.ads (Get_Host_By_Address, [...]): Clarify documentation of the ↵Arnaud Charlet20-529/+994
behaviour of these functions when... * g-socket.ads (Get_Host_By_Address, Get_Host_By_Name): Clarify documentation of the behaviour of these functions when passed an IP address that has no record in the system hosts database and no reverse record in the DNS. * cstand.adb, a-tags.ads: Fix typos in comment. * exp_ch2.adb, exp_ch3.adb, exp_ch5.adb, exp_ch8.adb, exp_ch9.adb, exp_pakd.adb, interfac.ads, sem_ch6.adb, sem_ch7.adb, sem_ch10.adb, sem_ch13.adb, sem_ch3.adb, s-poosiz.ads: Minor reformatting * make.adb: Minor reformatting Add some ??? comments asking for more comments * s-poosiz.adb: Minor reformatting Add comments on alignment requirement * sinfo.ads: Remove obsolete comment and fix typo. * gnat_ugn.texi: Update the section "The GNAT Driver and Project Files" with the new tool and package names. Reformatting to suppress most of the warnings for line too long Document the new section "Project Search Path:" in the output of gnatls -v. Add gnatmetric section * vms_data.ads: Correct GNAT METRIC qualifiers: -I-, -Idir and -gnatec= are not direct switches of gnatmetric. Changed -eis to -eps and -eit to -ept. Added qualifier /ELEMENT_METRICS=CONSTRUCT_NESTING_MAX for new switch -ec. From-SVN: r91896
2004-12-08* vxaddr2line.adb: Add support for x86 vxworksArnaud Charlet1-4/+8
From-SVN: r91895
2004-12-08sem_ch8.adb (Find_Type): If node is a reference to 'Base and the prefix is ↵Arnaud Charlet1-26/+26
not a scalar type... * sem_ch8.adb (Find_Type): If node is a reference to 'Base and the prefix is not a scalar type, place error message on prefix, not on type entity. From-SVN: r91894
2004-12-08sem_ch5.adb (One_Bound): Remove call to Resolve...Arnaud Charlet1-8/+21
* sem_ch5.adb (One_Bound): Remove call to Resolve, as the bound needs to be resolved later as part of Analyze_Iteration_Scheme's call to Make_Index. From-SVN: r91893
2004-12-08sem_ch4.adb (Process_Implicit_Dereference_Prefix): New subprogram used to ↵Arnaud Charlet1-43/+68
record an implicit dereference as a read operation on... * sem_ch4.adb (Process_Implicit_Dereference_Prefix): New subprogram used to record an implicit dereference as a read operation on its prefix when operating under -gnatc. Necessary to avoid spurious 'variable assigned but never read' warnings in that mode. (Process_Indexed_Component, Analyze_Selected_Component): When the prefix is a non-overloaded implicit dereference, call the above subprogram to ensure proper recording of references. From-SVN: r91892
2004-12-08nlists.adb (Prepend_Debug): Remove parameters and nest within Prepend.Arnaud Charlet2-96/+97
* nlists.adb (Prepend_Debug): Remove parameters and nest within Prepend. (Remove_Next_Debug): Same fix * nlists.ads: Correct bad comments for Prev and Prev_Non_Pragma (we do maintain back pointers now, though we did not used to, and comments were out of date). (Prepend): Remove pragma Inline. (Remove_Next): Same cleanup From-SVN: r91891
2004-12-08misc.c (gnat_types_compatible_p, [...]): Remove.Arnaud Charlet3-36/+18
* misc.c (gnat_types_compatible_p, LANG_HOOKS_TYPES_COMPATIBLE_P): Remove. (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): New. * adaint.h: (__gnat_dup, __gnat_dup2): Add missing decls. * trans.c (Exception_Handler_to_gnu_sjlj): Also handle renamed exception. (call_to_gnu): Convert to actual DECL_ARG_TYPE, not variant of it. From-SVN: r91890
2004-12-08* Makefile.in: Add support for foreign threads on VMS.Arnaud Charlet1-1/+1
From-SVN: r91889
2004-12-08lib-xref.adb (Generate_Reference): Handle properly a reference to an entry ↵Arnaud Charlet2-23/+45
formal... * lib-xref.adb (Generate_Reference): Handle properly a reference to an entry formal, when an accept statement has a pragma Unreferenced for it. * sem_ch9.adb (Analyze_Accept_Statement): Reset the Is_Referenced flag and the Has_Pragma_Unreferenced flag for each formal before analyzing the body, to ensure that warnings are properly emitted for each accept statement of a given task entry. From-SVN: r91888
2004-12-08* g-regpat.adb: (Match): Change a misuse of or to or elseArnaud Charlet1-1/+1
From-SVN: r91887
2004-12-08g-os_lib.adb (Spawn): Explicitly initialize Saved_Error to avoid a ↵Arnaud Charlet1-1/+5
compile-time warning. * g-os_lib.adb (Spawn): Explicitly initialize Saved_Error to avoid a compile-time warning. From-SVN: r91886
2004-12-08gnatmem.adb, [...]: Output the copyright message on a separate line from the ↵Arnaud Charlet5-11/+10
version message. * gnatmem.adb, gnatname.adb, gnatsym.adb, gprcmd.adb, vms_conv.adb: Output the copyright message on a separate line from the version message. From-SVN: r91885
2004-12-08exp_dist.adb (Specific_Build_General_Calling_Stubs, [...]): New subprograms.Arnaud Charlet4-754/+5745
* exp_dist.adb (Specific_Build_General_Calling_Stubs, Specific_Build_Stub_Target): New subprograms. (Build_Subprogram_Calling_Stubs): Make this procedure independent from the PCS implementation used, using the above PCS-customized subprograms. Minor reformatting. (PolyORB_Support.Helpers): New subunit containing supporting subprograms for generation of DSA code targeted to the PolyORB PCS. (Add_Stub_Type): Rewrite to isolate the parts that are specific to one implementation of the partition communication subsystem in ancillary subprograms. (Specific_Build_Stub_Type, GARLIC_Support.Build_Stub_Type, PolyORB_Support.Build_Stub_Type): New subrograms containing the PCS-specific part of Add_Stub_Type. (Insert_Partition_Check): Use runtime library function to perform E.4(19) check. * rtsfind.ads: New entity System.PolyORB_Interface.Make_Ref (RE_Same_Partition): New entity, from s-parint. * s-parint.ads, s-parint.adb (Same_Partition): New subprogram. From-SVN: r91884
2004-12-08exp_ch7.adb (Expand_Cleanup_Actions): If statement sequence of construct is ↵Arnaud Charlet1-4/+10
rewritten... * exp_ch7.adb (Expand_Cleanup_Actions): If statement sequence of construct is rewritten, preserve end label to permit source navigation. From-SVN: r91883
2004-12-08exp_ch6.adb (Expand_Call): Add comment on handling of back end intrinsicArnaud Charlet3-43/+91
* exp_ch6.adb (Expand_Call): Add comment on handling of back end intrinsic * exp_intr.adb (Expand_Intrinsic_Call): Ignore unrecognized intrinsic, leaving call unchanged. This deals with the case where the pragma Import specified an external name, to be handled by the back end. * sem_prag.adb (Process_Import_Or_Interface): Do not check validity of subprogram which is Imported with convention Intrinsic if an External_Name argument is specified. (Process_Import_Or_Interface): Properly diagnose link name argument. (Inlining_Not_Possible): New name for Cannot_Inline, to avoid confusion with Sem_Ch6.Cannot_Inline. (Process_Inline): Provide separate warning for inapplicable inline pragma. (Cannot_Inline): Reject subprograms that have an at_end handler, so that treatment is uniform on different targets. From-SVN: r91882
2004-12-08exp_ch4.adb (Expand_N_Indexed_Component): For an indexed component with an ↵Arnaud Charlet3-22/+28
implicit dereference as its prefix... * exp_ch4.adb (Expand_N_Indexed_Component): For an indexed component with an implicit dereference as its prefix, use Insert_Explicit_Dereference instead of merely rewriting the prefix into an explicit dereference. This ensures that a reference to the original prefix is generated, if appropriate. * sem_util.adb (Insert_Explicit_Dereference): When an implicit dereference is rewritten to an explicit one, generate a reference to the entity denoted by its prefix using the original prefix node, so the dereference can be properly recorded as a read of the denoted access value, if appropriate. * sem_warn.adb (Output_Unreferenced_Messages): Do not abstain from emitting 'assigned but never read' warning on a variable on the basis that it has an access type. (Check_References): Emit unreferenced warning when the scope is a subprogram body. From-SVN: r91881
2004-12-08* eval_fat.adb: Revert previous change.Arnaud Charlet1-33/+90
From-SVN: r91880
2004-12-08decl.c (maybe_pad_type): Use TYPE_SIZE_UNIT of the input type for ↵Arnaud Charlet2-36/+46
TYPE_SIZE_UNIT of result type if... * decl.c (maybe_pad_type): Use TYPE_SIZE_UNIT of the input type for TYPE_SIZE_UNIT of result type if SIZE is not specified. (make_aligning_type): Pass -1 as ADDRESSABLE to prevent the creation of a bitfield, which we know is useless and causes trouble because of alignment implications. * utils.c (create_var_decl): Set DECL_COMMON again on targets without BSS sections. (process_attributes): Clear DECL_COMMON again when a section attribute is present. (finish_record_type): Independently track if RECORD_TYPE has SIZE and/or SIZE_UNIT already set and use to compute final SIZE and SIZE_UNIT. (create_field_decl): Special case ADDRESSABLE negative to mean "no bitfield creation", to be used by make_aligning_type. Don't restrict bitfield creation to !ADDRESSABLE any more, as some BLKmode fields claimed addressable still have to be bitfields. Use value_factor_p instead of a raw binop construction to check for the position's alignment. From-SVN: r91879
2004-12-08debug.adb: Document that -gnatdA automatically sets -gnatR3mArnaud Charlet4-72/+52
* debug.adb: Document that -gnatdA automatically sets -gnatR3m * gnat1drv.adb (Gnat1drv): If debug flag A set, then automatically set -gnatR3m mode. * repinfo.adb (List_Rep_Info): Remove special handling of -gnatdA flag. No longer needed now that we handle this in gnat1drv.adb. * repinfo.ads: Minor reformatting From-SVN: r91878
2004-12-08make.adb (Check_Mains, [...]): Adapt to name changes in package Prj ↵Arnaud Charlet25-2858/+3633
(Current_Spec_Suffix => Ada_Spec_Suffix... * make.adb (Check_Mains, Switches_Of): Adapt to name changes in package Prj (Current_Spec_Suffix => Ada_Spec_Suffix, Current_Body_Suffix => Ada_Body_Suffix). Take into account Externally_Built attribute. * clean.adb (In_Extension_Chain): Always return False when one of the parameter is No_Project. (Clean_Project): Adapt to changes in package Prj (Lang_Ada => Ada_Language_Index). (Gnatclean): Adapt to change in package Prj.Pars (no parameter Process_Languages for procedure Parse). * gnatcmd.adb (Carg_Switches): New table. (GNATCmd): Put all switches following -cargs in the Carg_Switches table. Adapt to name changes in package Prj (Current_Spec_Suffix => Ada_Spec_Suffix, Current_Body_Suffix => Ada_Body_Suffix). * mlib-prj.adb: Adapt to changes in packages Prj and Prj.Com: type Header_Num and function Hash are now declared in package Prj, not Prj.Com. * prj.adb (Suffix_Of): New function. (Set (Suffix)): New procedure. (Hash): One function moved from Prj.Com (Is_Present, Language_Processing_Data_Of): New functions (Set): Two new procedures (Add_Language_Name, Display_Language_Name): New procedures * prj.ads: (Suffix_Of): New function (Set (Suffix)): New procedure Add several types and tables for multi-language support. (Header_Num): Type moved from Prj.Com (Hash): Two functions moved from Prj.Com (Is_Present, Language_Processing_Data_Of): New functions (Set): Two new procedures (Add_Language_Name, Display_Language_Name): New procedures (Naming): Component name changes: Current_Spec_Suffix => Ada_Spec_Suffix, Current_Body_Suffix => Ada_Body_Suffix. Add new components: Impl_Suffixes, Supp_Suffixes. (Project_Data): New components: Externally_Built, Supp_Languages, First_Language_Processing, Supp_Language_Processing, Default_Linker, Default_Linker_Path. * prj-attr.adb: Add new attributes Ada_Roots and Externally_Built and new package Language_Processing with its attributes (Compiler_Driver, Compiler_Kind, Dependency_Option, Compute_Dependency, Include_Option, Binder_Driver, Default_Linker). * prj-com.ads, prj-com.adb (Hash): Function moved to package Prj. (Header_Num): Type moved to package Prj * prj-env.adb: Adapt to name changes in package Prj (Current_Spec_Suffix => Ada_Spec_Suffix, Current_Body_Suffix => Ada_Body_Suffix). * prj-ext.adb: Add the default project dir (<prefix>/log/gnat) by default to the project path, except the "-" is one of the directories in env var ADA_PROJECT_PATH. (Current_Project_Path): Global variable, replacing Project_Path that was in the body of Prj.Part. (Project_Path): New function (Set_Project_Path): New procedure Initialize Current_Project_Path during elaboration of the package Remove dependency on Prj.Com, no longer needed * prj-ext.ads (Project_Path): New function (Set_Project_Path): New procedure * prj-nmsc.adb (Body_Suffix_Of): New function. Returns .<lang> when no suffix is defined for language <lang>. (Find_Sources, Record_Other_Sources): Use Body_Suffix_Of, instead of accessing directly the components of Naming. (Look_For_Sources): Use Set (Suffix) to set the suffix of a language. Reorganise of this package. Break procedure Check in several procedures. * prj-nmsc.ads: Replace all procedures (Ada_Check, Other_Languages_Check and Language_Independent_Check) with a single procedure Check. * prj-pars.ads, prj-pars.adb (Parse): Remove parameter Process_Languages, no longer needed. * prj-part.adb (Project_Path): Move to the body of Prj.Ext as Current_Project_Path. Remove elaboration code, moved to the body of Prj.Ext Use new function Prj.Ext.Project_Path instead of old variable Project_Path. (Post_Parse_Context_Clause): Get Resolved_Path as a case-sensitive path. When comparing with project paths on the stack, first put the resolved path in canonical case. (Parse_Single_Project): Set the path name of the project file in the tree to the normalized path. * prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): Remove parameter Process_Languages, no longer needed. (Recursive_Check): Call Prj.Nmsc.Check, instead of Ada_Check and Other_Languages_Check. * prj-tree.ads (Project_Name_And_Node): New component Canonical_Path to store the resolved canonical path of the project file. Remove dependency to Prj.Com, no longer needed * prj-util.adb: Adapt to name changes in package Prj (Current_Spec_Suffix => Ada_Spec_Suffix, Current_Body_Suffix => Ada_Body_Suffix). * snames.ads, snames.adb: New standard names: Ada_Roots, Binder_Driver, Compiler_Driver, Compiler_Kind, Compute_Dependency, Default_Linker, Externally_Built, Include_Option, Language_Processing. * makegpr.adb: Numerous changes due to changes in packages Prj and Prj.Nmsc. * gnatls.adb: Add the default project dir (<prefix>/log/gnat) by default to the project path, except whe "-" is one of the directories in env var ADA_PROJECT_PATH. (Gnatls): In verbose mode, add the new section "Project Search Path:" From-SVN: r91877
2004-12-08back_end.adb (Scan_Back_End_Switches): Accept --param.Arnaud Charlet2-3/+4
* back_end.adb (Scan_Back_End_Switches): Accept --param. * lang-specs.h: Accept --param. From-SVN: r91876
2004-12-08atree.adb (Visit_Itype): Create a new name for the generated itype...Arnaud Charlet1-2/+12
* atree.adb (Visit_Itype): Create a new name for the generated itype, because the back-end may otherwise treat it as a redefinition of the old symbol. From-SVN: r91875
2004-12-08a-exexpr.adb (Others_Value, [...]): Change initial values from 16#BEEF# to ↵Arnaud Charlet1-2/+4
16#7FFF# to avoid exceeding Integer'Last... * a-exexpr.adb (Others_Value, All_Others_Value): Change initial values from 16#BEEF# to 16#7FFF# to avoid exceeding Integer'Last on 16-bit targets (such as AAMP). From-SVN: r91874
2004-12-08s-intman-vxworks.adb (Notify_Exception): removed useless check for current ↵Arnaud Charlet2-18/+21
task being suspended. * s-intman-vxworks.adb (Notify_Exception): removed useless check for current task being suspended. * init.c (__gnat_clear_exception): added to reset VxWorks exception count. (__gnat_map_signal): removed test for current task being suspended. From-SVN: r91873
2004-11-27* Make-lang.in (ada/trans.o): Depend on $(EXPR_H).Andreas Schwab2-5/+9
From-SVN: r91365
2004-11-25Resync.Arnaud Charlet1-0/+10
From-SVN: r91298
2004-11-25g-socthi-mingw.ads, [...]: Remove C_Read and C_Write from internal ↵Arnaud Charlet3-27/+1
implementation unit GNAT.Sockets.Thin... * g-socthi-mingw.ads, g-socthi-vms.ads: Remove C_Read and C_Write from internal implementation unit GNAT.Sockets.Thin, as their usage for sockets is non-portable (using the read and write functions from the system runtime library is fine on UNIX but won't work under Windows). * mingw32.h: Update copyright notice. From-SVN: r91297
2004-11-25ada-tree.h: Minor reformatting of previous change to avoid lines longer than ↵Arnaud Charlet2-2/+8
79 characters. * ada-tree.h: Minor reformatting of previous change to avoid lines longer than 79 characters. From-SVN: r91296
2004-11-25tb-gcc.c: GCC infrastructure based implementation of __gnat_backtrace.Olivier Hainque2-0/+107
* tb-gcc.c: GCC infrastructure based implementation of __gnat_backtrace. From-SVN: r91290
2004-11-25Complete previous check-in: add Style_Check_Xtra_Parens.Arnaud Charlet1-14/+19
From-SVN: r91289
2004-11-24c-opts.c (c_common_post_options): Don't clear flag_inline_functions.Steven Bosscher2-4/+6
gcc/ * c-opts.c (c_common_post_options): Don't clear flag_inline_functions. * dojump.c (clear_pending_stack_adjust): Remove check on flag_inline_functions, it's always true. * config/alpha/alpha.md (movdi_er_maybe_g): Remove splitter that can never trigger. * config/c4x/c4x.h (TARGET_CPU_CPP_BUILTINS): Don't look at flag_inline_trees, now that flag_inline_functions is never cleared. * config/pdp11/pdp11.h (OPTIMIZATION_OPTIONS): Don't set flag_inline_functions at optimization levels greater than or equal to 3. This is already done by default. ada/ * misc.c (gnat_post_options): Don't clear flag_inline_functions. cp/ * decl.c (cxx_init_decl_processing): Don't clear flag_inline_functions. fortran/ * options.c (gfc_post_options): Don't clear flag_inline_functions. java/ * class.c (make_class_data): Don't check flag_inline_functions. * lang.c (flag_really_inline): Remove unused flag. (java_handle_option): Don't set it here. Remove special handling of flag_inline_functions for Java. (java_init): Don't set flag_inline_trees here. Already done... (java_post_options): ...here. Don't clear flag_inline_functions. From-SVN: r91190
2004-11-22re PR ada/17986 (Compile error for make.adb breaks bootstrap)Andrew Pinski2-1/+11
2004-11-22 Andrew Pinski <pinskia@physics.uc.edu> PR ada/17986 * ada-tree.h (lang_tree_node): Set chain_next to be the chain of the tree. From-SVN: r91013
2004-11-21stylesw.adb: Change Style_Check_Subprogram_Order to ↵Andreas Jaeger2-7/+12
Style_Check_Order_Subprograms. * stylesw.adb: Change Style_Check_Subprogram_Order to Style_Check_Order_Subprograms. From-SVN: r90985
2004-11-19Resync.Arnaud Charlet1-0/+299
From-SVN: r90916
2004-11-19gnat_ugn.texi: Remove extra paren check from list of checks for redundant ↵Arnaud Charlet4-22/+24
constructs Add... * gnat_ugn.texi: Remove extra paren check from list of checks for redundant constructs Add documentation of new -gnatyx style check (check extra parens) Remove paragraph about gnatelim debug options. * gnat_rm.texi: Document that Ada.Streams now forbids creating stream objects rather than forbidding dependencies on the package Ada.Streams. * sinfo.ads: Add ??? note that we should document pragmas passed to back end. * g-expect.ads: Fix a few typos in the comments. From-SVN: r90915
2004-11-19makegpr.adb (Compile): Put the compiling switches (in package Compiler and ↵Arnaud Charlet1-7/+13
on the command line)... * makegpr.adb (Compile): Put the compiling switches (in package Compiler and on the command line) immediately after "-c", instead of at the end of the command line invocation of the compiler, when compiling a non-Ada file. (Build_Global_Archive): When there is no need to rebuild the archive, set Global_Archive_Exists, so that the archive is passed to the linker if one is needed. From-SVN: r90914
2004-11-19s-tposen.adb (Lock_Entry): Remove the code for raising Program_Error for ↵Arnaud Charlet1-28/+14
Detect_Blocking which is... * s-tposen.adb (Lock_Entry): Remove the code for raising Program_Error for Detect_Blocking which is redundant with the check done within the procedure Protected_Single_Entry_Call. (Lock_Read_Only_Entry): Remove the code for raising Program_Error for Detect_Blocking which is redundant with the check done within the procedure Protected_Single_Entry_Call. From-SVN: r90913
2004-11-19make.adb (Gnatmake): Invoke gnatlink with -shared-libgcc when gnatbind is ↵Arnaud Charlet1-26/+38
invoked with -shared. * make.adb (Gnatmake): Invoke gnatlink with -shared-libgcc when gnatbind is invoked with -shared. From-SVN: r90912
2004-11-19init.c (__gnat_map_signal): map SIGSEGV to Storage_Error for AE653 vthreads.Arnaud Charlet1-6/+14
* init.c (__gnat_map_signal): map SIGSEGV to Storage_Error for AE653 vthreads. (init_float): Eliminate initialization of floating point status for AE653. The instructions have no effect for vThreads. From-SVN: r90911
2004-11-19gnat1drv.adb, [...]: Output the copyright message on a separate line from ↵Arnaud Charlet8-14/+16
the version message. * gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb, gnatlink.adb, gnatls.adb, gnatxref.adb, gprep.adb: Output the copyright message on a separate line from the version message. From-SVN: r90910
2004-11-19exp_pakd.adb (Convert_To_PAT_Type): After replacing the original type of the ↵Arnaud Charlet1-0/+17
object with the packed array type... * exp_pakd.adb (Convert_To_PAT_Type): After replacing the original type of the object with the packed array type, set the Analyzed flag on the object if it is an entity or simple indexed component, to avoid spurious type errors. From-SVN: r90909
2004-11-19expect.c: Define __unix__ when __APPLE__ is defined.Arnaud Charlet3-2/+9
* expect.c: Define __unix__ when __APPLE__ is defined. * Makefile.in: Inform the value of the variable GMEM_LIB in the Darwin-specific section. * lang-specs.h: Change the placement of the %1 marker. From-SVN: r90908
2004-11-19exp_dbug.ads: Update documentation to reflect simpler encoding for protected ↵Arnaud Charlet2-20/+19
operations. * exp_dbug.ads: Update documentation to reflect simpler encoding for protected operations. * exp_ch9.adb (Build_Selected_Name): Do not include "PT" suffix in generated name, it complicates decoding in gdb and hinders debugging of protected operations. (Build_Barrier_Function_Specification): Set the Needs_Debug_Info flag for the protected entry barrier function. (Build_Protected_Entry_Specification): Set the Needs_Debug_Info flag for the protected entry function. From-SVN: r90907
2004-11-19exp_ch4.adb (Expand_N_Selected_Component): If the component is the ↵Arnaud Charlet6-127/+193
discriminant of a constrained subtype... * exp_ch4.adb (Expand_N_Selected_Component): If the component is the discriminant of a constrained subtype, analyze the copy of the corresponding constraint, because in some cases it may be only partially analyzed. Removes long-lived ??? comments. * exp_ch7.adb (Establish_Transient_Scope): Remove complex code that handled controlled or secondary-stack expressions within the iteration_scheme of a loop. * sem_ch5.adb (Analyze_Iteration_Scheme): Build a block to evaluate bounds that may contain functions calls, to prevent memory leaks when the bound contains a call to a function that uses the secondary stack. (Check_Complex_Bounds): Subsidiary of Analyze_Iteration_Scheme, to generate temporaries for loop bounds that might contain function calls that require secondary stack and/or finalization actions. * sem_ch4.adb (Analyze_Indexed_Component_Form): If the prefix is a selected component and the selector is overloadable (not just a function) treat as function call, Analyze_Call will disambiguate if necessary. (Analyze_Selected_Component): Do not generate an actual subtype for the selected component if expansion is disabled. The actual subtype is only needed for constraint checks. (Analyze_Allocator): If restriction No_Streams is set, then do not permit objects to be declared of a stream type, or of a composite type containing a stream. * restrict.ads: Remove the a-stream entry from Unit_Array, since No_Streams no longer prohibits with'ing this package. * sem_ch3.adb (Build_Derived_Record_Type): If the parent type has discriminants, but the parent base has unknown discriminants, there is no discriminant constraint to inherit. Such a discrepancy can arise when the actual for a formal type with unknown discriminants is a similar private type whose full view has discriminants. (Analyze_Object_Declaration): If restriction No_Streams is set, then do not permit objects to be declared of a stream type, or of a composite type containing a stream. From-SVN: r90906
2004-11-19errout.ads, errout.adb: (First_Sloc): New functionArnaud Charlet11-58/+100
* errout.ads, errout.adb: (First_Sloc): New function * par-ch5.adb (P_Condition): Check for redundant parens is now a style check (-gnatyx) instead of being included as a redundant construct warning. * sem_ch6.adb: Change name Style_Check_Subprogram_Order to Style_Check_Order_Subprograms. * style.ads, styleg.ads, styleg.adb, styleg-c.adb, stylesw.ads, stylesw.adb: Add Style_Check_Xtra_Parens * usage.adb: Add line for -gnatyx (check extra parens) * vms_data.ads: Add entry for STYLE_CHECKS=XTRA_PARENS => -gnatyx From-SVN: r90905
2004-11-19einfo.ads, einfo.adb: Remove Is_Psected flag, no longer usedArnaud Charlet13-296/+373
* einfo.ads, einfo.adb: Remove Is_Psected flag, no longer used (Has_Rep_Pragma): New function (Has_Attribute_Definition_Clause): New function (Record_Rep_Pragma): Moved here from sem_ch13.adb (Get_Rep_Pragma): Remove junk kludge for Stream_Convert pragma * sem_ch13.ads, sem_ch13.adb (Record_Rep_Pragma): Moved to einfo.adb * exp_prag.adb: (Expand_Pragma_Common_Object): New procedure (Expand_Pragma_Psect_Object): New procedure These procedures contain the revised and cleaned up processing for these two pragmas. This processing was formerly in Sem_Prag, but is more appropriately moved here. The cleanup involves making sure that the pragmas are properly attached to the tree, and that no nodes are improperly shared. * sem_prag.adb: Move expansion of Common_Object and Psect_Object pragmas to Exp_Prag, which is more appropriate. Attach these two pragmas to the Rep_Item chain Use Rep_Item chain to check for duplicates Remove use of Is_Psected flag, no longer needed. Use new Make_String_Literal function with string. * exp_attr.adb (Expand_Fpt_Attribute): The floating-point attributes that are functions return universal values, that have to be converted to the context type. Use new Make_String_Literal function with string. (Get_Stream_Convert_Pragma): New function, replaces the use of Get_Rep_Pragma, which had to be kludged to work in this case. * freeze.adb: Use new Has_Rep_Pragma function * exp_intr.adb, exp_ch3.adb, sem_attr.adb: Use new Make_String_Literal function with string. Use new Has_Rep_Pragma function. * tbuild.ads, tbuild.adb (Make_String_Literal): New function, takes string argument. From-SVN: r90904
2004-11-19exp_dist.adb (Build_RPC_Receiver_Body): New subprogram.Arnaud Charlet5-1186/+1694
* exp_dist.adb (Build_RPC_Receiver_Body): New subprogram. This procedures factors the common processing for building an RPC receiver for an RCI package or an RACW type. Stylistic cleanup: change '/= Empty' to 'Present ()'; move body of Build_Remote_Subprogram_Proxy_Type into proper alphabetical order. (Get_PCS_Name): New subprogram. Returns the name of the PCS currently in use. (Specific_Add_RACW_Features): New subprogram. PCS-specific part of Add_RACW_Features. (Specific_Add_RAST_Features): New subprogram. PCS-specific part of Add_RAST_Features. (Assign_Subprogram_Identifier): New subprogram. Provision for assigning distribution subprogram identifiers that are either subprogram numbers or strings. (Get_Subprogram_Ids): New subprogram. Retrieve both the numeric and string distribution identifiers assigned to a given subprogram. (Get_Subprogram_Id): Reimplement in terms of Get_Subprogram_Ids. (Add_RAS_Dereference_TSS): Add comments. (Build_General_Calling_Stubs): Note that the RACW_Type formal parameter is not referenced yet because it will be used by the PolyORB DSA implementation. (Insert_Partition_Check): Remove fossile code. (First_RCI_Subprogram_Id): Document this constant. (Add_RAS_Access_TSS): Correct the setting of the Etype of the RAS_Access TSS. (Get_Pkg_Name_String): Remove subprogram. Usage occurrences are replaced with calls to Get_Library_Unit_Name_String. Previously there were several instances of the same code in different locations in the compiler; this checkin completes the replacement of all of these instances with calls to a common subprogram. Minor reformatting. * sem_dist.adb: Remove comment noting that RPC receiver generation should be disabled for RACWs that implement RASs. (Process_Partition_Id): Use new subprogram Get_Library_Unit_Name_String. * sem_util.ads, sem_util.adb (Has_Stream): New function (Get_Library_Unit_Name_String): New subprogram to retrieve the fully qualified name of a library unit into the name buffer. (Note_Possible_Modification): Generate a reference only if the context comes from source. * snames.ads (PCS_Names): New subtype corresponding to names of supported implementations of the Partition Communication Subsystem (PCS) (i.e. the runtime library support modules for the distributed systems annex). From-SVN: r90903
2004-11-19butil.ads, [...] (Get_Unit_Name_String): Remove incomplete duplicate ↵Arnaud Charlet3-26/+4
implementation of this subprogram from butil. * butil.ads, butil.adb, bindgen.adb (Get_Unit_Name_String): Remove incomplete duplicate implementation of this subprogram from butil. From-SVN: r90902