- 08 Apr, 2008 40 commits
-
-
binde.adb (Gather_All_Links, [...]): units that are mentioned in limited_with_clauses to do create semantic... 2008-04-08 Ed Schonberg <schonberg@adacore.com> * binde.adb (Gather_All_Links, Gather_Dependencies): units that are mentioned in limited_with_clauses to do create semantic dependencies even though they appear in the ali file. From-SVN: r134064
Ed Schonberg committed -
2008-04-08 Robert Dewar <dewar@adacore.com> Bob Duff <duff@adacore.com> * impunit.adb: Add Interfaces.Java.JNI, System.Strings.Stream_Ops, Ada.Calendar.Conversions, Ada.Dispatching.EDF, GNAT.Time_Stamp * s-intman-mingw.adb: Minor comment fix -- spell 'explicitly' correctly * g-trasym.adb: Minor comment fix -- spell 'explicitly' correctly * g-trasym.ads: Minor comment improvements * s-stalib.adb: Minor comment fix -- spell 'explicitly' correctly * a-sequio.ads, a-direio.ads: improve message for tagged type * a-strunb.ads: Minor reformatting * a-tifiio.adb: Minor reformatting * atree.adb (Fix_Parents): Use clearer names for formals Cleanup and simplify code Use named notation in calls * exp_fixd.adb (Do_Multiply_Fixed_Universal): Use named notation in confusing calls * uintp.adb: Used named notation for some confusing calls * bindusg.adb: Minor change in one line of output * cstand.adb: Minor reformatting of src representation of Standard * a-assert.ads: Add comment. * g-decstr.adb: Fix bad indentation * expander.ads, expander.adb: Code clean up. * sem_dist.ads, sem_type.adb, g-dirope.ads, g-exctra.ads, s-valwch.adb, s-wchstw.adb, targparm.ads, widechar.adb: Minor reformatting * i-cstrin.adb: Fix casing error in formal parameter name in call From-SVN: r134063
Robert Dewar committed -
2008-04-08 Eric Botcazou <ebotcazou@adacore.com> * ctrl_c.c: Improve handling of ctrl-c on LynxOS and Windows. Minor reformatting. From-SVN: r134062
Eric Botcazou committed -
2008-04-08 Thomas Quinot <quinot@adacore.com> * gen-soccon.c: Bump year in copyright notices. * g-soccon-vxworks.ads: Add new constant IP_PKTINFO From-SVN: r134061
Thomas Quinot committed -
2008-04-08 Vincent Celier <celier@adacore.com> Robert Dewar <dewar@adacore.com> * vms_conv.adb (Output_Version): Print "GNAAMP" instead of "GNAT when AAMP_On_Target is set. * vms_data.ads: Add NOxxx to style check switch list Add entry COMPONENTS for -gnatVe Add VMS qualifiers for -eL (/FOLLOW_LINKS_FOR_FILES) and --subdirs= (/SUBDIRS=). (GCC_Switches): Add /ALL_BACK_END_WARNINGS. Add qualifiers for gnatmetric coupling options Add note that -gnata enables all checks Add entries [NO]PARAMETER_ORDER for -gnatw.p[P] Fix inconsistency for VMS qualifier for the gnatpp '-rnb' option New warning flag -gnatw.e * usage.adb: Add entries for -gnaty+ -gnaty- -gnatyy Add entry for -gnatyN (forgotten before) Line for new warning switch -gnatw.p New warning flag -gnatw.e * gnat_ugn.texi: Add documentation fpr project file switch -aP Document -gnaty - + y Replace occurences of "package specification" with "package spec" Define preprocessing symbols in documentation of gnatprep Clarify reason for distinguishing overflow checking Add documentation for project-aware tool switches -eL and --subdirs= Complete list of configuration pragmas Specify that, even when gnatmake switch -x is used, mains on the command line need to be sources of project files. Editing of gnatcheck/gnatmetric doc. Add documentation for -gnatw.p/-gnatw.P Add missing documentation for -fno-inline-functions. Add documentation for -gnatw.e * gnat_rm.texi: Add documentation for No_Default_Initialization Replace occurences of "package specification" with "package spec" Document use of * in Warnings Off string Update documentation of alignment/component clauses. Add documentation for Invalid_Value Document new consistency rule for Optimize_Alignment Add documentation for Precondition and Postcondition pragmas Add documentation for Check and Check_Policy pragmas Document new Enum_Val attribute Remove requirement for static string in pragma Assert Add documentation on GNAT.Time_Stamp * ug_words: add entry for -gnatVe Add entries for -gnat.p[P] /WARNINGS=[NO]PARAMETER_ORDER Add entry for -gnatw.e * debug.adb: Add missing documentation for d.a flag Document new -gnatd.a switch. Add documentation for new gnatmake debug switch -df From-SVN: r134060
Vincent Celier committed -
a-direct.adb (Start_Search): Check for Name_Error before checking for Use_Error, as specified in the RM. 2008-04-08 Vincent Celier <celier@adacore.com> * a-direct.adb (Start_Search): Check for Name_Error before checking for Use_Error, as specified in the RM. Check if directory is open and raise Use_Error if it is not. From-SVN: r134059
Vincent Celier committed -
2008-04-08 Tristan Gingold <gingold@adacore.com> * vxaddr2line.adb: Use Unsigned_32 instead of Integer for address type. Improve error message generation. From-SVN: r134058
Tristan Gingold committed -
2008-04-08 Bob Duff <duff@adacore.com> * types.h: Change CE_Null_Exception_Id to the correct value (8, was 9). From-SVN: r134057
Bob Duff committed -
2008-04-08 Sergey Rybin <rybin@adacore.com> * tree_io.ads: Increase ASIS_Version_Number because of adding Sem_Aux to the set of the GNAT components needed by ASIS. From-SVN: r134056
Sergey Rybin committed -
2008-04-08 Robert Dewar <dewar@adacore.com> * stylesw.adb: Implement -gnaty + - y options (Set_GNAT_Style_Check_Options): Includ I in style check string * stylesw.ads: Add comments for new style switch options From-SVN: r134055
Robert Dewar committed -
2008-04-08 Robert Dewar <dewar@adacore.com> * styleg.adb (Check_Comment): Allow special char after -- in non-end-of-line case From-SVN: r134054
Robert Dewar committed -
2008-04-08 Robert Dewar <dewar@adacore.com> * stringt.adb (Write_String_Table_Entry): Handle wide characters properly From-SVN: r134053
Robert Dewar committed -
2008-04-08 Hristian Kirtchev <kirtchev@adacore.com> * s-strxdr.adb, s-stratt.ads, s-stratt.adb (Block_IO_OK): New subprogram. Add new subtype S_WWC, unchecked conversion routines From_WWC and To_WWC. (I_WWC, O_WWC): New routines for input and output of Wide_Wide_Character. From-SVN: r134052
Hristian Kirtchev committed -
s-stoele.ads, [...]: Move the location of Dummy_Communication_Block from System.Storage_Elements to... 2008-04-08 Hristian Kirtchev <kirtchev@adacore.com> * s-stoele.ads, s-soflin.ads: Move the location of Dummy_Communication_Block from System.Storage_Elements to System.Soft_Links. * s-tpobop.ads: Add comment on usage of Dummy_Communication_Block to emulate Communication_Block in certain scenarios. From-SVN: r134051
Hristian Kirtchev committed -
2008-04-08 Robert Dewar <dewar@adacore.com> * s-imgdec.adb (Set_Decimal_Digits): Fix error when input is zero with negative scale (Set_Decimal_Digits): Properly handle Aft=0 (equivalent to Aft=1) Properly handle case where Aft > Scale and input number is less than one. From-SVN: r134050
Robert Dewar committed -
sem_aggr.adb (Analyze_N_Extension_Aggregate): Add legality checks for the ancestor part of an extension aggregate for a... 2008-04-08 Ed Schonberg <schonberg@adacore.com> Robert Dewar <dewar@adacore.com> * sem_aggr.adb (Analyze_N_Extension_Aggregate): Add legality checks for the ancestor part of an extension aggregate for a limited type. (Resolve_Array_Aggregate): Issue warning for sliding of aggregate with enumeration index bounds. (Resolve_Array_Aggregate): Add circuit for diagnosing missing choices when array is too short. (Check_Expr_OK_In_Limited_Aggregate): Move function Check_Non_Limited_Type from Resolve_Record_Aggregate to top level (and change name). (Resolve_Array_Aggregate.Resolve_Aggr_Expr): Check_Expr_OK_In_Limited_Aggregates called to check for illegal limited component associations. (Check_Non_Limited_Type): Moved to outer level and renamed. (Resolve_Record_Aggregate): In an extension aggregate, an association with a box initialization can only designate a component of the extension, not a component inherited from the given ancestor * sem_case.adb: Use new Is_Standard_Character_Type predicate From-SVN: r134049
Ed Schonberg committed -
sem.adb (Analyze): Consider case in which we analyze an empty node that was generated by a call to... 2008-04-08 Javier Miranda <miranda@adacore.com> * sem.adb (Analyze): Consider case in which we analyze an empty node that was generated by a call to a runtime function that is not available under the configurable runtime. * sem.ads (Inside_Freezing_Actions): New flag. (Save_Check_Policy_List): New field in scope stack entry From-SVN: r134048
Javier Miranda committed -
scng.adb (Scan_Identifier): Handle case of identifier starting with wide character using UTF-8 encoding. 2008-04-08 Robert Dewar <dewar@adacore.com> * scng.adb (Scan_Identifier): Handle case of identifier starting with wide character using UTF-8 encoding. From-SVN: r134047
Robert Dewar committed -
2008-04-08 Vincent Celier <celier@adacore.com> * prj-util.adb (Executable_Of): New String parameter Language. When Ada_Main is False and Language is not empty, attempt to remove the body suffix or the spec suffix of the language to get the base of the executable file name. (Put): New Boolean parameter Lower_Case, defauilted to False. When Lower_Case is True, put the value in lower case in the name list. (Executable_Of): If there is no executable suffix in the configuration, then do not modify Executable_Extension_On_Target. * prj-util.ads (Executable_Of): New String parameter Language, defaulted to the empty string. (Put): New Boolean parameter Lower_Case, defauilted to False From-SVN: r134046
Vincent Celier committed -
* par-ch3.adb (P_Type_Declaration) Reject the keyword "synchronized" in a type declaration, if this is not an interface declaration or private type extension. From-SVN: r134045
Ed Schonberg committed -
2008-04-08 Robert Dewar <dewar@adacore.com> * par-ch11.adb (P_Exception_Handler): Check indentation level for handler From-SVN: r134044
Robert Dewar committed -
2008-04-08 Jose Ruiz <ruiz@adacore.com> * osint.ads, osint.adb (Get_Libraries_From_Registry): Improve documentation. Update comments. (Read_Default_Search_Dirs): Do not consider spaces as path separators because spaces may be part of legal paths. From-SVN: r134043
Jose Ruiz committed -
2008-04-08 Thomas Quinot <quinot@adacore.com> * nlists.adb (Is_Non_Empty_List): Remove redundant test. First (No_List) is defined to return Empty. From-SVN: r134042
Thomas Quinot committed -
2008-04-08 Vincent Celier <celier@adacore.com> * mlib-prj.adb (Build_Library): Compare with ALI file name in canonical case to decide if ALI object file is included in library. (Build_Library): Never attempt to build a library if the project is externally built. From-SVN: r134041
Vincent Celier committed -
* Make-lang.in: Disable warnings during first stage of bootstrap Get rid of gnatbl. Update dependencies. From-SVN: r134040
Arnaud Charlet committed -
2008-04-08 Vincent Celier <celier@adacore.com> Thomas Quinot <quinot@adacore.com> * make.adb: (Gnatmake_Called): Remove, no longer necessary (Compile_Surces): Call Delete_Temp_Config_Files only if Gnatmake_Called is True and Debug_Flag_N is False. Debug_Flag_N means "keep temp files". (Insert_Project_Sources): Take into account index in multi-unit source files. After building a library project, delete all temporary files. (Initialize): Reset current output after parsing project file. (Collect_Arguments_And_Compile): Never insert in the queue the sources of library projects that are externally built. Put file name in error and inform messages if -df is used (Display): If invoked with -d7, do not display path names, but only file names. * makeutl.ads (Path_Or_File_Name): New function (Path_Or_File_Name): New function From-SVN: r134039
Vincent Celier committed -
2008-04-08 Ed Schonberg <schonberg@adacore.com> Robert Dewar <dewar@adacore.com> Gary Dismukes <dismukes@adacore.com> * lib-xref.adb (Is_On_LHS): Remove dead code (Output_Overriden_Op): If the overridden operation is itself inherited, list the ancestor operation, which is the one whose body or absstract specification is actually being overridden. * sem_ch7.adb (Is_Primitive_Of): use base type to determine whether operation is primitive for the type. (Declare_Inherited_Private_Subprograms): If the new operation overrides an inherited private subprogram, set properly the Overridden_Operation attribute, for better cross-reference information. (Analyze_Package_Specification): Do late analysis of spec PPCs (Install_Private_Declaration, Uninstall_Declarations): Save/restore properly the full view and underlying full views of a private type in a child unit, whose full view is derived from a private type in a parent unit, and whose own full view becomes visible in the child body. * sem_disp.adb (Check_Dispatching_Operation): When a body declares a primitive operation after the type has been frozen, add an explicit reference to the type and the operation, because other primitive references have been emitted already. (Expand_Call, Propagate_Tag): Call Kill_Current_Values when processing a dispatching call on VM targets. From-SVN: r134038
Ed Schonberg committed -
sprint.adb (Write_Itype): Handle Itypes whose Parent field points to the declaration for some different... 2008-04-08 Robert Dewar <dewar@adacore.com> * sprint.adb (Write_Itype): Handle Itypes whose Parent field points to the declaration for some different entity. (Sprint_Node_Actual, case N_Derived_Type_Definition): When an interface list is precent (following the parent subtype indication), display appropriate "and" keyword. * itypes.adb: Remove unnecessary calls to Init_Size_Align and Init_Esize Remove unnecessary calls to Init_Size_Align and Init_Esize. Add notes on use of Parent field of an Itype From-SVN: r134037
Robert Dewar committed -
2008-04-08 Thomas Quinot <quinot@adacore.com> * g-socket.ads, g-socket.adb: Improve documentation of GNAT.Sockets: add a pointer to generic sockets literature do not mention that the given example is "typical" usage. Remove obsolete comment about multicast not being supported on Windows. (Connect_Socket): Make Server mode IN rather than IN OUT since this formal is never modified. From-SVN: r134036
Thomas Quinot committed -
2008-04-08 Robert Dewar <dewar@adacore.com> * gnatbind.adb (Restriction_Could_Be_Set): New procedure (List_Applicable_Restrictions): Do not list existing restrictions From-SVN: r134035
Robert Dewar committed -
2008-04-08 Vincent Celier <celier@adacore.com> * gnat1drv.adb: Send all messages indicating an error to standard error From-SVN: r134034
Vincent Celier committed -
2008-04-08 Robert Dewar <dewar@adacore.com> Ed Schonberg <schonberg@adacore.com> * freeze.adb (Freeze_Entity): Improve warnings on access types in pure units. (Size_Known): Generic formal scalar types have known at compile time size, so remove check. Fix casing error in formal parameter name in call (Freeze_Subprogram): If the subprogram is a user-defined operator, recheck its overriding indication. From-SVN: r134033
Robert Dewar committed -
exp_strm.adb (Build_Record_Or_Elementary_Input_Function): If this is an Input function for an access type... 2008-04-08 Ed Schonberg <schonberg@adacore.com> * exp_strm.adb (Build_Record_Or_Elementary_Input_Function): If this is an Input function for an access type, do not perform default initialization on the local variable that receives the value, to prevent spurious warnings when the type is null-excluding. From-SVN: r134032
Ed Schonberg committed -
2008-04-08 Thomas Quinot <quinot@adacore.com> * exp_dist.ads, exp_dist.adb: Fix casing error in formal parameter name in call (Add_RACW_Features): When processing an RACW in another unit than the main unit, set Body_Decls to No_List to indicate that the bodies of the type's TSS must not be generated. (GARLIC_Support.Add_RACW_Read_Attribute, GARLIC_Support.Add_RACW_Write_Attribute): Do not generate bodies if Body_Decls is No_List. (PolyORB_Support.Add_RACW_Read_Attribute, PolyORB_Support.Add_RACW_Write_Attribute, PolyORB_Support.Add_RACW_From_Any, PolyORB_Support.Add_RACW_To_Any, PolyORB_Support.Add_RACW_TypeCode): Same. (Transmit_As_Unconstrained): New function. (Build_Ordered_Parameters_List): Use the above to order parameters. (GARLIC_Support.Build_General_Calling_Stubs): Use the above to determine which parameters to unmarshall using 'Input at the point where their temporary is declared (as opposed to later on with a 'Read call). (PolyORB_Support.Build_General_Calling_Stubs): Use the above to determine which parameters to unmarshall using From_Any at the point where their temporary is declared (as opposed to later on with an assignment). From-SVN: r134031
Thomas Quinot committed -
exp_ch9.ads, [...] (Build_Protected_Entry, [...]): Generate debug info for declarations related to the handling of private data in... 2008-04-08 Hristian Kirtchev <kirtchev@adacore.com> Ed Schonberg <schonberg@adacore.com> Robert Dewar <dewar@adacore.com> Gary Dismukes <dismukes@adacore.com> * exp_ch9.ads, exp_ch9.adb (Build_Protected_Entry, Build_Unprotected_Subprogram_Body): Generate debug info for declarations related to the handling of private data in task and protected types. (Debug_Private_Data_Declarations): New subprogram. (Install_Private_Data_Declarations): Remove all debug info flagging. This is now done by Debug_Private_Data_Declarations at the correct stage of expansion. (Build_Simple_Entry_Call): If the task name is a function call, expand the prefix into an object declaration, and make the surrounding block a task master. (Build_Master_Entity): An internal block is a master if it wraps a call. Code reformatting, update comments. Code clean up. (Make_Task_Create_Call): Use 'Unrestricted_Access instead of 'Address. (Replicate_Entry_Formals): If the formal is an access parameter or anonymous access to subprogram, copy the original tree to create new entities for the formals of the subprogram. (Expand_N_Task_Type_Declaration): Create a Relative_Deadline variable for tasks to store the value passed using pragma Relative_Deadline. (Make_Task_Create_Call): Add the Relative_Deadline argument to the run-time call to create a task. (Build_Wrapper_Spec): If the controlling argument of the interface operation is an access parameter with a non-null indicator, use the non-null indicator on the wrapper. * sem_ch9.adb (Analyze_Protected_Type): Only retrieve the full view when present, which it may not be in the case where the type entity is an incomplete view brought in by a limited with. (Analyze_Task_Type): Only retrieve the full view when present, which it may not be in the case where the type entity is an incomplete view brought in by a limited with. (Analyze_Protected_Definition): Set Is_Frozen on all itypes generated for private components of a protected type, to prevent the generation of freeze nodes for which there is no proper scope of elaboration. * exp_util.ads, exp_util.adb (Remove_Side_Effects): If the expression is a function call that returns a task, expand into a declaration to invoke the build_in_place machinery. (Find_Protection_Object): New routine. (Remove_Side_Effects): Also make a copy of the value for attributes whose result is of an elementary type. (Silly_Boolean_Array_Not_Test): New procedure (Silly_Boolean_Array_Xor_Test): New procedure (Is_Volatile_Reference): New function (Remove_Side_Effects): Use Is_Volatile_Reference (Possible_Bit_Aligned_Component): Handle slice case properly * exp_pakd.adb (Expand_Packed_Not): Move silly true/true or false/false case test to Exp_Util (Expand_Packed_Xor): Move silly true/true case test to Exp_Util From-SVN: r134030
Hristian Kirtchev committed -
exp_ch7.adb (Find_Final_List): Change the test for generating a selected component from an access type's... 2008-04-08 Gary Dismukes <dismukes@adacore.com> Thomas Quinot <quinot@adacore.com> * exp_ch7.adb (Find_Final_List): Change the test for generating a selected component from an access type's Associated_Final_Chain to check for the presence of that field, rather than assuming it exists for all named access types. (Make_Clean): New formal Chained_Cleanup_Action allowing to specify a procedure to call at the end of the generated cleanup procedure. (Expand_Cleanup_Actions): When a new cleanup procedure is generated, and and an At_End_Proc already exists in the handled sequence of statements for which cleanup actions are being expanded, the original cleanup action must be preserved. From-SVN: r134029
Gary Dismukes committed -
2008-04-08 Robert Dewar <dewar@adacore.com> Gary Dismukes <dismukes@adacore.com> * s-rident.ads: Add No_Default_Initialization restriction * exp_tss.adb: (Has_Non_Null_Base_Init_Proc): Handle No_Default_Initialization case (Set_TSS): Handle No_Default_Initialization case * exp_ch6.adb (Expand_N_Subprogram_Body): Handle restriction No_Default_Initialization (Expand_N_Subprogram_Body): Remove redundant initialization of out parameters when Normalize_Scalars is active. (Add_Final_List_Actual_To_Build_In_Place_Call): Add formal Sel_Comp Fix casing error in formal parameter name in call (Register_Predefined_DT_Entry): Replace occurrences of RE_Address by (Expand_Call, Propagate_Tag): Call Kill_Current_Values when processing a dispatching call on VM targets. From-SVN: r134028
Robert Dewar committed -
2008-04-08 Hristian Kirtchev <kirtchev@adacore.com> Ed Schonberg <schonberg@adacore.com> Robert Dewar <dewar@adacore.com> * exp_ch2.adb: Minor reformatting. (Expand_Entry_Index_Parameter): Set the type of the identifier. (Expand_Entry_Reference): Add call to Expand_Protected_Component. (Expand_Protected_Component): New routine. (Expand_Protected_Private): Removed. Add Sure parameter to Note_Possible_Modification calls * sem_ch12.ads, sem_ch12.adb (Analyze_Subprogram_Instantiation): The generated subprogram declaration must inherit the overriding indicator from the instantiation node. (Validate_Access_Type_Instance): If the designated type of the actual is a limited view, use the available view in all cases, not only if the type is an incomplete type. (Instantiate_Object): Actual is illegal if the formal is null-excluding and the actual subtype does not exclude null. (Process_Default): Handle properly abstract formal subprograms. (Check_Formal_Package_Instance): Handle properly defaulted formal subprograms in a partially parameterized formal package. Add Sure parameter to Note_Possible_Modification calls (Validate_Derived_Type_Instance): if the formal is non-limited, the actual cannot be limited. (Collect_Previous_Instances): Generate instance bodies for subprograms as well. * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Small): Don't try to set RM_Size. Add Sure parameter to Note_Possible_Modification calls (Analyze_At_Clause): Preserve Comes_From_Source on Rewrite call (Analyze_Attribute_Definition_Clause, case Attribute_Address): Check for constant overlaid by variable and issue warning. Use new Is_Standard_Character_Type predicate (Analyze_Record_Representation_Clause): Check that the specified Last_Bit is not less than First_Bit - 1. (Analyze_Attribute_Definition_Clause, case Address): Check for self-referential address clause * sem_ch5.ads, sem_ch5.adb (Diagnose_Non_Variable_Lhs): Rewrite the detection mechanism when the lhs is a prival. (Analyze_Assignment): Call Check_Unprotected_Access to detect assignment of a pointer to protected data, to an object declared outside of the protected object. (Analyze_Loop_Statement): Check for unreachable code after loop Add Sure parameter to Note_Possible_Modication calls Protect analysis from previous syntax error such as a scope mismatch or a missing begin. (Analyze_Assignment_Statement): The assignment is illegal if the left-hand is an interface. * sem_res.adb (Resolve_Arithmetic_Op): For mod/rem check violation of restriction No_Implicit_Conditionals Add Sure parameter to Note_Possible_Modication calls Use new Is_Standard_Character_Type predicate (Make_Call_Into_Operator): Preserve Comes_From_Source when rewriting call as operator. Fixes problems (e.g. validity checking) which come from the result looking as though it does not come from source). (Resolve_Call): Check case of name in named parameter if style checks are enabled. (Resolve_Call): Exclude calls to Current_Task as entry formal defaults from the checking that such calls should not occur from an entry body. (Resolve_Call): If the return type of an Inline_Always function requires the secondary stack, create a transient scope for the call if the body of the function is not available for inlining. (Resolve_Actuals): Apply Ada2005 checks to view conversions of arrays that are actuals for in-out formals. (Try_Object_Operation): If prefix is a tagged protected object,retrieve primitive operations from base type. (Analyze_Selected_Component): If the context is a call to a protected operation the parent may be an indexed component prior to expansion. (Resolve_Actuals): If an actual is of a protected subtype, use its base type to determine whether a conversion to the corresponding record is needed. (Resolve_Short_Circuit): Handle pragma Check * sem_eval.adb: Minor code reorganization (usea Is_Constant_Object) Use new Is_Standard_Character_Type predicate (Eval_Relational_Op): Catch more cases of string comparison From-SVN: r134027
Hristian Kirtchev committed -
sem_cat.adb (Validate_RCI_Subprogram_Declaration): Add tests of Has_Stream_Attribute_ Definition when... 2008-04-08 Gary Dismukes <dismukes@adacore.com> Ed Schonberg <schonberg@adacore.com> Robert Dewar <dewar@adacore.com> * sem_cat.adb (Validate_RCI_Subprogram_Declaration): Add tests of Has_Stream_Attribute_ Definition when checking for available stream attributes on parameters of a limited type in Ada 2005. Necessary for proper recognition of visible stream attribute clauses. (Has_Stream_Attribute_Definition): If the type is derived from a private type, then use the derived type's underlying type for checking whether it has stream attributes. (Validate_Object_Declaration): The check for a user-defined Initialize procedure applies also to types with controlled components or a controlled ancestor. Reject an object declaration in a preelaborated unit if the type is a controlled type with an overriding Initialize procedure. (Validate_Remote_Access_To_Class_Wide_Type): Return without further checking when the parent of a dereference is a selected component and the name has not been analyzed. * sem_ch4.adb (Analyze_Selected_Component): Add checking for selected prefixes that are invalid explicit dereferences of remote access-to-class-wide values, first checking whether the selected component is a prefixed form of call to a tagged operation. (Analyze_Call): Remove code that issues an error for limited function calls in illegal contexts, as we now support all of the contexts that were forbidden here. Allow a function call that returns a task.and appears as the prefix of a selected component. (Analyze_Reference): Give error message if we try to make a 'Reference for an object that is atomic/aliased without its type having the corresponding attribute. (Analyze_Call): Remove condition checking for attributes to allow calls to functions with inherently limited results as prefixes of attributes. Remove related comment about Class attributes. (Analyze_Selected_Component): If the prefix is a remote type, check whether this is a prefixed call before reporting an error. (Complete_Object_Operation): If the controlling formal is an access to variable reject an actual that is a constant or an access to one. (Try_Object_Operation): If prefix is a tagged protected object,retrieve primitive operations from base type. * exp_ch4.adb (Expand_N_Indexed_Component): Test for prefix that is a build-in-place function call and call Make_Build_In_Place_Call_In_Anonymous_Context. (Expand_N_Selected_Component): Test for prefix that is a build-in-place function call and call Make_Build_In_Place_Call_In_Anonymous_Context. (Expand_N_Slice): Test for prefix that is a build-in-place function call and call Make_Build_In_Place_Call_In_Anonymous_Context. (Analyze_Call): Remove code that issues an error for limited function calls in illegal contexts, as we now support all of the contexts that were forbidden here. New calling sequence for Get_Simple_Init_Val (Expand_Boolean_Operator): Add call to Silly_Boolean_Array_Xor_Test (Expand_N_Op_Not): Add call to Silly_Boolan_Array_Not_Test From-SVN: r134026
Gary Dismukes committed -
exp_aggr.adb (Static_Array_Aggregate): Use Max_Aggr_Size to determine whether an array aggregate with static bounds... 2008-04-08 Ed Schonberg <schonberg@adacore.com> * exp_aggr.adb (Static_Array_Aggregate): Use Max_Aggr_Size to determine whether an array aggregate with static bounds and scalar components should be expanded into a static constant. From-SVN: r134025
Ed Schonberg committed
-