Commit Graph

75019 Commits

Author SHA1 Message Date
H.J. Lu a635db3deb re PR fortran/27662 ([4.1 only]: Transpose doesn't work on function return)
gcc/fortran/

2006-05-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR fortran/27662
	* trans-array.c (gfc_conv_expr_descriptor): Don't zere the
	first stride to indicate a temporary.
	* trans-expr.c (gfc_conv_function_call): Likewise.

gcc/testsuite/

2006-05-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR fortran/27662
	* gfortran.dg/temporary_1.f90: New file.

From-SVN: r113922
2006-05-19 17:28:14 -07:00
GCC Administrator ab9ddafbc0 Daily bump.
From-SVN: r113920
2006-05-20 00:17:16 +00:00
Paolo Carlini 9339bda82d 9661-1.cc: Avoid leaking the semaphores if a VERIFY fails.
2006-05-19  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/27_io/objects/wchar_t/9661-1.cc: Avoid leaking the
	semaphores if a VERIFY fails.
	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
	* testsuite/27_io/objects/char/7.cc: Likewise.
	* testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise.
	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.

From-SVN: r113916
2006-05-19 23:56:12 +00:00
Daniel Berlin 23249ac43c re PR rtl-optimization/26855 (ICE in add_deps_for_def with -fmodulo-sched -maltivec)
2006-05-19  Daniel Berlin  <dberlin@dberlin.org>
            Kenneth Zadeck <zadeck@naturalbridge.com>

	PR rtl-optimization/26855

	* df-scan.c (mw_reg_pool, mw_link_pool): New allocation pools for
	multiword refs.
	(df_scan_alloc): Added code to properly handle multiword hard
	registers and add all_blocks parameter.
	(df_scan_free_internal, df_insn_refs_delete, df_ref_record): Added
	code to properly handle multiword hard registers.
	(df_rescan_blocks): Added code to remove deleted blocks from
	bitmap.
	(df_ref_create_structure, df_ref_record): Added code to properly
	handle subregs.
	(df_ref_record_1): Changed DF_REF_CLOBBER into DF_REF_MUST_CLOBBER
	and set DF_REF_PARTIAL.
	(df_defs_record): Changed DF_REF_CLOBBER into DF_REF_MUST_CLOBBER.
	(df_uses_record): Added DF_REF_PARTIAL for subreg. 
	(df_scan_add_problem): Added flags parameter.
	(df_ref_create_structure): Changed switching structure.
	(df_bb_refs_record): Fixed case where duplicate artificial refs
	were created.  Changed location of flags.
	(df_record_entry_block_defs): Added code to make stack pointer
	live in entry block.  Refined cases where frame pointer is needed.
	Changed location of flags.
	(df_record_exit_block_uses, df_insn_refs_record): Changed location of flags.
	(df_set_state): Removed function.
	(df_grow_reg_info, df_reg_chain_unlink, df_ref_remove,
	df_insn_create_insn_record, df_insn_refs_delete, 
	df_ref_create_structure): Formatting changes.  
	* df-core.c (df_mvs_dump, df_set_flags, df_clear_flags,
	df_delete_basic_block): New function.
	(df_init): Changed location of flags.
	(df_add_problem): Added flags parameter and the way flags are
	processed.
	(df_insn_uid_debug, df_ref_debug, debug_df_defno, debug_df_ref,
	debug_df_chain): Improved debugging output.
	(df_insn_debug, df_insn_uid_debug): Added multiword reg support.
	(df_refs_chain_dump): Removed df parameter.
	(df_iterative_dataflow): Added consistency check.
	(df_prune_to_subcfg): Made public.
	(df_analyze_problem): Added blocks_to_init parameter and made
	public.
	(df_ref_record, df_bb_refs_record, df_mark_reg, 
	 df_record_exit_block_uses): Whitespace changes.
	(df_dump): Whitespace changes.
	* df.h: Some reordering to remove forward references.
	(df_ref_flags.DF_REF_MW_HARDREG, DF_REF_PARTIAL,
	DF_REF_MUST_CLOBBER, DF_REF_MAY_CLOBBER): New fields.
	(df_ref_flags.DF_REF_CLOBBER): Deleted field.
	(dataflow.flags): New field.
	(df.flag): Deleted field.
	(df_alloc_function): Added additional bitmap parameter.
	(df_dependent_problem_function): New type.
	(df_problem.changeable_flags): New field.
	(df_ref_flags.DF_REF_DIES_AFTER_THIS_USE, DF_SCAN_INITIAL,
	DF_SCAN_GLOBAL, DF_SCAN_POST_ALLOC, df_state): Removed.
	(df_mw_hardreg): New struct.
	(DF_INSN_UID_MWS): New macro.
	(df_refs_chain_dump, df_ref_debug, df_chain_dump): Removed df
	parameter.
	(df_add_problem, df_ru_add_problem, df_rd_add_problem,
	df_lr_add_problem, df_ur_add_problem, df_urec_add_problem,
	df_ri_add_problem, df_scan_add_problem): Added flags parameter.
	(df_set_state): Removed function.
	(df_set_flags, df_clear_flags, df_delete_basic_block) New functions.
	* df-problems.c (df_chain_dump): Removed df parameter.
	(df_ru_alloc, df_rd_alloc, df_lr_alloc, df_ur_alloc,
	df_urec_alloc, df_chain_alloc, df_ri_alloc): Added all blocks
	parameter.
	(df_ru_alloc, df_rd_alloc): Now resets all blocks.
	(df_rd_bb_local_compute_process_def, df_ur_bb_local_compute,
	df_chain_create_bb, df_create_unused_note, df_ri_bb_compute):
	Split DF_REF_CLOBBER into DF_REF_MAY_CLOBBER and
	DF_REF_MUST_CLOBBER cases.
	(df_ru_bb_local_compute_process_def,
	df_rd_bb_local_compute_process_def, df_lr_bb_local_compute,
	df_lr_bb_local_compute, df_ur_bb_local_compute,
	df_chain_create_bb): Made subreg aware.
	(df_ru_bb_local_compute, df_rd_bb_local_compute,
	df_lr_bb_local_compute, df_lr_bb_local_compute,
	df_chain_create_bb): Cleanup to use proper macros.
	(df_ur_local_finalize, df_urec_local_finalize): Removed unnecessary
	code to fixup bitvectors.
	(df_ri_alloc): Cleared lifetime.
	(df_ignore_stack_reg, df_kill_notes, df_set_notes_for_mw,
	df_create_unused_note): New function.
	(df_ri_bb_compute, df_ri_compute): Added code to create/update
	REG_DEAD and REG_UNUSED notes as well as register information.
	(df_ru_dump, df_rd_dump, df_lr_dump, df_ur_dump, df_urec_dump,
	df_chains_dump): Fixed crash if problem was never run.
	(df_ru_add_problem, df_rd_add_problem, df_lr_add_problem,
	df_ur_add_problem, df_urec_add_problem, df_chain_add_problem,
	df_ri_add_problem): Processes flags in uniform manner.
	(df_ru_alloc, df_ru_local_compute, df_ru_confluence_n, df_ru_free,
	df_ru_dump, df_rd_local_compute, df_rd_confluence_n, df_rd_free,
	df_rd_dump, df_urec_free_bb_info): Formatting changes.
	(df_ru_free_bb_info, df_ru_bb_local_compute, df_ru_dump,
	df_rd_free_bb_info, df_rd_bb_local_compute_process_def,
	df_rd_bb_local_compute, df_rd_dump, df_lr_free_bb_info,
	df_lr_bb_local_compute, df_lr_local_compute, df_ur_free_bb_info,
	df_ur_dump, df_urec_free_bb_info, df_urec_dump,
	df_chain_create_bb, df_ri_bb_compute): Whitespace changes.
	* modulo-sched.c (sms_schedule): Added flag parameter to calls.
	* see.c (see_initialize_data): Ditto.
	* final.c (rest_of_clean_state) Added regstack_completed.
	* rtl.h (regstack_completed): Ditto.
	* reg-stack.c (regstack_completed): Ditto.

From-SVN: r113915
2006-05-19 21:18:23 +00:00
Mike Stump d593cb3da7 c-tree.h (default_conversion): Remove.
* c-tree.h (default_conversion): Remove.
	* c-common.h (default_conversion): Add.

cp:
	* typeck.c (default_conversion): Remove static.

From-SVN: r113914
2006-05-19 20:08:01 +00:00
Andreas Schwab 59fc0cc793 * g++.dg/other/unused1.C: Also match "stringz".
From-SVN: r113913
2006-05-19 19:19:22 +00:00
Mark Mitchell eaf6fb906e re PR c++/26433 (Syntax error using __FUNCTION__ in catch handler)
PR c++/26433
	* cp-tree.h (begin_function_try_block): Change prototype.
	(finish_function_handler_sequence): Likewise.
	* parser.c (cp_parser_function_try_block): Adjust calls.
	* pt.c (tsubst_expr): Adjust calls.
	* semantics.c (begin_function_try_block): Create an artificial
	outer scope.
	(finish_function_handler_sequence): Close it.
	PR c++/26433
	* g++.dg/template/fntry1.C: New test.

From-SVN: r113911
2006-05-19 16:04:22 +00:00
Ranjit Mathew affaef6e07 ChangeLog: Correct incorrect GNU Classpath version in the entry for the latest import.
* ChangeLog: Correct incorrect GNU Classpath version in the
	entry for the latest import.

From-SVN: r113910
2006-05-19 15:58:19 +00:00
Andreas Tobler 48755f5169 config-int.h: Delete, it is a generated file.
2006-05-19  Andreas Tobler  <a.tobler@schweiz.ch>

	* include/config-int.h: Delete, it is a generated file.

From-SVN: r113909
2006-05-19 17:31:57 +02:00
Andreas Tobler 0d837fb32d config-int.h: Delete, it is a generated file.
2006-05-19  Andreas Tobler  <a.tobler@schweiz.ch>

	* include/config-int.h: Delete, it is a generated file.

From-SVN: r113908
2006-05-19 17:23:31 +02:00
Zdenek Dvorak 04dce5a4f3 tree-vrp.c (valid_value_p): New function.
* tree-vrp.c (valid_value_p): New function.
	(adjust_range_with_scev): Fail if the value of bound is not
	simple.

From-SVN: r113907
2006-05-19 13:24:42 +00:00
Richard Sandiford fa807ff666 linux-unwind.h: Include <asm/unistd.h>
* config/mips/linux-unwind.h: Include <asm/unistd.h>
	(mips_fallback_frame_state): Use syscall numbers to determine
	the appropriate li instruction for the current ABI.  Only use
	__NR_sigreturn for o32.

From-SVN: r113906
2006-05-19 12:52:26 +00:00
Nicolas Setton 721a8ac58b langhooks.h (struct lang_hooks): Add dwarf_name language hook.
* langhooks.h (struct lang_hooks): Add dwarf_name language hook.
	* langhooks.c (lhd_dwarf_name): New function.
	* langhooks-def.h (lhd_dwarf_name): Declare.
	(LANG_HOOKS_DWARF_NAME): New macro, defaults to lhd_dwarf_name.
	* dwarf2out.c (dwarf2_name): Use the dwarf_name	language hook.
	* ada/misc.c (gnat_dwarf_name): New function.
	(LANG_HOOKS_DWARF_NAME): Define to gnat_dwarf_name.

From-SVN: r113905
2006-05-19 12:31:50 +00:00
Mike Stump 6a1f861162 re PR c/27673 (Gcc failed to bootstrap on Linux)
PR c/27673
	* c-parser.c (c_parser_parms_declarator): Initialize had_vla_unspec.
	(c_parser_parms_list_declarator): Likewise.

From-SVN: r113904
2006-05-19 10:06:17 +00:00
Richard Sandiford baffad1f3d re PR target/22209 (libgfortran unresolvable symbols on irix6.5)
* libgcc2.c (MIN_UNITS_PER_WORD): Move default definition from
	libgcc2.h.
	(LIBGCC2_UNITS_PER_WORD): Provide default definition, using old
	MIN_UNITS_PER_WORD logic from libgcc2.h.  Do nothing if
	LIBGCC2_UNITS_PER_WORD > MIN_UNITS_PER_WORD.
	* libgcc2.h (MIN_UNITS_PER_WORD): Remove definition from here.
	Use LIBGCC2_UNITS_PER_WORD rather than MIN_UNITS_PER_WORD to
	determine the size of Wtype, etc.
	* mklibgcc.in (LIB2_SIDITI_CONV_FUNCS): New argument.
	(swfloatfuncs): New variable.
	(dwfloatfuncs): Likewise.
	(lib2funcs): Remove floating-point conversion functions from
	initial assignment.  Use LIB2_SIDITI_CONV_FUNCS to determine
	the set of conversion routines needed.  Allow entries to specify
	an object name, filename and word size.  Update users accordingly.
	* Makefile.in (libgcc.mk): Pass LIB2_SIDITI_CONV_FUNCS.
	* config/mips/t-mips (LIB2_SIDITI_CONV_FUNCS): Define.

	Revert:

	2006-02-08  Roger Sayle  <roger@eyesopen.com>

	PR target/22209
	* config/fixtfdi.c: New libgcc source file.
	* config/fixunstfdi.c: New source file.
	* config/floatditf.c: New source file.
	* config/floatunditf.c: New souce file.
	* config/mips/t-iris6 (LIB2FUNCS_EXTRA): Include the new source
	files above instead of config/mips/_tilib.c.
	* config/mips/t-linux64 (LIB2FUNCS_EXTRA): Likewise.

From-SVN: r113903
2006-05-19 08:05:39 +00:00
Mark Mitchell 41990f9646 re PR c++/27471 (ICE within build_c_cast cp/typeck.c:5434)
PR c++/27471
	PR c++/27506
	* typeck.c (decay_conversion): Convert bitfields to their declared
	types here.  Improve documentation.  Avoid use of cp_convert.
	(default_conversion): Make it static.  Perform integral promotions
	before lvalue-to-rvalue, function-to-pointer, and array-to-pointer
	conversions.
	* init.c (build_init): Remove.
	(expand_default_init): Do not call rvalue.
	* call.c (null_ptr_cst_p): Robustify.
	(build_conditional_expr): Tidy.
	* except.c (build_throw): Do not perform lvalue-to-rvalue
	conversion on operand before initializing temporary.
	* tree.c (convert.h): Include it.
	(convert_bitfield_to_declared_type): Use convert_to_integer, not
	cp_convert.
	(rvalue): Don't convert bitfields to their declared type here.
	* cp-tree.h (build_init): Remove.
	(default_conversion): Likewise.
	* typeck2.c (build_m_component_ref): Do not perform
	lvalue-to-rvalue, function-to-pointer, or array-to-pointer
	conversions here.  Correct error message.
	PR c++/27471
	PR c++/27506
	* g++.dg/conversion/bitfield5.C: New test.
	* g++.dg/conversion/bitfield6.C: New test.

From-SVN: r113902
2006-05-19 03:01:14 +00:00
John David Anglin 84e2e37098 ffi.c (ffi_prep_args_pa32): Load floating point arguments from stack slot.
* pa/ffi.c (ffi_prep_args_pa32): Load floating point arguments from
	stack slot.

From-SVN: r113901
2006-05-19 01:20:22 +00:00
Mike Stump cc80bbd05f Whitespace fixups
From-SVN: r113900
2006-05-19 01:07:10 +00:00
GCC Administrator 86164ccb63 Daily bump.
From-SVN: r113898
2006-05-19 00:17:15 +00:00
John David Anglin 03be9d6b71 t-hpux-shlib (SHLIB_LINK): Remove `-lc'.
* pa/t-hpux-shlib (SHLIB_LINK): Remove `-lc'.
	* pa/pa-hpux11.h (LIB_SPEC): Update comment.

From-SVN: r113894
2006-05-19 00:12:01 +00:00
Mike Stump c22cacf346 Whitespace fixups
From-SVN: r113893
2006-05-18 22:16:23 +00:00
Mike Stump e836620206 Whitespace fixups
From-SVN: r113892
2006-05-18 21:27:39 +00:00
Tom Tromey 578fdcb215 source.am, [...]: Rebuilt.
* source.am, Makefile.in: Rebuilt.
	* Makefile.am (property_files): Removed.
	* scripts/makemake.tcl (properties_map): New global.
	(properties_files): Likewise.
	(emit_property_files): New proc.
	(scan_packages): Scan META-INF.
	Print property_files variable.  Scan classpath/resource.

From-SVN: r113891
2006-05-18 18:59:03 +00:00
Tom Tromey e389defe26 special.exp (gcj_special_pr21115): Renamed.
* testsuite/libjava.special/special.exp (gcj_special_pr21115):
	Renamed.
	(gcj_write_and_byte_compile): New proc.
	(gcj_special_lazy_illegal_access): Likewise.

From-SVN: r113890
2006-05-18 18:51:35 +00:00
Mike Stump a1d1988f99 Canonicalize a little
From-SVN: r113889
2006-05-18 18:44:36 +00:00
Mike Stump 52ffd86eb6 Fix up vla, vm and [*] sematics.
PR c/18740
	PR c/7948
	PR c/25802
	* c-tree.h (struct c_arg_info): Add had_vla_unspec.
	(c_vla_unspec_p): Add.
	(c_vla_type_p): Add.
	* c-decl.c (struct c_scope): Add had_vla_unspec.
	(build_array_declarator): Add support for [*].
	(grokdeclarator): Likewise.
	(grokparms): Likewise.
	(get_parm_info): Likewise.
	* c-objc-common.c (c_vla_unspec_p): Likewise.
	* c-objc-common.h (LANG_HOOKS_TREE_INLINING_VAR_MOD_TYPE_P): Likewise.
	* c-parser.c (c_parser_typeof_specifier): Evaluate arguments to
	typeof when argument is a variably modified type not inside sizeof or alignof.
	(c_parser_direct_declarator_inner): Propagate errors.
	(c_parser_sizeof_expression): Add support for [*].
	* c-typeck.c (c_vla_type_p): Add.
	(composite_type): Add support for vla compositing.
	(comptypes_internal): Add support for vla compatibility.
	(c_expr_sizeof_expr): Evaluate vla arguments.
	* tree.c (variably_modified_type_p): Update comment for [*].

testsuite:
	* gcc.dg/c90-arraydecl-1.c: Update for vla, vm [*] fixups.
	* gcc.dg/vla-4.c: Add.
	* gcc.dg/vla-5.c: Add.
	* gcc.dg/vla-6.c: Add.

From-SVN: r113888
2006-05-18 18:22:12 +00:00
Mark Wielaard 4f9533c772 Imported GNU Classpath 0.90
Imported GNU Classpath 0.90
       * scripts/makemake.tcl: LocaleData.java moved to gnu/java/locale.

       * sources.am: Regenerated.
       * gcj/javaprims.h: Regenerated.
       * Makefile.in: Regenerated.
       * gcj/Makefile.in: Regenerated.
       * include/Makefile.in: Regenerated.
       * testsuite/Makefile.in: Regenerated.

       * gnu/java/lang/VMInstrumentationImpl.java: New override.
       * gnu/java/net/local/LocalSocketImpl.java: Likewise.
       * gnu/classpath/jdwp/VMMethod.java: Likewise.
       * gnu/classpath/jdwp/VMVirtualMachine.java: Update to latest
       interface.
       * java/lang/Thread.java: Add UncaughtExceptionHandler.
       * java/lang/reflect/Method.java: Implements GenericDeclaration and
       isSynthetic(),
       * java/lang/reflect/Field.java: Likewise.
       * java/lang/reflect/Constructor.java
       * java/lang/Class.java: Implements Type, GenericDeclaration,
       getSimpleName() and getEnclosing*() methods.
       * java/lang/Class.h: Add new public methods.
       * java/lang/Math.java: Add signum(), ulp() and log10().
       * java/lang/natMath.cc (log10): New function.
       * java/security/VMSecureRandom.java: New override.
       * java/util/logging/Logger.java: Updated to latest classpath
       version.
       * java/util/logging/LogManager.java: New override.

From-SVN: r113887
2006-05-18 17:29:21 +00:00
Michael Matz eaec4980e1 re PR target/27599 (build failure on mingw)
PR target/27599
	* config.host: Make assignments to host_xmake_file cumulative.
	* config.host (*-darwin*): Test $host, not $target.

From-SVN: r113886
2006-05-18 13:19:27 +00:00
Mark Shinwell 293235bc2a Added myself (Mark Shinwell) to MAINTAINERS.
From-SVN: r113885
2006-05-18 11:51:08 +00:00
Danny Smith e94ee02798 cxxabi.h (class __vmi_class_type_info): Correct typo in comment.
* libsupc++/cxxabi.h (class __vmi_class_type_info): Correct typo in comment.
	* docs/doxygen/doxygroups.cc (__cxa_demangle): Correct typo in comment.

From-SVN: r113884
2006-05-18 08:12:40 +00:00
Francois-Xavier Coudert 223f9d5aaa re PR fortran/27552 (-fdump-parse-tree doesn't like Holleriths (but then, who does?))
2006-05-18  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
            Feng Wang  <fengwang@nudt.edu.cn>

        PR fortran/27552
        * dump-parse-tree.c (gfc_show_expr): Deal with Hollerith constants.
        * data.c (create_character_intializer): Set from_H flag if character is
        initialized by Hollerith constant.


Co-Authored-By: Feng Wang <fengwang@nudt.edu.cn>

From-SVN: r113881
2006-05-18 02:31:41 +00:00
Stuart Hastings 3393294636 i386.opt (-mstackrealign): New flag.
* gcc/config/i386/i386.opt (-mstackrealign): New flag.  *
	gcc/config/i386/i386.c (force_align_arg_pointer): New attribute.
	(ix86_handle_cconv_attribute): Emit error when
	force_align_arg_pointer attribute collides with too many regparms.
	(ix86_function_regparm): Limit regparms when used with
	force_align_arg_pointer attribute.  (ix86_internal_arg_pointer):
	Support stack-realigning prologue in non-main functions.  Emit
	warning for nested functions under -mstackrealign, emit error for
	nested functions with force_align_arg_pointer attribute.
	* gcc/doc/extend.texi (force_align_arg_pointer): Document it.
	* gcc/doc/invoke.texi (-mstackrealign): Document it.
	* testsuite/gcc.target/i386/20060512-1.c: New.
	* testsuite/gcc.target/i386/20060512-2.c: New.
	* testsuite/gcc.target/i386/20060512-3.c: New.
	* testsuite/gcc.target/i386/20060512-4.c: New.

From-SVN: r113880
2006-05-18 00:34:44 +00:00
GCC Administrator 71abbf1620 Daily bump.
From-SVN: r113878
2006-05-18 00:17:40 +00:00
H.J. Lu 344185f1bc Add the missing entry.
From-SVN: r113874
2006-05-17 15:18:19 -07:00
Mark Mitchell ceacde632a re PR c++/26122 (Pure specifiers for templates causing trouble)
PR c++/26122
	* decl2.c (check_member_template): Remove checks for virtual
	functions.
	* parser.c (cp_parser_function_specifier_opt): Complain about
	virtual templates.
	(cp_parser_pure_specifier): Likewise.
	PR c++/26122
	* g++.old-deja/g++.oliva/template9.C: Remove XFAIL.

From-SVN: r113873
2006-05-17 21:39:07 +00:00
Kazu Hirata c89833429b re PR rtl-optimization/27477 (The H8 port doesn't build)
PR rtl-optimization/27477
	* combine.c (try_combine): Don't split a parallel consisting
	of two sets into two individual sets if both sets reference
	cc0.

From-SVN: r113872
2006-05-17 21:34:57 +00:00
H.J. Lu 95dc56a4c7 arm.opt (target_fpe_name): Remove VarExists.
2006-05-17  H.J. Lu  <hongjiu.lu@intel.com>

	* config/arm/arm.opt (target_fpe_name): Remove VarExists.
	* config/rs6000/rs6000.opt (TARGET_NO_FP_IN_TOC): Likewise.

	* doc/options.texi (VarExists): Updated.

From-SVN: r113871
2006-05-17 12:19:02 -07:00
Mark Mitchell bfce085396 re PR c++/26068 (extern "C" static function should not be allowed)
PR c++/26068
	* parser.c (cp_parser_set_storage_class): Check for 
	invalid uses of storage classes on unbraced linkage
	specifications.
	(cp_parser_decl_specifier_seq): Pass keywords, not storage classes,
	to cp_parser_set_storage_class.
	PR c++/26068
	* g++.dg/opt/pr17697-3.C: Remove invalid extern specifier.
	* g++.dg/parse/linkage1.C: New test.

From-SVN: r113869
2006-05-17 17:24:00 +00:00
Paolo Carlini b9cebd5026 hashtable (hashtable<>::m_find): Remove; update callers.
2006-05-17  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/hashtable (hashtable<>::m_find): Remove; update callers.

	* include/tr1/hashtable (map_base<>::operator[]): Move out of line.

	* include/tr1/hashtable (hashtable<>::m_insert(const value_type&,
	std::tr1::false_type)): Avoid memory leak risk for new_node.

From-SVN: r113868
2006-05-17 16:28:01 +00:00
John David Anglin edbaf6a24d unwind-dw2.c: Add declarations for uw_update_context and uw_frame_state_for.
* unwind-dw2.c: Add declarations for uw_update_context and
	uw_frame_state_for.
	* pa/hpux-unwind.h (pa_fallback_frame_state): When an export stub is
	detected, advance frame state and context once to skip over stub.

From-SVN: r113865
2006-05-17 15:35:36 +00:00
Jakub Jelinek 9e6fb77dba re PR tree-optimization/27548 (ICE: SSA corruption - Conflict across an abnormal edge)
PR tree-optimization/27548
	* g++.dg/tree-ssa/pr27548.C: New test.

From-SVN: r113864
2006-05-17 17:29:18 +02:00
Bryce McKinlay 5600ef7fb1 re PR libgcj/27352 (SecurityManager.checkPermission() called unnecessarily)
PR libgcj/27352
        * java/lang/Class.java (getClassLoaderInternal): New method.
        (forName (String, Class)): Use getClassLoaderInternal.
        (getPackage): Likewise.
        (getResource): Likewise.
        (getResourceAsStream): Likewise.
        (desiredAssertionStatus): Likewise.

From-SVN: r113863
2006-05-17 16:09:57 +01:00
Sebastian Pop c93c502529 re PR tree-optimization/20256 (Perfect nest transformation not conservative enough)
PR middle-end/20256
	PR middle-end/26435
	* tree-loop-linear.c (linear_transform_loops): Don't test perfect_nest_p.
	Call rewrite_into_loop_closed_ssa only when something changed.
	* lambda.h (gcc_loopnest_to_lambda_loopnest): Update declaration.
	* lambda-code.c (can_convert_to_perfect_nest): Declared.
	(gcc_loopnest_to_lambda_loopnest): Removed need_perfect_nest parameter.
	Test for perfect_nest_p here.  Fix formating.
	(replace_uses_equiv_to_x_with_y): Fix formating.
	(stmt_uses_op): Removed.
	(can_convert_to_perfect_nest): Removed loopivs parameter.
	Complete the test by checking the scalar dependences.
	(perfect_nestify): Remove the test for can_convert_to_perfect_nest.
	Fix formating.

From-SVN: r113862
2006-05-17 14:25:59 +00:00
Francois-Xavier Coudert 46343456ba Testcase forgotten in the previous commit.
PR fortran/26551
	* gfortran.dg/recursive_check_2.f90: New test.

From-SVN: r113861
2006-05-17 14:14:56 +00:00
Francois-Xavier Coudert 77f131ca20 re PR fortran/26551 (gfortran compiles recursive subroutines declared without the RECURSIVE attribute)
PR fortran/26551

	* resolve.c (resolve_call, resolve_function): Issue an error
	if a function or subroutine call is recursive but the function or
	subroutine wasn't declared as such.

	* gfortran.dg/recursive_check_1.f: New test.

From-SVN: r113860
2006-05-17 14:11:40 +00:00
Bernd Schmidt be448346aa re PR bootstrap/22541 (Building into empty PREFIX causes broken limits.h to be installed)
PR bootstrap/22541
	From Dan Kegel <dank@kegel.com>:
	* Makefile.in: Strip "dir/../" combinations from SYSTEM_INCLUDE_DIR.

From-SVN: r113859
2006-05-17 13:54:38 +00:00
Eric Botcazou 2e3b8fe7b5 tree.c (variably_modified_type_p): Return true if the element type is variably modified without recursing.
* tree.c (variably_modified_type_p) <ARRAY_TYPE>: Return true
	if the element type is variably modified without recursing.

From-SVN: r113858
2006-05-17 13:11:09 +00:00
Sebastian Pop 9cb8f1bac5 re PR tree-optimization/27332 (ICE in try_interchange_loops with -ftree-loop-linear)
PR middle-end/27332
	* tree-loop-linear.c (try_interchange_loops): Test for 
	no data dependences.

From-SVN: r113856
2006-05-17 12:47:43 +00:00
Francois-Xavier Coudert bfaacea7f5 re PR fortran/27320 (ICE with -fdump-parse-tree after error)
PR fortran/27320
	* dump-parse-tree.c (gfc_show_code_node): Try harder to find the
	called procedure name.

From-SVN: r113855
2006-05-17 12:06:42 +00:00
Zdenek Dvorak e5db35150e re PR tree-optimization/27548 (ICE: SSA corruption - Conflict across an abnormal edge)
PR tree-optimization/27548
	* tree-scalar-evolution.c (scev_const_prop): Do not prolong life
	range of ssa names that appear on abnormal edges.
	* tree-ssa-loop-ivopts.c (contains_abnormal_ssa_name_p): Export.
	* tree-flow.h (contains_abnormal_ssa_name_p): Declare.

From-SVN: r113853
2006-05-17 11:33:00 +00:00