Dear sage community, my name is Pere and I'm porting an internal lib to python via pyrex. This will be a test case to port it then to sage. I could port a little part ( the simple case ) but when I try to do it with the large case it doesn't work. When I run with the large case I get all the time this error:
[EMAIL PROTECTED]:~/workspace/ubc/PyUBC$ ./test.py 1024 <type 'list'> *** glibc detected *** free(): invalid next size (normal): 0x081567a0 *** Avortat this could mean that the code was running ok but when python is freeing the memory there may be some error that i could not find (Im newby with python and pyrex, ;>). When I run this case with gdb the bt is: (gdb) run test.py Starting program: /usr/bin/python test.py (no debugging symbols found) (no debugging symbols found) [Thread debugging using libthread_db enabled] [New Thread -1210119968 (LWP 5882)] (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) 1024 <type 'list'> *** glibc detected *** free(): invalid next size (normal): 0x081567a0 *** Program received signal SIGABRT, Aborted. [Switching to Thread -1210119968 (LWP 5882)] 0xb7e19947 in raise () from /lib/tls/libc.so.6 (gdb) bt #0 0xb7e19947 in raise () from /lib/tls/libc.so.6 #1 0xb7e1b0c9 in abort () from /lib/tls/libc.so.6 #2 0xb7e4efda in __fsetlocking () from /lib/tls/libc.so.6 #3 0xb7e5689f in mallopt () from /lib/tls/libc.so.6 #4 0xb7e56942 in free () from /lib/tls/libc.so.6 #5 0x0807a459 in PyLong_FromDouble () #6 0x0807bdd5 in PyDict_SetItem () #7 0x08101e94 in _PyModule_Clear () #8 0x080d20c4 in PyImport_Cleanup () #9 0x080dc48e in Py_Finalize () #10 0x08055824 in Py_Main () #11 0x08055032 in main () and the source code involved with pyrex is: if wordLength <= UnsignedIntLength: #We are working with an small code smallCode=small_kernel(p,wordLength,codeCardinal,...) codi = scCode2pCode(smallCode,codeCardinal,limbs) else: #Our code is on the large side. largeCode = large_kernel(p,wordLength,codeCardinal,...) codi = lcCode2pCode(largeCode,codeCardinal,limbs) return codi if i take out the large_kernel function then the case works good ... this could make me supose that the problem could be with the lib, but if i run the binary generated with the lib it run without problems. PD: Sorry for my english, I'm not so good :<.. Regards, -- |---------------------------------------------------------------.--. |Pere Urbón Bayes JabberID: [EMAIL PROTECTED] |o_o | |Dept. of Information and Communication's Engineering |:_/ | |E.T.S. d'Enginyeria. Autonomous University of Barcelona // \ \ |08193 Bellaterra, Cerdanyola del Valles (Catalonia) (| | ) |Tel: +34935813573 QC/2005 (Combinatoric and Coding Group) /'\_ _/`\ |-----------------------------------------------------------\___)=(___/ --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~----------~----~----~----~------~----~------~--~---