I think you've figured out what's going on.  Short of adding the feature,
is it possible to add a better error message, rather than what looks like a
random crash?

-- Elizabeth



On Mon, Feb 1, 2016 at 8:08 PM, Kevin Thornton <krtho...@uci.edu> wrote:

> Without knowing more about the "blitz" stuff, it is hard to provide
> detailed help.
>
> However, it looks like you have a template taking a non-typename as a
> parameter, which is not currently supported in Cython.
>
> In other words, the 1 in [double,1] is not a type name, and that causes
> Cython to give up.  There is a pull request in progress to fix this issue
> on GitHub, but I'm not sure what the latest is on that.
>
> On Sun, Jan 31, 2016 at 11:07 PM Elizabeth Fischer <rpf2...@columbia.edu>
> wrote:
>
>> Cython is crashing on me when I compile.  See below.
>>
>> -- Elizabeth
>>
>> cython --version
>>
>> Cython version 0.23.4
>>
>> Error compiling Cython file:
>> ------------------------------------------------------------
>> ...
>> #        cdef int flags
>>
>> def test_double_blitz(a):
>> cdef vector[int] v
>> cdef cblitz.Array[double,1] a_b
>> a_b = cibmisc.np_to_blitz[double,1](a, b'var', [-1])
>>                          ^
>> ------------------------------------------------------------
>>
>> /Users/rpfische/git/ibmisc/pylib/ibmisc.pyx:38:26: Compiler crash in
>> AnalyseExpressionsTransform
>>
>> ModuleNode.body = StatListNode(ibmisc.pyx:1:0)
>> StatListNode.stats[3] = StatListNode(ibmisc.pyx:35:0)
>> StatListNode.stats[0] = DefNode(ibmisc.pyx:35:0,
>>     modifiers = [...]/0,
>>     name = 'test_double_blitz',
>>     num_required_args = 1,
>>     py_wrapper_required = True,
>>     reqd_kw_flags_cname = '0',
>>     used = True)
>> File 'Nodes.py', line 430, in analyse_expressions:
>> StatListNode(ibmisc.pyx:36:1)
>> File 'Nodes.py', line 4775, in analyse_expressions:
>> SingleAssignmentNode(ibmisc.pyx:38:36)
>> File 'Nodes.py', line 4887, in analyse_types:
>> SingleAssignmentNode(ibmisc.pyx:38:36)
>> File 'ExprNodes.py', line 4640, in analyse_types:
>> SimpleCallNode(ibmisc.pyx:38:36,
>>     analysed = True,
>>     result_is_used = True,
>>     use_managed_ref = True)
>> File 'ExprNodes.py', line 3109, in analyse_types:
>> IndexNode(ibmisc.pyx:38:26,
>>     is_called = 1,
>>     is_subscript = True,
>>     result_is_used = True,
>>     use_managed_ref = True)
>> File 'ExprNodes.py', line 3419, in analyse_base_and_index_types:
>> IndexNode(ibmisc.pyx:38:26,
>>     is_called = 1,
>>     is_subscript = True,
>>     result_is_used = True,
>>     use_managed_ref = True)
>>
>> Compiler crash traceback from this point on:
>>   File
>> "/Users/rpfische/macports/mpgompi-4.9.3/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/Cython/Compiler/ExprNodes.py",
>> line 3419, in analyse_base_and_index_types
>>     elif len(base_type.templates) != len(self.type_indices):
>> TypeError: object of type 'NoneType' has no len()
>> make[2]: *** [pylib/ibmisc.cpp] Error 1
>> make[2]: *** Deleting file `pylib/ibmisc.cpp'
>> make[1]: *** [pylib/CMakeFiles/ibmisc_so.dir/all] Error 2
>> make: *** [all] Error 2
>>
>> _______________________________________________
>> cython-devel mailing list
>> cython-devel@python.org
>> https://mail.python.org/mailman/listinfo/cython-devel
>>
>
> _______________________________________________
> cython-devel mailing list
> cython-devel@python.org
> https://mail.python.org/mailman/listinfo/cython-devel
>
>
_______________________________________________
cython-devel mailing list
cython-devel@python.org
https://mail.python.org/mailman/listinfo/cython-devel

Reply via email to