Commit Graph

35027 Commits

Author SHA1 Message Date
Alexandre Oliva
18ae7f6399 Reverted Geoff Keating's 2001-05-03's patch.
From-SVN: r41988
2001-05-12 10:37:48 +00:00
GCC Administrator
a45b480e68 Daily bump.
From-SVN: r41986
2001-05-12 07:16:09 +00:00
Ira Ruben
401deb20e2 * cp-tree.h (C_EXP_ORIGINAL_CODE): Delete; declared in c-common.h.
From-SVN: r41985
2001-05-12 06:36:57 +00:00
Richard Henderson
5a0bf1eed1 configure.in (ia64-*): Don't set SYSDEP_SOURCES.
* configure.in (ia64-*): Don't set SYSDEP_SOURCES.
        * java/lang/natThrowable.cc: Don't use __ia64_backtrace.

From-SVN: r41984
2001-05-11 23:25:03 -07:00
Richard Henderson
5f2fa73083 exception.cc: Include unwind-pe.h.
* exception.cc: Include unwind-pe.h.  Remove all pointer
        encoding logic.

From-SVN: r41983
2001-05-11 23:17:31 -07:00
Richard Henderson
817e741108 eh_personality.cc: Include unwind-pe.h.
* libsupc++/eh_personality.cc: Include unwind-pe.h.  Remove
        all pointer encoding logic.
        (struct lsda_header_info): Add ttype_base.
        (get_ttype_entry): Use it instead of a context.
        (check_exception_spec): Likewise.
        (PERSONALITY_FUNCTION): Initialize ttype_base.  Store it in
        the c++ exception header for __cxa_call_unexpected.
        (__cxa_call_unexpected): Use it.

