Commit Graph

54809 Commits

Author SHA1 Message Date
Mark Mitchell b95cc51a28 re PR c++/13310 (Tree check error in dependent_template_p)
PR c++/13310
	* pt.c (dependent_template_p): Handle OVERLOADs.

	PR c++/13310
	* g++.dg/template/crash15.C: New test.

From-SVN: r74649
2003-12-15 21:55:19 +00:00
Benjamin Kosnik 3fe1373814 re PR libstdc++/12658 (Thread safety problems in locale::global() and locale::locale())
2003-12-15  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/12658
	* include/Makefile.am (bits_headers): Add concurrence.h.
	* include/Makefile.in: Regenerated.
	* include/bits/concurrence.h: New.
	* src/locale_init.cc: Use it.
	(locale::locale): Lock critical regions.
	(locale::global): Same.

From-SVN: r74648
2003-12-15 21:08:03 +00:00
Geoffrey Keating 86d75cddd2 vaarg3.C: Don't expect an error for passing a non-POD type as the last named parameter of...
* g++.old-deja/g++.pt/vaarg3.C: Don't expect an error for passing
	a non-POD type as the last named parameter of a varargs function.

From-SVN: r74647
2003-12-15 20:53:56 +00:00
Benjamin Kosnik 1313d87fd3 basic_string.h: Change _*_references to _*_refcount.
2003-12-15  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/basic_string.h: Change _*_references to _*_refcount.
	* include/bits/locale_classes.h: Same.
	* src/locale.cc: Same.
	* src/locale_name.cc: Same.
	* src/locale_init.cc: Same.

From-SVN: r74645
2003-12-15 19:48:50 +00:00
Graydon Hoare 61a8f1edff gdkfont.h: New file.
2003-12-15  Graydon Hoare  <graydon@redhat.com>

	* jni/gtk-peer/gdkfont.h: New file.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c: Remove
	include of cairo-xlib.h, add extra gdk_flush().

From-SVN: r74644
2003-12-15 19:15:23 +00:00
Benjamin Kosnik fa972243f6 re PR libstdc++/12855 (Thread safety problems in ios_base::Init)
2003-12-15  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/12855
	* include/bits/ios_base.h (Init::_S_ios_base_init): Change to
	_S_refcount, make atomic.
	* src/ios.cc: Adjust definition.
	* src/ios_init.cc (ios_base::Init::Init): Use __exchange_and_add,
	and __atomic_add.
	(ios_base::Init::~Init): Same.
	* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.

From-SVN: r74642
2003-12-15 19:03:13 +00:00
Brendan Kehoe adf269c7af Makefile.in (floatformat.o): Add dependency on config.h to accompany change of 2003-12-03.
* libiberty/Makefile.in (floatformat.o): Add dependency on
config.h to accompany change of 2003-12-03.

From-SVN: r74641
2003-12-15 14:00:49 -05:00
J"orn Rennecke 69f38ab9fd reload.c (reg_overlap_mentioned_for_reload_p): When looking at a PLUS in X...
* reload.c (reg_overlap_mentioned_for_reload_p):
	When looking at a PLUS in X, avoid spuriously returning nonzero
	when IN is a REG or another simple PLUS, or a MEM containing one.

	* loop.c (loop_invariant_p): Amend comment about where new registers
	might come from.

From-SVN: r74638
2003-12-15 17:42:43 +00:00
Mark Mitchell a5ac3982bc re PR c++/13243 (Segfault on illegal template construct)
PR c++/13243
	PR c++/12573
	* parser.c (cp_parser_postfix_expression): Tighten handling of
	integral constant expressions.
	(cp_parser_unary_expression): Likewise.
	* pt.c (value_dependent_expression_p): Remove handling for
	COMPONENT_REFs.

	PR c++/13243
	PR c++/12573
	* g++.dg/template/crash14.C: New test.
	* g++.dg/template/dependent-expr3.C: Add dg-error markers.

