Commit Graph

47509 Commits

Author SHA1 Message Date
Mark Mitchell
5552b43ca5 class.c (check_field_decls): Only check C_TYPE_FIELDS_READONLY for class types.
* class.c (check_field_decls): Only check C_TYPE_FIELDS_READONLY
	for class types.
	* cp-tree.h (C_TYPE_FIELDS_READONLY): Use a lang-specific bit
	rather than TYPE_LANG_FLAG_0.
	(TYPE_BUILT_IN): Remove.
	(TYPE_DEPENDENT_P): New macro.
	(TYPE_DEPENDENT_P_VALID): Likewise.
	(lang_type_class): Add fields_readonly.
	* decl.c (record_builtin_type): Don't set TYPE_BUILT_IN.
	* pt.c (dependent_type_p_r): New function, split out from ...
	(dependent_type_p): ... here.  Memoize results.
	* search.c (dependent_base_p): Use dependent_type_p, not
	uses_template_parms.
	* typeck.c (build_modify_expr): Only check C_TYPE_FIELDS_READONLY
	for class types.

From-SVN: r62143
2003-01-30 16:02:58 +00:00
Richard Earnshaw
e43dd89d80 arm.c (arm_compute_initial_elimination_offset): If optimizing for size...
* arm.c (arm_compute_initial_elimination_offset): If optimizing for
size, the link register is always saved if any other register is
saved.

From-SVN: r62142
2003-01-30 15:39:43 +00:00
Kazu Hirata
87a902e411 h8300-protos.h: Update the prototype for compute_plussi_cc.
* config/h8300/h8300-protos.h: Update the prototype for
	compute_plussi_cc.
	(cpp_reader): Declare before it is used.
	* config/h8300/h8300.c (compute_plussi_cc): Change the return
	type to int.
	* config/h8300/h8300.md (monitor_prologue): Call abort() if we
	see an unknown H8 variant.

From-SVN: r62141
2003-01-30 15:36:19 +00:00
Ralf Corsepius
0186a143cb re PR target/9316 (powerpc-rtems/extending multilibs)
2003-01-30	Ralf Corsepius <corsepiu@faw.uni-ulm.de>

	PR target/9316
	* config/rs6000/rtems.h: Add CPP_OS_DEFAULT_SPEC.
	* config/rs6000/sysv4.h: Add CPP_OS_RTEMS_SPEC.
	* config/rs6000/t-rtems: New file. multilib variants to match OS.
	* config.gcc (powerpc-*-rtems*): Use rs6000/t-rtems instead of
	rs6000/t-ppcgas so we get the desired multilibs.

From-SVN: r62139
2003-01-30 14:22:53 +00:00
Nick Clifton
f55d710361 (arm_output_epilogue): Update stack pointer when popping saved IP register
off the stack.

From-SVN: r62138
2003-01-30 14:13:25 +00:00
Kazu Hirata
b6d08ca1ec aix43.h: Fix comment typos.
* config/rs6000/aix43.h: Fix comment typos.
	* config/rs6000/aix51.h: Likewise.
	* config/rs6000/aix52.h: Likewise.
	* config/rs6000/altivec.h: Likewise.
	* config/rs6000/rs6000.c: Likewise.
	* config/rs6000/rs6000.h: Likewise.
	* config/rs6000/rs6000.md: Likewise.
	* config/rs6000/spe.md: Likewise.

From-SVN: r62133
2003-01-30 13:19:16 +00:00
Alexandre Oliva
a693735b84 config.if: If gcc_version is already set, just use it.
* config.if: If gcc_version is already set, just use it.  Don't set
gcc_version_trigger if it's already set, otherwise set it to
gcc/version.c, but only if the file exists.  If it is not set and
gcc/version.c does not exist, try to extract the version number from
$CC.

