Commit Graph

54033 Commits

Author SHA1 Message Date
Carlo Wood
eb622d37cf demangle.h (qualifier_list<Allocator>::decode_qualifiers(string_type&, string_type&, bool member_function_pointer_qualifiers): Always seperate the '[' of an array type with a space from what is left of it...
* include/bits/demangle.h
(qualifier_list<Allocator>::decode_qualifiers(string_type&,
string_type&, bool member_function_pointer_qualifiers):
Always seperate the '[' of an array type with a space from
what is left of it, except when that is the closing bracket
of another array dimension.

From-SVN: r73328
2003-11-07 03:53:44 +00:00
Carlo Wood
2215f7320e demangle.h (qualifier_list<Allocator>::decode_qualifiers(string_type&, string_type&, bool) const): Made const.
* include/bits/demangle.h
(qualifier_list<Allocator>::decode_qualifiers(string_type&,
string_type&, bool) const): Made const.
(qualifier_list<Allocator>::M_printing_suppressed): Added mutable.
(_GLIBCXX_DEMANGLER_DOUT_ENTERING3, _GLIBCXX_DEMANGLER_RETURN3,
std::ostream& operator<<(std::ostream&, qualifier const&),
std::ostream& operator<<(std::ostream&, qualifier_list const&),
qualifier_list<Allocator>::decode_qualifiers(string_type&,
string_type&, bool) const,
session<Allocator>::decode_type_with_postfix(string_type&,
string_type&, qualifier_list<Allocator>*))
Added and/or changed debug-only hooks and code.

From-SVN: r73327
2003-11-07 03:49:43 +00:00
Mohan Embar
cafa50327c re PR libgcj/12231 ([win32] Console applications spawned via Runtime.exec( ) in a GUI application flash console window)
PR libgcj/12231
	* java/lang/Win32Process.java (hasExited) Changed from
	public to private.
	(startProcess): Likewise.
	(cleanup): Likewise.
	* java/lang/natWin32Process.cc (cleanup) Don't close
	input, output and error streams.
	(ChildProcessPipe): New helper class.
	(startProcess): Refactored to use ChildProcessPipe.
	Use CREATE_NO_WINDOW when launching child process.

From-SVN: r73326
2003-11-07 03:16:49 +00:00
Mohan Embar
bbf76ec06c win32.h (_Jv_platform_close_on_exec): Changed signature and declared extern.
* include/win32.h (_Jv_platform_close_on_exec): Changed
	signature and declared extern.
	* win32.cc (_Jv_platform_close_on_exec): Implemented.
	* gnu/java/net/natPlainDatagramSocketImplWin32.cc
	(create): Use new signature of _Jv_platform_close_on_exec.
	* gnu/java/net/natPlainSocketImplWin32.cc
	(create): Eliminated a few typecasts
	Use new signature of _Jv_platform_close_on_exec.
	(accept): Eliminated a few typecasts
	Use new signature of _Jv_platform_close_on_exec.
	* java/io/natFileDescriptorWin32.cc (open): Use
	_Jv_platform_close_on_exec.

From-SVN: r73325
2003-11-07 03:13:56 +00:00
GCC Administrator
eb4ad71ac1 Daily bump.
From-SVN: r73323
2003-11-07 00:16:07 +00:00
Matt Austern
968b41a166 c-common.c (handle_visibility_attribute): Set DECL_VISIBILITY field instead of hanging an attribute object off the decl.
* c-common.c (handle_visibility_attribute): Set DECL_VISIBILITY
	field instead of hanging an attribute object off the decl.
	* tree.h (DECL_VISIBLITY): New accessor macro for
	symbol_visibility field in struct tree_decl.
	(enum symbol_visibility): Move definition to before tree_decl.
	(struct tree_decl): Define new two-bit field, symbol_visibility.
	(decl_visibility): Remove declaration.
	* varasm.c (maybe_assemble_visibility): Use DECL_VISIBILITY
	instead of decl_visibility.
	(default_binds_local_p_1):  Use DECL_VISIBILITY	instead of
	decl_visibility.
	(decl_visibility): Remove.
	* cp/decl.c (duplicate_decls): copy DECL_VISIBILITY field.
	* cp/method.c (use_thunk): give thunk same visibility as function.
	* cp/optimize.c (maybe_clone_body): copy DECL_VISIBILITY field.

From-SVN: r73320
2003-11-06 22:08:26 +00:00
Ulrich Weigand
63e292b7ec s390.c (s390_emit_epilogue): Recognize more cases where register 14 will be saved.
* config/s390/s390.c (s390_emit_epilogue): Recognize more cases
	where register 14 will be saved.

From-SVN: r73319
2003-11-06 22:05:38 +00:00
Geoffrey Keating
2858f73ac1 rs6000.h (USE_FP_FOR_ARG_P): Move to rs6000.c.
* config/rs6000/rs6000.h (USE_FP_FOR_ARG_P): Move to rs6000.c.
	(USE_ALTIVEC_FOR_ARG_P): Likewise.
	* config/rs6000/rs6000.c (USE_FP_FOR_ARG_P): Move from rs6000.h.
	Take a pointer as the CUM parameter.  Update callers.
	(USE_ALTIVEC_FOR_ARG_P): Likewise.  Also correct for Darwin/AIX
	32-bit ABIs.
	(function_arg_advance): Use USE_ALTIVEC_FOR_ARG_P.  Correct case
	of vector parameters as named arguments of stdarg function.
	(function_arg): Likewise.

	* config/rs6000/darwin.h (ASM_SPEC): Use -force_cpusubtype_ALL when
	-maltivec is specified, not the non-existent -faltivec.

From-SVN: r73317
2003-11-06 21:52:36 +00:00
Ulrich Weigand
8c17530ef3 s390-protos.h (s390_function_value): Declare.
* config/s390/s390-protos.h (s390_function_value): Declare.
	* config/s390/s390.c (TARGET_RETURN_IN_MEMORY): Define.
	(s390_return_in_memory): New function.
	(s390_function_value): New function.
	(s390_function_arg_float): Return false for all arguments larger
	than 8 bytes.
	(s390_function_arg_pass_by_reference): Likewise.  Return true for
	all vector arguments.
	(s390_function_arg_integer): New function.
	(s390_function_arg_advance): Call it.  Add sanity checks.
	(s390_function_arg): Likewise.
	* config/s390/s390.h (FUNCTION_VALUE): Call s390_function_value.
	(LIBCALL_VALUE): Likewise.
	(RET_REG): Remove.
	(RETURN_IN_MEMORY): Remove.

From-SVN: r73314
2003-11-06 21:35:10 +00:00
Andreas Tobler
2b04d015d6 prep_cif.c (ffi_prep_cif): Move the validity check after the initialization.
2003-11-06  Andreas Tobler  <a.tobler@schweiz.ch>

	* src/prep_cif.c (ffi_prep_cif): Move the validity check after
	the initialization.

From-SVN: r73309
2003-11-06 16:47:41 +01:00
Andrew Haley
4b88687391 expr.c (java_stack_swap): Make sure destination stack slots are of the correct type.
2003-11-06  Andrew Haley  <aph@redhat.com>

        * expr.c (java_stack_swap): Make sure destination stack slots are
        of the correct type.

From-SVN: r73306
2003-11-06 15:19:49 +00:00
Richard Sandiford
e88fb323aa mips-protos.h (mips_initial_elimination_offset): Change return type to HOST_WIDE_INT.
* config/mips/mips-protos.h (mips_initial_elimination_offset): Change
	return type to HOST_WIDE_INT.
	* config/mips/mips.c (mips_frame_info): Give sizes type HOST_WIDE_INT.
	Make initialized a bool.  Make register masks unsigned ints.
	(compute_frame_size): Make same mask change here.  Use HOST_WIDE_INT
	where appropriate.
	(mips_initial_elimination_offset): Return a HOST_WIDE_INT.
	(mips_output_function_prologue): Print sizes as HOST_WIDE_INTs.

From-SVN: r73303
2003-11-06 11:22:03 +00:00
Richard Sandiford
88d6a75f25 frv.c (frv_initial_elimination_offset): Remove bogus negation.
* config/frv/frv.c (frv_initial_elimination_offset): Remove bogus
	negation.

From-SVN: r73302
2003-11-06 10:54:08 +00:00
Richard Sandiford
def49dc443 * config/frv/frv.h (ASM_OUTPUT_ALIGN_WITH_NOP): Define.
From-SVN: r73301
2003-11-06 10:53:04 +00:00
Momchil Velikov
95757874f9 mips.c (override_options): Set MASK_SOFT_FLOAT for VR4111 too.
* config/mips/mips.c (override_options): Set MASK_SOFT_FLOAT
	for VR4111 too.

From-SVN: r73300
2003-11-06 10:31:58 +00:00
Momchil Velikov
c8e26ef47b *** empty log message ***
From-SVN: r73299
2003-11-06 10:29:16 +00:00
Jan Hubicka
668f73d4c4 builtins.c (simplify_builtin_strrchr, [...]): Add missing casts.
* builtins.c (simplify_builtin_strrchr, simplify_builtin_strpbrk): Add
	missing casts.

From-SVN: r73296
2003-11-06 09:00:33 +00:00
Zack Weinberg
37783865bd genmodes.c: Change the word "bitsize" to "precision" throughout.
* genmodes.c: Change the word "bitsize" to "precision" throughout.
	* machmode.def: Likewise.
	* machmode.h (GET_MODE_SIZE): Cast value to unsigned short.
	(GET_MODE_BITSIZE): Define as GET_MODE_SIZE * BITS_PER_UNIT.
	(GET_MODE_PRECISION): New macro.
	(mode_bitsize): Renamed mode_precision.
	* stor-layout.c (mode_for_size, smallest_mode_for_size):
	Use GET_MODE_PRECISION; clarify comments.
ada:
	* misc.c (fp_prec_to_size, fp_size_to_prec): Use GET_MODE_PRECISION
	and update for changed meaning of GET_MODE_BITSIZE.

From-SVN: r73295
2003-11-06 08:38:52 +00:00
GCC Administrator
6c748c6c99 Daily bump.
From-SVN: r73289
2003-11-06 00:16:07 +00:00
Joseph Myers
01e9797612 install-old.texi: Remove old documentation of building cross-compilers.
* doc/install-old.texi: Remove old documentation of building
	cross-compilers.
	* doc/install.texi: Move some of it to here.

From-SVN: r73283
2003-11-05 22:26:58 +00:00
Andrew Pinski
f6d90f821d Add PR preprocessor/12891 to Per's last patch.
From-SVN: r73282
2003-11-05 13:24:31 -08:00
Per Bothner
9b49a0aaab c-opts.c (finish_options): Set include_cursor to disable premature calls to push_command_line_include from...
* c-opts.c (finish_options):  Set include_cursor to disable premature
	calls to push_command_line_include from cpp_scan_nooutput.
	Fixes bug reported by DJ Delorie.

From-SVN: r73281
2003-11-05 13:09:04 -08:00
Eric Botcazou
5167214390 20031023-4.c: XFAIL on SPARC64
* gcc.c-torture/compile/20031023-4.c: XFAIL on SPARC64
	* gcc.c-torture/compile/simd-5.c: XFAIL on SPARC64 at -O0 and -O1.
	* gcc.c-torture/execute/simd-4.x: New file.  XFAIL on SPARC at -O0.
	* gcc.c-torture/execute/va-arg-25.x: New file.  XFAIL on SPARC.
	* gcc.dg/uninit-C.c: XFAIL on non 64-bit Solaris versions.

From-SVN: r73280
2003-11-05 20:15:02 +00:00
Andrew Pinski
f4dcab145f Add PR optimization/10080 to Zdenek Dvorak's last commit.
From-SVN: r73279
2003-11-05 11:20:48 -08:00
Geoffrey Keating
f31bf321f8 rs6000.c (setup_incoming_varargs): Remove code supporting old-style varargs.
* config/rs6000/rs6000.c (setup_incoming_varargs): Remove
	code supporting old-style varargs.

From-SVN: r73278
2003-11-05 18:24:53 +00:00
Geoffrey Keating
2cf520bf3a rs6000.c (rs6000_machopic_legitimize_pic_address): Use an intermediate register for better optimisation.
* config/rs6000/rs6000.c (rs6000_machopic_legitimize_pic_address): Use
	an intermediate register for better optimisation.

From-SVN: r73277
2003-11-05 18:21:30 +00:00
Geoffrey Keating
a6cf80f29c rs6000.c (compute_vrsave_mask): Correct off-by-one error.
* config/rs6000/rs6000.c (compute_vrsave_mask): Correct off-by-one
	error.

From-SVN: r73276
2003-11-05 18:17:20 +00:00
Zdenek Dvorak
142d1f57d6 cfgloopanal.c (variable_initial_value, [...]): Record the fact that initial value is extended from inner mode.
* cfgloopanal.c (variable_initial_value, variable_initial_values,
	simple_loop_exit_p): Record the fact that initial value is extended
	from inner mode.
	(count_strange_loop_iterations, count_loop_iterations): Handle
	ivs that iterate in a narrower mode. Fix handling of overflows.
	Improve handling of NE conditions.
	(inverse, fits_in_mode_p): New static functions.
	(simple_increment): Detect variables that iterate in a narrower mode.
	* cfgloop.h (struct loop_desc): Fields inner_mode and extend added.

From-SVN: r73275
2003-11-05 18:10:44 +00:00
Geoffrey Keating
af09332e6d darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Darwin needs VRSAVE.
* config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Darwin
	needs VRSAVE.

From-SVN: r73274
2003-11-05 18:06:22 +00:00
Joseph Myers
0a49d02ccb c-typeck.c (pedantic_lvalue_warning): Deprecate use of conditional expressions as lvalues.
* c-typeck.c (pedantic_lvalue_warning): Deprecate use of
	conditional expressions as lvalues.

testsuite:
	* gcc.dg/cond-lvalue-1.c: New test.

From-SVN: r73273
2003-11-05 17:53:04 +00:00
Andreas Jaeger
db9fd03ea1 Fix date.
From-SVN: r73272
2003-11-05 18:31:17 +01:00
Gernot Hillier
c6c01481b3 asm1.C: Enable for e.g.
2003-11-03  Gernot Hillier  <gernot.hillier@siemens.com>

	* g++.old-deja/g++.pt/asm1.C: Enable for e.g. x86_64-*-linux-gnu.

From-SVN: r73271
2003-11-05 18:30:50 +01:00
Kriang Lerdsuwanakij
aad626f71c re PR c++/11616 (Error message "instantiated from here" gives wrong location)
PR c++/11616
	* pt.c (instantiate_pending_templates): Save and restore
	input_location.

	* g++.dg/template/instantiate5.C: New test.

From-SVN: r73269
2003-11-05 14:37:57 +00:00
Kriang Lerdsuwanakij
437a91e664 re PR c++/2019 (Wrong line number warning listing the previous declaration of a befriended function)
PR c++/2019
	* friend.c (add_friend): Don't display previous declaration in
	case of duplicate friend warning.

From-SVN: r73268
2003-11-05 13:56:01 +00:00
Arnaud Charlet
6bc1c519a5 Resync Ada changes.
From-SVN: r73267
2003-11-05 14:48:42 +01:00
Kazu Hirata
488c98d8e5 tsystem.h: Add the prototype of strlen.
* tsystem.h: Add the prototype of strlen.
	* unwind-pe.h (read_encoded_value_with_base): Add an
	appropriate cast to handle a case where the pointer size is
	smaller than sizeof (int).

From-SVN: r73265
2003-11-05 05:17:16 +00:00
Jeffrey D. Oldham
c1fab4c1be ChangeLog: Remove extraneous '>>>>'.
2003-11-04  Jeffrey D. Oldham  <oldham@codesourcery.com>

	* ChangeLog: Remove extraneous '>>>>'.

From-SVN: r73264
2003-11-05 04:38:44 +00:00
Jeffrey D. Oldham
d30b600a6e vec.cc (__cxa_vec_delete2): If given a NULL pointer, immediately return.
2003-11-04  Jeffrey D. Oldham  <oldham@codesourcery.com>

	* libsupc++/vec.cc (__cxa_vec_delete2): If given a NULL pointer,
	immediately return.  This reflects a C++ ABI change 2003 Nov 03.
	(__cxa_vec_delete3): Likewise.

From-SVN: r73263
2003-11-05 04:37:03 +00:00
GCC Administrator
177bda879b Daily bump.
From-SVN: r73261
2003-11-05 00:16:07 +00:00
Richard Sandiford
108b61d54a mips-protos.h (mips_global_pic_constant_p): Delete.
* config/mips/mips-protos.h (mips_global_pic_constant_p): Delete.
	(mips_delegitimize_address): Delete.
	(mips_gotoff_global, mips_load_got_page): Declare.
	(mips_load_got_global, mips_rewrite_small_data): Declare.

	* config/mips/mips.h (FIND_BASE_TERM): Remove definition.
	(DANGEROUS_FOR_LA25_P): Use global_got_operand.
	(PREDICATE_CODES): Add global_got_operand, local_got_operand and
	small_data_pattern.  Remove CONST from const_arith_operand's entry.

	* config/mips/mips.c (UNSPEC_ADDRESS_P, CONST_GP_P): New macros.
	(UNSPEC_ADDRESS, UNSPEC_ADDRESS_TYPE): Likewise.
	(mips_constant_type): Delete.
	(mips_symbol_type): Add SYMBOL_GOTOFF_PAGE, SYMBOL_GOTOFF_GLOBAL,
	SYMBOL_GOTOFF_CALL and SYMBOL_GOTOFF_LOADGP.
	(NUM_SYMBOL_TYPES): New macro.
	(mips_address_type): Remove ADDRESS_INVALID.
	(machine_function): Add has_gp_insn_p.
	(mips_constant_info): Delete.
	(mips_address_info): Add the address type as an extra field.  Replace
	the c field with symbol_type.
	(mips_split_p, mips_lo_relocs, mips_hi_relocs): New arrays.
	(TARGET_DELEGITIMIZE_ADDRESS): Remove definition.
	(mips_reloc_offset_ok_p, mips_classify_constant): Delete.
	(mips_split_const, mips_symbolic_constant_p): New functions.
	(mips_symbolic_address_p): Take the symbol type and mode as arguments.
	(mips_classify_address): Return true if the address is valid, storing
	its type in INFO.  Use mips_symbolic_constant_p.  Use mips_lo_relocs[]
	to test whether a LO_SUM address is allowed.
	(mips_symbol_insns): Return 0 for general mips16 symbols.
	Reorder SYMBOL_GOT_GLOBAL case to match mips_symbol_type definition.
	Handle the new SYMBOL_GOTOFF_*s.
	(mips_address_insns): Update call to mips_classify_address.
	(mips_const_insns): Be more fussy about HIGH constants.  Remove use
	of mips_classify_constant.  Be more accurate about CONSTs.
	(mips_global_pic_constant_p): Delete.
	(const_arith_operand): Only accept CONST_INTs.
	(call_insn_operand): Remove call to mips_classify_constant.
	Let mips_symbolic_constant_p check for invalid offsets.
	(move_operand): Check for general_operands first.  Only accept symbolic
	constants if they satisfy mips_symbolic_constant_p and cannot be split.
	(symbolic_constant): Use mips_symbolic_constant_p.
	(global_got_operand, local_got_operand): New predicates.
	(stack_operand): Update call to mips_classify_address.
	(mips_legitimate_address_p): Likewise.
	(mips_reloc, mips_lui_reloc): Delete.
	(mips_force_temporary): Only use the given temporary if no_new_pseudos.
	Use emit_move_insn.
	(mips_split_symbol, mips_unspec_address): New functions.
	(mips_unspec_offset_high): New function.
	(mips_load_got): Replace reloc argument with a symbol_type.
	Use mips_unspec_address to create the address and put it in a
	LO_SUM with the base register.
	(mips_load_got16, mips_load_got32): Delete.
	(mips_emit_high, mips_legitimize_symbol): Delete.
	(mips_gotoff_global): New function.
	(mips_load_got_page, mips_load_got_global): New functions.
	(mips_legitimize_symbol): Inline handling of LO_SUM splits.
	(mips_legitimize_const_move): Likewise.  Remove HIGH handling.
	Inline code to handle constants plus invalid offsets.  Use
	mips_split_symbol to legitimize constant pool addresses.
	(mips_delegitimize_address): Delete.
	(mips_rtx_costs): Give legitimate symbolic constants and CONST_DOUBLEs
	a cost of 1 insn.  Give the rest a cost of CONSTANT_POOL_ADDRESS.
	(mips_subword): Pass memrefs through mips_rewrite_small_data.
	(mips_output_move): Remove use of mips_classify_constant.
	(mips_expand_call): Use mips_unspec_offset_high to calculate the
	high part of the GOT address for calls to global functions.
	(override_options): Initialize mips_split_p[], mips_lo_relocs[]
	and mips_hi_relocs[].
	(print_operand): Use print_operand_reloc to handle '%h' and '%R'.
	Remove use of mips_classify_constant.
	(mips_reloc_string): Delete.
	(print_operand_reloc): New function.
	(print_operand_address): Update call to mips_classify_address.
	(mips_rewrite_small_data_p, small_data_pattern_1): New functions.
	(small_data_pattern): New predicate.
	(mips_rewrite_small_data_1, mips_rewrite_small_data): New functions.
	(mips_function_has_gp_insn): New function.
	(mips_global_pointer): Use it.
	(mips_gp_insn): Delete.
	(mips_expand_prologue): When compiling for n32/n64 abicalls, use a
	single loadgp pattern to initialize $gp.  Pass it the offset of _gp
	from the start of the current function.
	(mips16_gp_pseudo_reg): Revert last patch.

	* config/mips/mips.md (RELOC_*): Delete.
	(UNSPEC_LOADGP, UNSPEC_FIRST_ADDRESS): New constants.
	(got): New insn attribute.
	(type): Set to "load" if got == load.
	(length): Set to 4 if got == load, 8 if got == xgot_high.
	(lui[sd]i): Delete.
	(*xgot_hi[sd]i, *xgot_lo[sd]i): New patterns.
	(*got_disp[sd]i, *got_page[sd]i): Likewise.
	(*low[sd]i): Change constraints to "d".  Add a new define_split to
	rewrite small data constants into LO_SUMs.
	(loadgp): New insns.

From-SVN: r73259
2003-11-04 22:13:32 +00:00
Rainer Orth
487e9fff78 * Makefile.in: Remove many duplicate variables.
From-SVN: r73258
2003-11-04 20:48:50 +00:00
Rainer Orth
bdc960c82f * config/mips/_tilib.c: Use _ABI* in _MIPS_SIM tests.
From-SVN: r73257
2003-11-04 20:12:48 +00:00
DJ Delorie
15bb534e0a v850.md (mulhisi3): Expand the const_int case separately to avoid trying to sign extend the const.
* config/v850/v850.md (mulhisi3): Expand the const_int case
separately to avoid trying to sign extend the const.

From-SVN: r73256
2003-11-04 13:22:37 -05:00
Arnaud Charlet
104da10b9b Remove extra ^M characters introduced in previous commit.
From-SVN: r73251
2003-11-04 13:56:59 +01:00
Arnaud Charlet
12e0c41c11 re PR ada/12806 (Program_Error sinput.adb:397)
* sysdep.c: Problem discovered during IA64 VMS port.
	[VMS] #include <unixio.h> to get proper prototypes.

	* adaint.c:
	Issues discovered/problems fixed during IA64 VMS port.
	[VMS] #define _POSIX_EXIT for proper semantics.
	[VMS] #include <unixio.h> for proper prototypes.
	[VMS] (fork): #define IA64 version.
	(__gnat_os_exit): Remove unnecessary VMS specific code.

	* 3vtrasym.adb: Minor reformatting
	Use terminology encoded/decoded name, rather than C++ specific notion
	of mangling (this is the terminology used throughout GNAT).

	* einfo.h: Regenerated

	* einfo.ads, einfo.adb: Add new flag Is_Thread_Body

	* exp_ch6.adb:
	(Expand_N_Subprogram_Body): Handle expansion of thread body procedure

	* par-prag.adb: Add dummy entry for Thread_Body pragma

	* rtsfind.ads:
	Add entries for System.Threads entities for thread body processing

	* sem_attr.adb:
	(Analyze_Pragma, Access attributes): Check these are not applied to a
	thread body, since this is not permitted

	* sem_prag.adb: Add processing for Thread_Body pragma.
	Minor comment fix.

	* sem_res.adb:
	(Resolve_Call): Check for incorrect attempt to call a thread body
	 procedure with a direct call.

	* snames.ads, snames.adb: Add entry for Thread_Body pragma
	Add names associated with thread body expansion

	* snames.h: Add entry for Thread_Body pragma

	* s-thread.adb: Add entries for thread body processing
	These are dummy bodies so far

	* s-thread.ads: Add documentation on thread body handling.
	Add entries for thread body processing.

	* sem_ch10.adb:
	(Build_Limited_Views): Return after posting an error in case of limited
	with_clause on subprograms, generics, instances or generic renamings
	(Install_Limited_Withed_Unit): Do nothing in case of limited with_clause
	on subprograms, generics, instances or generic renamings

	* raise.c (setup_to_install): Correct mistake in last revision; two
	arguments out of order.

	* trans.c, cuintp.c, argv.c, aux-io.c, cal.c, errno.c, exit.c,
	gnatbl.c, init.c, stringt.h, utils.c, utils2.c: Update copyright
	notice, missed in previous change.
	Remove trailing blanks and other style errors introduced in previous
	change.

	* decl.c (gnat_to_gnu_field): Adjust the conditions under which we get
	rid of the wrapper for a LJM type, ensuring we don't do that if the
	field is addressable.  This avoids potential low level type view
	mismatches later on, for instance in a by-reference argument passing
	process.

	* decl.c (gnat_to_gnu_field): No longer check for BLKmode being
	aligned at byte boundary.

	* decl.c (components_to_record): Do not delete the empty variants from
	the end of the union type.

	* exp_ch4.adb (Expand_N_Op_Eq): Use base type when locating primitive
	operation for a derived type, an explicit declaration may use a local
	subtype of Boolean.

	* make.adb (Gnatmake): Allow main sources on the command line with a
	library project when it is only for compilation (no binding or
	linking).

	Part of PR ada/12806:

	* ada-tree.h (TYPE_DIGITS_VALUE, SET_TYPE_DIGITS_VALUE): Save count as
	tree, not integer.

	* decl.c:
	(gnat_to_gnu_entity, case E_Floating_Point_Type): Save count as tree,
	not integer.

	* targtyps.c, decl.c, misc.c,
	gigi.h (fp_prec_to_size, fp_size_to_prec): Temporary
	routines to work around change in FP sizing semantics in GCC.

	* utils.c:
	(build_vms_descriptor): TYPE_DIGITS_VALUE is tree, not integer.

	* gigi.h: (enumerate_modes): New function.

	* Make-lang.in: (ada/misc.o): Add real.h.

	* misc.c: (enumerate_modes): New function.

From-SVN: r73250
2003-11-04 13:51:47 +01:00
Richard Sandiford
21e9fc4735 emit-rtl.c (copy_rtx_if_shared): Don't allow MEMs with constant addresses to be shared.
* emit-rtl.c (copy_rtx_if_shared): Don't allow MEMs with constant
	addresses to be shared.
	(force_const_mem): Return a copy of the pool entry.

From-SVN: r73248
2003-11-04 09:14:18 +00:00
Andreas Jaeger
7807fcd903 Makefile.in (GCC_CFLAGS): Remove @WERROR@ again.
* Makefile.in (GCC_CFLAGS): Remove @WERROR@ again.

Change previous ChangeLog entry to point to me as asked for by Kaveh.

From-SVN: r73246
2003-11-04 06:34:14 +01:00
Petur Runolfsson
5e93f39f64 re PR libstdc++/12790 (basic_filebuf doesn't handle stateful encodings)
2003-11-03  Petur Runolfsson  <peturr02@ru.is>

	PR libstdc++/12790
	* include/bits/fstream.tcc: Delete _M_last_overflowed.
	(basic_filebuf::basic_filebuf): Initialize _M_state_last.
	(basic_filebuf::open, basic_filebuf::close): Assign
	_M_state_beg to _M_state_cur and _M_state_last.
	(basic_filebuf::close): Call _M_terminate_output to handle
	unshift and flushing.
	(basic_filebuf::underflow): Assign _M_state_last, throw
	exception instead of calling abort when codecvt::max_length()
	is bad.
	(basic_filebuf::seekoff): Use _M_state_last when calling
	codecvt::length(), pass correct state to _M_seek.
	(basic_filebuf::seekpos): Pass __pos.state() to _M_seek.
	(basic_filebuf::_M_seek): Add __state_type parameter,
	set _M_state_cur correctly, store the resulting state in
	the return value and use _M_terminate_output to handle
	flushing and unshift.
	(basic_filebuf::_M_terminate_output): Flush contents of
	output buffer, if any, then call codecvt::unshift as
	needed and output the result.
	(basic_filebuf::sync): Move here, don't modify _M_writing
	or _M_reading.

	* include/std/std_fstream.h
	(basic_filebuf::_M_state_last): Declare it.
	(basic_filebuf::_M_last_overflowed): Delete.
	(basic_filebuf::_M_seek): Add __state_type parameter.
	(basic_filebuf::sync): Declare only.
	(basic_filebuf::_M_output_unshift): Delete.
	(basic_filebuf::_M_terminate_output): Declare it.

	* testsuite/testsuite_character.h:
	Define character class and state class plus char_traits and
	codecvt specializations for same for testing support for
	stateful encodings.

	* testsuite/27_io/basic_filebuf/close/12790-1.cc,
	* testsuite/27_io/basic_filebuf/close/char/12790-1.cc,
	* testsuite/27_io/basic_filebuf/close/char/12790-2.cc,
	* testsuite/27_io/basic_filebuf/close/char/12790-3.cc,
	* testsuite/27_io/basic_filebuf/close/char/12790-4.cc,
	* testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc,
	* testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc,
	* testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc,
	* testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc,
	* testsuite/27_io/basic_filebuf/open/12790-1.cc,
	* testsuite/27_io/basic_filebuf/seekoff/12790-1.cc,
	* testsuite/27_io/basic_filebuf/seekoff/12790-2.cc,
	* testsuite/27_io/basic_filebuf/seekoff/12790-3.cc,
	* testsuite/27_io/basic_filebuf/seekoff/12790-4.cc,
	* testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc,
	* testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc,
	* testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc,
	* testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc,
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc,
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc,
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc,
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc,
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc,
	* testsuite/27_io/basic_filebuf/seekpos/12790-1.cc,
	* testsuite/27_io/basic_filebuf/seekpos/12790-2.cc,
	* testsuite/27_io/basic_filebuf/seekpos/12790-3.cc,
	* testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc,
	* testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc,
	* testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc,
	* testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc,
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc,
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc,
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc,
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc,
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc,
	* testsuite/27_io/basic_filebuf/sync/char/1.cc,
	* testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc:
	New tests.

	* testsuite/27_io/basic_filebuf/3.cc,
	* testsuite/27_io/basic_filebuf/seekoff/10132-2.cc,
	* testsuite/27_io/basic_filebuf/seekpos/10132-3.cc,
	* testsuite/27_io/basic_fstream/3.cc,
	* testsuite/27_io/basic_ifstream/3.cc,
	* testsuite/27_io/basic_ofstream/3.cc:
	Use streamoff as off_type and fpos<state_type> as pos_type.

	* testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc,
	* testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc:
	Check that sync does *not* set _M_writing to false.

From-SVN: r73245
2003-11-04 05:27:41 +00:00
Bryce McKinlay
99f8b2501d natClass.cc (newInstance): Throw InstantiationException if class has no null-argument constructor.
* java/lang/natClass.cc (newInstance): Throw InstantiationException
        if class has no null-argument constructor.

From-SVN: r73244
2003-11-04 05:27:10 +00:00
Anthony Green
1b9e6d6484 stubs.c (sqrtf, sqrtl): Reorder so they appear before they're used.
2003-11-01  Anthony Green  <green@redhat.com>

        * libmath/stubs.c (sqrtf, sqrtl): Reorder so they appear before
        they're used.

From-SVN: r73243
2003-11-04 05:02:40 +00:00