Is the first line of map.pxd now from sage.structure.category_object cimport CategoryObject ?
You'll also need to cimport Parent in map.pyx, since it will be used but no longer imported. David On Sun, Jun 14, 2015 at 11:29 PM, Martin R <[email protected]> wrote: > > > Am Montag, 15. Juni 2015 00:11:02 UTC+2 schrieb David Roe: >> >> >> >> On Sun, Jun 14, 2015 at 9:43 AM, 'Martin R' via sage-devel < >> [email protected]> wrote: >> >>> I have now made a minimal non-working example, using one approach that >>> would look sensibel to me. >>> >>> It fails doing the assignment self._codomain = C in Map.__init__, which >>> is something I do not understand. >>> >> >> The reason it fails is that _codomain is cdef Parent in map.pxd. You >> could change this to CategoryObject, though there may be some other >> consequences. >> > > Turns out that this doesn't work at all. Importing CategoryObject instead > of Parent, and declaring _codomain as CategoryObject, then sage -b yields: > > Cythonizing sage/categories/action.pyx > > Error compiling Cython file: > ------------------------------------------------------------ > ... > cpdef Element _call_(self, x) > cpdef Element _call_with_args(self, x, args=*, kwds=*) > > cdef public domain # will be either a weakref or a constant map > cdef public codomain # will be a constant map > cdef CategoryObject _codomain # for accessing the codomain directly > ^ > ------------------------------------------------------------ > > sage/categories/map.pxd:17:9: 'CategoryObject' is not a type identifier > Traceback (most recent call last): > File > "/home/martin/sage/local/lib/python2.7/site-packages/Cython-0.22-py2.7-linux-x86_64.egg/Cython/Build/Dependencies.py", > line 1003, in cythonize_one_helper > return cythonize_one(*m[1:]) > File > "/home/martin/sage/local/lib/python2.7/site-packages/Cython-0.22-py2.7-linux-x86_64.egg/Cython/Build/Dependencies.py", > line 985, in cythonize_one > raise CompileError(None, pyx_file) > CompileError: sage/categories/action.pyx > Cythonizing sage/categories/map.pyx > Traceback (most recent call last): > File "setup.py", line 562, in <module> > run_cythonize() > File "setup.py", line 554, in run_cythonize > 'profile': profile, > File > "/home/martin/sage/local/lib/python2.7/site-packages/Cython-0.22-py2.7-linux-x86_64.egg/Cython/Build/Dependencies.py", > line 856, in cythonize > result.get(99999) # seconds > File "/home/martin/sage/local/lib/python/multiprocessing/pool.py", line > 558, in get > raise self._value > Cython.Compiler.Errors.CompileError: sage/categories/action.pyx > Makefile:9: recipe for target 'sage' failed > make[1]: *** [sage] Error 1 > > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