From-SVN: r74637
2003-12-15 16:59:56 +00:00
Paolo Carlini ca13fb7f5d locale_facets.tcc (num_get::do_get(bool&)): Fail as soon as the begins of both truename and falsename stop to match...
2003-12-15  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/locale_facets.tcc (num_get::do_get(bool&)):
	Fail as soon as the begins of both truename and falsename
	stop to match; always leave __beg one position beyond the
	last char successfully matched.
	* testsuite/22_locale/num_get/get/char/8.cc: New.
	* testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.

2003-12-15  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/locale_facets.h (_M_widen): Reserve space
	for all the possible widened chars.
	* config/locale/generic/ctype_members.cc (_M_initialize_ctype):
	Compute at construction time all the possible widened chars.
	(do_widen): Tweak, simplify.
	* config/locale/gnu/ctype_members.cc: Likewise.
	* testsuite/performance/narrow_widen_wchar_t.cc: Add tests
	for the array versions.

From-SVN: r74636
2003-12-15 16:56:42 +00:00
Andreas Jaeger 3a5c1f603e rs6000.c (rs6000_output_function_epilogue): Remove handling of obsolete language CHILL.
* config/rs6000/rs6000.c (rs6000_output_function_epilogue): Remove
	handling of obsolete language CHILL.

