W. Trevor King [Wed, 23 Feb 2011 16:53:15 +0000 (11:53 -0500)]
Move CtxAttributes from Cython.Compiler.Parsing to Cython.Compiler.Binding.
This will avoid cyclic dependencies when we start messing with
CSource, CBinding, and PythonBinding in Cython.Compiler.Symtab and
friends.
W. Trevor King [Tue, 22 Feb 2011 21:15:44 +0000 (16:15 -0500)]
Condense p_cdef_statement() into p_statement() to reduce parsing duplication.
W. Trevor King [Tue, 22 Feb 2011 20:56:57 +0000 (15:56 -0500)]
Flatten redundant nesting in Parsing.p_statement().
W. Trevor King [Tue, 22 Feb 2011 20:10:49 +0000 (15:10 -0500)]
Rename CSource.cdef -> CSource.cdef_flag.
Thanks to Stefan Behnel's for reminding me that cdef is a keyword ;).
This change will make it clearer that we're defining a normal
attribute, and it protects us from future shifts in grammar.
W. Trevor King [Tue, 22 Feb 2011 19:49:02 +0000 (14:49 -0500)]
p_ctypedef shares central p_binding in p_statement.
W. Trevor King [Tue, 22 Feb 2011 18:24:57 +0000 (13:24 -0500)]
Rename p_c_python_binding -> p_binding and bring in api parsing.
W. Trevor King [Tue, 22 Feb 2011 15:22:48 +0000 (10:22 -0500)]
Add `CtxAttribute`s for source/binding specification to Parsing.py.
This makes the various meanings of visibility explicit in Ctx. At the
moment, the meanings are all rolled back into a single string before
being passed to the Nodes. The next step will be to pass the
CtxAttribute instances to Nodes directly, so Node implementations will
also be explicit about the meaning of visibility.
Passes runtests.py on my system.
W. Trevor King [Mon, 21 Feb 2011 14:16:23 +0000 (09:16 -0500)]
Add logger to trace function calls in Parsing.py.
W. Trevor King [Sun, 20 Feb 2011 02:02:37 +0000 (21:02 -0500)]
Adjust expected test error messages to match p_c_python_binding parsing.
W. Trevor King [Sat, 19 Feb 2011 19:45:35 +0000 (14:45 -0500)]
Parse Python bindings for structs, enums, and unions.
Add p_c_python_binding to Cython.Compiler.Parsing and use it to parse
Python bindings of the form
[cdef|cpdef] <visibility>
where <visibility> is only checked if the cdef flag is set.
In some places (e.g. stucts, enums, unions, and their members) this
syntax is new. For classes and their members, p_c_python_binding
mimics the previous implementation. Where the syntax is new, the
supporting Node changes have not yet been implemented.
The test suite currently passes with the exception of position
specifications for some error messages. I'm waiting for feedback from
the mailing list to see how these should be addressed.
W. Trevor King [Fri, 18 Feb 2011 19:34:28 +0000 (14:34 -0500)]
Flesh out tests/compile/cpdef.pyx to test cdef-ed enums, structs, and unions.
Robert Bradshaw [Fri, 18 Feb 2011 02:04:16 +0000 (18:04 -0800)]
module_is_name should not be static so that cython freeze can access it
Robert Bradshaw [Thu, 17 Feb 2011 22:47:01 +0000 (14:47 -0800)]
Allow embed option to take function name.
Lisandro Dalcin [Thu, 17 Feb 2011 15:20:58 +0000 (12:20 -0300)]
Create .gitignore and update .hgignore (thanks to W. Trevor King)
Robert Bradshaw [Thu, 17 Feb 2011 00:53:53 +0000 (16:53 -0800)]
cimport test
Lisandro Dalcin [Wed, 16 Feb 2011 23:11:05 +0000 (20:11 -0300)]
enable embedded testcase in Python 3
Lisandro Dalcin [Wed, 16 Feb 2011 21:55:06 +0000 (18:55 -0300)]
fix makefile for embed testcase
Lisandro Dalcin [Tue, 15 Feb 2011 17:35:33 +0000 (14:35 -0300)]
arg none check does not require arg type test utility code
Robert Bradshaw [Tue, 15 Feb 2011 10:15:55 +0000 (02:15 -0800)]
Remove excessive refcounting.
Stefan Behnel [Sun, 13 Feb 2011 06:58:23 +0000 (07:58 +0100)]
meta data update in setup.py
Stefan Behnel [Sat, 12 Feb 2011 12:50:36 +0000 (13:50 +0100)]
Py2.7/3.1 add a new field to Py_buffer
Stefan Behnel [Sat, 12 Feb 2011 12:48:43 +0000 (13:48 +0100)]
C-arrays of uchar/schar are also C strings
Lisandro Dalcin [Fri, 11 Feb 2011 14:14:19 +0000 (11:14 -0300)]
Windows: fixes for previous commit
Lisandro Dalcin [Fri, 11 Feb 2011 01:26:19 +0000 (22:26 -0300)]
Windows: add -Wno-format to CFLAGS when using MinGW
Lisandro Dalcin [Fri, 11 Feb 2011 00:59:01 +0000 (21:59 -0300)]
add --compiler option to runtests.py (mainly for MSVC/MinGW)
Lisandro Dalcin [Wed, 9 Feb 2011 16:49:22 +0000 (13:49 -0300)]
Python 3.2 now uses new C integral type Py_hash_t
Lisandro Dalcin [Wed, 9 Feb 2011 15:16:08 +0000 (12:16 -0300)]
attempt to silent spurious MinGW warnigns
Lisandro Dalcin [Wed, 9 Feb 2011 14:58:33 +0000 (11:58 -0300)]
fix declaration in testcase helper header
Lisandro Dalcin [Wed, 9 Feb 2011 14:50:24 +0000 (11:50 -0300)]
Windows: fix testcase failing to link
Lisandro Dalcin [Mon, 7 Feb 2011 22:10:24 +0000 (19:10 -0300)]
Windows: fix testcase to not link libm
Lisandro Dalcin [Mon, 7 Feb 2011 20:14:07 +0000 (17:14 -0300)]
attempt to fix rmtree Windows issues in test case
Lisandro Dalcin [Mon, 7 Feb 2011 19:27:51 +0000 (16:27 -0300)]
Inline: -Wno-unused is a GCC flag, some but not all compilers out there support it
Stefan Behnel [Sun, 6 Feb 2011 15:21:37 +0000 (16:21 +0100)]
increase version number
Stefan Behnel [Sun, 6 Feb 2011 15:14:48 +0000 (16:14 +0100)]
when indexing/slicing 'str', it's safe to infer 'str' for the result
Stefan Behnel [Sun, 6 Feb 2011 15:07:39 +0000 (16:07 +0100)]
when indexing 'str', it's safe to infer 'str' for the result
Stefan Behnel [Sun, 6 Feb 2011 09:14:01 +0000 (10:14 +0100)]
fix test after changing type inference for unicode indexing
Stefan Behnel [Sun, 6 Feb 2011 08:59:26 +0000 (09:59 +0100)]
for indexing into / looping over unicode strings, infer Py_UCS4 instead of Py_UNICODE
Stefan Behnel [Sat, 5 Feb 2011 18:21:47 +0000 (19:21 +0100)]
error handling fixes for argument unpacking when args/kwargs are in closures
Stefan Behnel [Sat, 5 Feb 2011 17:19:48 +0000 (18:19 +0100)]
fix debugging test skipping for older Python versions
Stefan Behnel [Sat, 5 Feb 2011 16:56:27 +0000 (17:56 +0100)]
fix unused imports and Py2.4-isms in test code
Stefan Behnel [Sat, 5 Feb 2011 16:46:22 +0000 (17:46 +0100)]
fix Py2.5-isms in test code
Stefan Behnel [Sat, 5 Feb 2011 16:41:31 +0000 (17:41 +0100)]
fix error test case
Stefan Behnel [Sat, 5 Feb 2011 16:24:44 +0000 (17:24 +0100)]
support 'Py_UCS4 in unicode_string' also in 16 Unicode builds
Stefan Behnel [Sat, 5 Feb 2011 16:16:06 +0000 (17:16 +0100)]
fix surrogate pair calculation
Stefan Behnel [Sat, 5 Feb 2011 14:49:36 +0000 (15:49 +0100)]
in Py3.2, the unicode character testing/conversion functions accept Py_UCS4 instead of Py_UNICODE
Robert Bradshaw [Fri, 4 Feb 2011 10:53:06 +0000 (02:53 -0800)]
Merge branch 'release 0.14.1'
Conflicts:
Cython/__init__.py
Robert Bradshaw [Fri, 4 Feb 2011 10:30:48 +0000 (02:30 -0800)]
Bump version number.
Robert Bradshaw [Fri, 4 Feb 2011 10:30:10 +0000 (02:30 -0800)]
Make unit tests testable from any directory.
Robert Bradshaw [Fri, 4 Feb 2011 10:12:04 +0000 (02:12 -0800)]
Allow exclusion of end-to-end tests.
Robert Bradshaw [Fri, 4 Feb 2011 09:16:05 +0000 (01:16 -0800)]
Runtest cleanup for different testing environments.
Robert Bradshaw [Sun, 30 Jan 2011 11:03:36 +0000 (03:03 -0800)]
Move windows distutils hack to the correct place.
Stefan Behnel [Sat, 29 Jan 2011 05:37:09 +0000 (06:37 +0100)]
fix isinstance() check against a tuple of extension types
Mark Florisson [Fri, 28 Jan 2011 12:18:57 +0000 (13:18 +0100)]
Debugger: made test less verbose (#645)
Robert Bradshaw [Fri, 28 Jan 2011 10:36:29 +0000 (02:36 -0800)]
Bump version number.
Robert Bradshaw [Fri, 28 Jan 2011 10:31:30 +0000 (02:31 -0800)]
configurable working and root dir
Robert Bradshaw [Fri, 28 Jan 2011 09:29:58 +0000 (01:29 -0800)]
Restore cwd if debugger setUp() fails (to avoid breaking later tests).
Robert Bradshaw [Fri, 28 Jan 2011 08:55:45 +0000 (00:55 -0800)]
Windows runtests.py hack.
Robert Bradshaw [Fri, 28 Jan 2011 08:19:24 +0000 (00:19 -0800)]
Avoid more gdb errors for insufficient gdb.
Stefan Behnel [Mon, 31 Jan 2011 14:16:52 +0000 (15:16 +0100)]
cleanup
Stefan Behnel [Mon, 31 Jan 2011 11:46:39 +0000 (12:46 +0100)]
cache constant 'slice' instances
Stefan Behnel [Mon, 31 Jan 2011 11:41:58 +0000 (12:41 +0100)]
fix constant_result of SliceNode
Stefan Behnel [Mon, 31 Jan 2011 07:56:52 +0000 (08:56 +0100)]
support surrogate pair to Py_UCS4 coercion only in 16 bit Unicode builds
Robert Bradshaw [Sun, 30 Jan 2011 11:04:00 +0000 (03:04 -0800)]
Merge branch 'release2'
Robert Bradshaw [Sun, 30 Jan 2011 11:03:36 +0000 (03:03 -0800)]
Move windows distutils hack to the correct place.
Stefan Behnel [Sat, 29 Jan 2011 20:40:37 +0000 (21:40 +0100)]
test fix
Stefan Behnel [Sat, 29 Jan 2011 17:46:44 +0000 (18:46 +0100)]
error test fixes
Stefan Behnel [Sat, 29 Jan 2011 17:35:53 +0000 (18:35 +0100)]
implemented Py_UCS4 type
--HG--
rename : tests/errors/py_unicode_type_errors.pyx => tests/errors/py_ucs4_type_errors.pyx
rename : tests/run/py_unicode_type.pyx => tests/run/py_ucs4_type.pyx
Stefan Behnel [Sat, 29 Jan 2011 05:37:09 +0000 (06:37 +0100)]
fix isinstance() check against a tuple of extension types
Robert Bradshaw [Sat, 29 Jan 2011 09:25:51 +0000 (01:25 -0800)]
Allow extern "functions" (e.g. macros) to return array types.
Stefan Behnel [Sat, 29 Jan 2011 08:55:04 +0000 (09:55 +0100)]
merge
Stefan Behnel [Sat, 29 Jan 2011 05:37:09 +0000 (06:37 +0100)]
fix isinstance() check against a tuple of extension types
Stefan Behnel [Sat, 29 Jan 2011 08:50:02 +0000 (09:50 +0100)]
varargs tempification needs to be done for all varargs, not only Python objects
Stefan Behnel [Sat, 29 Jan 2011 08:28:35 +0000 (09:28 +0100)]
function argument temping algorithm is smart enough now to no longer require all arguments to be simple regardless; varargs need to be temp-ed as well
Stefan Behnel [Sat, 29 Jan 2011 05:37:09 +0000 (06:37 +0100)]
fix isinstance() check against a tuple of extension types
Stefan Behnel [Fri, 28 Jan 2011 21:15:23 +0000 (22:15 +0100)]
last call argument doesn't need to be simple, so don't force it into a temp
Stefan Behnel [Fri, 28 Jan 2011 21:06:49 +0000 (22:06 +0100)]
when deciding if function argument must be moved into temps, ignore if the first argument is a temp as it will be evaluated first anyway
Stefan Behnel [Fri, 28 Jan 2011 18:04:49 +0000 (19:04 +0100)]
fix IndexNode.is_simple() for buffer access
Stefan Behnel [Fri, 28 Jan 2011 17:51:33 +0000 (18:51 +0100)]
fix Py2.7 warning
Stefan Behnel [Fri, 28 Jan 2011 17:47:29 +0000 (18:47 +0100)]
indexing a C ptr/array is 'simple'
Mark Florisson [Fri, 28 Jan 2011 12:18:57 +0000 (13:18 +0100)]
Debugger: made test less verbose (#645)
Robert Bradshaw [Fri, 28 Jan 2011 10:42:29 +0000 (02:42 -0800)]
Merge branch 'release'
Robert Bradshaw [Fri, 28 Jan 2011 10:36:29 +0000 (02:36 -0800)]
Bump version number.
Robert Bradshaw [Fri, 28 Jan 2011 10:31:30 +0000 (02:31 -0800)]
configurable working and root dir
Robert Bradshaw [Fri, 28 Jan 2011 09:29:58 +0000 (01:29 -0800)]
Restore cwd if debugger setUp() fails (to avoid breaking later tests).
Robert Bradshaw [Fri, 28 Jan 2011 08:55:45 +0000 (00:55 -0800)]
Windows runtests.py hack.
Stefan Behnel [Fri, 28 Jan 2011 08:35:47 +0000 (09:35 +0100)]
build fix for the last self argument change
Stefan Behnel [Fri, 28 Jan 2011 08:23:28 +0000 (09:23 +0100)]
a method's self argument doesn't need to be in a temp when calling it
Robert Bradshaw [Fri, 28 Jan 2011 08:19:24 +0000 (00:19 -0800)]
Avoid more gdb errors for insufficient gdb.
Stefan Behnel [Fri, 28 Jan 2011 07:05:28 +0000 (08:05 +0100)]
PyTypeTestNode and NoneCheckNode are 'simple' when their argument is
Stefan Behnel [Fri, 28 Jan 2011 06:51:36 +0000 (07:51 +0100)]
C type casts are 'simple'
Stefan Behnel [Thu, 27 Jan 2011 20:07:52 +0000 (21:07 +0100)]
fix tweak: closure variables are not safe as function arguments; the last argument is safe, too
Stefan Behnel [Thu, 27 Jan 2011 20:00:01 +0000 (21:00 +0100)]
merge
Robert Bradshaw [Thu, 27 Jan 2011 19:49:23 +0000 (11:49 -0800)]
Tweak #654 fix, c functions can't be assinged to.
Stefan Behnel [Thu, 27 Jan 2011 19:48:27 +0000 (20:48 +0100)]
TupleNode is always simple
Stefan Behnel [Thu, 27 Jan 2011 08:55:19 +0000 (09:55 +0100)]
partial rewrite of the #654 fix to exclude local variables from being put into temps, more tests
--HG--
rename : tests/run/function_argument_sideeffects_T654.pyx => tests/run/temp_sideeffects_T654.pyx
Stefan Behnel [Wed, 26 Jan 2011 20:49:09 +0000 (21:49 +0100)]
test case for ticket #654
Stefan Behnel [Wed, 26 Jan 2011 20:46:35 +0000 (21:46 +0100)]
merge
Stefan Behnel [Wed, 26 Jan 2011 20:41:52 +0000 (21:41 +0100)]
fix ticket #654: fix function argument evaluation order when some are simple and some are constructed
Mark Florisson [Tue, 25 Jan 2011 21:43:52 +0000 (22:43 +0100)]
Debugger: Fix backtrace test -- don't check for main()
Mark Florisson [Tue, 25 Jan 2011 20:41:31 +0000 (21:41 +0100)]
Debugger: Fix a few libpython.py bugs