Commit Graph

46 Commits

Author SHA1 Message Date
Michael Snyder
f5db4da3d7 2002-04-05 Michael Snyder <msnyder@redhat.com>
* cli/cli-dump.c (restore_section_callback): Use paddr_nz.
2002-04-06 01:52:34 +00:00
Jim Blandy
9eb6e5a1a5 * cli/cli-dump.c (_initialize_cli_dump): Older GCC's tolerate
unescaped newlines in string literals, but newer ones don't.  So
escape them.
2002-03-29 23:34:43 +00:00
Michael Snyder
f02df580ce 2002-03-26 Michael Snyder <msnyder@redhat.com>
Andrew Cagney <cagney@redhat.com>

	* cli/cli-dump.c: New file.  Dump memory to file,
	restore file to memory.
	* cli/cli-dump.h: New file.
	* Makefile.in: Add rules, dependencies for cli-dump.o.
2002-03-29 01:22:41 +00:00
Michael Snyder
d4654627e1 2002-03-27 Michael Snyder <msnyder@redhat.com>
* breakpoint.c (_initialize_breakpoint): Clean up help string.
	* infcmd.c (_initialize_infcmd): Ditto.
	* language.c (_initialize_language): Ditto.
	* symfile.c (_initialize_symfile): Ditto.
	* top.c (_init_main): Ditto.
	* cli/cli-cmds.c (init_cli_cmds): Ditto.
2002-03-28 01:35:56 +00:00
Andrew Cagney
18a642a148 * command.h: Update copyright.
(struct cmd_list_element): Replace definition with opaque
declaration.
(enum cmd_types): Document that it will eventually be moved to
cli/cli-decode.h
(CMD_DEPRECATED, DEPRECATED_WARN_USER): Delete macros.
(MALLOCED_REPLACEMENT): Delete macro.
* Makefile.in (cli_decode_h): Add $(command_h).
(top.o, completer.o, maint.o): Add dependency on $(cli_decode_h).
* top.c: Include "cli/cli-decode.h".
* completer.c: Include "cli/cli-decode.h".
* maint.c: Include "cli/cli-decode.h".
* cli/cli-decode.h: Include "command.h".
(enum command_class): Delete.
(enum cmd_types): Comment out.
(enum cmd_auto_boolean): Delete.
(enum var_types): Delete.
2002-03-24 00:40:35 +00:00
Andrew Cagney
b2875cc0a2 * cli/cli-decode.c: Include "gdb_assert.h".
(add_set_or_show_cmd): New static function.
(add_set_cmd): Rewrite.  Use add_set_or_show_cmd.
(add_show_from_set): Rewrite. Use add_set_or_show_cmd.  Don't copy
all fields, such as func, from the set command.
2002-03-24 00:24:35 +00:00
Andrew Cagney
823ca731ed * defs.h (error): Add printf format attribute.
* thread-db.c (thread_from_lwp): Fix error format string.
* stack.c (parse_frame_specification): Ditto.
* cli/cli-decode.c (undef_cmd_error): Ditto.
* scm-lang.c (scm_lookup_name): Ditto.
* tracepoint.c (trace_error): Ditto.
* remote-utils.c (usage): Ditto.
* remote.c (compare_sections_command): Ditto.
Fix PR gdb/328.
2002-03-23 17:38:13 +00:00
Andrew Cagney
7d0766f3c3 * command.h (struct cmd_list_element): Add field context.
(set_cmd_context, get_cmd_context): Declare.
* cli/cli-decode.h: Ditto.
* cli/cli-decode.c (get_cmd_context): New function.
(set_cmd_context): New function.
(add_cmd): Initialize context.
Part of fixing PR gdb/145 and PR gdb/146.
2002-03-19 02:19:17 +00:00
Andrew Cagney
1868c04eba * cli/cli-decode.c (cmd_type): New function.
* command.h (cmd_type): Declare.
* infrun.c (set_schedlock_func): Call function cmd_type.
* kod.c (kod_set_os): Call cmd_type.
* cris-tdep.c (cris_version_update): Use function cmd_type.
(cris_mode_update, cris_abi_update): Ditto.
2002-03-18 02:26:32 +00:00
Andrew Cagney
5913bcb0f6 * command.h: (execute_cmd_post_hook): Declare.
(execute_cmd_pre_hook): Declare.
* cli/cli-script.c (clear_hook_in_cleanup): New function.
(execute_cmd_post_hook, execute_cmd_pre_hook): New
functions. Execute pre/post hook while ensuring that afterwords
hook_in is cleared.
* top.c (execute_command): Use execute_cmd_post_hook, and
execute_cmd_pre_hook to execute pre/post commands.
* infrun.c (normal_stop): Pass stop_command and not pre_hook to
hook_stop_stub.
(hook_stop_stub): Call execute_cmd_pre_hook.
2002-03-17 19:53:39 +00:00
Andrew Cagney
5ba2abebe7 * cli/cli-decode.c (set_cmd_completer): New function.
* command.h (set_cmd_completer): Declare.
* cli/cli-decode.h (set_cmd_completer): Ditto.