From-SVN: r74634
2003-12-15 16:23:11 +01:00
Waldek Hebisch e8423af96d tree.c (initializer_zerop): Add test for empty set.
2003-12-15  Waldek Hebisch  <hebisch@math.uni.wroc.pl>

	* tree.c (initializer_zerop): Add test for empty set.
	* integrate.c (function_cannot_inline_p): Forbid inlining
	functions calling `longjmp'.

From-SVN: r74633
2003-12-15 15:45:51 +01:00
Ian Lance Taylor 374caa503b Fix handling of constructor/destructor of standard substitution:
* cp-demangle.c (struct d_standard_sub_info): Define.
	(d_substitution): Add prefix argument.  Change all callers.
	Rework handling of standard substitutions to print full name when
	qualifying a constructor/destructor, or when DMGL_VERBOSE is set.
	* testsuite/demangle-expected: Add test case.

	Fix handling of negative literal constants:
	* cp-demangle.c (enum d_comp_type): Add D_COMP_LITERAL_NEG.
	(d_dump, d_make_comp): Handle D_COMP_LITERAL_NEG.
	(d_expr_primary): Use D_COMP_LITERAL_NEG for a negative number.
	(d_print_comp): Handle D_COMP_LITERAL_NEG.
	* testsuite/demangle-expected: Add test case.

From-SVN: r74632
2003-12-15 14:37:25 +00:00
Nathan Sidwell 58cd2515ae re PR c++/11773 (GCOV misreports coverage for in-class C++ member functions)
PR c++/11773
	* doc/gcov.texi (Gcov and Optimization): Document inline function
	behaviour.  Fix some file suffixes.

From-SVN: r74630
2003-12-15 14:29:10 +00:00
Nathan Sidwell f5c28a158b class.c (add_method): Disallow destructor for java classes.
cp:
	* class.c (add_method): Disallow destructor for java classes.
	* decl.c (xref_basetypes): Check java class inheritance.
	* decl2.c (check_java_method): Skip artificial params.
testsuite:
	* g++.dg/other/java1.C: New test.

From-SVN: r74629
2003-12-15 14:19:10 +00:00
Nathan Sidwell 5fd80fbc3b re PR c++/13241 ([ABI] Incorrect mangling of template arguments)
cp:
	PR c++/13241
	C++ ABI change. Mangling of symbols in expressions.
	* mangle.c (write_mangled_name): Add top_level flag. Rework for
	nested and unnested mangling. Deal with abi version 1 and version
	2 differences.
	(write_expression): Adjust write_mangled_name call.
	(mangle_decl_string): Use write_mangled_name for all non-type decls.
testsuite:
	PR c++/13241
	* g++.dg/abi/mangle18-1.C: New test.
	* g++.dg/abi/mangle18-2.C: New test.

From-SVN: r74628
2003-12-15 11:57:30 +00:00
Arnaud Charlet 209db2bf05 [multiple changes]
2003-12-15  Robert Dewar  <dewar@gnat.com>

	* exp_ch6.adb (Expand_Thread_Body): Fix error in picking up default
	sec stack size.

2003-12-15  Vincent Celier  <celier@gnat.com>

	* gnatchop.adb: (Error_Msg): Do not exit on error for a warning
	(Gnatchop): Do not set failure status when reporting the number of
	warnings.

2003-12-15  Doug Rupp  <rupp@gnat.com>

	* s-ctrl.ads: New file.

	* Makefile.rtl (GNAT_RTL_NONTASKING_OBJS): Add s-crtl$(objext).

	* Make-lang.in: (GNAT_ADA_OBJS): Add ada/s-crtl.o.
	(GNATBIND_OBJS): Add ada/s-crtl.o.

	* Makefile.in [VMS]: Clean up ifeq rules.

	* gnatlink.adb, 6vcstrea.adb, a-direio.adb, a-sequio.adb,
	a-ststio.adb, a-textio.adb, g-os_lib.adb, a-witeio.adb,
	g-os_lib.ads, i-cstrea.adb, i-cstrea.ads, s-direio.adb,
	s-fileio.adb, s-memcop.ads, s-memory.adb, s-stache.adb,
	s-tasdeb.adb: Update copyright.
	Import System.CRTL.
	Make minor modifications to use System.CRTL declared functions instead
	of importing locally.

2003-12-15  GNAT Script  <nobody@gnat.com>

	* Make-lang.in: Makefile automatically updated

From-SVN: r74627
2003-12-15 12:51:01 +01:00
David O'Brien c1d5acdb6e i386.h (__amd64, __amd64__): Remove duplicates.
2003-12-14  David O'Brien  <obrien@FreeBSD.org>
	* config/i386/i386.h (__amd64, __amd64__): Remove duplicates.
(committed as obvious)

From-SVN: r74626
2003-12-15 10:12:09 +00:00
Zdenek Dvorak 298a037c2a re PR rtl-optimization/10312 (optimizer creates wrong code for loop)
PR optimization/10312
	* gcc.c-torture/execute/20031214-1.c: New.

From-SVN: r74625
2003-12-15 09:37:03 +00:00
Mark Mitchell 4bb8ca281f re PR c++/10779 (Error cascade for unknown type in function prototype)
* c-common.h (c_parse_error): Declare it.
	* c-common.c (c_parse_error): New function.
	* c-parse.y (yyerror): Use it.

	* parser.c (struct cp_parser): Add in_template_argument_list_p.
	(cp_parser_error): Use c_parse_error.
	(cp_parser_name_lookup_error): New function.
	(cp_parser_new): Initialize it.
	(cp_parser_declarator): Add parenthesized_p parameter.
	(cp_parser_nested_name_specifier_opt): Use
	cp_parser_name_lookup_error.
	(cp_parser_parenthesized_expression_list): Improve comments.
	(cp_parser_condition): Adjust call to cp_parser_declarator.
	(cp_parser_template_parameter): Adjust call to
	cp_parser_parameter_declaration.
	(cp_parser_template_argument_list): Set
	in_template_argument_list_p.
	(cp_parser_explicit_instantiation): Adjust call to
	cp_parser_declarator.
	(cp_parser_simple_type_specifier): Remove unncessary code.
	(cp_parser_using_declaration): Use cp_parser_name_lookup_error.
	(cp_parser_init_declarator): Handle member function definitions.
	(cp_parser_direct_declarator): Adjust call to
	cp_parser_declarator.
	(cp_parser_type_id): Adjust call to cp_parser_declarator.
	(cp_parser_parameter_declaration_list): Avoid backtracking where
	possible.
	(cp_parser_parameter_declaration): Add parenthesized_p parameter.
	(cp_parser_function_definition): Remove.
	(cp_parser_member_declaration): Do not backtrack to look for
	function definitions.
	(cp_parser_exception_declaration): Adjust call to
	cp_parser_declarator.
	(cp_parser_single_declaration): Handle function definitions via
	cp_parser_init_declarator.
	(cp_parser_save_member_function_body): New function.

	PR c++/10779
	PR c++/12160
	* g++.dg/parse/error3.C: New test.
	* g++.dg/parse/error4.C: Likewise.
	* g++.dg/abi/mangle4.C: Tweak error messages.
	* g++.dg/lookup/using5.C: Likewise.
	* g++.dg/other/error2.C: Likewise.
	* g++.dg/parse/typename5.C: Likewise.
	* g++.dg/parse/undefined1.C: Likewise.
	* g++.dg/template/arg2.C: Likewise.
	* g++.dg/template/ttp3.C: Likewise.
	* g++.dg/template/type1.C: Likewise.
	* g++.old-deja/g++.other/crash32.C: Likewise.
	* g++.old-djea/g++.pt/defarg8.C: Likewise.

From-SVN: r74624
2003-12-15 06:28:23 +00:00
GCC Administrator 69f3649534 Daily bump.
From-SVN: r74621
2003-12-15 00:16:08 +00:00
Kriang Lerdsuwanakij c1b83cc99b re PR c++/13106 (Wrong warning "no return statement ..." for void template function)
PR c++/13106
	* decl.c (finish_function): Check if return type is dependent before
	issuing no return statement warning.

	* g++.dg/warn/noreturn-3.C: New test.

From-SVN: r74616
2003-12-14 11:06:35 +00:00
John David Anglin d8f95bed5f re PR target/13054 (compile/980310-3.f: insn does not satisfy its constraints)
PR target/13054
	* pa-protos.h (indexed_memory_operand, borx_reg_operand,
	move_dest_operand, move_src_operand): New protypes.
	(basereg_operand, move_operand, reg_or_nonsymb_mem_operand): Deleted.
	* pa.c (copy_reg_pointer, indexed_memory_operand, move_dest_operand,
	move_src_operand): New functions.
	(basereg_operand, reg_or_nonsymb_mem_operand, move_operand): Delete.
	(reg_or_0_or_nonsymb_mem_operand): Return false for unscaled indexed
	address until cse is not expected on targets with non-equivalent
	space registers.
	(hppa_legitimize_address): Canonicalize unscaled indexed addresses
	on targets non-equivalent space registers.
	(emit_move_sequence): Break out indexed addresses from destination
	operand.  Similarly, break out unscaled indexed addresses from
	source operand on targets with non-equivalent space registers.  Fix
	REG_POINTER flag when possible.  Mark register pointer when creating
	new pointers.
	(print_operand): Handle unscaled index addresses.
	* pa.h (IS_INDEX_ADDR_P, IS_LO_SUM_DLT_ADDR_P): New macro subroutines
	for EXTRA_CONSTRAINT.
	(EXTRA_CONSTRAINT): Rework to make more readable.
	(MODE_OK_FOR_SCALED_INDEXING_P, MODE_OK_FOR_UNSCALED_INDEXING_P): New
	subroutines for GO_IF_LEGITIMATE_ADDRESS.
	(GO_IF_LEGITIMATE_ADDRESS): Rework using new subroutines.  Allow scaled
	and unscaled addresses.  Canonicalize unscaled indexed addresses on
	targets with non-equivalent space registers.  Document issues in
	handling indexed address modes on PA-RISC.
	(PREDICATE_CODES): Update for new and deleted predicates.
	* pa.md (move_dest_operand, move_src_operand, indexed_memory_operand):
	Use new predicates in move patterns.
	Add peephole2 patterns to optimize floating point stores.  Fix
	constrain preferencing in move patterns.  Delete patterns for handling
	unscaled indexed memory loads.  Add missing load and store with
	base-register modification patterns.  Correct SFmode floating point
	store pattern.  Add missing zero extension loads.

From-SVN: r74614
2003-12-14 07:26:19 +00:00
GCC Administrator 9ec31db31a Daily bump.
From-SVN: r74609
2003-12-14 00:16:07 +00:00
Kazu Hirata 839a499276 vxlib.c: Fix comment typos.
* config/vxlib.c: Fix comment typos.
	* config/alpha/alpha.c: Likewise.
	* config/arm/arm.c: Likewise.
	* config/arm/arm.md: Likewise.
	* config/c4x/c4x.c: Likewise.
	* config/c4x/c4x.md: Likewise.
	* config/cris/cris.h: Likewise.
	* config/cris/cris.md: Likewise.
	* config/fr30/fr30.c: Likewise.
	* config/fr30/fr30.h: Likewise.
	* config/fr30/fr30.md: Likewise.
	* config/frv/frv.c: Likewise.
	* config/frv/frv.md: Likewise.
	* config/frv/frvbegin.c: Likewise.
	* config/i386/athlon.md: Likewise.
	* config/i386/i386.c: Likewise.
	* config/i386/i386.md: Likewise.
	* config/i386/sco5.h: Likewise.
	* config/ia64/ia64.md: Likewise.
	* config/ip2k/ip2k.c: Likewise.
	* config/ip2k/ip2k.md: Likewise.
	* config/m68hc11/m68hc11.h: Likewise.
	* config/m68k/m68k.h: Likewise.
	* config/mips/mips.c: Likewise.
	* config/rs6000/rs6000.c: Likewise.
	* config/s390/s390.md: Likewise.
	* config/sh/sh.h: Likewise.
	* config/sparc/sparc.md: Likewise.
	* config/v850/v850.c: Likewise.
	* config/v850/v850.h: Likewise.
	* config/v850/v850.md: Likewise.
	* config/xtensa/xtensa.c: Likewise.

From-SVN: r74596
2003-12-13 04:44:12 +00:00
Kazu Hirata da1d7781e4 ChangeLog: Fix typos.
* ChangeLog: Fix typos.
	* ChangeLog.1: Likewise.
	* ChangeLog.2: Likewise.
	* call.c: Fix comment typos.
	* class.c: Likewise.
	* cxx-pretty-print.c: Likewise.
	* mangle.c: Likewise.
	* parser.c: Likewise.
	* pt.c: Likewise.
	* tree.c: Likewise.

From-SVN: r74595
2003-12-13 04:28:50 +00:00
Kazu Hirata ba228239d2 c-typeck.c: Fix comment typos.
* c-typeck.c: Fix comment typos.
	* calls.c: Likewise.
	* cfgcleanup.c: Likewise.
	* cgraph.h: Likewise.
	* dwarfout.c: Likewise.
	* emit-rtl.c: Likewise.
	* explow.c: Likewise.
	* expr.c: Likewise.
	* flow.c: Likewise.
	* function.c: Likewise.
	* gcc.c: Likewise.
	* ggc-zone.c: Likewise.
	* ifcvt.c: Likewise.
	* local-alloc.c: Likewise.
	* predict.c: Likewise.
	* pretty-print.c: Likewise.
	* profile.c: Likewise.
	* ra-colorize.c: Likewise.
	* sched-vis.c: Likewise.
	* stor-layout.c: Likewise.

From-SVN: r74594
2003-12-13 04:11:23 +00:00
Fernando Nasser 7ecd45764f gtkpeer.h: Extend NSA set of macros to handle a second native state table --...
2003-12-12  Fernando Nasser  <fnasser@redhat.com>

	* jni/gtk-peer/gtkpeer.h: Extend NSA set of macros to handle a second
	native state table -- native_global_ref_table.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c: Define
	native_global_ref_table pointer.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkGenericPeer_dispose): Make sure JNI
	global reference is deleted and memory allocated for pointer freed.
	(Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectSignals): Use saved
	JNI global reference instead of JNI local reference.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(pre_event_handler): Remove compilation warning.
	(connect_awt_hook): Use saved JNI global reference instead of creating
	a new one.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkButtonPeer_create): Save JNI global
	reference to the Java object.
	(Java_gnu_java_awt_peer_gtk_GtkButtonPeer_connectSignals): Remove
	unused variable declaration and add comment.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkCanvasPeer_create): Save JNI global
	reference to the Java object.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer_create): Ditto.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkCheckboxPeer_nativeCreate): Ditto.
	(Java_gnu_java_awt_peer_gtk_GtkCheckboxPeer_connectSignals): Use saved
	JNI global reference instead of JNI local reference.
	(item_toggled): Add debug statement.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c
	(Java_gnu_java_awt_peer_gtk_GtkChoicePeer_create): Save JNI global
	reference to the Java object.
	(connect_choice_item_selectable_hook): Use saved JNI global references
	instead of JNI local reference.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer_create): Save JNI
	global reference to the Java object.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkFileDialogPeer_create): Save JNI global
	reference to the Java object.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkLabelPeer_create): Ditto.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkMenuBarPeer_create): Ditto.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkMenuPeer_create): Ditto.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c
	(Java_gnu_java_awt_peer_gtk_GtkScrollPanePeer_create): Ditto.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_create): Ditto.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkTextFieldPeer_create): Ditto.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkListPeer_create): Ditto.
	(Java_gnu_java_awt_peer_gtk_GtkListPeer_connectSignals): Use saved
	JNI global reference instead of JNI local reference.
	(item_selected): Add debug statement.
	(item_unselected): Add debug statement.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkMenuItemPeer_create): Save JNI global
	reference to the Java object.
	Connect "activate" signal handler using global JNI reference.
	(connect_activate_hook): Removed in favor of inline code.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkPanelPeer_create): Save JNI global
	reference to the Java object.
	(Java_gnu_java_awt_peer_gtk_GtkPanelPeer_connectSignals): Use saved
	JNI global reference instead of JNI local reference.  Add FIXME comment.
	(Java_gnu_java_awt_peer_gtk_GtkPanelPeer_gtkPanelNew): Save JNI global
	reference to the Java object.  Add FIXME comment.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkScrollbarPeer_create): Save JNI global
	reference to the Java object.
	(Java_gnu_java_awt_peer_gtk_GtkScrollbarPeer_connectSignals): Use saved
	JNI global reference instead of JNI local reference.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkTextComponentPeer_connectSignals): Use
	saved JNI global reference instead of JNI local reference.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkWindowPeer_create): Save JNI global
	reference to the Java object.
	(Java_gnu_java_awt_peer_gtk_GtkWindowPeer_connectSignals): Use saved
	JNI global reference instead of JNI local reference.

From-SVN: r74593
2003-12-13 01:15:47 +00:00
Steven Bosscher b944d18757 ggc-zone.c (struct alloc_zone): Don't pre-declare, it already comes in with ggc.h.
* ggc-zone.c (struct alloc_zone): Don't pre-declare, it already
	comes in with ggc.h.  Add a new bool field `dead'.
	(destroy_ggc_zone): Don't destroy a zone at once.  Instead, only
	set the `dead' flag for the dead zone.  Wrap a sanity check in
	ENABLE_CHECKING.
	(ggc_collect_1): Always mark and sweep if a zone has the `dead'
	flag set.
	(ggc_collect): Free dead zones after collecting.

