From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9950 invoked by alias); 13 Apr 2010 20:57:51 -0000 Received: (qmail 9933 invoked by uid 22791); 13 Apr 2010 20:57:48 -0000 X-SWARE-Spam-Status: No, hits=-6.8 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_HI,SPF_HELO_PASS,TW_MD,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 13 Apr 2010 20:57:37 +0000 Received: from int-mx01.intmail.prod.int.phx2.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id o3DKvZbW003927 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Tue, 13 Apr 2010 16:57:36 -0400 Received: from localhost.localdomain (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by int-mx01.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id o3DKvYew010639 for ; Tue, 13 Apr 2010 16:57:35 -0400 Message-ID: <4BC4DABE.9050704@redhat.com> Date: Tue, 13 Apr 2010 20:57:00 -0000 From: Phil Muldoon User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.8) Gecko/20100301 Fedora/3.0.3-1.fc12 Lightning/1.0b2pre Thunderbird/3.0.3 MIME-Version: 1.0 To: gdb-patches ml Subject: [python][patch] i8n replacement/capitalize/full sentences on Python error messages. Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2010-04/txt/msg00428.txt.bz2 During a recent review we caught some messages that were not written enclosed with _() and therefore would not allow for internationalization. I decided to audit the rest of the code, and found a few more. This patch converts those error strings. Additionally, in some cases, I added capitalization and punctuation. This patch is largely mechanical and obvious, but I did not commit under the obvious rule as it pretty much touches every file in the Python section. OK? Cheers, Phil -- 2010-04-13 Phil Muldoon * python/py-block.c (gdbpy_block_for_pc): Use i8n to encompass error/warning messages. Capitalize and use complete sentences. (blpy_block_syms_iternext): Likewise. * python/py-cmd.c (parse_command_name, cmdpy_init): Likewise. * python/py-frame.c (FRAPY_REQUIRE_VALID, frapy_block) (frame_info_to_frame_object, frapy_read_var) (gdbpy_frame_stop_reason_string): Likewise. * python/py-lazy-string.c (stpy_convert_to_value) (gdbpy_create_lazy_string_object): Likewise. * python/py-objfile.c (objfpy_set_printers): Likewise. * python/py-prettyprint.c (gdbpy_default_visualizer): Likewise. * python/python.c (parameter_to_python): Likewise. * python/py-type.c (typy_range, typy_target): Likewise. * python/py-value.c (valpy_cast, valpy_length, valpy_getitem) (valpy_richcompare, valpy_int, valpy_long, valpy_float): Likewise. -- diff --git a/gdb/python/py-block.c b/gdb/python/py-block.c index 3523664..d017030 100644 --- a/gdb/python/py-block.c +++ b/gdb/python/py-block.c @@ -248,7 +248,7 @@ blpy_block_syms_iternext (PyObject *self) if (sym == NULL) { - PyErr_SetString (PyExc_StopIteration, "Symbol is null."); + PyErr_SetString (PyExc_StopIteration, _("Symbol is null.")); return NULL; } @@ -281,7 +281,7 @@ gdbpy_block_for_pc (PyObject *self, PyObject *args) if (!symtab || symtab->objfile == NULL) { PyErr_SetString (PyExc_RuntimeError, - "Cannot locate object file for block."); + _("Cannot locate object file for block.")); return NULL; } diff --git a/gdb/python/py-cmd.c b/gdb/python/py-cmd.c index ae462d9..d187d16 100644 --- a/gdb/python/py-cmd.c +++ b/gdb/python/py-cmd.c @@ -279,7 +279,7 @@ parse_command_name (char *text, struct cmd_list_element ***base_list) ; if (i < 0) { - PyErr_SetString (PyExc_RuntimeError, _("no command name found")); + PyErr_SetString (PyExc_RuntimeError, _("No command name found.")); return NULL; } lastchar = i; @@ -311,7 +311,7 @@ parse_command_name (char *text, struct cmd_list_element ***base_list) elt = lookup_cmd_1 (&text, cmdlist, NULL, 1); if (!elt || elt == (struct cmd_list_element *) -1) { - PyErr_Format (PyExc_RuntimeError, _("could not find command prefix %s"), + PyErr_Format (PyExc_RuntimeError, _("Could not find command prefix %s."), prefix_text); xfree (prefix_text); xfree (result); @@ -325,7 +325,7 @@ parse_command_name (char *text, struct cmd_list_element ***base_list) return result; } - PyErr_Format (PyExc_RuntimeError, _("'%s' is not a prefix command"), + PyErr_Format (PyExc_RuntimeError, _("'%s' is not a prefix command."), prefix_text); xfree (prefix_text); xfree (result); @@ -374,7 +374,7 @@ cmdpy_init (PyObject *self, PyObject *args, PyObject *kw) /* Note: this is apparently not documented in Python. We return 0 for success, -1 for failure. */ PyErr_Format (PyExc_RuntimeError, - _("command object already initialized")); + _("Command object already initialized.")); return -1; } @@ -389,13 +389,13 @@ cmdpy_init (PyObject *self, PyObject *args, PyObject *kw) && cmdtype != class_trace && cmdtype != class_obscure && cmdtype != class_maintenance) { - PyErr_Format (PyExc_RuntimeError, _("invalid command class argument")); + PyErr_Format (PyExc_RuntimeError, _("Invalid command class argument.")); return -1; } if (completetype < -1 || completetype >= (int) N_COMPLETERS) { - PyErr_Format (PyExc_RuntimeError, _("invalid completion type argument")); + PyErr_Format (PyExc_RuntimeError, _("Invalid completion type argument.")); return -1; } diff --git a/gdb/python/py-frame.c b/gdb/python/py-frame.c index 3b5320c..e930ae2 100644 --- a/gdb/python/py-frame.c +++ b/gdb/python/py-frame.c @@ -51,7 +51,7 @@ typedef struct { do { \ frame = frame_object_to_frame_info (frame_obj); \ if (frame == NULL) \ - error ("Frame is invalid."); \ + error (_("Frame is invalid.")); \ } while (0) static PyTypeObject frame_object_type; @@ -227,7 +227,7 @@ frapy_block (PyObject *self, PyObject *args) if (!sal.symtab || !sal.symtab->objfile) { PyErr_SetString (PyExc_RuntimeError, - "Cannot locate object file for block."); + _("Cannot locate object file for block.")); return NULL; } @@ -273,7 +273,8 @@ frame_info_to_frame_object (struct frame_info *frame) frame_obj = PyObject_New (frame_object, &frame_object_type); if (frame_obj == NULL) { - PyErr_SetString (PyExc_MemoryError, "Could not allocate frame object."); + PyErr_SetString (PyExc_MemoryError, + _("Could not allocate frame object.")); return NULL; } @@ -436,7 +437,7 @@ frapy_read_var (PyObject *self, PyObject *args) if (!var) { PyErr_Format (PyExc_ValueError, - _("variable '%s' not found"), var_name); + _("Variable '%s' not found."), var_name); do_cleanups (cleanup); return NULL; @@ -447,7 +448,7 @@ frapy_read_var (PyObject *self, PyObject *args) else { PyErr_SetString (PyExc_TypeError, - _("argument must be a symbol or string")); + _("Argument must be a symbol or string.")); return NULL; } @@ -524,7 +525,8 @@ gdbpy_frame_stop_reason_string (PyObject *self, PyObject *args) if (reason < 0 || reason > UNWIND_NO_SAVED_PC) { - PyErr_SetString (PyExc_ValueError, "Invalid frame stop reason."); + PyErr_SetString (PyExc_ValueError, + _("Invalid frame stop reason.")); return NULL; } diff --git a/gdb/python/py-lazy-string.c b/gdb/python/py-lazy-string.c index ebe0a99..d28aae2 100644 --- a/gdb/python/py-lazy-string.c +++ b/gdb/python/py-lazy-string.c @@ -97,7 +97,7 @@ stpy_convert_to_value (PyObject *self, PyObject *args) if (self_string->address == 0) { PyErr_SetString (PyExc_MemoryError, - _("Cannot create a value from NULL")); + _("Cannot create a value from NULL.")); return NULL; } @@ -129,7 +129,7 @@ gdbpy_create_lazy_string_object (CORE_ADDR address, long length, if (!type) { PyErr_SetString (PyExc_RuntimeError, - "A lazy string's type cannot be NULL."); + _("A lazy string's type cannot be NULL.")); return NULL; } diff --git a/gdb/python/py-objfile.c b/gdb/python/py-objfile.c index 1b924d5..23655c6 100644 --- a/gdb/python/py-objfile.c +++ b/gdb/python/py-objfile.c @@ -93,14 +93,14 @@ objfpy_set_printers (PyObject *o, PyObject *value, void *ignore) if (! value) { PyErr_SetString (PyExc_TypeError, - "cannot delete the pretty_printers attribute"); + _("Cannot delete the pretty_printers attribute.")); return -1; } if (! PyList_Check (value)) { PyErr_SetString (PyExc_TypeError, - "the pretty_printers attribute must be a list"); + _("The pretty_printers attribute must be a list.")); return -1; } diff --git a/gdb/python/py-prettyprint.c b/gdb/python/py-prettyprint.c index 454aa5a..ea4722a 100644 --- a/gdb/python/py-prettyprint.c +++ b/gdb/python/py-prettyprint.c @@ -638,7 +638,8 @@ gdbpy_default_visualizer (PyObject *self, PyObject *args) value = value_object_to_value (val_obj); if (! value) { - PyErr_SetString (PyExc_TypeError, "argument must be a gdb.Value"); + PyErr_SetString (PyExc_TypeError, + _("Argument must be a gdb.Value.")); return NULL; } diff --git a/gdb/python/py-type.c b/gdb/python/py-type.c index ae12b58..238b84a 100644 --- a/gdb/python/py-type.c +++ b/gdb/python/py-type.c @@ -290,7 +290,7 @@ typy_range (PyObject *self, PyObject *args) && TYPE_CODE (type) != TYPE_CODE_RANGE) { PyErr_SetString (PyExc_RuntimeError, - "This type does not have a range."); + _("This type does not have a range.")); return NULL; } @@ -362,7 +362,8 @@ typy_target (PyObject *self, PyObject *args) if (!TYPE_TARGET_TYPE (type)) { - PyErr_SetString (PyExc_RuntimeError, "type does not have a target"); + PyErr_SetString (PyExc_RuntimeError, + _("Type does not have a target.")); return NULL; } diff --git a/gdb/python/py-value.c b/gdb/python/py-value.c index a792819..7672b5d 100644 --- a/gdb/python/py-value.c +++ b/gdb/python/py-value.c @@ -304,7 +304,8 @@ valpy_cast (PyObject *self, PyObject *args) type = type_object_to_type (type_obj); if (! type) { - PyErr_SetString (PyExc_RuntimeError, "argument must be a Type"); + PyErr_SetString (PyExc_RuntimeError, + _("Argument must be a type.")); return NULL; } @@ -322,7 +323,7 @@ valpy_length (PyObject *self) { /* We don't support getting the number of elements in a struct / class. */ PyErr_SetString (PyExc_NotImplementedError, - "Invalid operation on gdb.Value."); + _("Invalid operation on gdb.Value.")); return -1; } @@ -364,7 +365,7 @@ valpy_getitem (PyObject *self, PyObject *key) type = check_typedef (value_type (tmp)); if (TYPE_CODE (type) != TYPE_CODE_ARRAY && TYPE_CODE (type) != TYPE_CODE_PTR) - error( _("Cannot subscript requested type")); + error( _("Cannot subscript requested type.")); else res_val = value_subscript (tmp, value_as_long (idx)); } @@ -728,7 +729,7 @@ valpy_richcompare (PyObject *self, PyObject *other, int op) default: /* Can't happen. */ PyErr_SetString (PyExc_NotImplementedError, - "Invalid operation on gdb.Value."); + _("Invalid operation on gdb.Value.")); return NULL; } @@ -765,7 +766,7 @@ valpy_richcompare (PyObject *self, PyObject *other, int op) default: /* Can't happen. */ PyErr_SetString (PyExc_NotImplementedError, - "Invalid operation on gdb.Value."); + _("Invalid operation on gdb.Value.")); result = -1; break; } @@ -806,7 +807,8 @@ valpy_int (PyObject *self) CHECK_TYPEDEF (type); if (!is_intlike (type, 0)) { - PyErr_SetString (PyExc_RuntimeError, "cannot convert value to int"); + PyErr_SetString (PyExc_RuntimeError, + _("Cannot convert value to int.")); return NULL; } @@ -837,7 +839,8 @@ valpy_long (PyObject *self) if (!is_intlike (type, 1)) { - PyErr_SetString (PyExc_RuntimeError, "cannot convert value to long"); + PyErr_SetString (PyExc_RuntimeError, + _("Cannot convert value to long.")); return NULL; } @@ -866,7 +869,8 @@ valpy_float (PyObject *self) CHECK_TYPEDEF (type); if (TYPE_CODE (type) != TYPE_CODE_FLT) { - PyErr_SetString (PyExc_RuntimeError, "cannot convert value to float"); + PyErr_SetString (PyExc_RuntimeError, + _("Cannot convert value to float.")); return NULL; } @@ -977,7 +981,7 @@ convert_value_from_python (PyObject *obj) value = value_copy (((value_object *) result)->value); } else - PyErr_Format (PyExc_TypeError, _("Could not convert Python object: %s"), + PyErr_Format (PyExc_TypeError, _("Could not convert Python object: %s."), PyString_AsString (PyObject_Str (obj))); } if (except.reason < 0) diff --git a/gdb/python/python.c b/gdb/python/python.c index 9cf4520..41a9443 100644 --- a/gdb/python/python.c +++ b/gdb/python/python.c @@ -249,7 +249,8 @@ parameter_to_python (struct cmd_list_element *cmd) } } - return PyErr_Format (PyExc_RuntimeError, "programmer error: unhandled type"); + return PyErr_Format (PyExc_RuntimeError, + _("Programmer error: unhandled type.")); } /* A Python function which returns a gdb parameter's value as a Python @@ -276,10 +277,11 @@ gdbpy_parameter (PyObject *self, PyObject *args) GDB_PY_HANDLE_EXCEPTION (except); if (!found) return PyErr_Format (PyExc_RuntimeError, - "could not find parameter `%s'", arg); + _("Could not find parameter `%s'."), arg); if (! cmd->var) - return PyErr_Format (PyExc_RuntimeError, "`%s' is not a parameter", arg); + return PyErr_Format (PyExc_RuntimeError, + _("`%s' is not a parameter."), arg); return parameter_to_python (cmd); } diff --git a/gdb/testsuite/gdb.python/py-frame.exp b/gdb/testsuite/gdb.python/py-frame.exp index 150e737..baa080d 100644 --- a/gdb/testsuite/gdb.python/py-frame.exp +++ b/gdb/testsuite/gdb.python/py-frame.exp @@ -100,7 +100,7 @@ gdb_test "python print 'result =', f0.pc ()" " = \[0-9\]+" "test Frame.pc" gdb_test "python print 'result =', f0.older () == f1" " = True" "test Frame.older" gdb_test "python print 'result =', f1.newer () == f0" " = True" "test Frame.newer" gdb_test "python print 'result =', f0.read_var ('variable_which_surely_doesnt_exist')" \ - "ValueError: variable 'variable_which_surely_doesnt_exist' not found.*Error while executing Python code." \ + "ValueError: Variable 'variable_which_surely_doesnt_exist' not found.*Error while executing Python code." \ "test Frame.read_var - error" gdb_test "python print 'result =', f0.read_var ('a')" " = 1" "test Frame.read_var - success"