* breakpoint.c (_initialize_breakpoint): Use set_cmd_completer.
* cli/cli-cmds.c (init_cli_cmds): Ditto.
* win32-nat.c (_initialize_inftarg): Ditto.
* remote-rdi.c (_initialize_remote_rdi): Ditto.
* proc-api.c (_initialize_proc_api): Ditto.
* hppa-tdep.c (_initialize_hppa_tdep): Ditto.
* source.c (_initialize_source): Ditto.
* exec.c (_initialize_exec): Ditto.
* solib.c (_initialize_solib): Ditto.
* top.c (init_main): Ditto.
* tracepoint.c (_initialize_tracepoint): Ditto.
* symfile.c (_initialize_symfile): Ditto.
* printcmd.c (_initialize_printcmd): Ditto.
* infcmd.c (_initialize_infcmd): Ditto.
* corefile.c (_initialize_core): Ditto.
2002-03-06 06:28:35 +00:00
Andrew Cagney
bbaca940eb * cli/cli-decode.c (cmd_cfunc_eq): New function.
* command.h (cmd_cfunc_eq): Declare.
* cli/cli-decode.h (cmd_cfunc_eq): Ditto.

* cli/cli-cmds.h (is_complete_command): Change parameter to a
``struct cmd_list_element *''.
* cli/cli-cmds.c (is_complete_command): Update.  Use
cmd_cfunc_eq.
* top.c (execute_command): Pass the command to
is_complete_command.
* tracepoint.c: Replace function.cfunc with cmd_cfunc_eq.
2002-02-23 20:12:13 +00:00
Tom Tromey
83d31a92df * cli/cli-cmds.c (compare_strings): New function.
(complete_command): Only print each unique item once.
	* completer.h (complete_line): Declare.
	* completer.c (complete_line): New function.
	(line_completion_function): Use it.
2002-02-18 01:12:38 +00:00
Andrew Cagney
9f60d481c2 * cli/cli-decode.c (do_cfunc, set_cmd_cfunc): New functions.
(do_sfunc, set_cmd_sfunc): New functions.

* command.h (struct cmd_list_element): Add field func.
* cli/cli-decode.h (struct cmd_list_element): Ditto.
* command.h (set_cmd_sfunc, set_cmd_cfunc): Declare.
* cli/cli-decode.h: Ditto.

* cli/cli-decode.c (help_cmd): Test for func not cfunc/sfunc.
(help_all, help_cmd_list): Ditto.
(find_cmd, complete_on_cmdlist): Ditto.
* top.c (execute_command): Ditto.

* cli/cli-setshow.c (do_setshow_command): Call func instead of
function.sfunc.

* infcmd.c (notice_args_read): Fix function signature.

* cli/cli-cmds.c (init_cli_cmds): Use set_cmd_sfunc.
* cli/cli-decode.c (add_set_cmd): Ditto.
* utils.c (initialize_utils): Ditto.
* maint.c (_initialize_maint_cmds): Ditto.
* infrun.c (_initialize_infrun): Ditto.
* demangle.c (_initialize_demangler): Ditto.
* remote.c (add_packet_config_cmd): Ditto.
* mips-tdep.c (_initialize_mips_tdep): Ditto.
* cris-tdep.c (_initialize_cris_tdep): Ditto.
* proc-api.c (_initialize_proc_api): Ditto.
* kod.c (_initialize_kod): Ditto.
* valprint.c (_initialize_valprint): Ditto.
* top.c (init_main): Ditto.
* infcmd.c (_initialize_infcmd): Ditto.
* corefile.c (_initialize_core): Ditto.
* arm-tdep.c (_initialize_arm_tdep): Ditto.
* arch-utils.c (initialize_current_architecture): Ditto.
(_initialize_gdbarch_utils): Ditto.
* alpha-tdep.c (_initialize_alpha_tdep): Ditto.