From-SVN: r74592
2003-12-13 01:06:11 +00:00
Jan Hubicka bbfff586bc coverage.c (get_coverage_counts): Use inform instead of warning about missing profile.
* coverage.c (get_coverage_counts):  Use inform instead of warning
	about missing profile.

From-SVN: r74591
2003-12-13 00:24:39 +00:00
Kazu Hirata 5c425df517 ggc-zone.c: Follow spelling conventions.
* ggc-zone.c: Follow spelling conventions.
	* config/rs6000/rs6000.c: Likewise.
	* pt.c: Likewise.
	* semantics.c: Likewise.
	* objc/objc-act.c: Likewise.

From-SVN: r74590
2003-12-13 00:23:51 +00:00
GCC Administrator 7764b8fa53 Daily bump.
From-SVN: r74588
2003-12-13 00:16:12 +00:00
Steven Bosscher 94c4311227 * Makefile.in (opts.o, explow.o): Depend on langhooks.h
From-SVN: r74584
2003-12-12 22:53:51 +00:00
Geoffrey Keating 33d2ad24d3 config.gcc: Don't use fixproto.
* config.gcc <i[34567]86-*-darwin*>: Don't use fixproto.
	<powerpc-*-darwin*>: Likewise.

From-SVN: r74581
2003-12-12 21:11:50 +00:00
Paolo Carlini e3c0c0989b re PR libstdc++/13341 (ctype<wchar_t>::do_narrow(wchar_t, char) is slow)
2003-12-12  Paolo Carlini  <pcarlini@suse.de>
	    Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/13341
	* include/bits/locale_facets.h (ctype<wchar_t>): Declare
	_M_initialize_ctype() and _M_narrow_ok, _M_narrow and _M_widen.
	* src/ctype.cc (ctype<wchar_t>::ctype(size_t),
	ctype<wchar_t>::ctype(__c_locale, size_t)): Use
	_M_initialize_ctype to fill _M_narrow and _M_widen.
	(ctype_byname<wchar_t>::ctype_byname(const char*, size_t)):
	Likewise.
	* config/locale/generic/ctype_members.cc (do_narrow, do_widen)
	Use _M_narrow and _M_widen when possible, instead of calling
	wctob and btowc, respectively.
	(_M_initialize_ctype): Define, it fills at construction time
	_M_narrow and _M_widen.
	* config/locale/gnu/ctype_members.cc: Likewise.
	* testsuite/performance/narrow_widen_wchar_t.cc: New.

Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>

