- 06 Apr, 2007 40 commits
-
-
2007-04-06 Robert Dewar <dewar@adacore.com> Arnaud Charlet <charlet@adacore.com> * a-diroro.ads: Inserted the pragma Unimplemented_Unit * bindgen.adb (Gen_Output_File_Ada): Generate pragma Ada_95 at start of files Add mention of -Sev (set initialize_scalars option from environment variable at run time) in gnatbind usage message. * elists.ads, elists.adb: (Append_Unique_Elmt): New procedure * fname-uf.ads: Minor comment fix * osint.ads: Change pragma Elaborate to Elaborate_All * par-load.adb: Add documentation. * sem_cat.ads, sem_cat.adb: Minor code reorganization * s-parint.ads (RCI_Locator) : Add 'Version' generic formal * s-secsta.ads: Extra comments * s-soflin.ads: Minor comment fixes * s-stratt.ads (Block_Stream_Ops_OK): Removed. * s-wchcon.ads: Minor comment addition * treepr.adb: Minor change in message (Print_Name,Print_Node): Make these debug printouts more robust: print "no such..." instead of crashing on bad input. From-SVN: r123606
Robert Dewar committed -
2007-04-06 Eric Botcazou <botcazou@adacore.com> * s-stchop-vxworks.adb: (Stack_Check): Raise Storage_Error if the argument has wrapped around. From-SVN: r123605
Eric Botcazou committed -
2007-04-06 Olivier Hainque <hainque@adacore.com> * utils2.c (known_alignment): Handle COMPOUND_EXPR, COND_EXPR and BIT_AND_EXPR. Handle also VIEW_CONVERT_EXPR, as the other conversion opcodes. From-SVN: r123604
Olivier Hainque committed -
2007-04-06 Thomas Quinot <quinot@adacore.com> * uintp.ads, uintp.adb (UI_Div_Rem): New subprogram, extending previous implementation of UI_Div. (UI_Div): Reimplement as a call to UI_Div_Rem. (UI_Rem): Take advantage of the fact that UI_Div_Rem provides the remainder, avoiding the cost of a multiplication and a subtraction. (UI_Modular_Inverse): Take advantage of the fact that UI_Div_Rem provides both quotient and remainder in a single computation. (UI_Modular_Exponentiation, UI_Modular_Inverse): New modular arithmetic functions for uint. (UI_Modular_Inverse): Add a note that the behaviour of this subprogram is undefined if the given n is not inversible. From-SVN: r123603
Thomas Quinot committed -
2007-04-06 Olivier Hainque <hainque@adacore.com> * tracebak.c (PC_ADJUST - ia64): -4 instead of -16, expected to yield an address always within the call instruction from a return address. From-SVN: r123602
Olivier Hainque committed -
* s-tpobop.adb (Exceptional_Complete_Entry_Body): Undefer abortion before propagating exception. From-SVN: r123601
Arnaud Charlet committed -
2007-04-06 Ed Schonberg <schonberg@adacore.com> Robert Dewar <dewar@adacore.com> * sinfo.ads, sinfo.adb (Coextensions): New element list for allocators, to chain nested components that are allocators for access discriminants of the enclosing object. Add N_Push and N_Pop nodes New field Exception_Label added (Local_Raise_Statements): New field in N_Exception_Handler_Node (Local_Raise_Not_OK): New flag in N_Exception_Handler_Node (Is_Coextension): New flag for allocators, to mark allocators that correspond to access discriminants of dynamically allocated objects. (N_Block_Statement): Document the fact that the corresponding entity can be an E_Return_Statement. (Is_Coextension): New flag for allocators. Remove all code for DSP option * sprint.ads, sprint.adb: Display basic information for class_wide subtypes. Add handling of N_Push and N_Pop nodes From-SVN: r123600
Ed Schonberg committed -
sem_util.ads, [...] (Object_Access_Level): If the object is a dereference of a local object R created as a reference to... 2007-04-06 Ed Schonberg <schonberg@adacore.com> Javier Miranda <miranda@adacore.com> * sem_util.ads, sem_util.adb (Object_Access_Level): If the object is a dereference of a local object R created as a reference to another object O, use the access level of O. (Matches_Prefixed_View_Profile): Use common predicate Conforming_Types, rather than local Same_Formal_Type, to check whether protected operation overrides an inherited one. (Same_Formal_Type): New predicate, used when matching signatures of overriding synchronized operations, to handle the case when a formal has a type that is a generic actual. (Is_Aliased_View): Replace check on E_Task_Type and E_Protected_Type by predicate Is_Concurrent_Type. This ensures supportin case of subtypes. (Needs_One_Actual): New predicate, for Ada 2005 use, to resolve syntactic ambiguities involving indexing of function calls that return arrays. (Abstract_Interface_List): New subprogram that returns the list of abstract interfaces associated with a concurrent type or a concurrent record type. (Interface_Present_In_Parent): New subprogram used to check if a given type or some of its parents implement a given interface. (Collect_Abstract_Interfaces): Add support for concurrent types with interface types. (Has_Abstract_Interfaces): Add support for concurrent types with interface types. (Is_Parent): New subprogram that determines whether E1 is a parent of E2. For a concurrent type its parent is the first element of its list of interface types; for other types this function provides the same result than Is_Ancestor. (Enclosing_Subprogram): Add test for N_Extended_Return_Statement. (Collect_Synchronized_Interfaces): Removed because the subprogram Collect_Abstract_Interfaces provides this functionality. (Collect_Abstract_Interfaces): Minor update to give support to concurrent types and thus avoid undesired code duplication. (Get_Subprogram_Entity): Handle entry calls. (May_Be_Lvalue): Include actuals that appear as in-out parameters in entry calls. (Enter_Name): Do not give -gnatwh hiding warning for record component entities, they never result in hiding. From-SVN: r123599
Ed Schonberg committed -
2007-04-06 Ed Schonberg <schonberg@adacore.com> Javier Miranda <miranda@adacore.com> * sem_type.ads, sem_type.adb (Has_Abstract_Interpretation): Make predicate recursive, to handle complex expressions on literals whose spurious ambiguity comes from the abstract interpretation of some subexpression. (Interface_Present_In_Ancestor): Add support to concurrent record types. (Add_One_Interp,Disambiguate): Split Is_Abstract flag into Is_Abstract_Subprogram and Is_Abstract_Type. From-SVN: r123598
Ed Schonberg committed -
2007-04-06 Ed Schonberg <schonberg@adacore.com> Robert Dewar <dewar@adacore.com> * sem_ch8.adb (Has_Components): If the argument is an incomplete type that is a limited view, check the non-limited view if available. (Undefined): Refine error message for missing with of Text_IO (Find_Expanded_Name): Use Is_Known_Unit for more accurate error message to distinguish real missing with cases. Fix format of all missing with messages (Analyze_Subprogram_Renaming): Emit proper error message on illegal renaming as body when renamed entity is abstract. From-SVN: r123597
Ed Schonberg committed -
sem_ch7.ads, [...] (Inspect_Deferred_Constant_Completion): Move out of Analyze_Package_Declaration... 2007-04-06 Ed Schonberg <schonberg@adacore.com> Thomas Quinot <quinot@adacore.com> * sem_ch7.ads, sem_ch7.adb (Inspect_Deferred_Constant_Completion): Move out of Analyze_Package_Declaration, because processing must be applied to package bodies as well, for deferred constants completed by pragmas. (Analyze_Package_Declaration): When the package declaration being analyzed does not require an explicit body, call Check_Completion. (May_Need_Implicit_Body): An implicit body is required when a package spec contains the declaration of a remote access-to-classwide type. (Analyze_Package_Body): If the package contains RACWs, append the pending subprogram bodies generated by exp_dist at the end of the body. (New_Private_Type,Unit_Requires_Body): Split Is_Abstract flag into Is_Abstract_Subprogram and Is_Abstract_Type. (Preserve_Full_Attributes): The full entity list is not an attribute that must be preserved from full to partial view. * sem_dist.adb (Add_RAS_Dereference_TSS): Change primitive name to _Call so it cannot clash with any legal identifier, and be special-cased in Check_Completion. Mark the full view of the designated type for the RACW associated with a RAS as Comes_From_Source to get proper view switching when installing private declarations. Provite a placeholder nested package body along with the nested spec to have a place for Append_RACW_Bodies to generate the calling stubs and stream attributes. From-SVN: r123596
Ed Schonberg committed -
sem_ch5.adb (Analyze_Assignment): Reject a right-hand side that is a tag-indeterminate call to an abstract... 2007-04-06 Ed Schonberg <schonberg@adacore.com> Robert Dewar <dewar@adacore.com> * sem_ch5.adb (Analyze_Assignment): Reject a right-hand side that is a tag-indeterminate call to an abstract function, when the left-hand side is not classwide. (Analyze_Loop_Statement): Improve detection of infinite loops From-SVN: r123595
Ed Schonberg committed -
sem_ch4.adb (Try_Primitive_Operation): The call is legal if the prefix type is a discriminated subtype of the type of... 2007-04-06 Ed Schonberg <schonberg@adacore.com> Bob Duff <duff@adacore.com> Gary Dismukes <dismukes@adacore.com> * sem_ch4.adb (Try_Primitive_Operation): The call is legal if the prefix type is a discriminated subtype of the type of the formal. (Analyze_Allocator): Collect all coextensions regardless of the context. Whether they can be allocated statically is determined in exp_ch4. (Analyze_Selected_Component): If the prefix is a limited view and the non-limited view is available, use the non-limited one. (Operator_Check): For "X'Access = Y'Access" (which is ambiguous, and therefore illegal), suggest a qualified expression rather than a type conversion, because a type conversion would be illegal in this context. (Anayze_Allocator): Trace recursively all nested allocators so that all coextensions are on the corresponding list for the root. Do no mark coextensions if the root allocator is within a declaration for a stack- allocated object, because the access discriminants will be allocated on the stack as well. (Analyze_Call): Remove restriction on calls to limited functions for the cases of generic actuals for formal objects, defaults for formal objects and defaults for record components. (Analyze_Allocator): Before analysis, chain coextensions on the proper element list. Their expansion is delayed until the enclosing allocator is processed and its finalization list constructed. (Try_Primitive_Operation): If the prefix is a concurrent type, looks for an operation with the given name among the primitive operations of the corresponding record type. (Analyze_Selected_Component): If the prefix is a task type that implements an interface, and there is no entry with the given name, check whether there is another primitive operation (e.g. a function) with that name. (Try_Object_Operation, Analyze_One_Call, Try_Indexed_Call): Handle properly the indexing of a function call written in prefix form, where the function returns an array type, and all parameters of the function except the first have defaults. (Analyze_Equality_Op): If this is a call to an implicit inequality, keep the original operands, rather than relocating them, for efficiency and to work properly when an operand is overloaded. (Analyze_Allocator,Operator_Check,Remove_Abstract_Operations): Split Is_Abstract flag into Is_Abstract_Subprogram and Is_Abstract_Type. (Analyze_Selected_Component): If the prefix is a private extension, only scan the visible components, not those of the full view. (Try_Primitive_Operation): If the operation is a procedure, collect all possible interpretations, as for a function, because in the presence of classwide parameters several primitive operations of the type can match the given arguments. From-SVN: r123594
Ed Schonberg committed -
sem_ch12.adb (Check_Generic_Actuals): Use first subtype of actual when capturing size information... 2007-04-06 Ed Schonberg <schonberg@adacore.com> Gary Dismukes <dismukes@adacore.com> * sem_ch12.adb (Check_Generic_Actuals): Use first subtype of actual when capturing size information, instead of base type, which for a formal array type will be the unconstrained type. (Analyze_Formal_Object_Declaration): Add check for illegal default expressions for a formal in object of a limited type. (Instantiate_Object): Ditto. (Check_Formal_Package_Instance): Skip entities that are formal objects, because they were defaulted in the formal package and no check applies to them. (Check_Formal_Package_Instance): Extend conformance check to other discrete types beyond Integer. (Process_Default): Copy directly the unmatched formal. A generic copy has already been performed in Analyze_Formal_Package. (Analyze_Associations): If a formal subprogram has no match, check for partial parametrization before looking for a default, to prevent spurious errors. (Analyze_Package_Instantiation, Analyze_Subprogram_Instantiation): Do not set the instantiation environment before analyzing the actuals. Fixes regression on 8515-003 with implementation of AI-133. Set_Instance_Env checks whether the generic unit is a predefined unit, in which case the instance must be analyzed with the latest Ada mode. This setting must take place after analysis of the actuals, because the actuals must be analyzed and frozen in the Ada mode extant outside of the current instantiation. (Save_Env, Restore_Env): Preserve and restore the configuration parameters so that predefined units can be compiled in the proper Ada mode. (Analyze_Formal_Object_Declaration,Analyze_Formal_Subprogram, Instantiate_Type): Split Is_Abstract flag into Is_Abstract_Subprogram and Is_Abstract_Type. (Analyze_Formal_Package): For better error recovery, Add exception handler to catch Instantion_Error, which can be raised in Analyze_Associations From-SVN: r123593
Ed Schonberg committed -
* sem_ch10.adb (Install_Limited_Context_Clauses. Expand_Limited_With_Clause): Use a new copy of selector name in the call to Make_With_Clause. This fixes the tree structure for ASIS purposes. Nothing is changed in the compiler behaviour. (Process_Body_Clauses): Handle properly use clauses whose prefix is a package renaming. (Install_Limited_With_Clauses): Do not install non-limited view when it is still incomplete. From-SVN: r123592
Ed Schonberg committed -
2007-04-06 Ed Falis <falis@adacore.com> * s-carun8.adb, s-carsi8.adb (Compare_Array_?8): modify so that last full word is no longer compared twice. From-SVN: r123591
Ed Falis committed -
2007-04-06 Robert Dewar <dewar@adacore.com> * sem_ch13.ads, sem_ch13.adb (Adjust_Record_For_Reverse_Bit_Order): Use First/Next_Component_Or_Discriminant (Analyze_Record_Representation_Clause): Use First/Next_Component_Or_Discriminant (Check_Component_Overlap): Use First/Next_Component_Or_Discriminant (Analyze_Attribute_Definition_Clause, case Value_Size): Reject definition if type is unconstrained. (Adjust_Record_For_Reverse_Bit_Order): New procedure (Analyze_Attribute_Definition_Clause): Split Is_Abstract flag into Is_Abstract_Subprogram and Is_Abstract_Type. (Adjust_Record_For_Reverse_Bit_Order): New procedure * repinfo.adb (List_Record_Info): Use First/ Next_Component_Or_Discriminant. * style.ads, styleg-c.adb, styleg-c.ads (Check_Array_Attribute_Index): New procedure. * stylesw.ads, stylesw.adb: Recognize new -gnatyA style switch Include -gnatyA in default switches * opt.ads: (Warn_On_Non_Local_Exception): New flag (Warn_On_Reverse_Bit_Order): New flag (Extensions_Allowed): Update the documentation. (Warn_On_Questionable_Missing_Parens): Now on by default * usage.adb: Add documentation of -gnatw.x/X switches Document new -gnatyA style switch -gnatq warnings are on by default From-SVN: r123590
Robert Dewar committed -
2007-04-06 Vincent Celier <celier@adacore.com> * prj-ext.adb (Initialize_Project_Path): New procedure that initialize the default project path, initially done during elaboration of the package. If the prefix returned by Sdefault is null, get the prefix from a call to Executable_Prefix_Path. (Project_Path): Call Initialize_Project_Path if Current_Project_Path is null. * prj-nmsc.adb (Get_Path_Names_And_Record_Sources): Use the non canonical directory name to open the directory from which files are retrieved. (Record_Other_Sources): Idem. (Locate_Directory): Add the possibility to create automatically missing directories when Setup_Projects is True. Call Locate_Directory so that the directory will be created when Setup_Projects is True, for object dir, library dir, library ALI dir, library source copy dir and exec dir. * prj-pp.adb (Max_Line_Length): Set to 255 for compatibility with older versions of GNAT. From-SVN: r123589
Vincent Celier committed -
2007-04-06 Robert Dewar <dewar@adacore.com> Javier Miranda <miranda@adacore.com> Bob Duff <duff@adacore.com> Vincent Celier <celier@adacore.com> * par-prag.adb (Prag): Add dummy entry for pragma Compile_Time_Error (Extensions_Allowed): No longer sets Ada_Version Entry for pragma Unreferenced_Objects * sem_prag.adb (Analyze_Pragma, case Priority): Force with of system.tasking if pragma priority used in a procedure (Analyze_Pragma, case Warning): Handle dot warning switches (Process_Compile_Time_Warning_Or_Error): New procedure (Analyze_Pragma): Add processing for Compile_Time_Error Add support for extra arguments External_Name and Link_Name. Remove code associated with pragmas CPP_Virtual and CPP_Vtable. (Process_Import_Or_Interface): Add support for the use of pragma Import with tagged types. (Extensions_Allowed): No longer affects Ada_Version (Analyze_Pragma): Split Is_Abstract flag into Is_Abstract_Subprogram and Is_Abstract_Type. Make sure these are called only when appropriate. Add processing for pragma Unreferenced_Objects * snames.h, snames.ads, snames.adb: Add entry for pragma Compile_Time_Error Add new standard name Minimum_Binder_Options for new gprmake Add new standard names for gprmake: Archive_Suffix, Library_Auto_Init_Supported, Library_Major_Minor_Id_Supported, Library_Support, Library_Version_Options, Shared_Library_Minimum_Options, Shared_Library_Prefix, Shared_Library_Suffix, Symbolic_Link_Supported. Change Name_Call to Name_uCall so that it cannot clash with a legal subprogram name. Add new standard names Mapping_Spec_Suffix and Mapping_Body_Suffix Append C_Plus_Plus to convention identifiers as synonym for CPP Add new standard names Stack and Builder_Switches Add new standard names: Compiler_Minimum_Options, Global_Config_File, Library_Builder, Local_Config_File, Objects_Path, Objects_Path_File, Run_Path_Option, Toolchain_Version. Entry for pragma Unreferenced_Objects * switch-c.adb (Scan_Front_End_Switches): Store correct -gnateD switches, without repetition of "eD". Make sure that last character of -gnatep= switch is not taken as -gnat switch character. Complete rewrite of circuit for handling saving compilation options Occasioned by need to support dot switchs for -gnatw, but cleans up things in general. -gnatX does not affect Ada_Version Include -gnatyA in -gnatg style switches * sem_warn.ads, sem_warn.adb (Output_Unreferenced_Messages): Exclude warnings on return objects. (Warn_On_Useless_Assignment): Exclude warnings on return objects (Set_Dot_Warning_Switch): New procedure (Check_References): Add missing case of test for Has_Pragma_Unreferenced_Objects (Output_Unreferenced_Messages): Implement effect of new pragma Unreferenced_Objects, remove special casing of limited controlled variables. From-SVN: r123588
Robert Dewar committed -
2007-04-06 Robert Dewar <dewar@adacore.com> Javier Miranda <miranda@adacore.com> Bob Duff <duff@adacore.com> * par-ch3.adb: (P_Type_Declaration): Set Type_Token_Location (P_Interface_Type_Definition): Remove the formal Is_Synchronized because there is no need to generate always a record_definition_node in case of synchronized interface types. (P_Type_Declaration): Update calls to P_Interface_Type_Definition. (P_Null_Exclusion): For AI-447: Remove warnings about "not null" being illegal in Ada 95, in cases where it is legal. Change the warnings to errors in other cases. Don't give the error unless the "not null" parses properly. Correct the source position at which the error occurs. (P_Known_Discriminant_Part_Opt): Pass Allow_Anonymous_In_95 => True to P_Null_Exclusion, to suppress "not null" warnings. (P_Identifier_Declarations): Code cleanup. Removed unrequired label and associated goto statements. * par-endh.adb (Pop_End_Context): Allow more flexibility in placement of END RECORD * scans.ads (Type_Token_Location): New flag * par-ch6.adb (P_Mode): Check specifically for case of IN ACCESS (P_Formal_Part): Pass Allow_Anonymous_In_95 => True to P_Null_Exclusion, to suppress "not null" warnings. From-SVN: r123587
Robert Dewar committed -
2007-04-06 Robert Dewar <dewar@adacore.com> * namet.ads, namet.adb (wn): Improve this debugging routine. Calling it no longer destroys the contents of Name_Buffer or Name_Len and non-standard and invalid names are handled better. (Get_Decoded_Name_String): Improve performance by using Name_Has_No_Encodings flag in the name table. (Is_Valid_Name): New function to determine whether a Name_Id is valid. Used for debugging printouts. From-SVN: r123586
Robert Dewar committed -
2007-04-06 Vincent Celier <celier@adacore.com> * mlib.adb (Building_Library): Only output "building a library..." in verbose mode * mlib-prj.adb (Build_Library): Only output lists of object and ALI files in verbose mode. * mlib-utl.adb (Ar): Only output the first object files when not in verbose mode. (Gcc): Do not display all the object files if not in verbose mode, only the first one. From-SVN: r123585
Vincent Celier committed -
gnat_rm.texi, [...]: Add -gnatyl documentation Update 'Exception Handling Control' chapter which was... 2007-04-06 Robert Dewar <dewar@adacore.com> Arnaud Charlet <charlet@adacore.com> Vincent Celier <celier@adacore.com> * gnat_rm.texi, gnat_ugn.texi: Add -gnatyl documentation Update 'Exception Handling Control' chapter which was outdated. Minor fix to documentation of -gnatwq Remove section "Adapting the Run Time to a New C++ Compiler" because it is now obsolete. Add passage on need of -nostart-files in some non-ada-main cases. Document new switch -eS (/STANDARD_OUTPUT_FOR_COMMANDS) for gnatmake Update documentation about Interfacing with C++ Add documentation for new gnatmake switch -p Add missing protocol part in URLs. Document -gnatyA Document pragma Compile_Time_Error Add documentation for Object_Size indicating that stand alone objects can have a larger size in some cases. Add node for GNAT.Byte_Swapping, GNAT.SHA1 Update reference to the Ravenscar profile. Document pragma Unreferenced_Objects * gnat-style.texi: Fix typo From-SVN: r123584
Robert Dewar committed -
2007-04-06 Ed Schonberg <schonberg@adacore.com> Javier Miranda <miranda@adacore.com> * lib-xref.ads, lib-xref.adb: Modify the loop that collects type references, to include interface types that the type implements. List each of these interfaces when building the entry for the type. (Generate_Definition): Initialize component Def and Typ of new entry in table Xrefs, to avoid to have these components unitialized. (Output_References): Split Is_Abstract flag into Is_Abstract_Subprogram and Is_Abstract_Type. (Generate_Reference): Add barrier to do not generate the warning associated with Ada 2005 entities with entities generated by the expander. From-SVN: r123583
Ed Schonberg committed -
lib-writ.adb (Write_With_Lines): Factor duplicated code between the cases where a given dependency has a body or not. 2007-04-06 Thomas Quinot <quinot@adacore.com> * lib-writ.adb (Write_With_Lines): Factor duplicated code between the cases where a given dependency has a body or not. (Write_With_File_Names): New subprogram, common code for the two cases above. From-SVN: r123582
Thomas Quinot committed -
lib.ads, lib.adb (Tree_Read): Release the memory occupied by the switches from previously loaded tree 2007-04-06 Serguei Rybin <rybin@adacore.com> * lib.ads, lib.adb (Tree_Read): Release the memory occupied by the switches from previously loaded tree From-SVN: r123581
Serguei Rybin committed -
2007-04-06 Eric Botcazou <botcazou@adacore.com> Arnaud Charlet <charlet@adacore.com> * init.c: Reuse PA/HP-UX code for IA-64/HP-UX, except __gnat_adjust_context_for_raise. (__gnat_init_float): on x86 vxworks 5.x and 6.x, we use the same implementation of floating point operations as native x86 targets. So the FPU should be initialized in the same way using finit. Fix floating point operations accuracy issues. (__gnat_install_handler, case FreeBSD): Use proper type for sa_sigaction member in struct sigaction, so as to avoid warning for incompatible pointer types. From-SVN: r123580
Eric Botcazou committed -
2007-04-06 Geert Bosch <bosch@adacore.com> Robert Dewar <dewar@adacore.com> * i-fortra.ads: Add Double_Complex type. * impunit.adb: (Is_Known_Unit): New function Add Gnat.Byte_Swapping Add GNAT.SHA1 Add new Ada 2005 units Ada.Numerics.Generic_Complex_Arrays, Ada.Numerics.Generic_Real_Arrays, Ada.Numerics.Complex_Arrays, Ada.Numerics.Real_Arrays, Ada.Numerics.Long_Complex_Arrays, Ada.Numerics.Long_Long_Complex_Arrays, Ada.Numerics.Long_Long_Real_Arrays and Ada.Numerics.Long_Real_Arrays * impunit.ads (Is_Known_Unit): New function * a-ngcoar.adb, a-ngcoar.ads, a-ngrear.adb, a-ngrear.ads, a-nlcoar.ads, a-nllcar.ads, a-nllrar.ads, a-nlrear.ads, a-nucoar.ads, a-nurear.ads, g-bytswa.adb, g-bytswa-x86.adb, g-bytswa.ads, g-sha1.adb, g-sha1.ads, i-forbla.ads, i-forlap.ads, s-gearop.adb, s-gearop.ads, s-gecobl.adb, s-gecobl.ads, s-gecola.adb, s-gecola.ads, s-gerebl.adb, s-gerebl.ads, s-gerela.adb, s-gerela.ads: New files. * Makefile.rtl: Add g-bytswa, g-sha1, a-fzteio and a-izteio * a-fzteio.ads, a-izteio.ads: New Ada 2005 run-time units. From-SVN: r123579
Geert Bosch committed -
2007-04-06 Pascal Obry <obry@adacore.com> * i-cstrea.ads: (fopen): Add encoding parameter. (freopen): Idem. Change reference from a-sysdep.c to sysdep.c in comment. Update copyright notice. This set of patch add support for the encoding form parameter. * mingw32.h (S2WSU): New macro to convert from a string to a wide-string using the UTF-8 encoding. The S2WS macro supports now only standard 8bits encoding. (WS2SU): As above but converting from wide-sring to string. This is needed as it is necessary to have access to both versions in the runtime for the form parameter encoding support. This set of patch add support for the encoding form parameter. (S2WS): Improve implementation to handle cases where the filename is not UTF-8 encoded. In this case we default to using the current code page for the conversion. * s-crtl-vms64.ads, s-crtl.ads (Filename_Encoding): New enumeration type (UTF8, ASCII_8bits). This enumeration has a rep clause to match the constants defined in adaint.h. (fopen): Add encoding parameter. (freopen): Idem. * s-ficobl.ads (AFCB): Add Encoding field to record the filename encoding. This is needed for the Reset routine (freopen low level-call). * s-fileio.adb (Open): Decode encoding form parameter and set the corresponding encoding value into AFCB structure. (Reset): Pass the encoding value to freopen. (Close): Move the call to Lock_Task to the beginning of the procedure. From-SVN: r123578
Pascal Obry committed -
2007-04-06 Emmanuel Briot <briot@adacore.com> * g-regpat.adb (Parse_Posix_Character_Class): Fix handling of [[:xdigit:]] character class. Also raise an exception when an invalid character class is used. From-SVN: r123577
Emmanuel Briot committed -
gprep.adb (Process_Files.Process_One_File): Use full file name when issuing pragma Source_Reference. 2007-04-06 Vincent Celier <celier@adacore.com> * gprep.adb (Process_Files.Process_One_File): Use full file name when issuing pragma Source_Reference. From-SVN: r123576
Vincent Celier committed -
2007-04-06 Jose Ruiz <ruiz@adacore.com> Vincent Celier <celier@adacore.com> * gnatcmd.adb (B_Start): Add prefix of binder generated file. (Stack_String): Add this String that contains the name of the Stack package in the project file. (Packages_To_Check_By_Stack): Add this list that contains the packages to be checked by gnatstack, which are the naming and the stack packages. (Check_Files): If no .ci files were specified for gnatstack we add all the .ci files belonging to the projects, including binder generated files. (Non_VMS_Usage): Document that gnatstack accept project file switches. (GNATCmd): Update the B_Start variable if we are in a VMS environment. Add gnatstack to the list of commands that use project file related switches, and get the single attribute Switches from the stack package in a project file when calling gnatstack. Parse the -U flag for processing files belonging to all projects in the project tree. Remove all processing for command Setup * prj-attr.adb: Add new package Stack with single attribute Switches * vms_conv.ads (Command_Type): Add command Stack. Move to body declarations that are only used in the body: types Item_Id, Translation_Type, Item_Ptr, Item and its subtypes. * vms_conv.adb: (Initialize): Add data for new command Stack. Add declarations moved from the spec: types Item_Id, Translation_Type, Item_Ptr, Item and its subtypes. (Cargs_Buffer): New table (Cargs): New Boolean global variable (Process_Buffer): New procedure to create arguments (Place): Put character in table Buffer or Cargs_Buffer depending on the value of Cargs. (Process_Argument): Set Cargs when processing qualifiers for GNAT COMPILE (VMS_Conversion): Call Process_Buffer for table Buffer and, if it is not empty, for table Cargs_Buffer. (Initialize): Remove component Setup in Command_List From-SVN: r123575
Jose Ruiz committed -
2007-04-06 Thomas Quinot <quinot@adacore.com> * g-md5.ads, g-md5.adb (Digest): Fix off-by-one error in padding computation. From-SVN: r123574
Thomas Quinot committed -
g-expect.adb (Get_Command_Output): When expanding the output buffer we must ensure that there is enough place for... * g-expect.adb (Get_Command_Output): When expanding the output buffer we must ensure that there is enough place for the new data we are going to copy in. From-SVN: r123573
Arnaud Charlet committed -
g-debpoo.adb (Validity): New package with a complete new implementation of subprograms Is_Valid and... 2007-04-06 Vincent Celier <celier@adacore.com> * g-debpoo.adb (Validity): New package with a complete new implementation of subprograms Is_Valid and Set_Valid. (Is_Valid): Move to local package Validity (Set_Valid): Move to local package Validity From-SVN: r123572
Vincent Celier committed -
2007-04-06 Pascal Obry <obry@adacore.com> * g-arrspl.adb (Free) [Element_Access]: New routine to free the source string. (Create): Free the source string before storing the new one. From-SVN: r123571
Pascal Obry committed -
g-alleve.ads (Low Level Vector type definitions): Map each to the associated vector view instead of all to the unsigned char view. 2007-04-06 Olivier Hainque <hainque@adacore.com> * g-alleve.ads (Low Level Vector type definitions): Map each to the associated vector view instead of all to the unsigned char view. * g-altcon.adb (Generic_Conversions): New internal generic package, offering facilities for all the Vector/View conversion routines implemented by this unit. (To_View/To_Vector - all versions): Reimplemented in a systematic manner, using the internal Generic_Conversions facilities. From-SVN: r123570
Olivier Hainque committed -
sem_aggr.adb (Resolve_Record_Aggregate): In semantics-only mode treat an association with a box as providing a value... 2007-04-06 Ed Schonberg <schonberg@adacore.com> Bob Duff <duff@adacore.com> * sem_aggr.adb (Resolve_Record_Aggregate): In semantics-only mode treat an association with a box as providing a value even though the initialization procedure for the type is not available. (Resolve_Record_Aggregate): Check that a choice of an association with a box corresponds to a component of the type. (Resolve_Record_Aggregate): Split Is_Abstract flag into Is_Abstract_Subprogram and Is_Abstract_Type. * exp_tss.adb (Base_Init_Proc): Use Is_Type instead of Type_Kind for assert. * inline.adb (Add_Inlined_Body): Split Is_Abstract flag into Is_Abstract_Subprogram and Is_Abstract_Type. Make sure these are called only when appropriate. From-SVN: r123569
Ed Schonberg committed -
* exp_strm.adb (Build_Mutable_Record_Write_Procedure): For an Unchecked_Union type, use discriminant defaults. (Build_Record_Or_Elementary_Output_Procedure): Ditto. (Make_Component_List_Attributes): Ditto. From-SVN: r123568
Ed Schonberg committed -
exp_pakd.adb (Expand_Packed_Boolean_Operator): The bounds of the result are the bounds of the left operand, not the right. 2007-04-06 Ed Schonberg <schonberg@adacore.com> * exp_pakd.adb (Expand_Packed_Boolean_Operator): The bounds of the result are the bounds of the left operand, not the right. From-SVN: r123567
Ed Schonberg committed
-