From-SVN: r62131
2003-01-30 11:52:51 +00:00
Mark Mitchell
14d22dd667 c-common.c (builtin_define_float_constants): Define __<TYPE>_HAS_INFINITY__ and __<TYPE>_HAS_QUIET_NAN__.
* c-common.c (builtin_define_float_constants): Define
	__<TYPE>_HAS_INFINITY__ and __<TYPE>_HAS_QUIET_NAN__.

	* call.c (build_field_call): Use build_new_op, not build_opfncall.
	(prep_operand): New function.
	(build_new_op): Use it.  Remove dead code.
	* class.c (pushclass): Change "modify" parameter type from int to
	bool.
	(currently_open_class): Use same_type_p, not pointer equality.
	(push_nested_class): Adjust calls to pushclass, remove modify
	parameter.
	* cp-tree.h (INTEGRAL_OR_ENUMERATION_TYPE_P): New macro.
	(pushclass): Change prototype.
	(push_nested_class): Likewise.
	(grokoptypename): Remove.
	(build_opfncall): Remove.
	(value_dependent_expression_p): Declare.
	(resolve_typename_type): Likewise.
	(resolve_typename_type_in_current_instantiation): Likewise.
	(enter_scope_of): Remove.
	(tsubst): Remove.
	(tsubst_expr): Likewise.
	(tsubst_copy): Likewise.
	(tsubst_copy_and_build): Likewise.
	* decl.c (warn_about_implicit_typename_lookup): Remove.
	(finish_case_label): Return error_mark_node for erroneous labels.
	(start_decl): Adjust calls to push_nested_class.
	(grokfndecl): Call push_scope/pop_scope around call to
	duplicate_decls.
	(grokdeclarator): Do not call tsubst.
	(start_function): Adjust calls to push_nested_class.
	* decl2.c (grok_array_decl): Use build_new_op, not build_opfncall.
	(check_classfn): Use push_scope/pop_scope around type comparisions.
	(grokoptypename): Remove.
	(push_sscope): Adjust call to push_nested_class.
	* error.c (dump_type): Show cv-qualification of typename types.
	* init.c (build_member_call): Use build_new_op, not
	build_opfncall.
	* method.c (build_opfncall): Remove.
	* parser.c (cp_parser): Add allow_non_constant_expression_p and
	non_constant_expression_p.
	(cp_parser_constant_expression): Adjust prototype.
	(cp_parser_resolve_typename_type): Remove.
	(cp_parser_non_constant_expression): New function.
	(cp_parser_non_constant_id_expression): Likewise.
	(cp_parser_new): Set allow_non_constant_expression_p and
	non_constant_expression_p.
	(cp_parser_primary_expression): Reject `this' and `va_arg' in
	constant-expressions.  Note that dependent names aren't really
	constant.
	(cp_parser_postfix_expression): Reject conversions to non-integral
	types in constant-expressions.  Neither are increments or
	decrements.
	(cp_parser_unary_expression): Reject increments and decrements in
	constant-expressions.
	(cp_parser_direct_new_declarator): Adjust call to
	cp_parser_constant_expression.
	(cp_parser_cast_expression): Reject conversions to non-integral
	types in constant-expressions.
	(cp_parser_assignment_expression): Rejects assignments in
	constant-expressions.
	(cp_parser_expression): Reject commas in constant-expressions.
	(cp_parser_labeled_statement): Adjust call to
	cp_parser_constant_expression.
	(cp_parser_direct_declarator): Simplify array bounds, even in
	templates, when they are non-dependent.  Use
	resolve_typename_type, not cp_parser_resolve_typename_type.
	(cp_parser_class_head): Use resolve_typename_type, not
	cp_parser_resolve_typename_type.
	(cp_parser_member_declaration): Adjust call to
	cp_parser_constant_expression.
	(cp_parser_constant_initializer): Likewise.
	(cp_parser_constructor_declarator): Use resolve_typename_type, not
	cp_parser_resolve_typename_type.
	(cp_parser_late_parsing_default_args): Adjust call to
	push_nested_class.
	* pt.c (tsubst): Give it internal linkage.
	(tsubst_expr): Likewise.
	(tsubst_copy): Likewise.
	(tsubst_copy_and_build): Likewise.
	(push_access_scope_real): Likewise.
	(tsubst_friend_class): Likewise.
	(instantiate_class_template): Adjust call to pushclass.
	(value_dependent_expression_p): Give it external linkage.
	Robustify.
	(resolve_typename_type): New function.
	* semantics.c (finish_call_expr): Use build_new_op, not
	build_opfncall.
	(begin_constructor_declarator): Remove.
	(begin_class_definition): Adjust call to pushclass.
	(enter_scope_of): Remove.
	* typeck.c (comptypes): Resolve typename types as appropriate.
	(build_x_indirect_ref): Use build_new_op, not build_opfncall.
	(build_x_compound_expr): Likewise.
	(build_modify_expr): Likewise.
	(build_x_modify_expr): Likewise.
	* typeck2.c (build_x_arrow): Likewise.

	* g++.dg/parser/constant1.C: New test.

	* include/std/std_limits.h (numeric_limits<float>::has_infinity):
	Use __FLT_HAS_INIFINITY__ to initialize.
	(numeric_limits<float>::has_quiet_NaN): Likewise.
	(numeric_limits<double>::has_infinity): Use __DBL_HAS_INIFINITY__
	to initialize.
	(numeric_limits<double>::has_quiet_NaN): Likewise.
	(numeric_limits<long double>::has_infinity): Use
	__LDBL_HAS_INIFINITY__ to initialize.
	(numeric_limits<long_double>::has_quiet_NaN): Likewise.