From-SVN: r74580
2003-12-12 19:44:17 +00:00
Nathan Sidwell e00853fd90 re PR c++/13118 ([ABI] Missed covariant return thunk)
cp:
	PR c++/13118
	* cp-tree.h (lang_decl_u): Add thunk_alias member.
	(THUNK_VIRTUAL_OFFSET): Must be a FUNCTION_DECL.
	(THUNK_ALIAS_P): Remove.
	(THUNK_ALIAS): Adjust.
	* class.c (update_vtable_entry_for_fn): Get the vbase within the
	overriding function's return type.
	(dump_thunk): Adjust THUNK_ALIAS printing.
	(build_vtbl_initializer): Adjust THUNK_ALIAS use.
	* method.c (make_thunk): Revert 12881 test change. Clear
	THUNK_ALIAS.
	(finish_thunk): Adjust THUNK_ALIAS setting.
	(use_thunk): Adjust THUNK_ALIAS use.
	* semantics.c (emit_associated_thunks): Likewise.
testsuite:
	PR c++/13118
	* g++.dg/abi/covariant3.C: New.

From-SVN: r74576
2003-12-12 18:22:23 +00:00
Jakub Jelinek 3950dcdfcc linux.h (IA64_GATE_AREA_END): Increase by 64K.
* config/ia64/linux.h (IA64_GATE_AREA_END): Increase by 64K.
	(MD_FALLBACK_FRAME_STATE_FOR): Set fpsr_loc, br_loc[6] and
	br_loc[7].  Update comment.
	(MD_HANDLE_UNWABI): Define.
	* config/ia64/unwind-ia64.c (struct unw_state_record): Add
	unwabi field.
	(struct _Unwind_Context): Increase br_loc array size to 8 entries.
	(desc_abi): Set unwabi.
	(uw_update_reg_address): Allow br up to 7.
	(uw_update_context): Invoke MD_HANDLE_UNWABI if defined.
	(uw_install_context): Load b1..b5 from correct locations.
	Fix insn loading ar.fpsr.
	* doc/tm.texi: Document MD_HANDLE_UNWABI.

	* g++.dg/eh/ia64-1.C: New test.

