Stefan Behnel [Fri, 28 Nov 2008 09:11:54 +0000 (10:11 +0100)]
fix final optimisations for calls inside of assignments
Stefan Behnel [Fri, 28 Nov 2008 07:47:37 +0000 (08:47 +0100)]
merge
Stefan Behnel [Fri, 28 Nov 2008 07:47:27 +0000 (08:47 +0100)]
fix type of AsTupleNode to tuple_type
Dag Sverre Seljebotn [Thu, 27 Nov 2008 20:04:17 +0000 (21:04 +0100)]
One shouldn't have to maintain manual recursion stacks in this day and age...
Dag Sverre Seljebotn [Thu, 27 Nov 2008 18:29:12 +0000 (19:29 +0100)]
Inline function definitions in pxd files
Dag Sverre Seljebotn [Thu, 27 Nov 2008 16:54:26 +0000 (17:54 +0100)]
Fix broken error reporting for functions in pxds
Stefan Behnel [Thu, 27 Nov 2008 13:37:06 +0000 (14:37 +0100)]
another simplification after Dag's cleanup
Stefan Behnel [Thu, 27 Nov 2008 13:31:06 +0000 (14:31 +0100)]
merge
Stefan Behnel [Thu, 27 Nov 2008 13:30:21 +0000 (14:30 +0100)]
simplification for iter-dict optimisation after moving TupleNode to new-style temp usage
Stefan Behnel [Thu, 27 Nov 2008 13:28:53 +0000 (14:28 +0100)]
fix usage of new manage_ref keyword for temp handles
Stefan Behnel [Thu, 27 Nov 2008 13:27:48 +0000 (14:27 +0100)]
new test case for reassigning the dict variable during iteration
Dag Sverre Seljebotn [Thu, 27 Nov 2008 12:37:37 +0000 (13:37 +0100)]
Fix refcount bug with buffers of objects
May have been introduced by the result_code refactor.
Dag Sverre Seljebotn [Thu, 27 Nov 2008 12:11:43 +0000 (13:11 +0100)]
Cleanup, make manage_ref mandatory for allocate_temp. This caught a bug too.
Dag Sverre Seljebotn [Thu, 27 Nov 2008 11:53:25 +0000 (12:53 +0100)]
Code.py: Make a wall between non-managed and managed temps
Dag Sverre Seljebotn [Thu, 27 Nov 2008 11:16:50 +0000 (12:16 +0100)]
Make a few common cases not use temporary for buffer acquisition
Dag Sverre Seljebotn [Thu, 27 Nov 2008 11:10:36 +0000 (12:10 +0100)]
Mark temp as not managed in buffer code (see previous commit notes)
Dag Sverre Seljebotn [Thu, 27 Nov 2008 11:03:24 +0000 (12:03 +0100)]
merge
Dag Sverre Seljebotn [Thu, 27 Nov 2008 11:03:12 +0000 (12:03 +0100)]
Backed out changeset
56c6f2f22f4a
Dag Sverre Seljebotn [Thu, 27 Nov 2008 11:01:35 +0000 (12:01 +0100)]
Introduced manage_ref parameter in funcstate.allocate_temp and used it to fix crash bug.
Stefan Behnel [Thu, 27 Nov 2008 09:29:02 +0000 (10:29 +0100)]
some code cleanup
Stefan Behnel [Thu, 27 Nov 2008 09:11:34 +0000 (10:11 +0100)]
fix ref-counting bug in buffer assignments
Stefan Behnel [Thu, 27 Nov 2008 08:10:12 +0000 (09:10 +0100)]
fix temp handling in 'with' transform
Stefan Behnel [Thu, 27 Nov 2008 07:44:00 +0000 (08:44 +0100)]
fix iterdict transform for new temp semantics
Stefan Behnel [Thu, 27 Nov 2008 07:43:32 +0000 (08:43 +0100)]
clean up new-style temps after use (breaks code for now)
Stefan Behnel [Wed, 26 Nov 2008 20:02:16 +0000 (21:02 +0100)]
make TupleNode and ListNode a NewTempExprNode
Stefan Behnel [Wed, 26 Nov 2008 20:00:35 +0000 (21:00 +0100)]
let types inherit from object to work around hashing problems
Stefan Behnel [Wed, 26 Nov 2008 13:58:56 +0000 (14:58 +0100)]
fixed typo
Stefan Behnel [Wed, 26 Nov 2008 13:02:35 +0000 (14:02 +0100)]
fix for two problems with optimised dict iteration, including work-around for ticket #123
Robert Bradshaw [Wed, 26 Nov 2008 01:13:42 +0000 (17:13 -0800)]
cleanup
Robert Bradshaw [Wed, 26 Nov 2008 00:33:32 +0000 (16:33 -0800)]
merge
Robert Bradshaw [Wed, 26 Nov 2008 00:28:26 +0000 (16:28 -0800)]
cdef extern structs may be c++ classes, can refer to themselves
Robert Bradshaw [Tue, 25 Nov 2008 22:34:49 +0000 (14:34 -0800)]
merge
Robert Bradshaw [Tue, 25 Nov 2008 22:30:38 +0000 (14:30 -0800)]
merge 0.10.2
Robert Bradshaw [Tue, 25 Nov 2008 22:22:46 +0000 (14:22 -0800)]
bump version number
Robert Bradshaw [Tue, 25 Nov 2008 22:16:36 +0000 (14:16 -0800)]
Added tag 0.10.2 for changeset
92baafe0edf3
Robert Bradshaw [Tue, 25 Nov 2008 22:04:41 +0000 (14:04 -0800)]
Fix gcc crash on recursive typedef struct
Won't break existing code, only makes bad code compile now.
Stefan Behnel [Tue, 25 Nov 2008 20:44:25 +0000 (21:44 +0100)]
test case from ticket 123
Stefan Behnel [Tue, 25 Nov 2008 20:18:13 +0000 (21:18 +0100)]
fix PyTypeTestNode after iter-dict changes
Stefan Behnel [Tue, 25 Nov 2008 19:16:21 +0000 (20:16 +0100)]
use type cast to enforce INCREF() on Python objects
Stefan Behnel [Tue, 25 Nov 2008 17:24:52 +0000 (18:24 +0100)]
handle value coercion correctly in dict iteration
Stefan Behnel [Tue, 25 Nov 2008 14:56:09 +0000 (15:56 +0100)]
support 'yield' statement/expression in parser to provide at least a more meaningful error message for now
Stefan Behnel [Mon, 24 Nov 2008 17:06:35 +0000 (18:06 +0100)]
cleanup
Stefan Behnel [Mon, 24 Nov 2008 12:40:15 +0000 (13:40 +0100)]
new test for import-from with/without parentheses
Stefan Behnel [Mon, 24 Nov 2008 11:47:22 +0000 (12:47 +0100)]
support parentheses around import-from names
Stefan Behnel [Sun, 23 Nov 2008 19:11:42 +0000 (20:11 +0100)]
test case for inlined function
Stefan Behnel [Sun, 23 Nov 2008 18:46:46 +0000 (19:46 +0100)]
avoid GCC warning about '/*' in generated C comments
Stefan Behnel [Sun, 23 Nov 2008 18:13:26 +0000 (19:13 +0100)]
merge
Stefan Behnel [Sun, 23 Nov 2008 18:13:12 +0000 (19:13 +0100)]
c function predeclarations need to know about INLINE
Stefan Behnel [Sun, 23 Nov 2008 17:18:00 +0000 (18:18 +0100)]
fix compiler crash on forward declarations
DagSverreSeljebotn [Tue, 25 Nov 2008 20:30:05 +0000 (12:30 -0800)]
fix for infinite loop in buffer code
Stefan Behnel [Sun, 23 Nov 2008 17:18:00 +0000 (18:18 +0100)]
fix compiler crash on forward declarations
Lisandro Dalcin [Sun, 23 Nov 2008 00:00:37 +0000 (21:00 -0300)]
add custom distutils build_ext command ignoring C compiler failues when building Cython
Robert Bradshaw [Sat, 22 Nov 2008 08:33:46 +0000 (00:33 -0800)]
fix typo
Robert Bradshaw [Sat, 22 Nov 2008 00:05:28 +0000 (16:05 -0800)]
Put cimported includes first.
Stefan Behnel [Fri, 21 Nov 2008 11:07:26 +0000 (12:07 +0100)]
fix sequence assignments for value coercion to non-Python types
- coercion code cannot currently be taken out of the conditional as the temp release of the coercion code happens straight away
Stefan Behnel [Fri, 21 Nov 2008 10:16:40 +0000 (11:16 +0100)]
fix for assignments to sequences
- in the case of an unpacking error, no assignment must take place
=> do the complete unpacking first, then the assignment
- a tiny bit slower for tuples (<5%)
- shorter, much more readable code
Stefan Behnel [Wed, 19 Nov 2008 07:37:21 +0000 (08:37 +0100)]
PyDict_Copy() can be used for dict.copy()
Stefan Behnel [Wed, 19 Nov 2008 07:36:39 +0000 (08:36 +0100)]
fixed wrong signature of PyList_Insert()
Stefan Behnel [Wed, 19 Nov 2008 07:16:25 +0000 (08:16 +0100)]
enable iter-dict optimisation also for a plain 'for x in dict', assign dict ref to temp var before entering the loop to avoid re-assignment problems
Stefan Behnel [Wed, 19 Nov 2008 07:03:09 +0000 (08:03 +0100)]
merge
Stefan Behnel [Wed, 19 Nov 2008 07:00:52 +0000 (08:00 +0100)]
generate expected code when for-looping over type-declared list or tuple
Stefan Behnel [Wed, 19 Nov 2008 06:59:15 +0000 (07:59 +0100)]
extended for-loop test case
Stefan Behnel [Wed, 19 Nov 2008 06:22:39 +0000 (07:22 +0100)]
don't use PyTuple_SetItem(): it differs from 'tup[i] = x' as it does not raise a TypeError
Robert Bradshaw [Wed, 19 Nov 2008 04:55:33 +0000 (20:55 -0800)]
Merge 0.10.1 release.
Robert Bradshaw [Wed, 19 Nov 2008 04:50:58 +0000 (20:50 -0800)]
0.10.1 - bump version, metadata
Robert Bradshaw [Wed, 19 Nov 2008 04:50:28 +0000 (20:50 -0800)]
Added tag cython-0.10.1 for changeset
ef9d2c680684
Stefan Behnel [Tue, 18 Nov 2008 20:37:05 +0000 (21:37 +0100)]
use PyDict_DelItem() for 'del d[x]'
Stefan Behnel [Tue, 18 Nov 2008 20:06:09 +0000 (21:06 +0100)]
use type specific Py*_SetItem() functions
Stefan Behnel [Tue, 18 Nov 2008 18:57:22 +0000 (19:57 +0100)]
cleanup
Stefan Behnel [Tue, 18 Nov 2008 18:36:29 +0000 (19:36 +0100)]
avoid calling TupleNode.allocate_temps() in iter-dict transform
Stefan Behnel [Mon, 17 Nov 2008 13:35:05 +0000 (14:35 +0100)]
fixed ref-count bug in try-except handling
Stefan Behnel [Mon, 17 Nov 2008 13:35:05 +0000 (14:35 +0100)]
fixed ref-count bug in try-except handling
Stefan Behnel [Sun, 16 Nov 2008 22:20:15 +0000 (23:20 +0100)]
test case for iter-dict transform
Stefan Behnel [Sun, 16 Nov 2008 21:45:33 +0000 (22:45 +0100)]
integrate new iter-dict transform
Stefan Behnel [Sun, 16 Nov 2008 21:45:12 +0000 (22:45 +0100)]
new transform that converts for-in-dict.iter*() into a while-loop over PyDict_Next(), which makes the loop 30-50% faster
Stefan Behnel [Sun, 16 Nov 2008 21:40:36 +0000 (22:40 +0100)]
crash work-around
Stefan Behnel [Sun, 16 Nov 2008 21:40:15 +0000 (22:40 +0100)]
inheritance fix
Stefan Behnel [Sun, 16 Nov 2008 14:52:24 +0000 (15:52 +0100)]
cleanup
Lisandro Dalcin [Fri, 14 Nov 2008 23:48:45 +0000 (20:48 -0300)]
array size could be expressions with known C compile-time values
Stefan Behnel [Fri, 14 Nov 2008 20:53:41 +0000 (21:53 +0100)]
fix Python level 'import as' of packages
Stefan Behnel [Fri, 14 Nov 2008 20:07:22 +0000 (21:07 +0100)]
merge
Stefan Behnel [Fri, 14 Nov 2008 20:06:34 +0000 (21:06 +0100)]
disable slice assignments to pointers for now
Stefan Behnel [Fri, 14 Nov 2008 20:00:50 +0000 (21:00 +0100)]
off-by-one fix
Stefan Behnel [Fri, 14 Nov 2008 18:20:43 +0000 (19:20 +0100)]
compile time/runtime checks for array slice assignments
Stefan Behnel [Fri, 14 Nov 2008 18:19:55 +0000 (19:19 +0100)]
array size must be set as int, not numeric string
Dag Sverre Seljebotn [Fri, 14 Nov 2008 00:16:04 +0000 (01:16 +0100)]
merge
Stefan Behnel [Thu, 13 Nov 2008 22:37:33 +0000 (23:37 +0100)]
test case for array slice assignments
Stefan Behnel [Thu, 13 Nov 2008 22:37:19 +0000 (23:37 +0100)]
more fixme's
Stefan Behnel [Thu, 13 Nov 2008 22:17:51 +0000 (23:17 +0100)]
allow slice assignments for arrays
Stefan Behnel [Thu, 13 Nov 2008 07:10:10 +0000 (08:10 +0100)]
extended test case
Stefan Behnel [Thu, 13 Nov 2008 07:00:10 +0000 (08:00 +0100)]
test cases for 'import as'
Stefan Behnel [Wed, 12 Nov 2008 07:04:16 +0000 (08:04 +0100)]
compile Visitor.py, reduces lxml compile time by another ~20%
Stefan Behnel [Wed, 12 Nov 2008 07:02:56 +0000 (08:02 +0100)]
fixed bug in Visitor cache, reduces lxml compile time by ~20%
Robert Bradshaw [Wed, 12 Nov 2008 01:42:31 +0000 (17:42 -0800)]
merge
Robert Bradshaw [Wed, 12 Nov 2008 01:36:19 +0000 (17:36 -0800)]
Make raising a KeyError not the default for parsing names.
Robert Bradshaw [Wed, 12 Nov 2008 01:18:34 +0000 (17:18 -0800)]
More Parsing.py optimizations
Robert Bradshaw [Wed, 12 Nov 2008 01:08:47 +0000 (17:08 -0800)]
Compile Cython.Compiler.Parsing.py, auto_cpdef, fix bugs in AlignFunctionDefinitions
Stefan Behnel [Tue, 11 Nov 2008 21:40:00 +0000 (22:40 +0100)]
merge
Stefan Behnel [Tue, 11 Nov 2008 21:39:17 +0000 (22:39 +0100)]
extended test case
Stefan Behnel [Tue, 11 Nov 2008 21:10:45 +0000 (22:10 +0100)]
partial implementation of the "exec" statement
- only supports code in strings, not files (should be easy to add)
- only the "exec XYZ in GLOBALS [,LOCALS]" form is supported, not the execution in the current namespace (would require a mapping representation of it)
- also includes an incomplete (3-args only) and untested implementation for the exec() function in Py3