[Pyrex] Unused variables
Jim Fulton
jim at zope.com
Thu Dec 1 22:02:35 CET 2005
I'm having a problem with my first Pyrex project. Pyrex is generating
code with unused labels and variables and with static declarations for
things that aren't defined. I wasn't sure if this was normal, so
I tried building the demos and got much the same behavior:
jim at ds9:~/src/python/Pyrex-0.9.3.1/Demos$ /usr/local/python/2.4/bin/python Setup .py build_ext --inplace
running build_ext
building 'primes' extension
creating build
creating build/temp.linux-i686-2.4
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -fPI C -I/usr/local/python/2.4/include/python2.4 -c primes.c -o build/temp.linux-i686 -2.4/primes.o
primes.c: In function ‘__pyx_f_6primes_primes’:
primes.c:137: warning: label ‘__pyx_L4’ defined but not used
primes.c:108: warning: label ‘__pyx_L6’ defined but not used
primes.c:98: warning: label ‘__pyx_L5’ defined but not used
primes.c:89: warning: label ‘__pyx_L3’ defined but not used
primes.c: At top level:
primes.c:12: warning: ‘__Pyx_UnpackItem’ declared ‘static’ but never defined
primes.c:13: warning: ‘__Pyx_EndUnpack’ declared ‘static’ but never defined
primes.c:14: warning: ‘__Pyx_PrintItem’ declared ‘static’ but never defined
primes.c:15: warning: ‘__Pyx_PrintNewline’ declared ‘static’ but never defined
primes.c:16: warning: ‘__Pyx_Raise’ declared ‘static’ but never defined
primes.c:17: warning: ‘__Pyx_ReRaise’ declared ‘static’ but never defined
primes.c:18: warning: ‘__Pyx_Import’ declared ‘static’ but never defined
primes.c:19: warning: ‘__Pyx_GetExcValue’ declared ‘static’ but never defined
primes.c:20: warning: ‘__Pyx_ArgTypeTest’ declared ‘static’ but never defined
primes.c:21: warning: ‘__Pyx_TypeTest’ declared ‘static’ but never defined
primes.c:22: warning: ‘__Pyx_GetStarArgs’ declared ‘static’ but never defined
primes.c:23: warning: ‘__Pyx_WriteUnraisable’ declared ‘static’ but never define d
primes.c:25: warning: ‘__Pyx_ImportType’ declared ‘static’ but never defined
primes.c:26: warning: ‘__Pyx_SetVtable’ declared ‘static’ but never defined
primes.c:27: warning: ‘__Pyx_GetVtable’ declared ‘static’ but never defined
primes.c:28: warning: ‘__Pyx_CreateClass’ declared ‘static’ but never defined
primes.c:30: warning: ‘__Pyx_InitStrings’ declared ‘static’ but never defined
primes.c:31: warning: ‘__Pyx_GetName’ declared ‘static’ but never defined
gcc -pthread -shared build/temp.linux-i686-2.4/primes.o -o primes.so
building 'spam' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -fPI C -I/usr/local/python/2.4/include/python2.4 -c spam.c -o build/temp.linux-i686-2 .4/spam.o
spam.c: In function ‘__pyx_f_4spam_4Spam___new__’:
spam.c:64: warning: label ‘__pyx_L1’ defined but not used
spam.c: In function ‘__pyx_tp_new_4spam_Spam’:
spam.c:184: warning: unused variable ‘p’
spam.c: In function ‘__pyx_tp_dealloc_4spam_Spam’:
spam.c:192: warning: unused variable ‘p’
spam.c: In function ‘__pyx_tp_traverse_4spam_Spam’:
spam.c:207: warning: unused variable ‘p’
spam.c:206: warning: unused variable ‘e’
spam.c: In function ‘__pyx_tp_clear_4spam_Spam’:
spam.c:212: warning: unused variable ‘p’
spam.c: At top level:
spam.c:12: warning: ‘__Pyx_UnpackItem’ declared ‘static’ but never defined
spam.c:13: warning: ‘__Pyx_EndUnpack’ declared ‘static’ but never defined
spam.c:16: warning: ‘__Pyx_Raise’ declared ‘static’ but never defined
spam.c:17: warning: ‘__Pyx_ReRaise’ declared ‘static’ but never defined
spam.c:18: warning: ‘__Pyx_Import’ declared ‘static’ but never defined
spam.c:19: warning: ‘__Pyx_GetExcValue’ declared ‘static’ but never defined
spam.c:20: warning: ‘__Pyx_ArgTypeTest’ declared ‘static’ but never defined
spam.c:21: warning: ‘__Pyx_TypeTest’ declared ‘static’ but never defined
spam.c:22: warning: ‘__Pyx_GetStarArgs’ declared ‘static’ but never defined
spam.c:23: warning: ‘__Pyx_WriteUnraisable’ declared ‘static’ but never defined
spam.c:25: warning: ‘__Pyx_ImportType’ declared ‘static’ but never defined
spam.c:26: warning: ‘__Pyx_SetVtable’ declared ‘static’ but never defined
spam.c:27: warning: ‘__Pyx_GetVtable’ declared ‘static’ but never defined
spam.c:28: warning: ‘__Pyx_CreateClass’ declared ‘static’ but never defined
spam.c:29: warning: ‘__Pyx_InternStrings’ declared ‘static’ but never defined
spam.c:31: warning: ‘__Pyx_GetName’ declared ‘static’ but never defined
gcc -pthread -shared build/temp.linux-i686-2.4/spam.o -o spam.so
(skipped numeric example)
(I guess numeric_demo failed because I don't have the Python numeric package
installed.)
This is on Ubunto 5.10, which has gcc 4.0. It is using a Python 2.4.2 that
I built myself (not the one that came with Ubuntu). I'm also seeing this
on an old Red Hat machine with gcc 3.2.
Is the generation of unused variables and declarations for unused and
undefined variables normal? Are there any plans to fix this? While this
seems to just generate warnings, it sure would be nice to avoid them.
Jim
--
Jim Fulton mailto:jim at zope.com Python Powered!
CTO (540) 361-1714 http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
More information about the Pyrex
mailing list