* cli/cli-decode.c (add_cmd): Use set_cmd_cfunc.
* wince.c (_initialize_inftarg): Ditto.
* symfile.c (_initialize_symfile): Ditto.
* mips-tdep.c (_initialize_mips_tdep): Ditto.
* language.c (_initialize_language): Ditto.
* arc-tdep.c (_initialize_arc_tdep): Ditto.
2002-02-05 04:37:23 +00:00
Andrew Cagney
e00d1dc8a5 s/NO_FUNCTION/NULL/ 2002-02-02 00:56:37 +00:00
Andrew Cagney
8926118ce2 Remove else clause to #if UI_OUT. 2002-01-17 22:15:18 +00:00
Eli Zaretskii
db60ec6263 * completer.c (command_completer): New function.
* completer.h <command_completer>: Add prototype.

	* cli/cli-cmds.c (init_cli_cmds): Make command_completer be the
	completer for the "help" command.
2002-01-10 08:15:58 +00:00
Andrew Cagney
f976f6d464 * cli/cli-script.c (execute_control_command): Replace value_ptr
with a struct value pointer.
* ch-lang.c (evaluate_subexp_chill): Ditto.
* printcmd.c (printf_command): Ditto.
* tracepoint.c (set_traceframe_context): Ditto.
(encode_actions): Ditto.
* eval.c (evaluate_subexp_standard): Ditto.
2001-12-25 22:24:39 +00:00
Jeff Law
47724592cf * cli/cli-decode.c (add_cmd): Initialize pre_show_hook in
the new command.
2001-12-20 18:35:30 +00:00
Jackie Smith Cashion
e6ccd35f61 gdb/ChangeLog
2001-12-13  Jackie Smith Cashion  <jsmith@redhat.com>

	* cli/cli-script.c (print_command_lines): Remove extra
	"if", "else", "while", and "end" from show user output.

testsuite/ChangeLog
2001-12-13  Jackie Smith Cashion  <jsmith@redhat.com>

        * gdb.base/commands.exp (user_defined_command_test): Make "show user"
        test expect string more specific.
2001-12-13 22:42:23 +00:00
Tom Tromey
552c04a742 Fix for PR gdb/209, PR gdb/156:
* gdbarch.c, gdbarch.h: Rebuilt.
	* gdbarch.sh: Added `construct_inferior_arguments'.
	* cli/cli-decode.h (cmd_list_element): Added pre_show_hook.
	Typo fix.
	* cli/cli-setshow.c (do_setshow_command): Call the pre_show_hook.
	* infcmd.c (_initialize_infcmd): Set sfunc on `set args' command.
	(inferior_argc, inferior_argv): New globals.
	(notice_args_set): New function.
	(set_inferior_args): Clear inferior_argc and inferior_argv.
	(set_inferior_args_vector): New function.
	(get_inferior_args): Handle inferior argument vector.
	(run_command): Use get_inferior_args().
	(notice_args_read): New function.
	(_initialize_infcmd): Don't call set_inferior_args.
	* command.h: Typo fix.
	(cmd_list_element): Added pre_show_hook.
	* main.c (captured_main): Added --args option.
	(print_gdb_help): Document --args.
	* inferior.h (construct_inferior_arguments): Declare.
	(set_inferior_args_vector): Likewise.
	* fork-child.c (construct_inferior_arguments): New function.
