Michael Felt added the comment: Patched to fp22: vacpp.11.1.0.22.aix53TL7-71.sept2015.ptf.tar.Z
after reinstalling system! to be sure no garbage left around. Only updates are openSSL/SSH packages; no RPM's installed. Same error message(s). Tried compiling ceval.o with -O0 (capt. O, zero) - same messages Tried linking with .o files only (no archive) - effectively, same message. root@x064:[/data/prj/aixtools/python-2.7.11]xlc -o python Modules/python.o Python/*.o ld: 0711-596 SEVERE ERROR: Object Python/ceval.o An RLD for section 2 (.data) refers to symbol 0, but the storage class of the symbol is not C_EXT or C_HIDEXT. ld: 0711-596 SEVERE ERROR: Object Python/ceval.o An RLD for section 2 (.data) refers to symbol 0, but the storage class of the symbol is not C_EXT or C_HIDEXT. Maybe xlc does not know how to code the differences snip: diff -u ./python-2.7.10/Python/ceval.c ./python-2.7.11/Python/ceval.c | head -50 michael@x071:[/data/prj/aixtools/src]ython-2.7.11/Python/ceval.c | head -50 < --- ./python-2.7.10/Python/ceval.c 2015-05-23 16:09:24 +0000 +++ ./python-2.7.11/Python/ceval.c 2015-12-05 19:47:19 +0000 @@ -615,7 +615,7 @@ to guarantee that _Py_CheckRecursiveCall() is regularly called. Without USE_STACKCHECK, there is no need for this. */ int -_Py_CheckRecursiveCall(char *where) +_Py_CheckRecursiveCall(const char *where) { PyThreadState *tstate = PyThreadState_GET(); @@ -688,6 +688,100 @@ PyObject * PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) { +#ifdef DYNAMIC_EXECUTION_PROFILE + #undef USE_COMPUTED_GOTOS +#endif +#ifdef HAVE_COMPUTED_GOTOS + #ifndef USE_COMPUTED_GOTOS + #define USE_COMPUTED_GOTOS 1 + #endif +#else + #if defined(USE_COMPUTED_GOTOS) && USE_COMPUTED_GOTOS + #error "Computed gotos are not supported on this compiler." + #endif + #undef USE_COMPUTED_GOTOS + #define USE_COMPUTED_GOTOS 0 +#endif +#if USE_COMPUTED_GOTOS +/* Import the static jump table */ +#include "opcode_targets.h" + + /* This macro is used when several opcodes defer to the same implementation + (e.g. SETUP_LOOP, SETUP_FINALLY) */ +#define TARGET_WITH_IMPL(op, impl) \ + TARGET_##op: \ + opcode = op; \ + oparg = NEXTARG(); \ + case op: \ + goto impl; \ + +#define TARGET_WITH_IMPL_NOARG(op, impl) \ + TARGET_##op: \ + opcode = op; \ + case op: \ + goto impl; \ + +#define TARGET_NOARG(op) \ + TARGET_##op: \ In "character" a big change from 2.7.8 to 2.7.10 michael@x071:[/data/prj/aixtools/python]diff -u ./old/Python-2.7.8/Python/ceval> --- ./old/Python-2.7.8/Python/ceval.c 2014-06-30 02:05:46 +0000 +++ ./old/Python-2.7.10/Python/ceval.c 2015-05-23 16:09:24 +0000 @@ -66,9 +66,11 @@ even in 64-bit mode, we need to use "a" and "d" for the lower and upper 32-bit pieces of the result. */ -#define READ_TIMESTAMP(val) \ - __asm__ __volatile__("rdtsc" : \ - "=a" (((int*)&(val))[0]), "=d" (((int*)&(val))[1])); +#define READ_TIMESTAMP(val) do { \ + unsigned int h, l; \ + __asm__ __volatile__("rdtsc" : "=a" (l), "=d" (h)); \ + (val) = ((uint64)l) | (((uint64)h) << 32); \ + } while(0) #else @@ -355,12 +357,6 @@ if (interpreter_lock) { int err = errno; PyThread_acquire_lock(interpreter_lock, 1); - /* _Py_Finalizing is protected by the GIL */ - if (_Py_Finalizing && tstate != _Py_Finalizing) { - PyThread_release_lock(interpreter_lock); - PyThread_exit_thread(); - assert(0); /* unreachable */ - } errno = err; } #endif @@ -1025,12 +1021,6 @@ PyThread_acquire_lock(interpreter_lock, 1); - /* Check if we should make a quick exit. */ - if (_Py_Finalizing && _Py_Finalizing != tstate) { - PyThread_release_lock(interpreter_lock); - PyThread_exit_thread(); - } - if (PyThreadState_Swap(tstate) != NULL) Py_FatalError("ceval: orphan tstate"); @@ -1957,9 +1947,13 @@ if (err == 0) continue; break; } + t = PyObject_Repr(w); + if (t == NULL) + break; PyErr_Format(PyExc_SystemError, "no locals found when storing %s", - PyObject_REPR(w)); + PyString_AS_STRING(t)); + Py_DECREF(t); break; case DELETE_NAME: @@ -1971,9 +1965,13 @@ w); break; } + t = PyObject_Repr(w); + if (t == NULL) + break; PyErr_Format(PyExc_SystemError, "no locals when deleting %s", - PyObject_REPR(w)); + PyString_AS_STRING(w)); + Py_DECREF(t); break; PREDICTED_WITH_ARG(UNPACK_SEQUENCE); @@ -2046,10 +2044,14 @@ case LOAD_NAME: w = GETITEM(names, oparg); if ((v = f->f_locals) == NULL) { + why = WHY_EXCEPTION; + t = PyObject_Repr(w); + if (t == NULL) + break; PyErr_Format(PyExc_SystemError, "no locals when loading %s", - PyObject_REPR(w)); - why = WHY_EXCEPTION; + PyString_AS_STRING(w)); + Py_DECREF(t); break; } if (PyDict_CheckExact(v)) { michael@x071:[/data/prj/aixtools/python] So, until someone can help figure out which symbol is being referenced, yet seems to lack a correct attribute "but the storage class of the symbol is not C_EXT or C_HIDEXT." I am lost. Thank you for your consideration. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue26466> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com