Commit Graph

77284 Commits

Author SHA1 Message Date
GCC Administrator bf821e6ad5 Daily bump.
From-SVN: r118442
2006-11-03 00:17:46 +00:00
Kaz Kojima 537426e7ad re PR target/27405 (gcc.c-torture/execute/960209-1.c ICEs on sh64-* with -O3)
PR target/27405
	* config/sh/sh.md (cmp{eq,gt,gtu}{si,di}_media): Remove.
	(cmpsi{eq,gt,gtu}{si,di}_media): Rename to
	cmp{eq,gt,gtu}{si,di}_media.
	(*cmpne0si_media): Remove.
	(*movsicc_umin): Adjust gen_cmp*_media call.
	(unordered): Change the mode of unordered and operands[1] to
	SImode.
	(seq): Adjust gen_cmp*_media calls.  Make the mode of
	a temporary result of compare SImode if needed.  If the mode
	of operands[0] is DImode, extend the temporary result to DImode.
	(slt, sle, sgt, sge, sgtu, sltu, sleu, sgue, sne): Likewise.
	(sunorderd): Change the mode of match_operand and unorderd to
	SImode.
	(cmpeq{sf,df}_media): Remove.
	(cmpsieq{sf,df}_media): Rename to cmpeq{sf,df}_media.
	(cmp{gt,ge,un}{sf,df}_media): Change the mode of match_operand
	and compare operation to SImode.

From-SVN: r118435
2006-11-02 22:57:13 +00:00
Mike Stump a6f07cc35d * obj-c++.dg/const-str-9.mm: Don't run on 64-bit.
From-SVN: r118433
2006-11-02 22:01:36 +00:00
Mike Stump b654d3320b * g++.old-deja/g++.abi/align.C: Enable for darwin.
From-SVN: r118431
2006-11-02 21:06:40 +00:00
Eric Botcazou b3c9881c2d install.texi (sparc-sun-solaris2*): Update GMP/MPFR build instructions.
* doc/install.texi (sparc-sun-solaris2*): Update GMP/MPFR build
	instructions.
	(sparc64-sun-solaris2*): Likewise.

From-SVN: r118426
2006-11-02 20:43:19 +00:00
Paul Brook 50603eedf7 arm.c (arm_elf_asm_constructor): Remove ATTRIBUTE_UNUSED from priority argument.
2006-11-02  Paul Brook  <paul@codesourcery.com>

	gcc/
	* config/arm/arm.c (arm_elf_asm_constructor): Remove ATTRIBUTE_UNUSED
	from priority argument.  Use different section for non-default
	priority.
	* config/arm/elf.h: Remove definition of SUPPORTS_INIT_PRIORITY.

From-SVN: r118425
2006-11-02 20:18:42 +00:00
Andreas Tobler 88852cb512 objc-act.c (objc_finish_file): Remove ifdef clause for OBJCPLUS and content where we called cp_finish_file.
2006-11-02  Andreas Tobler  <a.tobler@schweiz.org>

	* objc-act.c (objc_finish_file): Remove ifdef clause for OBJCPLUS and
	content where we called cp_finish_file.

From-SVN: r118424
2006-11-02 21:03:40 +01:00
Eric Botcazou 55fc9e87b2 re PR other/29639 (ext/bitmap_allocator/check_allocate_max_size.cc execution test)
PR other/29639
	* except.c (switch_to_exception_section): Do not cache the section
	if named sections are supported and HAVE_LD_EH_GC_SECTIONS is defined
	and flag_function_sections is set.

From-SVN: r118422
2006-11-02 18:40:54 +00:00
Keith Seitz 4cb1c1c396 * gnu/classpath/jdwp/natVMMethod.cc (getLineTable): Implement.
From-SVN: r118420
2006-11-02 17:01:01 +00:00
Keith Seitz 081070150c jvmti.cc (_Jv_JVMTI_GetLineNumberTable): New function.
* jvmti.cc (_Jv_JVMTI_GetLineNumberTable): New function.
        (_Jv_JVMTI_Interface): Define GetLineNumberTable.