From-SVN: r62130
2003-01-30 07:24:02 +00:00
Kazu Hirata
825db093df lib1funcs.asm: Fix comment typos.
* config/sh/lib1funcs.asm: Fix comment typos.
	* config/sh/linux.h: Likewise.
	* config/sh/sh.c: Likewise.
	* config/sh/sh.md: Likewise.

From-SVN: r62129
2003-01-30 06:17:33 +00:00
Loren J. Rittle
65eb9b872a Make-lang.in (po-generated): Find the targets in $(parsedir).
* Make-lang.in (po-generated): Find the targets in $(parsedir).
	Propagate change to all other rules as required.
	(java/parse-scan.o): Add explicit dependency on
	$(parsedir)/java/parse-scan.c .

From-SVN: r62128
2003-01-30 05:19:31 +00:00
Loren J. Rittle
f1d5271a09 * objc/Make-lang.in (objc-parse.y): Find c-parse.in in $(srcdir).
From-SVN: r62127
2003-01-30 05:17:56 +00:00
Alexandre Oliva
266a9ef1e8 * config/fp-bit.h (__make_dp): Declare if TMODES.
From-SVN: r62125
2003-01-30 04:20:07 +00:00
Laurent Guerby
c1cc6a51a1 re PR ada/8344 (mips-rtems build problem)
2003-01-29  Laurent Guerby <guerby@acm.org>

        PR ada/8344
        * final.c: rename to adafinal.c to avoid file name conflicts with gcc file.
        * Makefile.in: match previous change.
        * Make-lang.in: match previous change.

From-SVN: r62122
2003-01-30 00:46:22 +00:00
GCC Administrator
00a673ff61 Daily bump.
From-SVN: r62121
2003-01-30 00:17:05 +00:00
Franz Sirl
c33402e255 ppc_closure.S: Recode to fit shared libs.
2003-01-29  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* src/powerpc/ppc_closure.S: Recode to fit shared libs.

From-SVN: r62112
2003-01-29 23:53:54 +00:00
Kazu Hirata
0889116d34 h8300.h (PREDICATE_CODES): Add entries for general_operand_src and general_operand_dst.
* config/h8300/h8300.h (PREDICATE_CODES): Add entries for
	general_operand_src and general_operand_dst.

From-SVN: r62110
2003-01-29 22:04:57 +00:00
Fariborz Jahanian
be5a07ac01 cp/pt.c change log entry move from ./ChangeLog to cp/ChangeLog
From-SVN: r62106
2003-01-29 19:13:12 +00:00
Fariborz Jahanian
2399b15afb Added 'Fariborz Jahanian' to the 'Write After Approval' list.
From-SVN: r62105
2003-01-29 19:08:42 +00:00
Tom Tromey
c78f2b91f5 parse.y (patch_assignment): Only transform the rhs of an assignment when compiling to native.
* parse.y (patch_assignment): Only transform the rhs of an
	assignment when compiling to native.

