It is a Cython bug. Most simple example:
sage: %%cython ....: def get(obj, int i): ....: return obj[i] sage: class D(dict): pass sage: d = D([(-1, "hello")]); d {-1: 'hello'} sage: get(d, -1) ... KeyError: 0 sage: d[-1] 'hello' -- 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 sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.