From-SVN: r118419
2006-11-02 16:59:04 +00:00
Kaveh R. Ghazi b68bcfff54 re PR middle-end/29335 (transcendental functions with constant arguments should be resolved at compile-time)
PR middle-end/29335
	* builtins.c (do_mpfr_sincos): New.
	(fold_builtin_1): Use it to fold builtin sincos.

testsuite:
	* gcc.dg/torture/builtin-math-3.c: Fix semicolons.
	(TESTIT_2P, TESTIT_2P_R): New macros.  Test sincos.

From-SVN: r118409
2006-11-02 03:20:49 +00:00
Roger Sayle 1d07712df0 darwin.h (CPP_SPEC): Handle -pthread, transforming it into -D_REENTRANT.
* config/darwin.h (CPP_SPEC): Handle -pthread, transforming
	it into -D_REENTRANT.

From-SVN: r118408
2006-11-02 02:37:38 +00:00
Roger Sayle 68b92f787e configure.ac (HAVE_AS_IX86_DIFF_SECT_DELTA): New test to determine whether the assembler supports taking the difference of...
* configure.ac (HAVE_AS_IX86_DIFF_SECT_DELTA): New test to determine
	whether the assembler supports taking the difference of symbols in
	different sections.  On x86/Solaris, GAS does but Solaris as doesn't.
	* configure: Regenerate.
	* config.in: Regenerate.
	* config/i386/sol2-10.h (JUMP_TABLES_IN_TEXT_SECTION): Define if
	the assembler doesn't support taking the difference of symbols in
	different sections, i.e. we're using the native solaris assembler.

From-SVN: r118405
2006-11-02 00:56:38 +00:00
GCC Administrator fc354c12ad Daily bump.
From-SVN: r118403
2006-11-02 00:17:55 +00:00
Pete Steinmetz 44cd321ed8 invoke.texi: Add cpu_type power6x (RS/6000 and PowerPC Options): Add -mmfpgpr.
* doc/invoke.texi: Add cpu_type power6x
	(RS/6000 and PowerPC Options): Add -mmfpgpr.
	* config.gcc: Add cpu_type power6x.
	* configure.ac: Add test for mf{t,f}gpr instructions.
	(HAVE_AS_MFPGPR): New.
	* config.in: Regenerate.
	* configure: Regenerate.
	* config/rs6000/aix52.h (ASM_CPU_SPEC): Add power6x.
	* config/rs6000/rs6000.md (define_attr "type"): Add insert_dword,
	shift,trap,var_shift_rotate,cntlz,exts, var_delayed_compare, mffgpr
	and mftgpr attributes.
	(define_attr "cpu"): Add power6.
	Change instruction sequences to use new attributes.
	(floatsidf2,fix_truncdfsi2): use TARGET_MFPGPR.
	(fix_truncdfsi2_mfpgpr): New.
	(floatsidf_ppc64_mfpgpr): New.
	(floatsidf_ppc64): Added !TARGET_MFPGPR condition.
	(movdf_hardfloat64_mfpgpr,movdi_mfpgpr): New.
	(movdf_hardfloat64): Added !TARGET_MFPGPR condition.
	(movdi_internal64): Added !TARGET_MFPGPR and related conditions.
	(fix_truncdfsi2): Use gpc_reg_operand constraint.
	* config/rs6000/{6xx.md,power4.md,8540.md,603.md,mpc.md,
	7xx.md,rios2.md,7450.md,440.md,rios1.md,rs64.md,power5.md,40x.md}:
	Add descriptions for insert_dword, shift,trap,var_shift_rotate,
	cntlz,exts and var_delayed_compare.
	* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
	_ARCH_PWR6X, if features enabled.
	* config/rs6000/rs6000.opt (mmfpgpr): New.
	* config/rs6000/rs6000.c (rs6000_align_branch_targets): New variable.
	(cached_can_issue_more): New variable.
	(processor_costs): Add power6_cost.
	(rs6000_sched_init): New function.
	(is_dispatch_slot_restricted): Deleted.
	(set_to_load_agen): New function.
	(is_load_insn,is_store_insn): New functions.
	(adjacent_mem_locations): New function.
	(insn_must_be_first_in_group): New function.
	(insn_must_be_last_in_group): New function.
	(rs6000_sched_reorder): New function.
	(rs6000_sched_reorder2): New function.
	(TARGET_SCHED_INIT,TARGET_SCHED_REORDER,
	TARGET_SCHED_REORDER2): Define.
	(processor_target_table): Use PROCESSOR_POWER6 for power6.
	Add power6x. Add MASK_MFPGPR for power6x.
	(POWERPC_MASKS): Add MASK_MFPGPR.
	(rs6000_override_options): Set rs6000_always_hint to false
	for power6.  Set rs6000_align_branch_targets. Replace
	rs6000_sched_groups check with rs6000_align_branch_targets.
	Use PROCESSOR_POWER6.
	(last_scheduled_insn): New variable.
	(load_store_pendulum): New variable.
	(rs6000_variable_issue): Set last_scheduled_insn and
	cached_can_issue_more.
	(rs6000_adjust_cost): Add power6 cost adjustments.
	(rs6000_adjust_priority): Replace is_dispatch_slot_restricted
	with insn_must_be_first_in_group. Add power6 priority adjustments.
	(rs6000_issue_rate): Add CPU_POWER6.
	(insn_terminates_group_p): Use insn_must_be_{first,last}_in_group.
	* config/rs6000/rs6000.h (processor_type): Add PROCESSOR_POWER6.
	(TARGET_MFPGPR): New.
	(SECONDARY_MEMORY_NEEDED): Use TARGET_MFPGPR.
	(ASM_CPU_SPEC): Add power6x.
	(SECONDARY_MEMORY_NEEDED): Added mode!=DFmode and mode!=DImode
	conditions.
	* config/rs6000/power6.md: New file.