From-SVN: r62104
2003-01-29 18:48:41 +00:00
Joel Sherrill
c4039eb00f 5rosinte.ads: Add SIGXCPU.
2003-01-29	Joel Sherrill <joel@OARcorp.com>

	* 5rosinte.ads: Add SIGXCPU.
	* 5rtpopsp.adb: New file.
	* Make-lang.in: Do not build gnatpsta and gnatpsys when cross.
	* Makefile.in: Recognize more RTEMS targets and add the RTEMS
	specific file 5rtpopsp.adb.
	* adaint.h: Add include of <stdio.h> when target is RTEMS.  This
	is likely needed for all newlib targets.
	* init.c: Add RTEMS specific version of __gnat_initialize().

From-SVN: r62098
2003-01-29 17:43:57 +00:00
Andreas Tobler
204c43d642 * MAINTAINERS Add myself to write-after-approval list.
From-SVN: r62097
2003-01-29 18:43:30 +01:00
David Edelsohn
c8c99a6877 rs6000.c (function_arg_pass_by_reference): Return true for variable sized types.
* config/rs6000/rs6000.c (function_arg_pass_by_reference):
        Return true for variable sized types.
        (rs6000_va_arg): Handle variable sized types passed by reference
        on non-SVR4 ABI.

From-SVN: r62095
2003-01-29 12:37:25 -05:00
Richard Earnshaw
ccf4d51284 arm.c (arm_legtimize_address): New function.
* arm.c (arm_legtimize_address): New function.
* arm-protos.h (arm_legtimize_address): Add prototype.
* arm.h (ARM_LEGITIMIZE_ADDRESS): Use arm_legitimize_address.
(LEGITIMIZE_ADDRESS, THUMB_LEGITIMIZE_ADDRESS): Wrap with
do ... while (0)

From-SVN: r62091
2003-01-29 16:50:34 +00:00
Joel Sherrill
0680c8fb90 re PR bootstrap/9296 ([*-rtems] gthr-rtems regression)
2003-01-29	Joel Sherrill <joel@OARcorp.com>

	* gthr-rtems.h: Define __GTHREAD_MUTEX_INIT.  Apparently no code
	depended on it being defined until now. This was tracked as PR9296.

From-SVN: r62084
2003-01-29 15:06:59 +00:00
Joel Sherrill
c934274a40 re PR target/9295 ([mips-rtems] config/mips/rtems.h init/fini issue)
2003-01-13	Joel Sherrill <joel@OARcorp.com>

	* config/mips/rtems.h: Predefine __USE_INIT_FINI__ so generic
	RTEMS code knows which C++ initialization style the toolset
	configuration is using. This was tracked as PR9295.

From-SVN: r62082
2003-01-29 15:01:39 +00:00
Joel Sherrill
2e327e6e14 re PR bootstrap/9293 ([m68k-elf/rtems] config/m68k/t-crtstuff bug)
2003-01-29	Joel Sherrill <joel@OARcorp.com>

	* config/m68k/t-crtstuff: Replace spaces with tabs, add
	 $(MULTILIB_CFLAGS) as compiler option and multilib crtbegin/end.o.
	This issue was tracked as PR9293.

From-SVN: r62080
2003-01-29 14:57:36 +00:00
Joel Sherrill
64abe03e3d re PR bootstrap/9292 (hppa1.1-rtems configurery problems)
2003-01-29	Joel Sherrill <joel@OARcorp.com>

	* config.gcc (hppa1.1-rtems):  Did not include t-rtems nor enable
	RTEMS threads.
	* config/pa/rtems.h (LIB_SPEC): Use -N when linking.
	This issue was tracked as PR9292.

From-SVN: r62078
2003-01-29 14:54:09 +00:00
Kriang Lerdsuwanakij
710b73e6f7 re PR c++/8591 (g++ crashes while instantiating templates)
PR c++/8591
	* parser.c (cp_parser_elaborated_type_specifier): Convert
	TEMPLATE_DECL to TYPE_DECL only when processing template friends.
	(cp_parser_maybe_treat_template_as_class): Remove redundant tests.

	* g++.dg/parse/friend2.C: New test.