2001-11-22 00:23:13 +00:00
Andrew Cagney
f3796e2657 * cli/cli-decode.c (add_set_boolean_cmd): Define.
* cli/cli-decode.h (add_set_boolean_cmd): Declare.
* command.h (add_set_boolean_cmd): Ditto.
* remote.c (_initialize_remote): Use add_set_boolean_cmd for "set
remotebreak"
2001-09-30 16:16:16 +00:00
Mark Kettenis
f77b92bf11 Make GDB use libiberty regex implementation.
* gdb_regex.h: Normalize protection against multiple inclusion.
Include "xregex.h" instead of "gnu-regex.h".
* cli/cli-cmds.c: Include "gdb_regex.h" instead of "gnu-regex.h".
* cli/cli-decode.c: Likewise.
* Makefile.in (REGEX): Remove.
(GDB_CFLAGS): Remove reference to gnu-regex.h in comment.
(ADD_FILES, ADD_DEPS): Remove $(REGEX).
(POSSLIBS): Remove.
(TAGFILES_NO_SRCDIR): Remove $(POSSLIBS).
(irix5-nat.o, solib.o, solib-svr4.o, source.o, symtab.o,
xcoffsolib.o, cli-decode.o, cli-cmd.o): Replace gnu-regex.h with
gdb_regex.h in list of dependencies.
(gnu-regex.o): Remove rule.
* gnu-regex.c, gnu-regex.h: Remove files.
2001-09-01 21:38:05 +00:00
Mark Kettenis
cc6dd2c071 * cli/cli-decode.h: Include "gdb_regex.h" instead of
"gnu-regex.h".
2001-08-02 20:18:29 +00:00
Elena Zannoni
210661e72f 2001-07-16 Elena Zannoni <ezannoni@redhat.com>
* top.c (is_complete_command, init_cmd_lists, init_cli_cmds,
        execute_user_command, do_setshow_command, get_prompt, init_proc,
        serial_log_command): Remove extern declarations.  Include
        cli/cli-cmds.h, cli/cli-script.h, cli/cli-setshow.h, serial.h.
        * gdbcmd.h (execute_user_command): Remove declaration, it's already
        in cli/cli-script.h.
        * command.h (do_setshow_command): Remove declaration, it's already
        in cli/cli-setshow.h.
        * infrun.c: Include "cli/cli-script.h" for execute_user_command.
        * Makefile.in (infrun.o): Update dependencies.
        (top.o): Ditto.
        * cli/cli-setshow.h: Add comment for do_setshow_command.
2001-07-16 14:46:34 +00:00
Eli Zaretskii
2584159ed9 * cli/cli-cmds.c (shell_escape) [GLOBAL_CURDIR]: Condition the
call to chdir on this symbol rather than on __DJGPP__.
	(CANT_FORK) [__MSDOS__]: Move from here...
	* defs.h (CANT_FORK) [__MSDOS__]: ...to here.
	(GLOBAL_CURDIR) [__MSDOS__]: Define.
2001-07-16 14:13:06 +00:00
Fernando Nasser
0d70f41b68 2001-06-17 Fernando Nasser <fnasser@redhat.com>
From 2001-06-15  Eirik Fuller  <eirik@hackrat.com>
	* cli/cli-script.c (free_command_lines): Reset list pointer.
2001-06-17 15:16:12 +00:00
Eli Zaretskii
c369014146 * source.c (mod_path, openp): Use #ifdef HAVE_DOS_BASED_FILE_SYSTEM
instead of #if HAVE_DOS_BASED_FILE_SYSTEM.
	* completer.c: Ditto.
	* cli/cli-cmds.c (cd_command): Ditto.
2001-06-06 10:27:59 +00:00
Eli Zaretskii
fe4e3eb861 * source.c (mod_path, openp): Use HAVE_DOS_BASED_FILE_SYSTEM
instead of system-specific define's like _WIN32 and __MSDOS__.
	Use IS_DIR_SEPARATOR and IS_ABSOLUTE_PATH instead of SLASH_P and
	ROOTED_P.
	(top-level): #include "filenames.h".

	* solib.c (solib_open): Use IS_DIR_SEPARATOR and IS_ABSOLUTE_PATH
	instead of SLASH_CHAR, ROOTED_P and SLASH_P.
	(top-level): #include "filenames.h".

	* defs.h (SLASH_P, SLASH_CHAR, ROOTED_P): Remove definitions.
	(SLASH_STRING): Define only for _WIN32.

	* completer.c: Use HAVE_DOS_BASED_FILE_SYSTEM instead of
	__MSDOS_.

	* cli/cli-cmds.c (cd_command): Use IS_DIR_SEPARATOR and
	IS_ABSOLUTE_PATH instead of SLASH_P and ROOTED_P.  Replace
	system-specific ifdefs with HAVE_DOS_BASED_FILE_SYSTEM.
	(top-level): #include "filenames.h".