Co-Authored-By: Peter Bergner <bergner@vnet.ibm.com>

From-SVN: r118396
2006-11-01 14:47:53 -06:00
Adam Nemet 293be7fd22 fold-mod-1.c: Match the leading 0x for the hexadecimal value.
* gcc.dg/fold-mod-1.c: Match the leading 0x for the
	hexadecimal value.
	* gcc.dg/tree-prof/val-prof-2.c: Likewise.
	* gcc.dg/pr14796-2.c: Likewise.

From-SVN: r118394
2006-11-01 19:22:02 +00:00
Adam Nemet 38b97f4da2 tree-pretty-print.c (dump_generic_node): Use HOST_WIDE_INT_PRINT to print high and low parts.
* tree-pretty-print.c (dump_generic_node) <INTEGER_CST>: Use
	HOST_WIDE_INT_PRINT to print high and low parts.  Use
	HOST_BITS_PER_WIDE_INT for the width of HOST_WIDE_INT.  When
	printing a hexadecimal number prefix it with 0x.

From-SVN: r118393
2006-11-01 19:19:28 +00:00
Chris Johns f03668f6ee re PR bootstrap/28400 (install-driver is missing $(exeext) from gcc-$(version))
2006-11-01  Chris Johns <chris@contemporary.net.au>

        PR bootstrap/28400
        * Makefile.in (install-driver): Use exeext when installing
        $target-gcc-$version.

From-SVN: r118392
2006-11-01 19:01:36 +00:00
Keith Seitz 444dd946c8 Location.java: New file.
* gnu/gcj/jvmti/Location.java: New file.
        * gnu/gcj/jvmti/BreakpointManager.java: New file.
        * jvmti.cc (_Jv_JVMTI_SetBreakpoint): New function.
        (_Jv_JVMTI_ClearBreakpoint): New function.
        (_Jv_JVMTI_Interface): Define SetBreakpoint and ClearBreakpoint.
        * sources.am: Regenerated.
        * Makefile.in: Regenerated.

