Hmm. Something's not quite right: the _struct module fails to compile for me with this patch. I get:
/Users/dickinsm/python/svn/py3k/Modules/_struct.c: In function ‘s_unpack’:
/Users/dickinsm/python/svn/py3k/Modules/_struct.c:1730: error: ‘PyStructObject’ has no member named ‘s_codes’
/Users/dickinsm/python/svn/py3k/Modules/_struct.c: In function ‘s_unpack_from’:
/Users/dickinsm/python/svn/py3k/Modules/_struct.c:1765: error: ‘PyStructObject’ has no member named ‘s_codes’
The offending lines both look like:
assert(soself->s_codes != NULL);
presumably that should be:
assert(soself->s_tree->s_codes != NULL);
After making that change, and successfully rebuilding, this assert triggers:
test_705836 (__main__.StructTest) ... Assertion failed: (soself->s_tree->s_codes != NULL), function s_unpack, file /Users/dickinsm/python/svn/py3k/Modules/_struct.c, line 1730.