From-SVN: r74575
2003-12-12 17:45:51 +01:00
Nathan Sidwell 3075b32758 PR c++/13114, c++/13115
PR c++/13114, c++/13115
	* class.c (layout_empty_base): Propagate the move of an empty base
	to offset zero.

From-SVN: r74573
2003-12-12 14:48:31 +00:00
Roger Sayle 77fec971c1 re PR rtl-optimization/13037 ([gcse-lm] g77 generates incorrect code)
PR optimization/13037
	* loop.c (update_giv_derive): Ignore redundant sets of a biv when
	calculating how to derive a giv from a biv.

	* g77.f-torture/execute/13037.f: New test case.

From-SVN: r74572
2003-12-12 14:31:18 +00:00
Nathan Sidwell 90d46c28f2 re PR c++/12881 (ICE in make_thunk)
PR c++/12881
	* method.c (make_thunk): Deal with thunk aliases when searching
	for a thunk. Robustify assertion.

From-SVN: r74571
2003-12-12 14:06:53 +00:00
Jonathan Wakely a7bc3cdc85 index.txt: Regenerate after adding <link> tags.
2003-12-12  Jonathan Wakely  <redi@gcc.gnu.org>

	* docs/html/faq/index.txt: Regenerate after adding <link> tags.

From-SVN: r74563
2003-12-12 10:55:43 +00:00
Neil Booth 45f2492c99 PR preprocessor/12935 preprocessor/12952 preprocessor/13046
PR preprocessor/12935 preprocessor/12952 preprocessor/13046
	* cpplib.c (prepare_directive_trad): Clear skipping only in
	#if and #elif directives.
	(do_undef): Call the handler even if the identifier is not a macro.
	* cpptrad.c (scan_parameters): Emit an error message.
	(_cpp_create_trad_definition): Remember the params list even on
	failure.
	* testsuite/gcc.dg/cpp/trad/macro.c: New tests.

