- 13 Dec, 2007 40 commits
-
-
2007-12-06 Robert Dewar <dewar@adacore.com> * xeinfo.adb: Remove warnings * xnmake.adb: Remove warnings * xsinfo.adb: Remove warnings * xtreeprs.adb: Remove warnings * xsnames.adb: Remove warnings * a-ngcoar.adb: Fix typo. * s-interr.adb: Minor reformatting * env.c: Minor reformatting. * g-bytswa.adb: Minor reformatting. * g-rannum.ads: Minor documentation improvements * s-tasinf-mingw.adb: Minor header fix * a-clrefi.adb: Minor reformatting * g-sttsne.ads: Minor documentation improvement * g-sttsne-locking.ads: Minor documentation improvement * g-soliop-solaris.ads: Minor documentation improvement * g-soliop-mingw.ads: Minor documentation improvement * g-soliop.ads: Minor documentation improvement * exp_aggr.ads: Minor reformatting * debug.adb: Add documentation for the gprbuild debug flags * exp_ch2.adb: Use Nkind_In to simplify code throughout * exp_pakd.adb: Minor reformatting * g-altive.ads, g-alleve.adb: Remove assertions. Add comment about minor differences between targets regarding floating-point operations. * g-thread.adb: Remove pragma unreferenced. * lib.ads: Minor reformatting * par-ch9.adb: Minor reformatting of error messages * sem_case.adb: Minor reformatting * s-fileio.adb: Minor reformattinng * s-vmexta.ads: Minor typo * vxaddr2line.adb: Take into account 'Success' value as per new GNAT warning. From-SVN: r130870
Robert Dewar committed -
2007-12-06 Robert Dewar <dewar@adacore.com> * treepr.ads, treepr.adb: (pl): implement use of positive value shorthands From-SVN: r130869
Robert Dewar committed -
2007-12-06 Robert Dewar <dewar@adacore.com> * tbuild.ads, tbuild.adb: Fix location of flag for unrecognized pragma message From-SVN: r130868
Robert Dewar committed -
tb-alvms.c (struct tb_entry_t, [...]): Revert back to use of Procedure Value instead of Frame Pointer as the... 2007-12-06 Olivier Hainque <hainque@adacore.com> * tb-alvms.c (struct tb_entry_t, __gnat_backtrace): Revert back to use of Procedure Value instead of Frame Pointer as the invocation identifier associated with the instruction pointer in each traceback entry. * g-trasym-vms-alpha.adb (Traceback_Entry, PV_For, FP_For, TB_Entry_For): Revert back to use of Procedure Value instead of Frame Pointer as the invocation identifier passed to tbk$symbolize. * s-traent-vms.ads, s-traent-vms.adb (Traceback_Entry, PV_For, FP_For, TB_Entry_For): Revert back to use of Procedure Value instead of Frame Pointer as the invocation identifier passed to tbk$symbolize. From-SVN: r130867
Olivier Hainque committed -
2007-12-06 Robert Dewar <dewar@adacore.com> * styleg.adb (Check_Comment): More liberal rules for comment placement From-SVN: r130866
Robert Dewar committed -
* s-tassta.adb (Create_Task): Take into account tasks created by foreign threads. Code clean up: use constants instead of hard coded values. From-SVN: r130865
Arnaud Charlet committed -
2007-12-06 Robert Dewar <dewar@adacore.com> * s-stoele.adb ("mod"): mod negative value raises Constraint_Error From-SVN: r130864
Robert Dewar committed -
s-stausa.ads (Stack_Analyzer): Remove First_Is_Topmost, redundant with Stack_Grows_Down in System.Parameters. 2007-12-06 Olivier Hainque <hainque@adacore.com> * s-stausa.ads (Stack_Analyzer): Remove First_Is_Topmost, redundant with Stack_Grows_Down in System.Parameters. Rename Array_Address into Stack_Overlay_Address and document that we are using an internal abstraction. (Byte_Size, Unsigned_32_Size): Remove, now useless. (Pattern_Type, Bytes_Per_Pattern): New subtype and constant, to be used consistently throughout the various implementation pieces. * s-stausa.adb (Stack_Slots): New type, abstraction for the stack overlay we are using to fill the stack area with patterns. (Top_Slot_Index_In, Bottom_Slot_Index_In): Operations on Stack_Slots. (Push_Index_Step_For, Pop_Index_Step_For): Likewise. (Fill_Stack, Compute_Result): Use the Stack_Slots abstraction. From-SVN: r130863
Olivier Hainque committed -
2007-12-06 Bob Duff <duff@adacore.com> * s-soflin.ads: Apply new pragma Favor_Top_Level to all access-to-subprogram types in this package. From-SVN: r130862
Bob Duff committed -
2007-12-06 Thomas Quinot <quinot@adacore.com> * sinput-l.adb (Load_File): Disable style checks when preprocessing. From-SVN: r130861
Thomas Quinot committed -
sinput.adb (Get_Source_File_Index): Add assertion to guard against an invalid access to an uninitialized slot in... 2007-12-06 Thomas Quinot <quinot@adacore.com> * sinput.adb (Get_Source_File_Index): Add assertion to guard against an invalid access to an uninitialized slot in the Source_File_Index_Table. From-SVN: r130860
Thomas Quinot committed -
2007-12-06 Bob Duff <duff@adacore.com> Javier Miranda <miranda@adacore.com> Robert Dewar <dewar@adacore.com> * sem_util.ads, sem_util.adb (Is_Concurrent_Interface): New routine. (Set_Convention): New procedure to set the Convention flag, and in addition make sure the Favor_Top_Level flag is kept in sync (all foreign-language conventions require Favor_Top_Level = True). (Collect_Abstract_Interfaces): Update occurrences of Related_Interface to Related_Type. (Collect_Interfaces_Info): Minor update to handle the two secondary dispatch tables. Update occurrence of Related_Interface to Related_Type. (Generate_Parent_Ref): Add parameter to specify entity to check (Is_Preelaborable_Expression): Allow the name of a discriminant to initialize a component of a type with preelaborable initialization. This includes the case of a discriminal used in such a context. (Is_Dependent_Component_Of_Mutable_Object): Take into account the latest Ada 2005 rules about renaming and 'Access of discriminant-dependent components. (Check_Nested_Access): Add handling when there are no enclosing subprograms (e.g. case of a package body). (Find_Parameter_Type): Factor routine from several other compiler files. Remove routine from Find_Overridden_Synchronized_Primitive. From-SVN: r130859
Bob Duff committed -
sem_type.adb (Function_Interp_Has_Abstract_Op): Add guard to check whether formal E is an entity which may have parameters. 2007-12-06 Hristian Kirtchev <kirtchev@adacore.com> * sem_type.adb (Function_Interp_Has_Abstract_Op): Add guard to check whether formal E is an entity which may have parameters. From-SVN: r130858
Hristian Kirtchev committed -
sem_eval.adb (Eval_Real_Literal): N_Constant_Declaration is a static context, so do not call Check_Non_Static_Context. 2007-12-06 Geert Bosch <bosch@adacore.com> * sem_eval.adb (Eval_Real_Literal): N_Constant_Declaration is a static context, so do not call Check_Non_Static_Context. From-SVN: r130857
Geert Bosch committed -
sem_disp.adb (Check_Dispatching_Call): If an actual in a call to an inherited operation is a defaulted... 2007-12-06 Ed Schonberg <schonberg@adacore.com> * sem_disp.adb (Check_Dispatching_Call): If an actual in a call to an inherited operation is a defaulted tag-indeterminate call, and there is a statically tagged actual, use the static tag as a controlling actual for the defaulted actual. From-SVN: r130856
Ed Schonberg committed -
sem_ch9.adb (Analyze_Requeue): Add a local flag to capture whether a requeue statement is dispatching. 2007-12-06 Hristian Kirtchev <kirtchev@adacore.com> Gary Dismukes <dismukes@adacore.com> * sem_ch9.adb (Analyze_Requeue): Add a local flag to capture whether a requeue statement is dispatching. Do not emit an error when the name is not an entry and the context is a dispatching select. Add code to perform subtype conformance between the formals of the current entry and those of the target interface primitive. (Analyze_Asynchronous_Select, Analyze_Conditional_Entry_Call, Analyze_ Timed_Entry_Call): Analyze the triggering statement as the first step of the processing. If this is a dispatching select, postpone the analysis of all select statements until the Expander transforms the select. This approach avoids generating duplicate identifiers after the Expander has replicated some of the select statements. In case the Expander is disabled, perform regular analysis. (Check_Triggering_Statement): New routine. (Analyze_Requeue): Exclude any interpretations that are not entries when checking overloaded names in a requeue. Also test type conformance for matching interpretations rather than requiring subtype conformance at that point to conform with the RM's resolution rule for requeues. From-SVN: r130855
Hristian Kirtchev committed -
sem_ch8.adb (Analyze_Subprogram_Renaming): Special error message for renaming entry as subprogram using rename-as-body if... 2007-12-06 Robert Dewar <dewar@adacore.com> Ed Schonberg <schonberg@adacore.com> * sem_ch8.adb (Analyze_Subprogram_Renaming): Special error message for renaming entry as subprogram using rename-as-body if subprogram spec frozen. (Use_One_Type): The clause is legal on an access type whose designated type has a limited view. (Find_Direct_Name): Use Namet.Sp.Is_Bad_Spelling_Of function (Find_Expanded_Name): Use Namet.Sp.Is_Bad_Spelling_Of function (Analyze_Renamed_Primitive_Operation): new procedure to determine the operation denoted by a selected component. (Analyze_Renamed_Entry): Resolve the prefix of the entry name, because it can be an expression, possibly overloaded, that returns a task or an access to one. From-SVN: r130854
Robert Dewar committed -
sem_ch4.adb (Analyze_Selected_Component): Include the requeue statement to the list of contexts where a selected... 2007-12-06 Hristian Kirtchev <kirtchev@adacore.com> Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Analyze_Selected_Component): Include the requeue statement to the list of contexts where a selected component with a concurrent tagged type prefix should yield a primitive operation. (Find_Primitive_Operation): Handle case of class-wide types. (Analyze_Overloaded_Selected_Component): If type of prefix is class-wide, use visible components of base type. (Resolve_Selected_Component): Ditto. (Try_Primitive_Operation, Collect_Generic_Type_Ops): If the type is a formal of a generic subprogram. find candidate interpretations by scanning the list of generic formal declarations.: (Process_Implicit_Dereference_Prefix): If the prefix has an incomplete type from a limited_with_clause, and the full view is available, use it for subsequent semantic checks. (Check_Misspelled_Selector): Use Namet.Sp.Is_Bad_Spelling_Of function (Find_Primitive_Operation): New function. (Analyze_Overloaded_Selected_Component): insert explicit dereference only once if several interpretations of the prefix yield an access type. (Try_Object_Operation): Code and comment cleanup. (Analyze_Selected_Component): Reorder local variables. Minot comment and code reformatting. When the type of the prefix is tagged concurrent, a correct interpretation might be available in the primitive and class-wide operations of the type. From-SVN: r130853
Hristian Kirtchev committed -
2007-12-06 Robert Dewar <dewar@adacore.com> * s-imenne.adb, s-imenne.ads: New files. * s-imgboo.adb, s-imgboo.ads, s-imgcha.adb, s-imgcha.ads, s-imgdec.adb, s-imgdec.ads, s-imgenu.ads, s-imgint.adb, s-imgint.ads, s-imglld.adb, s-imglld.ads, s-imglli.adb, s-imglli.ads, s-imgllu.adb, s-imgllu.ads, s-imgrea.adb, s-imgrea.ads, s-imguns.adb, s-imguns.ads, s-imgwch.adb, s-imgwch.ads: New calling sequence for Image routines to avoid sec stack usage. From-SVN: r130852
Robert Dewar committed -
2007-12-06 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Instantiate_Formal_Subprogram): In the subprogram renaming declaration, use the Slocs of the formal parameters from the declaration of the formal subprogram when creating the formal parameter entities in the renaming declaration. (Analyze_Formal_Type_Declaration): Change the placement of the error message concerning illegal known discriminants. It is now posted on the type rather than on the first discriminant. This change ensures early error report. (Freeze_Subprogram_Body): If the generic subprogram is nested within the package body that contains the instance, do not generate an out-of-place freeze node for the enclosing package. (Collect_Previous_Instantiations): Ignore internal instantiations generated for formal packages. (Validate_Derived_Type_Instance): Add a check that when a formal derived type is Known_To_Have_Preelab_Init then the actual type must have preelaborable initialization, and issue an error when this condition is violated. From-SVN: r130851
Ed Schonberg committed -
sem_ch10.adb (Check_Private_Child_Unit): A non-private library level subprogram body that acts as its own spec may not... 2007-12-06 Thomas Quinot <quinot@adacore.com> Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Check_Private_Child_Unit): A non-private library level subprogram body that acts as its own spec may not have a non-private WITH clause on a private sibling. (Build_Unit_Name): If the parent unit in the name in a with_clause on a child unit is a renaming, create an implicit with_clause on that parent, and not on the unit it renames, to prevent visibility errors in the current unit. From-SVN: r130850
Thomas Quinot committed -
2007-12-06 Robert Dewar <dewar@adacore.com> * g-byorma.adb, g-byorma.ads, g-decstr.adb, g-decstr.ads, g-deutst.ads, g-encstr.adb, g-encstr.ads, g-enutst.ads: New files. * scn.adb: Implement BOM recognition From-SVN: r130849
Robert Dewar committed -
* rtsfind.adb (Check_CRT): Take into account RTE_Available_Call Fixes another case where RTE_Available_Call was ignored instead of being taken into account. (Load_Fail): Ditto. * rtsfind.ads: Add new entries. From-SVN: r130848
Arnaud Charlet committed -
restrict.ads, [...] (Check_Implicit_Dynamic_Code_Allowed): New procedure to be called from the back end to check the... 2007-12-06 Bob Duff <duff@adacore.com> * restrict.ads, restrict.adb (Check_Implicit_Dynamic_Code_Allowed): New procedure to be called from the back end to check the No_Implicit_Dynamic_Code restriction. From-SVN: r130847
Bob Duff committed -
2007-12-06 Emmanuel Briot <briot@adacore.com> Vincent Celier <celier@adacore.com> * prj.ads, prj.adb (Is_A_Language): Now takes a Name_Id instead of a string (Must_Check_Configuration, Default_Language_Is_Ada): new flags in prj.ads (Hash): Move instantiation of System.HTable.Hash from spec to body (prj-nmsc.adb): Optimize calls to Name_Find when on case sensitive systems, since we do not need to recompute the Name_Id for the canonical file name. (Body_Suffix_Id_Of, Spec_Suffix_Id_Of): new version that takes a name_id as a parameter. This parameter is in fact always "ada" in all calls, and we were doing 160560 extra calls to Name_Find to convert it to Name_Ada while loading a project with 40000 files * prj-attr.adb: Fix name of attribute Dependency_Driver Change the kind of indexing for attribute Root * prj-dect.adb (Parse_Declarative_Items): Allow redeclarations of variables already declared, in case constructions. * prj-env.adb (Initialize): Reset Current_Source_Path_File and Current_Object_Path_File to No_Path. * prj-ext.adb (Initialize_Project_Path): In multi language mode, use ADA_PROJECT_PATH if value of GPR_PROJECT_PATH is empty. * prj-makr.adb: new parameter Current_Dir * prj-nmsc.ads, prj-nmsc.adb (Find_Explicit_Sources): Do not look for Ada sources when language is not Ada. Change Opt.Follow_Links to Opt.Follow_Links_For_Files. (Find_Excluded_Sources, Find_Explicit_Sources): new subprograms (Must_Check_Configuration, Default_Language_Is_Ada): new flags. (Locate_Directory): Always resolve links when computing Canonical_Path (Look_For_Sources): Make sure that Name_Buffer contains the file name in Source_Files before checking for the presence of a directory separator. Optimize calls to Name_Find when on case sensitive systems. (Body_Suffix_Id_Of, Spec_Suffix_Id_Of): new version that takes a name_id as a parameter. (Prj.Nmsc.Check): new parameter Current_Dir (Check_Ada_Naming_Schemes): Restrictions on suffixes are relaxed. They cannot be empty and the spec suffix cannot be the same as the body or separate suffix. (Get_Unit): When a file name can be of several unit kinds (spec, body or subunit), always consider the longest suffix. (Check_Configuration): Do not issue an error if there is no compiler for a language. Just issue a warning and ignore the sources for the language. (Check_Library_Attributes): Only check Library_Dir if Library_Name is not empty. (Check_Naming_Schemes.Maked_Unit): Only output message if high verbosity (Unit_Exceptions): New hash table (Check_Naming_Schemes): Check if a file that could be a unit because of the naming scheme is not in fact a source because there is an exception for the unit. (Look_For_Sources): Put the unit exceptions in hash table Unit_Exceptions (Get_Unit_Exceptions): Give initial value No_Source to local variable Other_Part to avoid exception when code is compiled with validity checking. (Get_Sources_From_File): Check that there is no directory information in the file names. (Look_For_Sources): Check that there is no directory information in the list of file names in Source_Files. (Look_For_Sources): In multi-language mode, do not allow exception file names that are excluded. (Excluded_Sources_Htable): New hash table (Search_Directories.Check_File): New procedure to simplify Search_Directories. (Search_Directories): Do not consider excluded sources (Look_For_Sources): Populate Excluded_Sources_Htable before calling Search_Directories. (Get_Exceptions): Set component Lang_Kind of Source_Data (Get_Unit_Exceptions): Ditto (Search_Directories): Ditto * prj-pars.adb: new parameter Current_Dir * prj-part.ads, prj-part.adb: Change Opt.Follow_Links to Opt.Follow_Links_For_Files. (Opt.Follow_Links_For_Dirs): New flag (Project_Path_Name_Of): Cache information returned by this routine as Locate_Regular_File is a costly routine. The code to output a log information and the effective call to Locate_Regular_File is now factorized into a routine (code clean-up). (Parse, Parse_Single_Project): new parameter Current_Dir When main project file cannot be found, indicate in the error message the project path that was used to do the search. * prj-proc.ads, prj-proc.adb (Opt.Follow_Links_For_Dirs): New flag (Prj.Proc.Process*): new parameter Current_Dir * switch-m.adb: Change Opt.Follow_Links to Opt.Follow_Links_For_Files From-SVN: r130846
Emmanuel Briot committed -
inline.adb (Back_End_Cannot_Inline): Use new flag Has_Pragma_Inline_Always instead of obsolete function Is_Always_Inlined 2007-12-06 Robert Dewar <dewar@adacore.com> * inline.adb (Back_End_Cannot_Inline): Use new flag Has_Pragma_Inline_Always instead of obsolete function Is_Always_Inlined * sem_ch6.ads, sem_ch6.adb (Analyze_Subprogram_Body): Use new flag Has_Pragma_Inline_Always instead. of obsolete function Is_Always_Inlined (Build_Body_To_Inline): Same change (Cannot_Inline): Same change Do not give warning on exception raise in No_Return function * sem_ch13.adb (Analyze_Record_Representation_Clause): If an inherited component has two inconsistent component clauses in the same record representation clause, favor the message that complains about duplication rather than inconsistency. Update comments. (Record_Representation_Clause): Do not warn on missing component clauses for inherited components of a type extension. (Rep_Item_Too_Late): Do not attempt to link pragma into rep chain for an overloadable item if it is a pragma that can apply to multiple overloadable entities (e.g. Inline) because a pragma cannot be on more than one chain at a time. (Validate_Unchecked_Conversion): Add code to warn on unchecked conversion where one of the operands is Ada.Calendar.Time. (Analyze_Attribute_Definition_Clause): Fix typo in error message. For now, ignore Component_Size clause on VM targets, as done for pragma Pack. From-SVN: r130845
Robert Dewar committed -
2007-12-06 Robert Dewar <dewar@adacore.com> * g-spipat.adb (Break): Fix accessibility error (vsn taking not null access Vstring) From-SVN: r130844
Robert Dewar committed -
2007-12-06 Robert Dewar <dewar@adacore.com> * g-spchge.ads, g-spchge.adb, g-u3spch.adb, g-u3spch.ads, g-wispch.adb, g-wispch.ads, g-zspche.adb, g-zspche.ads, namet-sp.adb, namet-sp.ads: New files. * g-speche.adb: Use generic routine in g-spchge * s-wchcnv.ads, s-wchcnv.adb: Minor code cleanup (make formal type consistent with spec) * namet.adb: Update comments. * par-endh.adb (Evaluate_End_Entry): Use new Namet.Sp.Is_Bad_Spelling_Of function * par-load.adb (Load): Use new Namet.Sp.Is_Bad_Spelling_Of function * sem_aggr.adb (Resolve_Record_Aggregate): If a component of an ancestor is an access type initialized with a box, set its type explicitly, for use in subsequent expansion. (Check_Misspelled_Component): Use new Namet.Sp.Is_Bad_Spelling_Of function From-SVN: r130843
Robert Dewar committed -
2007-12-06 Vasiliy Fofanov <fofanov@adacore.com> * g-regist.ads, g-regist.adb (Set_Value): new parameter Expand; when set to True this procedure will create the value of type REG_EXPAND_SZ. It was only possible to create REG_SZ values before. From-SVN: r130842
Vasiliy Fofanov committed -
gnatcmd.adb (GNATCmd): Do not issue -d= switch to gnatmetric when object directory of main project... 2007-12-06 Vincent Celier <celier@adacore.com> * gnatcmd.adb (GNATCmd): Do not issue -d= switch to gnatmetric when object directory of main project does not exist. On VMS, correctly set then environment variable for the source directories. From-SVN: r130841
Vincent Celier committed -
2007-12-06 Robert Dewar <dewar@adacore.com> Ed Schonberg <schonberg@adacore.com> * gnat1drv.adb (Gnat1drv): Properly set new flag Opt.Real_VMS_Target * layout.adb (Resolve_Attribute, case 'Access): If designated type of context is a limited view, use non-limited view when available. If the non-limited view is an unconstrained array, this enforces consistency requirements in 3.10.2 (27). (Layout_Type): For an access type whose designated type is a limited view, examine its declaration to determine if it is an unconstrained array, and size the access type accordingly. (Layout_Type): Do not force 32-bits for convention c subprogram pointers in -gnatdm mode, only if real vms target. * sem_attr.adb (Analyze_Access_Attribute): Use new flag Has_Pragma_Inline_Always instead of obsolete function Is_Always_Inlined (Analyze_Access_Attribute,Attribute_Address): Remove checks for violations of the No_Implicit_Dynamic_Code restriction. (Resolve_Attribute, case 'Access): If designated type of context is a limited view, use non-limited view when available. If the non-limited view is an unconstrained array, this enforces consistency requirements in 3.10.2 (27). (Layout_Type): For an access type whose designated type is a limited view, examine its declaration to determine if it is an unconstrained array, and size the access type accordingly. From-SVN: r130840
Robert Dewar committed -
2007-12-06 Emmanuel Briot <briot@adacore.com> * g-calend.ads (No_Time): New constant, to represent an uninitialized time value * g-catiio.ads, g-catiio.adb (Value): Added support for more date formats. (Month_Name_To_Number): New subprogram * g-dirope.adb (Get_Current_Dir): On windows, normalize the drive letter to upper-case. From-SVN: r130839
Emmanuel Briot committed -
2007-12-06 Robert Dewar <dewar@adacore.com> Ed Schonberg <schonberg@adacore.com> * exp_prag.adb (Expand_Pragma_Assert): Recognize new warning flag for assert fail * ug_words: Add entries for -gnatw.a -gnatw.A * sem_res.adb (Set_String_Literal_Subtype): If the context of the literal is a subtype with non-static constraints, use the base type of the context as the base of the string subtype, to prevent type mismatches in gigi. (Resolve_Actuals): If the actual is an entity name, generate a reference before the actual is resolved and expanded, to prevent spurious warnings on formals of enclosing protected operations. (Analyze_Overloaded_Selected_Component): If type of prefix if class-wide, use visible components of base type. (Resolve_Selected_Component): Ditto. (Resolve_Short_Circuit): Detect case of pragma Assert argument evaluating to False, and issue warning message. * usage.adb: Add lines for -gnatw.a and -gnatw.A From-SVN: r130838
Robert Dewar committed -
exp_intr.adb (Expand_Dispatching_Constructor_Call): Add missing support for generic dispatching constructor calls in which we need... 2007-12-06 Javier Miranda <miranda@adacore.com> * exp_intr.adb (Expand_Dispatching_Constructor_Call): Add missing support for generic dispatching constructor calls in which we need to locate the tag of a secondary dispatch table associated with an interface type to properly dispatch the call. (Expand_N_Attribute_Reference [case Address], Expand_Dispatching_Constructor_Call, Expand_Unc_Deallocation): Fix handling of VM targets. From-SVN: r130837
Javier Miranda committed -
2007-12-06 Pascal Obry <obry@adacore.com> * expect.c (__gnat_kill) [WIN32]: Implement the SIGINT signal on Windows. This signal is used by gnatmake to kill child processes for example. From-SVN: r130836
Pascal Obry committed -
exp_disp.ads, [...] (Default_Prim_Op_Position): Primitive _Disp_Requeue occupies dispatch table slot number 15. 2007-12-06 Hristian Kirtchev <kirtchev@adacore.com> Javier Miranda <miranda@adacore.com> * exp_disp.ads, exp_disp.adb (Default_Prim_Op_Position): Primitive _Disp_Requeue occupies dispatch table slot number 15. Move _Disp_Timed_Select to slot 16. (Make_Disp_Requeue_Body, Make_Disp_Requeue_Spec): New routines which generate the spec and body of _Disp_Reqeueue. (Make_DT): Build and initialize the second dispatch table. Handle initialization of RC_Offset when the parent is a private type with variable size components. (Make_Secondary_DT): Complete documentation. Add support to initialize the second dispatch table. (Make_Tags): Generate the tag of the second dispatch table. (Register_Primitive): Add support to register primitives in the second dispatch table. From-SVN: r130835
Hristian Kirtchev committed -
2007-12-06 Hristian Kirtchev <kirtchev@adacore.com> Ed Schonberg <schonberg@adacore.com> * exp_ch9.adb (Expand_N_Asynchronous_Select, Expand_N_Conditional_Entry_Call, Expand_N_Timed_Entry_Call): Code and comment reformatting. (Set_Privals): Inherit aliased flag from formal. From code reading. (Build_Simple_Entry_Call): Out parameters of an access type are passed by copy and initialized from the actual. This includes entry parameters. (Expand_N_Requeue_Statement): Reimplement in order to handle both Ada 95 and Ada 2005 models of requeue. (Null_Statements): Still connsider do-end block null if it contains Unreferenced and Warnings pragmas. (Expand_N_Accept_Statement): Do not optimize away null do end if dispatching policy is other than defaulted. (Expand_N_Timed_Entry_Call): When the triggering statement is a dispatching call, manually analyze the delay statement. (Find_Parameter_Type): Move subprogram to Sem_Util. From-SVN: r130834
Hristian Kirtchev committed -
exp_ch8.ads, [...] (Expand_N_Subprogram_Renaming_Declaration): In the case where the renamed subprogram is a dereference... 2007-12-06 Gary Dismukes <dismukes@adacore.com> * exp_ch8.ads, exp_ch8.adb (Expand_N_Subprogram_Renaming_Declaration): In the case where the renamed subprogram is a dereference, call Force_Evaluation on the prefix. From-SVN: r130833
Gary Dismukes committed -
exp_ch7.adb (Expand_N_Package_Body): Replace occurrence of attribute Is_Complation_Unit by Is_Library_Level_Entity... 2007-12-06 Javier Miranda <miranda@adacore.com> Ed Schonberg <schonberg@adacore.com> * exp_ch7.adb (Expand_N_Package_Body): Replace occurrence of attribute Is_Complation_Unit by Is_Library_Level_Entity in the code that decides if the static dispatch tables need to be built. (Wrap_Transient_Declaration): Do not generate a finalization call if this is a renaming declaration and the renamed object is a component of a controlled type. From-SVN: r130832
Javier Miranda committed -
* exp_ch4.adb (Expand_N_Attribute_Reference, Displace_Allocator_Pointer, Expand_Allocator_Expression): Take into account VM_Target * exp_ch5.adb (Expand_N_Extended_Return_Statement): Do not use secondary stack when VM_Target /= No_VM From-SVN: r130831
Arnaud Charlet committed
-