09.03.2012 21:05, Sameer Grover kirjoitti: > subroutine union () > write(*,*)'Hello from Fortran90!!!' > end subroutine union > > f2py is unable to wrap this function. Changing the name of the > subroutine from 'union' to something else works. I understand that > problems like these have been reported a long time ago > (http://cens.ioc.ee/pipermail/f2py-users/2003-November/000605.html) > with some other function names as well. > > This looks like a bug to me or is there something I'm missing?
f2py indeed seems to skip names that collide with C keywords. The reason probably is that it's not guaranteed that the symbol name is mangled to "union_" but it could also become "union". If the name matches a C keyword, there's probably no (sane) way to call the function from the C language, and since f2py goes through C, it's not able to call that. Whether this is a real problem in practice or not is then a different question. The full list of "bad" names is 'int','double','float','char','short','long','void','case','while', 'return','signed','unsigned','if','for','typedef','sizeof','union', 'struct','static','register','new','break','do','goto','switch', 'continue','else','inline','extern','delete','const','auto', 'len','rank','shape','index','slen','size','_i', 'max', 'min', 'flen','fshape', 'string','complex_double','float_double','stdin','stderr','stdout', 'type','default' _______________________________________________ NumPy-Discussion mailing list [email protected] http://mail.scipy.org/mailman/listinfo/numpy-discussion
