This package contains the required PCRE library development files and
may be already installed, as is apparently the case for amd64 systems,
but also may not be, as when using s390x architecture.
This is purely informative anyhow and there is no reason to stop the
build just because this information couldn't be found (as happens when
running in s390x VM, for example).
Also avoid useless use of cat.
Compiling code including Guile headers with default compiler options
doesn't work any more since a recent (~2020-05-05) update to Guile 3.0.2
on Homebrew (2.2.7 was used previously) due to
error: redefinition of typedef 'scm_print_state' is a C11 feature
in libguile/print.h and scm.h headers.
Work around this by enabling C11 for this build by explicitly setting
CSTD. Note that we can't just use CPP11=1 for this build, because this
would also enable C++11-specific tests that are not currently supported
by Guile module.
This error is given for any use of variable called "l" (and also "I" and
"O", but we don't seem to have any of those) and it doesn't seem to be
worth changing this variable name in the tests code, as it's really not
that meaningful there anyhow, so just disable the warning to let the CI
builds, which now use pycodestyle 2.6, instead of 2.5 which didn't have
this error and which is still the latest available in Debian Sid, pass.
No real changes, just use simpler quoting construct which is sufficient
(as we don't need to expand any variables) and also happens not to break
Vim 8 syntax highlighting in the entire file, unlike double quotes.
* abstract-conversion-operators:
Add test cases for abstract user-defined conversion operators
Recognize C++ conversion operators with trailing '= 0' as abstract
When wrapping STL containers, remove a shared_ptr reference count
increment when an upcast is needed when checking type conversion
in traits_check::check.
This test code tests the upcast code:
swig_assert_equal_simple(-1, base_num2([Derived(7)]))
Although there is no explicit memory leak fix test, it does at least run the code.
Handling of None needs fixing in Python (it is working in Ruby)
Note that the Ruby implementation has a partial template specialization
for shared_ptr, whereas the Python implementation is in the generic
code!
Issue #1512
* master-fix-vector-shared_ptr:
fixing memleak of shared_ptr objects in python with creating a [wrapped] vector<shared_ptr<Foo>> from a list of shared_ptr<Bar> where Bar is derived from Foo.
If python_append.i is modified to use:
__slots__ = []
instead of
__slots__ = ["this"]
then this additional error checking prevents a crash and shows a stack trace and error:
AttributeError: 'ForSlots' object has no attribute 'this'
Related to issue #1674
Don't attempt to use the class's __dict__ for setting 'this' when
a user has extended a class with:
__slots__ = ['this'].
Was segfaulting. Now we fall back to a simple PyObject_SetAttr if the
usual approach to setting 'this' in __dict__ does not work.
Closes#1673Closes#1674
There is a possible memory leak in case the SWIG_exception_fail macro
is called. The problem is related to its definition that call the
function Rf_warning. This function (as well as Rf_error) involves
a longjmp over C++ destructors on the stack. Thus, all the objects
allocated on the heap are not freed.
Closes#914