From-SVN: r62076
2003-01-29 14:25:06 +00:00
Nick Clifton
2f12fb2b8b c-parse.o: Locate source file in $(parsedir) not $(srcdir).
From-SVN: r62073
2003-01-29 12:32:08 +00:00
Nathan Sidwell
9ae58faf6f re PR c++/9437 (template function parameter `T*' shouldn't match pointers to members)
cp:
	PR c++/9437
	* pt.c (unify): Don't unify '*T' with 'U C::*'.
testsuite:
	PR c++/9437
	* g++.dg/template/unify4.C: New test.

From-SVN: r62070
2003-01-29 11:35:33 +00:00
Andrew Haley
cf0150b995 tree-inline.c (walk_tree): Add CHAR_TYPE.
2003-01-29  Andrew Haley  <aph@redhat.com>

        * tree-inline.c (walk_tree): Add CHAR_TYPE.

From-SVN: r62068
2003-01-29 10:52:08 +00:00
Jan Hubicka
9b74f3ea80 * i386.md (subdi3_carry_rex64): Fix typo.
From-SVN: r62066
2003-01-29 09:27:46 +00:00
Fariborz Jahanian
c96b939fa5 Test for bug in read-back of the pending instantiation list from the PCH file.
From-SVN: r62063
2003-01-29 02:08:15 +00:00
Fariborz Jahanian
13e73b2952 * pt.c (last_pending_template) Declare GTY().
From-SVN: r62062
2003-01-29 02:05:38 +00:00
Tom Tromey
0d42c3c26f * jcf-write.c (generate_bytecode_conditional): Typo fixes.
From-SVN: r62061
2003-01-29 01:19:40 +00:00
GCC Administrator
eda8d9c5c7 Daily bump.
From-SVN: r62059
2003-01-29 00:17:08 +00:00
Oscar Pearce
757e166288 Component.java (processPaintEvent): Dispose of Graphics object when finished.
2003-01-28  Oscar Pearce  <oscar@pearceenterprises.com>

	* java/awt/Component.java (processPaintEvent): Dispose of Graphics
	object when finished.

From-SVN: r62052
2003-01-28 23:49:46 +00:00
Stan Shebs
e150159cbe coretypes.h (cpp_reader): Forward declare struct.
* coretypes.h (cpp_reader): Forward declare struct.
        * c-pragma.h (cpp_reader): Remove forward declaration.
        * hashtable.h (cpp_reader): Likewise.
        * scan.h (cpp_reader): Likewise.
        * tree.h (cpp_reader): Likewise.
        * config/darwin-protos.h (cpp_reader): Likewise.
        * config/arm/arm-protos.h (cpp_reader): Likewise.
        * config/rs6000/rs6000-protos.h: Remove GCC_CPPLIB_H ifdef, use
        struct cpp_reader in prototypes.

From-SVN: r62050
2003-01-28 23:26:28 +00:00
Andreas Tobler
e9e93c8b7c * libjava/configure.host: Disable can_unwind_signal on darwin.
From-SVN: r62048
2003-01-28 23:25:39 +00:00
Tom Tromey
f3ded1c171 TestEarlyGC.java: Added comment explaining bytecode.
* libjava.loader/TestEarlyGC.java: Added comment explaining
	bytecode.

From-SVN: r62047
2003-01-28 23:21:13 +00:00
Christian Cornelssen
53b50ac137 install.texi: Add documentation for installation into tooldirs and with DESTDIR.
* doc/install.texi: Add documentation for installation into
tooldirs and with DESTDIR.

From-SVN: r62044
2003-01-28 23:15:16 +00:00
Richard Henderson
021aa6ed6f config.gcc (ia64*-*-aix*): Remove.
* config.gcc (ia64*-*-aix*): Remove.
        * config/ia64/aix.h, config/ia64/t-aix: Remove file.
        * config/ia64/unwind-aix.c: Remove file.

From-SVN: r62043
2003-01-28 15:04:02 -08:00
Alexandre Oliva
db2cd5e6c0 configure.in (toolexecdir, [...]): Set and AC_SUBST.
* configure.in (toolexecdir, toolexeclibdir): Set and AC_SUBST.
Remove USE_LIBDIR conditional.
* Makefile.am (toolexecdir, toolexeclibdir): Don't override.
* Makefile.in, configure: Rebuilt.

From-SVN: r62040
2003-01-28 22:58:58 +00:00
Ranjit Mathew
5bff4babe0 jargrep.c: Include xregex.h from libiberty instead of system regex.h for better portability.
2003-01-28  Ranjit Mathew  <rmathew@hotmail.com>

	* jargrep.c: Include xregex.h from libiberty instead of
	system regex.h for better portability.

From-SVN: r62035
2003-01-28 22:25:47 +00:00
Ranjit Mathew
65b8e87409 re PR java/9254 (java::lang::Object::wait(), threads-win32.cc returns wrong return codes)
2003-01-28  Ranjit Mathew  <rmathew@hotmail.com>

	Fixes PR java/9254:
	* include/win32-threads.h (_Jv_Mutex_t): Convert to a struct
	additionally containing id of the owner thread as well as
	the number of nested times the thread has acquired the mutex.
	(_Jv_MutexInit): Initialise owner thread id and refcount to 0.
	(_Jv_MutexDestroy): Reset owner thread id and refcount to 0.
	(_Jv_MutexUnlock): Check if really the owner thread, reset
	owner thread id to 0 before leaving, if leaving for the last
	time.
	(_Jv_MutexLock): Set owner thread id in the mutex and increment
	refcount.
	(_Jv_ThreadYield): Yield using a call to Sleep(0).
	* win32-threads.cc (_Jv_CondWait): Check if really owner of
	the passed mutex.
	Pass handle of the broadcast event, instead of a pointer to it
	in Win32 ResetEvent( ) call.
	Remove incorrect return values.
	(_Jv_CondDestroy): Close both event handles and delete
	critical section.
	(_Jv_CondNotify): Check if really the owner thread.
	(_Jv_CondNotifyAll): Check if really the owner thread.
	(_Jv_InitThreads): Change daemon_cond to a manual-reset event.
	(really_start): Use SetEvent( ) to signal daemon_cond.
	(_Jv_ThreadWait): Remove SignalObjectAndWait( ) and use
	WaitForSingleObject( ) instead to wait for daemon_cond to be
	signalled.

From-SVN: r62033
2003-01-28 22:23:36 +00:00
Andreas Schwab
c1c1d12306 m68k.md (tablejump+2): Don't sign extend an address register.
* config/m68k/m68k.md (tablejump+2): Don't sign extend an address
        register.
        * config/m68k/apollo68.h (ASM_RETURN_CASE_JUMP): Likewise.
        * config/m68k/coff.h (ASM_RETURN_CASE_JUMP): Likewise.
        * config/m68k/linux.h (ASM_RETURN_CASE_JUMP): Likewise.
        * config/m68k/m68kelf.h (ASM_RETURN_CASE_JUMP): Likewise.
        * config/m68k/mot3300.h (ASM_RETURN_CASE_JUMP): Likewise.
        * config/m68k/netbsd-elf.h (ASM_RETURN_CASE_JUMP): Likewise.
        * config/m68k/pbb.h (ASM_RETURN_CASE_JUMP): Likewise.

From-SVN: r62030
2003-01-28 14:17:21 -08:00
Richard Sandiford
6d09ef27d4 * combine.c (nonzero_bits): Fix check for negative divide operands.
From-SVN: r62029
2003-01-28 22:15:50 +00:00
Richard Henderson
1e1bd14eb2 ia64.c (ia64_rwreloc_section_type_flags): New.
* config/ia64/ia64.c (ia64_rwreloc_section_type_flags): New.
        * config/ia64/hpux.h (TARGET_SECTION_TYPE_FLAGS): New.

From-SVN: r62028
2003-01-28 14:08:24 -08:00
Christian Cornelssen
4ce1921a71 * Makefile.in (all-subdir, check-subdir, installcheck-subdir)
(info-subdir, install-info-subdir, clean-info-subdir)
(dvi-subdir, install-subdir, etags-subdir, mostlyclean-subdir)
(clean-subdir, distclean-subdir, maintainer-clean-subdir):
Pass $(FLAGS_TO_PASS).

From-SVN: r62013
2003-01-28 21:52:14 +00:00
Richard Henderson
75642f32e5 cris.c (cris_address_cost): Make static.
* config/cris/cris.c (cris_address_cost): Make static.
        (TARGET_RTX_COSTS, TARGET_ADDRESS_COST): New.
        * config/cris/cris.h (ADDRESS_COST): Remove.
        * config/cris/cris-protos.h: Update.

From-SVN: r62009
2003-01-28 13:32:24 -08:00