Added 1995 to copyright message.
floatobject.c: fix hash().
methodobject.c: support METH_FREENAME flag bit.
diff --git a/Objects/methodobject.c b/Objects/methodobject.c
index a9bc508..671bdda 100644
--- a/Objects/methodobject.c
+++ b/Objects/methodobject.c
@@ -1,6 +1,6 @@
 /***********************************************************
-Copyright 1991, 1992, 1993, 1994 by Stichting Mathematisch Centrum,
-Amsterdam, The Netherlands.
+Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam,
+The Netherlands.
 
                         All Rights Reserved
 
@@ -33,15 +33,15 @@
 	char	*m_name;
 	method	m_meth;
 	object	*m_self;
-	int	m_varargs;
+	int	m_flags;
 } methodobject;
 
 object *
-newmethodobject(name, meth, self, varargs)
-	char *name; /* static string */
+newmethodobject(name, meth, self, flags)
+	char *name;
 	method meth;
 	object *self;
-	int varargs;
+	int flags;
 {
 	methodobject *op = NEWOBJ(methodobject, &Methodtype);
 	if (op != NULL) {
@@ -50,7 +50,7 @@
 		if (self != NULL)
 			INCREF(self);
 		op->m_self = self;
-		op->m_varargs = varargs;
+		op->m_flags = flags;
 	}
 	return (object *)op;
 }
@@ -85,7 +85,7 @@
 		err_badcall();
 		return -1;
 	}
-	return ((methodobject *)op) -> m_varargs;
+	return ((methodobject *)op) -> m_flags & METH_VARARGS;
 }
 
 /* Methods (the standard built-in methods, that is) */
@@ -96,6 +96,8 @@
 {
 	if (m->m_self != NULL)
 		DECREF(m->m_self);
+	if (m->m_flags & METH_FREENAME)
+		free(m->m_name);
 	free((char *)m);
 }
 
@@ -199,8 +201,9 @@
 		return listmethods(ml);
 	for (; ml->ml_name != NULL; ml++) {
 		if (strcmp(name, ml->ml_name) == 0)
-			return newmethodobject(ml->ml_name, ml->ml_meth,
-					op, ml->ml_varargs);
+			return newmethodobject(ml->ml_name, ml->ml_meth, op,
+					       ml->ml_varargs ?
+					       METH_VARARGS : 0);
 	}
 	err_setstr(AttributeError, name);
 	return NULL;