_ERRORS = u'''
- 2:0: break statement not inside loop
- 5:4: break statement not inside loop
- 8:4: break statement not inside loop
+2:0: break statement not inside loop
+5:4: break statement not inside loop
+8:4: break statement not inside loop
11:4: break statement not inside loop
16:5: break statement not inside loop
20:4: break statement not inside loop
"""
_ERRORS = u"""
-:5:16: Cannot coerce list to type 'list'
+5:16: Cannot coerce list to type 'list'
"""
_ERRORS = u'''
- 2:0: continue statement not inside loop
- 5:4: continue statement not inside loop
- 8:4: continue statement not inside loop
+2:0: continue statement not inside loop
+5:4: continue statement not inside loop
+8:4: continue statement not inside loop
11:4: continue statement not inside loop
16:5: continue statement not inside loop
20:4: continue statement not inside loop
i1 = p1 # error
p2 = obj # error
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_ass.pyx:5:16: Cannot assign type 'char *' to 'int'
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_ass.pyx:6:17: Cannot convert Python object to 'int *'
+5:16: Cannot assign type 'char *' to 'int'
+6:17: Cannot convert Python object to 'int *'
"""
cdef void spam():
None = 42
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_assnone.pyx:2:1: Cannot assign to or delete this
+2:1: Cannot assign to or delete this
"""
def f(Foo *p):
pass
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_badpyparam.pyx:3:6: Cannot convert Python object argument to type 'Foo *'
+3:6: Cannot convert Python object argument to type 'Foo *'
"""
cdef char *ptr
int1 = int2 | ptr # error
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_bitop.pyx:4:13: Invalid operand types for '|' (int; char *)
+4:13: Invalid operand types for '|' (int; char *)
"""
_ERRORS = u"""
- 5:26: 'struct_type_not_boolean' is not a constant, variable or function identifier
- 5:26: Type 'struct_type_not_boolean' not acceptable as a boolean
+5:26: 'struct_type_not_boolean' is not a constant, variable or function identifier
+5:26: Type 'struct_type_not_boolean' not acceptable as a boolean
12:21: 'struct_not_boolean' is not a constant, variable or function identifier
12:21: Type 'struct_not_boolean' not acceptable as a boolean
a.some_method(1, y=2)
_ERRORS = u"""
-:9:13: Keyword arguments not allowed in cdef functions.
-:14:13: Keyword arguments not allowed in cdef functions.
+9:13: Keyword arguments not allowed in cdef functions.
+14:13: Keyword arguments not allowed in cdef functions.
"""
cdef extern from *:
void f(int)
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors3/e_cdef_missing_declarator.pyx:1:8: Empty declarator
+1:8: Empty declarator
"""
cdef enum ham:
pass
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cdefemptysue.pyx:1:5: Empty struct or union definition not allowed outside a 'cdef extern from' block
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cdefemptysue.pyx:4:0: Empty struct or union definition not allowed outside a 'cdef extern from' block
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cdefemptysue.pyx:7:5: Empty enum definition not allowed outside a 'cdef extern from' block
+1:5: Empty struct or union definition not allowed outside a 'cdef extern from' block
+4:0: Empty struct or union definition not allowed outside a 'cdef extern from' block
+7:5: Empty enum definition not allowed outside a 'cdef extern from' block
"""
a = 42 # assignment to non-lvalue
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cenum.pyx:6:3: Assignment to non-lvalue 'a'
+6:3: Assignment to non-lvalue 'a'
"""
cdef void f(self, int x):
pass
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors3/e_cmethbasematch.pyx:6:6: Signature not compatible with previous declaration
-/Local/Projects/D/Pyrex/Source/Tests/Errors3/e_cmethbasematch.pyx:2:6: Previous declaration is here
+6:6: Signature not compatible with previous declaration
+2:6: Previous declaration is here
"""
bool = int1 == ptr2 # error
bool = ptr2 == ptr3 # error
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cmp.pyx:5:13: Invalid types for '==' (int, char *)
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cmp.pyx:6:13: Invalid types for '==' (char *, int *)
+5:13: Invalid types for '==' (int, char *)
+6:13: Invalid types for '==' (char *, int *)
"""
j = gp.x # error - incomplete type
gp.x = j # error - incomplete type
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cstruct.pyx:5:36: C struct/union member cannot be a Python object
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cstruct.pyx:15:6: Object of type 'Spam' has no attribute 'k'
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cstruct.pyx:16:6: Cannot assign type 'float *[42]' to 'int'
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cstruct.pyx:17:21: Cannot assign type 'int' to 'float *[42]'
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cstruct.pyx:18:6: Object of type 'int' has no attribute 'i'
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cstruct.pyx:19:2: Object of type 'int' has no attribute 'i'
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cstruct.pyx:20:7: Cannot select attribute of incomplete type 'Grail'
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_cstruct.pyx:21:3: Cannot select attribute of incomplete type 'Grail'
+5:36: C struct/union member cannot be a Python object
+15:6: Object of type 'Spam' has no attribute 'k'
+16:6: Cannot assign type 'float *[42]' to 'int'
+17:21: Cannot assign type 'int' to 'float *[42]'
+18:6: Object of type 'int' has no attribute 'i'
+19:2: Object of type 'int' has no attribute 'i'
+20:7: Cannot select attribute of incomplete type 'Grail'
+21:3: Cannot select attribute of incomplete type 'Grail'
"""
ctypedef struct Spam
ctypedef class Eggs
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_ctypedefforward.pyx:1:0: Forward-referenced type must use 'cdef', not 'ctypedef'
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_ctypedefforward.pyx:2:0: Forward-referenced type must use 'cdef', not 'ctypedef'
+1:0: Forward-referenced type must use 'cdef', not 'ctypedef'
+2:0: Forward-referenced type must use 'cdef', not 'ctypedef'
"""
cdef Blarg b
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_ctypedefornot.pyx:3:0: 'Foo' previously declared using 'cdef'
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_ctypedefornot.pyx:9:5: 'Blarg' previously declared using 'ctypedef'
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_ctypedefornot.pyx:13:0: 'Spam' previously declared using 'cdef'
+3:0: 'Foo' previously declared using 'cdef'
+9:5: 'Blarg' previously declared using 'ctypedef'
+13:0: 'Spam' previously declared using 'cdef'
"""
h = <int ()()>f # this is an error
h = <int (*)()>f # this is OK
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors3/e_declarations.pyx:1:19: Array element cannot be a function
-/Local/Projects/D/Pyrex/Source/Tests/Errors3/e_declarations.pyx:2:18: Function cannot return an array
-/Local/Projects/D/Pyrex/Source/Tests/Errors3/e_declarations.pyx:3:18: Function cannot return a function
-/Local/Projects/D/Pyrex/Source/Tests/Errors3/e_declarations.pyx:8:10: Function cannot return a function
-/Local/Projects/D/Pyrex/Source/Tests/Errors3/e_declarations.pyx:8:5: Cannot cast to a function type
+1:19: Array element cannot be a function
+2:18: Function cannot return an array
+3:18: Function cannot return a function
+8:10: Function cannot return a function
+8:5: Cannot cast to a function type
"""
del x[i] # error: deletion of non-Python object
del s.m # error: deletion of non-Python object
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_del.pyx:8:6: Cannot assign to or delete this
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_del.pyx:9:45: Deletion of non-Python object
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_del.pyx:12:6: Deletion of non-Python object
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_del.pyx:13:6: Deletion of non-Python object
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_del.pyx:11:52: Deletion of local or C global name not supported
+8:6: Cannot assign to or delete this
+9:45: Deletion of non-Python object
+12:6: Deletion of non-Python object
+13:6: Deletion of non-Python object
+11:52: Deletion of local or C global name not supported
"""
pass
_ERRORS = u"""
- 8:0: default 'except:' must be last
+8:0: default 'except:' must be last
10:0: default 'except:' must be last
"""
grail = spam # type mismatch
spam = grail # type mismatch
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_excvalfunctype.pyx:7:28: Cannot assign type 'e_excvalfunctype.spamfunc' to 'e_excvalfunctype.grailfunc'
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_excvalfunctype.pyx:8:28: Cannot assign type 'e_excvalfunctype.grailfunc' to 'e_excvalfunctype.spamfunc'
+7:28: Cannot assign type 'e_excvalfunctype.spamfunc' to 'e_excvalfunctype.grailfunc'
+8:28: Cannot assign type 'e_excvalfunctype.grailfunc' to 'e_excvalfunctype.spamfunc'
"""
x = c.__weakref__
c.__weakref__ = x
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_extweakref.pyx:5:20: Special attribute __weakref__ cannot be exposed to Python
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_extweakref.pyx:8:22: Special attribute __weakref__ cannot be exposed to Python
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_extweakref.pyx:13:6: Illegal use of special attribute __weakref__
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_extweakref.pyx:14:2: Illegal use of special attribute __weakref__
+5:20: Special attribute __weakref__ cannot be exposed to Python
+8:22: Special attribute __weakref__ cannot be exposed to Python
+13:6: Illegal use of special attribute __weakref__
+14:2: Illegal use of special attribute __weakref__
"""
int1 = int2[int3] # error
obj1 = obj2[ptr1] # error
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_index.pyx:5:14: Invalid index type 'float'
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_index.pyx:6:14: Invalid index type 'float *'
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_index.pyx:7:12: Attempting to index non-array type 'int'
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_index.pyx:8:17: Cannot convert 'float *' to Python object
+5:14: Invalid index type 'float'
+6:14: Invalid index type 'float *'
+7:12: Attempting to index non-array type 'int'
+8:17: Cannot convert 'float *' to Python object
"""
cdef int *ptr2
int1, int3, obj1a = int2, ptr2, obj1b # error
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_multass.pyx:4:31: Cannot assign type 'int *' to 'int'
+4:31: Cannot assign type 'int *' to 'int'
"""
spam() # too few args
spam("blarg") # too few args
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_nargs.pyx:5:6: Call with wrong number of arguments (expected 2, got 0)
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_nargs.pyx:6:6: Call with wrong number of arguments (expected 2, got 1)
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_nargs.pyx:7:6: Call with wrong number of arguments (expected 2, got 3)
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_nargs.pyx:8:5: Call with wrong number of arguments (expected at least 2, got 0)
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_nargs.pyx:9:5: Call with wrong number of arguments (expected at least 2, got 1)
+5:6: Call with wrong number of arguments (expected 2, got 0)
+6:6: Call with wrong number of arguments (expected 2, got 1)
+7:6: Call with wrong number of arguments (expected 2, got 3)
+8:5: Call with wrong number of arguments (expected at least 2, got 0)
+9:5: Call with wrong number of arguments (expected at least 2, got 1)
"""
pass
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors3/e_nogilcmeth.pyx:2:6: Signature not compatible with previous declaration
-/Local/Projects/D/Pyrex/Source/Tests/Errors3/e_nogilcmeth.pxd:2:12: Previous declaration is here
+2:6: Signature not compatible with previous declaration
+2:12: Previous declaration is here
"""
fp = f
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors3/e_nogilfunctype.pyx:5:6: Cannot assign type 'void (void)' to 'void (*)(void) nogil'
+5:6: Cannot assign type 'void (void)' to 'void (*)(void) nogil'
"""
cdef void spam(Shrubbery sh not None):
pass
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_notnone.pyx:3:15: 'not None' only allowed in Python functions
+3:15: 'not None' only allowed in Python functions
"""
def eggs(int x not None, y not None):
pass
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_notnone2.pyx:1:0: Only extension type arguments can have 'not None'
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_notnone2.pyx:1:0: Only extension type arguments can have 'not None'
+1:0: Only extension type arguments can have 'not None'
+1:0: Only extension type arguments can have 'not None'
"""
cdef int *ptr
int1 = int2 * ptr # error
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_numop.pyx:4:13: Invalid operand types for '*' (int; int *)
+4:13: Invalid operand types for '*' (int; int *)
"""
cdef spam s
s.parrot = x
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_pyobinstruct.pyx:4:8: C struct/union member cannot be a Python object
+4:8: C struct/union member cannot be a Python object
"""
def f(self):
pass
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_redeclmeth.pyx:4:1: 'f' already declared
+4:1: 'f' already declared
"""
return # error
return p # error
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_return.pyx:3:17: Return with value in void function
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_return.pyx:7:1: Return value required
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_return.pyx:8:17: Cannot assign type 'int *' to 'int'
+3:17: Return with value in void function
+7:1: Return value required
+8:17: Cannot assign type 'int *' to 'int'
"""
cdef int n
n = sizeof(unbekannt)
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_sizeofincomplete.pyx:3:4: Cannot take sizeof incomplete type 'unbekannt'
+3:4: Cannot take sizeof incomplete type 'unbekannt'
"""
obj1 = obj2[:ptr1:] # error
obj1 = obj2[::ptr1] # error
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_slice.pyx:3:17: Cannot convert 'int *' to Python object
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_slice.pyx:4:18: Cannot convert 'int *' to Python object
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_slice.pyx:5:19: Cannot convert 'int *' to Python object
+3:17: Cannot convert 'int *' to Python object
+4:18: Cannot convert 'int *' to Python object
+5:19: Cannot convert 'int *' to Python object
"""
ptr1 = int2 - ptr3 # error
ptr1 = ptr2 - ptr3 # error
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_subop.pyx:4:13: Invalid operand types for '-' (int; char *)
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_subop.pyx:5:13: Cannot assign type 'int' to 'char *'
+4:13: Invalid operand types for '-' (int; char *)
+5:13: Cannot assign type 'int' to 'char *'
"""
p = <int *>blarg # okay
p = <int *>(foo + blarg) # error - temporary
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_tempcast.pyx:6:5: Casting temporary Python object to non-numeric non-Python type
+6:5: Casting temporary Python object to non-numeric non-Python type
"""
cdef class Spam
cdef extern class external.Eggs
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_undefexttype.pyx:1:5: C class 'Spam' is declared but not defined
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/e_undefexttype.pyx:2:5: C class 'Eggs' is declared but not defined
+1:5: C class 'Spam' is declared but not defined
+2:5: C class 'Eggs' is declared but not defined
"""
int1 = -str2 # error
int1 = ~str2 # error
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_unop.pyx:4:8: Invalid operand type for '-' (char *)
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_unop.pyx:5:8: Invalid operand type for '~' (char *)
+4:8: Invalid operand type for '-' (char *)
+5:8: Invalid operand type for '~' (char *)
"""
break # error
continue # error
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_while.pyx:3:1: break statement not inside loop
-/Local/Projects/D/Pyrex/Source/Tests/Errors2/e_while.pyx:4:1: continue statement not inside loop
+3:1: break statement not inside loop
+4:1: continue statement not inside loop
"""
pass
_ERRORS = u"""
-:3:10: C method has no self argument
+3:10: C method has no self argument
"""
_ERRORS = u"""
- 1: 5: Function with Python return type cannot be declared nogil
- 6: 6: Assignment of Python object not allowed without gil
- 4: 5: Function declared nogil has Python locals or temporaries
+1: 5: Function with Python return type cannot be declared nogil
+6: 6: Assignment of Python object not allowed without gil
+4: 5: Function declared nogil has Python locals or temporaries
11: 5: Function with Python return type cannot be declared nogil
15: 5: Calling gil-requiring function without gil
24: 9: Calling gil-requiring function without gil
pass
_ERRORS = u"""
-nogilcmeth.pyx:2:9: Signature not compatible with previous declaration
-nogilcmeth.pxd:2:15: Previous declaration is here
+2:9: Signature not compatible with previous declaration
+2:15: Previous declaration is here
"""
a = b # space space
c = d # space tab
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/se_badindent.pyx:3:0: Mixed use of tabs and spaces
+3:0: Mixed use of tabs and spaces
"""
a = b
c = d
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/se_badindent2.pyx:3:0: Possible inconsistent indentation
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/se_badindent2.pyx:3:0: Expected an identifier or literal
+3:0: Possible inconsistent indentation
+3:0: Expected an identifier or literal
"""
def h():
pass
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/se_conddef.pyx:2:1: def statement not allowed here
+2:1: def statement not allowed here
"""
a = b # space space
c = d # tab
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/se_mixtabspace.pyx:3:0: Mixed use of tabs and spaces
+3:0: Mixed use of tabs and spaces
"""
def g():
pass
_ERRORS = u"""
-/Local/Projects/D/Pyrex/Source/Tests/Errors1/se_nestdef.pyx:2:1: def statement not allowed here
+2:1: def statement not allowed here
"""