- 26 May, 2008 35 commits
-
-
From-SVN: r135926
Arnaud Charlet committed -
From-SVN: r135925
Arnaud Charlet committed -
2008-05-26 Thomas Quinot <quinot@adacore.com> * exp_ch5.adb (Make_Tag_Ctrl_Assignment): Add missing guard on condition for assignment to temporary. From-SVN: r135924
Thomas Quinot committed -
2008-05-26 Javier Miranda <miranda@adacore.com> * einfo.ads (Abstract_Interface_Alias): Renamed as Interface_Alias. (Set_Abstract_Interface_Alias): Renamed as Set_Interface_Alias. (Is_Internal): Adding documentation on internal entities that have attribute Interface_Alias (old attribute Abstract_Interface_Alias) * einfo.adb (Abstract_Interface_Alias): Renamed as Interface_Alias. (Set_Abstract_Interface_Alias): Renamed as Set_Interface_Alias. Added assertion to force entities with this attribute to have attribute Is_Internal set to True. (Next_Tag_Component): Simplify assertion using attribute Is_Tag. * sem_ch3.adb (Derive_Interface_Subprograms): This subprogram has been renamed as Derive_Progenitor_Subprograms. In addition, its code is a new implementation. (Add_Interface_Tag_Components): Remove special management of synchronized interfaces. (Analyze_Interface_Declaration): Minor reformating (Build_Derived_Record_Type): Minor reformating (Check_Abstract_Overriding): Avoid reporting error in case of abstract predefined primitive inherited from interface type because the body of internally generated predefined primitives of tagged types are generated later by Freeze_Type (Derive_Subprogram): Avoid generating an internal name if the parent subprogram overrides an interface primitive. (Derive_Subprograms): New implementation that keeps separate the management of tagged types not implementing interfaces, from tagged types that implement interfaces. (Is_Progenitor): New implementation. (Process_Full_View): Add documentation (Record_Type_Declaration): Replace call to Derive_Interface_Subprograms by call to Derive_Progenitor_Subprograms. * sem_ch6.ads (Is_Interface_Conformant): New subprogram. (Check_Subtype_Conformant, Subtype_Conformant): Adding new argument Skip_Controlling_Formals. * sem_ch6.adb (Is_Interface_Conformant): New subprogram. (Check_Conventions): New implementation. Remove local subprogram Skip_Check. Remove formal Search_From of routine Check_Convention. (Check_Subtype_Conformant, Subtype_Conformant): Adding new argument Skip_Controlling_Formals. (New_Overloaded_Entity): Enable addition of predefined dispatching operations. * sem_disp.ads (Find_Primitive_Covering_Interface): New subprogram. * sem_disp.adb (Check_Dispatching_Operation): Disable registering the task body procedure as a primitive of the corresponding tagged type. (Check_Operation_From_Private_Type): Avoid adding twice an entity to the list of primitives. (Find_Primitive_Covering_Interface): New subprogram. (Override_Dispatching_Operation): Add documentation. * sem_type.adb (Covers): Minor reformatings * sem_util.ads (Collect_Abstract_Interfaces): Renamed as Collect_Interfaces. Rename formal. (Has_Abstract_Interfaces): Renamed as Has_Interfaces. (Implements_Interface): New subprogram. (Is_Parent): Removed. (Primitive_Names_Match): New subprogram. (Remove_Homonym): Moved here from Derive_Interface_Subprograms. (Ultimate_Alias): New subprogram. * sem_util.adb (Collect_Abstract_Interfaces): Renamed as Collect_Interfaces. Remove special management for synchronized types. Rename formal. Remove internal subprograms Interface_Present_In_Parent and Add_Interface. (Has_Abstract_Interfaces): Renamed as Has_Interfaces. Replace assertion on non-record types by code to return false in such case. (Implements_Interface): New subprogram. (Is_Parent): Removed. No special management is now required for synchronized types covering interfaces. (Primitive_Names_Match): New subprogram. (Remove_Homonym): Moved here from Derive_Interface_Subprograms. (Ultimate_Alias): New subprogram. * exp_ch3.adb (Add_Internal_Interface_Entities): New subprogram. Add internal entities associated with secondary dispatch tables to the list of tagged type primitives that are not interfaces. (Freeze_Record_Type): Add new call to Add_Internal_Interface_Entities (Make_Predefined_Primitive_Specs): Code reorganization to improve the management of predefined equality operator. In addition, if the type has an equality function corresponding with a primitive defined in an interface type, the inherited equality is abstract as well, and no body can be created for it. * exp_disp.ads (Is_Predefined_Dispatching_Operation): Moved from exp_util to exp_disp. (Is_Predefined_Interface_Primitive): New subprogram. Returns True if an entity corresponds with one of the predefined primitives required to implement interfaces. Update copyright notice. * exp_disp.adb (Set_All_DT_Position): Add assertion. Exclude from the final check on abstract subprograms all the primitives associated with interface primitives because they must be visible in the public and private part. (Write_DT): Use Find_Dispatching_Type to locate the name of the interface type. This allows the use of this routine, for debugging purposes, when the tagged type is not fully decorated. (Is_Predefined_Dispatching_Operation): Moved from exp_util to exp_disp. Factorize code calling new subprogram Is_Predefined_Interface_Primitive. (Is_Predefined_Interface_Primitive): New subprogram. Returns True if an entity corresponds with one of the predefined primitives required to implement interfaces. * exp_util.adb (Find_Interface_ADT): New implementation (Find_Interface): Removed. * sprint.adb (Sprint_Node_Actual): Generate missing output for the list of interfaces associated with nodes N_Formal_Derived_Type_Definition and N_Private_Extension_Declaration. From-SVN: r135923
Javier Miranda committed -
2008-05-26 Kai Tietz <kai.tietz@onevision.com> PR/36321 * config/i386/i386.md (allocate_stack_worker_64): Make sure argument operand in rax isn't removed. 2008-05-26 Kai Tietz <kai.tietz@onevision.com> * gcc-c.torture/execute/pr36321.c: New. From-SVN: r135921
Kai Tietz committed -
From-SVN: r135920
Arnaud Charlet committed -
From-SVN: r135919
Arnaud Charlet committed -
2008-05-26 Ed Schonberg <schonberg@adacore.com> * exp_ch4.adb (Expand_Concatenate_Other): Add explicit constraint checks on the upper bound if the index type is a modular type, to prevent wrap-around computations when size is close to upper bound of type. From-SVN: r135918
Ed Schonberg committed -
From-SVN: r135917
Arnaud Charlet committed -
2008-05-26 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch4.adb (Expand_N_Type_Conversion): Minor code reformatting. Generate a tag check when the result subtype of a function, defined by an access definition, designates a specific tagged type. (Make_Tag_Check): New routine. From-SVN: r135916
Hristian Kirtchev committed -
From-SVN: r135915
Arnaud Charlet committed -
2008-05-26 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Remove_Parent): Use specification of instance to retrieve generic parent, to handle properly the case where the instance is a child unit. Add guard to handle properly wrapper packages. Minor reformatting From-SVN: r135914
Ed Schonberg committed -
2008-05-26 Richard Guenther <rguenther@suse.de> PR middle-end/36300 * fold-const.c (extract_muldiv_1): Use TYPE_OVERFLOW_WRAPS, not TYPE_UNSIGNED. Use TYPE_PRECISION instead of GET_MODE_SIZE. * gcc.dg/pr36300-1.c: New testcase. * gcc.dg/pr36300-2.c: Likewise. From-SVN: r135913
Richard Guenther committed -
From-SVN: r135912
Arnaud Charlet committed -
* gigi.h (gigi): Remove bogus ATTRIBUTE_UNUSED marker. (builtin_decl_for): Likewise. * trans.c (gigi): Likewise. * utils.c (def_builtin_1): Fix formatting. From-SVN: r135911
Eric Botcazou committed -
* gnat.dg/set_in_pproc.adb: New test. * gnat.dg/modular2.adb: New test. From-SVN: r135910
Arnaud Charlet committed -
From-SVN: r135909
Arnaud Charlet committed -
* sem_ch12.adb: (Remove_Parent): If the enclosing scope is an instance whose generic parent is declared within some parent scope of the just completed instance, make full views of the entities in that parent visible, when applicable. From-SVN: r135908
Ed Schonberg committed -
* s-osinte-aix.adb: (To_Target_Priority): Setting the time slice value to 0 or greater sets the scheduling policy to FIFO within priorities or round-robin respectively. Hence, the priority must be set in this case to the one selected by the user. From-SVN: r135907
Jose Ruiz committed -
2008-05-26 Pascal Obry <obry@adacore.com> * sem_aggr.adb: Minor reformatting. From-SVN: r135906
Pascal Obry committed -
2008-05-26 Sergey Rybin <rybin@adacore.com> * gnat_ugn.texi: Add description for the new gnatcheck rule - Separate_Numeric_Error_Handlers. From-SVN: r135905
Sergey Rybin committed -
* exp_ch2.adb: (Expand_Current_Value): Properly type generated integer literal From-SVN: r135904
Robert Dewar committed -
2008-05-26 Robert Dewar <dewar@adacore.com> * g-heasor.ads: Minor comment fix (unit is now pure) From-SVN: r135903
Robert Dewar committed -
2008-05-26 Robert Dewar <dewar@adacore.com> * s-carun8.ads: Minor reformatting From-SVN: r135902
Robert Dewar committed -
2008-05-26 Robert Dewar <dewar@adacore.com> * osint.ads: Minor reformatting From-SVN: r135901
Robert Dewar committed -
* inline.adb: (Cleanup_Scopes): For a protected operation, transfer finalization list to protected body subprogram, to force cleanup actions when needed. From-SVN: r135900
Ed Schonberg committed -
2008-05-26 Robert Dewar <dewar@adacore.com> * gnatname.adb: Minor reformatting From-SVN: r135899
Robert Dewar committed -
2008-05-26 Robert Dewar <dewar@adacore.com> * sem_cat.adb: Minor reformatting From-SVN: r135898
Robert Dewar committed -
* prj-nmsc.adb: (Process_Project_Level_Simple_Attributes): process attribute Library_GCC * prj.ads: (Project_Configuration): New component Shared_Lib_Driver From-SVN: r135897
Vincent Celier committed -
2008-05-26 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch3.adb (Build_Init_Statements): Alphabetize local variables. Create the statements which map a string name to protected or task entry indix. * exp_ch9.adb: Add with and use clause for Stringt. Minor code reformatting. (Build_Entry_Names): New routine. (Make_Initialize_Protection, Make_Task_Create_Call): Generate a value for flag Build_Entry_Names which controls the allocation of the data structure for the string names of entries. * exp_ch9.ads (Build_Entry_Names): New subprogram. * exp_util.adb (Entry_Names_OK): New function. * exp_util.ads (Entry_Names_OK): New function. * rtsfind.ads: Add RO_PE_Set_Entry_Name and RO_TS_Set_Entry_Name to enumerations RE_Id and RE_Unit_Table. * s-taskin.adb Add with and use clause for Ada.Unchecked_Deallocation. (Free_Entry_Names_Array): New routine. * s-taskin.ads: Comment reformatting. Add types String_Access, Entry_Names_Array, Entry_Names_Array_Access. Add component Entry_Names to record Ada_Task_Control_Block. (Free_Entry_Names_Array): New routine. * s-tassta.adb (Create_Task): If flag Build_Entry_Names is set, dynamically allocate an array of string pointers. This structure holds string entry names. (Free_Entry_Names): New routine. (Free_Task, Vulnerable_Free_Task): Deallocate the entry names array. (Set_Entry_Names): New routine. * s-tassta.ads: (Create_Task): Add formal Build_Entry_Names. The flag is used to control the allocation of the data structure which stores entry names. (Set_Entry_Name): New routine. * s-tpoben.adb: Add with and use clause for Ada.Unchecked_Conversion. (Finalize): Deallocate the entry names array. (Free_Entry_Names): New routine. (Initialize_Protection_Entries): When flag Build_Entry_Names is set, create an array of string pointers to hold the entry names. (Set_Entry_Name): New routine. * s-tpoben.ads: Add field Entry_Names to record Protection_Entries. (Initialize_Protection_Entries): Add formal Build_Entry_Names. (Set_Entry_Name): New routine. From-SVN: r135896
Hristian Kirtchev committed -
2008-05-26 Kai Tietz <kai.tietz@onevision.com> * mingw32.h (STD_MINGW): Set to true for target w64. From-SVN: r135894
Kai Tietz committed -
2008-05-26 Daniel Franke <franke.daniel@gmail.com> PR bootstrap/36331 * c-cppbuiltin.c (define__GNUC__): Re-add definition of __GNUG__. From-SVN: r135892
Daniel Franke committed -
2008-05-26 Dominique Dhumieres <dominiq@lps.ens.fr> * config/darwin-c.c: Include "incpath.h" instead of "c-incpath.h". * config/t-darwin: Use "incpath.h" instead of "c-incpath.h". From-SVN: r135891
Dominique d'Humieres committed -
2008-05-25 Paolo Carlini <paolo.carlini@oracle.com> * include/std/tuple: Ifndef __GXX_EXPERIMENTAL_CXX0X__ just error out. * include/std/date_time: Likewise. * include/std/system_error: Likewise. * include/std/type_traits: Likewise; fix typo in macro name. * include/std/regex: Likewise. * include/std/random: Likewise. * include/std/unordered_map: Likewise. * include/std/condition_variable: Likewise. * include/std/unordered_set: Likewise. * include/std/mutex: Likewise. * include/std/array: Likewise. * include/c_std/cmath: Fix obsolete comment. * include/c_global/cmath: Likewise. From-SVN: r135890
Paolo Carlini committed -
From-SVN: r135888
GCC Administrator committed
-
- 25 May, 2008 5 commits
-
-
* tree-nested.c (convert_tramp_reference) <ADDR_EXPR>: Do not build a trampoline if we don't want one. * varasm.c (initializer_constant_valid_p) <ADDR_EXPR>: Do not return zero for nested functions if we don't want a trampoline. ada/ * trans.c (Attribute_to_gnu) <Code_Address>: Set TREE_NO_TRAMPOLINE instead of TREE_STATIC on the ADDR_EXPR. From-SVN: r135884
Eric Botcazou committed -
2008-05-26 Daniel Franke <franke.daniel@gmail.com> * doc/invoke.texi: Added f77, f77-cpp-input to list of file types. From-SVN: r135883
Daniel Franke committed -
gcc: 2008-05-26 Daniel Franke <franke.daniel@gmail.com> PR fortran/18428 * c.opt: Removed undocumented option '-lang-fortran'. * c-common.h: Removed global variable 'lang_fortran'. * c-opts.c (c_common_handle_option): Removed code to handle option '-lang-fortran'. Updated includes. * c-cppbuiltin.c (c_cpp_builtins): Removed conditional definition of '__GFORTRAN__'. (define__GNUC__): Reimplemented to use BASEVER and cpp_define_formatted. (builtin_define_with_value_n): Removed. * c-incpath.h: Renamed to ... * incpath.h: ... this. * c-incpath.c: Renamed to ... * incpath.c: ... this. Updated includes. * fix-header.c: Updated includes. * Makefile.in: Replaced c-incpath.[ch] by incpath.[ch]. (c-cppbuiltin.o): Added dependency on and definition of BASEVER. (OBJ-archive): Added cppdefault.o, incpath.o and prefix.o. gcc/cp: 2008-05-26 Daniel Franke <franke.daniel@gmail.com> * Makefile.in: Adjusted dependencies on c-incpath.o. gcc/fortran: 2008-05-26 Daniel Franke <franke.daniel@gmail.com> PR fortran/18428 * lang.opt (A, C, CC, D, E, H, P, U, cpp, d, fworking-directory, imultilib, iprefix, iquote, isysroot, isystem, nocpp, nostdinc, o, undef, v): New options. * options.c (gfc_init_options): Also initialize preprocessor options. (gfc_post_options): Also handle post-initialization of preprocessor options. (gfc_handle_option): Check if option is a preprocessor option. If yes, let gfc_cpp_handle_option() handle the option. * lang-specs.h: Reorganized to handle new options. * scanner.c (gfc_new_file): Read temporary file instead of input source if preprocessing is enabled. * f95-lang.c (gfc_init): Initialize preprocessor. (gfc_finish): Clean up preprocessor. * cpp.c: New. * cpp.h: New. * Make-lang.in: Added new objects and dependencies. * gfortran.texi: Updated section "Preprocessing and conditional compilation". * invoke.texi: Added new section "Preprocessing Options", listed and documented the preprocessing options handled by gfortran. From-SVN: r135882
Daniel Franke committed -
* tree.h: Update the table of flags used on tree nodes. (TREE_NO_TRAMPOLINE): New accessor for static_flag. (SAVE_EXPR_RESOLVED_P): Use automatically-built access check. (FORCED_LABEL): Add access check. (CALL_EXPR_RETURN_SLOT_OPT): Likewise. (ASM_INPUT_P): Likewise. (ASM_VOLATILE_P): Likewise. (EH_FILTER_MUST_NOT_THROW): Access static_flag directly. (OMP_SECTION_LAST): Access private_flag directly. (OMP_RETURN_NOWAIT): Likewise. (OMP_PARALLEL_COMBINED): Likewise. (OMP_CLAUSE_PRIVATE_DEBUG): Access public_flag directly. (OMP_CLAUSE_LASTPRIVATE_FIRSTPRIVATE): Likewise. * tree-ssa-propagate.c (STMT_IN_SSA_EDGE_WORKLIST): Access deprecated_flag directly. From-SVN: r135881
Eric Botcazou committed -
2008-05-25 Paolo Carlini <paolo.carlini@oracle.com> * include/std/complex (complex<>::real(_Tp), complex<>::imag(_Tp), complex<float>::real(float), complex<float>::imag(float), complex<double>::real(double), complex<double>::imag(double), complex<long double>::real(long double), complex<long double>::imag(long double)): Add per DR 387. (complex<>::real(), complex<>::imag(), complex<float>::real(), complex<float>::imag(), complex<double>::real(), complex<double>::imag(), complex<long double>::real(), complex<long double>::imag(long double)): Adjust in C++0x mode. (real(complex<>&), imag(complex<>&), real(const complex<>&), imag(const complex<>&)): Likewise. * testsuite/26_numerics/complex/dr387.cc: New. * doc/xml/manual/intro.xml: Add an entry for DR 387. From-SVN: r135878
Paolo Carlini committed
-