From-SVN: r118391
2006-11-01 18:20:19 +00:00
Doug Gregor 5812d1e465 c-common.c (flag_cpp0x): New.
2006-11-01	Douglas Gregor <doug.gregor@gmail.com>

	* c-common.c (flag_cpp0x): New.
	* c-common.h (flag_cpp0x): New.
	* c-cppbuiltin.c (c_cpp_builtins): If C++0x extensions are
	supported, define __GXX_EXPERIMENTAL_CPP0X__.
	* c-opts.c (set_std_cxx0x): New.
	(c_common_handle_option): Handle -std=c++0x, -std=gnu++0x.
	* c.opt (std=c++0x): Document.
	(std=gnu++0x): Ditto.
	* doc/cpp.texi: Document __GXX_EXPERIMENTAL_CPP0X__.
	* doc/invoke.texi: Document -std=c++0x, -std=gnu++0x.

From-SVN: r118389
2006-11-01 17:13:27 +00:00
Doug Gregor 966541e34d c-common.c (flag_cpp0x): New.
2006-11-01	Douglas Gregor <doug.gregor@gmail.com>

	* c-common.c (flag_cpp0x): New.
	* c-common.h (flag_cpp0x): New.
	* c-cppbuiltin.c (c_cpp_builtins): If C++0x extensions are
	supported, define __GXX_EXPERIMENTAL_CPP0X__.
	* c-opts.c (set_std_cxx0x): New.
	(c_common_handle_option): Handle -std=c++0x, -std=gnu++0x.
	* c.opt (std=c++0x): Document.
	(std=gnu++0x): Ditto.
	* doc/cpp.texi: Document __GXX_EXPERIMENTAL_CPP0X__.
	* doc/invoke.texi: Document -std=c++0x, -std=gnu++0x.

From-SVN: r118386
2006-11-01 16:29:06 +00:00
Douglas Gregor dfafdaa655 cpplib.h (enum c_lang): Add CLK_GNUCXX0X and CLK_CXX0X for experimental C++0x mode.
2006-11-01	Douglas Gregor <doug.gregor@gmail.com>

	* include/cpplib.h (enum c_lang): Add CLK_GNUCXX0X and CLK_CXX0X
	for experimental C++0x mode.
	* init.c (lang_defaults): Add defaults for C++0x modes. C++0x has
	adopted the preprocessor changes introduced in C99.

From-SVN: r118385
2006-11-01 16:27:23 +00:00
Steve Ellcey b4d24eaad4 * tests/base/sys/socket.h: Update.
From-SVN: r118384
2006-11-01 16:25:17 +00:00
Eric Botcazou 36c90fd27a 20061101-1.c: New test.
* gcc.c-torture/execute/20061101-1.c: New test.

From-SVN: r118377
2006-11-01 12:09:25 +00:00
Eric Botcazou cb953056bb Fix asm string.
From-SVN: r118374
2006-11-01 11:58:18 +00:00
Richard Guenther 7e35fcb30e i386.c (ix86_expand_rint): Fix issues with signed zeros.
2006-11-01  Richard Guenther  <rguenther@suse.de>

	* config/i386/i386.c (ix86_expand_rint): Fix issues with
	signed zeros.
	(ix86_expand_floorceildf_32): Likewise.
	(ix86_expand_floorceil): Likewise.
	(ix86_expand_trunc): Likewise.

	* testsuite/gcc.target/i386/fpprec-1.c: New testcase.

From-SVN: r118373
2006-11-01 11:38:06 +00:00
Andrew Pinski 4a574196f5 invoke.texi (-fkeep-inline-functions): Change "GNU C" to "GNU C89".
2006-10-31  Andrew Pinski  <pinskia@gmail.com>

        * doc/invoke.texi (-fkeep-inline-functions): Change "GNU C"
        to "GNU C89".