From-SVN: r74562
2003-12-12 07:00:29 +00:00
Zack Weinberg d2b6eb76fa arm.c (ARM_ADDRESS_COST, [...]): Convert macros to inline functions...
* arm.c (ARM_ADDRESS_COST, THUMB_ADDRESS_COST): Convert macros
	to inline functions: arm_arm_address_cost, arm_thumb_address_cost
	respectively.
	(arm_address_cost): Use 'em.

From-SVN: r74560
2003-12-12 02:23:03 +00:00
Zack Weinberg 15975b4314 * gcc.c-torture/execute/wchar_t-1.x: Delete.
From-SVN: r74559
2003-12-12 02:07:06 +00:00
Rainer Orth f502cbff6d osf.h (TARGET_OS_CPP_BUILTINS): Define __STDC_VERSION__ to ISO C94 for C++.
* config/alpha/osf.h (TARGET_OS_CPP_BUILTINS): Define
	__STDC_VERSION__ to ISO C94 for C++.

	* fixinc/inclhack.def (alpha_wchar): New fix.
	* fixinc/fixincl.x: Regenerate.
	* fixinc/tests/base/wchar.h: New file.

From-SVN: r74558
2003-12-12 01:19:25 +00:00
GCC Administrator d8683476fe Daily bump.
From-SVN: r74554
2003-12-12 00:16:06 +00:00
Neil Ferguson cbc6795585 basic_string.tcc (reserve): Allow shrink-to-fit.
2003-12-11  Neil Ferguson  <nferguso@eso.org>
	    Paolo Carlini  <pcarlini@suse.de>

	* include/bits/basic_string.tcc (reserve): Allow shrink-to-fit.
	* testsuite/21_strings/basic_string/capacity/1.cc: Tweak.
	* testsuite/21_strings/basic_string/capacity/char/1.cc: Ditto.
	* testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Ditto.

