summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2006-02-18gfortran.h (gfc_add_attribute): Change uint to unsigned int.Danny Smith
2006-02-18 Danny Smith <dannysmith@users.sourceforeg.net> * gfortran.h (gfc_add_attribute): Change uint to unsigned int. * symbol.c (gfc_add_attribute): Likewise for definition. * resolve.c (resolve_global_procedure): Likewise for variable 'type'. From-SVN: r111239
2006-02-18re PR target/26189 (Bug in vendor /usr/include/net/if.h needs fixincluding ↵Steve Ellcey
on HPUX) PR target/26189 * inclhack.def (hpux_spu_info): New. * fixincl.x: Regenerate From-SVN: r111237
2006-02-18re PR target/24837 (move dynamic linker names out of LINK_SPEC and into new ↵Joseph Myers
DYNAMIC_LINKER) PR target/24837 * config.gcc: Define UCLIBC_DEFAULT to 0 or 1. * opth-gen.awk: Handle Var and InverseMask together. * config/linux.opt (muclibc, mglibc): Use Var(linux_uclibc). * config/linux.h: Use #if not #ifdef for testing UCLIBC_DEFAULT. (TARGET_C99_FUNCTIONS): Test OPTION_GLIBC not TARGET_GLIBC. (CHOOSE_DYNAMIC_LINKER): Give an error for -mglibc and -muclibc used together. (UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define. * config/alpha/linux-elf.h (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (ELF_DYNAMIC_LINKER): Define to LINUX_DYNAMIC_LINKER. * config/alpha/linux.h (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/cris/linux.h (GLIBC_DYNAMIC_LINKER): Define. (CRIS_LINK_SUBTARGET_SPEC): Pass a -dynamic-linker option. * config/frv/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. (TARGET_C99_FUNCTIONS): Don't define. * config/i386/linux.h (DYNAMIC_LINKER): Rename to GLIBC_DYNAMIC_LINKER. (SUBTARGET_EXTRA_SPECS): Use LINUX_DYNAMIC_LINKER. * config/i386/linux64.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER32 and LINUX_DYNAMIC_LINKER64. * config/ia64/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/m32r/linux.h (GLIBC_DYNAMIC_LINKE): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/m68k/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/mips/linux64.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64, GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, LINUX_DYNAMIC_LINKERN32): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKERN32, LINUX_DYNAMIC_LINKER64 and LINUX_DYNAMIC_LINKER32. * config/mn10300/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/pa/pa-linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/rs6000/linux.h (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/rs6000/linux64.h (TARGET_C99_FUNCTIONS): Likewise. (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64, CHOOSE_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define. (LINK_OS_LINUX_SPEC32): Use LINUX_DYNAMIC_LINKER32. (LINK_OS_LINUX_SPEC64): Use LINUX_DYNAMIC_LINKER64. * config/rs6000/sysv4.h (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (LINK_OS_LINUX_SPEC): Use LINUX_DYNAMIC_LINKE. * config/s390/linux.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER32 and LINUX_DYNAMIC_LINKER64. * config/sh/linux.h (GLIBC_DYNAMIC_LINKER): Define. (SUBTARGET_LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/sparc/linux.h (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/sparc/linux64.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define. (LINK_ARCH32_SPEC): Use LINUX_DYNAMIC_LINKER32. (LINK_ARCH64_SPEC, LINK_SPEC): Use LINUX_DYNAMIC_LINKER64. (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/xtensa/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * doc/invoke.texi (-muclibc): Remove caveat about supported targets. testsuite: * gcc.dg/glibc-uclibc-1.c, gcc.dg/glibc-uclibc-2.c: New tests. From-SVN: r111235
2006-02-18cpp.texi (__TIMESTAMP__): Document.Grigory Zagorodnev
2006-02-17 Grigory Zagorodnev <grigory_zagorodnev@linux.intel.com> gcc/ChangeLog: * doc/cpp.texi (__TIMESTAMP__): Document. libcpp/ChangeLog: * macro.c (_cpp_builtin_macro_text): Handle BT_TIMESTAMP. * files.c (_cpp_get_file_stat): New function. * include/cpplib.h (builtin_type): Add BT_TIMESTAMP. * init.c (builtin_array): Add support for __TIMESTAMP__/BT_TIMESTAMP. * internal.h (_cpp_get_file_stat): Prototype. (struct cpp_buffer): Add timestamp. gcc/testsuite/ChangeLog: * gcc.dg/cpp/undef3.c: New test. * gcc.dg/cpp/trad/builtins2.c: New test. From-SVN: r111232
2006-02-18re PR c++/26266 (Trouble with static const data members in template classes)Mark Mitchell
PR c++/26266 * g++.dg/template/static22.C: New test. * g++.dg/template/static23.C: New test. * g++.dg/template/static24.C: New test. * g++.dg/template/non-dependent13.C: New test. * g++.dg/init/member1.C: Tweak error markers. From-SVN: r111230
2006-02-18re PR c++/26266 (Trouble with static const data members in template classes)Mark Mitchell
PR c++/26266 * cp-tree.h (cp_finish_decl): Adjust declaration. (grokbitfield): Likewise. (finish_static_data_member_decl): Likewise. * init.c (constant_value_1): Ensure processing_template_decl when folding non-dependent initializers for static data members of dependent types. Return error_mark_node for erroneous initailizers. * class.c (get_vtable_decl): Use finish_decl, not cp_finish_decl. * decl.c (cp_make_fname_decl): Adjust call to cp_finish_decl. (cp_finish_decl): Add init_const_expr_p parameter. Set DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P here. (finish_decl): Adjust call to cp_finish_decl. (compute_array_index_type): Robustify. (start_method): Use finish_decl, not cp_finish_decl. * rtti.c (emit_tinfo_decl): Likewise. * except.c (initialize_handler_parm): Adjust call to cp_finish_decl. (expand_start_catch_block): Likewise. * cvt.c (build_up_reference): Adjust call to cp_finish_decl. * pt.c (instantiate_class_template): Adjust call to finish_static_data_member_decl. (tsubst_expr): Use finish_decl, not cp_finish_decl. (instantiate_decl): Adjust call to cp_finish_decl. * name-lookup.c (pushdecl_top_level_1): Use finish_decl, not cp_finish_decl. * decl2.c (finish_static_data_member_decl): Add init_const_expr_p parameter. (grokfield): Likewise. * parser.c (cp_parser_condition): Check for constant initializers. (cp_parser_init_declarator): Adjust calls to grokfield and cp_finish_decl. Don't set DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P here. (cp_parser_member_declaration): Likewise. (cp_parser_objc_class_ivars): Likewise. PR c++/26266 * g++.dg/template/static22.C: New test. * g++.dg/template/static23.C: New test. * g++.dg/template/static24.C: New test. * g++.dg/template/non-dependent13.C: New test. From-SVN: r111229
2006-02-18re PR rtl-optimization/25600 (unsigned>>31?-1:0 should be optimized to int>>31)Roger Sayle
PR middle-end/25600 * fold-const.c (fold_binary): Fold (X >> C) != 0 into X < 0 when C is one less than the width of X (and related transformations). * simplify_rtx.c (simplify_unary_operation_1): Transform (neg (lt x 0)) into either (ashiftrt X C) or (lshiftrt X C) depending on STORE_FLAG_VALUE, were C is one less then the width of X. From-SVN: r111226
2006-02-18ffi.c (ffi_closure_helper_SYSV): Remove unused variable and cast integer to ↵Kaz Kojima
void * if needed. * src/sh/ffi.c (ffi_closure_helper_SYSV): Remove unused variable and cast integer to void * if needed. Update the pointer to the FP register saved area correctly. From-SVN: r111225
2006-02-18Daily bump.GCC Administrator
From-SVN: r111223
2006-02-18re PR tree-optimization/26341 (930217-1.c and 931013-3.c ICE at -O2 and ↵Daniel Berlin
above in add_virtual_operand) 2006-02-17 Daniel Berlin <dberlin@dberlin.org> Fix PR tree-optimization/26341 * tree-ssa-operands.c (add_virtual_operand): Remove assert about NAME_MEMORY_TAG's. From-SVN: r111217
2006-02-17re PR target/26255 (internal compiler error: in ↵John David Anglin
reload_cse_simplify_operands, at postreload.c:391) PR target/26255 * pa.md: Create separate HI and QI move patterns for 32-bit and 64-bit with hardware float support, and software float support. Add fcpy alternative to hardware patterns. Add alternatives to copy between general and floating-point registers to the 32-bit pattern. * pa.c (pa_secondary_reload): Don't abort if reload tries to find a secondary reload to load a QI or HI mode constant into a floating point register. * pa32-regs.h (VALID_FP_MODE_P): Allow QImode and HImode. * pa64-regs.h (VALID_FP_MODE_P): Likewise. From-SVN: r111214
2006-02-17re PR target/26255 (internal compiler error: in ↵John David Anglin
reload_cse_simplify_operands, at postreload.c:391) PR target/26255 * gcc.c-torture/compile/pr26255.c: New test case. From-SVN: r111213
2006-02-17re PR target/25630 (darwin-ppc, wrong alignment of nested structs)Andreas Tobler
2006-02-17 Andreas Tobler <a.tobler@schweiz.ch> * testsuite/libffi.call/nested_struct6.c: XFAIL this test until PR25630 is fixed. * testsuite/libffi.call/nested_struct4.c: Likewise. From-SVN: r111208
2006-02-17re PR rtl-optimization/26272 (gcc.c-torture/execute/built-in-setjmp.c fails ↵Andrew Pinski
at -O2 and above on powerpc-darwin) 2006-02-17 Andrew Pinski <pinskia@physics.uc.edu> PR target/26272 * config/rs6000/darwin.md (load_macho_picbase_si): Add pc to the pattern. (load_macho_picbase_di): Likewise. From-SVN: r111206
2006-02-17re PR bootstrap/26161 (Configure tests for pthread.h sometimes need to use ↵Francois-Xavier Coudert
-pthread) PR bootstrap/26161 * configure.ac: Remove AC_CHECK_HEADER for pthread.h. Add comment for the other pthread check. * configure: Regenerate. * config.h.in: Regenerate. From-SVN: r111205
2006-02-17where_10.f90: New test case.Roger Sayle
* gfortran.fortran-torture/execute/where_10.f90: New test case. * gfortran.fortran-torture/execute/where_11.f90: Likewise. * gfortran.fortran-torture/execute/where_12.f90: Likewise. * gfortran.fortran-torture/execute/where_13.f90: Likewise. * gfortran.fortran-torture/execute/where_14.f90: Likewise. * gfortran.fortran-torture/execute/where_15.f90: Likewise. * gfortran.fortran-torture/execute/where_16.f90: Likewise. From-SVN: r111204
2006-02-17MAINTAINERS (Write After Approval): Remove myself.Francois-Xavier Coudert
* MAINTAINERS (Write After Approval): Remove myself. (Language Front End Maintainers): Add myself as fortran 95 maintainer. From-SVN: r111203
2006-02-17Resync.Arnaud Charlet
From-SVN: r111200
2006-02-17expander.adb: Fix typo in commentRamon Fernandez
2006-02-17 Ramon Fernandez <fernandez@adacore.com> Thomas Quinot <quinot@adacore.com> Robert Dewar <dewar@adacore.com> Javier Miranda <miranda@adacore.com> * expander.adb: Fix typo in comment * exp_pakd.adb: Fix typo Minor comment reformatting. * g-dyntab.adb: Minor reformatting * exp_ch6.adb (Register_Interface_DT_Entry): Traverse the list of aliased subprograms to look for the abstract interface subprogram. From-SVN: r111199
2006-02-17s-wchcnv.adb: Document handling of [ on output (we do not change this to ↵Robert Dewar
["5B"] and the new... 2006-02-17 Robert Dewar <dewar@adacore.com> * s-wchcnv.adb: Document handling of [ on output (we do not change this to ["5B"] and the new comments say why not. * gnat_ugn.texi: Add note for -gnatVo that this now includes the cases of type conversions and qualified expressions. Add comments on handling of brackets encoding for Text_IO From-SVN: r111198
2006-02-17a-convec.ads, [...]: (operator "&"): handle potential overflow for large ↵Matthew Heaney
index types 2006-02-17 Matthew Heaney <heaney@adacore.com> * a-convec.ads, a-convec.adb: (operator "&"): handle potential overflow for large index types (Insert): removed Contraint_Error when using large index types (Insert_Space): removed Constraint_Error for large index types (Length): moved constraint check from Length to Insert * a-coinve.ads, a-coinve.adb: Stream attribute procedures are declared as not null access. Explicit raise statements now include an exception message. (operator "&"): handle potential overflow for large index types (Insert): removed Contraint_Error when using large index types (Insert_Space): removed Constraint_Error for large index types (Length): moved constraint check from Length to Insert From-SVN: r111197
2006-02-17snames.ads, snames.adb: New standard names for new project attributes...Vincent Celier
2006-02-17 Vincent Celier <celier@adacore.com> * snames.ads, snames.adb: New standard names for new project attributes: archive_builder, archive_indexer, compiler_pic_option, config_body_file_name, config_body_file_name_pattern, config_file_switches, config_file_unique, config_spec_file_name, config_spec_file_name_pattern, default_builder_switches, default_global_compiler_switches, default_language, dependency_file_kind, global_compiler_switches, include_path, include_path_file, language_kind, linker_executable_option, linker_lib_dir_option, linker_lib_name_option, mapping_file_switches, roots, runtime_project. From-SVN: r111196
2006-02-17sem_res.adb (Resolve_Type_Conversion): In case of conversion to an abstract ↵Javier Miranda
interface type... 2006-02-17 Javier Miranda <miranda@adacore.com> * sem_res.adb (Resolve_Type_Conversion): In case of conversion to an abstract interface type, the static analysis is not enough to know if the interface is implemented or not by the source tagged type. Hence we must pass the work to the expander to generate the required code to evaluate the conversion at run-time. (Resolve_Equality_Op): Do not apply previous transformation if expansion is disasbled, to prevent anomalies when locating global references in a generic unit. From-SVN: r111195
2006-02-17sem_ch6.adb (Build_Body_To_Inline): Enforce the rule that in order to inline ↵Ed Schonberg
a function that returns an... 2006-02-17 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Build_Body_To_Inline): Enforce the rule that in order to inline a function that returns an unconstrained type, the return expression must be the first variable declared in the body of the function. From-SVN: r111194
2006-02-17sem_ch3.adb (Build_Discriminated_Subtype): In case of concurrent type we ↵Javier Miranda
cannot inherit the primitive operations... 2006-02-17 Javier Miranda <miranda@adacore.com> Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Build_Discriminated_Subtype): In case of concurrent type we cannot inherit the primitive operations; we inherit the Corresponding_Record_Type (which has the list of primitive operations). (Check_Anonymous_Access_Types): When creating anonymous access types for access components, use Rewrite in order to preserve the tree structure, for ASIS use. (Analyze_Object_Declaration): For limited types with access discriminants with defaults initialized by an aggregate, obtain subtype from aggregate as for other mutable types. (Derived_Type_Declaration): If the derived type is a limited interface, set the corresponding flag (Is_Limited_Record is not sufficient). From-SVN: r111193
2006-02-17sem_ch12.adb (Analyze_Package_Instantiation): Inline_Now is false if the ↵Ed Schonberg
current instance is nested within another instance... 2006-02-17 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Analyze_Package_Instantiation): Inline_Now is false if the current instance is nested within another instance in a child unit. From-SVN: r111192
2006-02-17sem_ch10.adb (Analyze_With_Clause): If the unit is a subprogram instantiation...Ed Schonberg
2006-02-17 Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Analyze_With_Clause): If the unit is a subprogram instantiation, the corresponding entity is the related_instance of the wrapper package created for the instance. From-SVN: r111191
2006-02-17Makefile.in: Use VMS64 specialized versions of several units in Interfaces.C ↵Vasiliy Fofanov
hierarchy to be... 2006-02-17 Vasiliy Fofanov <fofanov@adacore.com> * Makefile.in: Use VMS64 specialized versions of several units in Interfaces.C hierarchy to be compatible with HP C default size choices. Use the default version of Ada.Synchronous_Task_Control for VxWorks 653. From-SVN: r111190
2006-02-17init.c (facility_resignal_table): new arrayVasiliy Fofanov
2006-02-17 Vasiliy Fofanov <fofanov@adacore.com> * init.c (facility_resignal_table): new array (__gnat_default_resignal_p): enhance default predicate to resignal if VMS condition has one of the predefined facility codes. From-SVN: r111189
2006-02-17g-os_lib.adb (Copy_File): Make sure that if From has an Invalid_FD, then we ↵Robert Dewar
close To if it is valid. 2006-02-17 Robert Dewar <dewar@adacore.com> * g-os_lib.adb (Copy_File): Make sure that if From has an Invalid_FD, then we close To if it is valid. From-SVN: r111188
2006-02-17freeze.adb (Statically_Discriminated_Components): Return false if the bounds ↵Ed Schonberg
of the type of the discriminant are not static... 2006-02-17 Ed Schonberg <schonberg@adacore.com> * freeze.adb (Statically_Discriminated_Components): Return false if the bounds of the type of the discriminant are not static expressions. * sem_aggr.adb (Check_Static_Discriminated_Subtype): Return false if the bounds of the discriminant type are not static. From-SVN: r111187
2006-02-17exp_dbug.adb (Debug_Renaming_Declaration): Indicate that the entity must be ↵Ed Schonberg
materialized when... 2006-02-17 Ed Schonberg <schonberg@adacore.com> * exp_dbug.adb (Debug_Renaming_Declaration): Indicate that the entity must be materialized when the renamed expression is an explicit dereference. From-SVN: r111186
2006-02-17exp_ch4.adb (Expand_N_Allocator): If the allocated object is accessed ↵Javier Miranda
through an access to class-wide interface... 2006-02-17 Javier Miranda <miranda@adacore.com> Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Expand_N_Allocator): If the allocated object is accessed through an access to class-wide interface we force the displacement of the pointer to the allocated object to reference the corresponding secondary dispatch table. (Expand_N_Op_Divide): Allow 64 bit divisions by small power of 2, if Long_Shifts are supported on the target, even if 64 bit divides are not supported (configurable run time mode). (Expand_N_Type_Conversion): Do validity check if validity checks on operands are enabled. (Expand_N_Qualified_Expression): Do validity check if validity checks on operands are enabled. From-SVN: r111185
2006-02-17s-taprop-irix.adb, [...] (Set_False, [...]): Add Abort_Defer/Undefer pairs ↵Jose Ruiz
to avoid the possibility of a task being aborted... 2006-02-17 Jose Ruiz <ruiz@adacore.com> * s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-vms.adb, s-taprop-mingw.adb, s-taprop-posix.adb, s-taprop-vxworks.adb, s-taprop-lynxos.adb, s-taprop-tru64.adb (Set_False, Set_True, Suspend_Until_True): Add Abort_Defer/Undefer pairs to avoid the possibility of a task being aborted while owning a lock. From-SVN: r111184
2006-02-17re PR ada/26315 (ACATS failures c43208b c85006a c85006d cd92001)Eric Botcazou
2006-02-17 Eric Botcazou <botcazou@adacore.com> PR ada/26315 * utils2.c (find_common_type): If both input types are BLKmode and have the same constant size, keep using the first one. * bindgen.adb: (Gen_Versions_Ada): Revert previous workaround. * decl.c (gnat_to_gnu_entity): Only check TREE_OVERFLOW for a constant. * misc.c (gnat_handle_option): New case for -Woverlength-strings. From-SVN: r111183
2006-02-17sem_ch4.adb (Find_Boolean_Types): If one of the operands is an aggregate...Ed Schonberg
2006-02-17 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Find_Boolean_Types): If one of the operands is an aggregate, check the interpretations of the other operand to find one that may be a boolean array. (Analyze_Selected_Component): Fix flow-of-control typo in case where the prefix is a private extension. From-SVN: r111182
2006-02-17stacktrace.cc (GetStackTraceElements): Call ↵Andrew Haley
gnu::gcj::runtime::NameFinder::removeUnknown() to determine if... 2006-02-16 Andrew Haley <aph@redhat.com> * stacktrace.cc (GetStackTraceElements): Call gnu::gcj::runtime::NameFinder::removeUnknown() to determine if non-Java frames should be removed from a printed stack trace. Pass methodName to getLineNumberForFrame(). (getLineNumberForFrame): Set method_name from info.dli_sname. * gnu/gcj/runtime/NameFinder.java (removeUnknown): New method. (remove_unknown): New variable. * include/java-stack.h (_Jv_StackTrace::getLineNumberForFrame): Add methodName arg. From-SVN: r111181
2006-02-17trans-common.c: Include rtl.h earlier.Richard Sandiford
gcc/fortran/ * trans-common.c: Include rtl.h earlier. * trans-decl.c: Likewise. From-SVN: r111178
2006-02-17re PR libstdc++/26250 (stringbuf::overflow() fails to set egptr() same as ↵Paolo Carlini
epptr()) 2006-02-17 Paolo Carlini <pcarlini@suse.de> Howard Hinnant <hhinnant@apple.com> PR libstdc++/26250 * include/bits/sstream.tcc (basic_stringbuf<>::overflow): Tweak to leave epgtr() just past the new write position, as per the relevant bits of 27.7.1.3/8 (not changed by DR 432). * testsuite/27_io/basic_stringbuf/overflow/char/26250.cc: New. * testsuite/27_io/basic_stringbuf/overflow/wchar_t/26250.cc: Same. * docs/html/ext/howto.html: Add entries for DR 169 and DR 432. * include/std/std_sstream.h (basic_stringbuf<>::_M_sync): Move out of line... * include/bits/sstream.tcc: ... here. Co-Authored-By: Howard Hinnant <hhinnant@apple.com> From-SVN: r111177
2006-02-16tree-vrp.c (set_value_range_to_nonnegative): New function.Jeff Law
* tree-vrp.c (set_value_range_to_nonnegative): New function. (vrp_expr_computes_nonnegative, ssa_name_nonnegative_p): Likewise. (ssa_name_nonzero_p): Likewise. (get_value_range): Return NULL if VRP is not running. (extract_range_from_expr): Fallback to tree_expr_XXX_p if VRP routines do not discover a range. (vrp_finalize): Clear VR_VALUE to indicate VRP is not running. * tree.h (ssa_name_nonzero_p, ssa_name_nonnegative_p): Prototype. * fold-const.c (tree_expr_nonzero_p): For SSA_NAMEs, query VRP. (tree_expr_nonnegative_p): Similarly. * tree-ssa-dom.c (nonzero_vars, nonzero_vars_stack): Remove. (restore_nonzero_vars_to_original_value): Remove. (unsafe_associative_fp_binop): Remove. (tree_ssa_dominator_optimize): Remove initialization and finalization of nonzero_vars and nonzero_vars_stack. (dom_opt_initialize_block): No longer push marker on nonzero_vars_stack. (dom_opt_finalize_block): No longer call restore_nonzero_vars_to_original_value. (record_equivalences_from_phis): No longer look for nonzero PHI arguments. (cprop_into_successor_phis): No longer propagate nonzero property into PHI arguments. Lose unused argument. Caller updated. (record_equivalences_from_stmt): No longer record nonzero values for SSA_NAMEs. (lookup_avail_expr): No longer use nonzero_vars. * gcc.dg/tree-ssa/vrp24.c: Update expected output. * gcc.dg/tree-ssa/vrp26.c: New test. From-SVN: r111175
2006-02-16stor-layout.c (set_sizetype): Set TYPE_MAX_VALUE properly for sizetype when ↵Jeff Law
sizetype is unsigned. * stor-layout.c (set_sizetype): Set TYPE_MAX_VALUE properly for sizetype when sizetype is unsigned. From-SVN: r111170
2006-02-17Daily bump.GCC Administrator
From-SVN: r111168
2006-02-16re PR target/25603 (Miscompiled FORTRAN program)Denis Nagorny
2006-02-16 Denis Nagorny <denis_nagorny@linux.intel.com> PR rtl-optimization/25603 * reload.c (reg_inc_found_and_valid_p): New. Check REG_INC note. (regno_clobbered_p): Use it. Reusing SETS argument for REG_INC case. * reload1.c (choose_reload_regs): Added call of regno_clobbered_p with new meaning of SETS. From-SVN: r111162
2006-02-16re PR target/20353 (uclibc does not provide C99 math functions)Joseph Myers
gcc: PR target/20353 PR target/24578 PR target/24837 * config/linux.opt: New file. * config/linux.h (CHOOSE_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (TARGET_C99_FUNCTIONS): Define depending on TARGET_GLIBC. * config.gcc (*-*-linux*): Define extra_options. (*-*-*uclibc*): Define UCLIBC_DEFAULT. (arm*-*-linux-gnueabi): Change to arm*-*-linux-*eabi. * config/arm/linux-eabi.h (LINUX_TARGET_INTERPRETER): Change to GLIBC_DYNAMIC_LINKER. * config/arm/linux-elf.h (LINUX_TARGET_INTERPRETER): Likewise. (LINUX_TARGET_LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/mips/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * doc/invoke.texi (GNU/Linux Options): New section. gcc/testsuite: * gcc.dg/builtins-config.h (HAVE_C99_RUNTIME): Don't define if __UCLIBC__ is defined. libstdc++-v3: PR libstdc++/14939 * config/os/uclibc/ctype_base.h, config/os/uclibc/ctype_inline.h, config/os/uclibc/ctype_noninline.h, config/os/uclibc/os_defines.h: New. * acinclude.m4 (GLIBCXX_CONFIGURE): Test whether using uClibc. * configure.host: Use os/uclibc for uClibc. * crossconfig.m4 (*-linux*): Use link tests. Don't hardcode presence of math functions. * configure: Regenerate. From-SVN: r111160
2006-02-16return_dbl.c: New test case.Andreas Tobler
2006-02-16 Andreas Tobler <a.tobler@schweiz.ch> * testsuite/libffi.call/return_dbl.c: New test case. * testsuite/libffi.call/return_dbl1.c: Likewise. * testsuite/libffi.call/return_dbl2.c: Likewise. * testsuite/libffi.call/return_fl.c: Likewise. * testsuite/libffi.call/return_fl1.c: Likewise. * testsuite/libffi.call/return_fl2.c: Likewise. * testsuite/libffi.call/return_fl3.c: Likewise. * testsuite/libffi.call/closure_fn6.c: Likewise. From-SVN: r111156
2006-02-16env.c (__gnat_setenv): Use size_t.Eric Botcazou
* env.c (__gnat_setenv): Use size_t. (__gnat_unsetenv): Likewise. (__gnat_clearenv): Likewise. From-SVN: r111155
2006-02-16sparc.md (setjmp): Rewrite.Eric Botcazou
* config/sparc/sparc.md (setjmp): Rewrite. (setjmp_32): Delete. (setjmp_64): Likewise. From-SVN: r111154
2006-02-16re PR fortran/26224 (ICE in C$OMP SINGLE / END SINGLE COPYPRIVATE( ) block)Jakub Jelinek
PR fortran/26224 * parse.c (parse_omp_do, parse_omp_structured_block): Call gfc_commit_symbols and gfc_warning_check. * gfortran.dg/gomp/pr26224.f: New test. From-SVN: r111153
2006-02-16re PR middle-end/26316 (loop-invariant miscompiles openmp.c)Jakub Jelinek
* openmp.c (resolve_omp_clauses): Add a dummy case label to workaround PR middle-end/26316. From-SVN: r111152
2006-02-16nested_struct2.c: Remove ffi_type_mylong definition.Andreas Tobler
2006-02-16 Andreas Tobler <a.tobler@schweiz.ch> * testsuite/libffi.call/nested_struct2.c: Remove ffi_type_mylong definition. * testsuite/libffi.call/ffitest.h: Add ffi_type_mylong definition here to be used by other test cases too. * testsuite/libffi.call/nested_struct10.c: New test case. * testsuite/libffi.call/nested_struct9.c: Likewise. * testsuite/libffi.call/nested_struct8.c: Likewise. * testsuite/libffi.call/nested_struct7.c: Likewise. * testsuite/libffi.call/nested_struct6.c: Likewise. * testsuite/libffi.call/nested_struct5.c: Likewise. * testsuite/libffi.call/nested_struct4.c: Likewise. From-SVN: r111151