Back out trying to use the C values for CO_xxx.

__future__.py reverted to 1.9.
newmodule.c reverted to 2.32.
This commit is contained in:
Tim Peters 2001-08-24 06:29:12 +00:00
parent 4e2fbce71c
commit 89675078cb
2 changed files with 12 additions and 41 deletions

View File

@ -55,13 +55,13 @@ all_feature_names = [
__all__ = ["all_feature_names"] + all_feature_names __all__ = ["all_feature_names"] + all_feature_names
try: # The CO_xxx symbols are defined here under the same names used by
import new as _new # for CO_xxx symbols # compile.h, so that an editor search will find them here. However,
except ImportError: # May happen during build # they're not exported in __all__, because they don't really belong to
class _new: # this module.
CO_NESTED = 0x0010 CO_NESTED = 0x0010 # nested_scopes
CO_GENERATOR_ALLOWED = 0x1000 CO_GENERATOR_ALLOWED = 0x1000 # generators
CO_FUTURE_DIVISION = 0x2000 CO_FUTURE_DIVISION = 0x2000 # division
class _Feature: class _Feature:
def __init__(self, optionalRelease, mandatoryRelease, compiler_flag): def __init__(self, optionalRelease, mandatoryRelease, compiler_flag):
@ -92,12 +92,12 @@ class _Feature:
nested_scopes = _Feature((2, 1, 0, "beta", 1), nested_scopes = _Feature((2, 1, 0, "beta", 1),
(2, 2, 0, "alpha", 0), (2, 2, 0, "alpha", 0),
_new.CO_NESTED) CO_NESTED)
generators = _Feature((2, 2, 0, "alpha", 1), generators = _Feature((2, 2, 0, "alpha", 1),
(2, 3, 0, "final", 0), (2, 3, 0, "final", 0),
_new.CO_GENERATOR_ALLOWED) CO_GENERATOR_ALLOWED)
division = _Feature((2, 2, 0, "alpha", 2), division = _Feature((2, 2, 0, "alpha", 2),
(3, 0, 0, "alpha", 0), (3, 0, 0, "alpha", 0),
_new.CO_FUTURE_DIVISION) CO_FUTURE_DIVISION)

View File

@ -220,38 +220,9 @@ char new_doc[] =
\n\ \n\
You need to know a great deal about the interpreter to use this!"; You need to know a great deal about the interpreter to use this!";
static void
insertint(PyObject *d, char *name, int value)
{
PyObject *v = PyInt_FromLong((long) value);
if (v == NULL) {
/* Don't bother reporting this error */
PyErr_Clear();
}
else {
PyDict_SetItemString(d, name, v);
Py_DECREF(v);
}
}
DL_EXPORT(void) DL_EXPORT(void)
initnew(void) initnew(void)
{ {
PyObject *m; Py_InitModule4("new", new_methods, new_doc, (PyObject *)NULL,
PyObject *d; PYTHON_API_VERSION);
m = Py_InitModule4("new", new_methods, new_doc, (PyObject *)NULL,
PYTHON_API_VERSION);
d = PyModule_GetDict(m);
#define ADDSYM(TOKEN) insertint(d, #TOKEN, TOKEN)
ADDSYM(CO_OPTIMIZED);
ADDSYM(CO_NEWLOCALS);
ADDSYM(CO_VARARGS);
ADDSYM(CO_VARKEYWORDS);
ADDSYM(CO_NESTED);
ADDSYM(CO_GENERATOR);
ADDSYM(CO_GENERATOR_ALLOWED);
ADDSYM(CO_FUTURE_DIVISION);
#undef ADDSYM
} }