Co-Authored-By: Paolo Carlini <pcarlini@suse.de>

From-SVN: r74551
2003-12-11 22:29:12 +00:00
David Mosberger fe16ab7e3e libunwind related patch from David Mosberger
libunwind related patch from David Mosberger
* unwind-libunwind.c (_Unwind_SetGR): Clear the NaT bit as
required by C++ ABI for Itanium.
* config/t-libunwind (LIB2ADDEH): Remove unwind-libunwind.c.
* config/t-libunwind-no-eh: New file.
* configure.in: Check libunwind for _Unwind_Resume() and if it's
present, set libunwind_has_eh_support to "yes".
* configure: Regenerate.
* config.gcc (ia64*-*-linux*): If $libunwind_has_eh_support is
set to yes, use t-libunwind, otherwise, use t-libunwind-no-eh.

From-SVN: r74548
2003-12-11 12:50:33 -08:00
Richard Sandiford 7ac88634ad mips.c (mips_global_pointer): Force functions with a nonlocal goto to set up $gp.
* config/mips/mips.c (mips_global_pointer): Force functions with
	a nonlocal goto to set up $gp.

From-SVN: r74547
2003-12-11 20:47:10 +00:00
James E Wilson 1ec7a83137 Fix for problem with unnecessary volatile mems.
PR target/13132
* function.c (gen_mem_addressof): When no decl, explicitly clear flag
bits.

From-SVN: r74543
2003-12-11 11:04:07 -08:00