summaryrefslogtreecommitdiff
path: root/Cython/Compiler/Symtab.py
Commit message (Collapse)AuthorAgeFilesLines
* Rename the options of the "check_size" feature to make them more obvious: ↵Stefan Behnel2018-09-291-1/+1
| | | | | | "warn" warns, "error" fails, and "extend" silently allows extending. Closes #2627.
* Minor cleanups of 'check_size' implementation (#2627).Stefan Behnel2018-09-291-7/+7
|
* Merge pull request #2627 from mattip/check_size2Stefan Behnel2018-09-291-2/+4
|\ | | | | ENH: add check_size option to ctypedef class for external classes
| * MAINT: fixes from reviewmattip2018-09-251-1/+1
| |
| * ENH: add check_size option to ctypedef class for external classesmattip2018-09-251-2/+4
| |
* | Add a new directive 'str_is_str=True' that keeps unprefixed string literals ↵Stefan Behnel2018-09-241-6/+12
|/ | | | | | and the 'str' builtin type unchanged even when 'language_level=3' is enabled. See #2565.
* Set the maximum line length to 150.gabrieldemarmiesse2018-08-181-1/+3
|
* Merge branch 'cpp-operator'Robert Bradshaw2018-05-031-2/+20
|\
| * Further operator finding fixesda_woods2015-09-191-8/+12
| | | | | | | | | | | | | | | | | | It wasn't finding nonmember operators with a class of the form: cdef cppclass C: C operator+(const C&, int) (i.e. with the class specified first)
| * Allow nonmember operators in c++ classesda_woods2015-09-191-2/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's sometimes useful to have nonmember operators in c++ e.g. C operator+(int, const C&) (So int can come first) These could be defined outside the "cdef cppclass" section but if they were in a pxd file they weren't easy to import and use. They can now be defined with the "cdef cppclass" and will be found and used appropriately e.g. cdef cppclass C: C operator+(int, const C&) Appropriate tests have been added
* | Misc typosluz.paz2018-03-121-2/+2
| | | | | | Found via `codespell`
* | Do not issue "redefined" warnings on C++ function overrides with different ↵Stefan Behnel2018-03-111-3/+16
| | | | | | | | | | | | signatures (previously only applied to methods). Closes #2013.
* | Always show original position on "redeclared" errors.Stefan Behnel2018-03-111-1/+10
| |
* | Actually show "redefined" warnings, but only for "cdef extern" blocks, i.e. ↵Stefan Behnel2018-03-091-2/+3
| | | | | | | | | | | | the exact case described in #1874. Closes #1874.
* | Silence "redefined" warning again as it is more annoying than helpful to ↵Stefan Behnel2018-03-091-1/+2
| | | | | | | | | | | | | | receive it for every pxd-defined cpdef function. See #1874. Closes #2013.
* | Explicitly re-allow memoryviews in default argument structs after ↵Stefan Behnel2018-02-231-2/+2
| | | | | | | | | | | | disallowing them in structs generally. Closes #2114.
* | Disallow memory views as struct members since structs do not allow safe ↵Stefan Behnel2018-02-111-4/+5
| | | | | | | | buffer reference management.
* | Promote the new opaque PEP-539 type "Py_tss_t" to a known Cython type to ↵Stefan Behnel2018-01-281-4/+4
| | | | | | | | avoid static variable initialisation issues with the "Py_tss_NEEDS_INIT" struct initialiser value.
* | Fix a value type for the initial assignment of Python variables: should ↵Stefan Behnel2018-01-281-1/+1
| | | | | | | | always be a string.
* | Verbatim C code using docstring syntax.Jeroen Demeyer2017-11-171-21/+45
| |
* | Require GIL-holding constructor if base classes require GIL.Robert Bradshaw2017-11-071-0/+6
| | | | | | | | This fixes #1986.
* | Optimise iteration over containers declared with a "Dict[...]" type annotation.Stefan Behnel2017-11-051-0/+2
| | | | | | | | See #1979.
* | Reformat code.Stefan Behnel2017-10-291-4/+4
| |
* | Make re-declaration warning louder.Robert Bradshaw2017-10-121-1/+1
| | | | | | See #1874.
* | Repair compilation error for nested module level comprehensions.Stefan Behnel2017-10-031-4/+14
| | | | | | | | Closes #1906.
* | Cleanup late includes.Robert Bradshaw2017-10-021-8/+1
| |
* | Automatic late includes.Jeroen Demeyer2017-09-281-8/+26
| |
* | Fix error handling when importing NumPy for Pythran modules.Stefan Behnel2017-09-281-8/+0
| |
* | Fix Py3 list comprehensions in (C-)class bodies: loop variable was declared ↵Stefan Behnel2017-09-271-2/+4
| | | | | | | | in the object struct instead of the scope that declared the class (usually the module init function).
* | Avoid copying C++ classes when passing constructor arguments.Robert Bradshaw2017-09-231-0/+10
| |
* | Fix another issue with automatic exception values.Robert Bradshaw2017-09-231-0/+2
| |
* | Allow mismatches of broader exception declarations in .pxd signatures as ↵Stefan Behnel2017-09-211-0/+4
| | | | | | | | long the implemented signature is covered.
* | Make vtable order of extension types with fused methods only dependant on ↵Stefan Behnel2017-09-201-5/+15
| | | | | | | | | | | | | | | | the original declaration order (e.g. in the .pxd file). Previously, fused methods were specialised and expanded on first use, which lead to an arbitrary order in the vtable. Also fixes compile failures when inheriting from base types with fused cdef methods. Fixes #1873.
* | Mark "__eq__" and friends as special methods to correctly distinguish them ↵Stefan Behnel2017-09-041-2/+8
| | | | | | | | | | | | from attributes etc. Replace closure class special casing from slot generation code and replace it with saner and more general "is_special" check.
* | Generate "tp_richcompare" slot when "__eq__" and/or its friends are defined ↵Stefan Behnel2017-09-031-5/+10
| | | | | | | | | | | | but "__richcmp__" is not. Closes #690.
* | Allow C++ classes to have Python object members.Robert Bradshaw2017-08-251-10/+9
| |
* | Remove unused parameter.Robert Bradshaw2017-08-241-3/+2
| |
* | Merge remote-tracking branch 'origin/release'Stefan Behnel2017-08-171-0/+3
|\ \
| * | Don't error on inherited type members.Robert Bradshaw2017-08-121-0/+3
| | | | | | | | | | | | This fixes #1788.
* | | Merge pull request #1794 from scoder/pep489_multi_phase_initscoder2017-08-091-1/+2
|\ \ \ | | | | | | | | implement PEP 489 multi-phase module initialisation in Py3.5+
| * | | implement PEP 489 multi-phase module initialisation in Py3.5+Stefan Behnel2017-07-221-1/+2
| | | |
* | | | repair scoped comprehensions inside of generators and async functions by ↵Stefan Behnel2017-08-071-16/+36
| |/ / |/| | | | | | | | allowing their loop variables to be added to closures when necessary
* | | Suppress special casing of attribute names in closure classes since they are ↵Stefan Behnel2017-07-251-5/+6
|/ / | | | | | | | | | | not user defined and any local variable name is allowed without being special. Closes #1797.
* | Don't inherit template parameters as types.Robert Bradshaw2017-07-091-6/+15
| |
* | Inherit C++ nested types.Robert Bradshaw2017-07-081-0/+5
| |
* | Make bad pxd declarations into an warning for now.Robert Bradshaw2017-07-031-3/+4
| | | | | | | | This will be an error in the next version of Cython.
* | Merge branch 'master' into feature/pythranscoder2017-06-251-1/+2
|\ \
| * | Allow undeclared narrower return for cdef methods.Robert Bradshaw2017-06-191-1/+2
| | |
* | | Add a Pythran backend for Numpy operationAdrien Guinet2017-06-171-0/+4
|/ / | | | | | | | | | | | | | | | | | | | | | | When the user asked for it (thanks to the --np-pythran flag), use Pythran's Numpy implementation as a backend for numpy operation. This flag forces the C++ mode, as the Pythran implementation is written in C++. Distutils integration through the 'np_pythran' flag of the cythonize API is also provided. This commit also adds a Pythran mode for the tests, that can enable the pythran mode for the C++ tests, and allows the reuse of Cython tests to test for the Pythran integration.
* | Allow cimport to follow import.Robert Bradshaw2017-06-161-0/+3
| |