Update of /cvsroot/jython/jython/org/python/core
In directory usw-pr-cvs1:/tmp/cvs-serv730
Modified Files:
PyTableCode.java
Log Message:
call(): Makes exception text match CPython.
Index: PyTableCode.java
===================================================================
RCS file: /cvsroot/jython/jython/org/python/core/PyTableCode.java,v
retrieving revision 2.7
retrieving revision 2.8
diff -C2 -r2.7 -r2.8
*** PyTableCode.java 2000/10/11 10:12:24 2.7
--- PyTableCode.java 2001/01/21 16:22:32 2.8
***************
*** 297,302 ****
if (actual_args[index] != null) {
throw Py.TypeError(prefix()+
! "duplicate keyword argument: "+
! call_keywords[i]);
}
actual_args[index] =
--- 297,302 ----
if (actual_args[index] != null) {
throw Py.TypeError(prefix()+
! "got multiple values for keyword argument '"+
! call_keywords[i] + "'");
}
actual_args[index] =
***************
*** 306,311 ****
if (extra_keywords == null) {
throw Py.TypeError(prefix()+
! "unexpected keyword argument: "+
! call_keywords[i]);
}
extra_keywords.__setitem__(
--- 306,311 ----
if (extra_keywords == null) {
throw Py.TypeError(prefix()+
! "got an unexpected keyword argument '"+
! call_keywords[i] + "'");
}
extra_keywords.__setitem__(
***************
*** 332,340 ****
if (actual_args[i] == null) {
if (co_argcount-i > defaults.length) {
throw Py.TypeError(
prefix()+
! "not enough arguments; expected "+
! (co_argcount-defaults.length)+" got "+
! (call_args.length-call_keywords.length));
}
actual_args[i] = defaults[defaults.length-(co_argcount-i)];
--- 332,342 ----
if (actual_args[i] == null) {
if (co_argcount-i > defaults.length) {
+ int min = co_argcount-defaults.length;
throw Py.TypeError(
prefix()+
! "takes at least " + min +
! (min == 1 ? " argument (" : " arguments (") +
! (call_args.length-call_keywords.length)+
! " given)");
}
actual_args[i] = defaults[defaults.length-(co_argcount-i)];
|