[Python-checkins] CVS: python/dist/src/Objects stringobject.c,2.110,2.111

Tim Peters tim_one@users.sourceforge.net
2001年5月09日 00:37:09 -0700


Update of /cvsroot/python/python/dist/src/Objects
In directory usw-pr-cvs1:/tmp/cvs-serv30971/python/dist/src/Objects
Modified Files:
	stringobject.c 
Log Message:
Mark Favas reported that gcc caught me using casts as lvalues. Dodge it.
Index: stringobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/stringobject.c,v
retrieving revision 2.110
retrieving revision 2.111
diff -C2 -r2.110 -r2.111
*** stringobject.c	2001年05月09日 00:31:40	2.110
--- stringobject.c	2001年05月09日 07:37:07	2.111
***************
*** 37,41 ****
 PyString_FromStringAndSize(const char *str, int size)
 {
! 	PyStringObject *op;
 #ifndef DONT_SHARE_SHORT_STRINGS
 	if (size == 0 && (op = nullstring) != NULL) {
--- 37,41 ----
 PyString_FromStringAndSize(const char *str, int size)
 {
! 	register PyStringObject *op;
 #ifndef DONT_SHARE_SHORT_STRINGS
 	if (size == 0 && (op = nullstring) != NULL) {
***************
*** 74,82 ****
 #ifndef DONT_SHARE_SHORT_STRINGS
 	if (size == 0) {
! 		PyString_InternInPlace(&(PyObject *)op);
 		nullstring = op;
 		Py_INCREF(op);
 	} else if (size == 1 && str != NULL) {
! 		PyString_InternInPlace(&(PyObject *)op);
 		characters[*str & UCHAR_MAX] = op;
 		Py_INCREF(op);
--- 74,84 ----
 #ifndef DONT_SHARE_SHORT_STRINGS
 	if (size == 0) {
! 		PyObject *t = (PyObject *)op;
! 		PyString_InternInPlace(&t);
 		nullstring = op;
 		Py_INCREF(op);
 	} else if (size == 1 && str != NULL) {
! 		PyObject *t = (PyObject *)op;
! 		PyString_InternInPlace(&t);
 		characters[*str & UCHAR_MAX] = op;
 		Py_INCREF(op);
***************
*** 90,94 ****
 {
 	register size_t size = strlen(str);
! 	PyStringObject *op;
 	if (size > INT_MAX) {
 		PyErr_SetString(PyExc_OverflowError,
--- 92,96 ----
 {
 	register size_t size = strlen(str);
! 	register PyStringObject *op;
 	if (size > INT_MAX) {
 		PyErr_SetString(PyExc_OverflowError,
***************
*** 128,136 ****
 #ifndef DONT_SHARE_SHORT_STRINGS
 	if (size == 0) {
! 		PyString_InternInPlace(&(PyObject *)op);
 		nullstring = op;
 		Py_INCREF(op);
 	} else if (size == 1) {
! 		PyString_InternInPlace(&(PyObject *)op);
 		characters[*str & UCHAR_MAX] = op;
 		Py_INCREF(op);
--- 130,140 ----
 #ifndef DONT_SHARE_SHORT_STRINGS
 	if (size == 0) {
! 		PyObject *t = (PyObject *)op;
! 		PyString_InternInPlace(&t);
 		nullstring = op;
 		Py_INCREF(op);
 	} else if (size == 1) {
! 		PyObject *t = (PyObject *)op;
! 		PyString_InternInPlace(&t);
 		characters[*str & UCHAR_MAX] = op;
 		Py_INCREF(op);

AltStyle によって変換されたページ (->オリジナル) /