2001-06-04 07:45:08 +00:00
Andrew Cagney
666547aa9e s/ui_out_list/ui_out_tupple/ 2001-05-12 04:08:24 +00:00
Andrew Cagney
2e94c45304 * config/pa/xm-hppah.h (malloc): Really delete declaration
(MALLOC_INCOMPATIBLE): Really delete macro.
* cli/cli-cmds.c (apropos_command): Use xcalloc.
2001-03-28 23:21:43 +00:00
Andrew Cagney
cf4eee44fd Zap __STDC__ references. 2001-03-19 23:31:41 +00:00
Fernando Nasser
f48ff60ac8 2001-03-13 Fernando Nasser <fnasser@redhat.com>
From Steven Johnson <sjohnson@neurizon.net>
	* cli/cli-script.c (define_command): Fix setting of post hooks.
2001-03-13 22:29:14 +00:00
Kevin Buettner
b6ba6518e9 Update/correct copyright notices. 2001-03-06 08:22:02 +00:00
Eli Zaretskii
fa58ee1196 * demangle.c (demangling_style_names): New variable.
(_initialize_demangler): Fill demangling_style_names with the
	names of known demangling styles from libiberty_demanglers[].  Use
	add_set_enum_cmd instead of add_set_cmd, to get completion on
	demangling style names.

	* proc-api.c (_initialize_proc_api): Make `procfs-file' use
	file-name completion.

	* remote-rdi.c (_initialize_remote_rdi): Ditto for `rdilogfile'.

	* solib.c (_initialize_solib): Ditto for `solib-search-path' and
	`solib-absolute-prefix'.

	* tracepoint.c (_initialize_tracepoint): Ditto for
	`save-tracepoints'.

	* win32-nat.c (_initialize_inftarg): Ditto for `dll-symbols'.

	* cli/cli-cmds.c (init_cli_cmds): Make `shell' and `make' use
	file-name completion.

	* infcmd.c (_initialize_infcmd): Make the following commands use
	the file-name completer: `tty', `args', `path', `paths', and
	`run'.
2001-02-19 11:47:16 +00:00
Andrew Cagney
8e65ff28b0 Add __FILE__ and __LINE__ parameter to internal_error() /
internal_verror().
2001-02-08 06:03:54 +00:00
John R. Moore
2b5436af18 * cli/cli-cmds.c (apropos_command): Changed occurance of free() to xfree().
Also changed Copyright to include 2001.
2001-02-02 19:37:48 +00:00
Andrew Cagney
d1f4cff847 Move putchar_filtered() to utils.c. 2001-01-31 03:46:23 +00:00
Andrew Cagney
e191e0abe5 * cli/cli-script.c (define_command): Check for a bad hook value in
switch statement.
2001-01-31 00:50:01 +00:00
Andrew Cagney
494b7ec97e Replace STRCMP with strcmp() 2001-01-19 08:01:47 +00:00
Nicholas Duffek
12cf3f1bf8 * Makefile.in (SUBDIR_CLI_OBS): Add cli/cli-utils.o.
(SUBDIR_CLI_SRCS): Add cli/cli-utils.c.
	(cli_utils_h): New variable.
	(cli/cli-utils.o): New rule.
	* cli/cli-utils.c: New file.
	* cli/cli-utils.h: New file.
2001-01-04 15:50:48 +00:00
Kevin Buettner
b8c9b27d1e Replace free() with xfree(). 2000-12-15 01:01:51 +00:00
Fernando Nasser
69da3468fd 2000-12-06 Fernando Nasser <fnasser@redhat.com>
* cli/cli-decode.c (add_abbrev_cmd): Reinstate. Add comment saying
	that is not currently used.
2000-12-06 23:53:03 +00:00
Fernando Nasser
c64601c792 2000-12-06 Fernando Nasser <fnasser@redhat.com>
* cli/cli-decode.c (lookup_cmd): Change disabled code into comment.
2000-12-06 23:27:41 +00:00
Fernando Nasser
7c4710aef5 2000-12-06 Fernando Nasser <fnasser@redhat.com>
* cli/cli-decode.c (lookup_cmd): Remove old stale copy of this routine
	which was not being used for quite some time.