From-SVN: r41982
2001-05-11 23:16:21 -07:00
Richard Henderson
2a1ee410ce defaults.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
* defaults.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
	* dwarf2asm.c (dw2_force_const_mem, dw2_output_indirect_constant_1,
	dw2_output_indirect_constants, dw2_asm_output_encoded_addr_rtx): New.
	* dwarf2asm.h (dw2_asm_output_encoded_addr_rtx): Prototype.
	(dw2_output_indirect_constants): Prototype.
	* dwarf2out.c (dwarf2out_begin_prologue): Generate
	current_function_func_begin_label if we'll need it for EH.  Exit
	early for IA64_UNWIND_INFO.
	* except.c: Get DW_EH_PE_* defines from dwarf2.h.
	(eh_data_format_name): Update for indirect references.
	(output_function_exception_table): Care for IA64_UNWIND_INFO.
	Handle ASM_PREFERRED_EH_DATA_FORMAT.
	* except.h (MUST_USE_SJLJ_EXCEPTIONS): IA64_UNWIND_INFO needn't
	define HAVE_eh_return etc.
	* final.c (final_start_function): Always call dwarf2out_begin_prologue.
	(final_end_function): Don't call output_function_exception_table.
	* toplev.c (compile_file): Call dw2_output_indirect_constants.
	(rest_of_compilation): Invoke output_function_exception_table
	for ia64 before assemble_end_function.
	* tm.texi (ASM_PREFERRED_EH_DATA_FORMAT): Document.
	(ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Document.

	* unwind-dw2.c (_Unwind_GetTextRelBase, _Unwind_GetDataRelBase): New.
	* unwind.h: Declare them.
	* libgcc-std.ver: Export them.
	* unwind-pe.h: New file.

	* config/alpha/elf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.

	* config/ia64/fde-glibc.c: Use "struct unw_table_entry"
	instead of "fde".
	(find_fde_for_dso): Extract DT_PLTGOT.
	(_Unwind_FindTableEntry): Rename from __ia64_find_fde; return
	the segment and gp as well.
	* config/ia64/frame-ia64.c: Remove file.
	* config/ia64/frame-ia64.h: Remove file.
	* config/ia64/unwind-ia64.c: New file.
	* config/ia64/unwind-ia64.h: New file.
	* config/ia64/ia64.h (ASM_OUTPUT_EH_CHAR): Remove.
	(ASM_OUTPUT_EH_SHORT, ASM_OUTPUT_EH_INT): Remove.
	(ASM_OUTPUT_EH_DOUBLE_INT): Remove.
	(ASM_PREFERRED_EH_DATA_FORMAT): New.
	(ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
	(IA64_UNWIND_INFO): Re-enable.
	(HANDLER_SECTION): Remove.
	(EH_RETURN_DATA_REGNO): New.
	* config/ia64/ia64.md (exception_receiver): Remove.
	* config/ia64/t-glibc (LIB2ADDEH): Re-enable.
	* config/ia64/t-ia64 (LIB2ADDEH): Re-enable.

From-SVN: r41981
2001-05-11 23:03:20 -07:00
Richard Henderson
f12f25a7f6 ia64.c (group_barrier_needed_p): Don't allow calls and jumps to be bundled together.
* config/ia64/ia64.c (group_barrier_needed_p): Don't allow
        calls and jumps to be bundled together.
        (ia64_reorg): Emit a break after a noreturn call that ends
        a function.
        * config/ia64/ia64.md (break_f): New.

From-SVN: r41979
2001-05-11 22:21:09 -07:00
Neil Booth
c8a9607017 c-lex.c (lex_charconst): Convert into a simple wrapper around cpp_interpret_charconst...
* c-lex.c (lex_charconst): Convert into a simple wrapper
	around cpp_interpret_charconst, to which most of the code
	body is moved.
	* cppexp.c (MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE,
	MAX_LONG_TYPE_SIZE, MAX_INT_TYPE_SIZE, MAX_CHAR_TYPE_MASK,
	MAX_WCHAR_TYPE_MASK, parse_escape, parse_charconst): Remove.
	(lex): Use cpp_interpret_charconst.
	* cpplex.c (parse_escape, read_ucs, cpp_interpret_charconst,
	hex_digit_value): New functions.
	(MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE): New macros.
	* cpplib.h (cpp_interpret_charconst): New prototype.
	* Makefile.in: Update.

From-SVN: r41978
2001-05-11 23:48:21 +00:00
Dean Wakerley
f42974dc81 install.texi: New file.
* doc/install.texi: New file. Converted to texinfo from the HTML
	documentation in wwwdocs/htdocs/install.

From-SVN: r41977
2001-05-11 22:10:54 +00:00
Jeffrey A Law
8598a9a232 gcse.c (insert_insn_end_bb): Do not search for assignments to non-argumment registers that are mentioned in...
* gcse.c (insert_insn_end_bb): Do not search for assignments to
        non-argumment registers that are mentioned in CALL_INSN_FUNCTION_USAGE.

From-SVN: r41976
2001-05-11 16:07:58 -06:00
Jeffrey A Law
37ff4d286d toplev.c (compile_file): Move comment for opening output file to just before the code that opens the...
* toplev.c (compile_file): Move comment for opening output
        file to just before the code that opens the output file.

From-SVN: r41975
2001-05-11 16:00:23 -06:00
Jakub Jelinek
3721581af1 regmove.c (regmove_optimize): Suppress the optimization for unchanging destination register.
* regmove.c (regmove_optimize): Suppress the optimization for
	unchanging destination register.  Add comment above function.

From-SVN: r41974
2001-05-11 22:08:04 +02:00
Zack Weinberg
fecd6201e6 Makefile.in: Exterminate all references to assert.h.
* Makefile.in: Exterminate all references to assert.h.
	* cross-make: Likewise.
	* assert.h: Delete.
	* configure.in: Correct commentary.
	* configure: Regenerate.
	* po/POTFILES.in: Remove assert.h.

	* libgcc-std.ver, libgcc2.c, libgcc2.h, sys-protos.h:
	Remove __eprintf.

	* config/t-freebsd, config/t-linux, config/t-linux-aout,
	config/t-netbsd, config/t-rtems, config/x-linux,
	config/i386/t-beos, config/mcore/t-mcore, config/mcore/t-mcore-pe:
	No need to override INSTALL_ASSERT_H.

	* fixinc/fixinc.dgux, fixinc/fixinc.interix, fixinc/fixinc.ptx,
	fixinc/fixinc.svr4, fixinc/fixinc.winnt, fixinc/fixinc.wrap,
	fixinc/fixincl.sh: Don't install assert.h into objdir/include.

From-SVN: r41972
2001-05-11 17:03:02 +00:00
John David Anglin
e7288e1888 * gcc.c-torture/execute/ieee/ieee.exp: Don't run ieee tests on VAX.
From-SVN: r41971
2001-05-11 16:56:29 +00:00
Mark Mitchell
c873862c4f * lib/objc.exp: Add -lposix4 on Solaris 2.8.
From-SVN: r41968
2001-05-11 16:20:54 +00:00
Graham Stott
99dc53068f * combine.c (simplify_comparison): Fix typo.
From-SVN: r41967
2001-05-11 16:15:49 +00:00
Mark Mitchell
2868054066 loop.h (struct movables): Remove `num'.
* loop.h (struct movables): Remove `num'.
	* loop.c (scan_loop): Don't set it.  Use count_insns_in_loop.
	Adjust call to strength_reduce.
	(num_unmoved_movables): New function.
	(move_movables): Don't set movables->num.
	(strength_reduce): Compute the number of instructions in the loop
	here, rather than in the caller.
	(check_dbra_loop): Always clear reversible_mem_store if there
	are any memory sets.
	(loop_regs_scan): Don't count instructions here.
	(count_insn_in_loop): New function.

From-SVN: r41966
2001-05-11 15:54:19 +00:00
Mark Mitchell
897aa57fd0 * optabs.c (emit_libcall_block): Don't mark calls as CONST_CALL_P.
From-SVN: r41963
2001-05-11 15:28:40 +00:00
GCC Administrator
281c45f682 Daily bump.
From-SVN: r41960
2001-05-11 07:16:41 +00:00
Neil Booth
15b732b288 c-common.c (finish_label_expr): New function, lifted from from cp/semantics.c.
* c-common.c (finish_label_expr): New function, lifted from
	from cp/semantics.c.
	* c-common.h (finish_label_expr, lookup_label): New prototypes.
	* c-parse.in: Move 3 blocks of parser code into new functions.
	* c-typeck.c (simple_asm_stmt, c_cast_expr): New functions.
	* c-tree.h (simple_asm_stmt, c_cast_expr): New prototypes.
	(lookup_label): Remove.

From-SVN: r41959
2001-05-11 06:38:48 +00:00
Neil Booth
8e93d44655 cp-tree.h (finish_label_expr, [...]): Delete.
* cp-tree.h (finish_label_expr, lookup_label): Delete.
	* parse.y: Update for '&&'; don't issue warning here.
	* semantics.c (finish_label_expr): Delete.

From-SVN: r41958
2001-05-11 06:35:10 +00:00
Alexandre Oliva
487dcdb055 t-mn10300 (dp-bit.c, fp-bit.c): Don't define FLOAT_BIT_ORDER_MISMATCH.
* config/mn10300/t-mn10300 (dp-bit.c, fp-bit.c): Don't define
FLOAT_BIT_ORDER_MISMATCH.

From-SVN: r41957
2001-05-11 04:23:57 +00:00
David Edelsohn
f1eaaf73c5 expr.c (emit_push_insn): Convert PUSH_ROUNDING argument to bytes.
* expr.c (emit_push_insn): Convert PUSH_ROUNDING argument to
        bytes.  Reported by Kazu Hirata <kazu@hxi.com>.

From-SVN: r41956
2001-05-10 21:56:12 -04:00
Tom Tromey
dac975d3d9 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added Polygon.java.
	* java/awt/Polygon.java: New file.

	* java/awt/geom/AffineTransform.java
	(setToRotation(double,double,double)): New method.
	(AffineTransform): Set type to TYPE_GENERAL_TRANSFORM.
	(setToShear): Likewise.

From-SVN: r41954
2001-05-11 01:03:45 +00:00
Jeffrey A Law
d466c016c5 cse.c (cse_insn): Mostly remove first hunk of code which collapsed a computed jump into an...
* cse.c (cse_insn): Mostly remove first hunk of code which collapsed
        a computed jump into an unconditional jump.
        In second hunk of code for collapsing computed and conditional jumps
        into unconditional jumps, reemit the jump in additional cases.

From-SVN: r41953
2001-05-10 18:23:46 -06:00
David Edelsohn
f3ce87a905 expr.c (emit_group_load): extract_bit_field requires a REG or MEM as an argument.
* expr.c (emit_group_load): extract_bit_field requires a REG or
        MEM as an argument.

From-SVN: r41950
2001-05-10 17:59:10 -04:00
Ben Elliston
3f19b4396a Makefile.in (all-sid): New target.
2001-05-11  Ben Elliston  <bje@redhat.com>

	* Makefile.in (all-sid): New target.
	(check-sid, clean-sid, install-sid): Likewise.

From-SVN: r41948
2001-05-11 06:51:52 +10:00
Jeffrey A Law
7dfd465c83 jump.c (jump_optimize_1): Do not wrap the new jump target inside a LABEL_REF...
* jump.c (jump_optimize_1): Do not wrap the new jump target
        inside a LABEL_REF; gen_jump will do that automatically.

From-SVN: r41947
2001-05-10 14:43:50 -06:00
Kaveh R. Ghazi
f59328a83d * ansidecl.h (NULL_PTR): Delete.
From-SVN: r41946
2001-05-10 19:11:58 +00:00
Toon Moene
79cdfa4b29 dwarf2out.c (mem_loc_descriptor): Do not pass constant pool contents for a SYMBOL_REF in case of floating point...
2001-05-10  Toon Moene  <toon@moene.indiv.nluug.nl>

	* dwarf2out.c (mem_loc_descriptor): Do not pass constant pool
	contents for a SYMBOL_REF in case of floating point constants.

From-SVN: r41945
2001-05-10 18:52:28 +00:00
Tom Browder
df33e4e18e howto.html: Fix typo.
2001-05-01  Tom Browder  <tbrowder@home.com>

	* docs/html/ext/howto.html:  Fix typo.

From-SVN: r41944
2001-05-10 18:42:11 +00:00
Tom Tromey
9622762678 [multiple changes]
2001-05-10  Tom Tromey  <tromey@redhat.com>

	* java/util/GregorianCalendar.java: Imported from Classpath.
	* gnu/java/locale/LocaleInformation_nl.java: New file from
	Classpath.
	* gnu/java/locale/LocaleInformation_en.java: Likewise.
	* gnu/java/locale/LocaleInformation_de.java: Likewise.
	* gnu/java/locale/LocaleInformation.java: Likewise.
	* natGregorianCalendar.cc: Removed.
	* Makefile.in: Rebuilt.
	* Makefile.am (nat_source_files): Removed
	natGregorianCalendar.cc.

2001-05-10  Tom Tromey  <tromey@redhat.com>

	* java/text/SimpleDateFormat.java (computeCenturyStart): New
	method.
	(defaultCenturyStart): Use it.
	(readObject): Likewise.
	(SimpleDateFormat): Clear the calendar.  Set the grouping on the
	number format.
	(parse): Copy the calendar before modifying it.  Correctly handle
	the time zone.

	* java/util/Calendar.java (clear): Set field value(s) to 0.

2001-05-10  Jeff Sturm  <jsturm@one-point.com>

	* Calendar.java (get): Clear areFieldsSet if requested field
	is not set.
	(set): Unset fields that depend on new value.

From-SVN: r41942
2001-05-10 18:13:17 +00:00
DJ Delorie
b0089a92a3 c-common.c (combine_strings): Widen strings in a host-endian-independent way.
* c-common.c (combine_strings): Widen strings in a
host-endian-independent way.

From-SVN: r41941
2001-05-10 13:39:19 -04:00
Joseph Myers
25d78ace72 c-parse.in: Remove many shift/reduce conflicts.
* c-parse.in: Remove many shift/reduce conflicts.  Update
	%expect values.
	(declspecs_nosc_nots_nosa_noea, declspecs_nosc_nots_nosa_ea,
	declspecs_nosc_nots_sa_noea, declspecs_nosc_nots_sa_ea,
	declspecs_nosc_ts_nosa_noea, declspecs_nosc_ts_nosa_ea,
	declspecs_nosc_ts_sa_noea, declspecs_nosc_ts_sa_ea,
	declspecs_sc_nots_nosa_noea, declspecs_sc_nots_nosa_ea,
	declspecs_sc_nots_sa_noea, declspecs_sc_nots_sa_ea,
	declspecs_sc_ts_nosa_noea, declspecs_sc_ts_nosa_ea,
	declspecs_sc_ts_sa_noea, declspecs_sc_ts_sa_ea, declspecs_ts,
	declspecs_nots, declspecs_ts_nosa, declspecs_nots_nosa,
	declspecs_nosc_ts, declspecs_nosc_nots, declspecs_nosc, declspecs,
	maybe_type_quals_setattrs, typespec_nonattr, typespec_attr,
	typespec_reserved_nonattr, typespec_reserved_attr,
	typespec_nonreserved_nonattr, maybe_setattrs, structsp_attr,
	structsp_nonattr, components_notype, component_notype_declarator,
	absdcl1_ea, absdcl1_noea, direct_absdcl1, absdcl_maybe_attribute,
	firstparm, setspecs_fp): New
	(typed_declspecs, reserved_declspecs, typed_typespecs,
	reserved_typespecquals, declmods, typespec, typespecqual_reserved,
	typed_declspecs_no_prefix_attr reserved_declspecs_no_prefix_attr
	declmods_no_prefix_attr, nonempty_type_quals, structsp,
	type_quals): Remove.  Users updated.
	(initdecls, notype_initdecls, after_type_declarator,
	parm_declarator, notype_declarator, absdcl1, components, ivars):
	Don't allow attributes at the start of a declarator; include them
	in the production containing the declarator instead.  Always
	require type specifiers before trying to redeclare a typedef name.
	(typename): Allow for attributes but warn that they are ignored.
	(parmlist, firstparm, setspecs_fp): Include attributes in
	parmlist; suck them off the parser stack in firstparm using
	setspecs_fp.

testsuite:
	* gcc.c-torture/compile/20010313-1.c: New test.

From-SVN: r41940
2001-05-10 17:17:07 +01:00
Jeffrey A Law
f926a2566d ifcvt.c (merge_if_block): Use any_uncondjump_p...
* ifcvt.c (merge_if_block): Use any_uncondjump_p, not simplejump_p
        to determine if a block has an unconditional jump at its end.

        * jump.c (jump_optimize_1): When converting a conditional jump
        to an unconditional jump, build the jump using gen_jump instead
        of just modify operands in-place.

From-SVN: r41939
2001-05-10 09:15:48 -06:00
Benjamin Kosnik
8850521be3 libstdc++.exp: Use libgloss.exp.
2001-05-09  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/lib/libstdc++.exp: Use libgloss.exp. Call
	libgloss_link_flags to find crt0.o for targets that use libgloss
	instead of newlib.
	Change LDFLAGS to LIBS.
	Consistently name procedures libstdc++-XXX.
	* testsuite/libstdc++.tests/tests.exp: Use new procedure names.

From-SVN: r41938
2001-05-10 08:55:50 +00:00
GCC Administrator
1be6bcf20c Daily bump.
From-SVN: r41936
2001-05-10 07:16:09 +00:00
Zack Weinberg
6d4587f735 cppinit.c (cpp_post_options): Shut off macro expansion if -fpreprocessed.
* cppinit.c (cpp_post_options): Shut off macro expansion if
	-fpreprocessed.
	* cpplib.c (_cpp_handle_directive): If -fpreprocessed, accept
	IN_I directives only if the # is in column 1 and the directive
	name begins in column 2.
	* cppmain.c (scan_buffer): Insert a space between # and an
	identifier, when that identifier is a directive name.

	* tradcpp.c (struct file_buf): Add a pointer to the next entry
	in the header search path.
	(enum node_type): Add T_INCLUDE_NEXT.
	(directive_table): Add entry for include_next.
	(do_include_next): New function.
	(process_include): New routine, broken out of do_include.
	(finclude): Insert 'nhd' argument, to be copied into
	next_header_dir of the new buffer.
	(main): Adjust to match.
	* gsyslimits.h, limity.h: Un-indent #include_next.

testsuite:
	* gcc.dg/cpp/direct2.c: New test.
	* gcc.dg/cpp/direct2s.c: New test.

	* gcc.c-torture/execute/920730-1t.c: #undef __GNUC__ at head.

From-SVN: r41932
2001-05-10 00:07:23 +00:00
Jeffrey Oldham
6ebe3121aa ltcf-cxx.sh: Add -nostdlib to IRIX 6 archive_cmds.
2001-05-09  Jeffrey Oldham  <oldham@codesourcery.com>

	* ltcf-cxx.sh: Add -nostdlib to IRIX 6 archive_cmds.

From-SVN: r41931
2001-05-09 22:29:20 +00:00
Thiemo Seufer
8a1532886f md5.c (md5_init_ctx): Declare constants as unsigned.
* md5.c (md5_init_ctx): Declare constants as unsigned.
(md5_process_block): Likewise.

From-SVN: r41930
2001-05-09 15:09:55 -04:00
Joseph Myers
10c179f3e9 objc.texi: Move from ../libobjc/objc-features.texi.
gcc:
	* objc.texi: Move from ../libobjc/objc-features.texi.  Adjust for
	inclusion as a chapter of the GCC manual.
	* gcc.texi: Include objc.texi.
	* fdl.texi: Use @unnumberedsec for the addendum.
	* Makefile.in ($(srcdir)/gcc.info, gcc.dvi): Update dependencies.

libobjc:
	* objc-features.texi: Move to ../gcc/objc.texi.
	* fdl.texi: Remove.
	* Makefile.in: Don't generate documentation from
	objc-features.texi.

From-SVN: r41927
2001-05-09 15:16:47 +01:00
Jan Hubicka
6c12e4889f * i386.md (DImode move splitters): Use !MMX and !SSE for the condition.
From-SVN: r41926
2001-05-09 14:03:39 +00:00
Alexandre Oliva
d3c7d45ed9 regclass.c (scan_one_insn): Update REG_N_REFS when optimizing handling of two-address insns.
* regclass.c (scan_one_insn): Update REG_N_REFS when optimizing
handling of two-address insns.

From-SVN: r41925
2001-05-09 13:40:49 +00:00
Alexandre Oliva
d08d4a19e3 Makefile.in (NM_FOR_TARGET): Look for ./nm, then .../binutils/nm-new instead of ../binutils/nm.
* Makefile.in (NM_FOR_TARGET): Look for ./nm, then
../binutils/nm-new instead of ../binutils/nm.

From-SVN: r41924
2001-05-09 13:37:28 +00:00
Jan Hubicka
a2bafd2011 i386.md (movdi splitter): Fix the splitting condition (float_extenddftf splitter): Fix mode.
* i386.md (movdi splitter): Fix the splitting condition
	(float_extenddftf splitter): Fix mode.

From-SVN: r41923
2001-05-09 10:19:00 +00:00
Jan Hubicka
4ea7a307cf genrecog.c (write_switch): Avoid outputting of switch for types wider than int.
* genrecog.c (write_switch): Avoid outputting of switch for
	types wider than int.

From-SVN: r41922
2001-05-09 10:06:20 +00:00
GCC Administrator
710bbed09d Daily bump.
From-SVN: r41921
2001-05-09 07:16:39 +00:00
Benjamin Kosnik
eea790f7b3 std_cstring.h (memchr): Correct definitions.
2001-05-08  Benjamin Kosnik  <bkoz@fillmore.constant.com>

	* include/c_std/bits/std_cstring.h (memchr): Correct definitions.
	(strchr): Same.
	(strpbrk): Same.
	(strrchr): Same.
	(strstr): Same.
	* include/c_std/bits/std_cwchar.h (wcschr): Same.
	(wcsbrk): Same.
	(wcsrchr): Same.
	(wcsstr): Same.
	(wmemchr): Same.
	* testsuite/21_strings/c_strings.cc: Add tests.

From-SVN: r41919
2001-05-08 23:53:55 +00:00
Andrew Haley
94bd63e512 reload1.c (copy_eh_notes): New function.
2001-05-03  Andrew Haley  <aph@cambridge.redhat.com>

        * reload1.c (copy_eh_notes): New function.
        (emit_input_reload_insns): Call it.
        (emit_output_reload_insns): Call it.

From-SVN: r41918
2001-05-08 14:14:11 +00:00