From-SVN: r118372
2006-10-31 23:28:53 -08:00
Danny Smith 97388150b4 target.h (targetm.cxx.use_atexit_for_cxa_atexit): New target hook.
* target.h (targetm.cxx.use_atexit_for_cxa_atexit): New target
	hook.
	* target-def.h: (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Define
	default.
	* config/i386/mingw32.h (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT):
	Override default.
	* doc/tm.texi (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Document.
	* configure.ac (use_cxa_atexit): As a special case, don't test
	for libc definition of __cxa_atexit on mingw32
	* configure: Regenerate.
	* config.gcc (i[34567]86-pc-mingw32): Default to
	enable__cxa_atexit=yes.

cp

	* decl.c (get_atexit_node): Reference atexit, not __cxa_exit.
	if targetm.cxx.use_atexit_for cxa_atexit.
	(start_cleanup_fn): Likewise.
	(register_dtor_fn): Likewise.

From-SVN: r118371
2006-11-01 06:23:12 +00:00
Geoffrey Keating d5523ce18d Fix date on ChangeLog entry
From-SVN: r118367
2006-11-01 05:42:01 +00:00
Kaveh R. Ghazi e35ae5fe4e builtins.def (gamma, lgamma): Use ATTR_MATHFN_FPROUNDING_STORE.
* builtins.def (gamma, lgamma): Use ATTR_MATHFN_FPROUNDING_STORE.
	
testsuite:
	* gcc.dg/torture/builtin-attr-1.c: Don't test gamma/lgamma.
	* gcc.dg/torture/builtin-convert-1.c: Don't test lgamma.

From-SVN: r118366
2006-11-01 05:38:21 +00:00
Geoffrey Keating 58182de357 In gcc/: PR 23067
In gcc/:
	PR 23067
	* c-decl.c (start_struct): Don't create self-containing
	structures.
	* config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align):
	New.
	* config/rs6000/rs6000-protos.h
	(darwin_rs6000_special_round_type_align): New.
	* config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Rewrite.
	(ROUND_TYPE_ALIGN): Use darwin_rs6000_special_round_type_align.
In gcc/testsuite/:
	PR 23067
	* gcc.target/powerpc/darwin-abi-3.c: Remove XFAIL.
	* gcc.target/powerpc/darwin-abi-6.c: Remove XFAIL.
	* gcc.target/powerpc/darwin-abi-7.c: Remove XFAIL.
	* gcc.target/powerpc/darwin-abi-8.c: Remove XFAIL.
	* gcc.target/powerpc/darwin-abi-9.c: Remove XFAIL.
	* gcc.target/powerpc/darwin-abi-10.c: Remove XFAIL.
	* gcc.target/powerpc/darwin-abi-11.c: Remove XFAIL.
In libobjc/:
	* encoding.c (darwin_rs6000_special_round_type_align): New.
In libffi/:
	* src/powerpc/ffi_darwin.c (darwin_adjust_aggregate_sizes): New.
	(ffi_prep_cif_machdep): Call darwin_adjust_aggregate_sizes for
	Darwin.
	* testsuite/libffi.call/nested_struct4.c: Remove Darwin XFAIL.
	* testsuite/libffi.call/nested_struct6.c: Remove Darwin XFAIL.

From-SVN: r118365
2006-11-01 05:28:41 +00:00
Eric Christopher 0e7e09dc1e builtin-bswap-1.c: New.
2006-10-31  Eric Christopher  <echristo@apple.com>
	    Falk Hueffner  <falk@debian.org>

	* gcc.dg/builtin-bswap-1.c: New.
	* gcc.dg/builtin-bswap-2.c: New.
	* gcc.dg/builtin-bswap-3.c: New.
	* gcc.dg/builtin-bswap-4.c: New.
	* gcc.dg/builtin-bswap-5.c: New.
	* gcc.target/i386/builtin-bswap-1.c: New.

Co-Authored-By: Falk Hueffner <falk@debian.org>

From-SVN: r118364
2006-11-01 05:20:05 +00:00
Geoffrey Keating 91053e6c25 Add missing genopinit.c change for revision 118361.
From-SVN: r118363
2006-11-01 05:17:14 +00:00
Geoffrey Keating e430546039 In gcc/:
* toplev.c (compile_file): Call final_write_globals
	even if there have been errors.
In gcc/cp/:
	* decl2.c (cp_write_global_declarations): Rename from
	cp_finish_file.
	* cp-lang.c (finish_file): Don't call cp_finish_file.
	* cp-tree.h (cp_write_global_declarations): Rename from
	cp_finish_file.
	* cp-objcp-common.h (LANG_HOOKS_WRITE_GLOBALS): Define to
	cp_write_global_declarations.

From-SVN: r118362
2006-11-01 05:16:14 +00:00
Eric Christopher 167fa32c09 extend.texi (__builtin_bswap32): Document.
2006-09-07  Eric Christopher  <echristo@apple.com>
	    Falk Hueffner  <falk@debian.org>

	* doc/extend.texi (__builtin_bswap32): Document.
	(__builtin_bswap64): Ditto.
	* doc/libgcc.texi (bswapsi2): Document.
	(bswapdi2): Ditto.
	* doc/rtl.texi (bswap): Document.
	* optabs.c (expand_unop): Don't widen a bswap.
	(init_optabs): Init bswap. Set libfuncs explicitly
	for bswapsi2 and bswapdi2.
	* optabs.h (OTI_bswap): New.
	(bswap_optab): Ditto.
	* genopinit.c (optabs): Handle bswap_optab.
	* tree.h (tree_index): Add TI_UINT32_TYPE and
	TI_UINT64_TYPE.
	(uint32_type_node): New.
	(uint64_type_node): Ditto.
	* tree.c (build_common_tree_nodes_2): Initialize
	uint32_type_node and uint64_type_node.
	* builtins.c (expand_builtin_bswap): New.
	(expand_builtin): Call.
	(fold_builtin_bswap): New.
	(fold_builtin_1): Call.
	* fold-const.c (tree_expr_nonnegative_p): Return true
	for bswap.
	* builtin-types.def (BT_UINT32): New.
	(BT_UINT64): Ditto.
	(BT_FN_UINT32_UINT32): Ditto.
	(BT_FN_UINT64_UINT64): Ditto.
	* builtins.def (BUILT_IN_BSWAP32): New.
	(BUILT_IN_BSWAP64): Ditto.
	* rtl.def (BSWAP): New.
	* genattrtab.c (check_attr_value): New.
	* libgcc2.c (__bswapSI2): New.
	(__bswapDI2): Ditto.
	* libgcc2.h (__bswapSI2): Declare.
	(__bswapDI2): Ditto.
	* mklibgcc.in (lib2funcs): Add _bswapsi2 and _bswapdi2.
	* simplify-rtx.c (simplify_const_unary_operation): Return
	0 for BSWAP.
	* libgcc-std.ver (__bwapsi2): Add.
	(__bswapdi2): Ditto.
	* reload1.c (eliminate_regs_1): Add bswap.
	(elimination_effects): Ditto.
	* config/i386/i386.h (x86_bswap): New.
	(TARGET_BSWAP): Use.
	* config/i386/i386.c (x86_bswap): Set.

Co-Authored-By: Falk Hueffner <falk@debian.org>

From-SVN: r118361
2006-11-01 05:14:40 +00:00
Geoffrey Keating 5880f14fe8 In gcc/:
* coverage.c (coverage_checksum_string): Update comment.
	* dwarf2out.c (switch_to_eh_frame_section): Update for removal
	of get_file_function_name.
	* cgraphunit.c (cgraph_build_static_cdtor): Update for rename
	of get_file_function_name_long.
	* tree.c (get_file_function_name): Rename from
	get_file_function_name_long; improve comment; handle 'I' and 'D'
	specially when the target has ctor/dtor support; remove special
	handling for 'F'.
	(get_file_function_name): Remove.
	* tree.h (get_file_function_name): Rename from
        get_file_function_name_long.
	(get_file_function_name): Remove prototype.
In gcc/cp/:
	* name-lookup.c (get_anonymous_namespace_name): New.
	(push_namespace_with_attribs): Use get_anonymous_namespace_name.
	* decl2.c (start_objects): Update for rename of
	get_file_function_name_long.
In gcc/fortran/:
	* trans-decl.c (gfc_generate_constructors): Update for removal
	of get_file_function_name.

From-SVN: r118360
2006-11-01 05:06:12 +00:00
Geoffrey Keating 4d04fa0539 darwin.h (PREFERRED_DEBUGGING_TYPE): Remove.
* config/i386/darwin.h (PREFERRED_DEBUGGING_TYPE): Remove.
	* config/darwin.h (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG.

	* config/darwin.h (LINK_COMMAND_SPEC): Don't do weird things with -@.
	Call dsymutil when compiling and linking one or more source files
	in one step.

From-SVN: r118359
2006-11-01 04:55:19 +00:00
Geoffrey Keating 7eb0a43cd6 re PR target/15834 (NO_IMPLICIT_EXTERN_C should be gotten rid of)
PR 15834
	* config/darwin.h (NO_IMPLICIT_EXTERN_C): Define.

From-SVN: r118358
2006-11-01 04:53:33 +00:00
Geoffrey Keating 0a052b16fe re PR c/16622 ([C99] extern inline is handled wrong in C99 mode)
* c-decl.c (grokdeclarator): Don't set DECL_EXTERNAL on
	inline static functions in c99 mode.

	PR 16622
	* doc/extend.texi (Inline): Update.
	* c-tree.h (struct language_function): Remove field 'extern_inline'.
	* c-decl.c (current_extern_inline): Delete.
	(pop_scope): Adjust test for an undefined nested function.
	Add warning about undeclared inline function.
	(diagnose_mismatched_decls): Update comments.  Disallow overriding
	of inline functions in a translation unit in C99.  Allow inline
	declarations in C99 at any time.
	(merge_decls): Boolize variables.  Handle C99 'extern inline'
	semantics.
	(grokdeclarator): Set DECL_EXTERNAL here for functions.  Handle
	C99 inline semantics.
	(start_function): Don't clear current_extern_inline.  Don't set
	DECL_EXTERNAL.
	(c_push_function_context): Don't push current_extern_inline.
	(c_pop_function_context): Don't restore current_extern_inline.

	PR 11377
	* c-typeck.c (build_external_ref): Warn about static variables
	used in extern inline functions.
	* c-decl.c (start_decl): Warn about static variables declared
	in extern inline functions.

From-SVN: r118357
2006-11-01 04:48:15 +00:00
Geoffrey Keating 71113fcd70 re PR c/16622 ([C99] extern inline is handled wrong in C99 mode)
* c-decl.c (grokdeclarator): Don't set DECL_EXTERNAL on
	inline static functions in c99 mode.

	PR 16622
	* doc/extend.texi (Inline): Update.
	* c-tree.h (struct language_function): Remove field 'extern_inline'.
	* c-decl.c (current_extern_inline): Delete.
	(pop_scope): Adjust test for an undefined nested function.
	Add warning about undeclared inline function.
	(diagnose_mismatched_decls): Update comments.  Disallow overriding
	of inline functions in a translation unit in C99.  Allow inline
	declarations in C99 at any time.
	(merge_decls): Boolize variables.  Handle C99 'extern inline'
	semantics.
	(grokdeclarator): Set DECL_EXTERNAL here for functions.  Handle
	C99 inline semantics.
	(start_function): Don't clear current_extern_inline.  Don't set
	DECL_EXTERNAL.
	(c_push_function_context): Don't push current_extern_inline.
	(c_pop_function_context): Don't restore current_extern_inline.

	PR 11377
	* c-typeck.c (build_external_ref): Warn about static variables
	used in extern inline functions.
	* c-decl.c (start_decl): Warn about static variables declared
	in extern inline functions.

From-SVN: r118356
2006-11-01 04:47:30 +00:00
Roger Sayle 682d039597 re PR middle-end/23470 (a*a (for floats) is not considered always postive (-ffast-math only))
PR middle-end/23470
	* tree.h (tree_expr_nonnegative_p): Return "bool" instead of "int".
	* fold-const.c (tree_expr_nonnegative_p): Likewise.  Consider
	pow(x,y) and powi(x,y) to be nonnegative if either x is nonnegative
	or y is an even integer.

	* gcc.dg/pr23470-1.c: New test case.

From-SVN: r118355
2006-11-01 02:56:45 +00:00
GCC Administrator a3a1ebb559 Daily bump.
From-SVN: r118353
2006-11-01 00:17:53 +00:00
Bernhard Fischer 4143349751 re PR fortran/29537 (ICE in gfc_match_common for blank common in BLOCK DATA unit)
fortran/ChangeLog:
2006-11-01  Bernhard Fischer  <aldot@gcc.gnu.org>

        PR fortran/29537
        * trans-common.c (gfc_trans_common): If the blank common is
        in a procedure or program without a name then proc_name is null, so use
        the locus of the common.
        (gfc_sym_mangled_common_id): Fix whitespace.
        * match.c (gfc_match_common): Emit warning about blank common in
        block data.

testsuite/ChangeLog:
2006-11-01  Bernhard Fischer  <aldot@gcc.gnu.org>

        PR fortran/29537
        * gfortran.dg/blockdata_1.f90: Add warning about blank common in block
	data.
        * gfortran.dg/blockdata_2.f90: New testcase.

From-SVN: r118347
2006-11-01 00:38:58 +01:00
Eric Botcazou af9d099362 20061031-1.c: New test.
* gcc.c-torture/execute/20061031-1.c: New test.

From-SVN: r118344
2006-10-31 23:29:06 +00:00
Steve Ellcey be645fd97a inclhack.def (hpux11_extern_sendfile): New.
* inclhack.def (hpux11_extern_sendfile): New.
	(hpux11_extern_sendpath): New.
	* fixincl.x: Regenerate.

From-SVN: r118343
2006-10-31 22:28:18 +00:00
Thomas Koenig 8a7f7fb6de re PR libfortran/29627 ([4.1 only] partial unformatted reads shouldn't succeed)
2006-10-31  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/29627
	* libgfortran.h: Add ERROR_SHORT_RECORD
	* runtime/error.c (translate_error): Add case
	for ERROR_SHORT_RECORD.
	* io/transfer.c (read_block_direct):  Separate codepaths
	for stream and record unformatted I/O.  Remove unneeded
	tests for standard input, padding and formatted I/O.
	If the record is short, read in as much data as possible,
	then raise the error.

2006-10-31  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/29627
	* gfortran.dg/unf_short_record_1.f90:  New test.

From-SVN: r118341
2006-10-31 20:58:26 +00:00
Arnaud Charlet 401c8e8059 Fix typo.
From-SVN: r118340
2006-10-31 21:43:39 +01:00
François-Xavier Coudert 5d32fe7f45 * ChangeLog: Forgotten ChangeLog entry for previous commit.
From-SVN: r118339
2006-10-31 20:17:11 +00:00
Francois-Xavier Coudert 150675a88b re PR fortran/29067 (gfc_resolve_expr(): Bad expression type)
PR fortran/29067

	* decl.c (gfc_set_constant_character_len): NULL-terminate the
	character constant string.
	* data.c (create_character_intializer): Likewise.
	* expr.c (gfc_simplify_expr): NULL-terminate the substring
	character constant.
	* primary.c (match_hollerith_constant): NULL-terminate the
	character constant string.

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

From-SVN: r118338
2006-10-31 20:15:22 +00:00
Arnaud Charlet 70198b9f22 Resync.
From-SVN: r118337
2006-10-31 21:11:46 +01:00