2000-12-06 23:12:12 +00:00
Fernando Nasser
d318976c46 2000-12-01 Fernando Nasser <fnasser@redhat.com>
* cli/cli-decode.c: New file. Handle lists of commands, their decoding
        and documentation.
        (add_cmd, deprecate_cmd, add_abbrev_cmd, add_alias_cmd, add_prefix_cmd,
        add_abbrev_prefix_cmd, not_just_help_class_command, empty_sfunc,
        add_set_cmd, add_set_enum_cmd, add_set_auto_boolean_cmd,
        add_show_from_set, delete_cmd, apropos_cmd, help_cmd, help_list,
        help_all, print_doc_line, help_cmd_list, find_cmd, lookup_cmd_1,
        undef_cmd_error, lookup_cmd, deprecated_cmd_warning,
        lookup_cmd_composition, complete_on_cmdlist, complete_on_enum):
        Moved here from command.c.
        (add_info, add_info_alias, add_com, add_com_alias): Moved here from
        top.c.
        * cli/cli-decode.h: Definitions/declarations for the above.
        * cli/cli-cmds.c: New file.  GDB CLI commands.
        (error_no_arg, info_command, show_command, help_command, show_version,
        quit_command, pwd_command, cd_command, echo_command, shell_escape,
        make_command, show_user, set_debug, show_debug, init_cmd_lists):
        Moved here from top.c.
        (apropos_command): Moved here from command.c.
        (complete_command, source_command): Moved here (part) from top.c.
        (is_complete_command): New function. Checks if a command is the
        "complete" command.
        (init_cli_cmds): New function. Add commands to the CLI (from code
        previously in top.c.
        * cli/cli-cmds.h: Definitions/declarations for the above.
        * cli/cli-script.c: New file. GDB CLI command scripting.
        (build_command_line, get_command_line, print_command_lines,
        print_command_line, execute_user_command, execute_control_command,
        while_command, if_command, arg_cleanup, setup_user_args, locate_arg,
        insert_args, realloc_body_list, read_next_line,
        recurse_read_control_structure, read_command_lines, free_command_lines,
        do_free_command_lines_cleanup, make_cleanup_free_command_lines,
        validate_comname, user_defined_command, define_command,
        document_command, source_cleanup_lines, do_fclose_cleanup,
        show_user_1): Moved here from top.c.
        (script_from_file): New function. Implements execution of a script
        contained in a file (part of code for the source_command() that used
        to exist in top.c).
        * cli/cli-script.h: Definitions/declarations for the above.
        * cli/cli-setshow.c: New file. Handle set and show GDB CLI commands.
        (parse_auto_binary_operation, parse_binary_operation,
        do_setshow_command, cmd_show_list): Moved here from command.c.
        * cli/cli-setshow.h: Definitions/declarations for the above.
        * top.c: Remove all CLI code, except the command loop.
        (gdb_init): Call init_cli_cmds().
        * command.c: Remove obsolete file.
        * command.h: Mark as DEPRECATED.
        * gdbcmd.h: Ditto.
        * call-cmds.h: Ditto.
        * Makefile.in (SFILES): Remove command.c.
        (COMMON_OBS): Remove command.o.
        (command.o): Remove obsolete target.
        (cli_decode_h, cli_cmds_h, cli_script_h, cli_setshow_h): New macros.
        Refer to CLI header files.
        (cli-decode.o, cli-cmds.o, cli-setshow.o, cli-script.o): New targets.
        (SUBDIR_CLI_OBS, SUBDIR_CLI_SRCS, SUBDIR_CLI_DEPS, SUBDIR_CLI_INITS,
        SUBDIR_CLI_LDFLAGS, SUBDIR_CLI_CFLAGS, SUBDIR_CLI_ALL, SUBDIR_CLI_CLEAN,
        SUBDIR_CLI_INSTALL, SUBDIR_CLI_UNINSTALL): New macros for new cli
        subdirectory.
        * configure.in (enable_gdbcli): New option. Include the CLI in the
        executable (cannot be disabled yet).
        (CONFIG_OBS, CONFIG_DEPS, CONFIG_SRCS, CONFIG_INITS, ENABLE_CFLAGS,
        CONFIG_ALL, CONFIG_CLEAN, CONFIG_INSTALL, CONFIG_UNINSTALL): Add
        the corresponding SUBDIR_CLI_* macros if CLI requested.
        * configure: Regenerate.
2000-12-01 18:01:38 +00:00